subtree updates

meta-raspberrypi: 8dc3a31088..c7f4c739a3:
  Khem Raj (5):
        linux-raspberrypi: Upgrade to 5.10.52
        userland: Update to latest master branch
        raspberrypi-firmware: Update to latest
        raspberrypi-tools: Update to latest
        sdcard_image-rpi.bbclass: Fix IMAGE_TYPEDEP override to use new syntax

  Martin Jansa (4):
        Convert to new override syntax
        Manually fix conversion
        layer.conf: Update to honister
        userland: package man pages in PN-doc

  Pierre-Jean Texier (2):
        kas: local.conf: bump CONF_VERSION variable
        kas: local.conf: disable prelink

poky: 17aabc0127..492205ea83:
  Alexander Kanavin (17):
        llvm: update 12.0.0 -> 12.0.1
        systemd: update 248.3 -> 249.1
        python3-testools: update 2.4.0 -> 2.5.0
        libuv: update 1.41.0 -> 1.42.0
        gnu-config: update to latest revision
        vulkan-samples: update to latest revision
        cmake: update 3.20.5 -> 3.21.0
        cmake: update 3.21.0 -> 3.21.1
        mtools: update 4.0.32 -> 4.0.34
        util-linux: update 2.37 -> 2.37.1
        iputils: update 20210202 -> 20210722
        freetype: update 2.10.4 -> 2.11.0
        devtool: print a warning on upgrades if PREFERRED_VERSION is set
        rpm: do not RRECOMMEND rpm-build
        selftest: add core-image-weston to no-gpl3-no-meta-gpl2 image test
        shadow: update 4.8.1 -> 4.9
        local.conf.sample: disable prelink

  Bernhard Rosenkränzer (1):
        gcc: update 11.1 -> 11.2

  Bruce Ashfield (6):
        linux-yocto/5.10: update to v5.10.53
        linux-yocto/5.13: update to v5.13.5
        linux-yocto/5.4: update to v5.4.135
        linux-yocto-rt/5.10: update to -rt47
        linux-yocto/5.13: enable TYPEC_TCPCI in usbc fragment
        linux-yocto/5.10: enable TYPEC_TCPCI in usbc fragment

  Changqing Li (1):
        archiver.bbclass: fix do_ar_configured failure for kernel

  Chen Qi (3):
        zstd: fix CVE_PRODUCT
        insane.bbclass: fix the file-rdeps QA message for the new override syntax
        iputils: fix do_configure failure of missing ip command

  Damian Wrobel (1):
        rootfs: remove ldconfig auxiliary cache where appropriate

  Denys Dmytriyenko (4):
        meta: convert nested overrides leftovers to new syntax
        convert-overrides.py: handle few more cases of overrides
        libwpe: remove rpi-specific custom code
        poky-tiny: drop uclibc override

  Jon Mason (1):
        parselogs.py: qemuarm should be qemuarmv5

  Joshua Watt (4):
        mesa: Fix v3d & vc4 dmabuf import
        bitbake: bitbake: asyncrpc: Catch early SIGTERM
        libxft: Fix bad PKG value
        bitbake: contrib: vim: Update for new override syntax

  Kai Kang (2):
        u-boot_2021.07: set UBOOT_MACHINE for qemumips and qemumips64
        python3-pytest: display correct version info

  Kevin Hao (2):
        meta-yocto-bsp: Introduce the v5.13 bbappend
        meta-yocto-bsp: Bump to the v5.10.55

  Khem Raj (10):
        binutils: Upgrade to 2.37 branch
        texinfo: Update gnulib to fix build with glibc 2.34
        systemd: Fix build on musl
        stress-ng: Drop defining daddr_t
        stress-ng: Detemine minimal stack size via sysconf
        mesa: Define a fallback for DRIDRIVERS
        libssh2: Fix syntax for using ptest override
        toaster-managed-mode.json: Correctly specify term with new override syntax
        distrooverrides.bbclass: Correct override syntax
        devtool.py: Correct override syntax

  Lee Chee Yang (1):
        aspell: fix CVE-2019-25051

  Marek Vasut (2):
        image_types: Restore pre-btrfs-tools 4.14.1 mkfs.btrfs shrink behavior
        kernel-uboot: Handle gzip and lzo compression options

  Martin Jansa (6):
        convert-overrides.py: show processed file and version of this script
        convert-overrides.py: remove base_dep_prepend and autotools_dep_prepend exception
        convert-overrides.py: 0.9.1 include '(' as delimiter for shortvars
        convert-overrides.py: allow specifying multiple target dirs
        convert-overrides.py: allow dots before override in vars_re and shortvars_re
        systemd-boot: use ld.bfd as efi-ld even when gold or lld is used in ${LD}

  Matthias Klein (2):
        runqemu: Fix typo in error message
        runqemu: decouple bios and kernel options

  Matthias Schiffer (3):
        initscripts: populate-volatile.sh: do not log to tty0
        initscripts: populate-volatile.sh: run create_file synchronously
        initscripts: fix creation order for /var/log with VOLATILE_LOG_DIR=true

  Michael Halstead (1):
        releases: update to include 3.3.1

  Michael Opdenacker (18):
        oe-setup-builddir: update YP docs and OE URLs
        conf-notes.txt: now suggesting to run 'runqemu qemux86-64'
        test-manual: document LTO related reproducibility bug
        quick start manual: update "source oe-init-build-env" output
        dev-manual: fix wrong reference to class
        documentation/README: improve BitBake manual referencing guidelines
        manuals: simplify references to BitBake manual
        manuals: remove explicit BitBake variable references
        meta-skeleton: add recipe examples from documentation sources
        bitbake: doc: bitbake-user-manual: fix syntax in example and improve description
        bitbake: doc: bitbake-user-manual: update bitbake option help
        bitbake: doc: bitbake-user-manual: grammar fix for the number of "metadata"
        manuals: initial documentation for CVE management
        ref-manual: remove example recipe source files
        profile-manual: document how to build perf manpages on target
        cve-check: fix comments
        cve-check: update link to NVD website for CVE details
        cve-check: improve comment about CVE patch file names

  Mingli Yu (2):
        perlcross: not break build if already patched
        curl: Upgrade to 7.78.0

  Nicolas Dechesne (4):
        yocto-check-layer: improve missed dependencies
        checklayer: new function get_layer_dependencies()
        checklayer: rename _find_layer_depends
        yocto-check-layer: ensure that all layer dependencies are tested too

  Oleksandr Kravchuk (1):
        bitbake.conf: change GNOME_MIRROR to new one

  Patrick Williams (1):
        pixman: re-disable iwmmxt

  Paul Barker (4):
        bitbake: asyncrpc: Fix bad message error in client
        bitbake: asyncrpc: Set timeout when waiting for reply from server
        bitbake: parse/ast: Substitute '~' when naming anonymous functions
        kernel-yocto: Simplify no git repo case in do_kernel_checkout

  Quentin Schulz (4):
        bitbake: doc: Makefile: turn warnings into errors by default
        bitbake: doc: bitbake-user-manual: ref-variables: order alphabetically the glossary sources
        bitbake: doc: bitbake-user-manual: ref-variables: force glossary output to be alphabetically sorted
        bitbake: doc: bitbake-user-manual: replace ``FOO`` by :term:`FOO` where possible

  Richard Purdie (49):
        Add MAINTAINERS.md file
        yocto-check-layer: Remove duplicated code
        libubootenv: Drop default-env RRECOMMENDS
        bitbake: data_smart: Allow colon in variable expansion regex
        meta-poky/meta-yocto-bsp: Convert to new override syntax
        layer.conf: Update to honister
        autotools/base/icecc: Remove prepend from function names
        scripts/contrib: Add override conversion script
        systemtap: Fix headers issue with x86 and 5.13 headers
        migration-guides: Add start of 3.4 guide with override migration notes
        common-tasks: Fix conversion error in npm example
        bitbake: bitbake: Switch to using new override syntax
        bitbake: doc/lib: Update to use new override syntax containing colons
        bitbake: doc/lib: Add fixes for issues missed by the automated conversion
        bitbake: bitbake: Update to version 1.51.1
        layer.conf: Override changes mean we're only compatible with honister
        Convert to new override syntax
        meta: Manual override fixes
        local.conf.sample: Bump version so users update their config
        sanity.conf: Require bitbake 1.51.1
        dropbear: Fix incorrect package override for postrm
        convert-overrides: Allow script to handle patch/diffs
        sdk: Decouple default install path from built in path
        sstate: Fix rebuilds when changing layer config
        populate_sdk_ext: Fix handling of TOOLCHAIN_HOST_TASK in the eSDK case
        local.conf.sample: Bump version so users update their config
        poky: Use SDKPATHINSTALL instead of SDKPATH
        vim: Clarify where RDEPENDS/RRECOMMENDS apply
        bitbake: data_smart: Fix inactive overide accidental variable value corruption
        local.conf.sample: Fix missed override conversion
        license: Exclude COPYING.MIT from pseudo
        meta: Convert IMAGE_TYPEDEP to use override syntax
        uboot-extlinux-config: Fix missing override conversion
        image/image_types: Convert CONVERSION_CMD/COMPRESS_CMD to new override syntax
        image: Drop COMPRESS_CMD
        devupstream: Allow support of native class extensions
        diffoscope: Upgrade 178 -> 179
        strace: Upgrade 5.12 -> 5.13
        valgrind: Add patches for glibc 2.34 support
        bitbake: runqueue: Improve multiconfig deferred task issues
        elfutils: Add patch from upstream for glibc 2.34 ptest fixes
        bitbake: doc: Fix append/prepend/remove references
        bitbake: fetch/tests/toaster: Override conversion fixups
        bitbake: process: Improve traceback error reporting from main loop
        bitbake: command: Ensure we catch/handle exceptions
        bitbake: ui/taskexp: Improve startup exception handling
        bitbake: ui/taskexp: Fix to work with empty build directories
        oeqa/runtime/cases/ptest: Increase test timeout from 300s to 450s
        packagedata: Fix after override syntax change

  Ross Burton (2):
        glew: fix Makefile race
        libx11: fix xkb compilation with _EVDEVK symbols

  Saul Wold (1):
        MAINTAINERS: Saul will cover devtool and eSDK

  Stefan Wiehler (1):
        dev-manual: fix source release example script

  Stefano Babic (1):
        mtd-utils: upgrade 2.1.2 -> 2.1.3

  Tim Orling (2):
        python3-hypothesis: upgrade 6.14.3 -> 6.14.5
        python3-importlib-metadata: upgrade 4.6.1 -> 4.6.3

  Tony Battersby (2):
        lto.inc: disable LTO for grub
        gcc: Backport patch to make LTO builds more reproducible

  Tony Tascioglu (6):
        ffmpeg: fix-CVE-2020-20446
        ffmpeg: fix CVE-2020-20453
        ffmpeg: fix CVE-2020-22015
        ffmpeg: fix CVE-2020-22021
        ffmpeg: fix CVE-2020-22033 and CVE-2020-22019
        ffmpeg: fix CVE-2021-33815

  Trevor Woerner (1):
        ffmpeg: add libatomic for armv5

  Ulrich Ölmann (2):
        initramfs-framework: fix whitespace issue
        initramfs-framework/setup-live: fix shebang

  Vinay Kumar (1):
        glibc: Fix CVE-2021-33574

  Vivien Didelot (1):
        init-manager-systemd: define weak dev manager

  Zqiang (1):
        python3: use monotonic clock for condvar if possible

  hongxu (1):
        createrepo-c: fix createrepo-c failed in nativesdk

  leimaohui (1):
        archiver.bbclass: Fix patch error for recipes that inherit dos2unix.

  wangmy (3):
        bind: upgrade 9.16.18 -> 9.16.19
        i2c-tools: upgrade 4.2 -> 4.3
        diffoscope: upgrade 177 -> 178

  zangrc (2):
        python3-dbus: upgrade 1.2.16 -> 1.2.18
        python3-pip: upgrade 21.1.3 -> 21.2.1

meta-openembedded: 8fbcfb9f02..3cf2475ea0:
  Anastasios Kavoukis (1):
        pm-qa: fix paths for shell scripts

  Andreas Müller (3):
        mozjs/0001-Port-build-to-python3.patch: Fix typos in description
        jack: upgrade 1.19.18 -> 1.19.19
        fluidsynth: upgrade 2.2.1 -> 2.2.2

  Andrej Valek (1):
        thrift: upgrade to 0.14.2

  Andrew Jeffery (2):
        python3-gmpy: Add native support
        python3-ecdsa: Add native support

  Armin Kuster (2):
        hiawatha: fix url.
        wireshark: update to 3.4.7

  Ben Brown (1):
        android-tools: fix install of adb client when TOOLS is overridden

  Changqing Li (1):
        apache2: upgrade 2.4.46 -> 2.4.48

  Devendra Tewari (1):
        Suppress eol in functionfs setup scripts (#147)

  Gianfranco (1):
        vboxguestdrivers: upgrade 6.1.22 -> 6.1.24

  Joe Slater (2):
        php: move to version 7.4.21
        gtksourceview4: work around dependency deficiency

  Johannes Obermüller (1):
        evtest: fix timestamps in output

  Kai Kang (2):
        python3-blivet: 3.1.4 -> 3.4.0
        python3-blivetgui: 2.1.10 -> 2.2.1

  Khem Raj (23):
        netperf: Update to latest
        netperf: Add systemd unit file
        packagegroup-meta-oe: Add lmdb
        packagegroup-meta-oe: Add mbw
        addcli: check for ns_get16 and ns_get32
        fuse: Define closefrom if not available
        autofs: Fix build with glibc 2.34+
        ntp: Do not use PTHREAD_STACK_MIN on glibc
        ntp: Fix make check
        mongodb: Upgrade to 4.4.7
        vboxguestdrivers: Remove __divmoddi4 patch
        packagegroup-meta-oe: Add jemalloc
        apitrace: Exclude from builds with glibc 2.34+
        libhugetlbfs: Disable build with glibc 2.34+
        fvwm: Package extra files and man pages
        luajit: Fix override syntax
        lua: Drop uclibc patch
        packagegroup-meta-oe: Correct override name and fix syntax
        recipes: Fix override syntax
        emacs,libgpiod,cockpit: Fix override syntax in using FILES_${PN}
        fvwm: Fix build time paths in target perl/python scripts
        nis: Drop uclibc check in anon python function
        jemalloc: Fix build on musl

  Leon Anavi (3):
        python3-networkx: Upgrade 2.6.1 -> 2.6.2
        python3-pysonos: Upgrade 0.0.53 -> 0.0.54
        python3-zeroconf: Upgrade 0.33.1 -> 0.33.2

  Li Wang (1):
        openlldp: fix segfault

  Maksym Sloyko (1):
        libusbgx: Configure the Devices Used

  Martin Jansa (5):
        Convert to new override syntax
        layer.conf: Update to honister
        mariadb: manually fix the conversion
        packagegroup-meta-oe: manually finish override syntax conversion
        klibc.bbclass, image_types_sparse.bbclass, packagegroup-meta-oe.bb: update the overrides syntax conversion

  Mingli Yu (4):
        mariadb: redefine log-error item
        jemalloc: add new recipe
        hdf5: improve reproducibility
        mariadb: Update SRC_URI

  Nicolas Dechesne (1):
        mbw: add new recipe

  Paulo Neves (1):
        htop: Add ncurses-terminfo-base to RDEPENDS

  Sakib Sajal (1):
        lmdb: add recipe

  Salman Ahmed (2):
        nginx: upgrade 1.18.0 -> 1.20.1
        nginx: upgrade 1.19.6 -> 1.21.1

  Tony Battersby (1):
        net-snmp: fix QA Issue after LDFLAGS change

  Yi Zhao (3):
        postfix: upgrade 3.6.1 -> 3.6.2
        audit: upgrade 3.0.2 -> 3.0.3
        audit: fix compile error for 2.8.5

  Zang Ruochen (1):
        python3-robotframework: upgrade 4.0.3 -> 4.1

  wangmy (17):
        evince: upgrade 40.2 -> 40.4
        gnome-backgrounds: upgrade 3.36.0 -> 3.38.0
        gnome-desktop3: upgrade 3.36.6 -> 3.38.8
        cmark: upgrade 0.30.0 -> 0.30.1
        ctags: upgrade 5.9.20210711.0 -> 5.9.20210718.0
        libnet-dns-perl: upgrade 1.31 -> 1.32
        libtalloc: upgrade 2.3.2 -> 2.3.3
        nghttp2: upgrade 1.43.0 -> 1.44.0
        bats: upgrade 1.3.0 -> 1.4.1
        networkmanager: upgrade 1.32.2 -> 1.32.4
        gensio: upgrade 2.2.7 -> 2.2.8
        libmbim: upgrade 1.24.8 -> 1.26.0
        fetchmail: upgrade 6.4.19 -> 6.4.20
        ctags: upgrade 5.9.20210718.0 -> 5.9.20210801.0
        libblockdev: upgrade 2.25 -> 2.26
        libqmi: upgrade 1.28.6 -> 1.28.8
        monit: upgrade 5.28.0 -> 5.28.1

  zangrc (15):
        python3-qrcode: upgrade 7.1 -> 7.2
        python3-rdflib: upgrade 5.0.0 -> 6.0.0
        python3-simplejson: upgrade 3.17.2 -> 3.17.3
        python3-bitstring: upgrade 3.1.7 -> 3.1.9
        python3-iso8601: upgrade 0.1.14 -> 0.1.16
        python3-gmqtt: upgrade 0.6.9 -> 0.6.10
        python3-graphviz: upgrade 0.16 -> 0.17
        python3-smbus: upgrade 4.2 -> 4.3
        python3-pandas: upgrade 1.3.0 -> 1.3.1
        python3-progress: upgrade 1.5 -> 1.6
        python3-sentry-sdk: upgrade 1.3.0 -> 1.3.1
        python3-socketio: upgrade 5.3.0 -> 5.4.0
        python3-tqdm: upgrade 4.61.2 -> 4.62.0
        python3-twisted: upgrade 21.2.0 -> 21.7.0
        python3-xlsxwriter: upgrade 1.4.4 -> 1.4.5

  zhengruoqin (15):
        live555: upgrade 20210710 -> 20210720
        libtest-warnings-perl: upgrade 0.030 -> 0.031
        python3-pybind11: upgrade 2.6.2 -> 2.7.0
        python3-pymongo: upgrade 3.11.4 -> 3.12.0
        python3-sqlalchemy: upgrade 1.4.20 -> 1.4.22
        python3-sentry-sdk: upgrade 1.2.0 -> 1.3.0
        libcurses-perl: upgrade 1.37 -> 1.38
        libdbd-sqlite-perl: upgrade 1.66 -> 1.68
        libencode-perl: upgrade 3.10 -> 3.11
        python3-bitarray: upgrade 2.2.2 -> 2.2.3
        python3-cbor2: upgrade 5.4.0 -> 5.4.1
        python3-gast: upgrade 0.5.0 -> 0.5.1
        poppler: upgrade 21.07.0 -> 21.08.0
        valijson: upgrade 0.4 -> 0.5
        xwd: upgrade 1.0.7 -> 1.0.8

meta-security: 152cdb506b..c885d399cd:
  Armin Kuster (18):
        suricata.inc: exclude ppc in rust version
        suricata: Drop 4.1.x its EOL
        add meta-rust
        crowdsec: add pkg
        packagegroup-core-security.bb: fix suricat-ptest inclusion
        gitlab-ci.yml:  streamline builds matrix
        krill: Add new pkg
        clamav: fix branch name and update
        meta-security: Convert to new override syntax
        meta-tpm: Convert to new override syntax
        meta-integrity: Convert to new override syntax
        meta-hardening: Convert to new override syntax
        meta-security-isafw: Convert to new override syntax
        meta-parsec: Convert to new override syntax
        meta-security-compliance: Convert to new override syntax
        dynamix-layers: Convert to new override syntax
        kas: Convert to new override syntax
        packagegroup-core-security.bb: only include suricat-ptest if rust is included

  Martin Jansa (1):
        layer.conf: Update to honister

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: Iec7301cf1c43b7cec462dcf88292a8b1b12a5045
diff --git a/poky/MAINTAINERS.md b/poky/MAINTAINERS.md
new file mode 100644
index 0000000..2ddcde6
--- /dev/null
+++ b/poky/MAINTAINERS.md
@@ -0,0 +1,71 @@
+OpenEmbedded-Core and Yocto Project Maintainer Information
+==========================================================
+
+OpenEmbedded and Yocto Project work jointly together to maintain the metadata,
+layers, tools and sub-projects that make up their ecosystems.
+
+The projects operate through collaborative development. This currently takes
+place on mailing lists for many components as the "pull request on github"
+workflow works well for single or small numbers of maintainers but we have
+a large number, all with different specialisms and benefit from the mailing
+list review process. Changes therefore undergo peer review through mailing
+lists in many cases.
+
+This file aims to acknowledge people with specific skills/knowledge/interest
+both to recognise their contributions but also empower them to help lead and
+curate those components. Where we have people with specialist knowledge in
+particular areas, during review patches/feedback from these people in these
+areas would generally carry weight.
+
+This file is maintained in OE-Core but may refer to components that are separate
+to it if that makes sense in the context of maintainership. The README of specific
+layers and components should ultimately be definitive about the patch process and
+maintainership for the component.
+
+Recipe Maintainers
+------------------
+
+See meta/conf/distro/include/maintainers.inc
+
+Component/Subsystem Maintainers
+-------------------------------
+
+* Kernel (inc. linux-yocto, perf): Bruce Ashfield
+* Reproducible Builds: Joshua Watt
+* Toaster: David Reyna
+* Hash-Equivalence: Joshua Watt
+* Recipe upgrade infrastructure: Alex Kanavin
+* Toolchain: Khem Raj
+* ptest-runner: Aníbal Limón
+* opkg: Alex Stewart
+* devtool: Saul Wold
+* eSDK: Saul Wold
+
+Maintainers needed
+------------------
+
+* Pseudo
+* Layer Index
+* recipetool
+* QA framework/automated testing
+* error reporting system/web UI
+* wic
+* Patchwork
+* Patchtest
+* Prelink-cross
+* Matchbox
+* Sato
+* Autobuilder
+
+Layer Maintainers needed
+------------------------
+
+* meta-gplv2 (ideally new strategy but active maintainer welcome)
+
+Shadow maintainers/development needed
+--------------------------------------
+
+* toaster
+* bitbake
+
+
diff --git a/poky/bitbake/bin/bitbake b/poky/bitbake/bin/bitbake
index f0ff240..dc1873a 100755
--- a/poky/bitbake/bin/bitbake
+++ b/poky/bitbake/bin/bitbake
@@ -26,7 +26,7 @@
 if sys.getfilesystemencoding() != "utf-8":
     sys.exit("Please use a locale setting which supports UTF-8 (such as LANG=en_US.UTF-8).\nPython can't change the filesystem locale after loading so we need a UTF-8 when Python starts or things won't work.")
 
-__version__ = "1.51.0"
+__version__ = "1.51.1"
 
 if __name__ == "__main__":
     if __version__ != bb.__version__:
diff --git a/poky/bitbake/contrib/vim/plugin/newbbappend.vim b/poky/bitbake/contrib/vim/plugin/newbbappend.vim
index e04174c..3f65f79 100644
--- a/poky/bitbake/contrib/vim/plugin/newbbappend.vim
+++ b/poky/bitbake/contrib/vim/plugin/newbbappend.vim
@@ -20,7 +20,7 @@
     set nopaste
 
     " New bbappend template
-    0 put ='FILESEXTRAPATHS_prepend := \"${THISDIR}/${PN}:\"'
+    0 put ='FILESEXTRAPATHS:prepend := \"${THISDIR}/${PN}:\"'
     2
 
     if paste == 1
diff --git a/poky/bitbake/contrib/vim/syntax/bitbake.vim b/poky/bitbake/contrib/vim/syntax/bitbake.vim
index f964621..d8aa0f1 100644
--- a/poky/bitbake/contrib/vim/syntax/bitbake.vim
+++ b/poky/bitbake/contrib/vim/syntax/bitbake.vim
@@ -51,9 +51,9 @@
 syn match bbExport            "^export" nextgroup=bbIdentifier skipwhite
 syn keyword bbExportFlag        export contained nextgroup=bbIdentifier skipwhite
 syn match bbIdentifier          "[a-zA-Z0-9\-_\.\/\+]\+" display contained
-syn match bbVarDeref            "${[a-zA-Z0-9\-_\.\/\+]\+}" contained
+syn match bbVarDeref            "${[a-zA-Z0-9\-_:\.\/\+]\+}" contained
 syn match bbVarEq               "\(:=\|+=\|=+\|\.=\|=\.\|?=\|??=\|=\)" contained nextgroup=bbVarValue
-syn match bbVarDef              "^\(export\s*\)\?\([a-zA-Z0-9\-_\.\/\+]\+\(_[${}a-zA-Z0-9\-_\.\/\+]\+\)\?\)\s*\(:=\|+=\|=+\|\.=\|=\.\|?=\|??=\|=\)\@=" contains=bbExportFlag,bbIdentifier,bbVarDeref nextgroup=bbVarEq
+syn match bbVarDef              "^\(export\s*\)\?\([a-zA-Z0-9\-_\.\/\+][${}a-zA-Z0-9\-_:\.\/\+]*\)\s*\(:=\|+=\|=+\|\.=\|=\.\|?=\|??=\|=\)\@=" contains=bbExportFlag,bbIdentifier,bbOverrideOperator,bbVarDeref nextgroup=bbVarEq
 syn match bbVarValue            ".*$" contained contains=bbString,bbVarDeref,bbVarPyValue
 syn region bbVarPyValue         start=+${@+ skip=+\\$+ end=+}+ contained contains=@python
 
@@ -77,13 +77,15 @@
 " Generic Functions
 syn match bbFunction            "\h[0-9A-Za-z_\-\.]*" display contained contains=bbOEFunctions
 
+syn keyword bbOverrideOperator  append prepend contained
+
 " BitBake shell metadata
 syn include @shell syntax/sh.vim
 if exists("b:current_syntax")
   unlet b:current_syntax
 endif
 syn keyword bbShFakeRootFlag    fakeroot contained
-syn match bbShFuncDef           "^\(fakeroot\s*\)\?\([\.0-9A-Za-z_${}\-\.]\+\)\(python\)\@<!\(\s*()\s*\)\({\)\@=" contains=bbShFakeRootFlag,bbFunction,bbVarDeref,bbDelimiter nextgroup=bbShFuncRegion skipwhite
+syn match bbShFuncDef           "^\(fakeroot\s*\)\?\([\.0-9A-Za-z_:${}\-\.]\+\)\(python\)\@<!\(\s*()\s*\)\({\)\@=" contains=bbShFakeRootFlag,bbFunction,bbOverrideOperator,bbVarDeref,bbDelimiter nextgroup=bbShFuncRegion skipwhite
 syn region bbShFuncRegion       matchgroup=bbDelimiter start="{\s*$" end="^}\s*$" contained contains=@shell
 
 " Python value inside shell functions
@@ -91,7 +93,7 @@
 
 " BitBake python metadata
 syn keyword bbPyFlag            python contained
-syn match bbPyFuncDef           "^\(fakeroot\s*\)\?\(python\)\(\s\+[0-9A-Za-z_${}\-\.]\+\)\?\(\s*()\s*\)\({\)\@=" contains=bbShFakeRootFlag,bbPyFlag,bbFunction,bbVarDeref,bbDelimiter nextgroup=bbPyFuncRegion skipwhite
+syn match bbPyFuncDef           "^\(fakeroot\s*\)\?\(python\)\(\s\+[0-9A-Za-z_:${}\-\.]\+\)\?\(\s*()\s*\)\({\)\@=" contains=bbShFakeRootFlag,bbPyFlag,bbFunction,bbOverrideOperator,bbVarDeref,bbDelimiter nextgroup=bbPyFuncRegion skipwhite
 syn region bbPyFuncRegion       matchgroup=bbDelimiter start="{\s*$" end="^}\s*$" contained contains=@python
 
 " BitBake 'def'd python functions
@@ -122,5 +124,6 @@
 hi def link bbStatementRest     Identifier
 hi def link bbOEFunctions       Special
 hi def link bbVarPyValue        PreProc
+hi def link bbOverrideOperator  Operator
 
 let b:current_syntax = "bb"
diff --git a/poky/bitbake/doc/Makefile b/poky/bitbake/doc/Makefile
index d40f390..996f01b 100644
--- a/poky/bitbake/doc/Makefile
+++ b/poky/bitbake/doc/Makefile
@@ -3,7 +3,7 @@
 
 # You can set these variables from the command line, and also
 # from the environment for the first two.
-SPHINXOPTS    ?= -j auto
+SPHINXOPTS    ?= -W --keep-going -j auto
 SPHINXBUILD   ?= sphinx-build
 SOURCEDIR     = .
 BUILDDIR      = _build
diff --git a/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-execution.rst b/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-execution.rst
index 84d65fa..a6ef90d 100644
--- a/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-execution.rst
+++ b/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-execution.rst
@@ -40,7 +40,7 @@
    the number of processors, which takes into account hyper-threading.
    Thus, a quad-core build host with hyper-threading most likely shows
    eight processors, which is the value you would then assign to
-   ``BB_NUMBER_THREADS``.
+   :term:`BB_NUMBER_THREADS`.
 
    A possibly simpler solution is that some Linux distributions (e.g.
    Debian and Ubuntu) provide the ``ncpus`` command.
@@ -65,13 +65,13 @@
 
 The ``layer.conf`` files are used to construct key variables such as
 :term:`BBPATH` and :term:`BBFILES`.
-``BBPATH`` is used to search for configuration and class files under the
-``conf`` and ``classes`` directories, respectively. ``BBFILES`` is used
+:term:`BBPATH` is used to search for configuration and class files under the
+``conf`` and ``classes`` directories, respectively. :term:`BBFILES` is used
 to locate both recipe and recipe append files (``.bb`` and
 ``.bbappend``). If there is no ``bblayers.conf`` file, it is assumed the
-user has set the ``BBPATH`` and ``BBFILES`` directly in the environment.
+user has set the :term:`BBPATH` and :term:`BBFILES` directly in the environment.
 
-Next, the ``bitbake.conf`` file is located using the ``BBPATH`` variable
+Next, the ``bitbake.conf`` file is located using the :term:`BBPATH` variable
 that was just constructed. The ``bitbake.conf`` file may also include
 other configuration files using the ``include`` or ``require``
 directives.
@@ -104,7 +104,7 @@
 contain a :term:`BBLAYERS` variable that is a
 space-delimited list of 'layer' directories. Recall that if BitBake
 cannot find a ``bblayers.conf`` file, then it is assumed the user has
-set the ``BBPATH`` and ``BBFILES`` variables directly in the
+set the :term:`BBPATH` and :term:`BBFILES` variables directly in the
 environment.
 
 For each directory (layer) in this list, a ``conf/layer.conf`` file is
@@ -114,7 +114,7 @@
 variables correctly for a given build directory.
 
 BitBake then expects to find the ``conf/bitbake.conf`` file somewhere in
-the user-specified ``BBPATH``. That configuration file generally has
+the user-specified :term:`BBPATH`. That configuration file generally has
 include directives to pull in any other metadata such as files specific
 to the architecture, the machine, the local environment, and so forth.
 
@@ -135,7 +135,7 @@
 specified in the configuration using the
 :term:`INHERIT` variable are also included. BitBake
 searches for class files in a ``classes`` subdirectory under the paths
-in ``BBPATH`` in the same way as configuration files.
+in :term:`BBPATH` in the same way as configuration files.
 
 A good way to get an idea of the configuration files and the class files
 used in your execution environment is to run the following BitBake
@@ -184,13 +184,13 @@
 During the configuration phase, BitBake will have set
 :term:`BBFILES`. BitBake now uses it to construct a
 list of recipes to parse, along with any append files (``.bbappend``) to
-apply. ``BBFILES`` is a space-separated list of available files and
+apply. :term:`BBFILES` is a space-separated list of available files and
 supports wildcards. An example would be::
 
   BBFILES = "/path/to/bbfiles/*.bb /path/to/appends/*.bbappend"
 
 BitBake parses each
-recipe and append file located with ``BBFILES`` and stores the values of
+recipe and append file located with :term:`BBFILES` and stores the values of
 various variables into the datastore.
 
 .. note::
@@ -201,7 +201,7 @@
 recipe is parsed line by line. Any inherit statements cause BitBake to
 find and then parse class files (``.bbclass``) using
 :term:`BBPATH` as the search path. Finally, BitBake
-parses in order any append files found in ``BBFILES``.
+parses in order any append files found in :term:`BBFILES`.
 
 One common convention is to use the recipe filename to define pieces of
 metadata. For example, in ``bitbake.conf`` the recipe name and version
@@ -212,7 +212,7 @@
    PV = "${@bb.parse.BBHandler.vars_from_file(d.getVar('FILE', False),d)[1] or '1.0'}"
 
 In this example, a recipe called "something_1.2.3.bb" would set
-``PN`` to "something" and ``PV`` to "1.2.3".
+:term:`PN` to "something" and :term:`PV` to "1.2.3".
 
 By the time parsing is complete for a recipe, BitBake has a list of
 tasks that the recipe defines and a set of data consisting of keys and
@@ -260,21 +260,21 @@
 
 Assuming BitBake has been instructed to execute a target and that all
 the recipe files have been parsed, BitBake starts to figure out how to
-build the target. BitBake looks through the ``PROVIDES`` list for each
-of the recipes. A ``PROVIDES`` list is the list of names by which the
-recipe can be known. Each recipe's ``PROVIDES`` list is created
+build the target. BitBake looks through the :term:`PROVIDES` list for each
+of the recipes. A :term:`PROVIDES` list is the list of names by which the
+recipe can be known. Each recipe's :term:`PROVIDES` list is created
 implicitly through the recipe's :term:`PN` variable and
 explicitly through the recipe's :term:`PROVIDES`
 variable, which is optional.
 
-When a recipe uses ``PROVIDES``, that recipe's functionality can be
-found under an alternative name or names other than the implicit ``PN``
+When a recipe uses :term:`PROVIDES`, that recipe's functionality can be
+found under an alternative name or names other than the implicit :term:`PN`
 name. As an example, suppose a recipe named ``keyboard_1.0.bb``
 contained the following::
 
   PROVIDES += "fullkeyboard"
 
-The ``PROVIDES``
+The :term:`PROVIDES`
 list for this recipe becomes "keyboard", which is implicit, and
 "fullkeyboard", which is explicit. Consequently, the functionality found
 in ``keyboard_1.0.bb`` can be found under two different names.
@@ -284,12 +284,12 @@
 Preferences
 ===========
 
-The ``PROVIDES`` list is only part of the solution for figuring out a
+The :term:`PROVIDES` list is only part of the solution for figuring out a
 target's recipes. Because targets might have multiple providers, BitBake
 needs to prioritize providers by determining provider preferences.
 
 A common example in which a target has multiple providers is
-"virtual/kernel", which is on the ``PROVIDES`` list for each kernel
+"virtual/kernel", which is on the :term:`PROVIDES` list for each kernel
 recipe. Each machine often selects the best kernel provider by using a
 line similar to the following in the machine configuration file::
 
@@ -309,10 +309,10 @@
 :term:`DEFAULT_PREFERENCE` variable.
 
 By default, files have a preference of "0". Setting
-``DEFAULT_PREFERENCE`` to "-1" makes the recipe unlikely to be used
-unless it is explicitly referenced. Setting ``DEFAULT_PREFERENCE`` to
-"1" makes it likely the recipe is used. ``PREFERRED_VERSION`` overrides
-any ``DEFAULT_PREFERENCE`` setting. ``DEFAULT_PREFERENCE`` is often used
+:term:`DEFAULT_PREFERENCE` to "-1" makes the recipe unlikely to be used
+unless it is explicitly referenced. Setting :term:`DEFAULT_PREFERENCE` to
+"1" makes it likely the recipe is used. :term:`PREFERRED_VERSION` overrides
+any :term:`DEFAULT_PREFERENCE` setting. :term:`DEFAULT_PREFERENCE` is often used
 to mark newer and more experimental recipe versions until they have
 undergone sufficient testing to be considered stable.
 
@@ -394,7 +394,7 @@
 thread threshold has not been exceeded.
 
 It is worth noting that you can greatly speed up the build time by
-properly setting the ``BB_NUMBER_THREADS`` variable.
+properly setting the :term:`BB_NUMBER_THREADS` variable.
 
 As each task completes, a timestamp is written to the directory
 specified by the :term:`STAMP` variable. On subsequent
@@ -561,7 +561,7 @@
 
   BB_SIGNATURE_HANDLER ?= "OEBasicHash"
 
-The "OEBasicHash" ``BB_SIGNATURE_HANDLER`` is the same as the "OEBasic"
+The "OEBasicHash" :term:`BB_SIGNATURE_HANDLER` is the same as the "OEBasic"
 version but adds the task hash to the stamp files. This results in any
 metadata change that changes the task hash, automatically causing the
 task to be run again. This removes the need to bump
@@ -581,7 +581,7 @@
 -  ``BBHASHDEPS_``\ *filename:taskname*: The task dependencies for
    each task.
 
--  ``BB_TASKHASH``: The hash of the currently running task.
+-  :term:`BB_TASKHASH`: The hash of the currently running task.
 
 It is worth noting that BitBake's "-S" option lets you debug BitBake's
 processing of signatures. The options passed to -S allow different
diff --git a/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-fetching.rst b/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-fetching.rst
index bd1fb4f..593de61 100644
--- a/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-fetching.rst
+++ b/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-fetching.rst
@@ -51,7 +51,7 @@
    examine the OpenEmbedded class file ``base.bbclass``
    .
 
-The ``SRC_URI`` and ``WORKDIR`` variables are not hardcoded into the
+The :term:`SRC_URI` and ``WORKDIR`` variables are not hardcoded into the
 fetcher, since those fetcher methods can be (and are) called with
 different variable names. In OpenEmbedded for example, the shared state
 (sstate) code uses the fetch module to fetch the sstate files.
@@ -64,14 +64,14 @@
    :term:`PREMIRRORS` variable.
 
 -  *Source URI:* If pre-mirrors fail, BitBake uses the original URL (e.g
-   from ``SRC_URI``).
+   from :term:`SRC_URI`).
 
 -  *Mirror Sites:* If fetch failures occur, BitBake next uses mirror
    locations as defined by the :term:`MIRRORS` variable.
 
 For each URL passed to the fetcher, the fetcher calls the submodule that
 handles that particular URL type. This behavior can be the source of
-some confusion when you are providing URLs for the ``SRC_URI`` variable.
+some confusion when you are providing URLs for the :term:`SRC_URI` variable.
 Consider the following two URLs::
 
    http://git.yoctoproject.org/git/poky;protocol=git
@@ -110,14 +110,14 @@
 File integrity is of key importance for reproducing builds. For
 non-local archive downloads, the fetcher code can verify SHA-256 and MD5
 checksums to ensure the archives have been downloaded correctly. You can
-specify these checksums by using the ``SRC_URI`` variable with the
+specify these checksums by using the :term:`SRC_URI` variable with the
 appropriate varflags as follows::
 
    SRC_URI[md5sum] = "value"
    SRC_URI[sha256sum] = "value"
 
 You can also specify the checksums as
-parameters on the ``SRC_URI`` as shown below::
+parameters on the :term:`SRC_URI` as shown below::
 
   SRC_URI = "http://example.com/foobar.tar.bz2;md5sum=4a8e0f237e961fd7785d19d07fdb994d"
 
@@ -129,7 +129,7 @@
    SRC_URI[foo.md5sum] = 4a8e0f237e961fd7785d19d07fdb994d
 
 After a file has been downloaded and
-has had its checksum checked, a ".done" stamp is placed in ``DL_DIR``.
+has had its checksum checked, a ".done" stamp is placed in :term:`DL_DIR`.
 BitBake uses this stamp during subsequent builds to avoid downloading or
 comparing a checksum for the file again.
 
@@ -438,7 +438,7 @@
 .. note::
 
    Specifying passwords directly in ``git://`` urls is not supported.
-   There are several reasons: ``SRC_URI`` is often written out to logs and
+   There are several reasons: :term:`SRC_URI` is often written out to logs and
    other places, and that could easily leak passwords; it is also all too
    easy to share metadata without removing passwords. SSH keys, ``~/.netrc``
    and ``~/.ssh/config`` files can be used as alternatives.
@@ -487,7 +487,7 @@
 The fetcher uses the ``rcleartool`` or
 ``cleartool`` remote client, depending on which one is available.
 
-Following are options for the ``SRC_URI`` statement:
+Following are options for the :term:`SRC_URI` statement:
 
 -  *vob*: The name, which must include the prepending "/" character,
    of the ClearCase VOB. This option is required.
@@ -549,7 +549,7 @@
 you choose not to use ``P4CONFIG``, or to explicitly set variables that
 ``P4CONFIG`` can contain, you can specify the ``P4PORT`` value, which is
 the server's URL and port number, and you can specify a username and
-password directly in your recipe within ``SRC_URI``.
+password directly in your recipe within :term:`SRC_URI`.
 
 Here is an example that relies on ``P4CONFIG`` to specify the server URL
 and port, username, and password, and fetches the Head Revision::
@@ -680,4 +680,4 @@
 Auto Revisions
 ==============
 
-We need to document ``AUTOREV`` and ``SRCREV_FORMAT`` here.
+We need to document ``AUTOREV`` and :term:`SRCREV_FORMAT` here.
diff --git a/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-hello.rst b/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-hello.rst
index a9c3370..c5a4ce6 100644
--- a/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-hello.rst
+++ b/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-hello.rst
@@ -145,23 +145,23 @@
 
     The majority of this output is specific to environment variables that
     are not directly relevant to BitBake. However, the very first
-    message regarding the ``BBPATH`` variable and the
+    message regarding the :term:`BBPATH` variable and the
     ``conf/bblayers.conf`` file is relevant.
 
     When you run BitBake, it begins looking for metadata files. The
     :term:`BBPATH` variable is what tells BitBake where
-    to look for those files. ``BBPATH`` is not set and you need to set
-    it. Without ``BBPATH``, BitBake cannot find any configuration files
+    to look for those files. :term:`BBPATH` is not set and you need to set
+    it. Without :term:`BBPATH`, BitBake cannot find any configuration files
     (``.conf``) or recipe files (``.bb``) at all. BitBake also cannot
     find the ``bitbake.conf`` file.
 
-#.  **Setting BBPATH:** For this example, you can set ``BBPATH`` in
+#.  **Setting BBPATH:** For this example, you can set :term:`BBPATH` in
     the same manner that you set ``PATH`` earlier in the appendix. You
     should realize, though, that it is much more flexible to set the
-    ``BBPATH`` variable up in a configuration file for each project.
+    :term:`BBPATH` variable up in a configuration file for each project.
 
     From your shell, enter the following commands to set and export the
-    ``BBPATH`` variable::
+    :term:`BBPATH` variable::
 
       $ BBPATH="projectdirectory"
       $ export BBPATH
@@ -175,7 +175,7 @@
        ("~") character as BitBake does not expand that character as the
        shell would.
 
-#.  **Run BitBake:** Now that you have ``BBPATH`` defined, run the
+#.  **Run BitBake:** Now that you have :term:`BBPATH` defined, run the
     ``bitbake`` command again::
 
        $ bitbake
diff --git a/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-intro.rst b/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-intro.rst
index b3cea61..76c8e3d 100644
--- a/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-intro.rst
+++ b/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-intro.rst
@@ -27,7 +27,7 @@
 Conceptually, BitBake is similar to GNU Make in some regards but has
 significant differences:
 
--  BitBake executes tasks according to provided metadata that builds up
+-  BitBake executes tasks according to the provided metadata that builds up
    the tasks. Metadata is stored in recipe (``.bb``) and related recipe
    "append" (``.bbappend``) files, configuration (``.conf``) and
    underlying include (``.inc``) files, and in class (``.bbclass``)
@@ -417,8 +417,8 @@
      -l DEBUG_DOMAINS, --log-domains=DEBUG_DOMAINS
                            Show debug logging for the specified logging domains
      -P, --profile         Profile the command and save reports.
-     -u UI, --ui=UI        The user interface to use (knotty, ncurses or taskexp
-                           - default knotty).
+     -u UI, --ui=UI        The user interface to use (knotty, ncurses, taskexp or
+                           teamcity - default knotty).
      --token=XMLRPCTOKEN   Specify the connection token to be used when
                            connecting to a remote server.
      --revisions-changed   Set the exit code depending on whether upstream
@@ -433,6 +433,9 @@
                            Environment variable BB_SERVER_TIMEOUT.
      --no-setscene         Do not run any setscene tasks. sstate will be ignored
                            and everything needed, built.
+     --skip-setscene       Skip setscene tasks if they would be executed. Tasks
+                           previously restored from sstate will be kept, unlike
+                           --no-setscene
      --setscene-only       Only run setscene tasks, don't run any real tasks.
      --remote-server=REMOTE_SERVER
                            Connect to the specified server.
@@ -537,7 +540,7 @@
 To stop depending on common depends, use the "-I" depend option and
 BitBake omits them from the graph. Leaving this information out can
 produce more readable graphs. This way, you can remove from the graph
-``DEPENDS`` from inherited classes such as ``base.bbclass``.
+:term:`DEPENDS` from inherited classes such as ``base.bbclass``.
 
 Here are two examples that create dependency graphs. The second example
 omits depends common in OpenEmbedded from the graph::
@@ -564,7 +567,7 @@
 .. image:: figures/bb_multiconfig_files.png
    :align: center
 
-The reason for this required file hierarchy is because the ``BBPATH``
+The reason for this required file hierarchy is because the :term:`BBPATH`
 variable is not constructed until the layers are parsed. Consequently,
 using the configuration file as a pre-configuration file is not possible
 unless it is located in the current working directory.
diff --git a/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst b/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst
index 20c330e..b0494d0 100644
--- a/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst
+++ b/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst
@@ -91,9 +91,10 @@
       Variables that are exported to the environment are preceded by the
       string "export" in the command's output.
 
--  For recipe changes, use the following::
+-  To find changes to a given variable in a specific recipe, use the
+   following::
 
-      $ bitbake recipe -e \| grep VARIABLE="
+      $ bitbake recipename -e | grep VARIABLENAME=\"
 
    This command checks to see if the variable actually makes
    it into a specific recipe.
@@ -225,7 +226,7 @@
    C := "${C}append"
 
 In this example, ``A`` contains "test 123", even though the final value
-of ``T`` is "456". The variable ``B`` will end up containing "456
+of :term:`T` is "456". The variable :term:`B` will end up containing "456
 cvalappend". This is because references to undefined variables are
 preserved as is during (immediate)expansion. This is in contrast to GNU
 Make, where undefined variables expand to nothing. The variable ``C``
@@ -248,7 +249,7 @@
    C = "cval"
    C =+ "test"
 
-The variable ``B`` contains "bval additionaldata" and ``C`` contains "test
+The variable :term:`B` contains "bval additionaldata" and ``C`` contains "test
 cval".
 
 .. _appending-and-prepending-without-spaces:
@@ -267,7 +268,7 @@
    C = "cval"
    C =. "test"
 
-The variable ``B`` contains "bvaladditionaldata" and ``C`` contains
+The variable :term:`B` contains "bvaladditionaldata" and ``C`` contains
 "testcval".
 
 Appending and Prepending (Override Style Syntax)
@@ -281,13 +282,13 @@
 rather than being immediately applied. Here are some examples::
 
    B = "bval"
-   B_append = " additional data"
+   B:append = " additional data"
    C = "cval"
-   C_prepend = "additional data "
+   C:prepend = "additional data "
    D = "dval"
-   D_append = "additional data"
+   D:append = "additional data"
 
-The variable ``B``
+The variable :term:`B`
 becomes "bval additional data" and ``C`` becomes "additional data cval".
 The variable ``D`` becomes "dvaladditional data".
 
@@ -312,10 +313,10 @@
 Surrounding spaces and spacing are preserved. Here is an example::
 
    FOO = "123 456 789 123456 123 456 123 456"
-   FOO_remove = "123"
-   FOO_remove = "456"
+   FOO:remove = "123"
+   FOO:remove = "456"
    FOO2 = " abc def ghi abcdef abc def abc def def"
-   FOO2_remove = "\
+   FOO2:remove = "\
        def \
        abc \
        ghi \
@@ -324,14 +325,14 @@
 The variable ``FOO`` becomes
 "  789 123456    " and ``FOO2`` becomes "    abcdef     ".
 
-Like "_append" and "_prepend", "_remove" is applied at variable
+Like ":append" and ":prepend", ":remove" is applied at variable
 expansion time.
 
 Override Style Operation Advantages
 -----------------------------------
 
-An advantage of the override style operations "_append", "_prepend", and
-"_remove" as compared to the "+=" and "=+" operators is that the
+An advantage of the override style operations ":append", ":prepend", and
+":remove" as compared to the "+=" and "=+" operators is that the
 override style operators provide guaranteed operations. For example,
 consider a class ``foo.bbclass`` that needs to add the value "val" to
 the variable ``FOO``, and a recipe that uses ``foo.bbclass`` as follows::
@@ -346,18 +347,18 @@
    FOO += "val"
 
 If, on the other hand, ``foo.bbclass``
-uses the "_append" operator, then the final value of ``FOO`` will be
+uses the ":append" operator, then the final value of ``FOO`` will be
 "initial val", as intended::
 
-   FOO_append = " val"
+   FOO:append = " val"
 
 .. note::
 
-   It is never necessary to use "+=" together with "_append". The following
+   It is never necessary to use "+=" together with ":append". The following
    sequence of assignments appends "barbaz" to FOO::
 
-       FOO_append = "bar"
-       FOO_append = "baz"
+       FOO:append = "bar"
+       FOO:append = "baz"
 
 
    The only effect of changing the second assignment in the previous
@@ -378,8 +379,8 @@
 
 You can define, append, and prepend values to variable flags. All the
 standard syntax operations previously mentioned work for variable flags
-except for override style syntax (i.e. "_prepend", "_append", and
-"_remove").
+except for override style syntax (i.e. ":prepend", ":append", and
+":remove").
 
 Here are some examples showing how to set variable flags::
 
@@ -496,14 +497,14 @@
 
 BitBake uses :term:`OVERRIDES` to control what
 variables are overridden after BitBake parses recipes and configuration
-files. This section describes how you can use ``OVERRIDES`` as
+files. This section describes how you can use :term:`OVERRIDES` as
 conditional metadata, talks about key expansion in relationship to
-``OVERRIDES``, and provides some examples to help with understanding.
+:term:`OVERRIDES`, and provides some examples to help with understanding.
 
 Conditional Metadata
 --------------------
 
-You can use ``OVERRIDES`` to conditionally select a specific version of
+You can use :term:`OVERRIDES` to conditionally select a specific version of
 a variable and to conditionally append or prepend the value of a
 variable.
 
@@ -513,10 +514,10 @@
    underscores are not permitted in override names as they are used to
    separate overrides from each other and from the variable name.
 
--  *Selecting a Variable:* The ``OVERRIDES`` variable is a
+-  *Selecting a Variable:* The :term:`OVERRIDES` variable is a
    colon-character-separated list that contains items for which you want
    to satisfy conditions. Thus, if you have a variable that is
-   conditional on "arm", and "arm" is in ``OVERRIDES``, then the
+   conditional on "arm", and "arm" is in :term:`OVERRIDES`, then the
    "arm"-specific version of the variable is used rather than the
    non-conditional version. Here is an example::
 
@@ -525,7 +526,7 @@
       TEST_os = "osspecific"
       TEST_nooverride = "othercondvalue"
 
-   In this example, the ``OVERRIDES``
+   In this example, the :term:`OVERRIDES`
    variable lists three overrides: "architecture", "os", and "machine".
    The variable ``TEST`` by itself has a default value of "default". You
    select the os-specific version of the ``TEST`` variable by appending
@@ -538,36 +539,36 @@
    that value based on the architecture of the build::
 
       KBRANCH = "standard/base"
-      KBRANCH_qemuarm = "standard/arm-versatile-926ejs"
-      KBRANCH_qemumips = "standard/mti-malta32"
-      KBRANCH_qemuppc = "standard/qemuppc"
-      KBRANCH_qemux86 = "standard/common-pc/base"
-      KBRANCH_qemux86-64 = "standard/common-pc-64/base"
-      KBRANCH_qemumips64 = "standard/mti-malta64"
+      KBRANCH:qemuarm = "standard/arm-versatile-926ejs"
+      KBRANCH:qemumips = "standard/mti-malta32"
+      KBRANCH:qemuppc = "standard/qemuppc"
+      KBRANCH:qemux86 = "standard/common-pc/base"
+      KBRANCH:qemux86-64 = "standard/common-pc-64/base"
+      KBRANCH:qemumips64 = "standard/mti-malta64"
 
 -  *Appending and Prepending:* BitBake also supports append and prepend
    operations to variable values based on whether a specific item is
-   listed in ``OVERRIDES``. Here is an example::
+   listed in :term:`OVERRIDES`. Here is an example::
 
       DEPENDS = "glibc ncurses"
       OVERRIDES = "machine:local"
-      DEPENDS_append_machine = "libmad"
+      DEPENDS:append:machine = "libmad"
 
-   In this example, ``DEPENDS`` becomes "glibc ncurses libmad".
+   In this example, :term:`DEPENDS` becomes "glibc ncurses libmad".
 
    Again, using an OpenEmbedded metadata-based kernel recipe file as an
    example, the following lines will conditionally append to the
    ``KERNEL_FEATURES`` variable based on the architecture::
 
-      KERNEL_FEATURES_append = " ${KERNEL_EXTRA_FEATURES}"
-      KERNEL_FEATURES_append_qemux86=" cfg/sound.scc cfg/paravirt_kvm.scc"
-      KERNEL_FEATURES_append_qemux86-64=" cfg/sound.scc cfg/paravirt_kvm.scc"
+      KERNEL_FEATURES:append = " ${KERNEL_EXTRA_FEATURES}"
+      KERNEL_FEATURES:append:qemux86=" cfg/sound.scc cfg/paravirt_kvm.scc"
+      KERNEL_FEATURES:append:qemux86-64=" cfg/sound.scc cfg/paravirt_kvm.scc"
 
 -  *Setting a Variable for a Single Task:* BitBake supports setting a
    variable just for the duration of a single task. Here is an example::
 
       FOO_task-configure = "val 1"
-      FOO_task-compile = "val 2"
+      FOO:task-compile = "val 2"
 
    In the
    previous example, ``FOO`` has the value "val 1" while the
@@ -580,9 +581,9 @@
    ``do_compile`` task.
 
    You can also use this syntax with other combinations (e.g.
-   "``_prepend``") as shown in the following example::
+   "``:prepend``") as shown in the following example::
 
-      EXTRA_OEMAKE_prepend_task-compile = "${PARALLEL_MAKE} "
+      EXTRA_OEMAKE:prepend:task-compile = "${PARALLEL_MAKE} "
 
 Key Expansion
 -------------
@@ -612,33 +613,33 @@
 
 There is often confusion concerning the order in which overrides and
 various "append" operators take effect. Recall that an append or prepend
-operation using "_append" and "_prepend" does not result in an immediate
+operation using ":append" and ":prepend" does not result in an immediate
 assignment as would "+=", ".=", "=+", or "=.". Consider the following
 example::
 
    OVERRIDES = "foo"
    A = "Z"
-   A_foo_append = "X"
+   A:foo:append = "X"
 
 For this case,
 ``A`` is unconditionally set to "Z" and "X" is unconditionally and
-immediately appended to the variable ``A_foo``. Because overrides have
-not been applied yet, ``A_foo`` is set to "X" due to the append and
+immediately appended to the variable ``A:foo``. Because overrides have
+not been applied yet, ``A:foo`` is set to "X" due to the append and
 ``A`` simply equals "Z".
 
 Applying overrides, however, changes things. Since "foo" is listed in
-``OVERRIDES``, the conditional variable ``A`` is replaced with the "foo"
-version, which is equal to "X". So effectively, ``A_foo`` replaces
+:term:`OVERRIDES`, the conditional variable ``A`` is replaced with the "foo"
+version, which is equal to "X". So effectively, ``A:foo`` replaces
 ``A``.
 
 This next example changes the order of the override and the append::
 
    OVERRIDES = "foo"
    A = "Z"
-   A_append_foo = "X"
+   A:append:foo = "X"
 
 For this case, before
-overrides are handled, ``A`` is set to "Z" and ``A_append_foo`` is set
+overrides are handled, ``A`` is set to "Z" and ``A:append:foo`` is set
 to "X". Once the override for "foo" is applied, however, ``A`` gets
 appended with "X". Consequently, ``A`` becomes "ZX". Notice that spaces
 are not appended.
@@ -648,21 +649,21 @@
 
    OVERRIDES = "foo"
    A = "Y"
-   A_foo_append = "Z"
-   A_foo_append = "X"
+   A:foo:append = "Z"
+   A:foo:append = "X"
 
 For this case, before any overrides are resolved,
 ``A`` is set to "Y" using an immediate assignment. After this immediate
-assignment, ``A_foo`` is set to "Z", and then further appended with "X"
+assignment, ``A:foo`` is set to "Z", and then further appended with "X"
 leaving the variable set to "ZX". Finally, applying the override for
 "foo" results in the conditional variable ``A`` becoming "ZX" (i.e.
-``A`` is replaced with ``A_foo``).
+``A`` is replaced with ``A:foo``).
 
 This final example mixes in some varying operators::
 
    A = "1"
-   A_append = "2"
-   A_append = "3"
+   A:append = "2"
+   A:append = "3"
    A += "4"
    A .= "5"
 
@@ -670,7 +671,7 @@
 operators are affecting the order of assignments as BitBake passes
 through the code multiple times. Initially, ``A`` is set to "1 45"
 because of the three statements that use immediate operators. After
-these assignments are made, BitBake applies the "_append" operations.
+these assignments are made, BitBake applies the ":append" operations.
 Those operations result in ``A`` becoming "1 4523".
 
 Sharing Functionality
@@ -686,7 +687,7 @@
 
 This section presents the mechanisms BitBake provides to allow you to
 share functionality between recipes. Specifically, the mechanisms
-include ``include``, ``inherit``, ``INHERIT``, and ``require``
+include ``include``, ``inherit``, :term:`INHERIT`, and ``require``
 directives.
 
 Locating Include and Class Files
@@ -702,7 +703,7 @@
 
 In order for include and class files to be found by BitBake, they need
 to be located in a "classes" subdirectory that can be found in
-``BBPATH``.
+:term:`BBPATH`.
 
 ``inherit`` Directive
 ---------------------
@@ -725,7 +726,7 @@
    inherit autotools
 
 In this case, BitBake would search for the directory
-``classes/autotools.bbclass`` in ``BBPATH``.
+``classes/autotools.bbclass`` in :term:`BBPATH`.
 
 .. note::
 
@@ -752,7 +753,7 @@
 overrides::
 
    VARIABLE = ""
-   VARIABLE_someoverride = "myclass"
+   VARIABLE:someoverride = "myclass"
 
 Another method is by using anonymous Python. Here is an example::
 
@@ -780,7 +781,7 @@
 BitBake to parse whatever file you specify, and to insert that file at
 that location. The directive is much like its equivalent in Make except
 that if the path specified on the include line is a relative path,
-BitBake locates the first file it can find within ``BBPATH``.
+BitBake locates the first file it can find within :term:`BBPATH`.
 
 The include directive is a more generic method of including
 functionality as compared to the :ref:`inherit <bitbake-user-manual/bitbake-user-manual-metadata:\`\`inherit\`\` directive>`
@@ -822,7 +823,7 @@
 
 Similar to how BitBake handles :ref:`include <bitbake-user-manual/bitbake-user-manual-metadata:\`\`include\`\` directive>`, if
 the path specified on the require line is a relative path, BitBake
-locates the first file it can find within ``BBPATH``.
+locates the first file it can find within :term:`BBPATH`.
 
 As an example, suppose you have two versions of a recipe (e.g.
 ``foo_1.2.2.bb`` and ``foo_2.0.0.bb``) where each version contains some
@@ -851,7 +852,7 @@
 This configuration directive causes the named class to be inherited at
 the point of the directive during parsing. As with the ``inherit``
 directive, the ``.bbclass`` file must be located in a "classes"
-subdirectory in one of the directories specified in ``BBPATH``.
+subdirectory in one of the directories specified in :term:`BBPATH`.
 
 .. note::
 
@@ -907,7 +908,7 @@
 shell but might be something such as ``dash``. You should not use
 Bash-specific script (bashisms).
 
-Overrides and override-style operators like ``_append`` and ``_prepend``
+Overrides and override-style operators like ``:append`` and ``:prepend``
 can also be applied to shell functions. Most commonly, this application
 would be used in a ``.bbappend`` file to modify functions in the main
 recipe. It can also be used to modify functions inherited from classes.
@@ -919,7 +920,7 @@
        fn
    }
 
-   fn_prepend() {
+   fn:prepend() {
        bbplain second
    }
 
@@ -927,7 +928,7 @@
        bbplain third
    }
 
-   do_foo_append() {
+   do_foo:append() {
        bbplain fourth
    }
 
@@ -977,7 +978,7 @@
 
 As an example, consider the following::
 
-   python do_foo_prepend() {
+   python do_foo:prepend() {
        bb.plain("first")
    }
 
@@ -985,7 +986,7 @@
        bb.plain("second")
    }
 
-   python do_foo_append() {
+   python do_foo:append() {
        bb.plain("third")
    }
 
@@ -1015,7 +1016,7 @@
    SOMECONDITION = "1"
    DEPENDS = "${@get_depends(d)}"
 
-This would result in ``DEPENDS`` containing ``dependencywithcond``.
+This would result in :term:`DEPENDS` containing ``dependencywithcond``.
 
 Here are some things to know about Python functions:
 
@@ -1134,12 +1135,12 @@
 values set for the variables within the anonymous functions become
 available to tasks, which always run after parsing.
 
-Overrides and override-style operators such as "``_append``" are applied
+Overrides and override-style operators such as "``:append``" are applied
 before anonymous functions run. In the following example, ``FOO`` ends
 up with the value "foo from anonymous"::
 
    FOO = "foo"
-   FOO_append = " from outside"
+   FOO:append = " from outside"
 
    python () {
        d.setVar("FOO", "foo from anonymous")
@@ -1164,7 +1165,7 @@
 where a class defines a task function and your recipe inherits the
 class. In this basic scenario, your recipe inherits the task function as
 defined in the class. If desired, your recipe can add to the start and
-end of the function by using the "_prepend" or "_append" operations
+end of the function by using the ":prepend" or ":append" operations
 respectively, or it can redefine the function completely. However, if it
 redefines the function, there is no means for it to call the class
 version of the function. ``EXPORT_FUNCTIONS`` provides a mechanism that
@@ -1382,7 +1383,7 @@
 original execution environment. BitBake saves a copy of the original
 environment into a special variable named :term:`BB_ORIGENV`.
 
-The ``BB_ORIGENV`` variable returns a datastore object that can be
+The :term:`BB_ORIGENV` variable returns a datastore object that can be
 queried using the standard datastore operators such as
 ``getVar(, False)``. The datastore object is useful, for example, to
 find the original ``DISPLAY`` variable. Here is an example::
@@ -1467,7 +1468,7 @@
          can result in unpredictable behavior.
 
       -  Setting the varflag to a value greater than the value used in
-         the ``BB_NUMBER_THREADS`` variable causes ``number_threads`` to
+         the :term:`BB_NUMBER_THREADS` variable causes ``number_threads`` to
          have no effect.
 
 -  ``[postfuncs]``: List of functions to call after the completion of
@@ -1537,7 +1538,7 @@
 failures.
 
 Following is an example event handler that prints the name of the event
-and the content of the ``FILE`` variable::
+and the content of the :term:`FILE` variable::
 
    addhandler myclass_eventhandler
    python myclass_eventhandler() {
@@ -1576,7 +1577,7 @@
 
 -  ``bb.event.ConfigParsed()``: Fired when the base configuration; which
    consists of ``bitbake.conf``, ``base.bbclass`` and any global
-   ``INHERIT`` statements; has been parsed. You can see multiple such
+   :term:`INHERIT` statements; has been parsed. You can see multiple such
    events when each of the workers parse the base configuration or if
    the server changes configuration and reparses. Any given datastore
    only has one such event executed against it, however. If
@@ -1733,13 +1734,13 @@
 
 BitBake uses the :term:`DEPENDS` variable to manage
 build time dependencies. The ``[deptask]`` varflag for tasks signifies
-the task of each item listed in ``DEPENDS`` that must complete before
+the task of each item listed in :term:`DEPENDS` that must complete before
 that task can be executed. Here is an example::
 
    do_configure[deptask] = "do_populate_sysroot"
 
 In this example, the ``do_populate_sysroot`` task
-of each item in ``DEPENDS`` must complete before ``do_configure`` can
+of each item in :term:`DEPENDS` must complete before ``do_configure`` can
 execute.
 
 Runtime Dependencies
@@ -1748,8 +1749,8 @@
 BitBake uses the :term:`PACKAGES`, :term:`RDEPENDS`, and :term:`RRECOMMENDS`
 variables to manage runtime dependencies.
 
-The ``PACKAGES`` variable lists runtime packages. Each of those packages
-can have ``RDEPENDS`` and ``RRECOMMENDS`` runtime dependencies. The
+The :term:`PACKAGES` variable lists runtime packages. Each of those packages
+can have :term:`RDEPENDS` and :term:`RRECOMMENDS` runtime dependencies. The
 ``[rdeptask]`` flag for tasks is used to signify the task of each item
 runtime dependency which must have completed before that task can be
 executed. ::
@@ -1757,9 +1758,9 @@
    do_package_qa[rdeptask] = "do_packagedata"
 
 In the previous
-example, the ``do_packagedata`` task of each item in ``RDEPENDS`` must
+example, the ``do_packagedata`` task of each item in :term:`RDEPENDS` must
 have completed before ``do_package_qa`` can execute.
-Although ``RDEPENDS`` contains entries from the
+Although :term:`RDEPENDS` contains entries from the
 runtime dependency namespace, BitBake knows how to map them back
 to the build-time dependency namespace, in which the tasks are defined.
 
@@ -1802,7 +1803,7 @@
 BitBake uses the ``[depends]`` flag in a more generic form to manage
 inter-task dependencies. This more generic form allows for
 inter-dependency checks for specific tasks rather than checks for the
-data in ``DEPENDS``. Here is an example::
+data in :term:`DEPENDS`. Here is an example::
 
    do_patch[depends] = "quilt-native:do_populate_sysroot"
 
diff --git a/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-ref-variables.rst b/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-ref-variables.rst
index 2dca52c..6283c26 100644
--- a/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-ref-variables.rst
+++ b/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-ref-variables.rst
@@ -24,13 +24,14 @@
       described here in this glossary.
 
 .. glossary::
+   :sorted:
 
    :term:`ASSUME_PROVIDED`
       Lists recipe names (:term:`PN` values) BitBake does not
       attempt to build. Instead, BitBake assumes these recipes have already
       been built.
 
-      In OpenEmbedded-Core, ``ASSUME_PROVIDED`` mostly specifies native
+      In OpenEmbedded-Core, :term:`ASSUME_PROVIDED` mostly specifies native
       tools that should not be built. An example is ``git-native``, which
       when specified allows for the Git binary from the host to be used
       rather than building ``git-native``.
@@ -83,14 +84,14 @@
 
       -  Attempts to access networks not in the host list cause a failure.
 
-      Using ``BB_ALLOWED_NETWORKS`` in conjunction with
+      Using :term:`BB_ALLOWED_NETWORKS` in conjunction with
       :term:`PREMIRRORS` is very useful. Adding the
-      host you want to use to ``PREMIRRORS`` results in the source code
+      host you want to use to :term:`PREMIRRORS` results in the source code
       being fetched from an allowed location and avoids raising an error
       when a host that is not allowed is in a
       :term:`SRC_URI` statement. This is because the
-      fetcher does not attempt to use the host listed in ``SRC_URI`` after
-      a successful fetch from the ``PREMIRRORS`` occurs.
+      fetcher does not attempt to use the host listed in :term:`SRC_URI` after
+      a successful fetch from the :term:`PREMIRRORS` occurs.
 
    :term:`BB_CONSOLELOG`
       Specifies the path to a log file into which BitBake's user interface
@@ -177,7 +178,7 @@
       issues a warning when the disk space in the ``${SSTATE_DIR}``
       directory drops below 1 Gbyte or the number of free inodes drops
       below 100 Kbytes. Subsequent warnings are issued during intervals as
-      defined by the ``BB_DISKMON_WARNINTERVAL`` variable.
+      defined by the :term:`BB_DISKMON_WARNINTERVAL` variable.
 
       The second example stops the build after all currently executing
       tasks complete when the minimum disk space in the ``${TMPDIR}``
@@ -191,14 +192,14 @@
    :term:`BB_DISKMON_WARNINTERVAL`
       Defines the disk space and free inode warning intervals.
 
-      If you are going to use the ``BB_DISKMON_WARNINTERVAL`` variable, you
+      If you are going to use the :term:`BB_DISKMON_WARNINTERVAL` variable, you
       must also use the :term:`BB_DISKMON_DIRS`
       variable and define its action as "WARN". During the build,
       subsequent warnings are issued each time disk space or number of free
       inodes further reduces by the respective interval.
 
-      If you do not provide a ``BB_DISKMON_WARNINTERVAL`` variable and you
-      do use ``BB_DISKMON_DIRS`` with the "WARN" action, the disk
+      If you do not provide a :term:`BB_DISKMON_WARNINTERVAL` variable and you
+      do use :term:`BB_DISKMON_DIRS` with the "WARN" action, the disk
       monitoring interval defaults to the following:
       BB_DISKMON_WARNINTERVAL = "50M,5K"
 
@@ -231,23 +232,23 @@
       based on the interval occur each time a respective interval is
       reached beyond the initial warning (i.e. 1 Gbytes and 100 Kbytes).
 
-   :term:`BB_ENV_WHITELIST`
-      Specifies the internal whitelist of variables to allow through from
-      the external environment into BitBake's datastore. If the value of
-      this variable is not specified (which is the default), the following
-      list is used: :term:`BBPATH`, :term:`BB_PRESERVE_ENV`,
-      :term:`BB_ENV_WHITELIST`, and :term:`BB_ENV_EXTRAWHITE`.
+   :term:`BB_ENV_EXTRAWHITE`
+      Specifies an additional set of variables to allow through (whitelist)
+      from the external environment into BitBake's datastore. This list of
+      variables are on top of the internal list set in
+      :term:`BB_ENV_WHITELIST`.
 
       .. note::
 
          You must set this variable in the external environment in order
          for it to work.
 
-   :term:`BB_ENV_EXTRAWHITE`
-      Specifies an additional set of variables to allow through (whitelist)
-      from the external environment into BitBake's datastore. This list of
-      variables are on top of the internal list set in
-      :term:`BB_ENV_WHITELIST`.
+   :term:`BB_ENV_WHITELIST`
+      Specifies the internal whitelist of variables to allow through from
+      the external environment into BitBake's datastore. If the value of
+      this variable is not specified (which is the default), the following
+      list is used: :term:`BBPATH`, :term:`BB_PRESERVE_ENV`,
+      :term:`BB_ENV_WHITELIST`, and :term:`BB_ENV_EXTRAWHITE`.
 
       .. note::
 
@@ -263,7 +264,7 @@
    :term:`BB_FILENAME`
       Contains the filename of the recipe that owns the currently running
       task. For example, if the ``do_fetch`` task that resides in the
-      ``my-recipe.bb`` is executing, the ``BB_FILENAME`` variable contains
+      ``my-recipe.bb`` is executing, the :term:`BB_FILENAME` variable contains
       "/foo/path/my-recipe.bb".
 
    :term:`BB_GENERATE_MIRROR_TARBALLS`
@@ -276,18 +277,6 @@
 
          BB_GENERATE_MIRROR_TARBALLS = "1"
 
-   :term:`BB_HASHCONFIG_WHITELIST`
-      Lists variables that are excluded from base configuration checksum,
-      which is used to determine if the cache can be reused.
-
-      One of the ways BitBake determines whether to re-parse the main
-      metadata is through checksums of the variables in the datastore of
-      the base configuration data. There are variables that you typically
-      want to exclude when checking whether or not to re-parse and thus
-      rebuild the cache. As an example, you would usually exclude ``TIME``
-      and ``DATE`` because these variables are always changing. If you did
-      not exclude them, BitBake would never reuse the cache.
-
    :term:`BB_HASHBASE_WHITELIST`
       Lists variables that are excluded from checksum and dependency data.
       Variables that are excluded can therefore change without affecting
@@ -309,6 +298,18 @@
       However, the more accurate the data returned, the more efficient the
       build will be.
 
+   :term:`BB_HASHCONFIG_WHITELIST`
+      Lists variables that are excluded from base configuration checksum,
+      which is used to determine if the cache can be reused.
+
+      One of the ways BitBake determines whether to re-parse the main
+      metadata is through checksums of the variables in the datastore of
+      the base configuration data. There are variables that you typically
+      want to exclude when checking whether or not to re-parse and thus
+      rebuild the cache. As an example, you would usually exclude ``TIME``
+      and ``DATE`` because these variables are always changing. If you did
+      not exclude them, BitBake would never reuse the cache.
+
    :term:`BB_HASHSERVE`
       Specifies the Hash Equivalence server to use.
 
@@ -333,7 +334,7 @@
 
    :term:`BB_LOGFMT`
       Specifies the name of the log files saved into
-      ``${``\ :term:`T`\ ``}``. By default, the ``BB_LOGFMT``
+      ``${``\ :term:`T`\ ``}``. By default, the :term:`BB_LOGFMT`
       variable is undefined and the log file names get created using the
       following form::
 
@@ -357,15 +358,15 @@
       running builds when not connected to the Internet, and when operating
       in certain kinds of firewall environments.
 
+   :term:`BB_NUMBER_PARSE_THREADS`
+      Sets the number of threads BitBake uses when parsing. By default, the
+      number of threads is equal to the number of cores on the system.
+
    :term:`BB_NUMBER_THREADS`
       The maximum number of tasks BitBake should run in parallel at any one
       time. If your host development system supports multiple cores, a good
       rule of thumb is to set this variable to twice the number of cores.
 
-   :term:`BB_NUMBER_PARSE_THREADS`
-      Sets the number of threads BitBake uses when parsing. By default, the
-      number of threads is equal to the number of cores on the system.
-
    :term:`BB_ORIGENV`
       Contains a copy of the original external environment in which BitBake
       was run. The copy is taken before any whitelisted variable values are
@@ -388,7 +389,7 @@
    :term:`BB_RUNFMT`
       Specifies the name of the executable script files (i.e. run files)
       saved into ``${``\ :term:`T`\ ``}``. By default, the
-      ``BB_RUNFMT`` variable is undefined and the run file names get
+      :term:`BB_RUNFMT` variable is undefined and the run file names get
       created using the following form::
 
          run.{task}.{pid}
@@ -454,7 +455,7 @@
    :term:`BB_SRCREV_POLICY`
       Defines the behavior of the fetcher when it interacts with source
       control systems and dynamic source revisions. The
-      ``BB_SRCREV_POLICY`` variable is useful when working without a
+      :term:`BB_SRCREV_POLICY` variable is useful when working without a
       network.
 
       The variable can be set using one of two policies:
@@ -498,7 +499,7 @@
       Allows adjustment of a task's Input/Output priority. During
       Autobuilder testing, random failures can occur for tasks due to I/O
       starvation. These failures occur during various QEMU runtime
-      timeouts. You can use the ``BB_TASK_IONICE_LEVEL`` variable to adjust
+      timeouts. You can use the :term:`BB_TASK_IONICE_LEVEL` variable to adjust
       the I/O priority of these tasks.
 
       .. note::
@@ -572,13 +573,13 @@
 
       .. note::
 
-         Internally, the ``BBCLASSEXTEND`` mechanism generates recipe
+         Internally, the :term:`BBCLASSEXTEND` mechanism generates recipe
          variants by rewriting variable values and applying overrides such
          as ``_class-native``. For example, to generate a native version of
          a recipe, a :term:`DEPENDS` on "foo" is
-         rewritten to a ``DEPENDS`` on "foo-native".
+         rewritten to a :term:`DEPENDS` on "foo-native".
 
-         Even when using ``BBCLASSEXTEND``, the recipe is only parsed once.
+         Even when using :term:`BBCLASSEXTEND`, the recipe is only parsed once.
          Parsing once adds some limitations. For example, it is not
          possible to include a different file depending on the variant,
          since ``include`` statements are processed when the recipe is
@@ -614,14 +615,14 @@
       - effectively letting you control the precedence for the multiple
       layers. The precedence established through this variable stands
       regardless of a recipe's version (:term:`PV` variable).
-      For example, a layer that has a recipe with a higher ``PV`` value but
-      for which the ``BBFILE_PRIORITY`` is set to have a lower precedence
+      For example, a layer that has a recipe with a higher :term:`PV` value but
+      for which the :term:`BBFILE_PRIORITY` is set to have a lower precedence
       still has a lower precedence.
 
-      A larger value for the ``BBFILE_PRIORITY`` variable results in a
+      A larger value for the :term:`BBFILE_PRIORITY` variable results in a
       higher precedence. For example, the value 6 has a higher precedence
-      than the value 5. If not specified, the ``BBFILE_PRIORITY`` variable
-      is set based on layer dependencies (see the ``LAYERDEPENDS`` variable
+      than the value 5. If not specified, the :term:`BBFILE_PRIORITY` variable
+      is set based on layer dependencies (see the :term:`LAYERDEPENDS` variable
       for more information. The default priority, if unspecified for a
       layer with no dependencies, is the lowest defined priority + 1 (or 1
       if no priorities are defined).
@@ -644,7 +645,7 @@
       Activates content depending on presence of identified layers.  You
       identify the layers by the collections that the layers define.
 
-      Use the ``BBFILES_DYNAMIC`` variable to avoid ``.bbappend`` files whose
+      Use the :term:`BBFILES_DYNAMIC` variable to avoid ``.bbappend`` files whose
       corresponding ``.bb`` file is in a layer that attempts to modify other
       layers through ``.bbappend`` but does not want to introduce a hard
       dependency on those other layers.
@@ -653,7 +654,7 @@
       ``.bb`` files in case a layer is not present.  Use this avoid hard
       dependency on those other layers.
 
-      Use the following form for ``BBFILES_DYNAMIC``::
+      Use the following form for :term:`BBFILES_DYNAMIC`::
 
          collection_name:filename_pattern
 
@@ -690,7 +691,7 @@
    :term:`BBINCLUDELOGS_LINES`
       If :term:`BBINCLUDELOGS` is set, specifies
       the maximum number of lines from the task log file to print when
-      reporting a failed task. If you do not set ``BBINCLUDELOGS_LINES``,
+      reporting a failed task. If you do not set :term:`BBINCLUDELOGS_LINES`,
       the entire log is printed.
 
    :term:`BBLAYERS`
@@ -716,7 +717,7 @@
    :term:`BBMASK`
       Prevents BitBake from processing recipes and recipe append files.
 
-      You can use the ``BBMASK`` variable to "hide" these ``.bb`` and
+      You can use the :term:`BBMASK` variable to "hide" these ``.bb`` and
       ``.bbappend`` files. BitBake ignores any recipe or recipe append
       files that match any of the expressions. It is as if BitBake does not
       see them at all. Consequently, matching files are not parsed or
@@ -753,7 +754,7 @@
       Enables BitBake to perform multiple configuration builds and lists
       each separate configuration (multiconfig). You can use this variable
       to cause BitBake to build multiple targets where each target has a
-      separate configuration. Define ``BBMULTICONFIG`` in your
+      separate configuration. Define :term:`BBMULTICONFIG` in your
       ``conf/local.conf`` configuration file.
 
       As an example, the following line specifies three multiconfigs, each
@@ -765,7 +766,7 @@
       build directory within a directory named ``conf/multiconfig`` (e.g.
       build_directory\ ``/conf/multiconfig/configA.conf``).
 
-      For information on how to use ``BBMULTICONFIG`` in an environment
+      For information on how to use :term:`BBMULTICONFIG` in an environment
       that supports building targets with multiple configurations, see the
       ":ref:`bitbake-user-manual/bitbake-user-manual-intro:executing a multiple configuration build`"
       section.
@@ -776,7 +777,7 @@
       variable.
 
       If you run BitBake from a directory outside of the build directory,
-      you must be sure to set ``BBPATH`` to point to the build directory.
+      you must be sure to set :term:`BBPATH` to point to the build directory.
       Set the variable as you would any environment variable and then run
       BitBake::
 
@@ -823,7 +824,7 @@
       The most common usage of this is variable is to set it to "-1" within
       a recipe for a development version of a piece of software. Using the
       variable in this way causes the stable version of the recipe to build
-      by default in the absence of ``PREFERRED_VERSION`` being used to
+      by default in the absence of :term:`PREFERRED_VERSION` being used to
       build the development version.
 
       .. note::
@@ -836,7 +837,7 @@
       Lists a recipe's build-time dependencies (i.e. other recipe files).
 
       Consider this simple example for two recipes named "a" and "b" that
-      produce similarly named packages. In this example, the ``DEPENDS``
+      produce similarly named packages. In this example, the :term:`DEPENDS`
       statement appears in the "a" recipe::
 
          DEPENDS = "b"
@@ -854,7 +855,7 @@
 
    :term:`DL_DIR`
       The central download directory used by the build process to store
-      downloads. By default, ``DL_DIR`` gets files suitable for mirroring for
+      downloads. By default, :term:`DL_DIR` gets files suitable for mirroring for
       everything except Git repositories. If you want tarballs of Git
       repositories, use the :term:`BB_GENERATE_MIRROR_TARBALLS` variable.
 
@@ -869,14 +870,14 @@
 
       .. note::
 
-         Recipes added to ``EXCLUDE_FROM_WORLD`` may still be built during a world
+         Recipes added to :term:`EXCLUDE_FROM_WORLD` may still be built during a world
          build in order to satisfy dependencies of other recipes. Adding a
-         recipe to ``EXCLUDE_FROM_WORLD`` only ensures that the recipe is not
+         recipe to :term:`EXCLUDE_FROM_WORLD` only ensures that the recipe is not
          explicitly added to the list of build targets in a world build.
 
    :term:`FAKEROOT`
       Contains the command to use when running a shell script in a fakeroot
-      environment. The ``FAKEROOT`` variable is obsolete and has been
+      environment. The :term:`FAKEROOT` variable is obsolete and has been
       replaced by the other ``FAKEROOT*`` variables. See these entries in
       the glossary for more information.
 
@@ -939,9 +940,9 @@
       Causes the named class or classes to be inherited globally. Anonymous
       functions in the class or classes are not executed for the base
       configuration and in each individual recipe. The OpenEmbedded build
-      system ignores changes to ``INHERIT`` in individual recipes.
+      system ignores changes to :term:`INHERIT` in individual recipes.
 
-      For more information on ``INHERIT``, see the
+      For more information on :term:`INHERIT`, see the
       ":ref:`bitbake-user-manual/bitbake-user-manual-metadata:\`\`inherit\`\` configuration directive`"
       section.
 
@@ -989,7 +990,7 @@
       the build system searches for source code, it first tries the local
       download directory. If that location fails, the build system tries
       locations defined by :term:`PREMIRRORS`, the
-      upstream source, and then locations specified by ``MIRRORS`` in that
+      upstream source, and then locations specified by :term:`MIRRORS` in that
       order.
 
    :term:`MULTI_PROVIDER_WHITELIST`
@@ -1006,12 +1007,12 @@
       ``virtual/kernel``, and so forth).
 
    :term:`OVERRIDES`
-      BitBake uses ``OVERRIDES`` to control what variables are overridden
+      BitBake uses :term:`OVERRIDES` to control what variables are overridden
       after BitBake parses recipes and configuration files.
 
       Following is a simple example that uses an overrides list based on
       machine architectures: OVERRIDES = "arm:x86:mips:powerpc" You can
-      find information on how to use ``OVERRIDES`` in the
+      find information on how to use :term:`OVERRIDES` in the
       ":ref:`bitbake-user-manual/bitbake-user-manual-metadata:conditional syntax
       (overrides)`" section.
 
@@ -1025,11 +1026,11 @@
    :term:`PACKAGES_DYNAMIC`
       A promise that your recipe satisfies runtime dependencies for
       optional modules that are found in other recipes.
-      ``PACKAGES_DYNAMIC`` does not actually satisfy the dependencies, it
+      :term:`PACKAGES_DYNAMIC` does not actually satisfy the dependencies, it
       only states that they should be satisfied. For example, if a hard,
       runtime dependency (:term:`RDEPENDS`) of another
       package is satisfied during the build through the
-      ``PACKAGES_DYNAMIC`` variable, but a package with the module name is
+      :term:`PACKAGES_DYNAMIC` variable, but a package with the module name is
       never actually produced, then the other package will be broken.
 
    :term:`PE`
@@ -1068,8 +1069,8 @@
    :term:`PREFERRED_PROVIDERS`
       Determines which recipe should be given preference for cases where
       multiple recipes provide the same item. Functionally,
-      ``PREFERRED_PROVIDERS`` is identical to
-      :term:`PREFERRED_PROVIDER`. However, the ``PREFERRED_PROVIDERS`` variable
+      :term:`PREFERRED_PROVIDERS` is identical to
+      :term:`PREFERRED_PROVIDER`. However, the :term:`PREFERRED_PROVIDERS` variable
       lets you define preferences for multiple situations using the following
       form::
 
@@ -1087,7 +1088,7 @@
       select, and you should set :term:`PV` accordingly for
       precedence.
 
-      The ``PREFERRED_VERSION`` variable supports limited wildcard use
+      The :term:`PREFERRED_VERSION` variable supports limited wildcard use
       through the "``%``" character. You can use the character to match any
       number of characters, which can be useful when specifying versions
       that contain long revision numbers that potentially change. Here are
@@ -1110,14 +1111,14 @@
       Specifies additional paths from which BitBake gets source code. When
       the build system searches for source code, it first tries the local
       download directory. If that location fails, the build system tries
-      locations defined by ``PREMIRRORS``, the upstream source, and then
+      locations defined by :term:`PREMIRRORS`, the upstream source, and then
       locations specified by :term:`MIRRORS` in that order.
 
       Typically, you would add a specific server for the build system to
       attempt before any others by adding something like the following to
       your configuration::
 
-         PREMIRRORS_prepend = "\
+         PREMIRRORS:prepend = "\
          git://.*/.* http://www.yoctoproject.org/sources/ \n \
          ftp://.*/.* http://www.yoctoproject.org/sources/ \n \
          http://.*/.* http://www.yoctoproject.org/sources/ \n \
@@ -1130,25 +1131,25 @@
 
    :term:`PROVIDES`
       A list of aliases by which a particular recipe can be known. By
-      default, a recipe's own ``PN`` is implicitly already in its
-      ``PROVIDES`` list. If a recipe uses ``PROVIDES``, the additional
+      default, a recipe's own :term:`PN` is implicitly already in its
+      :term:`PROVIDES` list. If a recipe uses :term:`PROVIDES`, the additional
       aliases are synonyms for the recipe and can be useful satisfying
       dependencies of other recipes during the build as specified by
-      ``DEPENDS``.
+      :term:`DEPENDS`.
 
-      Consider the following example ``PROVIDES`` statement from a recipe
+      Consider the following example :term:`PROVIDES` statement from a recipe
       file ``libav_0.8.11.bb``::
 
          PROVIDES += "libpostproc"
 
-      The ``PROVIDES`` statement results in the "libav" recipe also being known
+      The :term:`PROVIDES` statement results in the "libav" recipe also being known
       as "libpostproc".
 
       In addition to providing recipes under alternate names, the
-      ``PROVIDES`` mechanism is also used to implement virtual targets. A
+      :term:`PROVIDES` mechanism is also used to implement virtual targets. A
       virtual target is a name that corresponds to some particular
       functionality (e.g. a Linux kernel). Recipes that provide the
-      functionality in question list the virtual target in ``PROVIDES``.
+      functionality in question list the virtual target in :term:`PROVIDES`.
       Recipes that depend on the functionality in question can include the
       virtual target in :term:`DEPENDS` to leave the
       choice of provider open.
@@ -1160,12 +1161,12 @@
    :term:`PRSERV_HOST`
       The network based :term:`PR` service host and port.
 
-      Following is an example of how the ``PRSERV_HOST`` variable is set::
+      Following is an example of how the :term:`PRSERV_HOST` variable is set::
 
          PRSERV_HOST = "localhost:0"
 
       You must set the variable if you want to automatically start a local PR
-      service. You can set ``PRSERV_HOST`` to other values to use a remote PR
+      service. You can set :term:`PRSERV_HOST` to other values to use a remote PR
       service.
 
    :term:`PV`
@@ -1177,24 +1178,24 @@
       a package in this list cannot be found during the build, you will get
       a build error.
 
-      Because the ``RDEPENDS`` variable applies to packages being built,
+      Because the :term:`RDEPENDS` variable applies to packages being built,
       you should always use the variable in a form with an attached package
       name. For example, suppose you are building a development package
       that depends on the ``perl`` package. In this case, you would use the
-      following ``RDEPENDS`` statement::
+      following :term:`RDEPENDS` statement::
 
-         RDEPENDS_${PN}-dev += "perl"
+         RDEPENDS:${PN}-dev += "perl"
 
       In the example, the development package depends on the ``perl`` package.
-      Thus, the ``RDEPENDS`` variable has the ``${PN}-dev`` package name as part
+      Thus, the :term:`RDEPENDS` variable has the ``${PN}-dev`` package name as part
       of the variable.
 
       BitBake supports specifying versioned dependencies. Although the
       syntax varies depending on the packaging format, BitBake hides these
       differences from you. Here is the general syntax to specify versions
-      with the ``RDEPENDS`` variable::
+      with the :term:`RDEPENDS` variable::
 
-         RDEPENDS_${PN} = "package (operator version)"
+         RDEPENDS:${PN} = "package (operator version)"
 
       For ``operator``, you can specify the following::
 
@@ -1207,7 +1208,7 @@
       For example, the following sets up a dependency on version 1.2 or
       greater of the package ``foo``::
 
-         RDEPENDS_${PN} = "foo (>= 1.2)"
+         RDEPENDS:${PN} = "foo (>= 1.2)"
 
       For information on build-time dependencies, see the :term:`DEPENDS`
       variable.
@@ -1218,39 +1219,39 @@
 
    :term:`REQUIRED_VERSION`
       If there are multiple versions of a recipe available, this variable
-      determines which version should be given preference. ``REQUIRED_VERSION``
+      determines which version should be given preference. :term:`REQUIRED_VERSION`
       works in exactly the same manner as :term:`PREFERRED_VERSION`, except
       that if the specified version is not available then an error message
       is shown and the build fails immediately.
 
-      If both ``REQUIRED_VERSION`` and ``PREFERRED_VERSION`` are set for
-      the same recipe, the ``REQUIRED_VERSION`` value applies.
+      If both :term:`REQUIRED_VERSION` and :term:`PREFERRED_VERSION` are set for
+      the same recipe, the :term:`REQUIRED_VERSION` value applies.
 
    :term:`RPROVIDES`
       A list of package name aliases that a package also provides. These
       aliases are useful for satisfying runtime dependencies of other
       packages both during the build and on the target (as specified by
-      ``RDEPENDS``).
+      :term:`RDEPENDS`).
 
       As with all package-controlling variables, you must always use the
       variable in conjunction with a package name override. Here is an
       example::
 
-         RPROVIDES_${PN} = "widget-abi-2"
+         RPROVIDES:${PN} = "widget-abi-2"
 
    :term:`RRECOMMENDS`
       A list of packages that extends the usability of a package being
       built. The package being built does not depend on this list of
       packages in order to successfully build, but needs them for the
       extended usability. To specify runtime dependencies for packages, see
-      the ``RDEPENDS`` variable.
+      the :term:`RDEPENDS` variable.
 
       BitBake supports specifying versioned recommends. Although the syntax
       varies depending on the packaging format, BitBake hides these
       differences from you. Here is the general syntax to specify versions
-      with the ``RRECOMMENDS`` variable::
+      with the :term:`RRECOMMENDS` variable::
 
-         RRECOMMENDS_${PN} = "package (operator version)"
+         RRECOMMENDS:${PN} = "package (operator version)"
 
       For ``operator``, you can specify the following::
 
@@ -1263,7 +1264,7 @@
       For example, the following sets up a recommend on version
       1.2 or greater of the package ``foo``::
 
-         RRECOMMENDS_${PN} = "foo (>= 1.2)"
+         RRECOMMENDS:${PN} = "foo (>= 1.2)"
 
    :term:`SECTION`
       The section in which packages should be categorized.
@@ -1272,10 +1273,10 @@
       The list of source files - local or remote. This variable tells
       BitBake which bits to pull for the build and how to pull them. For
       example, if the recipe or append file needs to fetch a single tarball
-      from the Internet, the recipe or append file uses a ``SRC_URI`` entry
+      from the Internet, the recipe or append file uses a :term:`SRC_URI` entry
       that specifies that tarball. On the other hand, if the recipe or
       append file needs to fetch a tarball and include a custom file, the
-      recipe or append file needs an ``SRC_URI`` variable that specifies
+      recipe or append file needs an :term:`SRC_URI` variable that specifies
       all those sources.
 
       The following list explains the available URI protocols:
@@ -1328,8 +1329,8 @@
          subdirectory within the archive.
 
       -  ``name`` : Specifies a name to be used for association with
-         ``SRC_URI`` checksums when you have more than one file specified
-         in ``SRC_URI``.
+         :term:`SRC_URI` checksums when you have more than one file specified
+         in :term:`SRC_URI`.
 
       -  ``downloadfilename`` : Specifies the filename used when storing
          the downloaded file.
@@ -1344,7 +1345,7 @@
       variable applies only when using Subversion, Git, Mercurial and
       Bazaar. If you want to build a fixed revision and you want to avoid
       performing a query on the remote repository every time BitBake parses
-      your recipe, you should specify a ``SRCREV`` that is a full revision
+      your recipe, you should specify a :term:`SRCREV` that is a full revision
       identifier and not just a tag.
 
    :term:`SRCREV_FORMAT`
@@ -1353,10 +1354,10 @@
       :term:`SRC_URI`.
 
       The system needs help constructing these values under these
-      circumstances. Each component in the ``SRC_URI`` is assigned a name
-      and these are referenced in the ``SRCREV_FORMAT`` variable. Consider
+      circumstances. Each component in the :term:`SRC_URI` is assigned a name
+      and these are referenced in the :term:`SRCREV_FORMAT` variable. Consider
       an example with URLs named "machine" and "meta". In this case,
-      ``SRCREV_FORMAT`` could look like "machine_meta" and those names
+      :term:`SRCREV_FORMAT` could look like "machine_meta" and those names
       would have the SCM versions substituted into each position. Only one
       ``AUTOINC`` placeholder is added and if needed. And, this placeholder
       is placed at the start of the returned string.
@@ -1368,7 +1369,7 @@
 
    :term:`STAMPCLEAN`
       Specifies the base path used to create recipe stamp files. Unlike the
-      :term:`STAMP` variable, ``STAMPCLEAN`` can contain
+      :term:`STAMP` variable, :term:`STAMPCLEAN` can contain
       wildcards to match the range of files a clean operation should
       remove. BitBake uses a clean operation to remove any other stamps it
       should be removing when creating a new stamp.
diff --git a/poky/bitbake/lib/bb/__init__.py b/poky/bitbake/lib/bb/__init__.py
index a144bd6..c1e3069 100644
--- a/poky/bitbake/lib/bb/__init__.py
+++ b/poky/bitbake/lib/bb/__init__.py
@@ -9,7 +9,7 @@
 # SPDX-License-Identifier: GPL-2.0-only
 #
 
-__version__ = "1.51.0"
+__version__ = "1.51.1"
 
 import sys
 if sys.version_info < (3, 5, 0):
diff --git a/poky/bitbake/lib/bb/asyncrpc/client.py b/poky/bitbake/lib/bb/asyncrpc/client.py
index 79919c5..3eb4fdd 100644
--- a/poky/bitbake/lib/bb/asyncrpc/client.py
+++ b/poky/bitbake/lib/bb/asyncrpc/client.py
@@ -11,13 +11,14 @@
 
 
 class AsyncClient(object):
-    def __init__(self, proto_name, proto_version, logger):
+    def __init__(self, proto_name, proto_version, logger, timeout=30):
         self.reader = None
         self.writer = None
         self.max_chunk = DEFAULT_MAX_CHUNK
         self.proto_name = proto_name
         self.proto_version = proto_version
         self.logger = logger
+        self.timeout = timeout
 
     async def connect_tcp(self, address, port):
         async def connect_sock():
@@ -70,14 +71,18 @@
 
     async def send_message(self, msg):
         async def get_line():
-            line = await self.reader.readline()
+            try:
+                line = await asyncio.wait_for(self.reader.readline(), self.timeout)
+            except asyncio.TimeoutError:
+                raise ConnectionError("Timed out waiting for server")
+
             if not line:
                 raise ConnectionError("Connection closed")
 
             line = line.decode("utf-8")
 
             if not line.endswith("\n"):
-                raise ConnectionError("Bad message %r" % msg)
+                raise ConnectionError("Bad message %r" % (line))
 
             return line
 
diff --git a/poky/bitbake/lib/bb/asyncrpc/serv.py b/poky/bitbake/lib/bb/asyncrpc/serv.py
index ef20cb7..4084f30 100644
--- a/poky/bitbake/lib/bb/asyncrpc/serv.py
+++ b/poky/bitbake/lib/bb/asyncrpc/serv.py
@@ -9,6 +9,7 @@
 import signal
 import socket
 import sys
+import multiprocessing
 from . import chunkify, DEFAULT_MAX_CHUNK
 
 
@@ -201,12 +202,14 @@
             pass
 
     def signal_handler(self):
+        self.logger.debug("Got exit signal")
         self.loop.stop()
 
     def serve_forever(self):
         asyncio.set_event_loop(self.loop)
         try:
             self.loop.add_signal_handler(signal.SIGTERM, self.signal_handler)
+            signal.pthread_sigmask(signal.SIG_UNBLOCK, [signal.SIGTERM])
 
             self.run_loop_forever()
             self.server.close()
@@ -221,3 +224,21 @@
 
             if self._cleanup_socket is not None:
                 self._cleanup_socket()
+
+    def serve_as_process(self, *, prefunc=None, args=()):
+        def run():
+            if prefunc is not None:
+                prefunc(self, *args)
+            self.serve_forever()
+
+        # Temporarily block SIGTERM. The server process will inherit this
+        # block which will ensure it doesn't receive the SIGTERM until the
+        # handler is ready for it
+        mask = signal.pthread_sigmask(signal.SIG_BLOCK, [signal.SIGTERM])
+        try:
+            self.process = multiprocessing.Process(target=run)
+            self.process.start()
+
+            return self.process
+        finally:
+            signal.pthread_sigmask(signal.SIG_SETMASK, mask)
diff --git a/poky/bitbake/lib/bb/cache.py b/poky/bitbake/lib/bb/cache.py
index 27eb271..73bc6e9 100644
--- a/poky/bitbake/lib/bb/cache.py
+++ b/poky/bitbake/lib/bb/cache.py
@@ -53,12 +53,12 @@
 
     @classmethod
     def pkgvar(cls, var, packages, metadata):
-        return dict((pkg, cls.depvar("%s_%s" % (var, pkg), metadata))
+        return dict((pkg, cls.depvar("%s:%s" % (var, pkg), metadata))
                     for pkg in packages)
 
     @classmethod
     def taskvar(cls, var, tasks, metadata):
-        return dict((task, cls.getvar("%s_task-%s" % (var, task), metadata))
+        return dict((task, cls.getvar("%s:task-%s" % (var, task), metadata))
                     for task in tasks)
 
     @classmethod
diff --git a/poky/bitbake/lib/bb/command.py b/poky/bitbake/lib/bb/command.py
index f530cf8..a81dcb1 100644
--- a/poky/bitbake/lib/bb/command.py
+++ b/poky/bitbake/lib/bb/command.py
@@ -65,9 +65,17 @@
 
         # Ensure cooker is ready for commands
         if command != "updateConfig" and command != "setFeatures":
-            self.cooker.init_configdata()
-            if not self.remotedatastores:
-                self.remotedatastores = bb.remotedata.RemoteDatastores(self.cooker)
+            try:
+                self.cooker.init_configdata()
+                if not self.remotedatastores:
+                    self.remotedatastores = bb.remotedata.RemoteDatastores(self.cooker)
+            except (Exception, SystemExit) as exc:
+                import traceback
+                if isinstance(exc, bb.BBHandledException):
+                    # We need to start returning real exceptions here. Until we do, we can't
+                    # tell if an exception is an instance of bb.BBHandledException
+                    return None, "bb.BBHandledException()\n" + traceback.format_exc()
+                return None, traceback.format_exc()
 
         if hasattr(CommandsSync, command):
             # Can run synchronous commands straight away
diff --git a/poky/bitbake/lib/bb/cooker.py b/poky/bitbake/lib/bb/cooker.py
index 39e10e6..b2d69c2 100644
--- a/poky/bitbake/lib/bb/cooker.py
+++ b/poky/bitbake/lib/bb/cooker.py
@@ -390,8 +390,7 @@
                 dbfile = (self.data.getVar("PERSISTENT_DIR") or self.data.getVar("CACHE")) + "/hashserv.db"
                 self.hashservaddr = "unix://%s/hashserve.sock" % self.data.getVar("TOPDIR")
                 self.hashserv = hashserv.create_server(self.hashservaddr, dbfile, sync=False)
-                self.hashserv.process = multiprocessing.Process(target=self.hashserv.serve_forever)
-                self.hashserv.process.start()
+                self.hashserv.serve_as_process()
             self.data.setVar("BB_HASHSERVE", self.hashservaddr)
             self.databuilder.origdata.setVar("BB_HASHSERVE", self.hashservaddr)
             self.databuilder.data.setVar("BB_HASHSERVE", self.hashservaddr)
diff --git a/poky/bitbake/lib/bb/data_smart.py b/poky/bitbake/lib/bb/data_smart.py
index f48726a..65528c6 100644
--- a/poky/bitbake/lib/bb/data_smart.py
+++ b/poky/bitbake/lib/bb/data_smart.py
@@ -26,9 +26,9 @@
 
 logger = logging.getLogger("BitBake.Data")
 
-__setvar_keyword__ = ["_append", "_prepend", "_remove"]
-__setvar_regexp__ = re.compile(r'(?P<base>.*?)(?P<keyword>_append|_prepend|_remove)(_(?P<add>[^A-Z]*))?$')
-__expand_var_regexp__ = re.compile(r"\${[a-zA-Z0-9\-_+./~]+?}")
+__setvar_keyword__ = [":append", ":prepend", ":remove"]
+__setvar_regexp__ = re.compile(r'(?P<base>.*?)(?P<keyword>:append|:prepend|:remove)(:(?P<add>[^A-Z]*))?$')
+__expand_var_regexp__ = re.compile(r"\${[a-zA-Z0-9\-_+./~:]+?}")
 __expand_python_regexp__ = re.compile(r"\${@.+?}")
 __whitespace_split__ = re.compile(r'(\s)')
 __override_regexp__ = re.compile(r'[a-z0-9]+')
@@ -277,7 +277,7 @@
             for (r, override) in d.overridedata[var]:
                 for event in self.variable(r):
                     loginfo = event.copy()
-                    if 'flag' in loginfo and not loginfo['flag'].startswith("_"):
+                    if 'flag' in loginfo and not loginfo['flag'].startswith(("_", ":")):
                         continue
                     loginfo['variable'] = var
                     loginfo['op'] = 'override[%s]:%s' % (override, loginfo['op'])
@@ -342,7 +342,7 @@
         for event in history:
             if 'flag' in event:
                 continue
-            if event['op'] == '_remove':
+            if event['op'] == ':remove':
                 continue
             if isset and event['op'] == 'set?':
                 continue
@@ -481,7 +481,15 @@
 
     def setVar(self, var, value, **loginfo):
         #print("var=" + str(var) + "  val=" + str(value))
-        var = var.replace(":", "_")
+
+        if "_append" in var or "_prepend" in var or "_remove" in var:
+            info = "%s" % var
+            if "filename" in loginfo:
+                info += " file: %s" % loginfo[filename]
+            if "lineno" in loginfo:
+                info += " line: %s" % loginfo[lineno]
+            bb.fatal("Variable %s contains an operation using the old override syntax. Please convert this layer/metadata before attempting to use with a newer bitbake." % info)
+
         self.expand_cache = {}
         parsing=False
         if 'parsing' in loginfo:
@@ -510,7 +518,7 @@
             # pay the cookie monster
 
             # more cookies for the cookie monster
-            if '_' in var:
+            if ':' in var:
                 self._setvar_update_overrides(base, **loginfo)
 
             if base in self.overridevars:
@@ -521,27 +529,27 @@
             self._makeShadowCopy(var)
 
         if not parsing:
-            if "_append" in self.dict[var]:
-                del self.dict[var]["_append"]
-            if "_prepend" in self.dict[var]:
-                del self.dict[var]["_prepend"]
-            if "_remove" in self.dict[var]:
-                del self.dict[var]["_remove"]
+            if ":append" in self.dict[var]:
+                del self.dict[var][":append"]
+            if ":prepend" in self.dict[var]:
+                del self.dict[var][":prepend"]
+            if ":remove" in self.dict[var]:
+                del self.dict[var][":remove"]
             if var in self.overridedata:
                 active = []
                 self.need_overrides()
                 for (r, o) in self.overridedata[var]:
                     if o in self.overridesset:
                         active.append(r)
-                    elif "_" in o:
-                        if set(o.split("_")).issubset(self.overridesset):
+                    elif ":" in o:
+                        if set(o.split(":")).issubset(self.overridesset):
                             active.append(r)
                 for a in active:
                     self.delVar(a)
                 del self.overridedata[var]
 
         # more cookies for the cookie monster
-        if '_' in var:
+        if ':' in var:
             self._setvar_update_overrides(var, **loginfo)
 
         # setting var
@@ -567,8 +575,8 @@
 
     def _setvar_update_overrides(self, var, **loginfo):
         # aka pay the cookie monster
-        override = var[var.rfind('_')+1:]
-        shortvar = var[:var.rfind('_')]
+        override = var[var.rfind(':')+1:]
+        shortvar = var[:var.rfind(':')]
         while override and __override_regexp__.match(override):
             if shortvar not in self.overridedata:
                 self.overridedata[shortvar] = []
@@ -577,9 +585,9 @@
                 self.overridedata[shortvar] = list(self.overridedata[shortvar])
                 self.overridedata[shortvar].append([var, override])
             override = None
-            if "_" in shortvar:
-                override = var[shortvar.rfind('_')+1:]
-                shortvar = var[:shortvar.rfind('_')]
+            if ":" in shortvar:
+                override = var[shortvar.rfind(':')+1:]
+                shortvar = var[:shortvar.rfind(':')]
                 if len(shortvar) == 0:
                     override = None
 
@@ -590,8 +598,6 @@
         """
         Rename the variable key to newkey
         """
-        key = key.replace(":", "_")
-        newkey = newkey.replace(":", "_")
         if key == newkey:
             bb.warn("Calling renameVar with equivalent keys (%s) is invalid" % key)
             return
@@ -620,7 +626,7 @@
                 self.overridedata[newkey].append([v.replace(key, newkey), o])
                 self.renameVar(v, v.replace(key, newkey))
 
-        if '_' in newkey and val is None:
+        if ':' in newkey and val is None:
             self._setvar_update_overrides(newkey, **loginfo)
 
         loginfo['variable'] = key
@@ -632,15 +638,14 @@
     def appendVar(self, var, value, **loginfo):
         loginfo['op'] = 'append'
         self.varhistory.record(**loginfo)
-        self.setVar(var + "_append", value, ignore=True, parsing=True)
+        self.setVar(var + ":append", value, ignore=True, parsing=True)
 
     def prependVar(self, var, value, **loginfo):
         loginfo['op'] = 'prepend'
         self.varhistory.record(**loginfo)
-        self.setVar(var + "_prepend", value, ignore=True, parsing=True)
+        self.setVar(var + ":prepend", value, ignore=True, parsing=True)
 
     def delVar(self, var, **loginfo):
-        var = var.replace(":", "_")
         self.expand_cache = {}
 
         loginfo['detail'] = ""
@@ -649,9 +654,9 @@
         self.dict[var] = {}
         if var in self.overridedata:
             del self.overridedata[var]
-        if '_' in var:
-            override = var[var.rfind('_')+1:]
-            shortvar = var[:var.rfind('_')]
+        if ':' in var:
+            override = var[var.rfind(':')+1:]
+            shortvar = var[:var.rfind(':')]
             while override and override.islower():
                 try:
                     if shortvar in self.overridedata:
@@ -661,14 +666,13 @@
                 except ValueError as e:
                     pass
                 override = None
-                if "_" in shortvar:
-                    override = var[shortvar.rfind('_')+1:]
-                    shortvar = var[:shortvar.rfind('_')]
+                if ":" in shortvar:
+                    override = var[shortvar.rfind(':')+1:]
+                    shortvar = var[:shortvar.rfind(':')]
                     if len(shortvar) == 0:
                          override = None
 
     def setVarFlag(self, var, flag, value, **loginfo):
-        var = var.replace(":", "_")
         self.expand_cache = {}
 
         if 'op' not in loginfo:
@@ -679,7 +683,7 @@
             self._makeShadowCopy(var)
         self.dict[var][flag] = value
 
-        if flag == "_defaultval" and '_' in var:
+        if flag == "_defaultval" and ':' in var:
             self._setvar_update_overrides(var, **loginfo)
         if flag == "_defaultval" and var in self.overridevars:
             self._setvar_update_overridevars(var, value)
@@ -692,7 +696,6 @@
             self.dict["__exportlist"]["_content"].add(var)
 
     def getVarFlag(self, var, flag, expand=True, noweakdefault=False, parsing=False, retparser=False):
-        var = var.replace(":", "_")
         if flag == "_content":
             cachename = var
         else:
@@ -712,11 +715,11 @@
             active = {}
             self.need_overrides()
             for (r, o) in overridedata:
-                # What about double overrides both with "_" in the name?
+                # FIXME What about double overrides both with "_" in the name?
                 if o in self.overridesset:
                     active[o] = r
-                elif "_" in o:
-                    if set(o.split("_")).issubset(self.overridesset):
+                elif ":" in o:
+                    if set(o.split(":")).issubset(self.overridesset):
                         active[o] = r
 
             mod = True
@@ -724,10 +727,10 @@
                 mod = False
                 for o in self.overrides:
                     for a in active.copy():
-                        if a.endswith("_" + o):
+                        if a.endswith(":" + o):
                             t = active[a]
                             del active[a]
-                            active[a.replace("_" + o, "")] = t
+                            active[a.replace(":" + o, "")] = t
                             mod = True
                         elif a == o:
                             match = active[a]
@@ -746,31 +749,31 @@
                 value = copy.copy(local_var["_defaultval"])
 
 
-        if flag == "_content" and local_var is not None and "_append" in local_var and not parsing:
-            if not value:
-                value = ""
+        if flag == "_content" and local_var is not None and ":append" in local_var and not parsing:
             self.need_overrides()
-            for (r, o) in local_var["_append"]:
+            for (r, o) in local_var[":append"]:
                 match = True
                 if o:
-                    for o2 in o.split("_"):
+                    for o2 in o.split(":"):
                         if not o2 in self.overrides:
                             match = False                            
                 if match:
+                    if value is None:
+                        value = ""
                     value = value + r
 
-        if flag == "_content" and local_var is not None and "_prepend" in local_var and not parsing:
-            if not value:
-                value = ""
+        if flag == "_content" and local_var is not None and ":prepend" in local_var and not parsing:
             self.need_overrides()
-            for (r, o) in local_var["_prepend"]:
+            for (r, o) in local_var[":prepend"]:
 
                 match = True
                 if o:
-                    for o2 in o.split("_"):
+                    for o2 in o.split(":"):
                         if not o2 in self.overrides:
                             match = False                            
                 if match:
+                    if value is None:
+                        value = ""
                     value = r + value
 
         parser = None
@@ -779,12 +782,12 @@
         if expand:
             value = parser.value
 
-        if value and flag == "_content" and local_var is not None and "_remove" in local_var and not parsing:
+        if value and flag == "_content" and local_var is not None and ":remove" in local_var and not parsing:
             self.need_overrides()
-            for (r, o) in local_var["_remove"]:
+            for (r, o) in local_var[":remove"]:
                 match = True
                 if o:
-                    for o2 in o.split("_"):
+                    for o2 in o.split(":"):
                         if not o2 in self.overrides:
                             match = False                            
                 if match:
@@ -820,7 +823,6 @@
         return value
 
     def delVarFlag(self, var, flag, **loginfo):
-        var = var.replace(":", "_")
         self.expand_cache = {}
 
         local_var, _ = self._findVar(var)
@@ -838,7 +840,6 @@
             del self.dict[var][flag]
 
     def appendVarFlag(self, var, flag, value, **loginfo):
-        var = var.replace(":", "_")
         loginfo['op'] = 'append'
         loginfo['flag'] = flag
         self.varhistory.record(**loginfo)
@@ -846,7 +847,6 @@
         self.setVarFlag(var, flag, newvalue, ignore=True)
 
     def prependVarFlag(self, var, flag, value, **loginfo):
-        var = var.replace(":", "_")
         loginfo['op'] = 'prepend'
         loginfo['flag'] = flag
         self.varhistory.record(**loginfo)
@@ -854,7 +854,6 @@
         self.setVarFlag(var, flag, newvalue, ignore=True)
 
     def setVarFlags(self, var, flags, **loginfo):
-        var = var.replace(":", "_")
         self.expand_cache = {}
         infer_caller_details(loginfo)
         if not var in self.dict:
@@ -869,13 +868,12 @@
             self.dict[var][i] = flags[i]
 
     def getVarFlags(self, var, expand = False, internalflags=False):
-        var = var.replace(":", "_")
         local_var, _ = self._findVar(var)
         flags = {}
 
         if local_var:
             for i in local_var:
-                if i.startswith("_") and not internalflags:
+                if i.startswith(("_", ":")) and not internalflags:
                     continue
                 flags[i] = local_var[i]
                 if expand and i in expand:
@@ -886,7 +884,6 @@
 
 
     def delVarFlags(self, var, **loginfo):
-        var = var.replace(":", "_")
         self.expand_cache = {}
         if not var in self.dict:
             self._makeShadowCopy(var)
@@ -974,8 +971,8 @@
             for (r, o) in self.overridedata[var]:
                 if o in self.overridesset:
                     overrides.add(var)
-                elif "_" in o:
-                    if set(o.split("_")).issubset(self.overridesset):
+                elif ":" in o:
+                    if set(o.split(":")).issubset(self.overridesset):
                         overrides.add(var)
 
         for k in keylist(self.dict):
diff --git a/poky/bitbake/lib/bb/fetch2/__init__.py b/poky/bitbake/lib/bb/fetch2/__init__.py
index 0d49e1d..ad89868 100644
--- a/poky/bitbake/lib/bb/fetch2/__init__.py
+++ b/poky/bitbake/lib/bb/fetch2/__init__.py
@@ -1146,11 +1146,11 @@
     pn = d.getVar("PN")
     attempts = []
     if name != '' and pn:
-        attempts.append("SRCREV_%s_pn-%s" % (name, pn))
+        attempts.append("SRCREV_%s:pn-%s" % (name, pn))
     if name != '':
         attempts.append("SRCREV_%s" % name)
     if pn:
-        attempts.append("SRCREV_pn-%s" % pn)
+        attempts.append("SRCREV:pn-%s" % pn)
     attempts.append("SRCREV")
 
     for a in attempts:
diff --git a/poky/bitbake/lib/bb/parse/ast.py b/poky/bitbake/lib/bb/parse/ast.py
index db2bdc3..743ea0d 100644
--- a/poky/bitbake/lib/bb/parse/ast.py
+++ b/poky/bitbake/lib/bb/parse/ast.py
@@ -97,7 +97,6 @@
     def eval(self, data):
         groupd = self.groupd
         key = groupd["var"]
-        key = key.replace(":", "_")
         loginfo = {
             'variable': key,
             'file': self.filename,
@@ -146,7 +145,7 @@
             data.setVar(key, val, parsing=True, **loginfo)
 
 class MethodNode(AstNode):
-    tr_tbl = str.maketrans('/.+-@%&', '_______')
+    tr_tbl = str.maketrans('/.+-@%&~', '________')
 
     def __init__(self, filename, lineno, func_name, body, python, fakeroot):
         AstNode.__init__(self, filename, lineno)
@@ -208,7 +207,6 @@
     def eval(self, data):
 
         for func in self.n:
-            func = func.replace(":", "_")
             calledfunc = self.classname + "_" + func
 
             if data.getVar(func, False) and not data.getVarFlag(func, 'export_func', False):
diff --git a/poky/bitbake/lib/bb/runqueue.py b/poky/bitbake/lib/bb/runqueue.py
index 6c41fe6..25e0121 100644
--- a/poky/bitbake/lib/bb/runqueue.py
+++ b/poky/bitbake/lib/bb/runqueue.py
@@ -2443,6 +2443,11 @@
 
         if update_tasks:
             self.sqdone = False
+            for tid in [t[0] for t in update_tasks]:
+                h = pending_hash_index(tid, self.rqdata)
+                if h in self.sqdata.hashes and tid != self.sqdata.hashes[h]:
+                    self.sq_deferred[tid] = self.sqdata.hashes[h]
+                    bb.note("Deferring %s after %s" % (tid, self.sqdata.hashes[h]))
             update_scenequeue_data([t[0] for t in update_tasks], self.sqdata, self.rqdata, self.rq, self.cooker, self.stampcache, self, summary=False)
 
         for (tid, harddepfail, origvalid) in update_tasks:
@@ -2786,6 +2791,19 @@
     sqdata.stamppresent = set()
     sqdata.valid = set()
 
+    sqdata.hashes = {}
+    sqrq.sq_deferred = {}
+    for mc in sorted(sqdata.multiconfigs):
+        for tid in sorted(sqdata.sq_revdeps):
+            if mc_from_tid(tid) != mc:
+                continue
+            h = pending_hash_index(tid, rqdata)
+            if h not in sqdata.hashes:
+                sqdata.hashes[h] = tid
+            else:
+                sqrq.sq_deferred[tid] = sqdata.hashes[h]
+                bb.note("Deferring %s after %s" % (tid, sqdata.hashes[h]))
+
     update_scenequeue_data(sqdata.sq_revdeps, sqdata, rqdata, rq, cooker, stampcache, sqrq, summary=True)
 
     # Compute a list of 'stale' sstate tasks where the current hash does not match the one
@@ -2850,32 +2868,20 @@
 
     sqdata.valid |= rq.validate_hashes(tocheck, cooker.data, len(sqdata.stamppresent), False, summary=summary)
 
-    sqdata.hashes = {}
-    sqrq.sq_deferred = {}
-    for mc in sorted(sqdata.multiconfigs):
-        for tid in sorted(sqdata.sq_revdeps):
-            if mc_from_tid(tid) != mc:
-                continue
-            if tid in sqdata.stamppresent:
-                continue
-            if tid in sqdata.valid:
-                continue
-            if tid in sqdata.noexec:
-                continue
-            if tid in sqrq.scenequeue_notcovered:
-                continue
-            if tid in sqrq.scenequeue_covered:
-                continue
-
-            h = pending_hash_index(tid, rqdata)
-            if h not in sqdata.hashes:
-                if tid in tids:
-                    sqdata.outrightfail.add(tid)
-                sqdata.hashes[h] = tid
-            else:
-                sqrq.sq_deferred[tid] = sqdata.hashes[h]
-                bb.note("Deferring %s after %s" % (tid, sqdata.hashes[h]))
-
+    for tid in tids:
+        if tid in sqdata.stamppresent:
+            continue
+        if tid in sqdata.valid:
+            continue
+        if tid in sqdata.noexec:
+            continue
+        if tid in sqrq.scenequeue_covered:
+            continue
+        if tid in sqrq.scenequeue_notcovered:
+            continue
+        if tid in sqrq.sq_deferred:
+            continue
+        sqdata.outrightfail.add(tid)
 
 class TaskFailure(Exception):
     """
diff --git a/poky/bitbake/lib/bb/server/process.py b/poky/bitbake/lib/bb/server/process.py
index a095572..6127fd4 100644
--- a/poky/bitbake/lib/bb/server/process.py
+++ b/poky/bitbake/lib/bb/server/process.py
@@ -26,6 +26,7 @@
 import re
 import datetime
 import pickle
+import traceback
 import bb.server.xmlrpcserver
 from bb import daemonize
 from multiprocessing import queues
@@ -217,8 +218,9 @@
                     self.command_channel_reply.send(self.cooker.command.runCommand(command))
                     serverlog("Command Completed")
                 except Exception as e:
-                   serverlog('Exception in server main event loop running command %s (%s)' % (command, str(e)))
-                   logger.exception('Exception in server main event loop running command %s (%s)' % (command, str(e)))
+                   stack = traceback.format_exc()
+                   serverlog('Exception in server main event loop running command %s (%s)' % (command, stack))
+                   logger.exception('Exception in server main event loop running command %s (%s)' % (command, stack))
 
             if self.xmlrpc in ready:
                 self.xmlrpc.handle_requests()
diff --git a/poky/bitbake/lib/bb/siggen.py b/poky/bitbake/lib/bb/siggen.py
index 07692e6..3f9fe50 100644
--- a/poky/bitbake/lib/bb/siggen.py
+++ b/poky/bitbake/lib/bb/siggen.py
@@ -228,7 +228,7 @@
         #    self.dump_sigtask(fn, task, d.getVar("STAMP"), False)
 
         for task in taskdeps:
-            d.setVar("BB_BASEHASH_task-%s" % task, self.basehash[fn + ":" + task])
+            d.setVar("BB_BASEHASH:task-%s" % task, self.basehash[fn + ":" + task])
 
     def postparsing_clean_cache(self):
         #
@@ -325,7 +325,7 @@
 
         h = hashlib.sha256(data.encode("utf-8")).hexdigest()
         self.taskhash[tid] = h
-        #d.setVar("BB_TASKHASH_task-%s" % task, taskhash[task])
+        #d.setVar("BB_TASKHASH:task-%s" % task, taskhash[task])
         return h
 
     def writeout_file_checksum_cache(self):
diff --git a/poky/bitbake/lib/bb/tests/codeparser.py b/poky/bitbake/lib/bb/tests/codeparser.py
index 826a2d2..f485204 100644
--- a/poky/bitbake/lib/bb/tests/codeparser.py
+++ b/poky/bitbake/lib/bb/tests/codeparser.py
@@ -111,9 +111,9 @@
         self.assertExecs(set(["sed"]))
 
     def test_parameter_expansion_modifiers(self):
-        # - and + are also valid modifiers for parameter expansion, but are
+        # -,+ and : are also valid modifiers for parameter expansion, but are
         # valid characters in bitbake variable names, so are not included here
-        for i in ('=', ':-', ':=', '?', ':?', ':+', '#', '%', '##', '%%'):
+        for i in ('=', '?', '#', '%', '##', '%%'):
             name = "foo%sbar" % i
             self.parseExpression("${%s}" % name)
             self.assertNotIn(name, self.references)
diff --git a/poky/bitbake/lib/bb/tests/data.py b/poky/bitbake/lib/bb/tests/data.py
index 1d4a64b..e667c7c 100644
--- a/poky/bitbake/lib/bb/tests/data.py
+++ b/poky/bitbake/lib/bb/tests/data.py
@@ -245,35 +245,35 @@
 
     def test_prepend(self):
         self.d.setVar("TEST", "${VAL}")
-        self.d.setVar("TEST_prepend", "${FOO}:")
+        self.d.setVar("TEST:prepend", "${FOO}:")
         self.assertEqual(self.d.getVar("TEST"), "foo:val")
 
     def test_append(self):
         self.d.setVar("TEST", "${VAL}")
-        self.d.setVar("TEST_append", ":${BAR}")
+        self.d.setVar("TEST:append", ":${BAR}")
         self.assertEqual(self.d.getVar("TEST"), "val:bar")
 
     def test_multiple_append(self):
         self.d.setVar("TEST", "${VAL}")
-        self.d.setVar("TEST_prepend", "${FOO}:")
-        self.d.setVar("TEST_append", ":val2")
-        self.d.setVar("TEST_append", ":${BAR}")
+        self.d.setVar("TEST:prepend", "${FOO}:")
+        self.d.setVar("TEST:append", ":val2")
+        self.d.setVar("TEST:append", ":${BAR}")
         self.assertEqual(self.d.getVar("TEST"), "foo:val:val2:bar")
 
     def test_append_unset(self):
-        self.d.setVar("TEST_prepend", "${FOO}:")
-        self.d.setVar("TEST_append", ":val2")
-        self.d.setVar("TEST_append", ":${BAR}")
+        self.d.setVar("TEST:prepend", "${FOO}:")
+        self.d.setVar("TEST:append", ":val2")
+        self.d.setVar("TEST:append", ":${BAR}")
         self.assertEqual(self.d.getVar("TEST"), "foo::val2:bar")
 
     def test_remove(self):
         self.d.setVar("TEST", "${VAL} ${BAR}")
-        self.d.setVar("TEST_remove", "val")
+        self.d.setVar("TEST:remove", "val")
         self.assertEqual(self.d.getVar("TEST"), " bar")
 
     def test_remove_cleared(self):
         self.d.setVar("TEST", "${VAL} ${BAR}")
-        self.d.setVar("TEST_remove", "val")
+        self.d.setVar("TEST:remove", "val")
         self.d.setVar("TEST", "${VAL} ${BAR}")
         self.assertEqual(self.d.getVar("TEST"), "val bar")
 
@@ -281,42 +281,42 @@
     # (including that whitespace is preserved)
     def test_remove_inactive_override(self):
         self.d.setVar("TEST", "${VAL} ${BAR}    123")
-        self.d.setVar("TEST_remove_inactiveoverride", "val")
+        self.d.setVar("TEST:remove:inactiveoverride", "val")
         self.assertEqual(self.d.getVar("TEST"), "val bar    123")
 
     def test_doubleref_remove(self):
         self.d.setVar("TEST", "${VAL} ${BAR}")
-        self.d.setVar("TEST_remove", "val")
+        self.d.setVar("TEST:remove", "val")
         self.d.setVar("TEST_TEST", "${TEST} ${TEST}")
         self.assertEqual(self.d.getVar("TEST_TEST"), " bar  bar")
 
     def test_empty_remove(self):
         self.d.setVar("TEST", "")
-        self.d.setVar("TEST_remove", "val")
+        self.d.setVar("TEST:remove", "val")
         self.assertEqual(self.d.getVar("TEST"), "")
 
     def test_remove_expansion(self):
         self.d.setVar("BAR", "Z")
         self.d.setVar("TEST", "${BAR}/X Y")
-        self.d.setVar("TEST_remove", "${BAR}/X")
+        self.d.setVar("TEST:remove", "${BAR}/X")
         self.assertEqual(self.d.getVar("TEST"), " Y")
 
     def test_remove_expansion_items(self):
         self.d.setVar("TEST", "A B C D")
         self.d.setVar("BAR", "B D")
-        self.d.setVar("TEST_remove", "${BAR}")
+        self.d.setVar("TEST:remove", "${BAR}")
         self.assertEqual(self.d.getVar("TEST"), "A  C ")
 
     def test_remove_preserve_whitespace(self):
         # When the removal isn't active, the original value should be preserved
         self.d.setVar("TEST", " A B")
-        self.d.setVar("TEST_remove", "C")
+        self.d.setVar("TEST:remove", "C")
         self.assertEqual(self.d.getVar("TEST"), " A B")
 
     def test_remove_preserve_whitespace2(self):
         # When the removal is active preserve the whitespace
         self.d.setVar("TEST", " A B")
-        self.d.setVar("TEST_remove", "B")
+        self.d.setVar("TEST:remove", "B")
         self.assertEqual(self.d.getVar("TEST"), " A ")
 
 class TestOverrides(unittest.TestCase):
@@ -329,70 +329,70 @@
         self.assertEqual(self.d.getVar("TEST"), "testvalue")
 
     def test_one_override(self):
-        self.d.setVar("TEST_bar", "testvalue2")
+        self.d.setVar("TEST:bar", "testvalue2")
         self.assertEqual(self.d.getVar("TEST"), "testvalue2")
 
     def test_one_override_unset(self):
-        self.d.setVar("TEST2_bar", "testvalue2")
+        self.d.setVar("TEST2:bar", "testvalue2")
 
         self.assertEqual(self.d.getVar("TEST2"), "testvalue2")
-        self.assertCountEqual(list(self.d.keys()), ['TEST', 'TEST2', 'OVERRIDES', 'TEST2_bar'])
+        self.assertCountEqual(list(self.d.keys()), ['TEST', 'TEST2', 'OVERRIDES', 'TEST2:bar'])
 
     def test_multiple_override(self):
-        self.d.setVar("TEST_bar", "testvalue2")
-        self.d.setVar("TEST_local", "testvalue3")
-        self.d.setVar("TEST_foo", "testvalue4")
+        self.d.setVar("TEST:bar", "testvalue2")
+        self.d.setVar("TEST:local", "testvalue3")
+        self.d.setVar("TEST:foo", "testvalue4")
         self.assertEqual(self.d.getVar("TEST"), "testvalue3")
-        self.assertCountEqual(list(self.d.keys()), ['TEST', 'TEST_foo', 'OVERRIDES', 'TEST_bar', 'TEST_local'])
+        self.assertCountEqual(list(self.d.keys()), ['TEST', 'TEST:foo', 'OVERRIDES', 'TEST:bar', 'TEST:local'])
 
     def test_multiple_combined_overrides(self):
-        self.d.setVar("TEST_local_foo_bar", "testvalue3")
+        self.d.setVar("TEST:local:foo:bar", "testvalue3")
         self.assertEqual(self.d.getVar("TEST"), "testvalue3")
 
     def test_multiple_overrides_unset(self):
-        self.d.setVar("TEST2_local_foo_bar", "testvalue3")
+        self.d.setVar("TEST2:local:foo:bar", "testvalue3")
         self.assertEqual(self.d.getVar("TEST2"), "testvalue3")
 
     def test_keyexpansion_override(self):
         self.d.setVar("LOCAL", "local")
-        self.d.setVar("TEST_bar", "testvalue2")
-        self.d.setVar("TEST_${LOCAL}", "testvalue3")
-        self.d.setVar("TEST_foo", "testvalue4")
+        self.d.setVar("TEST:bar", "testvalue2")
+        self.d.setVar("TEST:${LOCAL}", "testvalue3")
+        self.d.setVar("TEST:foo", "testvalue4")
         bb.data.expandKeys(self.d)
         self.assertEqual(self.d.getVar("TEST"), "testvalue3")
 
     def test_rename_override(self):
-        self.d.setVar("ALTERNATIVE_ncurses-tools_class-target", "a")
+        self.d.setVar("ALTERNATIVE:ncurses-tools:class-target", "a")
         self.d.setVar("OVERRIDES", "class-target")
-        self.d.renameVar("ALTERNATIVE_ncurses-tools", "ALTERNATIVE_lib32-ncurses-tools")
-        self.assertEqual(self.d.getVar("ALTERNATIVE_lib32-ncurses-tools"), "a")
+        self.d.renameVar("ALTERNATIVE:ncurses-tools", "ALTERNATIVE:lib32-ncurses-tools")
+        self.assertEqual(self.d.getVar("ALTERNATIVE:lib32-ncurses-tools"), "a")
 
     def test_underscore_override(self):
-        self.d.setVar("TEST_bar", "testvalue2")
-        self.d.setVar("TEST_some_val", "testvalue3")
-        self.d.setVar("TEST_foo", "testvalue4")
+        self.d.setVar("TEST:bar", "testvalue2")
+        self.d.setVar("TEST:some_val", "testvalue3")
+        self.d.setVar("TEST:foo", "testvalue4")
         self.d.setVar("OVERRIDES", "foo:bar:some_val")
         self.assertEqual(self.d.getVar("TEST"), "testvalue3")
 
     def test_remove_with_override(self):
-        self.d.setVar("TEST_bar", "testvalue2")
-        self.d.setVar("TEST_some_val", "testvalue3 testvalue5")
-        self.d.setVar("TEST_some_val_remove", "testvalue3")
-        self.d.setVar("TEST_foo", "testvalue4")
+        self.d.setVar("TEST:bar", "testvalue2")
+        self.d.setVar("TEST:some_val", "testvalue3 testvalue5")
+        self.d.setVar("TEST:some_val:remove", "testvalue3")
+        self.d.setVar("TEST:foo", "testvalue4")
         self.d.setVar("OVERRIDES", "foo:bar:some_val")
         self.assertEqual(self.d.getVar("TEST"), " testvalue5")
 
     def test_append_and_override_1(self):
-        self.d.setVar("TEST_append", "testvalue2")
-        self.d.setVar("TEST_bar", "testvalue3")
+        self.d.setVar("TEST:append", "testvalue2")
+        self.d.setVar("TEST:bar", "testvalue3")
         self.assertEqual(self.d.getVar("TEST"), "testvalue3testvalue2")
 
     def test_append_and_override_2(self):
-        self.d.setVar("TEST_append_bar", "testvalue2")
+        self.d.setVar("TEST:append:bar", "testvalue2")
         self.assertEqual(self.d.getVar("TEST"), "testvaluetestvalue2")
 
     def test_append_and_override_3(self):
-        self.d.setVar("TEST_bar_append", "testvalue2")
+        self.d.setVar("TEST:bar:append", "testvalue2")
         self.assertEqual(self.d.getVar("TEST"), "testvalue2")
 
     # Test an override with _<numeric> in it based on a real world OE issue
@@ -400,11 +400,16 @@
         self.d.setVar("TARGET_ARCH", "x86_64")
         self.d.setVar("PN", "test-${TARGET_ARCH}")
         self.d.setVar("VERSION", "1")
-        self.d.setVar("VERSION_pn-test-${TARGET_ARCH}", "2")
+        self.d.setVar("VERSION:pn-test-${TARGET_ARCH}", "2")
         self.d.setVar("OVERRIDES", "pn-${PN}")
         bb.data.expandKeys(self.d)
         self.assertEqual(self.d.getVar("VERSION"), "2")
 
+    def test_append_and_unused_override(self):
+        # Had a bug where an unused override append could return "" instead of None
+        self.d.setVar("BAR:append:unusedoverride", "testvalue2")
+        self.assertEqual(self.d.getVar("BAR"), None)
+
 class TestKeyExpansion(unittest.TestCase):
     def setUp(self):
         self.d = bb.data.init()
@@ -498,7 +503,7 @@
         d.setVar("VAR", "val")
         # Adding an inactive removal shouldn't change the hash
         d.setVar("BAR", "notbar")
-        d.setVar("MYCOMMAND_remove", "${BAR}")
+        d.setVar("MYCOMMAND:remove", "${BAR}")
         nexthash = gettask_bashhash("mytask", d)
         self.assertEqual(orighash, nexthash)
 
diff --git a/poky/bitbake/lib/bb/tests/parse.py b/poky/bitbake/lib/bb/tests/parse.py
index 9e21e18..4d17f82 100644
--- a/poky/bitbake/lib/bb/tests/parse.py
+++ b/poky/bitbake/lib/bb/tests/parse.py
@@ -98,8 +98,8 @@
 
 
     overridetest = """
-RRECOMMENDS_${PN} = "a"
-RRECOMMENDS_${PN}_libc = "b"
+RRECOMMENDS:${PN} = "a"
+RRECOMMENDS:${PN}:libc = "b"
 OVERRIDES = "libc:${PN}"
 PN = "gtk+"
 """
@@ -110,13 +110,13 @@
         self.assertEqual(d.getVar("RRECOMMENDS"), "b")
         bb.data.expandKeys(d)
         self.assertEqual(d.getVar("RRECOMMENDS"), "b")
-        d.setVar("RRECOMMENDS_gtk+", "c")
+        d.setVar("RRECOMMENDS:gtk+", "c")
         self.assertEqual(d.getVar("RRECOMMENDS"), "c")
 
     overridetest2 = """
 EXTRA_OECONF = ""
-EXTRA_OECONF_class-target = "b"
-EXTRA_OECONF_append = " c"
+EXTRA_OECONF:class-target = "b"
+EXTRA_OECONF:append = " c"
 """
 
     def test_parse_overrides(self):
@@ -128,7 +128,7 @@
 
     overridetest3 = """
 DESCRIPTION = "A"
-DESCRIPTION_${PN}-dev = "${DESCRIPTION} B"
+DESCRIPTION:${PN}-dev = "${DESCRIPTION} B"
 PN = "bc"
 """
 
@@ -136,15 +136,15 @@
         f = self.parsehelper(self.overridetest3)
         d = bb.parse.handle(f.name, self.d)['']
         bb.data.expandKeys(d)
-        self.assertEqual(d.getVar("DESCRIPTION_bc-dev"), "A B")
+        self.assertEqual(d.getVar("DESCRIPTION:bc-dev"), "A B")
         d.setVar("DESCRIPTION", "E")
-        d.setVar("DESCRIPTION_bc-dev", "C D")
+        d.setVar("DESCRIPTION:bc-dev", "C D")
         d.setVar("OVERRIDES", "bc-dev")
         self.assertEqual(d.getVar("DESCRIPTION"), "C D")
 
 
     classextend = """
-VAR_var_override1 = "B"
+VAR_var:override1 = "B"
 EXTRA = ":override1"
 OVERRIDES = "nothing${EXTRA}"
 
diff --git a/poky/bitbake/lib/bb/ui/taskexp.py b/poky/bitbake/lib/bb/ui/taskexp.py
index 2b24671..c00eaf6 100644
--- a/poky/bitbake/lib/bb/ui/taskexp.py
+++ b/poky/bitbake/lib/bb/ui/taskexp.py
@@ -8,6 +8,7 @@
 #
 
 import sys
+import traceback
 
 try:
     import gi
@@ -196,6 +197,7 @@
     gtkgui.start()
 
     try:
+        params.updateToServer(server, os.environ.copy())
         params.updateFromServer(server)
         cmdline = params.parseActions()
         if not cmdline:
@@ -218,6 +220,9 @@
     except client.Fault as x:
         print("XMLRPC Fault getting commandline:\n %s" % x)
         return
+    except Exception as e:
+        print("Exception in startup:\n %s" % traceback.format_exc())
+        return
 
     if gtkthread.quit.isSet():
         return
diff --git a/poky/bitbake/lib/bb/utils.py b/poky/bitbake/lib/bb/utils.py
index 6ba1d2a..e6e82d1 100644
--- a/poky/bitbake/lib/bb/utils.py
+++ b/poky/bitbake/lib/bb/utils.py
@@ -1178,7 +1178,7 @@
         variables: a list of variable names to look for. Functions
             may also be specified, but must be specified with '()' at
             the end of the name. Note that the function doesn't have
-            any intrinsic understanding of _append, _prepend, _remove,
+            any intrinsic understanding of :append, :prepend, :remove,
             or overrides, so these are considered as part of the name.
             These values go into a regular expression, so regular
             expression syntax is allowed.
diff --git a/poky/bitbake/lib/hashserv/tests.py b/poky/bitbake/lib/hashserv/tests.py
index e2b762d..e851535 100644
--- a/poky/bitbake/lib/hashserv/tests.py
+++ b/poky/bitbake/lib/hashserv/tests.py
@@ -15,28 +15,32 @@
 import threading
 import unittest
 import socket
+import time
+import signal
 
-def _run_server(server, idx):
-    # logging.basicConfig(level=logging.DEBUG, filename='bbhashserv.log', filemode='w',
-    #                     format='%(levelname)s %(filename)s:%(lineno)d %(message)s')
+def server_prefunc(server, idx):
+    logging.basicConfig(level=logging.DEBUG, filename='bbhashserv.log', filemode='w',
+                        format='%(levelname)s %(filename)s:%(lineno)d %(message)s')
+    server.logger.debug("Running server %d" % idx)
     sys.stdout = open('bbhashserv-%d.log' % idx, 'w')
     sys.stderr = sys.stdout
-    server.serve_forever()
-
 
 class HashEquivalenceTestSetup(object):
     METHOD = 'TestMethod'
 
     server_index = 0
 
-    def start_server(self, dbpath=None, upstream=None, read_only=False):
+    def start_server(self, dbpath=None, upstream=None, read_only=False, prefunc=server_prefunc):
         self.server_index += 1
         if dbpath is None:
             dbpath = os.path.join(self.temp_dir.name, "db%d.sqlite" % self.server_index)
 
-        def cleanup_thread(thread):
-            thread.terminate()
-            thread.join()
+        def cleanup_server(server):
+            if server.process.exitcode is not None:
+                return
+
+            server.process.terminate()
+            server.process.join()
 
         server = create_server(self.get_server_addr(self.server_index),
                                dbpath,
@@ -44,9 +48,8 @@
                                read_only=read_only)
         server.dbpath = dbpath
 
-        server.thread = multiprocessing.Process(target=_run_server, args=(server, self.server_index))
-        server.thread.start()
-        self.addCleanup(cleanup_thread, server.thread)
+        server.serve_as_process(prefunc=prefunc, args=(self.server_index,))
+        self.addCleanup(cleanup_server, server)
 
         def cleanup_client(client):
             client.close()
@@ -283,6 +286,33 @@
         self.assertClientGetHash(self.client, taskhash2, None)
 
 
+    def test_slow_server_start(self):
+        """
+        Ensures that the server will exit correctly even if it gets a SIGTERM
+        before entering the main loop
+        """
+
+        event = multiprocessing.Event()
+
+        def prefunc(server, idx):
+            nonlocal event
+            server_prefunc(server, idx)
+            event.wait()
+
+        def do_nothing(signum, frame):
+            pass
+
+        old_signal = signal.signal(signal.SIGTERM, do_nothing)
+        self.addCleanup(signal.signal, signal.SIGTERM, old_signal)
+
+        _, server = self.start_server(prefunc=prefunc)
+        server.process.terminate()
+        time.sleep(30)
+        event.set()
+        server.process.join(300)
+        self.assertIsNotNone(server.process.exitcode, "Server did not exit in a timely manner!")
+
+
 class TestHashEquivalenceUnixServer(HashEquivalenceTestSetup, HashEquivalenceCommonTests, unittest.TestCase):
     def get_server_addr(self, server_idx):
         return "unix://" + os.path.join(self.temp_dir.name, 'sock%d' % server_idx)
diff --git a/poky/bitbake/lib/toaster/orm/models.py b/poky/bitbake/lib/toaster/orm/models.py
index 7f7e922..4c94b40 100644
--- a/poky/bitbake/lib/toaster/orm/models.py
+++ b/poky/bitbake/lib/toaster/orm/models.py
@@ -1719,7 +1719,7 @@
         """Generate the contents for the recipe file."""
         # If we have no excluded packages we only need to _append
         if self.excludes_set.count() == 0:
-            packages_conf = "IMAGE_INSTALL_append = \" "
+            packages_conf = "IMAGE_INSTALL:append = \" "
 
             for pkg in self.appends_set.all():
                 packages_conf += pkg.name+' '
diff --git a/poky/bitbake/lib/toaster/toastergui/views.py b/poky/bitbake/lib/toaster/toastergui/views.py
index 9a5e48e..74f9d56 100644
--- a/poky/bitbake/lib/toaster/toastergui/views.py
+++ b/poky/bitbake/lib/toaster/toastergui/views.py
@@ -1708,7 +1708,7 @@
             except ProjectVariable.DoesNotExist:
                 pass
             try:
-                return_data['image_install_append'] = ProjectVariable.objects.get(project = prj, name = "IMAGE_INSTALL_append").value,
+                return_data['image_install:append'] = ProjectVariable.objects.get(project = prj, name = "IMAGE_INSTALL:append").value,
             except ProjectVariable.DoesNotExist:
                 pass
             try:
@@ -1839,7 +1839,7 @@
         except ProjectVariable.DoesNotExist:
             pass
         try:
-            context['image_install_append'] =  ProjectVariable.objects.get(project = prj, name = "IMAGE_INSTALL_append").value
+            context['image_install:append'] =  ProjectVariable.objects.get(project = prj, name = "IMAGE_INSTALL:append").value
             context['image_install_append_defined'] = "1"
         except ProjectVariable.DoesNotExist:
             pass
diff --git a/poky/bitbake/lib/toaster/toastermain/management/commands/buildimport.py b/poky/bitbake/lib/toaster/toastermain/management/commands/buildimport.py
index 59da6ff..e25b55e 100644
--- a/poky/bitbake/lib/toaster/toastermain/management/commands/buildimport.py
+++ b/poky/bitbake/lib/toaster/toastermain/management/commands/buildimport.py
@@ -451,7 +451,7 @@
             # Catch vars relevant to Toaster (in case no Toaster section)
             self.update_project_vars(project,'DISTRO')
             self.update_project_vars(project,'MACHINE')
-            self.update_project_vars(project,'IMAGE_INSTALL_append')
+            self.update_project_vars(project,'IMAGE_INSTALL:append')
             self.update_project_vars(project,'IMAGE_FSTYPES')
             self.update_project_vars(project,'PACKAGE_CLASSES')
             # These vars are typically only assigned by Toaster
diff --git a/poky/documentation/README b/poky/documentation/README
index f9e803a..fad1968 100644
--- a/poky/documentation/README
+++ b/poky/documentation/README
@@ -328,10 +328,19 @@
 so that we can cross reference content from other Sphinx based
 documentation projects, such as the BitBake manual.
 
-References to the bitbake manual can be done like this:
+References to the BitBake manual can be done:
+ - With a specific description instead of the section name:
+  :ref:`Azure Storage fetcher (az://) <bitbake:bitbake-user-manual/bitbake-user-manual-fetching:fetchers>`
+ - With the section name:
+  ":ref:`bitbake:bitbake-user-manual/bitbake-user-manual-intro:usage and syntax` option
+ - Linking to the entire BitBake manual:
+  :doc:`BitBake User Manual <bitbake:index>`
 
-  See the ":ref:`-D <bitbake:bitbake-user-manual/bitbake-user-manual-intro:usage and syntax>`" option
-or
+Note that a reference to a variable (:term:`VARIABLE`) automatically points to
+the BitBake manual if the variable is not described in the Reference Manual's Variable Glossary.
+However, if you need to bypass this, you can explicitely refer to a description in the
+BitBake manual as follows:
+
   :term:`bitbake:BB_NUMBER_PARSE_THREADS`
 
 Submitting documentation changes
diff --git a/poky/documentation/brief-yoctoprojectqs/index.rst b/poky/documentation/brief-yoctoprojectqs/index.rst
index b92b0d3..74167be 100644
--- a/poky/documentation/brief-yoctoprojectqs/index.rst
+++ b/poky/documentation/brief-yoctoprojectqs/index.rst
@@ -207,7 +207,7 @@
           https://docs.yoctoproject.org
 
       For more information about OpenEmbedded see their website:
-          http://www.openembedded.org/
+          https://www.openembedded.org/
 
       ### Shell environment set up for builds. ###
 
@@ -215,12 +215,19 @@
 
       Common targets are:
           core-image-minimal
+          core-image-full-cmdline
           core-image-sato
+          core-image-weston
           meta-toolchain
           meta-ide-support
 
       You can also run generated QEMU images with a command like 'runqemu qemux86-64'
 
+      Other commonly useful commands are:
+       - 'devtool' and 'recipetool' handle common recipe tasks
+       - 'bitbake-layers' handles common layer tasks
+       - 'oe-pkgdata-util' handles common target package tasks
+
    Among other things, the script creates the :term:`Build Directory`, which is
    ``build`` in this case and is located in the :term:`Source Directory`.  After
    the script runs, your current working directory is set to the Build
@@ -260,8 +267,9 @@
 
    For information on using the ``bitbake`` command, see the
    :ref:`overview-manual/concepts:bitbake` section in the Yocto Project Overview and
-   Concepts Manual, or see the ":ref:`BitBake Command
-   <bitbake:bitbake-user-manual/bitbake-user-manual-intro:the bitbake command>`" section in the BitBake User Manual.
+   Concepts Manual, or see
+   :ref:`bitbake:bitbake-user-manual/bitbake-user-manual-intro:the bitbake command`
+   in the BitBake User Manual.
 
 #. **Simulate Your Image Using QEMU:** Once this particular image is
    built, you can start QEMU, which is a Quick EMUlator that ships with
diff --git a/poky/documentation/dev-manual/common-tasks.rst b/poky/documentation/dev-manual/common-tasks.rst
index 2af2896..7fa0df4 100644
--- a/poky/documentation/dev-manual/common-tasks.rst
+++ b/poky/documentation/dev-manual/common-tasks.rst
@@ -872,7 +872,7 @@
 :term:`Build Directory`.
 
 To understand how these features work, the best reference is
-``meta/classes/core-image.bbclass``. This class lists out the available
+``meta/classes/image.bbclass``. This class lists out the available
 :term:`IMAGE_FEATURES` of which most map to package groups while some, such
 as ``debug-tweaks`` and ``read-only-rootfs``, resolve as general
 configuration settings.
@@ -4384,7 +4384,7 @@
    variable, inherit the
    :ref:`own-mirrors <ref-classes-own-mirrors>`
    class, and use the
-   :term:`bitbake:BB_NO_NETWORK`
+   :term:`BB_NO_NETWORK`
    variable to your ``local.conf``.
    ::
 
@@ -4457,7 +4457,7 @@
 -  :term:`BB_NUMBER_THREADS`:
    The maximum number of threads BitBake simultaneously executes.
 
--  :term:`bitbake:BB_NUMBER_PARSE_THREADS`:
+-  :term:`BB_NUMBER_PARSE_THREADS`:
    The number of threads BitBake uses during parsing.
 
 -  :term:`PARALLEL_MAKE`: Extra
@@ -7288,7 +7288,8 @@
        npmsw://${THISDIR}/${BPN}/npm-shrinkwrap.json \
        "
    S = "${WORKDIR}/npm"
-   inherit npm LICENSE_${PN} = "MIT"
+   inherit npm
+   LICENSE_${PN} = "MIT"
    LICENSE_${PN}-accepts = "MIT"
    LICENSE_${PN}-array-flatten = "MIT"
    ...
@@ -9121,7 +9122,7 @@
 
    The output of ``bitbake-dumpsig`` also includes the value each
    variable had, a list of dependencies for each variable, and
-   :term:`bitbake:BB_HASHBASE_WHITELIST`
+   :term:`BB_HASHBASE_WHITELIST`
    information.
 
 There is also a ``bitbake-diffsigs`` command for comparing two
@@ -9358,7 +9359,7 @@
 
 -  ``bb.debug(level, msg)``: Writes "DEBUG: msg" to the
    log. Also logs to stdout if the log level is greater than or equal to
-   level. See the ":ref:`-D <bitbake:bitbake-user-manual/bitbake-user-manual-intro:usage and syntax>`" option
+   level. See the ":ref:`bitbake:bitbake-user-manual/bitbake-user-manual-intro:usage and syntax`" option
    in the BitBake User Manual for more information.
 
 -  ``bb.warn(msg)``: Writes "WARNING: msg" to the log while also
@@ -10528,6 +10529,9 @@
 1. *Identify the bug or CVE to be fixed:* This information should be
    collected so that it can be included in your submission.
 
+   See :ref:`dev-manual/common-tasks:checking for vulnerabilities`
+   for details about CVE tracking.
+
 2. *Check if the fix is already present in the master branch:* This will
    result in the most straightforward path into the stable branch for the
    fix.
@@ -10928,7 +10932,7 @@
          p=${p%-*}
          # Only archive GPL packages (update *GPL* regex for your license check)
          numfiles=`ls tmp/deploy/licenses/$p/*GPL* 2> /dev/null | wc -l`
-         if [ $numfiles -gt 1 ]; then
+         if [ $numfiles -ge 1 ]; then
             echo Archiving $p
             mkdir -p $src_release_dir/$p/source
             cp $d/* $src_release_dir/$p/source 2> /dev/null
@@ -11090,6 +11094,48 @@
 
    NO_GENERIC_LICENSE[Firmware-Abilis] = "LICENSE.Abilis.txt"
 
+Checking for Vulnerabilities
+============================
+
+Vulnerabilities in images
+-------------------------
+
+The Yocto Project has an infrastructure to track and address unfixed
+known security vulnerabilities, as tracked by the public
+`Common Vulnerabilities and Exposures (CVE) <https://en.wikipedia.org/wiki/Common_Vulnerabilities_and_Exposures>`__
+database.
+
+To know which packages are vulnerable to known security vulnerabilities,
+add the following setting to your configuration::
+
+   INHERIT += "cve-check"
+
+This way, at build time, BitBake will warn you about known CVEs
+as in the example below::
+
+   WARNING: flex-2.6.4-r0 do_cve_check: Found unpatched CVE (CVE-2019-6293), for more information check /poky/build/tmp/work/core2-64-poky-linux/flex/2.6.4-r0/temp/cve.log
+   WARNING: libarchive-3.5.1-r0 do_cve_check: Found unpatched CVE (CVE-2021-36976), for more information check /poky/build/tmp/work/core2-64-poky-linux/libarchive/3.5.1-r0/temp/cve.log
+
+It is also possible to check the CVE status of individual packages as follows::
+
+   bitbake -c cve_check flex libarchive
+
+Note that OpenEmbedded-Core keeps a list of known unfixed CVE issues which can
+be ignored. You can pass this list to the check as follows::
+
+   bitbake -c cve_check libarchive -R conf/distro/include/cve-extra-exclusions.inc
+
+Enabling vulnerabily tracking in recipes
+----------------------------------------
+
+The :term:`CVE_PRODUCT` variable defines the name used to match the recipe name
+against the name in the upstream `NIST CVE database <https://nvd.nist.gov/>`__.
+
+The CVE database is stored in :term:`DL_DIR` and can be inspected using
+``sqlite3`` command as follows::
+
+   sqlite3 downloads/CVE_CHECK/nvdcve_1.1.db .dump | grep CVE-2021-37462
+
 Using the Error Reporting Tool
 ==============================
 
diff --git a/poky/documentation/migration-guides/index.rst b/poky/documentation/migration-guides/index.rst
index 6304e63..287b553 100644
--- a/poky/documentation/migration-guides/index.rst
+++ b/poky/documentation/migration-guides/index.rst
@@ -12,6 +12,7 @@
 .. toctree::
 
    migration-general
+   migration-3.4
    migration-3.3
    migration-3.2
    migration-3.1
diff --git a/poky/documentation/migration-guides/migration-2.4.rst b/poky/documentation/migration-guides/migration-2.4.rst
index cab8135..ae1a212 100644
--- a/poky/documentation/migration-guides/migration-2.4.rst
+++ b/poky/documentation/migration-guides/migration-2.4.rst
@@ -286,8 +286,8 @@
 
 -  BitBake fires multiple "BuildStarted" events when multiconfig is
    enabled (one per configuration). For more information, see the
-   ":ref:`Events <bitbake:bitbake-user-manual/bitbake-user-manual-metadata:events>`" section in the BitBake User
-   Manual.
+   ":ref:`bitbake:bitbake-user-manual/bitbake-user-manual-metadata:events`"
+   section in the BitBake User Manual.
 
 -  By default, the ``security_flags.inc`` file sets a
    :term:`GCCPIE` variable with an option to enable
diff --git a/poky/documentation/migration-guides/migration-3.0.rst b/poky/documentation/migration-guides/migration-3.0.rst
index 20c7026..9a5f571 100644
--- a/poky/documentation/migration-guides/migration-3.0.rst
+++ b/poky/documentation/migration-guides/migration-3.0.rst
@@ -194,7 +194,7 @@
    scripts that handles these two events need to be updated.
 
 -  The arguments passed to functions used with
-   :term:`bitbake:BB_HASHCHECK_FUNCTION`
+   :term:`BB_HASHCHECK_FUNCTION`
    have changed. If you are using your own custom hash check function,
    see :yocto_git:`/poky/commit/?id=40a5e193c4ba45c928fccd899415ea56b5417725`
    for details.
diff --git a/poky/documentation/migration-guides/migration-3.4.rst b/poky/documentation/migration-guides/migration-3.4.rst
new file mode 100644
index 0000000..6fa1ab2
--- /dev/null
+++ b/poky/documentation/migration-guides/migration-3.4.rst
@@ -0,0 +1,76 @@
+Release 3.4 (honister)
+======================
+
+This section provides migration information for moving to the Yocto
+Project 3.4 Release (codename "honister") from the prior release.
+
+Override syntax changes
+-----------------------
+
+This release requires changes to the metadata to indicate where overrides are
+being used in variable key names. This is done with the ``:`` character replacing
+the use of ``_`` previously. This means that an entry like::
+
+   SRC_URI_qemux86 = "file://somefile"
+
+becomes::
+
+   SRC_URI:qemux86 = "file://somefile"
+
+since ``qemux86`` is an override. This applies to any use of override syntax so::
+
+   SRC_URI_append = " file://somefile"
+   SRC_URI_append_qemux86 = " file://somefile2"
+   SRC_URI_remove_qemux86-64 = " file://somefile3"
+   SRC_URI_prepend_qemuarm = "file://somefile4 "
+   FILES_${PN}-ptest = "${bindir}/xyz"
+   IMAGE_CMD_tar = "tar"
+   BASE_LIB_tune-cortexa76 = "lib"
+   SRCREV_pn-bash = "abc"
+   BB_TASK_NICE_LEVEL_task-testimage = '0'
+
+becomes::
+
+   SRC_URI:append = " file://somefile"
+   SRC_URI:append:qemux86 = " file://somefile2"
+   SRC_URI:remove:qemux86-64 = " file://somefile3"
+   SRC_URI:prepend:qemuarm = "file://somefile4 "
+   FILES:${PN}-ptest = "${bindir}/xyz"
+   IMAGE_CMD:tar = "tar"
+   BASE_LIB:tune-cortexa76 = "lib"
+   SRCREV:pn-bash = "abc"
+   BB_TASK_NICE_LEVEL:task-testimage = '0'
+
+This also applies to
+:ref:`variable queries to the datastore <bitbake:bitbake-user-manual/bitbake-user-manual-metadata:functions for accessing datastore variables>`,
+for example using ``getVar`` and similar so ``d.getVar("RDEPENDS_${PN}")``
+becomes ``d.getVar("RDEPENDS:${PN}")``.
+
+Whilst some of these are fairly obvious such as :term:`MACHINE` and :term:`DISTRO`
+overrides, some are less obvious, for example the packaging variables such as
+:term:`RDEPENDS`, :term:`FILES` and so on taking package names (e.g. ``${PN}``,
+``${PN}-ptest``) as overrides. These overrides are not always in
+:term:`OVERRIDES` but applied conditionally in specific contexts
+such as packaging. ``task-<taskname>`` is another context specific override, the
+context being specific tasks in that case. Tune overrides are another special
+case where some code does use them as overrides but some does not. We plan to try
+and make the tune code use overrides more consistently in the future.
+
+To help with migration of layers there is a script in OE-Core. Once configured
+with the overrides used by a layer, this can be run as::
+
+   <oe-core>/scripts/contrib/convert-overrides.py <layerdir>
+
+.. note::
+
+   Please read the notes in the script as it isn't entirely automatic and it isn't
+   expected to handle every case. In particular, it needs to be told which overrides
+   the layer uses (usually machine and distro names/overrides) and the result should
+   be carefully checked since it can be a little enthusiastic and will convert
+   references to ``_append``, ``_remove`` and ``_prepend`` in function and variables names.
+
+For reference, this conversion is important as it allows BitBake to know what is
+an override and what is not. This should allow us to proceed with other syntax
+improvements and simplifications for usability. It also means bitbake no longer
+has to guess and maintain large lookup lists just in case ``functionname`` in
+``my_functionname`` is an override and this should improve efficiency.
diff --git a/poky/documentation/overview-manual/concepts.rst b/poky/documentation/overview-manual/concepts.rst
index 1e5f0f9..4f8e6cb 100644
--- a/poky/documentation/overview-manual/concepts.rst
+++ b/poky/documentation/overview-manual/concepts.rst
@@ -74,7 +74,7 @@
 selected by the distribution configuration. You can get more details
 about how BitBake chooses between different target versions and
 providers in the
-":ref:`Preferences <bitbake:bitbake-user-manual/bitbake-user-manual-execution:preferences>`" section
+":ref:`bitbake:bitbake-user-manual/bitbake-user-manual-execution:preferences`" section
 of the BitBake User Manual.
 
 BitBake also tries to execute any dependent tasks first. So for example,
@@ -584,7 +584,7 @@
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
 Another place from which the build system can get source files is with
-:ref:`fetchers <bitbake:bitbake-user-manual/bitbake-user-manual-fetching:fetchers>` employing various Source
+:ref:`bitbake:bitbake-user-manual/bitbake-user-manual-fetching:fetchers` employing various Source
 Control Managers (SCMs) such as Git or Subversion. In such cases, a
 repository is cloned or checked out. The
 :ref:`ref-tasks-fetch` task inside
@@ -1250,11 +1250,9 @@
 dependencies, such as the compiler, from the cache.
 
 The availability of objects in the sstate cache is handled by the
-function specified by the
-:term:`bitbake:BB_HASHCHECK_FUNCTION`
+function specified by the :term:`BB_HASHCHECK_FUNCTION`
 variable and returns a list of available objects. The function specified
-by the
-:term:`bitbake:BB_SETSCENE_DEPVALID`
+by the :term:`BB_SETSCENE_DEPVALID`
 variable is the function that determines whether a given dependency
 needs to be followed, and whether for any given relationship the
 function needs to be passed. The function returns a True or False value.
@@ -1863,7 +1861,7 @@
   through the shared state cache if possible. If the task was
   accelerated, ``sstate_setscene()`` returns True. Otherwise, it
   returns False, and the normal ``do_deploy`` task runs. For more
-  information, see the ":ref:`setscene <bitbake:bitbake-user-manual/bitbake-user-manual-execution:setscene>`"
+  information, see the ":ref:`bitbake:bitbake-user-manual/bitbake-user-manual-execution:setscene`"
   section in the BitBake User Manual.
 
 -  The ``do_deploy[dirs] = "${DEPLOYDIR} ${B}"`` line creates
diff --git a/poky/documentation/poky.yaml b/poky/documentation/poky.yaml
index 3bfc35b..19441f0 100644
--- a/poky/documentation/poky.yaml
+++ b/poky/documentation/poky.yaml
@@ -1,12 +1,12 @@
-DISTRO : "3.3.1"
+DISTRO : "3.3.2"
 DISTRO_NAME_NO_CAP : "hardknott"
 DISTRO_NAME : "Hardknott"
 DISTRO_NAME_NO_CAP_MINUS_ONE : "gatesgarth"
 DISTRO_NAME_NO_CAP_LTS : "dunfell"
-YOCTO_DOC_VERSION : "3.3.1"
+YOCTO_DOC_VERSION : "3.3.2"
 YOCTO_DOC_VERSION_MINUS_ONE : "3.2.4"
-DISTRO_REL_TAG : "yocto-3.3.1"
-POKYVERSION : "25.0.1"
+DISTRO_REL_TAG : "yocto-3.3.2"
+POKYVERSION : "25.0.2"
 YOCTO_POKY : "poky-&DISTRO_NAME_NO_CAP;-&POKYVERSION;"
 YOCTO_DL_URL : "https://downloads.yoctoproject.org"
 YOCTO_AB_URL : "https://autobuilder.yoctoproject.org"
diff --git a/poky/documentation/profile-manual/usage.rst b/poky/documentation/profile-manual/usage.rst
index 825290c..ae4efa7 100644
--- a/poky/documentation/profile-manual/usage.rst
+++ b/poky/documentation/profile-manual/usage.rst
@@ -1157,13 +1157,14 @@
 Normally, you should be able to invoke the man pages via perf itself
 e.g. 'perf help' or 'perf help record'.
 
-However, by default Yocto doesn't install man pages, but perf invokes
-the man pages for most help functionality. This is a bug and is being
-addressed by a Yocto bug: :yocto_bugs:`Bug 3388 - perf: enable man pages for
-basic 'help' functionality </show_bug.cgi?id=3388>`.
+To have the perf manpages installed on your target, modify your
+configuration as follows::
+
+   IMAGE_INSTALL:append = " perf perf-doc"
+   DISTRO_FEATURES:append = " api-documentation"
 
 The man pages in text form, along with some other files, such as a set
-of examples, can be found in the 'perf' directory of the kernel tree::
+of examples, can also be found in the 'perf' directory of the kernel tree::
 
    tools/perf/Documentation
 
diff --git a/poky/documentation/ref-manual/examples/mtd-makefile/mtd-utils_1.0.0.bb b/poky/documentation/ref-manual/examples/mtd-makefile/mtd-utils_1.0.0.bb
deleted file mode 100644
index 5d05a43..0000000
--- a/poky/documentation/ref-manual/examples/mtd-makefile/mtd-utils_1.0.0.bb
+++ /dev/null
@@ -1,15 +0,0 @@
-DESCRIPTION = "Tools for managing memory technology devices."
-SECTION = "base"
-DEPENDS = "zlib"
-HOMEPAGE = "http://www.linux-mtd.infradead.org/"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3 \
-                    file://include/common.h;beginline=1;endline=17;md5=ba05b07912a44ea2bf81ce409380049c"
-
-SRC_URI = "ftp://ftp.infradead.org/pub/mtd-utils/mtd-utils-${PV}.tar.gz"
-
-CFLAGS_prepend = "-I ${S}/include "
-
-do_install() {
-	oe_runmake install DESTDIR=${D}
-}
diff --git a/poky/documentation/ref-manual/tasks.rst b/poky/documentation/ref-manual/tasks.rst
index 970b083..ecc7018 100644
--- a/poky/documentation/ref-manual/tasks.rst
+++ b/poky/documentation/ref-manual/tasks.rst
@@ -14,8 +14,8 @@
 
 The following sections describe normal tasks associated with building a
 recipe. For more information on tasks and dependencies, see the
-":ref:`Tasks <bitbake:bitbake-user-manual/bitbake-user-manual-metadata:tasks>`" and
-":ref:`Dependencies <bitbake:bitbake-user-manual/bitbake-user-manual-execution:dependencies>`" sections in the
+":ref:`bitbake:bitbake-user-manual/bitbake-user-manual-metadata:tasks`" and
+":ref:`bitbake:bitbake-user-manual/bitbake-user-manual-execution:dependencies`" sections in the
 BitBake User Manual.
 
 .. _ref-tasks-build:
diff --git a/poky/documentation/ref-manual/variables.rst b/poky/documentation/ref-manual/variables.rst
index 3de37a1..1150940 100644
--- a/poky/documentation/ref-manual/variables.rst
+++ b/poky/documentation/ref-manual/variables.rst
@@ -256,7 +256,7 @@
       To add a tune to the list, be sure to append it with spaces using the
       "+=" BitBake operator. Do not simply replace the list by using the
       "=" operator. See the
-      ":ref:`Basic Syntax <bitbake:bitbake-user-manual/bitbake-user-manual-metadata:basic syntax>`" section in the BitBake
+      ":ref:`bitbake:bitbake-user-manual/bitbake-user-manual-metadata:basic syntax`" section in the BitBake
       User Manual for more information.
 
    :term:`AZ_SAS`
@@ -762,8 +762,7 @@
 
          export BBSERVER=localhost:$port
 
-      By default, :term:`BBSERVER` also appears in
-      :term:`bitbake:BB_HASHBASE_WHITELIST`.
+      By default, :term:`BBSERVER` also appears in :term:`BB_HASHBASE_WHITELIST`.
       Consequently, :term:`BBSERVER` is excluded from checksum and dependency
       data.
 
@@ -1472,6 +1471,18 @@
          variable only in certain contexts (e.g. when building for kernel
          and kernel module recipes).
 
+   :term:`CVE_PRODUCT`
+      In a recipe, defines the name used to match the recipe name
+      against the name in the upstream `NIST CVE database <https://nvd.nist.gov/>`__.
+
+      The default is ${:term:`BPN`}. If it does not match the name in NIST CVE
+      database or matches with multiple entries in the database, the default
+      value needs to be changed.
+
+      Here is an example from the :oe_layerindex:`Berkeley DB recipe </layerindex/recipe/544>`::
+
+         CVE_PRODUCT = "oracle_berkeley_db berkeley_db"
+
    :term:`CVSDIR`
       The directory in which files checked out under the CVS system are
       stored.
@@ -1638,8 +1649,8 @@
 
       For information on runtime dependencies, see the
       :term:`RDEPENDS` variable. You can also see the
-      ":ref:`Tasks <bitbake:bitbake-user-manual/bitbake-user-manual-metadata:tasks>`" and
-      ":ref:`Dependencies <bitbake:bitbake-user-manual/bitbake-user-manual-execution:dependencies>`" sections in the
+      ":ref:`bitbake:bitbake-user-manual/bitbake-user-manual-metadata:tasks`" and
+      ":ref:`bitbake:bitbake-user-manual/bitbake-user-manual-execution:dependencies`" sections in the
       BitBake User Manual for additional information on tasks and
       dependencies.
 
@@ -6105,8 +6116,8 @@
 
       For information on build-time dependencies, see the
       :term:`DEPENDS` variable. You can also see the
-      ":ref:`Tasks <bitbake:bitbake-user-manual/bitbake-user-manual-metadata:tasks>`" and
-      ":ref:`Dependencies <bitbake:bitbake-user-manual/bitbake-user-manual-execution:dependencies>`" sections in the
+      ":ref:`bitbake:bitbake-user-manual/bitbake-user-manual-metadata:tasks`" and
+      ":ref:`bitbake:bitbake-user-manual/bitbake-user-manual-execution:dependencies`" sections in the
       BitBake User Manual for additional information on tasks and
       dependencies.
 
@@ -6500,7 +6511,7 @@
 
       - :term:`CONF_VERSION`
       - :term:`BB_NUMBER_THREADS`
-      - :term:`bitbake:BB_NUMBER_PARSE_THREADS`
+      - :term:`BB_NUMBER_PARSE_THREADS`
       - :term:`PARALLEL_MAKE`
       - :term:`PRSERV_HOST`
       - :term:`SSTATE_MIRRORS` :term:`DL_DIR`
@@ -6951,7 +6962,7 @@
       protocols are highly dependent on particular BitBake Fetcher
       submodules. Depending on the fetcher BitBake uses, various URL
       parameters are employed. For specifics on the supported Fetchers, see
-      the ":ref:`Fetchers <bitbake:bitbake-user-manual/bitbake-user-manual-fetching:fetchers>`" section in the
+      the ":ref:`bitbake:bitbake-user-manual/bitbake-user-manual-fetching:fetchers`" section in the
       BitBake User Manual.
 
       -  ``file://`` - Fetches files, which are usually files shipped
diff --git a/poky/documentation/releases.rst b/poky/documentation/releases.rst
index d6e1fb3..3ace7c0 100644
--- a/poky/documentation/releases.rst
+++ b/poky/documentation/releases.rst
@@ -10,6 +10,7 @@
 
 - :yocto_docs:`3.3 Documentation </3.3>`
 - :yocto_docs:`3.3.1 Documentation </3.3.1>`
+- :yocto_docs:`3.3.2 Documentation </3.3.2>`
 
 *******************************
 Release Series 3.2 (gatesgarth)
diff --git a/poky/documentation/sdk-manual/extensible.rst b/poky/documentation/sdk-manual/extensible.rst
index 5520a07..2cdb06d 100644
--- a/poky/documentation/sdk-manual/extensible.rst
+++ b/poky/documentation/sdk-manual/extensible.rst
@@ -614,7 +614,7 @@
 or out of the ``devtool``
 :ref:`devtool-the-workspace-layer-structure`,
 and work with any source file forms that the
-:ref:`fetchers <bitbake:bitbake-user-manual/bitbake-user-manual-fetching:fetchers>` support.
+:ref:`bitbake:bitbake-user-manual/bitbake-user-manual-fetching:fetchers` support.
 
 The following diagram shows the common development flow used with the
 ``devtool upgrade`` command:
diff --git a/poky/documentation/sphinx-static/switchers.js b/poky/documentation/sphinx-static/switchers.js
index 6364935..3972b48 100644
--- a/poky/documentation/sphinx-static/switchers.js
+++ b/poky/documentation/sphinx-static/switchers.js
@@ -3,7 +3,7 @@
 
   var all_versions = {
     'dev': 'dev (3.4)',
-    '3.3.1': '3.3.1',
+    '3.3.2': '3.3.2',
     '3.2.4': '3.2.4',
     '3.1.9': '3.1.9',
     '3.0.4': '3.0.4',
diff --git a/poky/documentation/test-manual/reproducible-builds.rst b/poky/documentation/test-manual/reproducible-builds.rst
index e13583c..c66c82f 100644
--- a/poky/documentation/test-manual/reproducible-builds.rst
+++ b/poky/documentation/test-manual/reproducible-builds.rst
@@ -68,6 +68,17 @@
 -  Filtering the tools available from the host's ``PATH`` to only a specific set
    of tools, set using the :term:`HOSTTOOLS` variable.
 
+.. note::
+
+   Because of an open bug in GCC, using ``DISTRO_FEATURES_append = " lto"`` or
+   adding ``-flto`` (Link Time Optimization) to ``CFLAGS`` makes the resulting
+   binary non-reproducible, in that it depends on the full absolute build path
+   to ``recipe-sysroot-native``, so installing the Yocto Project in a different
+   directory results in a different binary.
+
+   This issue is addressed by
+   :yocto_bugs:`bug 14481 -  Programs built with -flto are not reproducible</show_bug.cgi?id=14481>`.
+
 =========================================
 Can we prove the project is reproducible?
 =========================================
diff --git a/poky/meta-poky/conf/distro/include/gcsections.inc b/poky/meta-poky/conf/distro/include/gcsections.inc
index 7157373..886a005 100644
--- a/poky/meta-poky/conf/distro/include/gcsections.inc
+++ b/poky/meta-poky/conf/distro/include/gcsections.inc
@@ -2,31 +2,31 @@
 LDFLAGS_SECTION_REMOVAL = "-Wl,--gc-sections"
 
 # packages with build problems using sections
-CFLAGS_SECTION_REMOVAL_pn-glibc = ""
-LDFLAGS_SECTION_REMOVAL_pn-glibc = ""
-CFLAGS_SECTION_REMOVAL_pn-cairo = ""
-LDFLAGS_SECTION_REMOVAL_pn-cairo = ""
-CFLAGS_SECTION_REMOVAL_pn-perl = ""
-LDFLAGS_SECTION_REMOVAL_pn-perl = ""
-CFLAGS_SECTION_REMOVAL_pn-grub-efi = ""
-LDFLAGS_SECTION_REMOVAL_pn-grub-efi = ""
-CFLAGS_SECTION_REMOVAL_pn-grub = ""
-LDFLAGS_SECTION_REMOVAL_pn-grub = ""
+CFLAGS_SECTION_REMOVAL:pn-glibc = ""
+LDFLAGS_SECTION_REMOVAL:pn-glibc = ""
+CFLAGS_SECTION_REMOVAL:pn-cairo = ""
+LDFLAGS_SECTION_REMOVAL:pn-cairo = ""
+CFLAGS_SECTION_REMOVAL:pn-perl = ""
+LDFLAGS_SECTION_REMOVAL:pn-perl = ""
+CFLAGS_SECTION_REMOVAL:pn-grub-efi = ""
+LDFLAGS_SECTION_REMOVAL:pn-grub-efi = ""
+CFLAGS_SECTION_REMOVAL:pn-grub = ""
+LDFLAGS_SECTION_REMOVAL:pn-grub = ""
 
 # SDK packages with build problems using sections
-CFLAGS_SECTION_REMOVAL_pn-nativesdk-glibc = ""
-LDFLAGS_SECTION_REMOVAL_pn-nativesdk-glibc = ""
-CFLAGS_SECTION_REMOVAL_pn-nativesdk-mingw-w64-runtime = ""
-LDFLAGS_SECTION_REMOVAL_pn-nativesdk-mingw-w64-runtime = ""
-CFLAGS_SECTION_REMOVAL_pn-nativesdk-perl = ""
-LDFLAGS_SECTION_REMOVAL_pn-nativesdk-perl = ""
-CFLAGS_SECTION_REMOVAL_pn-nativesdk-mingw-w64-winpthreads = ""
-LDFLAGS_SECTION_REMOVAL_pn-nativesdk-mingw-w64-winpthreads = ""
+CFLAGS_SECTION_REMOVAL:pn-nativesdk-glibc = ""
+LDFLAGS_SECTION_REMOVAL:pn-nativesdk-glibc = ""
+CFLAGS_SECTION_REMOVAL:pn-nativesdk-mingw-w64-runtime = ""
+LDFLAGS_SECTION_REMOVAL:pn-nativesdk-mingw-w64-runtime = ""
+CFLAGS_SECTION_REMOVAL:pn-nativesdk-perl = ""
+LDFLAGS_SECTION_REMOVAL:pn-nativesdk-perl = ""
+CFLAGS_SECTION_REMOVAL:pn-nativesdk-mingw-w64-winpthreads = ""
+LDFLAGS_SECTION_REMOVAL:pn-nativesdk-mingw-w64-winpthreads = ""
 
 # set default for target
-CFLAGS_append_class-target = " ${CFLAGS_SECTION_REMOVAL}"
-LDFLAGS_append_class-target = " ${LDFLAGS_SECTION_REMOVAL}"
+CFLAGS:append:class-target = " ${CFLAGS_SECTION_REMOVAL}"
+LDFLAGS:append:class-target = " ${LDFLAGS_SECTION_REMOVAL}"
 
 # set default for nativesdk
-CFLAGS_append_class-nativesdk = " ${CFLAGS_SECTION_REMOVAL}"
-LDFLAGS_append_class-nativesdk = " ${LDFLAGS_SECTION_REMOVAL}"
+CFLAGS:append:class-nativesdk = " ${CFLAGS_SECTION_REMOVAL}"
+LDFLAGS:append:class-nativesdk = " ${LDFLAGS_SECTION_REMOVAL}"
diff --git a/poky/meta-poky/conf/distro/include/poky-distro-alt-test-config.inc b/poky/meta-poky/conf/distro/include/poky-distro-alt-test-config.inc
index 273ebfd..9c2d7753 100644
--- a/poky/meta-poky/conf/distro/include/poky-distro-alt-test-config.inc
+++ b/poky/meta-poky/conf/distro/include/poky-distro-alt-test-config.inc
@@ -1,8 +1,8 @@
 # Add an extra DISTRO_FEATURE
-DISTRO_FEATURES_append = " pam"
+DISTRO_FEATURES:append = " pam"
 
 # Use the LTSI Kernel
 PREFERRED_VERSION_linux-yocto = "5.4%"
 
 # Ensure the kernel nfs server is enabled
-KERNEL_FEATURES_append_pn-linux-yocto = " features/nfsd/nfsd-enable.scc"
+KERNEL_FEATURES:append:pn-linux-yocto = " features/nfsd/nfsd-enable.scc"
diff --git a/poky/meta-poky/conf/distro/include/poky-floating-revisions.inc b/poky/meta-poky/conf/distro/include/poky-floating-revisions.inc
index 4812959..78c9e36 100644
--- a/poky/meta-poky/conf/distro/include/poky-floating-revisions.inc
+++ b/poky/meta-poky/conf/distro/include/poky-floating-revisions.inc
@@ -7,45 +7,45 @@
 #SRCREV_pn-opkg ?= "${AUTOREV}"
 #SRCREV_pn-opkg-utils-native ?= "${AUTOREV}"
 #SRCREV_pn-opkg-utils ?= "${AUTOREV}"
-SRCREV_pn-gconf-dbus ?= "${AUTOREV}"
-SRCREV_pn-matchbox-common ?= "${AUTOREV}"
-SRCREV_pn-matchbox-config-gtk ?= "${AUTOREV}"
-SRCREV_pn-matchbox-desktop ?= "${AUTOREV}"
-SRCREV_pn-matchbox-keyboard ?= "${AUTOREV}"
-SRCREV_pn-matchbox-panel-2 ?= "${AUTOREV}"
-SRCREV_pn-matchbox-themes-extra ?= "${AUTOREV}"
-SRCREV_pn-matchbox-terminal ?= "${AUTOREV}"
-SRCREV_pn-matchbox-wm ?= "${AUTOREV}"
-SRCREV_pn-settings-daemon ?= "${AUTOREV}"
-SRCREV_pn-screenshot ?= "${AUTOREV}"
-SRCREV_pn-libfakekey ?= "${AUTOREV}"
-SRCREV_pn-psplash ?= "${AUTOREV}"
-SRCREV_pn-gtk-sato-engine ?= "${AUTOREV}"
-SRCREV_pn-matchbox-theme-sato ?= "${AUTOREV}"
-SRCREV_pn-sato-icon-theme ?= "${AUTOREV}"
-SRCREV_pn-matchbox-desktop-sato ?= "${AUTOREV}"
-SRCREV_pn-oh-puzzles ?= "${AUTOREV}"
-SRCREV_pn-libowl ?= "${AUTOREV}"
-SRCREV_pn-libmatchbox ?= "${AUTOREV}"
-SRCREV_pn-ofono ?= "${AUTOREV}"
+SRCREV:pn-gconf-dbus ?= "${AUTOREV}"
+SRCREV:pn-matchbox-common ?= "${AUTOREV}"
+SRCREV:pn-matchbox-config-gtk ?= "${AUTOREV}"
+SRCREV:pn-matchbox-desktop ?= "${AUTOREV}"
+SRCREV:pn-matchbox-keyboard ?= "${AUTOREV}"
+SRCREV:pn-matchbox-panel-2 ?= "${AUTOREV}"
+SRCREV:pn-matchbox-themes-extra ?= "${AUTOREV}"
+SRCREV:pn-matchbox-terminal ?= "${AUTOREV}"
+SRCREV:pn-matchbox-wm ?= "${AUTOREV}"
+SRCREV:pn-settings-daemon ?= "${AUTOREV}"
+SRCREV:pn-screenshot ?= "${AUTOREV}"
+SRCREV:pn-libfakekey ?= "${AUTOREV}"
+SRCREV:pn-psplash ?= "${AUTOREV}"
+SRCREV:pn-gtk-sato-engine ?= "${AUTOREV}"
+SRCREV:pn-matchbox-theme-sato ?= "${AUTOREV}"
+SRCREV:pn-sato-icon-theme ?= "${AUTOREV}"
+SRCREV:pn-matchbox-desktop-sato ?= "${AUTOREV}"
+SRCREV:pn-oh-puzzles ?= "${AUTOREV}"
+SRCREV:pn-libowl ?= "${AUTOREV}"
+SRCREV:pn-libmatchbox ?= "${AUTOREV}"
+SRCREV:pn-ofono ?= "${AUTOREV}"
 
-SRCREV_pn-dri2proto = "${AUTOREV}"
+SRCREV:pn-dri2proto = "${AUTOREV}"
 #PREFERRED_VERSION_dri2proto ?= "1.99.1+git%"
-SRCREV_pn-libdrm = "${AUTOREV}"
+SRCREV:pn-libdrm = "${AUTOREV}"
 #PREFERRED_VERSION_libdrm ?= "2.4.0+git%"
-SRCREV_pn-libxcb = "${AUTOREV}"
+SRCREV:pn-libxcb = "${AUTOREV}"
 #PREFERRED_VERSION_libxcb ?= "1.1.90.1+gitr%"
-SRCREV_pn-lib-proto = "${AUTOREV}"
+SRCREV:pn-lib-proto = "${AUTOREV}"
 #PREFERRED_VERSION_xcb-proto ?= "1.2+gitr%"
-SRCREV_pn-libxcb-sdk = "${AUTOREV}"
+SRCREV:pn-libxcb-sdk = "${AUTOREV}"
 #PREFERRED_VERSION_libxcb-sdk ?= "1.1.90.1+gitr%"
-SRCREV_pn-xf86-input-evdev = "${AUTOREV}"
+SRCREV:pn-xf86-input-evdev = "${AUTOREV}"
 #PREFERRED_VERSION_xf86-input-evdev ?= "2.0.4"
-SRCREV_pn-xf86-input-mouse = "${AUTOREV}"
+SRCREV:pn-xf86-input-mouse = "${AUTOREV}"
 #PREFERRED_VERSION_xf86-input-mouse ?= "1.3.0+git%"
-SRCREV_pn-xf86-input-keyboard = "${AUTOREV}"
+SRCREV:pn-xf86-input-keyboard = "${AUTOREV}"
 #PREFERRED_VERSION_xf86-input-keyboard ?= "1.3.1+git%"
-SRCREV_pn-xf86-input-synaptics = "${AUTOREV}"
+SRCREV:pn-xf86-input-synaptics = "${AUTOREV}"
 #PREFERRED_VERSION_xf86-input-synaptics ?= "0.15.2+git%"
 
 #SRCDATE_oprofile ?= "${DATE}"
diff --git a/poky/meta-poky/conf/distro/poky-altcfg.conf b/poky/meta-poky/conf/distro/poky-altcfg.conf
index 177bf8d..fbfabec 100644
--- a/poky/meta-poky/conf/distro/poky-altcfg.conf
+++ b/poky/meta-poky/conf/distro/poky-altcfg.conf
@@ -10,6 +10,6 @@
 
 INIT_MANAGER ?= "systemd"
 # systemd isn't suitable with musl
-INIT_MANAGER_libc-musl ?= "sysvinit"
+INIT_MANAGER:libc-musl ?= "sysvinit"
 
 require conf/distro/include/poky-distro-alt-test-config.inc
diff --git a/poky/meta-poky/conf/distro/poky-tiny.conf b/poky/meta-poky/conf/distro/poky-tiny.conf
index 8545341..c25e50c 100644
--- a/poky/meta-poky/conf/distro/poky-tiny.conf
+++ b/poky/meta-poky/conf/distro/poky-tiny.conf
@@ -57,7 +57,7 @@
 # in the LIBC features below.
 # Leave native enable to avoid build failures
 ENABLE_WIDEC = "false"
-ENABLE_WIDEC_class-native = "true"
+ENABLE_WIDEC:class-native = "true"
 
 # Drop native language support. This removes the
 # eglibc->bash->gettext->libc-posix-clang-wchar dependency.
@@ -80,11 +80,10 @@
                   "
 
 # Enable LFS - see bug YOCTO #5865
-DISTRO_FEATURES_append_libc-uclibc = " largefile"
-DISTRO_FEATURES_append_libc-musl = " largefile"
+DISTRO_FEATURES:append:libc-musl = " largefile"
 
-DISTRO_FEATURES_class-native = "${DISTRO_FEATURES_DEFAULT} ${POKY_DEFAULT_DISTRO_FEATURES}"
-DISTRO_FEATURES_class-nativesdk = "${DISTRO_FEATURES_DEFAULT} ${POKY_DEFAULT_DISTRO_FEATURES}"
+DISTRO_FEATURES:class-native = "${DISTRO_FEATURES_DEFAULT} ${POKY_DEFAULT_DISTRO_FEATURES}"
+DISTRO_FEATURES:class-nativesdk = "${DISTRO_FEATURES_DEFAULT} ${POKY_DEFAULT_DISTRO_FEATURES}"
 
 # enable mdev/busybox for init
 INIT_MANAGER ?= "mdev-busybox"
@@ -111,7 +110,7 @@
 # The mtrace script included by eglibc is a perl script. This means the system
 # will build perl in case this package is installed. Since we don't care about
 # this script for the purposes of tiny, remove the dependency from here.
-RDEPENDS_${PN}-mtrace_pn-eglibc = ""
+RDEPENDS:${PN}-mtrace:pn-eglibc = ""
 
 PNBLACKLIST[build-appliance-image] = "not buildable with poky-tiny"
 PNBLACKLIST[core-image-base] = "not buildable with poky-tiny"
@@ -125,4 +124,4 @@
 PNBLACKLIST[core-image-weston] = "not buildable with poky-tiny"
 
 # Disable python usage in opkg-utils since it won't build with tiny config
-PACKAGECONFIG_remove_pn-opkg-utils = "python"
+PACKAGECONFIG:remove:pn-opkg-utils = "python"
diff --git a/poky/meta-poky/conf/distro/poky.conf b/poky/meta-poky/conf/distro/poky.conf
index 522cc92..c7c46cd 100644
--- a/poky/meta-poky/conf/distro/poky.conf
+++ b/poky/meta-poky/conf/distro/poky.conf
@@ -10,7 +10,7 @@
 
 TARGET_VENDOR = "-poky"
 
-LOCALCONF_VERSION = "1"
+LOCALCONF_VERSION = "2"
 
 # Override these in poky based distros
 POKY_DEFAULT_DISTRO_FEATURES = "largefile opengl ptest multiarch wayland vulkan"
@@ -23,7 +23,7 @@
 PREFERRED_VERSION_linux-yocto-rt ?= "5.10%"
 
 SDK_NAME = "${DISTRO}-${TCLIBC}-${SDKMACHINE}-${IMAGE_BASENAME}-${TUNE_PKGARCH}-${MACHINE}"
-SDKPATH = "/opt/${DISTRO}/${SDK_VERSION}"
+SDKPATHINSTALL = "/opt/${DISTRO}/${SDK_VERSION}"
 
 DISTRO_EXTRA_RDEPENDS += "${POKY_DEFAULT_EXTRA_RDEPENDS}"
 DISTRO_EXTRA_RRECOMMENDS += "${POKY_DEFAULT_EXTRA_RRECOMMENDS}"
diff --git a/poky/meta-poky/conf/layer.conf b/poky/meta-poky/conf/layer.conf
index 22f7fe2..2d49616 100644
--- a/poky/meta-poky/conf/layer.conf
+++ b/poky/meta-poky/conf/layer.conf
@@ -9,7 +9,7 @@
 BBFILE_PATTERN_yocto = "^${LAYERDIR}/"
 BBFILE_PRIORITY_yocto = "5"
 
-LAYERSERIES_COMPAT_yocto = "hardknott"
+LAYERSERIES_COMPAT_yocto = "honister"
 
 # This should only be incremented on significant changes that will
 # cause compatibility issues with other layers
diff --git a/poky/meta-poky/conf/local.conf.sample b/poky/meta-poky/conf/local.conf.sample
index fb14379..f1f6d69 100644
--- a/poky/meta-poky/conf/local.conf.sample
+++ b/poky/meta-poky/conf/local.conf.sample
@@ -148,8 +148,7 @@
 # enable extra features. Some available options which can be included in this variable
 # are:
 #   - 'buildstats' collect build statistics
-#   - 'image-prelink' in order to prelink the filesystem image
-USER_CLASSES ?= "buildstats image-prelink"
+USER_CLASSES ?= "buildstats"
 
 #
 # Runtime testing of images
@@ -235,14 +234,14 @@
 #
 # By default native qemu will build with a builtin VNC server where graphical output can be
 # seen. The line below enables the SDL UI frontend too.
-PACKAGECONFIG_append_pn-qemu-system-native = " sdl"
+PACKAGECONFIG:append:pn-qemu-system-native = " sdl"
 # By default libsdl2-native will be built, if you want to use your host's libSDL instead of 
 # the minimal libsdl built by libsdl2-native then uncomment the ASSUME_PROVIDED line below.
 #ASSUME_PROVIDED += "libsdl2-native"
 
 # You can also enable the Gtk UI frontend, which takes somewhat longer to build, but adds
 # a handy set of menus for controlling the emulator.
-#PACKAGECONFIG_append_pn-qemu-system-native = " gtk+"
+#PACKAGECONFIG:append:pn-qemu-system-native = " gtk+"
 
 #
 # Hash Equivalence
@@ -271,4 +270,4 @@
 # CONF_VERSION is increased each time build/conf/ changes incompatibly and is used to
 # track the version of this file when it was generated. This can safely be ignored if
 # this doesn't mean anything to you.
-CONF_VERSION = "1"
+CONF_VERSION = "2"
diff --git a/poky/meta-poky/conf/local.conf.sample.extended b/poky/meta-poky/conf/local.conf.sample.extended
index a670c74..17e9582 100644
--- a/poky/meta-poky/conf/local.conf.sample.extended
+++ b/poky/meta-poky/conf/local.conf.sample.extended
@@ -33,8 +33,8 @@
 
 # If you want to get an image based on directfb without x11 alter
 # DISTRO_FEATURES:
-DISTRO_FEATURES_append = " directfb"
-DISTRO_FEATURES_remove = "x11"
+DISTRO_FEATURES:append = " directfb"
+DISTRO_FEATURES:remove = "x11"
 
 # ENABLE_BINARY_LOCALE_GENERATION controls the generation of binary locale
 # packages at build time using qemu-native. Disabling it (by setting it to 0)
@@ -380,7 +380,7 @@
 # Enable LTO system-wide
 #
 #require conf/distro/include/lto.inc
-#DISTRO_FEATURES_append = " lto"
+#DISTRO_FEATURES:append = " lto"
 
 #
 # Set PS1 for SDK
diff --git a/poky/meta-poky/recipes-core/busybox/busybox_%.bbappend b/poky/meta-poky/recipes-core/busybox/busybox_%.bbappend
index 0005787..46dfc12 100644
--- a/poky/meta-poky/recipes-core/busybox/busybox_%.bbappend
+++ b/poky/meta-poky/recipes-core/busybox/busybox_%.bbappend
@@ -1,2 +1,2 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${BPN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${BPN}:"
 
diff --git a/poky/meta-poky/recipes-core/psplash/psplash_git.bbappend b/poky/meta-poky/recipes-core/psplash/psplash_git.bbappend
index 433ef66..1533b13 100644
--- a/poky/meta-poky/recipes-core/psplash/psplash_git.bbappend
+++ b/poky/meta-poky/recipes-core/psplash/psplash_git.bbappend
@@ -1,2 +1,2 @@
-FILESEXTRAPATHS_prepend_poky := "${THISDIR}/files:"
+FILESEXTRAPATHS:prepend:poky := "${THISDIR}/files:"
 
diff --git a/poky/meta-poky/recipes-core/tiny-init/tiny-init.bb b/poky/meta-poky/recipes-core/tiny-init/tiny-init.bb
index 44c8e1b..1de4f5e 100644
--- a/poky/meta-poky/recipes-core/tiny-init/tiny-init.bb
+++ b/poky/meta-poky/recipes-core/tiny-init/tiny-init.bb
@@ -5,7 +5,7 @@
 
 PR = "r2"
 
-RDEPENDS_${PN} = "busybox"
+RDEPENDS:${PN} = "busybox"
 
 SRC_URI = "file://init \
 	   file://rc.local.sample \
@@ -27,5 +27,5 @@
 	install -m 0755 ${WORKDIR}/rc.local.sample ${D}${sysconfdir}
 }
 
-FILES_${PN} = "/init ${sysconfdir}/rc.local.sample"
-RCONFLICTS_${PN} = "systemd"
+FILES:${PN} = "/init ${sysconfdir}/rc.local.sample"
+RCONFLICTS:${PN} = "systemd"
diff --git a/poky/meta-selftest/recipes-devtools/python/python-async-test.inc b/poky/meta-selftest/recipes-devtools/python/python-async-test.inc
index c9602e8..439a0b9 100644
--- a/poky/meta-selftest/recipes-devtools/python/python-async-test.inc
+++ b/poky/meta-selftest/recipes-devtools/python/python-async-test.inc
@@ -11,6 +11,6 @@
 SRC_URI[md5sum] = "9b06b5997de2154f3bc0273f80bcef6b"
 SRC_URI[sha256sum] = "ac6894d876e45878faae493b0cf61d0e28ec417334448ac0a6ea2229d8343051"
 
-RDEPENDS_${PN} += "${PYTHON_PN}-threading"
+RDEPENDS:${PN} += "${PYTHON_PN}-threading"
 
 BBCLASSEXTEND = "nativesdk"
diff --git a/poky/meta-selftest/recipes-test/aspell/aspell_0.0.0.1.bb b/poky/meta-selftest/recipes-test/aspell/aspell_0.0.0.1.bb
index dcf6c8b..d6f3628 100644
--- a/poky/meta-selftest/recipes-test/aspell/aspell_0.0.0.1.bb
+++ b/poky/meta-selftest/recipes-test/aspell/aspell_0.0.0.1.bb
@@ -20,15 +20,15 @@
 
 PACKAGES += "libaspell libpspell libpspell-dev aspell-utils"
 
-FILES_${PN}-dbg += "${libdir}/aspell-0.60/.debu*"
-FILES_libaspell = "${libdir}/libaspell.so.* ${libdir}/aspell*"
-FILES_aspell-utils = "${bindir}/word-list-compress ${bindir}/aspell-import ${bindir}/run-with-aspell ${bindir}/pre*"
-FILES_${PN} = "${bindir}/aspell"
-FILES_libpspell = "${libdir}/libpspell.so.*"
-FILES_libpspell-dev = "${libdir}/libpspell* ${bindir}/pspell-config ${includedir}/pspell"
+FILES:${PN}-dbg += "${libdir}/aspell-0.60/.debu*"
+FILES:libaspell = "${libdir}/libaspell.so.* ${libdir}/aspell*"
+FILES:aspell-utils = "${bindir}/word-list-compress ${bindir}/aspell-import ${bindir}/run-with-aspell ${bindir}/pre*"
+FILES:${PN} = "${bindir}/aspell"
+FILES:libpspell = "${libdir}/libpspell.so.*"
+FILES:libpspell-dev = "${libdir}/libpspell* ${bindir}/pspell-config ${includedir}/pspell"
 
-ARM_INSTRUCTION_SET_armv4 = "arm"
-ARM_INSTRUCTION_SET_armv5 = "arm"
-ARM_INSTRUCTION_SET_armv6 = "arm"
+ARM_INSTRUCTION_SET:armv4 = "arm"
+ARM_INSTRUCTION_SET:armv5 = "arm"
+ARM_INSTRUCTION_SET:armv6 = "arm"
 
 inherit autotools gettext
diff --git a/poky/meta-selftest/recipes-test/container-image/container-image-testpkg.bb b/poky/meta-selftest/recipes-test/container-image/container-image-testpkg.bb
index f8dd229..929bc29 100644
--- a/poky/meta-selftest/recipes-test/container-image/container-image-testpkg.bb
+++ b/poky/meta-selftest/recipes-test/container-image/container-image-testpkg.bb
@@ -2,7 +2,7 @@
 
 INHIBIT_DEFAULT_DEPS = "1"
 
-do_install_append() {
+do_install:append() {
     install -d ${D}${bindir}
     touch ${D}${bindir}/theapp
 }
diff --git a/poky/meta-selftest/recipes-test/devtool/devtool-patch-overrides.bb b/poky/meta-selftest/recipes-test/devtool/devtool-patch-overrides.bb
index d36c9ed..f12bee0 100644
--- a/poky/meta-selftest/recipes-test/devtool/devtool-patch-overrides.bb
+++ b/poky/meta-selftest/recipes-test/devtool/devtool-patch-overrides.bb
@@ -4,5 +4,5 @@
 EXCLUDE_FROM_WORLD = "1"
 
 SRC_URI = "file://source;subdir=${BP}"
-SRC_URI_append_qemuarm = " file://arm.patch;striplevel=0"
-SRC_URI_append_qemux86 = " file://x86.patch;striplevel=0"
+SRC_URI:append:qemuarm = " file://arm.patch;striplevel=0"
+SRC_URI:append:qemux86 = " file://x86.patch;striplevel=0"
diff --git a/poky/meta-selftest/recipes-test/images/wic-image-minimal.bb b/poky/meta-selftest/recipes-test/images/wic-image-minimal.bb
index 1cb0198..84d3721 100644
--- a/poky/meta-selftest/recipes-test/images/wic-image-minimal.bb
+++ b/poky/meta-selftest/recipes-test/images/wic-image-minimal.bb
@@ -7,9 +7,9 @@
 IMAGE_FSTYPES = "wic"
 
 WKS_FILE_DEPENDS = "dosfstools-native mtools-native gptfdisk-native"
-WKS_FILE_DEPENDS_append_x86 = " syslinux-native syslinux"
-WKS_FILE_DEPENDS_append_x86-64 = " syslinux-native syslinux"
-WKS_FILE_DEPENDS_append_x86-x32 = " syslinux-native syslinux"
+WKS_FILE_DEPENDS:append:x86 = " syslinux-native syslinux"
+WKS_FILE_DEPENDS:append:x86-64 = " syslinux-native syslinux"
+WKS_FILE_DEPENDS:append:x86-x32 = " syslinux-native syslinux"
 
 LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
 
diff --git a/poky/meta-selftest/recipes-test/multiconfig/multiconfig-image-packager_0.1.bb b/poky/meta-selftest/recipes-test/multiconfig/multiconfig-image-packager_0.1.bb
index a76a6be..daf2834 100644
--- a/poky/meta-selftest/recipes-test/multiconfig/multiconfig-image-packager_0.1.bb
+++ b/poky/meta-selftest/recipes-test/multiconfig/multiconfig-image-packager_0.1.bb
@@ -1,10 +1,10 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
 
-MCMACHINE_virtclass-mcextend-musl = "qemux86-64"
-MCMACHINE_virtclass-mcextend-tiny = "qemux86"
-MCIMGTYPE_virtclass-mcextend-musl = "ext4"
-MCIMGTYPE_virtclass-mcextend-tiny = "cpio.gz"
+MCMACHINE:virtclass-mcextend-musl = "qemux86-64"
+MCMACHINE:virtclass-mcextend-tiny = "qemux86"
+MCIMGTYPE:virtclass-mcextend-musl = "ext4"
+MCIMGTYPE:virtclass-mcextend-tiny = "cpio.gz"
 
 MC_DEPLOY_DIR_IMAGE = "${TOPDIR}/tmp-mc-${MCNAME}/deploy/images/${MCMACHINE}"
 
diff --git a/poky/meta-selftest/recipes-test/postinst/postinst_1.0.bb b/poky/meta-selftest/recipes-test/postinst/postinst_1.0.bb
index 913bfab..b936c4f 100644
--- a/poky/meta-selftest/recipes-test/postinst/postinst_1.0.bb
+++ b/poky/meta-selftest/recipes-test/postinst/postinst_1.0.bb
@@ -5,19 +5,19 @@
 
 PACKAGES = "${PN}-rootfs ${PN}-delayed-a ${PN}-delayed-b ${PN}-rootfs-failing"
 
-ALLOW_EMPTY_${PN}-rootfs = "1"
-ALLOW_EMPTY_${PN}-delayed-a = "1"
-ALLOW_EMPTY_${PN}-delayed-b = "1"
-ALLOW_EMPTY_${PN}-rootfs-failing = "1"
+ALLOW_EMPTY:${PN}-rootfs = "1"
+ALLOW_EMPTY:${PN}-delayed-a = "1"
+ALLOW_EMPTY:${PN}-delayed-b = "1"
+ALLOW_EMPTY:${PN}-rootfs-failing = "1"
 
-RDEPENDS_${PN}-delayed-a = "${PN}-rootfs"
-RDEPENDS_${PN}-delayed-b = "${PN}-delayed-a"
+RDEPENDS:${PN}-delayed-a = "${PN}-rootfs"
+RDEPENDS:${PN}-delayed-b = "${PN}-delayed-a"
 
 TESTDIR = "${sysconfdir}/postinst-test"
 
 # At rootfs time touch $TESTDIR/rootfs.  Errors if the file already exists, or
 # if the function runs on first boot.
-pkg_postinst_${PN}-rootfs () {
+pkg_postinst:${PN}-rootfs () {
     set -e
 
     if [ -z "$D" ]; then
@@ -36,7 +36,7 @@
 
 # Depends on rootfs, delays until first boot, verifies that the rootfs file was
 # written.
-pkg_postinst_ontarget_${PN}-delayed-a () {
+pkg_postinst_ontarget:${PN}-delayed-a () {
     set -e
 
     if [ ! -e ${TESTDIR}/rootfs ]; then
@@ -49,7 +49,7 @@
 
 # Depends on delayed-a, delays until first boot, verifies that the delayed-a file was
 # written. This verifies the ordering between delayed postinsts.
-pkg_postinst_ontarget_${PN}-delayed-b () {
+pkg_postinst_ontarget:${PN}-delayed-b () {
     set -e
 
     if [ ! -e ${TESTDIR}/delayed-a ]; then
@@ -62,7 +62,7 @@
 
 # This scriptlet intentionally includes a bogus command in the middle to test 
 # that we catch and report such errors properly.
-pkg_postinst_${PN}-rootfs-failing () {
+pkg_postinst:${PN}-rootfs-failing () {
     mkdir -p $D${TESTDIR}
     touch $D${TESTDIR}/rootfs-before-failure
     run_a_really_broken_command
diff --git a/poky/meta-selftest/recipes-test/recipetool/selftest-recipetool-appendfile.bb b/poky/meta-selftest/recipes-test/recipetool/selftest-recipetool-appendfile.bb
index b5f9767..e127b48 100644
--- a/poky/meta-selftest/recipes-test/recipetool/selftest-recipetool-appendfile.bb
+++ b/poky/meta-selftest/recipes-test/recipetool/selftest-recipetool-appendfile.bb
@@ -34,9 +34,9 @@
 	install_extrafunc
 }
 
-pkg_postinst_${PN} () {
+pkg_postinst:${PN} () {
 	echo "Test file installed by postinst" > $D${datadir}/selftest-replaceme-postinst
 }
 
-FILES_${PN} += "${datadir}"
+FILES:${PN} += "${datadir}"
 
diff --git a/poky/meta-selftest/recipes-test/recipeutils/recipeutils-test_1.2.bb b/poky/meta-selftest/recipes-test/recipeutils/recipeutils-test_1.2.bb
index 0cd0494..062d6a7 100644
--- a/poky/meta-selftest/recipes-test/recipeutils/recipeutils-test_1.2.bb
+++ b/poky/meta-selftest/recipes-test/recipeutils/recipeutils-test_1.2.bb
@@ -10,4 +10,4 @@
 
 SRC_URI += "file://somefile"
 
-SRC_URI_append = " file://anotherfile"
+SRC_URI:append = " file://anotherfile"
diff --git a/poky/meta-selftest/recipes-test/selftest-chown/selftest-chown.bb b/poky/meta-selftest/recipes-test/selftest-chown/selftest-chown.bb
index 440471f..aa6ce0c 100644
--- a/poky/meta-selftest/recipes-test/selftest-chown/selftest-chown.bb
+++ b/poky/meta-selftest/recipes-test/selftest-chown/selftest-chown.bb
@@ -10,7 +10,7 @@
 inherit useradd allarch
 
 USERADD_PACKAGES = "${PN}"
-USERADD_PARAM_${PN} = "-u 1234 -M test"
+USERADD_PARAM:${PN} = "-u 1234 -M test"
 TESTDIR = "${D}${sysconfdir}/selftest-chown"
 
 do_install() {
@@ -27,4 +27,4 @@
 	chown -R test:test ${TESTDIR}/fifotest
 }
 
-FILES_${PN} = "${sysconfdir}/selftest-chown/*"
+FILES:${PN} = "${sysconfdir}/selftest-chown/*"
diff --git a/poky/meta-selftest/recipes-test/selftest-ed/selftest-ed_0.5.bb b/poky/meta-selftest/recipes-test/selftest-ed/selftest-ed_0.5.bb
index 4f713f5..7595e8e 100644
--- a/poky/meta-selftest/recipes-test/selftest-ed/selftest-ed_0.5.bb
+++ b/poky/meta-selftest/recipes-test/selftest-ed/selftest-ed_0.5.bb
@@ -17,8 +17,8 @@
 
 EXTRA_OECONF = "'CC=${CC}' 'CXX=${CXX}' 'CFLAGS=${CFLAGS}' 'CXXFLAGS=${CXXFLAGS}' 'CPPFLAGS=${CPPFLAGS}' 'LDFLAGS=${LDFLAGS}'"
 
-CONFIGUREOPTS_remove = "--disable-dependency-tracking"
-CONFIGUREOPTS_remove = "--disable-silent-rules"
-EXTRA_OECONF_remove = "--disable-static"
+CONFIGUREOPTS:remove = "--disable-dependency-tracking"
+CONFIGUREOPTS:remove = "--disable-silent-rules"
+EXTRA_OECONF:remove = "--disable-static"
 
 BBCLASSEXTEND = "native"
diff --git a/poky/meta-selftest/recipes-test/selftest-hardlink/selftest-hardlink.bb b/poky/meta-selftest/recipes-test/selftest-hardlink/selftest-hardlink.bb
index 842a977..be346b8 100644
--- a/poky/meta-selftest/recipes-test/selftest-hardlink/selftest-hardlink.bb
+++ b/poky/meta-selftest/recipes-test/selftest-hardlink/selftest-hardlink.bb
@@ -25,6 +25,6 @@
 	dd if=/dev/zero of=${D}${bindir}/sparsetest bs=1 count=0 seek=1M
 }
 
-RDEPENDS_${PN}-gdb += "gdb"
+RDEPENDS:${PN}-gdb += "gdb"
 PACKAGES =+ "${PN}-gdb"
-FILES_${PN}-gdb = "${bindir}/gdb.sh"
+FILES:${PN}-gdb = "${bindir}/gdb.sh"
diff --git a/poky/meta-skeleton/conf/multilib-example.conf b/poky/meta-skeleton/conf/multilib-example.conf
index da6da7f..07fd7b6 100644
--- a/poky/meta-skeleton/conf/multilib-example.conf
+++ b/poky/meta-skeleton/conf/multilib-example.conf
@@ -10,4 +10,4 @@
 MACHINE = "qemux86-64"
 require conf/multilib.conf
 MULTILIBS = "multilib:lib32"
-DEFAULTTUNE_virtclass-multilib-lib32 = "x86"
+DEFAULTTUNE:virtclass-multilib-lib32 = "x86"
diff --git a/poky/meta-skeleton/conf/multilib-example2.conf b/poky/meta-skeleton/conf/multilib-example2.conf
index 2596f61..39f385f 100644
--- a/poky/meta-skeleton/conf/multilib-example2.conf
+++ b/poky/meta-skeleton/conf/multilib-example2.conf
@@ -10,4 +10,4 @@
 MACHINE = "qemux86-64"
 require conf/multilib.conf
 MULTILIBS = "multilib:libx32"
-DEFAULTTUNE_virtclass-multilib-libx32 = "x86-64-x32"
+DEFAULTTUNE:virtclass-multilib-libx32 = "x86-64-x32"
diff --git a/poky/meta-skeleton/recipes-baremetal/baremetal-examples/baremetal-helloworld_git.bb b/poky/meta-skeleton/recipes-baremetal/baremetal-examples/baremetal-helloworld_git.bb
index 19ef169..37193f5 100644
--- a/poky/meta-skeleton/recipes-baremetal/baremetal-examples/baremetal-helloworld_git.bb
+++ b/poky/meta-skeleton/recipes-baremetal/baremetal-examples/baremetal-helloworld_git.bb
@@ -31,12 +31,12 @@
 COMPATIBLE_MACHINE = "qemuarmv5|qemuarm|qemuarm64|qemuriscv64"
 
 BAREMETAL_QEMUARCH ?= ""
-BAREMETAL_QEMUARCH_qemuarmv5 = "versatile"
-BAREMETAL_QEMUARCH_qemuarm = "arm"
-BAREMETAL_QEMUARCH_qemuarm64 = "aarch64"
-BAREMETAL_QEMUARCH_qemuriscv64 = "riscv64"
+BAREMETAL_QEMUARCH:qemuarmv5 = "versatile"
+BAREMETAL_QEMUARCH:qemuarm = "arm"
+BAREMETAL_QEMUARCH:qemuarm64 = "aarch64"
+BAREMETAL_QEMUARCH:qemuriscv64 = "riscv64"
 
-EXTRA_OEMAKE_append = " QEMUARCH=${BAREMETAL_QEMUARCH} V=1"
+EXTRA_OEMAKE:append = " QEMUARCH=${BAREMETAL_QEMUARCH} V=1"
 
 
 # Install binaries on the proper location for baremetal-image to fetch and deploy
@@ -46,7 +46,7 @@
     install -m 755 ${B}/build/hello_baremetal_${BAREMETAL_QEMUARCH}.elf ${D}/${base_libdir}/firmware/${BAREMETAL_BINNAME}.elf
 }
 
-FILES_${PN} += " \
+FILES:${PN} += " \
     ${base_libdir}/firmware/${BAREMETAL_BINNAME}.bin \
     ${base_libdir}/firmware/${BAREMETAL_BINNAME}.elf \
 "
diff --git a/poky/meta-skeleton/recipes-core/busybox/busybox_%.bbappend b/poky/meta-skeleton/recipes-core/busybox/busybox_%.bbappend
index 5c5e7c3..621c94f 100644
--- a/poky/meta-skeleton/recipes-core/busybox/busybox_%.bbappend
+++ b/poky/meta-skeleton/recipes-core/busybox/busybox_%.bbappend
@@ -6,8 +6,8 @@
 #
 # More details can be found in the Kernel Dev Manual
 # http://www.yoctoproject.org/docs/current/kernel-dev/kernel-dev.html#changing-the-configuration
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
 
-SRC_URI_append_mydistro += " \
+SRC_URI:append:mydistro += " \
 	    file://no_rfkill.cfg \
            "
diff --git a/poky/meta-skeleton/recipes-kernel/hello-mod/hello-mod_0.1.bb b/poky/meta-skeleton/recipes-kernel/hello-mod/hello-mod_0.1.bb
index bc9accc..4a84a9f 100644
--- a/poky/meta-skeleton/recipes-kernel/hello-mod/hello-mod_0.1.bb
+++ b/poky/meta-skeleton/recipes-kernel/hello-mod/hello-mod_0.1.bb
@@ -15,4 +15,4 @@
 # The inherit of module.bbclass will automatically name module packages with
 # "kernel-module-" prefix as required by the oe-core build environment.
 
-RPROVIDES_${PN} += "kernel-module-hello"
+RPROVIDES:${PN} += "kernel-module-hello"
diff --git a/poky/meta-skeleton/recipes-kernel/linux/linux-yocto-custom.bb b/poky/meta-skeleton/recipes-kernel/linux/linux-yocto-custom.bb
index d53f9c7..6062f84 100644
--- a/poky/meta-skeleton/recipes-kernel/linux/linux-yocto-custom.bb
+++ b/poky/meta-skeleton/recipes-kernel/linux/linux-yocto-custom.bb
@@ -57,7 +57,7 @@
 SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git;protocol=git;nocheckout=1;name=machine"
 
 LINUX_VERSION ?= "4.2"
-LINUX_VERSION_EXTENSION_append = "-custom"
+LINUX_VERSION_EXTENSION:append = "-custom"
 
 # Modify SRCREV to a different commit hash in a copy of this recipe to
 # build a different release of the Linux kernel.
diff --git a/poky/documentation/ref-manual/examples/hello-autotools/hello_2.10.bb b/poky/meta-skeleton/recipes-skeleton/hello-autotools/hello_2.10.bb
similarity index 100%
rename from poky/documentation/ref-manual/examples/hello-autotools/hello_2.10.bb
rename to poky/meta-skeleton/recipes-skeleton/hello-autotools/hello_2.10.bb
diff --git a/poky/documentation/ref-manual/examples/hello-single/files/helloworld.c b/poky/meta-skeleton/recipes-skeleton/hello-single/files/helloworld.c
similarity index 100%
rename from poky/documentation/ref-manual/examples/hello-single/files/helloworld.c
rename to poky/meta-skeleton/recipes-skeleton/hello-single/files/helloworld.c
diff --git a/poky/documentation/ref-manual/examples/hello-single/hello.bb b/poky/meta-skeleton/recipes-skeleton/hello-single/hello_1.0.bb
similarity index 100%
rename from poky/documentation/ref-manual/examples/hello-single/hello.bb
rename to poky/meta-skeleton/recipes-skeleton/hello-single/hello_1.0.bb
diff --git a/poky/documentation/ref-manual/examples/libxpm/libxpm_3.5.6.bb b/poky/meta-skeleton/recipes-skeleton/libxpm/libxpm_3.5.6.bb
similarity index 81%
rename from poky/documentation/ref-manual/examples/libxpm/libxpm_3.5.6.bb
rename to poky/meta-skeleton/recipes-skeleton/libxpm/libxpm_3.5.6.bb
index c0c8986..a1ad2e8 100644
--- a/poky/documentation/ref-manual/examples/libxpm/libxpm_3.5.6.bb
+++ b/poky/meta-skeleton/recipes-skeleton/libxpm/libxpm_3.5.6.bb
@@ -10,5 +10,5 @@
 XORG_PN = "libXpm"
 
 PACKAGES =+ "sxpm cxpm"
-FILES_cxpm = "${bindir}/cxpm"
-FILES_sxpm = "${bindir}/sxpm"
+FILES:cxpm = "${bindir}/cxpm"
+FILES:sxpm = "${bindir}/sxpm"
diff --git a/poky/meta-skeleton/recipes-skeleton/service/service_0.1.bb b/poky/meta-skeleton/recipes-skeleton/service/service_0.1.bb
index 669d173..2c048aa 100644
--- a/poky/meta-skeleton/recipes-skeleton/service/service_0.1.bb
+++ b/poky/meta-skeleton/recipes-skeleton/service/service_0.1.bb
@@ -27,6 +27,6 @@
 	install -m 0755 ${WORKDIR}/skeleton-test ${D}${sbindir}/
 }
 
-RDEPENDS_${PN} = "initscripts"
+RDEPENDS:${PN} = "initscripts"
 
-CONFFILES_${PN} += "${sysconfdir}/init.d/skeleton"
+CONFFILES:${PN} += "${sysconfdir}/init.d/skeleton"
diff --git a/poky/meta-skeleton/recipes-skeleton/useradd/useradd-example.bb b/poky/meta-skeleton/recipes-skeleton/useradd/useradd-example.bb
index 7c5b9d0..3f4c42d 100644
--- a/poky/meta-skeleton/recipes-skeleton/useradd/useradd-example.bb
+++ b/poky/meta-skeleton/recipes-skeleton/useradd/useradd-example.bb
@@ -30,19 +30,19 @@
 # useradd command. Multiple users can be created by separating
 # the commands with a semicolon. Here we'll create two users,
 # user1 and user2:
-USERADD_PARAM_${PN} = "-u 1200 -d /home/user1 -r -s /bin/bash user1; -u 1201 -d /home/user2 -r -s /bin/bash user2"
+USERADD_PARAM:${PN} = "-u 1200 -d /home/user1 -r -s /bin/bash user1; -u 1201 -d /home/user2 -r -s /bin/bash user2"
 
 # user3 will be managed in the useradd-example-user3 pacakge:
 # As an example, we use the -P option to set clear text password for user3
-USERADD_PARAM_${PN}-user3 = "-u 1202 -d /home/user3 -r -s /bin/bash -P 'user3' user3"
+USERADD_PARAM:${PN}-user3 = "-u 1202 -d /home/user3 -r -s /bin/bash -P 'user3' user3"
 
 # GROUPADD_PARAM works the same way, which you set to the options
 # you'd normally pass to the groupadd command. This will create
 # groups group1 and group2:
-GROUPADD_PARAM_${PN} = "-g 880 group1; -g 890 group2"
+GROUPADD_PARAM:${PN} = "-g 880 group1; -g 890 group2"
 
 # Likewise, we'll manage group3 in the useradd-example-user3 package:
-GROUPADD_PARAM_${PN}-user3 = "-g 900 group3"
+GROUPADD_PARAM:${PN}-user3 = "-g 900 group3"
 
 do_install () {
 	install -d -m 755 ${D}${datadir}/user1
@@ -69,8 +69,8 @@
 	chgrp -R group3 ${D}${datadir}/user3
 }
 
-FILES_${PN} = "${datadir}/user1/* ${datadir}/user2/*"
-FILES_${PN}-user3 = "${datadir}/user3/*"
+FILES:${PN} = "${datadir}/user1/* ${datadir}/user2/*"
+FILES:${PN}-user3 = "${datadir}/user3/*"
 
 # Prevents do_package failures with:
 # debugsources.list: No such file or directory:
diff --git a/poky/meta-yocto-bsp/conf/layer.conf b/poky/meta-yocto-bsp/conf/layer.conf
index caf3e4b..3053a5e 100644
--- a/poky/meta-yocto-bsp/conf/layer.conf
+++ b/poky/meta-yocto-bsp/conf/layer.conf
@@ -9,4 +9,4 @@
 BBFILE_PATTERN_yoctobsp = "^${LAYERDIR}/"
 BBFILE_PRIORITY_yoctobsp = "5"
 LAYERVERSION_yoctobsp = "4"
-LAYERSERIES_COMPAT_yoctobsp = "hardknott"
+LAYERSERIES_COMPAT_yoctobsp = "honister"
diff --git a/poky/meta-yocto-bsp/conf/machine/beaglebone-yocto.conf b/poky/meta-yocto-bsp/conf/machine/beaglebone-yocto.conf
index 04cbd3b..65c79fd 100644
--- a/poky/meta-yocto-bsp/conf/machine/beaglebone-yocto.conf
+++ b/poky/meta-yocto-bsp/conf/machine/beaglebone-yocto.conf
@@ -15,9 +15,9 @@
 include conf/machine/include/tune-cortexa8.inc
 
 IMAGE_FSTYPES += "tar.bz2 jffs2 wic wic.bmap"
-EXTRA_IMAGECMD_jffs2 = "-lnp "
+EXTRA_IMAGECMD:jffs2 = "-lnp "
 WKS_FILE ?= "beaglebone-yocto.wks"
-IMAGE_INSTALL_append = " kernel-devicetree kernel-image-zimage"
+IMAGE_INSTALL:append = " kernel-devicetree kernel-image-zimage"
 do_image_wic[depends] += "mtools-native:do_populate_sysroot dosfstools-native:do_populate_sysroot virtual/bootloader:do_deploy"
 
 SERIAL_CONSOLES ?= "115200;ttyS0 115200;ttyO0 115200;ttyAMA0"
diff --git a/poky/meta-yocto-bsp/conf/machine/include/genericx86-common.inc b/poky/meta-yocto-bsp/conf/machine/include/genericx86-common.inc
index 1de0690..59d96d1 100644
--- a/poky/meta-yocto-bsp/conf/machine/include/genericx86-common.inc
+++ b/poky/meta-yocto-bsp/conf/machine/include/genericx86-common.inc
@@ -18,7 +18,7 @@
 
 GLIBC_ADDONS = "nptl"
 
-EXTRA_OECONF_append_pn-matchbox-panel-2 = " --with-battery=acpi"
+EXTRA_OECONF:append:pn-matchbox-panel-2 = " --with-battery=acpi"
 
 IMAGE_FSTYPES += "wic wic.bmap"
 WKS_FILE ?= "genericx86.wks.in"
diff --git a/poky/meta-yocto-bsp/recipes-bsp/formfactor/formfactor_0.0.bbappend b/poky/meta-yocto-bsp/recipes-bsp/formfactor/formfactor_0.0.bbappend
index 72d991c..4fc41d0 100644
--- a/poky/meta-yocto-bsp/recipes-bsp/formfactor/formfactor_0.0.bbappend
+++ b/poky/meta-yocto-bsp/recipes-bsp/formfactor/formfactor_0.0.bbappend
@@ -1 +1 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
diff --git a/poky/meta-yocto-bsp/recipes-bsp/gma500-gfx-check/gma500-gfx-check_1.0.bb b/poky/meta-yocto-bsp/recipes-bsp/gma500-gfx-check/gma500-gfx-check_1.0.bb
index 8f10bd2..1fe1212 100644
--- a/poky/meta-yocto-bsp/recipes-bsp/gma500-gfx-check/gma500-gfx-check_1.0.bb
+++ b/poky/meta-yocto-bsp/recipes-bsp/gma500-gfx-check/gma500-gfx-check_1.0.bb
@@ -12,7 +12,7 @@
     install -m 644 ${WORKDIR}/gma500-gfx-check.conf ${D}${sysconfdir}/modprobe.d/gma500-gfx-check.conf
 }
 
-FILES_${PN}="${sysconfdir}/modprobe.d/gma500-gfx-check.conf \
+FILES:${PN}="${sysconfdir}/modprobe.d/gma500-gfx-check.conf \
              ${sysconfdir}/modprobe.d/gma500-gfx-check.sh"
 
 COMPATIBLE_MACHINE = "genericx86"
diff --git a/poky/meta-yocto-bsp/recipes-graphics/xorg-xserver/xserver-xf86-config_0.1.bbappend b/poky/meta-yocto-bsp/recipes-graphics/xorg-xserver/xserver-xf86-config_0.1.bbappend
index 72d991c..4fc41d0 100644
--- a/poky/meta-yocto-bsp/recipes-graphics/xorg-xserver/xserver-xf86-config_0.1.bbappend
+++ b/poky/meta-yocto-bsp/recipes-graphics/xorg-xserver/xserver-xf86-config_0.1.bbappend
@@ -1 +1 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
diff --git a/poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto-dev.bbappend b/poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto-dev.bbappend
index 6e5a129..a90958f 100644
--- a/poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto-dev.bbappend
+++ b/poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto-dev.bbappend
@@ -1,13 +1,13 @@
-KBRANCH_genericx86  = "standard/base"
-KBRANCH_genericx86-64  = "standard/base"
-KBRANCH_edgerouter = "standard/edgerouter"
-KBRANCH_beaglebone-yocto = "standard/beaglebone"
+KBRANCH:genericx86  = "standard/base"
+KBRANCH:genericx86-64  = "standard/base"
+KBRANCH:edgerouter = "standard/edgerouter"
+KBRANCH:beaglebone-yocto = "standard/beaglebone"
 
-KMACHINE_genericx86 ?= "common-pc"
-KMACHINE_genericx86-64 ?= "common-pc-64"
-KMACHINE_beaglebone-yocto ?= "beaglebone"
+KMACHINE:genericx86 ?= "common-pc"
+KMACHINE:genericx86-64 ?= "common-pc-64"
+KMACHINE:beaglebone-yocto ?= "beaglebone"
 
-COMPATIBLE_MACHINE_genericx86 = "genericx86"
-COMPATIBLE_MACHINE_genericx86-64 = "genericx86-64"
-COMPATIBLE_MACHINE_edgerouter = "edgerouter"
-COMPATIBLE_MACHINE_beaglebone-yocto = "beaglebone-yocto"
+COMPATIBLE_MACHINE:genericx86 = "genericx86"
+COMPATIBLE_MACHINE:genericx86-64 = "genericx86-64"
+COMPATIBLE_MACHINE:edgerouter = "edgerouter"
+COMPATIBLE_MACHINE:beaglebone-yocto = "beaglebone-yocto"
diff --git a/poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.10.bbappend b/poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.10.bbappend
index f8362b6..1e14229 100644
--- a/poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.10.bbappend
+++ b/poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.10.bbappend
@@ -1,23 +1,23 @@
-KBRANCH_genericx86  = "v5.10/standard/base"
-KBRANCH_genericx86-64  = "v5.10/standard/base"
-KBRANCH_edgerouter = "v5.10/standard/edgerouter"
-KBRANCH_beaglebone-yocto = "v5.10/standard/beaglebone"
+KBRANCH:genericx86  = "v5.10/standard/base"
+KBRANCH:genericx86-64  = "v5.10/standard/base"
+KBRANCH:edgerouter = "v5.10/standard/edgerouter"
+KBRANCH:beaglebone-yocto = "v5.10/standard/beaglebone"
 
-KMACHINE_genericx86 ?= "common-pc"
-KMACHINE_genericx86-64 ?= "common-pc-64"
-KMACHINE_beaglebone-yocto ?= "beaglebone"
+KMACHINE:genericx86 ?= "common-pc"
+KMACHINE:genericx86-64 ?= "common-pc-64"
+KMACHINE:beaglebone-yocto ?= "beaglebone"
 
-SRCREV_machine_genericx86 ?= "ab49d2db98bdee2c8c6e17fb59ded9e5292b0f41"
-SRCREV_machine_genericx86-64 ?= "ab49d2db98bdee2c8c6e17fb59ded9e5292b0f41"
-SRCREV_machine_edgerouter ?= "274d63799465eebfd201b3e8251f16d29e93a978"
-SRCREV_machine_beaglebone-yocto ?= "ab49d2db98bdee2c8c6e17fb59ded9e5292b0f41"
+SRCREV_machine:genericx86 ?= "c274623910704eefcc98380a17649889ac7e9408"
+SRCREV_machine:genericx86-64 ?= "c274623910704eefcc98380a17649889ac7e9408"
+SRCREV_machine:edgerouter ?= "ac089d661362ba857e235c5630242039b150ae26"
+SRCREV_machine:beaglebone-yocto ?= "a6df693a45f5787d4254e0998f52b4465b2a5efe"
 
-COMPATIBLE_MACHINE_genericx86 = "genericx86"
-COMPATIBLE_MACHINE_genericx86-64 = "genericx86-64"
-COMPATIBLE_MACHINE_edgerouter = "edgerouter"
-COMPATIBLE_MACHINE_beaglebone-yocto = "beaglebone-yocto"
+COMPATIBLE_MACHINE:genericx86 = "genericx86"
+COMPATIBLE_MACHINE:genericx86-64 = "genericx86-64"
+COMPATIBLE_MACHINE:edgerouter = "edgerouter"
+COMPATIBLE_MACHINE:beaglebone-yocto = "beaglebone-yocto"
 
-LINUX_VERSION_genericx86 = "5.10.43"
-LINUX_VERSION_genericx86-64 = "5.10.43"
-LINUX_VERSION_edgerouter = "5.10.43"
-LINUX_VERSION_beaglebone-yocto = "5.10.43"
+LINUX_VERSION:genericx86 = "5.10.55"
+LINUX_VERSION:genericx86-64 = "5.10.55"
+LINUX_VERSION:edgerouter = "5.10.55"
+LINUX_VERSION:beaglebone-yocto = "5.10.55"
diff --git a/poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.13.bbappend b/poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.13.bbappend
new file mode 100644
index 0000000..302d5ca
--- /dev/null
+++ b/poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.13.bbappend
@@ -0,0 +1,23 @@
+KBRANCH:genericx86  = "v5.13/standard/base"
+KBRANCH:genericx86-64  = "v5.13/standard/base"
+KBRANCH:edgerouter = "v5.13/standard/edgerouter"
+KBRANCH:beaglebone-yocto = "v5.13/standard/beaglebone"
+
+KMACHINE:genericx86 ?= "common-pc"
+KMACHINE:genericx86-64 ?= "common-pc-64"
+KMACHINE:beaglebone-yocto ?= "beaglebone"
+
+SRCREV_machine:genericx86 ?= "c1eb1eaf6fd3f1302b89194f629eafb9368a326a"
+SRCREV_machine:genericx86-64 ?= "c1eb1eaf6fd3f1302b89194f629eafb9368a326a"
+SRCREV_machine:edgerouter ?= "2d40c76f86e94252bbfbff4294b43b33de780cd5"
+SRCREV_machine:beaglebone-yocto ?= "18666b33d7ceaf095da5d58fecd6fcb070932434"
+
+COMPATIBLE_MACHINE:genericx86 = "genericx86"
+COMPATIBLE_MACHINE:genericx86-64 = "genericx86-64"
+COMPATIBLE_MACHINE:edgerouter = "edgerouter"
+COMPATIBLE_MACHINE:beaglebone-yocto = "beaglebone-yocto"
+
+LINUX_VERSION:genericx86 = "5.13.7"
+LINUX_VERSION:genericx86-64 = "5.13.7"
+LINUX_VERSION:edgerouter = "5.13.7"
+LINUX_VERSION:beaglebone-yocto = "5.13.7"
diff --git a/poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.4.bbappend b/poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.4.bbappend
index 35147d2..290aa32 100644
--- a/poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.4.bbappend
+++ b/poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.4.bbappend
@@ -1,23 +1,23 @@
-KBRANCH_genericx86  = "v5.4/standard/base"
-KBRANCH_genericx86-64  = "v5.4/standard/base"
-KBRANCH_edgerouter = "v5.4/standard/edgerouter"
-KBRANCH_beaglebone-yocto = "v5.4/standard/beaglebone"
+KBRANCH:genericx86  = "v5.4/standard/base"
+KBRANCH:genericx86-64  = "v5.4/standard/base"
+KBRANCH:edgerouter = "v5.4/standard/edgerouter"
+KBRANCH:beaglebone-yocto = "v5.4/standard/beaglebone"
 
-KMACHINE_genericx86 ?= "common-pc"
-KMACHINE_genericx86-64 ?= "common-pc-64"
-KMACHINE_beaglebone-yocto ?= "beaglebone"
+KMACHINE:genericx86 ?= "common-pc"
+KMACHINE:genericx86-64 ?= "common-pc-64"
+KMACHINE:beaglebone-yocto ?= "beaglebone"
 
-SRCREV_machine_genericx86 ?= "31db2b47ac7d8508080fbb7344399b501216de66"
-SRCREV_machine_genericx86-64 ?= "31db2b47ac7d8508080fbb7344399b501216de66"
-SRCREV_machine_edgerouter ?= "706efec4c1e270ec5dda92275898cd465dfdc7dd"
-SRCREV_machine_beaglebone-yocto ?= "706efec4c1e270ec5dda92275898cd465dfdc7dd"
+SRCREV_machine:genericx86 ?= "31db2b47ac7d8508080fbb7344399b501216de66"
+SRCREV_machine:genericx86-64 ?= "31db2b47ac7d8508080fbb7344399b501216de66"
+SRCREV_machine:edgerouter ?= "706efec4c1e270ec5dda92275898cd465dfdc7dd"
+SRCREV_machine:beaglebone-yocto ?= "706efec4c1e270ec5dda92275898cd465dfdc7dd"
 
-COMPATIBLE_MACHINE_genericx86 = "genericx86"
-COMPATIBLE_MACHINE_genericx86-64 = "genericx86-64"
-COMPATIBLE_MACHINE_edgerouter = "edgerouter"
-COMPATIBLE_MACHINE_beaglebone-yocto = "beaglebone-yocto"
+COMPATIBLE_MACHINE:genericx86 = "genericx86"
+COMPATIBLE_MACHINE:genericx86-64 = "genericx86-64"
+COMPATIBLE_MACHINE:edgerouter = "edgerouter"
+COMPATIBLE_MACHINE:beaglebone-yocto = "beaglebone-yocto"
 
-LINUX_VERSION_genericx86 = "5.4.94"
-LINUX_VERSION_genericx86-64 = "5.4.94"
-LINUX_VERSION_edgerouter = "5.4.58"
-LINUX_VERSION_beaglebone-yocto = "5.4.58"
+LINUX_VERSION:genericx86 = "5.4.94"
+LINUX_VERSION:genericx86-64 = "5.4.94"
+LINUX_VERSION:edgerouter = "5.4.58"
+LINUX_VERSION:beaglebone-yocto = "5.4.58"
diff --git a/poky/meta/classes/archiver.bbclass b/poky/meta/classes/archiver.bbclass
index a396230..dd31dc0 100644
--- a/poky/meta/classes/archiver.bbclass
+++ b/poky/meta/classes/archiver.bbclass
@@ -281,7 +281,10 @@
         # ${STAGING_DATADIR}/aclocal/libtool.m4, so we can't re-run the
         # do_configure, we archive the already configured ${S} to
         # instead of.
-        elif pn != 'libtool-native':
+        # The kernel class functions require it to be on work-shared, we
+        # don't unpack, patch, configure again, just archive the already
+        # configured ${S}
+        elif not (pn == 'libtool-native' or is_work_shared(d)):
             def runTask(task):
                 prefuncs = d.getVarFlag(task, 'prefuncs') or ''
                 for func in prefuncs.split():
@@ -483,6 +486,9 @@
         src_orig = '%s.orig' % src
         oe.path.copytree(src, src_orig)
 
+    if bb.data.inherits_class('dos2unix', d):
+        bb.build.exec_func('do_convert_crlf_to_lf', d)
+
     # Make sure gcc and kernel sources are patched only once
     if not (d.getVar('SRC_URI') == "" or is_work_shared(d)):
         bb.build.exec_func('do_patch', d)
diff --git a/poky/meta/classes/autotools.bbclass b/poky/meta/classes/autotools.bbclass
index 9dc8ebd..2c7968e 100644
--- a/poky/meta/classes/autotools.bbclass
+++ b/poky/meta/classes/autotools.bbclass
@@ -1,4 +1,4 @@
-def autotools_dep_prepend(d):
+def get_autotools_dep(d):
     if d.getVar('INHIBIT_AUTOTOOLS_DEPS'):
         return ''
 
@@ -19,7 +19,8 @@
 
     return deps
 
-DEPENDS_prepend = "${@autotools_dep_prepend(d)} "
+
+DEPENDS:prepend = "${@get_autotools_dep(d)} "
 
 inherit siteinfo
 
@@ -131,7 +132,7 @@
 
 EXTRACONFFUNCS ??= ""
 
-EXTRA_OECONF_append = " ${PACKAGECONFIG_CONFARGS}"
+EXTRA_OECONF:append = " ${PACKAGECONFIG_CONFARGS}"
 
 do_configure[prefuncs] += "autotools_preconfigure autotools_aclocals ${EXTRACONFFUNCS}"
 do_compile[prefuncs] += "autotools_aclocals"
@@ -140,8 +141,8 @@
 
 ACLOCALDIR = "${STAGING_DATADIR}/aclocal"
 ACLOCALEXTRAPATH = ""
-ACLOCALEXTRAPATH_class-target = " -I ${STAGING_DATADIR_NATIVE}/aclocal/"
-ACLOCALEXTRAPATH_class-nativesdk = " -I ${STAGING_DATADIR_NATIVE}/aclocal/"
+ACLOCALEXTRAPATH:class-target = " -I ${STAGING_DATADIR_NATIVE}/aclocal/"
+ACLOCALEXTRAPATH:class-nativesdk = " -I ${STAGING_DATADIR_NATIVE}/aclocal/"
 
 python autotools_aclocals () {
     d.setVar("CONFIG_SITE", siteinfo_get_files(d, sysrootcache=True))
diff --git a/poky/meta/classes/baremetal-image.bbclass b/poky/meta/classes/baremetal-image.bbclass
index 8708a54..9ec3f14 100644
--- a/poky/meta/classes/baremetal-image.bbclass
+++ b/poky/meta/classes/baremetal-image.bbclass
@@ -12,8 +12,8 @@
 
 # Toolchain should be baremetal or newlib based.
 # TCLIBC="baremetal" or TCLIBC="newlib"
-COMPATIBLE_HOST_libc-musl_class-target = "null"
-COMPATIBLE_HOST_libc-glibc_class-target = "null"
+COMPATIBLE_HOST:libc-musl:class-target = "null"
+COMPATIBLE_HOST:libc-glibc:class-target = "null"
 
 
 inherit rootfs-postcommands
@@ -61,7 +61,7 @@
 # Assure binaries, manifest and qemubootconf are populated on DEPLOY_DIR_IMAGE
 do_image_complete[dirs] = "${TOPDIR}"
 SSTATETASKS += "do_image_complete"
-SSTATE_SKIP_CREATION_task-image-complete = '1'
+SSTATE_SKIP_CREATION:task-image-complete = '1'
 do_image_complete[sstate-inputdirs] = "${IMGDEPLOYDIR}"
 do_image_complete[sstate-outputdirs] = "${DEPLOY_DIR_IMAGE}"
 do_image_complete[stamp-extra-info] = "${MACHINE_ARCH}"
@@ -77,18 +77,18 @@
 QB_MEM ?= "-m 256"
 QB_DEFAULT_FSTYPE ?= "bin"
 QB_DTB ?= ""
-QB_OPT_APPEND_append = " -nographic"
+QB_OPT_APPEND:append = " -nographic"
 
 # RISC-V tunes set the BIOS, unset, and instruct QEMU to
 # ignore the BIOS and boot from -kernel
-QB_DEFAULT_BIOS_qemuriscv64 = ""
-QB_OPT_APPEND_append_qemuriscv64 = " -bios none"
+QB_DEFAULT_BIOS:qemuriscv64 = ""
+QB_OPT_APPEND:append:qemuriscv64 = " -bios none"
 
 
 # Use the medium-any code model for the RISC-V 64 bit implementation,
 # since medlow can only access addresses below 0x80000000 and RAM
 # starts at 0x80000000 on RISC-V 64
-CFLAGS_append_qemuriscv64 = " -mcmodel=medany"
+CFLAGS:append:qemuriscv64 = " -mcmodel=medany"
 
 
 # This next part is necessary to trick the build system into thinking
diff --git a/poky/meta/classes/base.bbclass b/poky/meta/classes/base.bbclass
index 42fb84c..11b6517 100644
--- a/poky/meta/classes/base.bbclass
+++ b/poky/meta/classes/base.bbclass
@@ -66,7 +66,7 @@
 }
 
 
-def base_dep_prepend(d):
+def get_base_dep(d):
     if d.getVar('INHIBIT_DEFAULT_DEPS', False):
         return ""
     return "${BASE_DEFAULT_DEPS}"
@@ -74,10 +74,10 @@
 BASE_DEFAULT_DEPS = "virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}compilerlibs virtual/libc"
 
 BASEDEPENDS = ""
-BASEDEPENDS_class-target = "${@base_dep_prepend(d)}"
-BASEDEPENDS_class-nativesdk = "${@base_dep_prepend(d)}"
+BASEDEPENDS:class-target = "${@get_base_dep(d)}"
+BASEDEPENDS:class-nativesdk = "${@get_base_dep(d)}"
 
-DEPENDS_prepend="${BASEDEPENDS} "
+DEPENDS:prepend="${BASEDEPENDS} "
 
 FILESPATH = "${@base_set_filespath(["${FILE_DIRNAME}/${BP}", "${FILE_DIRNAME}/${BPN}", "${FILE_DIRNAME}/files"], d)}"
 # THISDIR only works properly with imediate expansion as it has to run
@@ -91,7 +91,7 @@
         path = path + "${STAGING_BINDIR_NATIVE}/" + e + ":"
     return path
 
-PATH_prepend = "${@extra_path_elements(d)}"
+PATH:prepend = "${@extra_path_elements(d)}"
 
 def get_lic_checksum_file_list(d):
     filelist = []
@@ -481,8 +481,8 @@
                             % (d.getVar('PN'), flag, 's' if len(intersec) > 1 else '', ' '.join(intersec)))
 
         appendVar('DEPENDS', extradeps)
-        appendVar('RDEPENDS_${PN}', extrardeps)
-        appendVar('RRECOMMENDS_${PN}', extrarrecs)
+        appendVar('RDEPENDS:${PN}', extrardeps)
+        appendVar('RRECOMMENDS:${PN}', extrarrecs)
         appendVar('PACKAGECONFIG_CONFARGS', extraconf)
 
     pn = d.getVar('PN')
diff --git a/poky/meta/classes/bash-completion.bbclass b/poky/meta/classes/bash-completion.bbclass
index 80ee9b4..803b2ca 100644
--- a/poky/meta/classes/bash-completion.bbclass
+++ b/poky/meta/classes/bash-completion.bbclass
@@ -1,7 +1,7 @@
-DEPENDS_append_class-target = " bash-completion"
+DEPENDS:append:class-target = " bash-completion"
 
 PACKAGES += "${PN}-bash-completion"
 
-FILES_${PN}-bash-completion = "${datadir}/bash-completion ${sysconfdir}/bash_completion.d"
+FILES:${PN}-bash-completion = "${datadir}/bash-completion ${sysconfdir}/bash_completion.d"
 
-RDEPENDS_${PN}-bash-completion = "bash-completion"
+RDEPENDS:${PN}-bash-completion = "bash-completion"
diff --git a/poky/meta/classes/bin_package.bbclass b/poky/meta/classes/bin_package.bbclass
index cbc9b1f..c3aca20 100644
--- a/poky/meta/classes/bin_package.bbclass
+++ b/poky/meta/classes/bin_package.bbclass
@@ -34,6 +34,6 @@
         | tar --no-same-owner -xpf - -C ${D}
 }
 
-FILES_${PN} = "/"
+FILES:${PN} = "/"
 
 EXPORT_FUNCTIONS do_install
diff --git a/poky/meta/classes/binconfig-disabled.bbclass b/poky/meta/classes/binconfig-disabled.bbclass
index 096b670..e8ac41b 100644
--- a/poky/meta/classes/binconfig-disabled.bbclass
+++ b/poky/meta/classes/binconfig-disabled.bbclass
@@ -5,9 +5,9 @@
 # The list of scripts which should be disabled.
 BINCONFIG ?= ""
 
-FILES_${PN}-dev += "${bindir}/*-config"
+FILES:${PN}-dev += "${bindir}/*-config"
 
-do_install_append () {
+do_install:append () {
 	for x in ${BINCONFIG}; do
 		# Make the disabled script emit invalid parameters for those configure
 		# scripts which call it without checking the return code.
diff --git a/poky/meta/classes/binconfig.bbclass b/poky/meta/classes/binconfig.bbclass
index 9112ed4..6e0c882 100644
--- a/poky/meta/classes/binconfig.bbclass
+++ b/poky/meta/classes/binconfig.bbclass
@@ -1,4 +1,4 @@
-FILES_${PN}-dev += "${bindir}/*-config"
+FILES:${PN}-dev += "${bindir}/*-config"
  
 # The namespaces can clash here hence the two step replace
 def get_binconfig_mangle(d):
diff --git a/poky/meta/classes/buildhistory.bbclass b/poky/meta/classes/buildhistory.bbclass
index 55b12d7..5099e70 100644
--- a/poky/meta/classes/buildhistory.bbclass
+++ b/poky/meta/classes/buildhistory.bbclass
@@ -45,14 +45,14 @@
 BUILDHISTORY_TAG ?= "build"
 BUILDHISTORY_PATH_PREFIX_STRIP ?= ""
 
-SSTATEPOSTINSTFUNCS_append = " buildhistory_emit_pkghistory"
+SSTATEPOSTINSTFUNCS:append = " buildhistory_emit_pkghistory"
 # We want to avoid influencing the signatures of sstate tasks - first the function itself:
 sstate_install[vardepsexclude] += "buildhistory_emit_pkghistory"
 # then the value added to SSTATEPOSTINSTFUNCS:
 SSTATEPOSTINSTFUNCS[vardepvalueexclude] .= "| buildhistory_emit_pkghistory"
 
 # Similarly for our function that gets the output signatures
-SSTATEPOSTUNPACKFUNCS_append = " buildhistory_emit_outputsigs"
+SSTATEPOSTUNPACKFUNCS:append = " buildhistory_emit_outputsigs"
 sstate_installpkgdir[vardepsexclude] += "buildhistory_emit_outputsigs"
 SSTATEPOSTUNPACKFUNCS[vardepvalueexclude] .= "| buildhistory_emit_outputsigs"
 
@@ -676,17 +676,17 @@
 IMAGE_POSTPROCESS_COMMAND[vardepsexclude] += "buildhistory_get_imageinfo"
 
 # We want these to be the last run so that we get called after complementary package installation
-POPULATE_SDK_POST_TARGET_COMMAND_append = " buildhistory_list_installed_sdk_target;"
-POPULATE_SDK_POST_TARGET_COMMAND_append = " buildhistory_get_sdk_installed_target;"
+POPULATE_SDK_POST_TARGET_COMMAND:append = " buildhistory_list_installed_sdk_target;"
+POPULATE_SDK_POST_TARGET_COMMAND:append = " buildhistory_get_sdk_installed_target;"
 POPULATE_SDK_POST_TARGET_COMMAND[vardepvalueexclude] .= "| buildhistory_list_installed_sdk_target;| buildhistory_get_sdk_installed_target;"
 POPULATE_SDK_POST_TARGET_COMMAND[vardepsexclude] += "buildhistory_list_installed_sdk_target buildhistory_get_sdk_installed_target"
 
-POPULATE_SDK_POST_HOST_COMMAND_append = " buildhistory_list_installed_sdk_host;"
-POPULATE_SDK_POST_HOST_COMMAND_append = " buildhistory_get_sdk_installed_host;"
+POPULATE_SDK_POST_HOST_COMMAND:append = " buildhistory_list_installed_sdk_host;"
+POPULATE_SDK_POST_HOST_COMMAND:append = " buildhistory_get_sdk_installed_host;"
 POPULATE_SDK_POST_HOST_COMMAND[vardepvalueexclude] .= "| buildhistory_list_installed_sdk_host;| buildhistory_get_sdk_installed_host;"
 POPULATE_SDK_POST_HOST_COMMAND[vardepsexclude] += "buildhistory_list_installed_sdk_host buildhistory_get_sdk_installed_host"
 
-SDK_POSTPROCESS_COMMAND_append = " buildhistory_get_sdkinfo ; buildhistory_get_extra_sdkinfo; "
+SDK_POSTPROCESS_COMMAND:append = " buildhistory_get_sdkinfo ; buildhistory_get_extra_sdkinfo; "
 SDK_POSTPROCESS_COMMAND[vardepvalueexclude] .= "| buildhistory_get_sdkinfo ; buildhistory_get_extra_sdkinfo; "
 SDK_POSTPROCESS_COMMAND[vardepsexclude] += "buildhistory_get_sdkinfo buildhistory_get_extra_sdkinfo"
 
diff --git a/poky/meta/classes/cmake.bbclass b/poky/meta/classes/cmake.bbclass
index f01db74..92b9197 100644
--- a/poky/meta/classes/cmake.bbclass
+++ b/poky/meta/classes/cmake.bbclass
@@ -1,7 +1,7 @@
 # Path to the CMake file to process.
 OECMAKE_SOURCEPATH ??= "${S}"
 
-DEPENDS_prepend = "cmake-native "
+DEPENDS:prepend = "cmake-native "
 B = "${WORKDIR}/build"
 
 # What CMake generator to use.
@@ -57,13 +57,13 @@
 OECMAKE_EXTRA_ROOT_PATH ?= ""
 
 OECMAKE_FIND_ROOT_PATH_MODE_PROGRAM = "ONLY"
-OECMAKE_FIND_ROOT_PATH_MODE_PROGRAM_class-native = "BOTH"
+OECMAKE_FIND_ROOT_PATH_MODE_PROGRAM:class-native = "BOTH"
 
-EXTRA_OECMAKE_append = " ${PACKAGECONFIG_CONFARGS}"
+EXTRA_OECMAKE:append = " ${PACKAGECONFIG_CONFARGS}"
 
 export CMAKE_BUILD_PARALLEL_LEVEL
-CMAKE_BUILD_PARALLEL_LEVEL_task-compile = "${@oe.utils.parallel_make(d, False)}"
-CMAKE_BUILD_PARALLEL_LEVEL_task-install = "${@oe.utils.parallel_make(d, True)}"
+CMAKE_BUILD_PARALLEL_LEVEL:task-compile = "${@oe.utils.parallel_make(d, False)}"
+CMAKE_BUILD_PARALLEL_LEVEL:task-install = "${@oe.utils.parallel_make(d, True)}"
 
 OECMAKE_TARGET_COMPILE ?= "all"
 OECMAKE_TARGET_INSTALL ?= "install"
diff --git a/poky/meta/classes/compress_doc.bbclass b/poky/meta/classes/compress_doc.bbclass
index d6d11fa..379b6c1 100644
--- a/poky/meta/classes/compress_doc.bbclass
+++ b/poky/meta/classes/compress_doc.bbclass
@@ -8,7 +8,7 @@
 #
 # 3. It is easy to add a new type compression by editing
 # local.conf, such as:
-# DOC_COMPRESS_LIST_append = ' abc'
+# DOC_COMPRESS_LIST:append = ' abc'
 # DOC_COMPRESS = 'abc'
 # DOC_COMPRESS_CMD[abc] = 'abc compress cmd ***'
 # DOC_DECOMPRESS_CMD[abc] = 'abc decompress cmd ***'
@@ -225,7 +225,7 @@
     infodir = d.getVar("infodir")
     compress_mode = d.getVar('DOC_COMPRESS')
     for pkg in (d.getVar('PACKAGES') or "").split():
-        old_names = (d.getVar('ALTERNATIVE_%s' % pkg) or "").split()
+        old_names = (d.getVar('ALTERNATIVE:%s' % pkg) or "").split()
         new_names = []
         for old_name in old_names:
             old_link     = d.getVarFlag('ALTERNATIVE_LINK_NAME', old_name)
@@ -258,6 +258,6 @@
                 new_names.append(new_name)
 
         if new_names:
-            d.setVar('ALTERNATIVE_%s' % pkg, ' '.join(new_names))
+            d.setVar('ALTERNATIVE:%s' % pkg, ' '.join(new_names))
 }
 
diff --git a/poky/meta/classes/cpan-base.bbclass b/poky/meta/classes/cpan-base.bbclass
index 1fc3f0b..9758065 100644
--- a/poky/meta/classes/cpan-base.bbclass
+++ b/poky/meta/classes/cpan-base.bbclass
@@ -2,10 +2,10 @@
 # cpan-base providers various perl related information needed for building
 # cpan modules
 #
-FILES_${PN} += "${libdir}/perl5 ${datadir}/perl5"
+FILES:${PN} += "${libdir}/perl5 ${datadir}/perl5"
 
 DEPENDS  += "${@["perl", "perl-native"][(bb.data.inherits_class('native', d))]}"
-RDEPENDS_${PN} += "${@["perl", ""][(bb.data.inherits_class('native', d))]}"
+RDEPENDS:${PN} += "${@["perl", ""][(bb.data.inherits_class('native', d))]}"
 
 inherit perl-version
 
@@ -15,7 +15,7 @@
     return "no"
 
 PERLLIBDIRS = "${libdir}/perl5"
-PERLLIBDIRS_class-native = "${libdir}/perl5"
+PERLLIBDIRS:class-native = "${libdir}/perl5"
 
 def cpan_upstream_check_pattern(d):
     for x in (d.getVar('SRC_URI') or '').split(' '):
diff --git a/poky/meta/classes/cpan.bbclass b/poky/meta/classes/cpan.bbclass
index e9908ae..18f1b9d 100644
--- a/poky/meta/classes/cpan.bbclass
+++ b/poky/meta/classes/cpan.bbclass
@@ -41,12 +41,12 @@
 	fi
 }
 
-do_configure_append_class-target() {
+do_configure:append:class-target() {
        find . -name Makefile | xargs sed -E -i \
            -e 's:LD_RUN_PATH ?= ?"?[^"]*"?::g'
 }
 
-do_configure_append_class-nativesdk() {
+do_configure:append:class-nativesdk() {
        find . -name Makefile | xargs sed -E -i \
            -e 's:LD_RUN_PATH ?= ?"?[^"]*"?::g'
 }
diff --git a/poky/meta/classes/cross-canadian.bbclass b/poky/meta/classes/cross-canadian.bbclass
index 39b5bb9..447a2bb 100644
--- a/poky/meta/classes/cross-canadian.bbclass
+++ b/poky/meta/classes/cross-canadian.bbclass
@@ -104,7 +104,7 @@
 
 TOOLCHAIN_OPTIONS = " --sysroot=${RECIPE_SYSROOT}"
 
-PATH_append = ":${TMPDIR}/sysroots/${HOST_ARCH}/${bindir_cross}"
+PATH:append = ":${TMPDIR}/sysroots/${HOST_ARCH}/${bindir_cross}"
 PKGHIST_DIR = "${TMPDIR}/pkghistory/${HOST_ARCH}-${SDKPKGSUFFIX}${HOST_VENDOR}-${HOST_OS}/"
 
 HOST_ARCH = "${SDK_ARCH}"
@@ -129,7 +129,7 @@
 # We need chrpath >= 0.14 to ensure we can deal with 32 and 64 bit
 # binaries
 #
-DEPENDS_append = " chrpath-replacement-native"
+DEPENDS:append = " chrpath-replacement-native"
 EXTRANATIVEPATH += "chrpath-native"
 
 # Path mangling needed by the cross packaging
@@ -153,7 +153,7 @@
 libdir = "${exec_prefix}/lib/${TARGET_ARCH}${TARGET_VENDOR}-${TARGET_OS}"
 libexecdir = "${exec_prefix}/libexec/${TARGET_ARCH}${TARGET_VENDOR}-${TARGET_OS}"
 
-FILES_${PN} = "${prefix}"
+FILES:${PN} = "${prefix}"
 
 export PKG_CONFIG_DIR = "${STAGING_DIR_HOST}${exec_prefix}/lib/pkgconfig"
 export PKG_CONFIG_SYSROOT_DIR = "${STAGING_DIR_HOST}"
diff --git a/poky/meta/classes/cross.bbclass b/poky/meta/classes/cross.bbclass
index bfec91d..00e0de8 100644
--- a/poky/meta/classes/cross.bbclass
+++ b/poky/meta/classes/cross.bbclass
@@ -7,7 +7,7 @@
 CLASSOVERRIDE = "class-cross"
 PACKAGES = ""
 PACKAGES_DYNAMIC = ""
-PACKAGES_DYNAMIC_class-native = ""
+PACKAGES_DYNAMIC:class-native = ""
 
 HOST_ARCH = "${BUILD_ARCH}"
 HOST_VENDOR = "${BUILD_VENDOR}"
diff --git a/poky/meta/classes/cve-check.bbclass b/poky/meta/classes/cve-check.bbclass
index 112ee33..6582f97 100644
--- a/poky/meta/classes/cve-check.bbclass
+++ b/poky/meta/classes/cve-check.bbclass
@@ -20,7 +20,7 @@
 # the only method to check against CVEs. Running this tool
 # doesn't guarantee your packages are free of CVEs.
 
-# The product name that the CVE database uses.  Defaults to BPN, but may need to
+# The product name that the CVE database uses defaults to BPN, but may need to
 # be overriden per recipe (for example tiff.bb sets CVE_PRODUCT=libtiff).
 CVE_PRODUCT ??= "${BPN}"
 CVE_VERSION ??= "${PV}"
@@ -56,11 +56,11 @@
 # Layers to be excluded
 CVE_CHECK_LAYER_EXCLUDELIST ??= ""
 
-# Layers to be included 
+# Layers to be included
 CVE_CHECK_LAYER_INCLUDELIST ??= ""
 
 
-# set to "alphabetical" for version using single alphabetical character as increament release
+# set to "alphabetical" for version using single alphabetical character as increment release
 CVE_VERSION_SUFFIX ??= ""
 
 python cve_save_summary_handler () {
@@ -153,7 +153,7 @@
             bb.plain("Image CVE report stored in: %s" % manifest_name)
 }
 
-ROOTFS_POSTPROCESS_COMMAND_prepend = "${@'cve_check_write_rootfs_manifest; ' if d.getVar('CVE_CHECK_CREATE_MANIFEST') == '1' else ''}"
+ROOTFS_POSTPROCESS_COMMAND:prepend = "${@'cve_check_write_rootfs_manifest; ' if d.getVar('CVE_CHECK_CREATE_MANIFEST') == '1' else ''}"
 do_rootfs[recrdeptask] += "${@'do_cve_check' if d.getVar('CVE_CHECK_CREATE_MANIFEST') == '1' else ''}"
 
 def get_patches_cves(d):
@@ -166,9 +166,12 @@
     pn = d.getVar("PN")
     cve_match = re.compile("CVE:( CVE\-\d{4}\-\d+)+")
 
-    # Matches last CVE-1234-211432 in the file name, also if written
-    # with small letters. Not supporting multiple CVE id's in a single
-    # file name.
+    # Matches the last "CVE-YYYY-ID" in the file name, also if written
+    # in lowercase. Possible to have multiple CVE IDs in a single
+    # file name, but only the last one will be detected from the file name.
+    # However, patch files contents addressing multiple CVE IDs are supported
+    # (cve_match regular expression)
+
     cve_file_name_match = re.compile(".*([Cc][Vv][Ee]\-\d{4}\-\d+)")
 
     patched_cves = set()
@@ -230,7 +233,7 @@
         return ([], [], [])
     pv = d.getVar("CVE_VERSION").split("+git")[0]
 
-    # If the recipe has been whitlisted we return empty lists
+    # If the recipe has been whitelisted we return empty lists
     if pn in d.getVar("CVE_CHECK_PN_WHITELIST").split():
         bb.note("Recipe has been whitelisted, skipping check")
         return ([], [], [])
@@ -355,7 +358,7 @@
     if include_layers and layer not in include_layers:
         return
 
-    nvd_link = "https://web.nvd.nist.gov/view/vuln/detail?vulnId="
+    nvd_link = "https://nvd.nist.gov/vuln/detail/"
     write_string = ""
     unpatched_cves = []
     bb.utils.mkdirhier(os.path.dirname(cve_file))
diff --git a/poky/meta/classes/debian.bbclass b/poky/meta/classes/debian.bbclass
index 6f8a599..39b1a1a 100644
--- a/poky/meta/classes/debian.bbclass
+++ b/poky/meta/classes/debian.bbclass
@@ -4,7 +4,7 @@
 # depends are correct
 #
 # Custom library package names can be defined setting
-# DEBIANNAME_ + pkgname to the desired name.
+# DEBIANNAME: + pkgname to the desired name.
 #
 # Better expressed as ensure all RDEPENDS package before we package
 # This means we can't have circular RDEPENDS/RRECOMMENDS
@@ -51,11 +51,11 @@
         return (s[stat.ST_MODE] & stat.S_IEXEC)
 
     def add_rprovides(pkg, d):
-        newpkg = d.getVar('PKG_' + pkg)
+        newpkg = d.getVar('PKG:' + pkg)
         if newpkg and newpkg != pkg:
-            provs = (d.getVar('RPROVIDES_' + pkg) or "").split()
+            provs = (d.getVar('RPROVIDES:' + pkg) or "").split()
             if pkg not in provs:
-                d.appendVar('RPROVIDES_' + pkg, " " + pkg + " (=" + d.getVar("PKGV") + ")")
+                d.appendVar('RPROVIDES:' + pkg, " " + pkg + " (=" + d.getVar("PKGV") + ")")
 
     def auto_libname(packages, orig_pkg):
         p = lambda var: pathlib.PurePath(d.getVar(var))
@@ -110,10 +110,10 @@
             if soname_result:
                 (pkgname, devname) = soname_result
                 for pkg in packages.split():
-                    if (d.getVar('PKG_' + pkg, False) or d.getVar('DEBIAN_NOAUTONAME_' + pkg, False)):
+                    if (d.getVar('PKG:' + pkg, False) or d.getVar('DEBIAN_NOAUTONAME:' + pkg, False)):
                         add_rprovides(pkg, d)
                         continue
-                    debian_pn = d.getVar('DEBIANNAME_' + pkg, False)
+                    debian_pn = d.getVar('DEBIANNAME:' + pkg, False)
                     if debian_pn:
                         newpkg = debian_pn
                     elif pkg == orig_pkg:
@@ -126,7 +126,7 @@
                             newpkg = mlpre + newpkg
                     if newpkg != pkg:
                         bb.note("debian: renaming %s to %s" % (pkg, newpkg))
-                        d.setVar('PKG_' + pkg, newpkg)
+                        d.setVar('PKG:' + pkg, newpkg)
                         add_rprovides(pkg, d)
         else:
             add_rprovides(orig_pkg, d)
diff --git a/poky/meta/classes/devicetree.bbclass b/poky/meta/classes/devicetree.bbclass
index ece883a..8546c1c 100644
--- a/poky/meta/classes/devicetree.bbclass
+++ b/poky/meta/classes/devicetree.bbclass
@@ -32,7 +32,7 @@
 PACKAGE_ARCH = "${MACHINE_ARCH}"
 
 SYSROOT_DIRS += "/boot/devicetree"
-FILES_${PN} = "/boot/devicetree/*.dtb /boot/devicetree/*.dtbo"
+FILES:${PN} = "/boot/devicetree/*.dtb /boot/devicetree/*.dtbo"
 
 S = "${WORKDIR}"
 B = "${WORKDIR}/build"
diff --git a/poky/meta/classes/devupstream.bbclass b/poky/meta/classes/devupstream.bbclass
index 7780c54..dc9a947 100644
--- a/poky/meta/classes/devupstream.bbclass
+++ b/poky/meta/classes/devupstream.bbclass
@@ -4,8 +4,8 @@
 #
 # Usage:
 # BBCLASSEXTEND = "devupstream:target"
-# SRC_URI_class-devupstream = "git://git.example.com/example"
-# SRCREV_class-devupstream = "abcdef"
+# SRC_URI:class-devupstream = "git://git.example.com/example"
+# SRCREV:class-devupstream = "abcdef"
 #
 # If the first entry in SRC_URI is a git: URL then S is rewritten to
 # WORKDIR/git.
@@ -16,8 +16,6 @@
 # - If the fetcher requires native tools (such as subversion-native) then
 #   bitbake won't be able to add them automatically.
 
-CLASSOVERRIDE .= ":class-devupstream"
-
 python devupstream_virtclass_handler () {
     # Do nothing if this is inherited, as it's for BBCLASSEXTEND
     if "devupstream" not in (d.getVar('BBCLASSEXTEND') or ""):
@@ -25,8 +23,8 @@
         return
 
     variant = d.getVar("BBEXTENDVARIANT")
-    if variant not in ("target"):
-        bb.error("Pass the variant when using devupstream, for example devupstream:target")
+    if variant not in ("target", "native"):
+        bb.error("Unsupported variant %s. Pass the variant when using devupstream, for example devupstream:target" % variant)
         return
 
     # Develpment releases are never preferred by default
@@ -34,14 +32,22 @@
 
     uri = bb.fetch2.URI(d.getVar("SRC_URI").split()[0])
 
-    if uri.scheme == "git":
-        d.setVar("S", "${WORKDIR}/git")
+    if uri.scheme == "git" and not d.getVar("S:class-devupstream"):
+        d.setVar("S:class-devupstream", "${WORKDIR}/git")
 
     # Modify the PV if the recipe hasn't already overridden it
     pv = d.getVar("PV")
     proto_marker = "+" + uri.scheme
-    if proto_marker not in pv:
+    if proto_marker not in pv and not d.getVar("PV:class-devupstream"):
         d.setVar("PV", pv + proto_marker + "${SRCPV}")
+
+    if variant == "native":
+        pn = d.getVar("PN")
+        d.setVar("PN", "%s-native" % (pn))
+        fn = d.getVar("FILE")
+        bb.parse.BBHandler.inherit("native", fn, 0, d)
+
+    d.appendVar("CLASSOVERRIDE", ":class-devupstream")
 }
 
 addhandler devupstream_virtclass_handler
diff --git a/poky/meta/classes/distrooverrides.bbclass b/poky/meta/classes/distrooverrides.bbclass
index 9f4db0d..bf3a2b2 100644
--- a/poky/meta/classes/distrooverrides.bbclass
+++ b/poky/meta/classes/distrooverrides.bbclass
@@ -6,7 +6,7 @@
 # This makes it simpler to write .bbappends that only change the
 # task signatures of the recipe if the change is really enabled,
 # for example with:
-#   do_install_append_df-my-feature () { ... }
+#   do_install:append:df-my-feature () { ... }
 # where "my-feature" is a DISTRO_FEATURE.
 #
 # The class is meant to be used in a layer.conf or distro
@@ -22,8 +22,8 @@
 DISTRO_FEATURES_OVERRIDES[doc] = "A space-separated list of <feature> entries. \
 Each entry is added to OVERRIDES as df-<feature> if <feature> is in DISTRO_FEATURES."
 
-DISTRO_FEATURES_FILTER_NATIVE_append = " ${DISTRO_FEATURES_OVERRIDES}"
-DISTRO_FEATURES_FILTER_NATIVESDK_append = " ${DISTRO_FEATURES_OVERRIDES}"
+DISTRO_FEATURES_FILTER_NATIVE:append = " ${DISTRO_FEATURES_OVERRIDES}"
+DISTRO_FEATURES_FILTER_NATIVESDK:append = " ${DISTRO_FEATURES_OVERRIDES}"
 
 # If DISTRO_FEATURES_OVERRIDES or DISTRO_FEATURES show up in a task
 # signature because of this line, then the task dependency on
diff --git a/poky/meta/classes/distutils-common-base.bbclass b/poky/meta/classes/distutils-common-base.bbclass
index 43a38e5..bc994f7 100644
--- a/poky/meta/classes/distutils-common-base.bbclass
+++ b/poky/meta/classes/distutils-common-base.bbclass
@@ -13,12 +13,12 @@
 # the python executable
 export LINKFORSHARED = "${SECURITY_CFLAGS} -Xlinker -export-dynamic"
 
-FILES_${PN} += "${libdir}/* ${libdir}/${PYTHON_DIR}/*"
+FILES:${PN} += "${libdir}/* ${libdir}/${PYTHON_DIR}/*"
 
-FILES_${PN}-staticdev += "\
+FILES:${PN}-staticdev += "\
   ${PYTHON_SITEPACKAGES_DIR}/*.a \
 "
-FILES_${PN}-dev += "\
+FILES:${PN}-dev += "\
   ${datadir}/pkgconfig \
   ${libdir}/pkgconfig \
   ${PYTHON_SITEPACKAGES_DIR}/*.la \
diff --git a/poky/meta/classes/distutils3-base.bbclass b/poky/meta/classes/distutils3-base.bbclass
index 302ee8c..d41873e 100644
--- a/poky/meta/classes/distutils3-base.bbclass
+++ b/poky/meta/classes/distutils3-base.bbclass
@@ -1,6 +1,6 @@
-DEPENDS_append_class-target = " ${PYTHON_PN}-native ${PYTHON_PN}"
-DEPENDS_append_class-nativesdk = " ${PYTHON_PN}-native ${PYTHON_PN}"
-RDEPENDS_${PN} += "${@['', '${PYTHON_PN}-core']['${CLASSOVERRIDE}' == 'class-target']}"
+DEPENDS:append:class-target = " ${PYTHON_PN}-native ${PYTHON_PN}"
+DEPENDS:append:class-nativesdk = " ${PYTHON_PN}-native ${PYTHON_PN}"
+RDEPENDS:${PN} += "${@['', '${PYTHON_PN}-core']['${CLASSOVERRIDE}' == 'class-target']}"
 
 inherit distutils-common-base python3native python3targetconfig
 
diff --git a/poky/meta/classes/distutils3.bbclass b/poky/meta/classes/distutils3.bbclass
index a916a80..be645d3 100644
--- a/poky/meta/classes/distutils3.bbclass
+++ b/poky/meta/classes/distutils3.bbclass
@@ -10,7 +10,7 @@
     --install-data=${datadir}"
 
 DISTUTILS_PYTHON = "python3"
-DISTUTILS_PYTHON_class-native = "nativepython3"
+DISTUTILS_PYTHON:class-native = "nativepython3"
 
 DISTUTILS_SETUP_PATH ?= "${S}"
 
diff --git a/poky/meta/classes/externalsrc.bbclass b/poky/meta/classes/externalsrc.bbclass
index 3d6b80b..54b08ad 100644
--- a/poky/meta/classes/externalsrc.bbclass
+++ b/poky/meta/classes/externalsrc.bbclass
@@ -13,7 +13,7 @@
 # called "myrecipe" you would do:
 #
 # INHERIT += "externalsrc"
-# EXTERNALSRC_pn-myrecipe = "/path/to/my/source/tree"
+# EXTERNALSRC:pn-myrecipe = "/path/to/my/source/tree"
 #
 # In order to make this class work for both target and native versions (or with
 # multilibs/cross or other BBCLASSEXTEND variants), B is set to point to a separate
@@ -21,7 +21,7 @@
 # the default, but the build directory can be set to the source directory if
 # circumstances dictate by setting EXTERNALSRC_BUILD to the same value, e.g.:
 #
-# EXTERNALSRC_BUILD_pn-myrecipe = "/path/to/my/source/tree"
+# EXTERNALSRC_BUILD:pn-myrecipe = "/path/to/my/source/tree"
 #
 
 SRCTREECOVEREDTASKS ?= "do_patch do_unpack do_fetch"
@@ -45,11 +45,11 @@
     if bpn == d.getVar('PN') or not classextend:
         if (externalsrc or
                 ('native' in classextend and
-                 d.getVar('EXTERNALSRC_pn-%s-native' % bpn)) or
+                 d.getVar('EXTERNALSRC:pn-%s-native' % bpn)) or
                 ('nativesdk' in classextend and
-                 d.getVar('EXTERNALSRC_pn-nativesdk-%s' % bpn)) or
+                 d.getVar('EXTERNALSRC:pn-nativesdk-%s' % bpn)) or
                 ('cross' in classextend and
-                 d.getVar('EXTERNALSRC_pn-%s-cross' % bpn))):
+                 d.getVar('EXTERNALSRC:pn-%s-cross' % bpn))):
             d.setVar('BB_DONT_CACHE', '1')
 
     if externalsrc:
diff --git a/poky/meta/classes/extrausers.bbclass b/poky/meta/classes/extrausers.bbclass
index 90811bf..a8ef660 100644
--- a/poky/meta/classes/extrausers.bbclass
+++ b/poky/meta/classes/extrausers.bbclass
@@ -14,10 +14,10 @@
 
 inherit useradd_base
 
-PACKAGE_INSTALL_append = " ${@['', 'base-passwd shadow'][bool(d.getVar('EXTRA_USERS_PARAMS'))]}"
+PACKAGE_INSTALL:append = " ${@['', 'base-passwd shadow'][bool(d.getVar('EXTRA_USERS_PARAMS'))]}"
 
 # Image level user / group settings
-ROOTFS_POSTPROCESS_COMMAND_append = " set_user_group;"
+ROOTFS_POSTPROCESS_COMMAND:append = " set_user_group;"
 
 # Image level user / group settings
 set_user_group () {
diff --git a/poky/meta/classes/fontcache.bbclass b/poky/meta/classes/fontcache.bbclass
index 624a420..442bfc7 100644
--- a/poky/meta/classes/fontcache.bbclass
+++ b/poky/meta/classes/fontcache.bbclass
@@ -35,23 +35,23 @@
     deps = d.getVar("FONT_EXTRA_RDEPENDS")
 
     for pkg in font_pkgs:
-        if deps: d.appendVar('RDEPENDS_' + pkg, ' '+deps)
+        if deps: d.appendVar('RDEPENDS:' + pkg, ' '+deps)
 }
 
 python add_fontcache_postinsts() {
     for pkg in d.getVar('FONT_PACKAGES').split():
         bb.note("adding fonts postinst and postrm scripts to %s" % pkg)
-        postinst = d.getVar('pkg_postinst_%s' % pkg) or d.getVar('pkg_postinst')
+        postinst = d.getVar('pkg_postinst:%s' % pkg) or d.getVar('pkg_postinst')
         if not postinst:
             postinst = '#!/bin/sh\n'
         postinst += d.getVar('fontcache_common')
-        d.setVar('pkg_postinst_%s' % pkg, postinst)
+        d.setVar('pkg_postinst:%s' % pkg, postinst)
 
-        postrm = d.getVar('pkg_postrm_%s' % pkg) or d.getVar('pkg_postrm')
+        postrm = d.getVar('pkg_postrm:%s' % pkg) or d.getVar('pkg_postrm')
         if not postrm:
             postrm = '#!/bin/sh\n'
         postrm += d.getVar('fontcache_common')
-        d.setVar('pkg_postrm_%s' % pkg, postrm)
+        d.setVar('pkg_postrm:%s' % pkg, postrm)
 }
 
 PACKAGEFUNCS =+ "add_fontcache_postinsts"
diff --git a/poky/meta/classes/gconf.bbclass b/poky/meta/classes/gconf.bbclass
index 3e3c509..9d3668e 100644
--- a/poky/meta/classes/gconf.bbclass
+++ b/poky/meta/classes/gconf.bbclass
@@ -41,7 +41,7 @@
 done
 }
 
-python populate_packages_append () {
+python populate_packages:append () {
     import re
     packages = d.getVar('PACKAGES').split()
     pkgdest =  d.getVar('PKGDEST')
@@ -57,15 +57,15 @@
         if schemas != []:
             bb.note("adding gconf postinst and prerm scripts to %s" % pkg)
             d.setVar('SCHEMA_FILES', " ".join(schemas))
-            postinst = d.getVar('pkg_postinst_%s' % pkg)
+            postinst = d.getVar('pkg_postinst:%s' % pkg)
             if not postinst:
                 postinst = '#!/bin/sh\n'
             postinst += d.getVar('gconf_postinst')
-            d.setVar('pkg_postinst_%s' % pkg, postinst)
-            prerm = d.getVar('pkg_prerm_%s' % pkg)
+            d.setVar('pkg_postinst:%s' % pkg, postinst)
+            prerm = d.getVar('pkg_prerm:%s' % pkg)
             if not prerm:
                 prerm = '#!/bin/sh\n'
             prerm += d.getVar('gconf_prerm')
-            d.setVar('pkg_prerm_%s' % pkg, prerm)
-            d.appendVar("RDEPENDS_%s" % pkg, ' ' + d.getVar('MLPREFIX', False) + 'gconf')
+            d.setVar('pkg_prerm:%s' % pkg, prerm)
+            d.appendVar("RDEPENDS:%s" % pkg, ' ' + d.getVar('MLPREFIX', False) + 'gconf')
 }
diff --git a/poky/meta/classes/gettext.bbclass b/poky/meta/classes/gettext.bbclass
index be2ef3b..f11cb044 100644
--- a/poky/meta/classes/gettext.bbclass
+++ b/poky/meta/classes/gettext.bbclass
@@ -13,10 +13,10 @@
         return '--disable-nls'
     return "--enable-nls"
 
-BASEDEPENDS_append = " ${@gettext_dependencies(d)}"
-EXTRA_OECONF_append = " ${@gettext_oeconf(d)}"
+BASEDEPENDS:append = " ${@gettext_dependencies(d)}"
+EXTRA_OECONF:append = " ${@gettext_oeconf(d)}"
 
 # Without this, msgfmt from gettext-native will not find ITS files
 # provided by target recipes (for example, polkit.its).
-GETTEXTDATADIRS_append_class-target = ":${STAGING_DATADIR}/gettext"
+GETTEXTDATADIRS:append:class-target = ":${STAGING_DATADIR}/gettext"
 export GETTEXTDATADIRS
diff --git a/poky/meta/classes/gi-docgen.bbclass b/poky/meta/classes/gi-docgen.bbclass
index 5750f70..15581ca 100644
--- a/poky/meta/classes/gi-docgen.bbclass
+++ b/poky/meta/classes/gi-docgen.bbclass
@@ -7,8 +7,8 @@
 GIDOCGEN_ENABLED ?= "${@bb.utils.contains('DISTRO_FEATURES', 'api-documentation', 'True', 'False', d)}"
 # When building native recipes, disable gi-docgen, as it is not necessary,
 # pulls in additional dependencies, and makes build times longer
-GIDOCGEN_ENABLED_class-native = "False"
-GIDOCGEN_ENABLED_class-nativesdk = "False"
+GIDOCGEN_ENABLED:class-native = "False"
+GIDOCGEN_ENABLED:class-nativesdk = "False"
 
 # meson: default option name to enable/disable gi-docgen. This matches most
 # projects' configuration. In doubts - check meson_options.txt in project's
@@ -18,7 +18,7 @@
 GIDOCGEN_MESON_DISABLE_FLAG ?= 'false'
 
 # Auto enable/disable based on GIDOCGEN_ENABLED
-EXTRA_OEMESON_prepend = "-D${GIDOCGEN_MESON_OPTION}=${@bb.utils.contains('GIDOCGEN_ENABLED', 'True', '${GIDOCGEN_MESON_ENABLE_FLAG}', '${GIDOCGEN_MESON_DISABLE_FLAG}', d)} "
+EXTRA_OEMESON:prepend = "-D${GIDOCGEN_MESON_OPTION}=${@bb.utils.contains('GIDOCGEN_ENABLED', 'True', '${GIDOCGEN_MESON_ENABLE_FLAG}', '${GIDOCGEN_MESON_DISABLE_FLAG}', d)} "
 
-DEPENDS_append = "${@' gi-docgen-native gi-docgen' if d.getVar('GIDOCGEN_ENABLED') == 'True' else ''}"
+DEPENDS:append = "${@' gi-docgen-native gi-docgen' if d.getVar('GIDOCGEN_ENABLED') == 'True' else ''}"
 
diff --git a/poky/meta/classes/gio-module-cache.bbclass b/poky/meta/classes/gio-module-cache.bbclass
index e429bd3..021eeb1 100644
--- a/poky/meta/classes/gio-module-cache.bbclass
+++ b/poky/meta/classes/gio-module-cache.bbclass
@@ -17,22 +17,22 @@
 fi
 }
 
-python populate_packages_append () {
+python populate_packages:append () {
     packages = d.getVar('GIO_MODULE_PACKAGES').split()
 
     for pkg in packages:
         bb.note("adding gio-module-cache postinst and postrm scripts to %s" % pkg)
 
-        postinst = d.getVar('pkg_postinst_%s' % pkg)
+        postinst = d.getVar('pkg_postinst:%s' % pkg)
         if not postinst:
             postinst = '#!/bin/sh\n'
         postinst += d.getVar('gio_module_cache_common')
-        d.setVar('pkg_postinst_%s' % pkg, postinst)
+        d.setVar('pkg_postinst:%s' % pkg, postinst)
 
-        postrm = d.getVar('pkg_postrm_%s' % pkg)
+        postrm = d.getVar('pkg_postrm:%s' % pkg)
         if not postrm:
             postrm = '#!/bin/sh\n'
         postrm += d.getVar('gio_module_cache_common')
-        d.setVar('pkg_postrm_%s' % pkg, postrm)
+        d.setVar('pkg_postrm:%s' % pkg, postrm)
 }
 
diff --git a/poky/meta/classes/glide.bbclass b/poky/meta/classes/glide.bbclass
index db42174..2db4ac6 100644
--- a/poky/meta/classes/glide.bbclass
+++ b/poky/meta/classes/glide.bbclass
@@ -2,8 +2,8 @@
 #
 # Copyright 2018 (C) O.S. Systems Software LTDA.
 
-DEPENDS_append = " glide-native"
+DEPENDS:append = " glide-native"
 
-do_compile_prepend() {
+do_compile:prepend() {
     ( cd ${B}/src/${GO_IMPORT} && glide install )
 }
diff --git a/poky/meta/classes/gnomebase.bbclass b/poky/meta/classes/gnomebase.bbclass
index 884b1a1..9a5bd9a 100644
--- a/poky/meta/classes/gnomebase.bbclass
+++ b/poky/meta/classes/gnomebase.bbclass
@@ -7,7 +7,7 @@
 GNOMEBN ?= "${BPN}"
 SRC_URI = "${GNOME_MIRROR}/${GNOMEBN}/${@gnome_verdir("${PV}")}/${GNOMEBN}-${PV}.tar.${GNOME_COMPRESS_TYPE};name=archive"
 
-FILES_${PN} += "${datadir}/application-registry  \
+FILES:${PN} += "${datadir}/application-registry  \
                 ${datadir}/mime-info \
                 ${datadir}/mime/packages \
                 ${datadir}/mime/application \
@@ -19,12 +19,12 @@
                 ${datadir}/icons \
 "
 
-FILES_${PN}-doc += "${datadir}/devhelp"
+FILES:${PN}-doc += "${datadir}/devhelp"
 
 GNOMEBASEBUILDCLASS ??= "autotools"
 inherit ${GNOMEBASEBUILDCLASS} pkgconfig
 
-do_install_append() {
+do_install:append() {
 	rm -rf ${D}${localstatedir}/lib/scrollkeeper/*
 	rm -rf ${D}${localstatedir}/scrollkeeper/*
 	rm -f ${D}${datadir}/applications/*.cache
diff --git a/poky/meta/classes/go-mod.bbclass b/poky/meta/classes/go-mod.bbclass
index cabb04d..674d243 100644
--- a/poky/meta/classes/go-mod.bbclass
+++ b/poky/meta/classes/go-mod.bbclass
@@ -12,7 +12,7 @@
 
 # The '-modcacherw' option ensures we have write access to the cached objects so
 # we avoid errors during clean task as well as when removing the TMPDIR.
-GOBUILDFLAGS_append = " -modcacherw"
+GOBUILDFLAGS:append = " -modcacherw"
 
 inherit go
 
diff --git a/poky/meta/classes/go-ptest.bbclass b/poky/meta/classes/go-ptest.bbclass
index e230a80..b282ff7 100644
--- a/poky/meta/classes/go-ptest.bbclass
+++ b/poky/meta/classes/go-ptest.bbclass
@@ -50,5 +50,5 @@
 	chown -R root:root ${D}${PTEST_PATH}
 }
 
-INSANE_SKIP_${PN}-ptest += "ldflags"
+INSANE_SKIP:${PN}-ptest += "ldflags"
 
diff --git a/poky/meta/classes/go.bbclass b/poky/meta/classes/go.bbclass
index 77ec98d..0dd0c5f 100644
--- a/poky/meta/classes/go.bbclass
+++ b/poky/meta/classes/go.bbclass
@@ -2,8 +2,8 @@
 
 GO_PARALLEL_BUILD ?= "${@oe.utils.parallel_make_argument(d, '-p %d')}"
 
-GOROOT_class-native = "${STAGING_LIBDIR_NATIVE}/go"
-GOROOT_class-nativesdk = "${STAGING_DIR_TARGET}${libdir}/go"
+GOROOT:class-native = "${STAGING_LIBDIR_NATIVE}/go"
+GOROOT:class-nativesdk = "${STAGING_DIR_TARGET}${libdir}/go"
 GOROOT = "${STAGING_LIBDIR}/go"
 export GOROOT
 export GOROOT_FINAL = "${libdir}/go"
@@ -15,42 +15,42 @@
 export GOHOSTOS="${BUILD_GOOS}"
 
 GOARM[export] = "0"
-GOARM_arm_class-target = "${TARGET_GOARM}"
-GOARM_arm_class-target[export] = "1"
+GOARM:arm:class-target = "${TARGET_GOARM}"
+GOARM:arm:class-target[export] = "1"
 
 GO386[export] = "0"
-GO386_x86_class-target = "${TARGET_GO386}"
-GO386_x86_class-target[export] = "1"
+GO386:x86:class-target = "${TARGET_GO386}"
+GO386:x86:class-target[export] = "1"
 
 GOMIPS[export] = "0"
-GOMIPS_mips_class-target = "${TARGET_GOMIPS}"
-GOMIPS_mips_class-target[export] = "1"
+GOMIPS:mips:class-target = "${TARGET_GOMIPS}"
+GOMIPS:mips:class-target[export] = "1"
 
-DEPENDS_GOLANG_class-target = "virtual/${TUNE_PKGARCH}-go virtual/${TARGET_PREFIX}go-runtime"
-DEPENDS_GOLANG_class-native = "go-native"
-DEPENDS_GOLANG_class-nativesdk = "virtual/${TARGET_PREFIX}go-crosssdk virtual/${TARGET_PREFIX}go-runtime"
+DEPENDS_GOLANG:class-target = "virtual/${TUNE_PKGARCH}-go virtual/${TARGET_PREFIX}go-runtime"
+DEPENDS_GOLANG:class-native = "go-native"
+DEPENDS_GOLANG:class-nativesdk = "virtual/${TARGET_PREFIX}go-crosssdk virtual/${TARGET_PREFIX}go-runtime"
 
-DEPENDS_append = " ${DEPENDS_GOLANG}"
+DEPENDS:append = " ${DEPENDS_GOLANG}"
 
 GO_LINKSHARED ?= "${@'-linkshared' if d.getVar('GO_DYNLINK') else ''}"
 GO_RPATH_LINK = "${@'-Wl,-rpath-link=${STAGING_DIR_TARGET}${libdir}/go/pkg/${TARGET_GOTUPLE}_dynlink' if d.getVar('GO_DYNLINK') else ''}"
 GO_RPATH = "${@'-r ${libdir}/go/pkg/${TARGET_GOTUPLE}_dynlink' if d.getVar('GO_DYNLINK') else ''}"
-GO_RPATH_class-native = "${@'-r ${STAGING_LIBDIR_NATIVE}/go/pkg/${TARGET_GOTUPLE}_dynlink' if d.getVar('GO_DYNLINK') else ''}"
-GO_RPATH_LINK_class-native = "${@'-Wl,-rpath-link=${STAGING_LIBDIR_NATIVE}/go/pkg/${TARGET_GOTUPLE}_dynlink' if d.getVar('GO_DYNLINK') else ''}"
+GO_RPATH:class-native = "${@'-r ${STAGING_LIBDIR_NATIVE}/go/pkg/${TARGET_GOTUPLE}_dynlink' if d.getVar('GO_DYNLINK') else ''}"
+GO_RPATH_LINK:class-native = "${@'-Wl,-rpath-link=${STAGING_LIBDIR_NATIVE}/go/pkg/${TARGET_GOTUPLE}_dynlink' if d.getVar('GO_DYNLINK') else ''}"
 GO_EXTLDFLAGS ?= "${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS} ${GO_RPATH_LINK} ${LDFLAGS}"
 GO_LINKMODE ?= ""
-GO_LINKMODE_class-nativesdk = "--linkmode=external"
-GO_LINKMODE_class-native = "--linkmode=external"
+GO_LINKMODE:class-nativesdk = "--linkmode=external"
+GO_LINKMODE:class-native = "--linkmode=external"
 GO_LDFLAGS ?= '-ldflags="${GO_RPATH} ${GO_LINKMODE} -extldflags '${GO_EXTLDFLAGS}'"'
 export GOBUILDFLAGS ?= "-v ${GO_LDFLAGS} -trimpath"
 export GOPATH_OMIT_IN_ACTIONID ?= "1"
 export GOPTESTBUILDFLAGS ?= "${GOBUILDFLAGS} -c"
 export GOPTESTFLAGS ?= ""
-GOBUILDFLAGS_prepend_task-compile = "${GO_PARALLEL_BUILD} "
+GOBUILDFLAGS:prepend:task-compile = "${GO_PARALLEL_BUILD} "
 
 export GO = "${HOST_PREFIX}go"
 GOTOOLDIR = "${STAGING_LIBDIR_NATIVE}/${TARGET_SYS}/go/pkg/tool/${BUILD_GOTUPLE}"
-GOTOOLDIR_class-native = "${STAGING_LIBDIR_NATIVE}/go/pkg/tool/${BUILD_GOTUPLE}"
+GOTOOLDIR:class-native = "${STAGING_LIBDIR_NATIVE}/go/pkg/tool/${BUILD_GOTUPLE}"
 export GOTOOLDIR
 
 export CGO_ENABLED ?= "1"
@@ -140,17 +140,17 @@
 
 EXPORT_FUNCTIONS do_unpack do_configure do_compile do_install
 
-FILES_${PN}-dev = "${libdir}/go/src"
-FILES_${PN}-staticdev = "${libdir}/go/pkg"
+FILES:${PN}-dev = "${libdir}/go/src"
+FILES:${PN}-staticdev = "${libdir}/go/pkg"
 
-INSANE_SKIP_${PN} += "ldflags"
+INSANE_SKIP:${PN} += "ldflags"
 
 # Add -buildmode=pie to GOBUILDFLAGS to satisfy "textrel" QA checking, but mips
 # doesn't support -buildmode=pie, so skip the QA checking for mips/rv32 and its
 # variants.
 python() {
     if 'mips' in d.getVar('TARGET_ARCH') or 'riscv32' in d.getVar('TARGET_ARCH'):
-        d.appendVar('INSANE_SKIP_%s' % d.getVar('PN'), " textrel")
+        d.appendVar('INSANE_SKIP:%s' % d.getVar('PN'), " textrel")
     else:
         d.appendVar('GOBUILDFLAGS', ' -buildmode=pie')
 }
diff --git a/poky/meta/classes/goarch.bbclass b/poky/meta/classes/goarch.bbclass
index e4e0ca3..48dc48d 100644
--- a/poky/meta/classes/goarch.bbclass
+++ b/poky/meta/classes/goarch.bbclass
@@ -6,54 +6,54 @@
 HOST_GOARM = "${@go_map_arm(d.getVar('HOST_ARCH'), d)}"
 HOST_GO386 = "${@go_map_386(d.getVar('HOST_ARCH'), d.getVar('TUNE_FEATURES'), d)}"
 HOST_GOMIPS = "${@go_map_mips(d.getVar('HOST_ARCH'), d.getVar('TUNE_FEATURES'), d)}"
-HOST_GOARM_class-native = "7"
-HOST_GO386_class-native = "sse2"
-HOST_GOMIPS_class-native = "hardfloat"
+HOST_GOARM:class-native = "7"
+HOST_GO386:class-native = "sse2"
+HOST_GOMIPS:class-native = "hardfloat"
 HOST_GOTUPLE = "${HOST_GOOS}_${HOST_GOARCH}"
 TARGET_GOOS = "${@go_map_os(d.getVar('TARGET_OS'), d)}"
 TARGET_GOARCH = "${@go_map_arch(d.getVar('TARGET_ARCH'), d)}"
 TARGET_GOARM = "${@go_map_arm(d.getVar('TARGET_ARCH'), d)}"
 TARGET_GO386 = "${@go_map_386(d.getVar('TARGET_ARCH'), d.getVar('TUNE_FEATURES'), d)}"
 TARGET_GOMIPS = "${@go_map_mips(d.getVar('TARGET_ARCH'), d.getVar('TUNE_FEATURES'), d)}"
-TARGET_GOARM_class-native = "7"
-TARGET_GO386_class-native = "sse2"
-TARGET_GOMIPS_class-native = "hardfloat"
+TARGET_GOARM:class-native = "7"
+TARGET_GO386:class-native = "sse2"
+TARGET_GOMIPS:class-native = "hardfloat"
 TARGET_GOTUPLE = "${TARGET_GOOS}_${TARGET_GOARCH}"
 GO_BUILD_BINDIR = "${@['bin/${HOST_GOTUPLE}','bin'][d.getVar('BUILD_GOTUPLE') == d.getVar('HOST_GOTUPLE')]}"
 
 # Use the MACHINEOVERRIDES to map ARM CPU architecture passed to GO via GOARM.
 # This is combined with *_ARCH to set HOST_GOARM and TARGET_GOARM.
 BASE_GOARM = ''
-BASE_GOARM_armv7ve = '7'
-BASE_GOARM_armv7a = '7'
-BASE_GOARM_armv6 = '6'
-BASE_GOARM_armv5 = '5'
+BASE_GOARM:armv7ve = '7'
+BASE_GOARM:armv7a = '7'
+BASE_GOARM:armv6 = '6'
+BASE_GOARM:armv5 = '5'
 
 # Go supports dynamic linking on a limited set of architectures.
 # See the supportsDynlink function in go/src/cmd/compile/internal/gc/main.go
 GO_DYNLINK = ""
-GO_DYNLINK_arm = "1"
-GO_DYNLINK_aarch64 = "1"
-GO_DYNLINK_x86 = "1"
-GO_DYNLINK_x86-64 = "1"
-GO_DYNLINK_powerpc64 = "1"
-GO_DYNLINK_powerpc64le = "1"
-GO_DYNLINK_class-native = ""
-GO_DYNLINK_class-nativesdk = ""
+GO_DYNLINK:arm = "1"
+GO_DYNLINK:aarch64 = "1"
+GO_DYNLINK:x86 = "1"
+GO_DYNLINK:x86-64 = "1"
+GO_DYNLINK:powerpc64 = "1"
+GO_DYNLINK:powerpc64le = "1"
+GO_DYNLINK:class-native = ""
+GO_DYNLINK:class-nativesdk = ""
 
 # define here because everybody inherits this class
 #
-COMPATIBLE_HOST_linux-gnux32 = "null"
-COMPATIBLE_HOST_linux-muslx32 = "null"
-COMPATIBLE_HOST_powerpc = "null"
-COMPATIBLE_HOST_powerpc64 = "null"
-COMPATIBLE_HOST_mipsarchn32 = "null"
+COMPATIBLE_HOST:linux-gnux32 = "null"
+COMPATIBLE_HOST:linux-muslx32 = "null"
+COMPATIBLE_HOST:powerpc = "null"
+COMPATIBLE_HOST:powerpc64 = "null"
+COMPATIBLE_HOST:mipsarchn32 = "null"
 
-ARM_INSTRUCTION_SET_armv4 = "arm"
-ARM_INSTRUCTION_SET_armv5 = "arm"
-ARM_INSTRUCTION_SET_armv6 = "arm"
+ARM_INSTRUCTION_SET:armv4 = "arm"
+ARM_INSTRUCTION_SET:armv5 = "arm"
+ARM_INSTRUCTION_SET:armv6 = "arm"
 
-TUNE_CCARGS_remove = "-march=mips32r2"
+TUNE_CCARGS:remove = "-march=mips32r2"
 SECURITY_NOPIE_CFLAGS ??= ""
 
 # go can't be built with ccache:
diff --git a/poky/meta/classes/gobject-introspection.bbclass b/poky/meta/classes/gobject-introspection.bbclass
index 504f75e..822a226 100644
--- a/poky/meta/classes/gobject-introspection.bbclass
+++ b/poky/meta/classes/gobject-introspection.bbclass
@@ -15,29 +15,29 @@
 GIR_MESON_DISABLE_FLAG ?= 'false'
 
 # Auto enable/disable based on GI_DATA_ENABLED
-EXTRA_OECONF_prepend_class-target = "${@bb.utils.contains('GI_DATA_ENABLED', 'True', '--enable-introspection', '--disable-introspection', d)} "
-EXTRA_OEMESON_prepend_class-target = "-D${GIR_MESON_OPTION}=${@bb.utils.contains('GI_DATA_ENABLED', 'True', '${GIR_MESON_ENABLE_FLAG}', '${GIR_MESON_DISABLE_FLAG}', d)} "
+EXTRA_OECONF:prepend:class-target = "${@bb.utils.contains('GI_DATA_ENABLED', 'True', '--enable-introspection', '--disable-introspection', d)} "
+EXTRA_OEMESON:prepend:class-target = "-D${GIR_MESON_OPTION}=${@bb.utils.contains('GI_DATA_ENABLED', 'True', '${GIR_MESON_ENABLE_FLAG}', '${GIR_MESON_DISABLE_FLAG}', d)} "
 
 # When building native recipes, disable introspection, as it is not necessary,
 # pulls in additional dependencies, and makes build times longer
-EXTRA_OECONF_prepend_class-native = "--disable-introspection "
-EXTRA_OECONF_prepend_class-nativesdk = "--disable-introspection "
-EXTRA_OEMESON_prepend_class-native = "-D${GIR_MESON_OPTION}=${GIR_MESON_DISABLE_FLAG} "
-EXTRA_OEMESON_prepend_class-nativesdk = "-D${GIR_MESON_OPTION}=${GIR_MESON_DISABLE_FLAG} "
+EXTRA_OECONF:prepend:class-native = "--disable-introspection "
+EXTRA_OECONF:prepend:class-nativesdk = "--disable-introspection "
+EXTRA_OEMESON:prepend:class-native = "-D${GIR_MESON_OPTION}=${GIR_MESON_DISABLE_FLAG} "
+EXTRA_OEMESON:prepend:class-nativesdk = "-D${GIR_MESON_OPTION}=${GIR_MESON_DISABLE_FLAG} "
 
 # Generating introspection data depends on a combination of native and target
 # introspection tools, and qemu to run the target tools.
-DEPENDS_append_class-target = " gobject-introspection gobject-introspection-native qemu-native prelink-native"
+DEPENDS:append:class-target = " gobject-introspection gobject-introspection-native qemu-native prelink-native"
 
 # Even though introspection is disabled on -native, gobject-introspection package is still
 # needed for m4 macros.
-DEPENDS_append_class-native = " gobject-introspection-native"
-DEPENDS_append_class-nativesdk = " gobject-introspection-native"
+DEPENDS:append:class-native = " gobject-introspection-native"
+DEPENDS:append:class-nativesdk = " gobject-introspection-native"
 
 # This is used by introspection tools to find .gir includes
 export XDG_DATA_DIRS = "${STAGING_DATADIR}:${STAGING_LIBDIR}"
 
-do_configure_prepend_class-target () {
+do_configure:prepend:class-target () {
     # introspection.m4 pre-packaged with upstream tarballs does not yet
     # have our fixes
     mkdir -p ${S}/m4
@@ -46,8 +46,8 @@
 
 # .typelib files are needed at runtime and so they go to the main package (so
 # they'll be together with libraries they support).
-FILES_${PN}_append = " ${libdir}/girepository-*/*.typelib" 
+FILES:${PN}:append = " ${libdir}/girepository-*/*.typelib" 
     
 # .gir files go to dev package, as they're needed for developing (but not for
 # running) things that depends on introspection.
-FILES_${PN}-dev_append = " ${datadir}/gir-*/*.gir ${libdir}/gir-*/*.gir"
+FILES:${PN}-dev:append = " ${datadir}/gir-*/*.gir ${libdir}/gir-*/*.gir"
diff --git a/poky/meta/classes/gsettings.bbclass b/poky/meta/classes/gsettings.bbclass
index 33afc96..3fa5bd4 100644
--- a/poky/meta/classes/gsettings.bbclass
+++ b/poky/meta/classes/gsettings.bbclass
@@ -13,30 +13,30 @@
     pkg = d.getVar("GSETTINGS_PACKAGE")
     if pkg:
         d.appendVar("PACKAGE_WRITE_DEPS", " glib-2.0-native")
-        d.appendVar("RDEPENDS_" + pkg, " ${MLPREFIX}glib-2.0-utils")
-        d.appendVar("FILES_" + pkg, " ${datadir}/glib-2.0/schemas")
+        d.appendVar("RDEPENDS:" + pkg, " ${MLPREFIX}glib-2.0-utils")
+        d.appendVar("FILES:" + pkg, " ${datadir}/glib-2.0/schemas")
 }
 
 gsettings_postinstrm () {
 	glib-compile-schemas $D${datadir}/glib-2.0/schemas
 }
 
-python populate_packages_append () {
+python populate_packages:append () {
     pkg = d.getVar('GSETTINGS_PACKAGE')
     if pkg:
         bb.note("adding gsettings postinst scripts to %s" % pkg)
 
-        postinst = d.getVar('pkg_postinst_%s' % pkg) or d.getVar('pkg_postinst')
+        postinst = d.getVar('pkg_postinst:%s' % pkg) or d.getVar('pkg_postinst')
         if not postinst:
             postinst = '#!/bin/sh\n'
         postinst += d.getVar('gsettings_postinstrm')
-        d.setVar('pkg_postinst_%s' % pkg, postinst)
+        d.setVar('pkg_postinst:%s' % pkg, postinst)
 
         bb.note("adding gsettings postrm scripts to %s" % pkg)
 
-        postrm = d.getVar('pkg_postrm_%s' % pkg) or d.getVar('pkg_postrm')
+        postrm = d.getVar('pkg_postrm:%s' % pkg) or d.getVar('pkg_postrm')
         if not postrm:
             postrm = '#!/bin/sh\n'
         postrm += d.getVar('gsettings_postinstrm')
-        d.setVar('pkg_postrm_%s' % pkg, postrm)
+        d.setVar('pkg_postrm:%s' % pkg, postrm)
 }
diff --git a/poky/meta/classes/gtk-doc.bbclass b/poky/meta/classes/gtk-doc.bbclass
index ef99e63..7149bc0 100644
--- a/poky/meta/classes/gtk-doc.bbclass
+++ b/poky/meta/classes/gtk-doc.bbclass
@@ -7,7 +7,7 @@
 #
 # It should be used in recipes to determine whether gtk-doc based documentation should be built,
 # so that qemu use can be avoided when necessary.
-GTKDOC_ENABLED_class-native = "False"
+GTKDOC_ENABLED:class-native = "False"
 GTKDOC_ENABLED ?= "${@bb.utils.contains('DISTRO_FEATURES', 'api-documentation', \
                       bb.utils.contains('MACHINE_FEATURES', 'qemu-usermode', 'True', 'False', d), 'False', d)}"
 
@@ -19,20 +19,20 @@
 GTKDOC_MESON_DISABLE_FLAG ?= 'false'
 
 # Auto enable/disable based on GTKDOC_ENABLED
-EXTRA_OECONF_prepend_class-target = "${@bb.utils.contains('GTKDOC_ENABLED', 'True', '--enable-gtk-doc --enable-gtk-doc-html --disable-gtk-doc-pdf', \
+EXTRA_OECONF:prepend:class-target = "${@bb.utils.contains('GTKDOC_ENABLED', 'True', '--enable-gtk-doc --enable-gtk-doc-html --disable-gtk-doc-pdf', \
                                                                                     '--disable-gtk-doc', d)} "
-EXTRA_OEMESON_prepend_class-target = "-D${GTKDOC_MESON_OPTION}=${@bb.utils.contains('GTKDOC_ENABLED', 'True', '${GTKDOC_MESON_ENABLE_FLAG}', '${GTKDOC_MESON_DISABLE_FLAG}', d)} "
+EXTRA_OEMESON:prepend:class-target = "-D${GTKDOC_MESON_OPTION}=${@bb.utils.contains('GTKDOC_ENABLED', 'True', '${GTKDOC_MESON_ENABLE_FLAG}', '${GTKDOC_MESON_DISABLE_FLAG}', d)} "
 
 # When building native recipes, disable gtkdoc, as it is not necessary,
 # pulls in additional dependencies, and makes build times longer
-EXTRA_OECONF_prepend_class-native = "--disable-gtk-doc "
-EXTRA_OECONF_prepend_class-nativesdk = "--disable-gtk-doc "
-EXTRA_OEMESON_prepend_class-native = "-D${GTKDOC_MESON_OPTION}=${GTKDOC_MESON_DISABLE_FLAG} "
-EXTRA_OEMESON_prepend_class-nativesdk = "-D${GTKDOC_MESON_OPTION}=${GTKDOC_MESON_DISABLE_FLAG} "
+EXTRA_OECONF:prepend:class-native = "--disable-gtk-doc "
+EXTRA_OECONF:prepend:class-nativesdk = "--disable-gtk-doc "
+EXTRA_OEMESON:prepend:class-native = "-D${GTKDOC_MESON_OPTION}=${GTKDOC_MESON_DISABLE_FLAG} "
+EXTRA_OEMESON:prepend:class-nativesdk = "-D${GTKDOC_MESON_OPTION}=${GTKDOC_MESON_DISABLE_FLAG} "
 
 # Even though gtkdoc is disabled on -native, gtk-doc package is still
 # needed for m4 macros.
-DEPENDS_append = " gtk-doc-native"
+DEPENDS:append = " gtk-doc-native"
 
 # The documentation directory, where the infrastructure will be copied.
 # gtkdocize has a default of "." so to handle out-of-tree builds set this to $S.
@@ -41,15 +41,15 @@
 export STAGING_DIR_HOST
 
 inherit python3native pkgconfig qemu
-DEPENDS_append = "${@' qemu-native' if d.getVar('GTKDOC_ENABLED') == 'True' else ''}"
+DEPENDS:append = "${@' qemu-native' if d.getVar('GTKDOC_ENABLED') == 'True' else ''}"
 
-do_configure_prepend () {
+do_configure:prepend () {
 	# Need to use ||true as this is only needed if configure.ac both exists
 	# and uses GTK_DOC_CHECK.
 	gtkdocize --srcdir ${S} --docdir ${GTKDOC_DOCDIR} || true
 }
 
-do_compile_prepend_class-target () {
+do_compile:prepend:class-target () {
     if [ ${GTKDOC_ENABLED} = True ]; then
         # Write out a qemu wrapper that will be given to gtkdoc-scangobj so that it
         # can run target helper binaries through that.
diff --git a/poky/meta/classes/gtk-icon-cache.bbclass b/poky/meta/classes/gtk-icon-cache.bbclass
index 340a283..0248ba2 100644
--- a/poky/meta/classes/gtk-icon-cache.bbclass
+++ b/poky/meta/classes/gtk-icon-cache.bbclass
@@ -1,4 +1,4 @@
-FILES_${PN} += "${datadir}/icons/hicolor"
+FILES:${PN} += "${datadir}/icons/hicolor"
 
 #gtk+3 reqiure GTK3DISTROFEATURES, DEPENDS on it make all the
 #recipes inherit this class require GTK3DISTROFEATURES
@@ -45,7 +45,7 @@
 fi
 }
 
-python populate_packages_append () {
+python populate_packages:append () {
     packages = d.getVar('PACKAGES').split()
     pkgdest =  d.getVar('PKGDEST')
     
@@ -56,29 +56,29 @@
 
         bb.note("adding hicolor-icon-theme dependency to %s" % pkg)
         rdepends = ' ' + d.getVar('MLPREFIX', False) + "hicolor-icon-theme"
-        d.appendVar('RDEPENDS_%s' % pkg, rdepends)
+        d.appendVar('RDEPENDS:%s' % pkg, rdepends)
 
         #gtk_icon_cache_postinst depend on gdk-pixbuf and gtk+3
         bb.note("adding gdk-pixbuf dependency to %s" % pkg)
         rdepends = ' ' + d.getVar('MLPREFIX', False) + "gdk-pixbuf"
-        d.appendVar('RDEPENDS_%s' % pkg, rdepends)
+        d.appendVar('RDEPENDS:%s' % pkg, rdepends)
 
         bb.note("adding gtk+3 dependency to %s" % pkg)
         rdepends = ' ' + d.getVar('MLPREFIX', False) + "gtk+3"
-        d.appendVar('RDEPENDS_%s' % pkg, rdepends)
+        d.appendVar('RDEPENDS:%s' % pkg, rdepends)
 
         bb.note("adding gtk-icon-cache postinst and postrm scripts to %s" % pkg)
 
-        postinst = d.getVar('pkg_postinst_%s' % pkg)
+        postinst = d.getVar('pkg_postinst:%s' % pkg)
         if not postinst:
             postinst = '#!/bin/sh\n'
         postinst += d.getVar('gtk_icon_cache_postinst')
-        d.setVar('pkg_postinst_%s' % pkg, postinst)
+        d.setVar('pkg_postinst:%s' % pkg, postinst)
 
-        postrm = d.getVar('pkg_postrm_%s' % pkg)
+        postrm = d.getVar('pkg_postrm:%s' % pkg)
         if not postrm:
             postrm = '#!/bin/sh\n'
         postrm += d.getVar('gtk_icon_cache_postrm')
-        d.setVar('pkg_postrm_%s' % pkg, postrm)
+        d.setVar('pkg_postrm:%s' % pkg, postrm)
 }
 
diff --git a/poky/meta/classes/gtk-immodules-cache.bbclass b/poky/meta/classes/gtk-immodules-cache.bbclass
index 8e783fb..2107517 100644
--- a/poky/meta/classes/gtk-immodules-cache.bbclass
+++ b/poky/meta/classes/gtk-immodules-cache.bbclass
@@ -47,23 +47,23 @@
 fi
 }
 
-python populate_packages_append () {
+python populate_packages:append () {
     gtkimmodules_pkgs = d.getVar('GTKIMMODULES_PACKAGES').split()
 
     for pkg in gtkimmodules_pkgs:
             bb.note("adding gtk-immodule-cache postinst and postrm scripts to %s" % pkg)
 
-            postinst = d.getVar('pkg_postinst_%s' % pkg)
+            postinst = d.getVar('pkg_postinst:%s' % pkg)
             if not postinst:
                 postinst = '#!/bin/sh\n'
             postinst += d.getVar('gtk_immodule_cache_postinst')
-            d.setVar('pkg_postinst_%s' % pkg, postinst)
+            d.setVar('pkg_postinst:%s' % pkg, postinst)
 
-            postrm = d.getVar('pkg_postrm_%s' % pkg)
+            postrm = d.getVar('pkg_postrm:%s' % pkg)
             if not postrm:
                 postrm = '#!/bin/sh\n'
             postrm += d.getVar('gtk_immodule_cache_postrm')
-            d.setVar('pkg_postrm_%s' % pkg, postrm)
+            d.setVar('pkg_postrm:%s' % pkg, postrm)
 }
 
 python __anonymous() {
diff --git a/poky/meta/classes/icecc.bbclass b/poky/meta/classes/icecc.bbclass
index 80943fc..794e993 100644
--- a/poky/meta/classes/icecc.bbclass
+++ b/poky/meta/classes/icecc.bbclass
@@ -47,7 +47,7 @@
 #
 # A useful thing to do for testing Icecream changes locally is to add a
 # subversion in local.conf:
-#  ICECC_ENV_VERSION_append = "-my-ver-1"
+#  ICECC_ENV_VERSION:append = "-my-ver-1"
 ICECC_ENV_VERSION = "2"
 
 # Default to disabling the caret workaround, If set to "1" in local.conf, icecc
@@ -97,7 +97,7 @@
     image \
     "
 
-def icecc_dep_prepend(d):
+def get_icecc_dep(d):
     # INHIBIT_DEFAULT_DEPS doesn't apply to the patch command.  Whether or  not
     # we need that built is the responsibility of the patch function / class, not
     # the application.
@@ -105,7 +105,7 @@
         return "icecc-create-env-native"
     return ""
 
-DEPENDS_prepend = "${@icecc_dep_prepend(d)} "
+DEPENDS:prepend = "${@get_icecc_dep(d)} "
 
 get_cross_kernel_cc[vardepsexclude] += "KERNEL_CC"
 def get_cross_kernel_cc(bb,d):
@@ -428,28 +428,28 @@
     bbnote "Using icecc tarball: $ICECC_VERSION"
 }
 
-do_configure_prepend() {
+do_configure:prepend() {
     set_icecc_env
 }
 
-do_compile_prepend() {
+do_compile:prepend() {
     set_icecc_env
 }
 
-do_compile_kernelmodules_prepend() {
+do_compile_kernelmodules:prepend() {
     set_icecc_env
 }
 
-do_install_prepend() {
+do_install:prepend() {
     set_icecc_env
 }
 
 # IceCream is not (currently) supported in the extensible SDK
 ICECC_SDK_HOST_TASK = "nativesdk-icecc-toolchain"
-ICECC_SDK_HOST_TASK_task-populate-sdk-ext = ""
+ICECC_SDK_HOST_TASK:task-populate-sdk-ext = ""
 
 # Don't include IceCream in uninative tarball
-ICECC_SDK_HOST_TASK_pn-uninative-tarball = ""
+ICECC_SDK_HOST_TASK:pn-uninative-tarball = ""
 
 # Add the toolchain scripts to the SDK
-TOOLCHAIN_HOST_TASK_append = " ${ICECC_SDK_HOST_TASK}"
+TOOLCHAIN_HOST_TASK:append = " ${ICECC_SDK_HOST_TASK}"
diff --git a/poky/meta/classes/image-combined-dbg.bbclass b/poky/meta/classes/image-combined-dbg.bbclass
index f4772f7..e5dc61f 100644
--- a/poky/meta/classes/image-combined-dbg.bbclass
+++ b/poky/meta/classes/image-combined-dbg.bbclass
@@ -1,4 +1,4 @@
-IMAGE_PREPROCESS_COMMAND_append = " combine_dbg_image; "
+IMAGE_PREPROCESS_COMMAND:append = " combine_dbg_image; "
 
 combine_dbg_image () {
         if [ "${IMAGE_GEN_DEBUGFS}" = "1" -a -e ${IMAGE_ROOTFS}-dbg ]; then
diff --git a/poky/meta/classes/image-container.bbclass b/poky/meta/classes/image-container.bbclass
index f002858..3d19935 100644
--- a/poky/meta/classes/image-container.bbclass
+++ b/poky/meta/classes/image-container.bbclass
@@ -1,6 +1,6 @@
 ROOTFS_BOOTSTRAP_INSTALL = ""
 IMAGE_TYPES_MASKED += "container"
-IMAGE_TYPEDEP_container = "tar.bz2"
+IMAGE_TYPEDEP:container = "tar.bz2"
 
 python __anonymous() {
     if "container" in d.getVar("IMAGE_FSTYPES") and \
diff --git a/poky/meta/classes/image-live.bbclass b/poky/meta/classes/image-live.bbclass
index fd876ed..2c94819 100644
--- a/poky/meta/classes/image-live.bbclass
+++ b/poky/meta/classes/image-live.bbclass
@@ -42,9 +42,9 @@
 LIVE_ROOTFS_TYPE ?= "ext4"
 ROOTFS ?= "${IMGDEPLOYDIR}/${IMAGE_LINK_NAME}.${LIVE_ROOTFS_TYPE}"
 
-IMAGE_TYPEDEP_live = "${LIVE_ROOTFS_TYPE}"
-IMAGE_TYPEDEP_iso = "${LIVE_ROOTFS_TYPE}"
-IMAGE_TYPEDEP_hddimg = "${LIVE_ROOTFS_TYPE}"
+IMAGE_TYPEDEP:live = "${LIVE_ROOTFS_TYPE}"
+IMAGE_TYPEDEP:iso = "${LIVE_ROOTFS_TYPE}"
+IMAGE_TYPEDEP:hddimg = "${LIVE_ROOTFS_TYPE}"
 IMAGE_TYPES_MASKED += "live hddimg iso"
 
 python() {
diff --git a/poky/meta/classes/image-prelink.bbclass b/poky/meta/classes/image-prelink.bbclass
index ebf6e6d..0da094a 100644
--- a/poky/meta/classes/image-prelink.bbclass
+++ b/poky/meta/classes/image-prelink.bbclass
@@ -1,6 +1,6 @@
 do_rootfs[depends] += "prelink-native:do_populate_sysroot"
 
-IMAGE_PREPROCESS_COMMAND_append_libc-glibc = " prelink_setup; prelink_image; "
+IMAGE_PREPROCESS_COMMAND:append:libc-glibc = " prelink_setup; prelink_image; "
 
 python prelink_setup () {
     oe.utils.write_ld_so_conf(d)
diff --git a/poky/meta/classes/image.bbclass b/poky/meta/classes/image.bbclass
index 67603d9..d768951 100644
--- a/poky/meta/classes/image.bbclass
+++ b/poky/meta/classes/image.bbclass
@@ -26,7 +26,7 @@
 DEPENDS += "${@' '.join(["%s-qemuwrapper-cross" % m for m in d.getVar("MULTILIB_VARIANTS").split()])} qemuwrapper-cross depmodwrapper-cross cross-localedef-native"
 RDEPENDS += "${PACKAGE_INSTALL} ${LINGUAS_INSTALL} ${IMAGE_INSTALL_DEBUGFS}"
 RRECOMMENDS += "${PACKAGE_INSTALL_ATTEMPTONLY}"
-PATH_prepend = "${@":".join(all_multilib_tune_values(d, 'STAGING_BINDIR_CROSS').split())}:"
+PATH:prepend = "${@":".join(all_multilib_tune_values(d, 'STAGING_BINDIR_CROSS').split())}:"
 
 INHIBIT_DEFAULT_DEPS = "1"
 
@@ -92,7 +92,7 @@
 PACKAGE_ARCH = "${MACHINE_ARCH}"
 
 LDCONFIGDEPEND ?= "ldconfig-native:do_populate_sysroot"
-LDCONFIGDEPEND_libc-musl = ""
+LDCONFIGDEPEND:libc-musl = ""
 
 # This is needed to have depmod data in PKGDATA_DIR,
 # but if you're building small initramfs image
@@ -273,7 +273,7 @@
 }
 do_image_complete[dirs] = "${TOPDIR}"
 SSTATETASKS += "do_image_complete"
-SSTATE_SKIP_CREATION_task-image-complete = '1'
+SSTATE_SKIP_CREATION:task-image-complete = '1'
 do_image_complete[sstate-inputdirs] = "${IMGDEPLOYDIR}"
 do_image_complete[sstate-outputdirs] = "${DEPLOY_DIR_IMAGE}"
 do_image_complete[stamp-extra-info] = "${MACHINE_ARCH}"
@@ -314,7 +314,7 @@
 addtask do_image_qa after do_rootfs before do_image
 
 SSTATETASKS += "do_image_qa"
-SSTATE_SKIP_CREATION_task-image-qa = '1'
+SSTATE_SKIP_CREATION:task-image-qa = '1'
 do_image_qa[sstate-inputdirs] = ""
 do_image_qa[sstate-outputdirs] = ""
 python do_image_qa_setscene () {
@@ -382,8 +382,8 @@
         if t.startswith("debugfs_"):
             t = t[8:]
             debug = "debugfs_"
-        deps = (d.getVar('IMAGE_TYPEDEP_' + t) or "").split()
-        vardeps.add('IMAGE_TYPEDEP_' + t)
+        deps = (d.getVar('IMAGE_TYPEDEP:' + t) or "").split()
+        vardeps.add('IMAGE_TYPEDEP:' + t)
         if baset not in typedeps:
             typedeps[baset] = set()
         deps = [debug + dep for dep in deps]
@@ -431,21 +431,21 @@
         localdata.delVar('DATETIME')
         localdata.delVar('DATE')
         localdata.delVar('TMPDIR')
-        vardepsexclude = (d.getVarFlag('IMAGE_CMD_' + realt, 'vardepsexclude', True) or '').split()
+        vardepsexclude = (d.getVarFlag('IMAGE_CMD:' + realt, 'vardepsexclude', True) or '').split()
         for dep in vardepsexclude:
             localdata.delVar(dep)
 
         image_cmd = localdata.getVar("IMAGE_CMD")
-        vardeps.add('IMAGE_CMD_' + realt)
+        vardeps.add('IMAGE_CMD:' + realt)
         if image_cmd:
             cmds.append("\t" + image_cmd)
         else:
             bb.fatal("No IMAGE_CMD defined for IMAGE_FSTYPES entry '%s' - possibly invalid type name or missing support class" % t)
         cmds.append(localdata.expand("\tcd ${IMGDEPLOYDIR}"))
 
-        # Since a copy of IMAGE_CMD_xxx will be inlined within do_image_xxx,
-        # prevent a redundant copy of IMAGE_CMD_xxx being emitted as a function.
-        d.delVarFlag('IMAGE_CMD_' + realt, 'func')
+        # Since a copy of IMAGE_CMD:xxx will be inlined within do_image_xxx,
+        # prevent a redundant copy of IMAGE_CMD:xxx being emitted as a function.
+        d.delVarFlag('IMAGE_CMD:' + realt, 'func')
 
         rm_tmp_images = set()
         def gen_conversion_cmds(bt):
@@ -457,11 +457,10 @@
                     # Create input image first.
                     gen_conversion_cmds(type)
                     localdata.setVar('type', type)
-                    cmd = "\t" + (localdata.getVar("CONVERSION_CMD_" + ctype) or localdata.getVar("COMPRESS_CMD_" + ctype))
+                    cmd = "\t" + localdata.getVar("CONVERSION_CMD:" + ctype)
                     if cmd not in cmds:
                         cmds.append(cmd)
-                    vardeps.add('CONVERSION_CMD_' + ctype)
-                    vardeps.add('COMPRESS_CMD_' + ctype)
+                    vardeps.add('CONVERSION_CMD:' + ctype)
                     subimage = type + "." + ctype
                     if subimage not in subimages:
                         subimages.append(subimage)
@@ -667,6 +666,6 @@
     fi
 }
 
-IMAGE_PREPROCESS_COMMAND_append = " ${@ 'systemd_preset_all;' if bb.utils.contains('DISTRO_FEATURES', 'systemd', True, False, d) and not bb.utils.contains('IMAGE_FEATURES', 'stateless-rootfs', True, False, d) else ''} reproducible_final_image_task; "
+IMAGE_PREPROCESS_COMMAND:append = " ${@ 'systemd_preset_all;' if bb.utils.contains('DISTRO_FEATURES', 'systemd', True, False, d) and not bb.utils.contains('IMAGE_FEATURES', 'stateless-rootfs', True, False, d) else ''} reproducible_final_image_task; "
 
 CVE_PRODUCT = ""
diff --git a/poky/meta/classes/image_types.bbclass b/poky/meta/classes/image_types.bbclass
index 954d673..e0eb06c 100644
--- a/poky/meta/classes/image_types.bbclass
+++ b/poky/meta/classes/image_types.bbclass
@@ -29,7 +29,7 @@
         if d.getVar(var) is not None:
             deprecated.add(var)
 
-        for typedepends in (d.getVar("IMAGE_TYPEDEP_%s" % basetype) or "").split():
+        for typedepends in (d.getVar("IMAGE_TYPEDEP:%s" % basetype) or "").split():
             base, rest = split_types(typedepends)
             resttypes += rest
 
@@ -56,9 +56,9 @@
 ZSTD_COMPRESSION_LEVEL ?= "-3"
 
 JFFS2_SUM_EXTRA_ARGS ?= ""
-IMAGE_CMD_jffs2 = "mkfs.jffs2 --root=${IMAGE_ROOTFS} --faketime --output=${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.jffs2 ${EXTRA_IMAGECMD}"
+IMAGE_CMD:jffs2 = "mkfs.jffs2 --root=${IMAGE_ROOTFS} --faketime --output=${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.jffs2 ${EXTRA_IMAGECMD}"
 
-IMAGE_CMD_cramfs = "mkfs.cramfs ${IMAGE_ROOTFS} ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.cramfs ${EXTRA_IMAGECMD}"
+IMAGE_CMD:cramfs = "mkfs.cramfs ${IMAGE_ROOTFS} ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.cramfs ${EXTRA_IMAGECMD}"
 
 oe_mkext234fs () {
 	fstype=$1
@@ -88,12 +88,12 @@
 	fsck.$fstype -pvfD ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.$fstype || [ $? -le 3 ]
 }
 
-IMAGE_CMD_ext2 = "oe_mkext234fs ext2 ${EXTRA_IMAGECMD}"
-IMAGE_CMD_ext3 = "oe_mkext234fs ext3 ${EXTRA_IMAGECMD}"
-IMAGE_CMD_ext4 = "oe_mkext234fs ext4 ${EXTRA_IMAGECMD}"
+IMAGE_CMD:ext2 = "oe_mkext234fs ext2 ${EXTRA_IMAGECMD}"
+IMAGE_CMD:ext3 = "oe_mkext234fs ext3 ${EXTRA_IMAGECMD}"
+IMAGE_CMD:ext4 = "oe_mkext234fs ext4 ${EXTRA_IMAGECMD}"
 
 MIN_BTRFS_SIZE ?= "16384"
-IMAGE_CMD_btrfs () {
+IMAGE_CMD:btrfs () {
 	size=${ROOTFS_SIZE}
 	if [ ${size} -lt ${MIN_BTRFS_SIZE} ] ; then
 		size=${MIN_BTRFS_SIZE}
@@ -103,22 +103,22 @@
 	mkfs.btrfs ${EXTRA_IMAGECMD} -r ${IMAGE_ROOTFS} ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.btrfs
 }
 
-IMAGE_CMD_squashfs = "mksquashfs ${IMAGE_ROOTFS} ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.squashfs ${EXTRA_IMAGECMD} -noappend"
-IMAGE_CMD_squashfs-xz = "mksquashfs ${IMAGE_ROOTFS} ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.squashfs-xz ${EXTRA_IMAGECMD} -noappend -comp xz"
-IMAGE_CMD_squashfs-lzo = "mksquashfs ${IMAGE_ROOTFS} ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.squashfs-lzo ${EXTRA_IMAGECMD} -noappend -comp lzo"
-IMAGE_CMD_squashfs-lz4 = "mksquashfs ${IMAGE_ROOTFS} ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.squashfs-lz4 ${EXTRA_IMAGECMD} -noappend -comp lz4"
+IMAGE_CMD:squashfs = "mksquashfs ${IMAGE_ROOTFS} ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.squashfs ${EXTRA_IMAGECMD} -noappend"
+IMAGE_CMD:squashfs-xz = "mksquashfs ${IMAGE_ROOTFS} ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.squashfs-xz ${EXTRA_IMAGECMD} -noappend -comp xz"
+IMAGE_CMD:squashfs-lzo = "mksquashfs ${IMAGE_ROOTFS} ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.squashfs-lzo ${EXTRA_IMAGECMD} -noappend -comp lzo"
+IMAGE_CMD:squashfs-lz4 = "mksquashfs ${IMAGE_ROOTFS} ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.squashfs-lz4 ${EXTRA_IMAGECMD} -noappend -comp lz4"
 
-IMAGE_CMD_erofs = "mkfs.erofs ${EXTRA_IMAGECMD} ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.erofs ${IMAGE_ROOTFS}"
-IMAGE_CMD_erofs-lz4 = "mkfs.erofs -zlz4 ${EXTRA_IMAGECMD} ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.erofs-lz4 ${IMAGE_ROOTFS}"
-IMAGE_CMD_erofs-lz4hc = "mkfs.erofs -zlz4hc ${EXTRA_IMAGECMD} ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.erofs-lz4hc ${IMAGE_ROOTFS}"
+IMAGE_CMD:erofs = "mkfs.erofs ${EXTRA_IMAGECMD} ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.erofs ${IMAGE_ROOTFS}"
+IMAGE_CMD:erofs-lz4 = "mkfs.erofs -zlz4 ${EXTRA_IMAGECMD} ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.erofs-lz4 ${IMAGE_ROOTFS}"
+IMAGE_CMD:erofs-lz4hc = "mkfs.erofs -zlz4hc ${EXTRA_IMAGECMD} ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.erofs-lz4hc ${IMAGE_ROOTFS}"
 
 
 IMAGE_CMD_TAR ?= "tar"
 # ignore return code 1 "file changed as we read it" as other tasks(e.g. do_image_wic) may be hardlinking rootfs
-IMAGE_CMD_tar = "${IMAGE_CMD_TAR} --sort=name --format=posix --numeric-owner -cf ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.tar -C ${IMAGE_ROOTFS} . || [ $? -eq 1 ]"
+IMAGE_CMD:tar = "${IMAGE_CMD_TAR} --sort=name --format=posix --numeric-owner -cf ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.tar -C ${IMAGE_ROOTFS} . || [ $? -eq 1 ]"
 
 do_image_cpio[cleandirs] += "${WORKDIR}/cpio_append"
-IMAGE_CMD_cpio () {
+IMAGE_CMD:cpio () {
 	(cd ${IMAGE_ROOTFS} && find . | sort | cpio --reproducible -o -H newc >${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.cpio)
 	# We only need the /init symlink if we're building the real
 	# image. The -dbg image doesn't need it! By being clever
@@ -184,7 +184,7 @@
 	fi
 }
 
-IMAGE_CMD_multiubi () {
+IMAGE_CMD:multiubi () {
 	# Split MKUBIFS_ARGS_<name> and UBINIZE_ARGS_<name>
 	for name in ${MULTIUBI_BUILD}; do
 		eval local mkubifs_args=\"\$MKUBIFS_ARGS_${name}\"
@@ -194,15 +194,15 @@
 	done
 }
 
-IMAGE_CMD_ubi () {
+IMAGE_CMD:ubi () {
 	multiubi_mkfs "${MKUBIFS_ARGS}" "${UBINIZE_ARGS}"
 }
-IMAGE_TYPEDEP_ubi = "ubifs"
+IMAGE_TYPEDEP:ubi = "ubifs"
 
-IMAGE_CMD_ubifs = "mkfs.ubifs -r ${IMAGE_ROOTFS} -o ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.ubifs ${MKUBIFS_ARGS}"
+IMAGE_CMD:ubifs = "mkfs.ubifs -r ${IMAGE_ROOTFS} -o ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.ubifs ${MKUBIFS_ARGS}"
 
 MIN_F2FS_SIZE ?= "524288"
-IMAGE_CMD_f2fs () {
+IMAGE_CMD:f2fs () {
         # We need to add additional smarts here form devices smaller than 1.5G
         # Need to scale appropriately between 40M -> 1.5G as the "overprovision
         # ratio" goes down as the device gets bigger (70% -> 4.5%), below about
@@ -224,14 +224,14 @@
 
 JFFS2_ENDIANNESS ?= "${@oe.utils.conditional('SITEINFO_ENDIANNESS', 'le', '-l', '-b', d)}"
 JFFS2_ERASEBLOCK ?= "0x40000"
-EXTRA_IMAGECMD_jffs2 ?= "--pad ${JFFS2_ENDIANNESS} --eraseblock=${JFFS2_ERASEBLOCK} --no-cleanmarkers"
+EXTRA_IMAGECMD:jffs2 ?= "--pad ${JFFS2_ENDIANNESS} --eraseblock=${JFFS2_ERASEBLOCK} --no-cleanmarkers"
 
 # Change these if you want default mkfs behavior (i.e. create minimal inode number)
-EXTRA_IMAGECMD_ext2 ?= "-i 4096"
-EXTRA_IMAGECMD_ext3 ?= "-i 4096"
-EXTRA_IMAGECMD_ext4 ?= "-i 4096"
-EXTRA_IMAGECMD_btrfs ?= "-n 4096"
-EXTRA_IMAGECMD_f2fs ?= ""
+EXTRA_IMAGECMD:ext2 ?= "-i 4096"
+EXTRA_IMAGECMD:ext3 ?= "-i 4096"
+EXTRA_IMAGECMD:ext4 ?= "-i 4096"
+EXTRA_IMAGECMD:btrfs ?= "-n 4096 --shrink"
+EXTRA_IMAGECMD:f2fs ?= ""
 
 do_image_cpio[depends] += "cpio-native:do_populate_sysroot"
 do_image_jffs2[depends] += "mtd-utils-native:do_populate_sysroot"
@@ -279,31 +279,31 @@
 COMPRESSIONTYPES ?= ""
 
 CONVERSIONTYPES = "gz bz2 lzma xz lz4 lzo zip zst sum md5sum sha1sum sha224sum sha256sum sha384sum sha512sum bmap u-boot vmdk vhd vhdx vdi qcow2 base64 gzsync zsync ${COMPRESSIONTYPES}"
-CONVERSION_CMD_lzma = "lzma -k -f -7 ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}"
-CONVERSION_CMD_gz = "gzip -f -9 -n -c --rsyncable ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} > ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.gz"
-CONVERSION_CMD_bz2 = "pbzip2 -f -k ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}"
-CONVERSION_CMD_xz = "xz -f -k -c ${XZ_COMPRESSION_LEVEL} ${XZ_DEFAULTS} --check=${XZ_INTEGRITY_CHECK} ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} > ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.xz"
-CONVERSION_CMD_lz4 = "lz4 -9 -z -l ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.lz4"
-CONVERSION_CMD_lzo = "lzop -9 ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}"
-CONVERSION_CMD_zip = "zip ${ZIP_COMPRESSION_LEVEL} ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.zip ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}"
-CONVERSION_CMD_zst = "zstd -f -k -T0 -c ${ZSTD_COMPRESSION_LEVEL} ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} > ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.zst"
-CONVERSION_CMD_sum = "sumtool -i ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} -o ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.sum ${JFFS2_SUM_EXTRA_ARGS}"
-CONVERSION_CMD_md5sum = "md5sum ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} > ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.md5sum"
-CONVERSION_CMD_sha1sum = "sha1sum ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} > ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.sha1sum"
-CONVERSION_CMD_sha224sum = "sha224sum ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} > ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.sha224sum"
-CONVERSION_CMD_sha256sum = "sha256sum ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} > ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.sha256sum"
-CONVERSION_CMD_sha384sum = "sha384sum ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} > ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.sha384sum"
-CONVERSION_CMD_sha512sum = "sha512sum ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} > ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.sha512sum"
-CONVERSION_CMD_bmap = "bmaptool create ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} -o ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.bmap"
-CONVERSION_CMD_u-boot = "mkimage -A ${UBOOT_ARCH} -O linux -T ramdisk -C none -n ${IMAGE_NAME} -d ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.u-boot"
-CONVERSION_CMD_vmdk = "qemu-img convert -O vmdk ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.vmdk"
-CONVERSION_CMD_vhdx = "qemu-img convert -O vhdx -o subformat=dynamic ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.vhdx"
-CONVERSION_CMD_vhd = "qemu-img convert -O vpc -o subformat=fixed ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.vhd"
-CONVERSION_CMD_vdi = "qemu-img convert -O vdi ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.vdi"
-CONVERSION_CMD_qcow2 = "qemu-img convert -O qcow2 ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.qcow2"
-CONVERSION_CMD_base64 = "base64 ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} > ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.base64"
-CONVERSION_CMD_zsync = "zsyncmake_curl ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}"
-CONVERSION_CMD_gzsync = "zsyncmake_curl -z ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}"
+CONVERSION_CMD:lzma = "lzma -k -f -7 ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}"
+CONVERSION_CMD:gz = "gzip -f -9 -n -c --rsyncable ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} > ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.gz"
+CONVERSION_CMD:bz2 = "pbzip2 -f -k ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}"
+CONVERSION_CMD:xz = "xz -f -k -c ${XZ_COMPRESSION_LEVEL} ${XZ_DEFAULTS} --check=${XZ_INTEGRITY_CHECK} ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} > ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.xz"
+CONVERSION_CMD:lz4 = "lz4 -9 -z -l ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.lz4"
+CONVERSION_CMD:lzo = "lzop -9 ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}"
+CONVERSION_CMD:zip = "zip ${ZIP_COMPRESSION_LEVEL} ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.zip ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}"
+CONVERSION_CMD:zst = "zstd -f -k -T0 -c ${ZSTD_COMPRESSION_LEVEL} ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} > ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.zst"
+CONVERSION_CMD:sum = "sumtool -i ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} -o ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.sum ${JFFS2_SUM_EXTRA_ARGS}"
+CONVERSION_CMD:md5sum = "md5sum ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} > ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.md5sum"
+CONVERSION_CMD:sha1sum = "sha1sum ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} > ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.sha1sum"
+CONVERSION_CMD:sha224sum = "sha224sum ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} > ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.sha224sum"
+CONVERSION_CMD:sha256sum = "sha256sum ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} > ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.sha256sum"
+CONVERSION_CMD:sha384sum = "sha384sum ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} > ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.sha384sum"
+CONVERSION_CMD:sha512sum = "sha512sum ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} > ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.sha512sum"
+CONVERSION_CMD:bmap = "bmaptool create ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} -o ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.bmap"
+CONVERSION_CMD:u-boot = "mkimage -A ${UBOOT_ARCH} -O linux -T ramdisk -C none -n ${IMAGE_NAME} -d ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.u-boot"
+CONVERSION_CMD:vmdk = "qemu-img convert -O vmdk ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.vmdk"
+CONVERSION_CMD:vhdx = "qemu-img convert -O vhdx -o subformat=dynamic ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.vhdx"
+CONVERSION_CMD:vhd = "qemu-img convert -O vpc -o subformat=fixed ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.vhd"
+CONVERSION_CMD:vdi = "qemu-img convert -O vdi ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.vdi"
+CONVERSION_CMD:qcow2 = "qemu-img convert -O qcow2 ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.qcow2"
+CONVERSION_CMD:base64 = "base64 ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} > ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.base64"
+CONVERSION_CMD:zsync = "zsyncmake_curl ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}"
+CONVERSION_CMD:gzsync = "zsyncmake_curl -z ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}"
 CONVERSION_DEPENDS_lzma = "xz-native"
 CONVERSION_DEPENDS_gz = "pigz-native"
 CONVERSION_DEPENDS_bz2 = "pbzip2-native"
diff --git a/poky/meta/classes/image_types_wic.bbclass b/poky/meta/classes/image_types_wic.bbclass
index 49be1da..2f1a0b7 100644
--- a/poky/meta/classes/image_types_wic.bbclass
+++ b/poky/meta/classes/image_types_wic.bbclass
@@ -26,7 +26,7 @@
 
 WIC_CREATE_EXTRA_ARGS ?= ""
 
-IMAGE_CMD_wic () {
+IMAGE_CMD:wic () {
 	out="${IMGDEPLOYDIR}/${IMAGE_NAME}"
 	build_wic="${WORKDIR}/build-wic"
 	tmp_wic="${WORKDIR}/tmp-wic"
@@ -42,7 +42,7 @@
 	BUILDDIR="${TOPDIR}" PSEUDO_UNLOAD=1 wic create "$wks" --vars "${STAGING_DIR}/${MACHINE}/imgdata/" -e "${IMAGE_BASENAME}" -o "$build_wic/" -w "$tmp_wic" ${WIC_CREATE_EXTRA_ARGS}
 	mv "$build_wic/$(basename "${wks%.wks}")"*.direct "$out${IMAGE_NAME_SUFFIX}.wic"
 }
-IMAGE_CMD_wic[vardepsexclude] = "WKS_FULL_PATH WKS_FILES TOPDIR"
+IMAGE_CMD:wic[vardepsexclude] = "WKS_FULL_PATH WKS_FILES TOPDIR"
 do_image_wic[cleandirs] = "${WORKDIR}/build-wic"
 
 PSEUDO_IGNORE_PATHS .= ",${WORKDIR}/build-wic"
@@ -60,9 +60,9 @@
 WKS_FILE_DEPENDS_DEFAULT = '${@bb.utils.contains_any("BUILD_ARCH", [ 'x86_64', 'i686' ], "syslinux-native", "",d)}'
 WKS_FILE_DEPENDS_DEFAULT += "bmap-tools-native cdrtools-native btrfs-tools-native squashfs-tools-native e2fsprogs-native"
 WKS_FILE_DEPENDS_BOOTLOADERS = ""
-WKS_FILE_DEPENDS_BOOTLOADERS_x86 = "syslinux grub-efi systemd-boot"
-WKS_FILE_DEPENDS_BOOTLOADERS_x86-64 = "syslinux grub-efi systemd-boot"
-WKS_FILE_DEPENDS_BOOTLOADERS_x86-x32 = "syslinux grub-efi"
+WKS_FILE_DEPENDS_BOOTLOADERS:x86 = "syslinux grub-efi systemd-boot"
+WKS_FILE_DEPENDS_BOOTLOADERS:x86-64 = "syslinux grub-efi systemd-boot"
+WKS_FILE_DEPENDS_BOOTLOADERS:x86-x32 = "syslinux grub-efi"
 
 WKS_FILE_DEPENDS ??= "${WKS_FILE_DEPENDS_DEFAULT} ${WKS_FILE_DEPENDS_BOOTLOADERS}"
 
diff --git a/poky/meta/classes/insane.bbclass b/poky/meta/classes/insane.bbclass
index 763d5f1..be5ec60 100644
--- a/poky/meta/classes/insane.bbclass
+++ b/poky/meta/classes/insane.bbclass
@@ -40,7 +40,7 @@
             useless-rpaths rpaths staticdev \
             "
 # Add usrmerge QA check based on distro feature
-ERROR_QA_append = "${@bb.utils.contains('DISTRO_FEATURES', 'usrmerge', ' usrmerge', '', d)}"
+ERROR_QA:append = "${@bb.utils.contains('DISTRO_FEATURES', 'usrmerge', ' usrmerge', '', d)}"
 
 FAKEROOT_QA = "host-user-contaminated"
 FAKEROOT_QA[doc] = "QA tests which need to run under fakeroot. If any \
@@ -246,7 +246,7 @@
             pkgname = name
             if name == d.getVar('PN'):
                 pkgname = '${PN}'
-            wstr += "If yes: add \'inhert mime-xdg\' and \'MIME_XDG_PACKAGES += \"%s\"\' / if no add \'INSANE_SKIP_%s += \"mime-xdg\"\' to recipe." % (pkgname, pkgname)
+            wstr += "If yes: add \'inhert mime-xdg\' and \'MIME_XDG_PACKAGES += \"%s\"\' / if no add \'INSANE_SKIP:%s += \"mime-xdg\"\' to recipe." % (pkgname, pkgname)
             package_qa_add_message(messages, "mime-xdg", wstr)
         if mime_type_found:
             package_qa_add_message(messages, "mime-xdg", "package contains desktop file with key 'MimeType' but does not inhert mime-xdg: %s path '%s'" % \
@@ -279,7 +279,7 @@
             # Skip subdirectories for any packages with libdir in INSANE_SKIP
             skippackages = []
             for package in dirs:
-                if 'libdir' in (d.getVar('INSANE_SKIP_' + package) or "").split():
+                if 'libdir' in (d.getVar('INSANE_SKIP:' + package) or "").split():
                     bb.note("Package %s skipping libdir QA test" % (package))
                     skippackages.append(package)
                 elif d.getVar('PACKAGE_DEBUG_SPLIT_STYLE') == 'debug-file-directory' and package.endswith("-dbg"):
@@ -483,7 +483,7 @@
     driverdir = d.expand("${libdir}/xorg/modules/drivers/")
     if driverdir in path and path.endswith(".so"):
         mlprefix = d.getVar('MLPREFIX') or ''
-        for rdep in bb.utils.explode_deps(d.getVar('RDEPENDS_' + name) or ""):
+        for rdep in bb.utils.explode_deps(d.getVar('RDEPENDS:' + name) or ""):
             if rdep.startswith("%sxorg-abi-" % mlprefix):
                 return
         package_qa_add_message(messages, "xorg-driver-abi", "Package %s contains Xorg driver (%s) but no xorg-abi- dependencies" % (name, os.path.basename(path)))
@@ -795,7 +795,7 @@
 
                 # The python is not a package, but python-core provides it, so
                 # skip checking /usr/bin/python if python is in the rdeps, in
-                # case there is a RDEPENDS_pkg = "python" in the recipe.
+                # case there is a RDEPENDS:pkg = "python" in the recipe.
                 for py in [ d.getVar('MLPREFIX') + "python", "python" ]:
                     if py in done:
                         filerdepends.pop("/usr/bin/python",None)
@@ -808,7 +808,7 @@
                     # For Saving the FILERPROVIDES, RPROVIDES and FILES_INFO
                     rdep_data = oe.packagedata.read_subpkgdata(rdep, d)
                     for key in rdep_data:
-                        if key.startswith("FILERPROVIDES_") or key.startswith("RPROVIDES_"):
+                        if key.startswith("FILERPROVIDES_") or key.startswith("RPROVIDES:"):
                             for subkey in bb.utils.explode_deps(rdep_data[key]):
                                 filerdepends.pop(subkey,None)
                         # Add the files list to the rprovides
@@ -821,8 +821,8 @@
                         break
             if filerdepends:
                 for key in filerdepends:
-                    error_msg = "%s contained in package %s requires %s, but no providers found in RDEPENDS_%s?" % \
-                            (filerdepends[key].replace("_%s" % pkg, "").replace("@underscore@", "_"), pkg, key, pkg)
+                    error_msg = "%s contained in package %s requires %s, but no providers found in RDEPENDS:%s?" % \
+                            (filerdepends[key].replace(":%s" % pkg, "").replace("@underscore@", "_"), pkg, key, pkg)
                     package_qa_handle_error("file-rdeps", error_msg, d)
 package_qa_check_rdepends[vardepsexclude] = "OVERRIDES"
 
@@ -903,7 +903,7 @@
     """
     Check that all licenses for a package are among the licenses for the recipe.
     """
-    pkg_lics = d.getVar('LICENSE_' + package)
+    pkg_lics = d.getVar('LICENSE:' + package)
     if not pkg_lics:
         return True
 
@@ -913,7 +913,7 @@
         return True
 
     package_qa_add_message(messages, "unlisted-pkg-lics",
-                           "LICENSE_%s includes licenses (%s) that are not "
+                           "LICENSE:%s includes licenses (%s) that are not "
                            "listed in LICENSE" % (package, ' '.join(unlisted)))
     return False
 
@@ -996,8 +996,8 @@
     # Look at all packages and find out if any of those sets ALTERNATIVE variable
     # without inheriting update-alternatives class
     for pkg in (d.getVar('PACKAGES') or '').split():
-        if d.getVar('ALTERNATIVE_%s' % pkg) and not bb.data.inherits_class('update-alternatives', d):
-            package_qa_handle_error("missing-update-alternatives", "%s: recipe defines ALTERNATIVE_%s but doesn't inherit update-alternatives. This might fail during do_rootfs later!" % (pn, pkg), d)
+        if d.getVar('ALTERNATIVE:%s' % pkg) and not bb.data.inherits_class('update-alternatives', d):
+            package_qa_handle_error("missing-update-alternatives", "%s: recipe defines ALTERNATIVE:%s but doesn't inherit update-alternatives. This might fail during do_rootfs later!" % (pn, pkg), d)
 
 # The PACKAGE FUNC to scan each package
 python do_package_qa () {
@@ -1066,7 +1066,7 @@
 
     for package in packages:
         skip = set((d.getVar('INSANE_SKIP') or "").split() +
-                   (d.getVar('INSANE_SKIP_' + package) or "").split())
+                   (d.getVar('INSANE_SKIP:' + package) or "").split())
         if skip:
             bb.note("Package %s skipping QA tests: %s" % (package, str(skip)))
 
@@ -1108,7 +1108,7 @@
 python() {
     pkgs = (d.getVar('PACKAGES') or '').split()
     for pkg in pkgs:
-        d.appendVarFlag("do_package_qa", "vardeps", " INSANE_SKIP_{}".format(pkg))
+        d.appendVarFlag("do_package_qa", "vardeps", " INSANE_SKIP:{}".format(pkg))
 }
 
 SSTATETASKS += "do_package_qa"
@@ -1306,11 +1306,11 @@
     # Checking ${FILESEXTRAPATHS}
     extrapaths = (d.getVar("FILESEXTRAPATHS") or "")
     if '__default' not in extrapaths.split(":"):
-        msg = "FILESEXTRAPATHS-variable, must always use _prepend (or _append)\n"
+        msg = "FILESEXTRAPATHS-variable, must always use :prepend (or :append)\n"
         msg += "type of assignment, and don't forget the colon.\n"
         msg += "Please assign it with the format of:\n"
-        msg += "  FILESEXTRAPATHS_append := \":${THISDIR}/Your_Files_Path\" or\n"
-        msg += "  FILESEXTRAPATHS_prepend := \"${THISDIR}/Your_Files_Path:\"\n"
+        msg += "  FILESEXTRAPATHS:append := \":${THISDIR}/Your_Files_Path\" or\n"
+        msg += "  FILESEXTRAPATHS:prepend := \"${THISDIR}/Your_Files_Path:\"\n"
         msg += "in your bbappend file\n\n"
         msg += "Your incorrect assignment is:\n"
         msg += "%s\n" % extrapaths
diff --git a/poky/meta/classes/kernel-devicetree.bbclass b/poky/meta/classes/kernel-devicetree.bbclass
index 27a4905..a50ea4f 100644
--- a/poky/meta/classes/kernel-devicetree.bbclass
+++ b/poky/meta/classes/kernel-devicetree.bbclass
@@ -6,8 +6,8 @@
             d.appendVar("PACKAGES", " ${KERNEL_PACKAGE_NAME}-image-zimage-bundle")
 }
 
-FILES_${KERNEL_PACKAGE_NAME}-devicetree = "/${KERNEL_IMAGEDEST}/*.dtb /${KERNEL_IMAGEDEST}/*.dtbo"
-FILES_${KERNEL_PACKAGE_NAME}-image-zimage-bundle = "/${KERNEL_IMAGEDEST}/zImage-*.dtb.bin"
+FILES:${KERNEL_PACKAGE_NAME}-devicetree = "/${KERNEL_IMAGEDEST}/*.dtb /${KERNEL_IMAGEDEST}/*.dtbo"
+FILES:${KERNEL_PACKAGE_NAME}-image-zimage-bundle = "/${KERNEL_IMAGEDEST}/zImage-*.dtb.bin"
 
 # Generate kernel+devicetree bundle
 KERNEL_DEVICETREE_BUNDLE ?= "0"
@@ -33,7 +33,7 @@
 	echo "$dtb_path"
 }
 
-do_configure_append() {
+do_configure:append() {
 	if [ "${KERNEL_DEVICETREE_BUNDLE}" = "1" ]; then
 		if echo ${KERNEL_IMAGETYPE_FOR_MAKE} | grep -q 'zImage'; then
 			case "${ARCH}" in
@@ -55,7 +55,7 @@
 	fi
 }
 
-do_compile_append() {
+do_compile:append() {
 	if [ -n "${KERNEL_DTC_FLAGS}" ]; then
 		export DTC_FLAGS="${KERNEL_DTC_FLAGS}"
 	fi
@@ -66,7 +66,7 @@
 	done
 }
 
-do_install_append() {
+do_install:append() {
 	for dtbf in ${KERNEL_DEVICETREE}; do
 		dtb=`normalize_dtb "$dtbf"`
 		dtb_ext=${dtb##*.}
@@ -76,7 +76,7 @@
 	done
 }
 
-do_deploy_append() {
+do_deploy:append() {
 	for dtbf in ${KERNEL_DEVICETREE}; do
 		dtb=`normalize_dtb "$dtbf"`
 		dtb_ext=${dtb##*.}
diff --git a/poky/meta/classes/kernel-fitimage.bbclass b/poky/meta/classes/kernel-fitimage.bbclass
index e363eeb..a9d1002 100644
--- a/poky/meta/classes/kernel-fitimage.bbclass
+++ b/poky/meta/classes/kernel-fitimage.bbclass
@@ -697,7 +697,7 @@
 addtask kernel_generate_rsa_keys before do_assemble_fitimage after do_compile
 
 kernel_do_deploy[vardepsexclude] = "DATETIME"
-kernel_do_deploy_append() {
+kernel_do_deploy:append() {
 	# Update deploy directory
 	if echo ${KERNEL_IMAGETYPES} | grep -wq "fitImage"; then
 
diff --git a/poky/meta/classes/kernel-grub.bbclass b/poky/meta/classes/kernel-grub.bbclass
index 5d92f3b..44b2015 100644
--- a/poky/meta/classes/kernel-grub.bbclass
+++ b/poky/meta/classes/kernel-grub.bbclass
@@ -99,7 +99,7 @@
         typelower = type.lower()
         preinst_append = preinst.replace('KERNEL_IMAGETYPE', type)
         postinst_prepend = postinst.replace('KERNEL_IMAGETYPE', type)
-        d.setVar('pkg_preinst_kernel-image-' + typelower + '_append', preinst_append)
-        d.setVar('pkg_postinst_kernel-image-' + typelower + '_prepend', postinst_prepend)
+        d.setVar('pkg_preinst:kernel-image-' + typelower + ':append', preinst_append)
+        d.setVar('pkg_postinst:kernel-image-' + typelower + ':prepend', postinst_prepend)
 }
 
diff --git a/poky/meta/classes/kernel-module-split.bbclass b/poky/meta/classes/kernel-module-split.bbclass
index baa32e0..b56dd4a 100644
--- a/poky/meta/classes/kernel-module-split.bbclass
+++ b/poky/meta/classes/kernel-module-split.bbclass
@@ -1,4 +1,4 @@
-pkg_postinst_modules () {
+pkg_postinst:modules () {
 if [ -z "$D" ]; then
 	depmod -a ${KERNEL_VERSION}
 else
@@ -8,7 +8,7 @@
 fi
 }
 
-pkg_postrm_modules () {
+pkg_postrm:modules () {
 if [ -z "$D" ]; then
 	depmod -a ${KERNEL_VERSION}
 else
@@ -24,11 +24,11 @@
 
 PACKAGE_WRITE_DEPS += "kmod-native depmodwrapper-cross"
 
-do_install_append() {
+do_install:append() {
 	install -d ${D}${sysconfdir}/modules-load.d/ ${D}${sysconfdir}/modprobe.d/
 }
 
-PACKAGESPLITFUNCS_prepend = "split_kernel_module_packages "
+PACKAGESPLITFUNCS:prepend = "split_kernel_module_packages "
 
 KERNEL_MODULES_META_PACKAGE ?= "${@ d.getVar("KERNEL_PACKAGE_NAME") or "kernel" }-modules"
 
@@ -100,11 +100,11 @@
             else:
                 f.write('%s\n' % basename)
             f.close()
-            postinst = d.getVar('pkg_postinst_%s' % pkg)
+            postinst = d.getVar('pkg_postinst:%s' % pkg)
             if not postinst:
-                bb.fatal("pkg_postinst_%s not defined" % pkg)
+                bb.fatal("pkg_postinst:%s not defined" % pkg)
             postinst += d.getVar('autoload_postinst_fragment') % (autoload or basename)
-            d.setVar('pkg_postinst_%s' % pkg, postinst)
+            d.setVar('pkg_postinst:%s' % pkg, postinst)
 
         # Write out any modconf fragment
         modconflist = (d.getVar("KERNEL_MODULE_PROBECONF") or "").split()
@@ -117,19 +117,19 @@
         elif modconf:
             bb.error("Please ensure module %s is listed in KERNEL_MODULE_PROBECONF since module_conf_%s is set" % (basename, basename))
 
-        files = d.getVar('FILES_%s' % pkg)
+        files = d.getVar('FILES:%s' % pkg)
         files = "%s /etc/modules-load.d/%s.conf /etc/modprobe.d/%s.conf" % (files, basename, basename)
-        d.setVar('FILES_%s' % pkg, files)
+        d.setVar('FILES:%s' % pkg, files)
 
-        conffiles = d.getVar('CONFFILES_%s' % pkg)
+        conffiles = d.getVar('CONFFILES:%s' % pkg)
         conffiles = "%s /etc/modules-load.d/%s.conf /etc/modprobe.d/%s.conf" % (conffiles, basename, basename)
-        d.setVar('CONFFILES_%s' % pkg, conffiles)
+        d.setVar('CONFFILES:%s' % pkg, conffiles)
 
         if "description" in vals:
-            old_desc = d.getVar('DESCRIPTION_' + pkg) or ""
-            d.setVar('DESCRIPTION_' + pkg, old_desc + "; " + vals["description"])
+            old_desc = d.getVar('DESCRIPTION:' + pkg) or ""
+            d.setVar('DESCRIPTION:' + pkg, old_desc + "; " + vals["description"])
 
-        rdepends = bb.utils.explode_dep_versions2(d.getVar('RDEPENDS_' + pkg) or "")
+        rdepends = bb.utils.explode_dep_versions2(d.getVar('RDEPENDS:' + pkg) or "")
         modinfo_deps = []
         if "depends" in vals and vals["depends"] != "":
             for dep in vals["depends"].split(","):
@@ -139,16 +139,16 @@
         for dep in modinfo_deps:
             if not dep in rdepends:
                 rdepends[dep] = []
-        d.setVar('RDEPENDS_' + pkg, bb.utils.join_deps(rdepends, commasep=False))
+        d.setVar('RDEPENDS:' + pkg, bb.utils.join_deps(rdepends, commasep=False))
 
         # Avoid automatic -dev recommendations for modules ending with -dev.
-        d.setVarFlag('RRECOMMENDS_' + pkg, 'nodeprrecs', 1)
+        d.setVarFlag('RRECOMMENDS:' + pkg, 'nodeprrecs', 1)
 
         # Provide virtual package without postfix
         providevirt = d.getVar('KERNEL_MODULE_PROVIDE_VIRTUAL')
         if providevirt == "1":
            postfix = format.split('%s')[1]
-           d.setVar('RPROVIDES_' + pkg, pkg.replace(postfix, ''))
+           d.setVar('RPROVIDES:' + pkg, pkg.replace(postfix, ''))
 
     kernel_package_name = d.getVar("KERNEL_PACKAGE_NAME") or "kernel"
     kernel_version = d.getVar("KERNEL_VERSION")
@@ -159,13 +159,13 @@
     module_pattern_suffix = d.getVar('KERNEL_MODULE_PACKAGE_SUFFIX')
     module_pattern = module_pattern_prefix + kernel_package_name + '-module-%s' + module_pattern_suffix
 
-    postinst = d.getVar('pkg_postinst_modules')
-    postrm = d.getVar('pkg_postrm_modules')
+    postinst = d.getVar('pkg_postinst:modules')
+    postrm = d.getVar('pkg_postrm:modules')
 
     modules = do_split_packages(d, root='${nonarch_base_libdir}/modules', file_regex=module_regex, output_pattern=module_pattern, description='%s kernel module', postinst=postinst, postrm=postrm, recursive=True, hook=frob_metadata, extra_depends='%s-%s' % (kernel_package_name, kernel_version))
     if modules:
         metapkg = d.getVar('KERNEL_MODULES_META_PACKAGE')
-        d.appendVar('RDEPENDS_' + metapkg, ' '+' '.join(modules))
+        d.appendVar('RDEPENDS:' + metapkg, ' '+' '.join(modules))
 
     # If modules-load.d and modprobe.d are empty at this point, remove them to
     # avoid warnings. removedirs only raises an OSError if an empty
diff --git a/poky/meta/classes/kernel-uboot.bbclass b/poky/meta/classes/kernel-uboot.bbclass
index b1e7ac0..2daa068 100644
--- a/poky/meta/classes/kernel-uboot.bbclass
+++ b/poky/meta/classes/kernel-uboot.bbclass
@@ -22,7 +22,11 @@
 	[ -n "${vmlinux_path}" ] && ${OBJCOPY} -O binary -R .note -R .comment -S "${vmlinux_path}" linux.bin
 
 	if [ "${linux_comp}" != "none" ] ; then
-		gzip -9 linux.bin
+		if [ "${linux_comp}" = "gzip" ] ; then
+			gzip -9 linux.bin
+		elif [ "${linux_comp}" = "lzo" ] ; then
+			lzop -9 linux.bin
+		fi
 		mv -f "linux.bin${linux_suffix}" linux.bin
 	fi
 
diff --git a/poky/meta/classes/kernel-yocto.bbclass b/poky/meta/classes/kernel-yocto.bbclass
index 0df61cd..549dfd9 100644
--- a/poky/meta/classes/kernel-yocto.bbclass
+++ b/poky/meta/classes/kernel-yocto.bbclass
@@ -358,6 +358,21 @@
 			fi
 		fi
 		cd ${S}
+
+		# convert any remote branches to local tracking ones
+		for i in `git branch -a --no-color | grep remotes | grep -v HEAD`; do
+			b=`echo $i | cut -d' ' -f2 | sed 's%remotes/origin/%%'`;
+			git show-ref --quiet --verify -- "refs/heads/$b"
+			if [ $? -ne 0 ]; then
+				git branch $b $i > /dev/null
+			fi
+		done
+
+		# Create a working tree copy of the kernel by checking out a branch
+		machine_branch="${@ get_machine_branch(d, "${KBRANCH}" )}"
+
+		# checkout and clobber any unimportant files
+		git checkout -f ${machine_branch}
 	else
 		# case: we have no git repository at all. 
 		# To support low bandwidth options for building the kernel, we'll just 
@@ -379,21 +394,6 @@
 		git commit -q -m "baseline commit: creating repo for ${PN}-${PV}"
 		git clean -d -f
 	fi
-
-	# convert any remote branches to local tracking ones
-	for i in `git branch -a --no-color | grep remotes | grep -v HEAD`; do
-		b=`echo $i | cut -d' ' -f2 | sed 's%remotes/origin/%%'`;
-		git show-ref --quiet --verify -- "refs/heads/$b"
-		if [ $? -ne 0 ]; then
-			git branch $b $i > /dev/null
-		fi
-	done
-
-	# Create a working tree copy of the kernel by checking out a branch
-	machine_branch="${@ get_machine_branch(d, "${KBRANCH}" )}"
-
-	# checkout and clobber any unimportant files
-	git checkout -f ${machine_branch}
 }
 do_kernel_checkout[dirs] = "${S} ${WORKDIR}"
 
@@ -474,7 +474,7 @@
     env['srctree'] = s
 
     # read specific symbols from the kernel recipe or from local.conf
-    # i.e.: CONFIG_ANALYSIS_pn-linux-yocto-dev = 'NF_CONNTRACK LOCALVERSION'
+    # i.e.: CONFIG_ANALYSIS:pn-linux-yocto-dev = 'NF_CONNTRACK LOCALVERSION'
     config = d.getVar( 'CONFIG_ANALYSIS' )
     if not config:
        config = [ "" ]
diff --git a/poky/meta/classes/kernel.bbclass b/poky/meta/classes/kernel.bbclass
index 846b196..027e66e 100644
--- a/poky/meta/classes/kernel.bbclass
+++ b/poky/meta/classes/kernel.bbclass
@@ -46,7 +46,7 @@
     kpn = d.getVar("KERNEL_PACKAGE_NAME")
 
     # XXX Remove this after bug 11905 is resolved
-    #  FILES_${KERNEL_PACKAGE_NAME}-dev doesn't expand correctly
+    #  FILES:${KERNEL_PACKAGE_NAME}-dev doesn't expand correctly
     if kpn == pn:
         bb.warn("Some packages (E.g. *-dev) might be missing due to "
                 "bug 11905 (variable KERNEL_PACKAGE_NAME == PN)")
@@ -96,11 +96,11 @@
             continue
         typelower = type.lower()
         d.appendVar('PACKAGES', ' %s-image-%s' % (kname, typelower))
-        d.setVar('FILES_' + kname + '-image-' + typelower, '/' + imagedest + '/' + type + '-${KERNEL_VERSION_NAME}' + ' /' + imagedest + '/' + type)
-        d.appendVar('RDEPENDS_%s-image' % kname, ' %s-image-%s' % (kname, typelower))
-        d.setVar('PKG_%s-image-%s' % (kname,typelower), '%s-image-%s-${KERNEL_VERSION_PKG_NAME}' % (kname, typelower))
-        d.setVar('ALLOW_EMPTY_%s-image-%s' % (kname, typelower), '1')
-        d.setVar('pkg_postinst_%s-image-%s' % (kname,typelower), """set +e
+        d.setVar('FILES:' + kname + '-image-' + typelower, '/' + imagedest + '/' + type + '-${KERNEL_VERSION_NAME}' + ' /' + imagedest + '/' + type)
+        d.appendVar('RDEPENDS:%s-image' % kname, ' %s-image-%s' % (kname, typelower))
+        d.setVar('PKG:%s-image-%s' % (kname,typelower), '%s-image-%s-${KERNEL_VERSION_PKG_NAME}' % (kname, typelower))
+        d.setVar('ALLOW_EMPTY:%s-image-%s' % (kname, typelower), '1')
+        d.setVar('pkg_postinst:%s-image-%s' % (kname,typelower), """set +e
 if [ -n "$D" ]; then
     ln -sf %s-${KERNEL_VERSION} $D/${KERNEL_IMAGEDEST}/%s > /dev/null 2>&1
 else
@@ -112,7 +112,7 @@
 fi
 set -e
 """ % (type, type, type, type, type, type, type))
-        d.setVar('pkg_postrm_%s-image-%s' % (kname,typelower), """set +e
+        d.setVar('pkg_postrm:%s-image-%s' % (kname,typelower), """set +e
 if [ -f "${KERNEL_IMAGEDEST}/%s" -o -L "${KERNEL_IMAGEDEST}/%s" ]; then
     rm -f ${KERNEL_IMAGEDEST}/%s  > /dev/null 2>&1
 fi
@@ -303,7 +303,7 @@
 }
 do_bundle_initramfs[dirs] = "${B}"
 
-python do_devshell_prepend () {
+python do_devshell:prepend () {
     os.environ["LDFLAGS"] = ''
 }
 
@@ -591,7 +591,7 @@
 	fi
 
 	# Copy defconfig to .config if .config does not exist. This allows
-	# recipes to manage the .config themselves in do_configure_prepend().
+	# recipes to manage the .config themselves in do_configure:prepend().
 	if [ -f "${WORKDIR}/defconfig" ] && [ ! -f "${B}/.config" ]; then
 		cp "${WORKDIR}/defconfig" "${B}/.config"
 	fi
@@ -608,34 +608,34 @@
 
 inherit cml1
 
-KCONFIG_CONFIG_COMMAND_append = " LD='${KERNEL_LD}' HOSTLDFLAGS='${BUILD_LDFLAGS}'"
+KCONFIG_CONFIG_COMMAND:append = " LD='${KERNEL_LD}' HOSTLDFLAGS='${BUILD_LDFLAGS}'"
 
 EXPORT_FUNCTIONS do_compile do_install do_configure
 
 # kernel-base becomes kernel-${KERNEL_VERSION}
 # kernel-image becomes kernel-image-${KERNEL_VERSION}
 PACKAGES = "${KERNEL_PACKAGE_NAME} ${KERNEL_PACKAGE_NAME}-base ${KERNEL_PACKAGE_NAME}-vmlinux ${KERNEL_PACKAGE_NAME}-image ${KERNEL_PACKAGE_NAME}-dev ${KERNEL_PACKAGE_NAME}-modules"
-FILES_${PN} = ""
-FILES_${KERNEL_PACKAGE_NAME}-base = "${nonarch_base_libdir}/modules/${KERNEL_VERSION}/modules.order ${nonarch_base_libdir}/modules/${KERNEL_VERSION}/modules.builtin ${nonarch_base_libdir}/modules/${KERNEL_VERSION}/modules.builtin.modinfo"
-FILES_${KERNEL_PACKAGE_NAME}-image = ""
-FILES_${KERNEL_PACKAGE_NAME}-dev = "/boot/System.map* /boot/Module.symvers* /boot/config* ${KERNEL_SRC_PATH} ${nonarch_base_libdir}/modules/${KERNEL_VERSION}/build"
-FILES_${KERNEL_PACKAGE_NAME}-vmlinux = "/boot/vmlinux-${KERNEL_VERSION_NAME}"
-FILES_${KERNEL_PACKAGE_NAME}-modules = ""
-RDEPENDS_${KERNEL_PACKAGE_NAME} = "${KERNEL_PACKAGE_NAME}-base"
+FILES:${PN} = ""
+FILES:${KERNEL_PACKAGE_NAME}-base = "${nonarch_base_libdir}/modules/${KERNEL_VERSION}/modules.order ${nonarch_base_libdir}/modules/${KERNEL_VERSION}/modules.builtin ${nonarch_base_libdir}/modules/${KERNEL_VERSION}/modules.builtin.modinfo"
+FILES:${KERNEL_PACKAGE_NAME}-image = ""
+FILES:${KERNEL_PACKAGE_NAME}-dev = "/boot/System.map* /boot/Module.symvers* /boot/config* ${KERNEL_SRC_PATH} ${nonarch_base_libdir}/modules/${KERNEL_VERSION}/build"
+FILES:${KERNEL_PACKAGE_NAME}-vmlinux = "/boot/vmlinux-${KERNEL_VERSION_NAME}"
+FILES:${KERNEL_PACKAGE_NAME}-modules = ""
+RDEPENDS:${KERNEL_PACKAGE_NAME} = "${KERNEL_PACKAGE_NAME}-base"
 # Allow machines to override this dependency if kernel image files are
 # not wanted in images as standard
-RDEPENDS_${KERNEL_PACKAGE_NAME}-base ?= "${KERNEL_PACKAGE_NAME}-image"
-PKG_${KERNEL_PACKAGE_NAME}-image = "${KERNEL_PACKAGE_NAME}-image-${@legitimize_package_name(d.getVar('KERNEL_VERSION'))}"
-RDEPENDS_${KERNEL_PACKAGE_NAME}-image += "${@oe.utils.conditional('KERNEL_IMAGETYPE', 'vmlinux', '${KERNEL_PACKAGE_NAME}-vmlinux', '', d)}"
-PKG_${KERNEL_PACKAGE_NAME}-base = "${KERNEL_PACKAGE_NAME}-${@legitimize_package_name(d.getVar('KERNEL_VERSION'))}"
-RPROVIDES_${KERNEL_PACKAGE_NAME}-base += "${KERNEL_PACKAGE_NAME}-${KERNEL_VERSION}"
-ALLOW_EMPTY_${KERNEL_PACKAGE_NAME} = "1"
-ALLOW_EMPTY_${KERNEL_PACKAGE_NAME}-base = "1"
-ALLOW_EMPTY_${KERNEL_PACKAGE_NAME}-image = "1"
-ALLOW_EMPTY_${KERNEL_PACKAGE_NAME}-modules = "1"
-DESCRIPTION_${KERNEL_PACKAGE_NAME}-modules = "Kernel modules meta package"
+RDEPENDS:${KERNEL_PACKAGE_NAME}-base ?= "${KERNEL_PACKAGE_NAME}-image"
+PKG:${KERNEL_PACKAGE_NAME}-image = "${KERNEL_PACKAGE_NAME}-image-${@legitimize_package_name(d.getVar('KERNEL_VERSION'))}"
+RDEPENDS:${KERNEL_PACKAGE_NAME}-image += "${@oe.utils.conditional('KERNEL_IMAGETYPE', 'vmlinux', '${KERNEL_PACKAGE_NAME}-vmlinux', '', d)}"
+PKG:${KERNEL_PACKAGE_NAME}-base = "${KERNEL_PACKAGE_NAME}-${@legitimize_package_name(d.getVar('KERNEL_VERSION'))}"
+RPROVIDES:${KERNEL_PACKAGE_NAME}-base += "${KERNEL_PACKAGE_NAME}-${KERNEL_VERSION}"
+ALLOW_EMPTY:${KERNEL_PACKAGE_NAME} = "1"
+ALLOW_EMPTY:${KERNEL_PACKAGE_NAME}-base = "1"
+ALLOW_EMPTY:${KERNEL_PACKAGE_NAME}-image = "1"
+ALLOW_EMPTY:${KERNEL_PACKAGE_NAME}-modules = "1"
+DESCRIPTION:${KERNEL_PACKAGE_NAME}-modules = "Kernel modules meta package"
 
-pkg_postinst_${KERNEL_PACKAGE_NAME}-base () {
+pkg_postinst:${KERNEL_PACKAGE_NAME}-base () {
 	if [ ! -e "$D/lib/modules/${KERNEL_VERSION}" ]; then
 		mkdir -p $D/lib/modules/${KERNEL_VERSION}
 	fi
@@ -646,7 +646,7 @@
 	fi
 }
 
-PACKAGESPLITFUNCS_prepend = "split_kernel_packages "
+PACKAGESPLITFUNCS:prepend = "split_kernel_packages "
 
 python split_kernel_packages () {
     do_split_packages(d, root='${nonarch_base_libdir}/firmware', file_regex=r'^(.*)\.(bin|fw|cis|csp|dsp)$', output_pattern='${KERNEL_PACKAGE_NAME}-firmware-%s', description='Firmware for %s', recursive=True, extra_depends='')
diff --git a/poky/meta/classes/libc-package.bbclass b/poky/meta/classes/libc-package.bbclass
index de3b425..7a661d4 100644
--- a/poky/meta/classes/libc-package.bbclass
+++ b/poky/meta/classes/libc-package.bbclass
@@ -42,7 +42,7 @@
 # try to fix disable charsets/locales/locale-code compile fail
 PACKAGE_NO_GCONV ?= "0"
 
-OVERRIDES_append = ":${TARGET_ARCH}-${TARGET_OS}"
+OVERRIDES:append = ":${TARGET_ARCH}-${TARGET_OS}"
 
 locale_base_postinst_ontarget() {
 localedef --inputfile=${datadir}/i18n/locales/%s --charmap=%s %s
@@ -129,9 +129,9 @@
                     deps.append(dp)
         f.close()
         if deps != []:
-            d.setVar('RDEPENDS_%s' % pkg, " ".join(deps))
+            d.setVar('RDEPENDS:%s' % pkg, " ".join(deps))
         if bpn != 'glibc':
-            d.setVar('RPROVIDES_%s' % pkg, pkg.replace(bpn, 'glibc'))
+            d.setVar('RPROVIDES:%s' % pkg, pkg.replace(bpn, 'glibc'))
 
     do_split_packages(d, gconv_libdir, file_regex=r'^(.*)\.so$', output_pattern=bpn+'-gconv-%s', \
         description='gconv module for character set %s', hook=calc_gconv_deps, \
@@ -151,9 +151,9 @@
                     deps.append(dp)
         f.close()
         if deps != []:
-            d.setVar('RDEPENDS_%s' % pkg, " ".join(deps))
+            d.setVar('RDEPENDS:%s' % pkg, " ".join(deps))
         if bpn != 'glibc':
-            d.setVar('RPROVIDES_%s' % pkg, pkg.replace(bpn, 'glibc'))
+            d.setVar('RPROVIDES:%s' % pkg, pkg.replace(bpn, 'glibc'))
 
     do_split_packages(d, charmap_dir, file_regex=r'^(.*)\.gz$', output_pattern=bpn+'-charmap-%s', \
         description='character map for %s encoding', hook=calc_charmap_deps, extra_depends='')
@@ -172,9 +172,9 @@
                     deps.append(dp)
         f.close()
         if deps != []:
-            d.setVar('RDEPENDS_%s' % pkg, " ".join(deps))
+            d.setVar('RDEPENDS:%s' % pkg, " ".join(deps))
         if bpn != 'glibc':
-            d.setVar('RPROVIDES_%s' % pkg, pkg.replace(bpn, 'glibc'))
+            d.setVar('RPROVIDES:%s' % pkg, pkg.replace(bpn, 'glibc'))
 
     do_split_packages(d, locales_dir, file_regex=r'(.*)', output_pattern=bpn+'-localedata-%s', \
         description='locale definition for %s', hook=calc_locale_deps, extra_depends='')
@@ -210,11 +210,11 @@
                 supported[locale] = charset
 
     def output_locale_source(name, pkgname, locale, encoding):
-        d.setVar('RDEPENDS_%s' % pkgname, '%slocaledef %s-localedata-%s %s-charmap-%s' % \
+        d.setVar('RDEPENDS:%s' % pkgname, '%slocaledef %s-localedata-%s %s-charmap-%s' % \
         (mlprefix, mlprefix+bpn, legitimize_package_name(locale), mlprefix+bpn, legitimize_package_name(encoding)))
-        d.setVar('pkg_postinst_ontarget_%s' % pkgname, d.getVar('locale_base_postinst_ontarget') \
+        d.setVar('pkg_postinst_ontarget:%s' % pkgname, d.getVar('locale_base_postinst_ontarget') \
         % (locale, encoding, locale))
-        d.setVar('pkg_postrm_%s' % pkgname, d.getVar('locale_base_postrm') % \
+        d.setVar('pkg_postrm:%s' % pkgname, d.getVar('locale_base_postrm') % \
         (locale, encoding, locale))
 
     def output_locale_binary_rdepends(name, pkgname, locale, encoding):
@@ -222,8 +222,8 @@
         lcsplit = d.getVar('GLIBC_SPLIT_LC_PACKAGES')
         if lcsplit and int(lcsplit):
             d.appendVar('PACKAGES', ' ' + dep)
-            d.setVar('ALLOW_EMPTY_%s' % dep, '1')
-        d.setVar('RDEPENDS_%s' % pkgname, mlprefix + dep)
+            d.setVar('ALLOW_EMPTY:%s' % dep, '1')
+        d.setVar('RDEPENDS:%s' % pkgname, mlprefix + dep)
 
     commands = {}
 
@@ -293,13 +293,13 @@
 
     def output_locale(name, locale, encoding):
         pkgname = d.getVar('MLPREFIX', False) + 'locale-base-' + legitimize_package_name(name)
-        d.setVar('ALLOW_EMPTY_%s' % pkgname, '1')
+        d.setVar('ALLOW_EMPTY:%s' % pkgname, '1')
         d.setVar('PACKAGES', '%s %s' % (pkgname, d.getVar('PACKAGES')))
         rprovides = ' %svirtual-locale-%s' % (mlprefix, legitimize_package_name(name))
         m = re.match(r"(.*)_(.*)", name)
         if m:
             rprovides += ' %svirtual-locale-%s' % (mlprefix, m.group(1))
-        d.setVar('RPROVIDES_%s' % pkgname, rprovides)
+        d.setVar('RPROVIDES:%s' % pkgname, rprovides)
 
         if use_bin == "compile":
             output_locale_binary_rdepends(name, pkgname, locale, encoding)
@@ -343,7 +343,7 @@
     def metapkg_hook(file, pkg, pattern, format, basename):
         name = basename.split('/', 1)[0]
         metapkg = legitimize_package_name('%s-binary-localedata-%s' % (mlprefix+bpn, name))
-        d.appendVar('RDEPENDS_%s' % metapkg, ' ' + pkg)
+        d.appendVar('RDEPENDS:%s' % metapkg, ' ' + pkg)
 
     if use_bin == "compile":
         makefile = oe.path.join(d.getVar("WORKDIR"), "locale-tree", "Makefile")
@@ -379,6 +379,6 @@
 
 # We want to do this indirection so that we can safely 'return'
 # from the called function even though we're prepending
-python populate_packages_prepend () {
+python populate_packages:prepend () {
     bb.build.exec_func('package_do_split_gconvs', d)
 }
diff --git a/poky/meta/classes/license.bbclass b/poky/meta/classes/license.bbclass
index c87473c..45d9127 100644
--- a/poky/meta/classes/license.bbclass
+++ b/poky/meta/classes/license.bbclass
@@ -6,7 +6,7 @@
 LICENSE_DIRECTORY ??= "${DEPLOY_DIR}/licenses"
 LICSSTATEDIR = "${WORKDIR}/license-destdir/"
 
-# Create extra package with license texts and add it to RRECOMMENDS_${PN}
+# Create extra package with license texts and add it to RRECOMMENDS:${PN}
 LICENSE_CREATE_PACKAGE[type] = "boolean"
 LICENSE_CREATE_PACKAGE ??= "0"
 LICENSE_PACKAGE_SUFFIX ??= "-lic"
@@ -31,9 +31,9 @@
             f.write("%s: %s\n" % (key, info[key]))
 }
 
-PSEUDO_IGNORE_PATHS .= ",${@','.join(((d.getVar('COMMON_LICENSE_DIR') or '') + ' ' + (d.getVar('LICENSE_PATH') or '')).split())}"
-# it would be better to copy them in do_install_append, but find_license_filesa is python
-python perform_packagecopy_prepend () {
+PSEUDO_IGNORE_PATHS .= ",${@','.join(((d.getVar('COMMON_LICENSE_DIR') or '') + ' ' + (d.getVar('LICENSE_PATH') or '') + ' ' + d.getVar('COREBASE') + '/meta/COPYING').split())}"
+# it would be better to copy them in do_install:append, but find_license_filesa is python
+python perform_packagecopy:prepend () {
     enabled = oe.data.typed_value('LICENSE_CREATE_PACKAGE', d)
     if d.getVar('CLASSOVERRIDE') == 'class-target' and enabled:
         lic_files_paths = find_license_files(d)
@@ -62,7 +62,7 @@
     else:
         # first in PACKAGES to be sure that nothing else gets LICENSE_FILES_DIRECTORY
         d.setVar('PACKAGES', "%s %s" % (pn_lic, packages))
-        d.setVar('FILES_' + pn_lic, files)
+        d.setVar('FILES:' + pn_lic, files)
 
 def copy_license_files(lic_files_paths, destdir):
     import shutil
@@ -324,7 +324,7 @@
     as canonical (SPDX) names.
     """
     import oe.license
-    license = d.getVar("LICENSE_%s" % package) if package else None
+    license = d.getVar("LICENSE:%s" % package) if package else None
     if not license:
         license = d.getVar('LICENSE')
 
@@ -419,7 +419,7 @@
 do_populate_lic[sstate-inputdirs] = "${LICSSTATEDIR}"
 do_populate_lic[sstate-outputdirs] = "${LICENSE_DIRECTORY}/"
 
-IMAGE_CLASSES_append = " license_image"
+IMAGE_CLASSES:append = " license_image"
 
 python do_populate_lic_setscene () {
     sstate_setscene(d)
diff --git a/poky/meta/classes/license_image.bbclass b/poky/meta/classes/license_image.bbclass
index 5dbec28..5cec7a0 100644
--- a/poky/meta/classes/license_image.bbclass
+++ b/poky/meta/classes/license_image.bbclass
@@ -39,7 +39,7 @@
 
         pkg_dic[pkg_name] = oe.packagedata.read_pkgdatafile(pkg_info)
         if not "LICENSE" in pkg_dic[pkg_name].keys():
-            pkg_lic_name = "LICENSE_" + pkg_name
+            pkg_lic_name = "LICENSE:" + pkg_name
             pkg_dic[pkg_name]["LICENSE"] = pkg_dic[pkg_name][pkg_lic_name]
 
     rootfs_license_manifest = os.path.join(d.getVar('LICENSE_DIRECTORY'),
@@ -269,7 +269,7 @@
             dep_files.append(os.path.basename(f))
     return dep_files
 
-ROOTFS_POSTPROCESS_COMMAND_prepend = "write_package_manifest; license_create_manifest; "
+ROOTFS_POSTPROCESS_COMMAND:prepend = "write_package_manifest; license_create_manifest; "
 do_rootfs[recrdeptask] += "do_populate_lic"
 
 python do_populate_lic_deploy() {
diff --git a/poky/meta/classes/linux-dummy.bbclass b/poky/meta/classes/linux-dummy.bbclass
index cd87915..9a06a50 100644
--- a/poky/meta/classes/linux-dummy.bbclass
+++ b/poky/meta/classes/linux-dummy.bbclass
@@ -6,7 +6,7 @@
 
         # set an empty package of kernel-devicetree
         d.appendVar('PACKAGES', ' %s-devicetree' % kname)
-        d.setVar('ALLOW_EMPTY_%s-devicetree' % kname, '1')
+        d.setVar('ALLOW_EMPTY:%s-devicetree' % kname, '1')
 
         # Merge KERNEL_IMAGETYPE and KERNEL_ALT_IMAGETYPE into KERNEL_IMAGETYPES
         type = d.getVar('KERNEL_IMAGETYPE') or ""
@@ -21,6 +21,6 @@
         for type in types.split():
             typelower = type.lower()
             d.appendVar('PACKAGES', ' %s-image-%s' % (kname, typelower))
-            d.setVar('ALLOW_EMPTY_%s-image-%s' % (kname, typelower), '1')
+            d.setVar('ALLOW_EMPTY:%s-image-%s' % (kname, typelower), '1')
 }
 
diff --git a/poky/meta/classes/manpages.bbclass b/poky/meta/classes/manpages.bbclass
index 1e66780..64b7d8c 100644
--- a/poky/meta/classes/manpages.bbclass
+++ b/poky/meta/classes/manpages.bbclass
@@ -2,7 +2,7 @@
 # depending on whether 'api-documentation' is in DISTRO_FEATURES. Such building
 # tends to pull in the entire XML stack and other tools, so it's not enabled
 # by default.
-PACKAGECONFIG_append_class-target = " ${@bb.utils.contains('DISTRO_FEATURES', 'api-documentation', 'manpages', '', d)}"
+PACKAGECONFIG:append:class-target = " ${@bb.utils.contains('DISTRO_FEATURES', 'api-documentation', 'manpages', '', d)}"
 
 inherit qemu
 
@@ -10,9 +10,9 @@
 MAN_PKG ?= "${PN}-doc"
 
 # only add man-db to RDEPENDS when manual files are built and installed
-RDEPENDS_${MAN_PKG} += "${@bb.utils.contains('PACKAGECONFIG', 'manpages', 'man-db', '', d)}"
+RDEPENDS:${MAN_PKG} += "${@bb.utils.contains('PACKAGECONFIG', 'manpages', 'man-db', '', d)}"
 
-pkg_postinst_append_${MAN_PKG} () {
+pkg_postinst:append:${MAN_PKG} () {
 	# only update manual page index caches when manual files are built and installed
 	if ${@bb.utils.contains('PACKAGECONFIG', 'manpages', 'true', 'false', d)}; then
 		if test -n "$D"; then
@@ -36,7 +36,7 @@
 	fi
 }
 
-pkg_postrm_append_${MAN_PKG} () {
+pkg_postrm:append:${MAN_PKG} () {
 	# only update manual page index caches when manual files are built and installed
 	if ${@bb.utils.contains('PACKAGECONFIG', 'manpages', 'true', 'false', d)}; then
 		mandb -q
diff --git a/poky/meta/classes/meson.bbclass b/poky/meta/classes/meson.bbclass
index 8ae0285..2beed89 100644
--- a/poky/meta/classes/meson.bbclass
+++ b/poky/meta/classes/meson.bbclass
@@ -1,6 +1,6 @@
 inherit python3native meson-routines
 
-DEPENDS_append = " meson-native ninja-native"
+DEPENDS:append = " meson-native ninja-native"
 
 # As Meson enforces out-of-tree builds we can just use cleandirs
 B = "${WORKDIR}/build"
@@ -29,11 +29,11 @@
               --wrap-mode nodownload \
               --native-file ${WORKDIR}/meson.native"
 
-EXTRA_OEMESON_append = " ${PACKAGECONFIG_CONFARGS}"
+EXTRA_OEMESON:append = " ${PACKAGECONFIG_CONFARGS}"
 
 MESON_CROSS_FILE = ""
-MESON_CROSS_FILE_class-target = "--cross-file ${WORKDIR}/meson.cross"
-MESON_CROSS_FILE_class-nativesdk = "--cross-file ${WORKDIR}/meson.cross"
+MESON_CROSS_FILE:class-target = "--cross-file ${WORKDIR}/meson.cross"
+MESON_CROSS_FILE:class-nativesdk = "--cross-file ${WORKDIR}/meson.cross"
 
 addtask write_config before do_configure
 do_write_config[vardeps] += "CC CXX LD AR NM STRIP READELF CFLAGS CXXFLAGS LDFLAGS"
diff --git a/poky/meta/classes/mime-xdg.bbclass b/poky/meta/classes/mime-xdg.bbclass
index 642a5b7..271f48d 100644
--- a/poky/meta/classes/mime-xdg.bbclass
+++ b/poky/meta/classes/mime-xdg.bbclass
@@ -34,7 +34,7 @@
 fi
 }
 
-python populate_packages_append () {
+python populate_packages:append () {
     packages = d.getVar('PACKAGES').split()
     pkgdest =  d.getVar('PKGDEST')
     desktop_base = d.getVar('DESKTOPDIR')
@@ -59,16 +59,16 @@
                         break
         if desktops_with_mime_found:
             bb.note("adding mime-xdg postinst and postrm scripts to %s" % pkg)
-            postinst = d.getVar('pkg_postinst_%s' % pkg)
+            postinst = d.getVar('pkg_postinst:%s' % pkg)
             if not postinst:
                 postinst = '#!/bin/sh\n'
             postinst += d.getVar('mime_xdg_postinst')
-            d.setVar('pkg_postinst_%s' % pkg, postinst)
-            postrm = d.getVar('pkg_postrm_%s' % pkg)
+            d.setVar('pkg_postinst:%s' % pkg, postinst)
+            postrm = d.getVar('pkg_postrm:%s' % pkg)
             if not postrm:
                 postrm = '#!/bin/sh\n'
             postrm += d.getVar('mime_xdg_postrm')
-            d.setVar('pkg_postrm_%s' % pkg, postrm)
+            d.setVar('pkg_postrm:%s' % pkg, postrm)
             bb.note("adding desktop-file-utils dependency to %s" % pkg)
-            d.appendVar('RDEPENDS_' + pkg, " " + d.getVar('MLPREFIX')+"desktop-file-utils")
+            d.appendVar('RDEPENDS:' + pkg, " " + d.getVar('MLPREFIX')+"desktop-file-utils")
 }
diff --git a/poky/meta/classes/mime.bbclass b/poky/meta/classes/mime.bbclass
index bb99bc3..8d176a8 100644
--- a/poky/meta/classes/mime.bbclass
+++ b/poky/meta/classes/mime.bbclass
@@ -39,7 +39,7 @@
 fi
 }
 
-python populate_packages_append () {
+python populate_packages:append () {
     packages = d.getVar('PACKAGES').split()
     pkgdest =  d.getVar('PKGDEST')
     mimedir = d.getVar('MIMEDIR')
@@ -54,17 +54,17 @@
                     break
         if mimes_types_found:
             bb.note("adding mime postinst and postrm scripts to %s" % pkg)
-            postinst = d.getVar('pkg_postinst_%s' % pkg)
+            postinst = d.getVar('pkg_postinst:%s' % pkg)
             if not postinst:
                 postinst = '#!/bin/sh\n'
             postinst += d.getVar('mime_postinst')
-            d.setVar('pkg_postinst_%s' % pkg, postinst)
-            postrm = d.getVar('pkg_postrm_%s' % pkg)
+            d.setVar('pkg_postinst:%s' % pkg, postinst)
+            postrm = d.getVar('pkg_postrm:%s' % pkg)
             if not postrm:
                 postrm = '#!/bin/sh\n'
             postrm += d.getVar('mime_postrm')
-            d.setVar('pkg_postrm_%s' % pkg, postrm)
+            d.setVar('pkg_postrm:%s' % pkg, postrm)
             if pkg != 'shared-mime-info-data':
                 bb.note("adding shared-mime-info-data dependency to %s" % pkg)
-                d.appendVar('RDEPENDS_' + pkg, " " + d.getVar('MLPREFIX')+"shared-mime-info-data")
+                d.appendVar('RDEPENDS:' + pkg, " " + d.getVar('MLPREFIX')+"shared-mime-info-data")
 }
diff --git a/poky/meta/classes/module.bbclass b/poky/meta/classes/module.bbclass
index c0dfa35..a09ec3e 100644
--- a/poky/meta/classes/module.bbclass
+++ b/poky/meta/classes/module.bbclass
@@ -14,7 +14,7 @@
     d.setVar('KBUILD_EXTRA_SYMBOLS', " ".join(extra_symbols))
 }
 
-python do_devshell_prepend () {
+python do_devshell:prepend () {
     os.environ['CFLAGS'] = ''
     os.environ['CPPFLAGS'] = ''
     os.environ['CXXFLAGS'] = ''
@@ -70,5 +70,5 @@
 
 # add all splitted modules to PN RDEPENDS, PN can be empty now
 KERNEL_MODULES_META_PACKAGE = "${PN}"
-FILES_${PN} = ""
-ALLOW_EMPTY_${PN} = "1"
+FILES:${PN} = ""
+ALLOW_EMPTY:${PN} = "1"
diff --git a/poky/meta/classes/multilib.bbclass b/poky/meta/classes/multilib.bbclass
index 2ef75c0..c3be897 100644
--- a/poky/meta/classes/multilib.bbclass
+++ b/poky/meta/classes/multilib.bbclass
@@ -176,7 +176,7 @@
                 bb.debug(1, '%s: Setting ALTERNATIVE_PRIORITY_%s to %s' % (pkg, pkg, reset_priority))
                 d.setVar('ALTERNATIVE_PRIORITY_%s' % pkg, reset_priority)
 
-        for alt_name in (d.getVar('ALTERNATIVE_%s' % pkg) or "").split():
+        for alt_name in (d.getVar('ALTERNATIVE:%s' % pkg) or "").split():
             # ALTERNATIVE_PRIORITY_pkg[tool]  = priority
             alt_priority_pkg_name = d.getVarFlag('ALTERNATIVE_PRIORITY_%s' % pkg, alt_name)
             # ALTERNATIVE_PRIORITY[tool] = priority
@@ -191,7 +191,7 @@
                 bb.debug(1, '%s: Setting ALTERNATIVE_PRIORITY[%s] to %s' % (pkg, alt_name, reset_priority))
                 d.setVarFlag('ALTERNATIVE_PRIORITY', alt_name, reset_priority)
 
-PACKAGEFUNCS_append = " do_package_qa_multilib"
+PACKAGEFUNCS:append = " do_package_qa_multilib"
 
 python do_package_qa_multilib() {
 
diff --git a/poky/meta/classes/multilib_global.bbclass b/poky/meta/classes/multilib_global.bbclass
index 96257de..dae015c 100644
--- a/poky/meta/classes/multilib_global.bbclass
+++ b/poky/meta/classes/multilib_global.bbclass
@@ -164,8 +164,8 @@
 python multilib_virtclass_handler_vendor () {
     if isinstance(e, bb.event.ConfigParsed):
         for v in e.data.getVar("MULTILIB_VARIANTS").split():
-            if e.data.getVar("TARGET_VENDOR_virtclass-multilib-" + v, False) is None:
-                e.data.setVar("TARGET_VENDOR_virtclass-multilib-" + v, e.data.getVar("TARGET_VENDOR", False) + "ml" + v)
+            if e.data.getVar("TARGET_VENDOR:virtclass-multilib-" + v, False) is None:
+                e.data.setVar("TARGET_VENDOR:virtclass-multilib-" + v, e.data.getVar("TARGET_VENDOR", False) + "ml" + v)
         preferred_ml_updates(e.data)
 }
 addhandler multilib_virtclass_handler_vendor
@@ -207,13 +207,13 @@
             if rprovs.strip():
                 e.data.setVar("RPROVIDES", rprovs)
 
-            # Process RPROVIDES_${PN}...
+            # Process RPROVIDES:${PN}...
             for pkg in (e.data.getVar("PACKAGES") or "").split():
-                origrprovs = rprovs = localdata.getVar("RPROVIDES_%s" % pkg) or ""
+                origrprovs = rprovs = localdata.getVar("RPROVIDES:%s" % pkg) or ""
                 for clsextend in clsextends:
-                    rprovs = rprovs + " " + clsextend.map_variable("RPROVIDES_%s" % pkg, setvar=False)
+                    rprovs = rprovs + " " + clsextend.map_variable("RPROVIDES:%s" % pkg, setvar=False)
                     rprovs = rprovs + " " + clsextend.extname + "-" + pkg
-                e.data.setVar("RPROVIDES_%s" % pkg, rprovs)
+                e.data.setVar("RPROVIDES:%s" % pkg, rprovs)
 }
 
 addhandler multilib_virtclass_handler_global
diff --git a/poky/meta/classes/multilib_header.bbclass b/poky/meta/classes/multilib_header.bbclass
index e03f5b1..efbc24f 100644
--- a/poky/meta/classes/multilib_header.bbclass
+++ b/poky/meta/classes/multilib_header.bbclass
@@ -42,11 +42,11 @@
 
 # Dependencies on arch variables like MIPSPKGSFX_ABI can be problematic.
 # We don't need multilib headers for native builds so brute force things.
-oe_multilib_header_class-native () {
+oe_multilib_header:class-native () {
 	return
 }
 
 # Nor do we need multilib headers for nativesdk builds.
-oe_multilib_header_class-nativesdk () {
+oe_multilib_header:class-nativesdk () {
 	return
 }
diff --git a/poky/meta/classes/multilib_script.bbclass b/poky/meta/classes/multilib_script.bbclass
index b11efc1..4159734 100644
--- a/poky/meta/classes/multilib_script.bbclass
+++ b/poky/meta/classes/multilib_script.bbclass
@@ -26,9 +26,9 @@
         pkg, script = entry.split(":")
         epkg = d.expand(pkg)
         scriptname = os.path.basename(script)
-        d.appendVar("ALTERNATIVE_" + epkg, " " + scriptname + " ")
+        d.appendVar("ALTERNATIVE:" + epkg, " " + scriptname + " ")
         d.setVarFlag("ALTERNATIVE_LINK_NAME", scriptname, script)
         d.setVarFlag("ALTERNATIVE_TARGET", scriptname, script + "-${MULTILIB_SUFFIX}")
         d.appendVar("multilibscript_rename",  "\n	mv ${PKGD}" + script + " ${PKGD}" + script + "-${MULTILIB_SUFFIX}")
-        d.appendVar("FILES_" + epkg, " " + script + "-${MULTILIB_SUFFIX}")
+        d.appendVar("FILES:" + epkg, " " + script + "-${MULTILIB_SUFFIX}")
 }
diff --git a/poky/meta/classes/native.bbclass b/poky/meta/classes/native.bbclass
index 561cc23..76a599b 100644
--- a/poky/meta/classes/native.bbclass
+++ b/poky/meta/classes/native.bbclass
@@ -9,7 +9,7 @@
 
 # used by cmake class
 OECMAKE_RPATH = "${libdir}"
-OECMAKE_RPATH_class-native = "${libdir}"
+OECMAKE_RPATH:class-native = "${libdir}"
 
 TARGET_ARCH = "${BUILD_ARCH}"
 TARGET_OS = "${BUILD_OS}"
@@ -106,7 +106,7 @@
 MACHINEOVERRIDES = ""
 MACHINE_FEATURES = ""
 
-PATH_prepend = "${COREBASE}/scripts/native-intercept:"
+PATH:prepend = "${COREBASE}/scripts/native-intercept:"
 
 # This class encodes staging paths into its scripts data so can only be
 # reused if we manipulate the paths.
@@ -133,7 +133,7 @@
 
     def map_dependencies(varname, d, suffix = "", selfref=True):
         if suffix:
-            varname = varname + "_" + suffix
+            varname = varname + ":" + suffix
         deps = d.getVar(varname)
         if not deps:
             return
diff --git a/poky/meta/classes/nativesdk.bbclass b/poky/meta/classes/nativesdk.bbclass
index 7f2692c..c66de8c 100644
--- a/poky/meta/classes/nativesdk.bbclass
+++ b/poky/meta/classes/nativesdk.bbclass
@@ -28,7 +28,7 @@
 # We need chrpath >= 0.14 to ensure we can deal with 32 and 64 bit
 # binaries
 #
-DEPENDS_append = " chrpath-replacement-native"
+DEPENDS:append = " chrpath-replacement-native"
 EXTRANATIVEPATH += "chrpath-native"
 
 PKGDATA_DIR = "${TMPDIR}/pkgdata/${SDK_SYS}"
diff --git a/poky/meta/classes/npm.bbclass b/poky/meta/classes/npm.bbclass
index 8f8712a..91a2321 100644
--- a/poky/meta/classes/npm.bbclass
+++ b/poky/meta/classes/npm.bbclass
@@ -19,8 +19,8 @@
 
 inherit python3native
 
-DEPENDS_prepend = "nodejs-native "
-RDEPENDS_${PN}_append_class-target = " nodejs"
+DEPENDS:prepend = "nodejs-native "
+RDEPENDS:${PN}:append:class-target = " nodejs"
 
 NPM_INSTALL_DEV ?= "0"
 
@@ -312,7 +312,7 @@
     ln -fs node_modules ${D}/${nonarch_libdir}/node
 }
 
-FILES_${PN} += " \
+FILES:${PN} += " \
     ${bindir} \
     ${nonarch_libdir} \
 "
diff --git a/poky/meta/classes/own-mirrors.bbclass b/poky/meta/classes/own-mirrors.bbclass
index d58a61f..e244de5 100644
--- a/poky/meta/classes/own-mirrors.bbclass
+++ b/poky/meta/classes/own-mirrors.bbclass
@@ -1,4 +1,4 @@
-PREMIRRORS_prepend = " \
+PREMIRRORS:prepend = " \
 cvs://.*/.*     ${SOURCE_MIRROR_URL} \n \
 svn://.*/.*     ${SOURCE_MIRROR_URL} \n \
 git://.*/.*     ${SOURCE_MIRROR_URL} \n \
diff --git a/poky/meta/classes/package.bbclass b/poky/meta/classes/package.bbclass
index cf30f33..a659a1e 100644
--- a/poky/meta/classes/package.bbclass
+++ b/poky/meta/classes/package.bbclass
@@ -199,7 +199,7 @@
                 packages = [pkg] + packages
             else:
                 packages.append(pkg)
-        oldfiles = d.getVar('FILES_' + pkg)
+        oldfiles = d.getVar('FILES:' + pkg)
         newfile = os.path.join(root, o)
         # These names will be passed through glob() so if the filename actually
         # contains * or ? (rare, but possible) we need to handle that specially
@@ -219,19 +219,19 @@
                         the_files.append(fp % m.group(1))
                 else:
                     the_files.append(aux_files_pattern_verbatim % m.group(1))
-            d.setVar('FILES_' + pkg, " ".join(the_files))
+            d.setVar('FILES:' + pkg, " ".join(the_files))
         else:
-            d.setVar('FILES_' + pkg, oldfiles + " " + newfile)
+            d.setVar('FILES:' + pkg, oldfiles + " " + newfile)
         if extra_depends != '':
-            d.appendVar('RDEPENDS_' + pkg, ' ' + extra_depends)
-        if not d.getVar('DESCRIPTION_' + pkg):
-            d.setVar('DESCRIPTION_' + pkg, description % on)
-        if not d.getVar('SUMMARY_' + pkg):
-            d.setVar('SUMMARY_' + pkg, summary % on)
+            d.appendVar('RDEPENDS:' + pkg, ' ' + extra_depends)
+        if not d.getVar('DESCRIPTION:' + pkg):
+            d.setVar('DESCRIPTION:' + pkg, description % on)
+        if not d.getVar('SUMMARY:' + pkg):
+            d.setVar('SUMMARY:' + pkg, summary % on)
         if postinst:
-            d.setVar('pkg_postinst_' + pkg, postinst)
+            d.setVar('pkg_postinst:' + pkg, postinst)
         if postrm:
-            d.setVar('pkg_postrm_' + pkg, postrm)
+            d.setVar('pkg_postrm:' + pkg, postrm)
         if callable(hook):
             hook(f, pkg, file_regex, output_pattern, m.group(1))
 
@@ -303,7 +303,7 @@
     cwd = os.getcwd()
     os.chdir(root)
 
-    conffiles = d.getVar('CONFFILES_%s' % pkg);
+    conffiles = d.getVar('CONFFILES:%s' % pkg);
     if conffiles == None:
         conffiles = d.getVar('CONFFILES')
     if conffiles == None:
@@ -618,7 +618,7 @@
     import oe.packagedata
 
     data = oe.packagedata.read_subpkgdata(pkg, d)
-    key = "PKG_%s" % pkg
+    key = "PKG:%s" % pkg
 
     if key in data:
         # Have to avoid undoing the write_extra_pkgs(global_variants...)
@@ -627,7 +627,7 @@
             return pkg
         if depversions == []:
             # Avoid returning a mapping if the renamed package rprovides its original name
-            rprovkey = "RPROVIDES_%s" % pkg
+            rprovkey = "RPROVIDES:%s" % pkg
             if rprovkey in data:
                 if pkg in bb.utils.explode_dep_versions2(data[rprovkey]):
                     bb.note("%s rprovides %s, not replacing the latter" % (data[key], pkg))
@@ -784,13 +784,13 @@
         ln = legitimize_package_name(l)
         pkg = pn + '-locale-' + ln
         packages.append(pkg)
-        d.setVar('FILES_' + pkg, os.path.join(datadir, 'locale', l))
-        d.setVar('RRECOMMENDS_' + pkg, '%svirtual-locale-%s' % (mlprefix, ln))
-        d.setVar('RPROVIDES_' + pkg, '%s-locale %s%s-translation' % (pn, mlprefix, ln))
-        d.setVar('SUMMARY_' + pkg, '%s - %s translations' % (summary, l))
-        d.setVar('DESCRIPTION_' + pkg, '%s  This package contains language translation files for the %s locale.' % (description, l))
+        d.setVar('FILES:' + pkg, os.path.join(datadir, 'locale', l))
+        d.setVar('RRECOMMENDS:' + pkg, '%svirtual-locale-%s' % (mlprefix, ln))
+        d.setVar('RPROVIDES:' + pkg, '%s-locale %s%s-translation' % (pn, mlprefix, ln))
+        d.setVar('SUMMARY:' + pkg, '%s - %s translations' % (summary, l))
+        d.setVar('DESCRIPTION:' + pkg, '%s  This package contains language translation files for the %s locale.' % (description, l))
         if locale_section:
-            d.setVar('SECTION_' + pkg, locale_section)
+            d.setVar('SECTION:' + pkg, locale_section)
 
     d.setVar('PACKAGES', ' '.join(packages))
 
@@ -800,9 +800,9 @@
     # glibc-localedata-translit* won't install as a dependency
     # for some other package which breaks meta-toolchain
     # Probably breaks since virtual-locale- isn't provided anywhere
-    #rdep = (d.getVar('RDEPENDS_%s' % pn) or "").split()
+    #rdep = (d.getVar('RDEPENDS:%s' % pn) or "").split()
     #rdep.append('%s-locale*' % pn)
-    #d.setVar('RDEPENDS_%s' % pn, ' '.join(rdep))
+    #d.setVar('RDEPENDS:%s' % pn, ' '.join(rdep))
 }
 
 python perform_packagecopy () {
@@ -1199,7 +1199,7 @@
             # ...but is it ELF, and is it already stripped?
             if elf_file & 1:
                 if elf_file & 2:
-                    if 'already-stripped' in (d.getVar('INSANE_SKIP_' + pn) or "").split():
+                    if 'already-stripped' in (d.getVar('INSANE_SKIP:' + pn) or "").split():
                         bb.note("Skipping file %s from %s for already-stripped QA test" % (file[len(dvar):], pn))
                     else:
                         msg = "File '%s' from %s was already stripped, this will prevent future debugging!" % (file[len(dvar):], pn)
@@ -1344,7 +1344,7 @@
         src_package_name = ('%s-src' % d.getVar('PN'))
         if not src_package_name in packages:
             packages.append(src_package_name)
-        d.setVar('FILES_%s' % src_package_name, '/usr/src/debug')
+        d.setVar('FILES:%s' % src_package_name, '/usr/src/debug')
 
     # Sanity check PACKAGES for duplicates
     # Sanity should be moved to sanity.bbclass once we have the infrastructure
@@ -1387,7 +1387,7 @@
         root = os.path.join(pkgdest, pkg)
         bb.utils.mkdirhier(root)
 
-        filesvar = d.getVar('FILES_%s' % pkg) or ""
+        filesvar = d.getVar('FILES:%s' % pkg) or ""
         if "//" in filesvar:
             msg = "FILES variable for package %s contains '//' which is invalid. Attempting to fix this but you should correct the metadata.\n" % pkg
             package_qa_handle_error("files-invalid", msg, d)
@@ -1476,7 +1476,7 @@
 
     if unshipped != []:
         msg = pn + ": Files/directories were installed but not shipped in any package:"
-        if "installed-vs-shipped" in (d.getVar('INSANE_SKIP_' + pn) or "").split():
+        if "installed-vs-shipped" in (d.getVar('INSANE_SKIP:' + pn) or "").split():
             bb.note("Package %s skipping QA tests: installed-vs-shipped" % pn)
         else:
             for f in unshipped:
@@ -1524,11 +1524,11 @@
                 bb.note("%s contains dangling symlink to %s" % (pkg, l))
 
     for pkg in newrdepends:
-        rdepends = bb.utils.explode_dep_versions2(d.getVar('RDEPENDS_' + pkg) or "")
+        rdepends = bb.utils.explode_dep_versions2(d.getVar('RDEPENDS:' + pkg) or "")
         for p in newrdepends[pkg]:
             if p not in rdepends:
                 rdepends[p] = []
-        d.setVar('RDEPENDS_' + pkg, bb.utils.join_deps(rdepends, commasep=False))
+        d.setVar('RDEPENDS:' + pkg, bb.utils.join_deps(rdepends, commasep=False))
 }
 
 
@@ -1552,7 +1552,7 @@
     import json
 
     def process_postinst_on_target(pkg, mlprefix):
-        pkgval = d.getVar('PKG_%s' % pkg)
+        pkgval = d.getVar('PKG:%s' % pkg)
         if pkgval is None:
             pkgval = pkg
 
@@ -1563,8 +1563,8 @@
 fi
 """ % (pkgval, mlprefix)
 
-        postinst = d.getVar('pkg_postinst_%s' % pkg)
-        postinst_ontarget = d.getVar('pkg_postinst_ontarget_%s' % pkg)
+        postinst = d.getVar('pkg_postinst:%s' % pkg)
+        postinst_ontarget = d.getVar('pkg_postinst_ontarget:%s' % pkg)
 
         if postinst_ontarget:
             bb.debug(1, 'adding deferred pkg_postinst_ontarget() to pkg_postinst() for %s' % pkg)
@@ -1572,18 +1572,18 @@
                 postinst = '#!/bin/sh\n'
             postinst += defer_fragment
             postinst += postinst_ontarget
-            d.setVar('pkg_postinst_%s' % pkg, postinst)
+            d.setVar('pkg_postinst:%s' % pkg, postinst)
 
     def add_set_e_to_scriptlets(pkg):
         for scriptlet_name in ('pkg_preinst', 'pkg_postinst', 'pkg_prerm', 'pkg_postrm'):
-            scriptlet = d.getVar('%s_%s' % (scriptlet_name, pkg))
+            scriptlet = d.getVar('%s:%s' % (scriptlet_name, pkg))
             if scriptlet:
                 scriptlet_split = scriptlet.split('\n')
                 if scriptlet_split[0].startswith("#!"):
                     scriptlet = scriptlet_split[0] + "\nset -e\n" + "\n".join(scriptlet_split[1:])
                 else:
                     scriptlet = "set -e\n" + "\n".join(scriptlet_split[0:])
-            d.setVar('%s_%s' % (scriptlet_name, pkg), scriptlet)
+            d.setVar('%s:%s' % (scriptlet_name, pkg), scriptlet)
 
     def write_if_exists(f, pkg, var):
         def encode(str):
@@ -1591,9 +1591,9 @@
             c = codecs.getencoder("unicode_escape")
             return c(str)[0].decode("latin1")
 
-        val = d.getVar('%s_%s' % (var, pkg))
+        val = d.getVar('%s:%s' % (var, pkg))
         if val:
-            f.write('%s_%s: %s\n' % (var, pkg, encode(val)))
+            f.write('%s:%s: %s\n' % (var, pkg, encode(val)))
             return val
         val = d.getVar('%s' % (var))
         if val:
@@ -1612,7 +1612,7 @@
                 ml_pkg = "%s-%s" % (variant, pkg)
                 subdata_file = "%s/runtime/%s" % (pkgdatadir, ml_pkg)
                 with open(subdata_file, 'w') as fd:
-                    fd.write("PKG_%s: %s" % (ml_pkg, pkg))
+                    fd.write("PKG:%s: %s" % (ml_pkg, pkg))
 
     packages = d.getVar('PACKAGES')
     pkgdest = d.getVar('PKGDEST')
@@ -1636,10 +1636,10 @@
     workdir = d.getVar('WORKDIR')
 
     for pkg in packages.split():
-        pkgval = d.getVar('PKG_%s' % pkg)
+        pkgval = d.getVar('PKG:%s' % pkg)
         if pkgval is None:
             pkgval = pkg
-            d.setVar('PKG_%s' % pkg, pkg)
+            d.setVar('PKG:%s' % pkg, pkg)
 
         pkgdestpkg = os.path.join(pkgdest, pkg)
         files = {}
@@ -1673,14 +1673,14 @@
             sf.write('%s_%s: %d\n' % ('PKGSIZE', pkg, total_size))
 
         # Symlinks needed for rprovides lookup
-        rprov = d.getVar('RPROVIDES_%s' % pkg) or d.getVar('RPROVIDES')
+        rprov = d.getVar('RPROVIDES:%s' % pkg) or d.getVar('RPROVIDES')
         if rprov:
             for p in bb.utils.explode_deps(rprov):
                 subdata_sym = pkgdatadir + "/runtime-rprovides/%s/%s" % (p, pkg)
                 bb.utils.mkdirhier(os.path.dirname(subdata_sym))
                 oe.path.symlink("../../runtime/%s" % pkg, subdata_sym, True)
 
-        allow_empty = d.getVar('ALLOW_EMPTY_%s' % pkg)
+        allow_empty = d.getVar('ALLOW_EMPTY:%s' % pkg)
         if not allow_empty:
             allow_empty = d.getVar('ALLOW_EMPTY')
         root = "%s/%s" % (pkgdest, pkg)
@@ -1733,7 +1733,7 @@
 
     pkglist = []
     for pkg in packages.split():
-        if d.getVar('SKIP_FILEDEPS_' + pkg) == '1':
+        if d.getVar('SKIP_FILEDEPS:' + pkg) == '1':
             continue
         if pkg.endswith('-dbg') or pkg.endswith('-doc') or pkg.find('-locale-') != -1 or pkg.find('-localedata-') != -1 or pkg.find('-gconv-') != -1 or pkg.find('-charmap-') != -1 or pkg.startswith('kernel-module-') or pkg.endswith('-src'):
             continue
@@ -1930,12 +1930,12 @@
     shlib_provider = oe.package.read_shlib_providers(d)
 
     for pkg in shlib_pkgs:
-        private_libs = d.getVar('PRIVATE_LIBS_' + pkg) or d.getVar('PRIVATE_LIBS') or ""
+        private_libs = d.getVar('PRIVATE_LIBS:' + pkg) or d.getVar('PRIVATE_LIBS') or ""
         private_libs = private_libs.split()
         needs_ldconfig = False
         bb.debug(2, "calculating shlib provides for %s" % pkg)
 
-        pkgver = d.getVar('PKGV_' + pkg)
+        pkgver = d.getVar('PKGV:' + pkg)
         if not pkgver:
             pkgver = d.getVar('PV_' + pkg)
         if not pkgver:
@@ -1985,11 +1985,11 @@
                     shlib_provider[s[0]][s[1]] = (pkg, pkgver)
         if needs_ldconfig:
             bb.debug(1, 'adding ldconfig call to postinst for %s' % pkg)
-            postinst = d.getVar('pkg_postinst_%s' % pkg)
+            postinst = d.getVar('pkg_postinst:%s' % pkg)
             if not postinst:
                 postinst = '#!/bin/sh\n'
             postinst += d.getVar('ldconfig_postinst_fragment')
-            d.setVar('pkg_postinst_%s' % pkg, postinst)
+            d.setVar('pkg_postinst:%s' % pkg, postinst)
         bb.debug(1, 'LIBNAMES: pkg %s sonames %s' % (pkg, sonames))
 
     assumed_libs = d.getVar('ASSUME_SHLIBS')
@@ -2011,7 +2011,7 @@
     for pkg in shlib_pkgs:
         bb.debug(2, "calculating shlib requirements for %s" % pkg)
 
-        private_libs = d.getVar('PRIVATE_LIBS_' + pkg) or d.getVar('PRIVATE_LIBS') or ""
+        private_libs = d.getVar('PRIVATE_LIBS:' + pkg) or d.getVar('PRIVATE_LIBS') or ""
         private_libs = private_libs.split()
 
         deps = list()
@@ -2165,7 +2165,7 @@
 
     packages = d.getVar('PACKAGES').split()
     for pkg in packages:
-        rdepends = bb.utils.explode_dep_versions2(d.getVar('RDEPENDS_' + pkg) or "")
+        rdepends = bb.utils.explode_dep_versions2(d.getVar('RDEPENDS:' + pkg) or "")
         for dep in sorted(pkglibdeps[pkg]):
             # Add the dep if it's not already there, or if no comparison is set
             if dep not in rdepends:
@@ -2173,7 +2173,7 @@
             for v in pkglibdeps[pkg][dep]:
                 if v not in rdepends[dep]:
                     rdepends[dep].append(v)
-        d.setVar('RDEPENDS_' + pkg, bb.utils.join_deps(rdepends, commasep=False))
+        d.setVar('RDEPENDS:' + pkg, bb.utils.join_deps(rdepends, commasep=False))
 }
 
 python package_depchains() {
@@ -2197,7 +2197,7 @@
     def pkg_adddeprrecs(pkg, base, suffix, getname, depends, d):
 
         #bb.note('depends for %s is %s' % (base, depends))
-        rreclist = bb.utils.explode_dep_versions2(d.getVar('RRECOMMENDS_' + pkg) or "")
+        rreclist = bb.utils.explode_dep_versions2(d.getVar('RRECOMMENDS:' + pkg) or "")
 
         for depend in sorted(depends):
             if depend.find('-native') != -1 or depend.find('-cross') != -1 or depend.startswith('virtual/'):
@@ -2212,13 +2212,13 @@
             if pkgname not in rreclist and pkgname != pkg:
                 rreclist[pkgname] = []
 
-        #bb.note('setting: RRECOMMENDS_%s=%s' % (pkg, ' '.join(rreclist)))
-        d.setVar('RRECOMMENDS_%s' % pkg, bb.utils.join_deps(rreclist, commasep=False))
+        #bb.note('setting: RRECOMMENDS:%s=%s' % (pkg, ' '.join(rreclist)))
+        d.setVar('RRECOMMENDS:%s' % pkg, bb.utils.join_deps(rreclist, commasep=False))
 
     def pkg_addrrecs(pkg, base, suffix, getname, rdepends, d):
 
         #bb.note('rdepends for %s is %s' % (base, rdepends))
-        rreclist = bb.utils.explode_dep_versions2(d.getVar('RRECOMMENDS_' + pkg) or "")
+        rreclist = bb.utils.explode_dep_versions2(d.getVar('RRECOMMENDS:' + pkg) or "")
 
         for depend in sorted(rdepends):
             if depend.find('virtual-locale-') != -1:
@@ -2233,8 +2233,8 @@
             if pkgname not in rreclist and pkgname != pkg:
                 rreclist[pkgname] = []
 
-        #bb.note('setting: RRECOMMENDS_%s=%s' % (pkg, ' '.join(rreclist)))
-        d.setVar('RRECOMMENDS_%s' % pkg, bb.utils.join_deps(rreclist, commasep=False))
+        #bb.note('setting: RRECOMMENDS:%s=%s' % (pkg, ' '.join(rreclist)))
+        d.setVar('RRECOMMENDS:%s' % pkg, bb.utils.join_deps(rreclist, commasep=False))
 
     def add_dep(list, dep):
         if dep not in list:
@@ -2246,7 +2246,7 @@
 
     rdepends = []
     for pkg in packages.split():
-        for dep in bb.utils.explode_deps(d.getVar('RDEPENDS_' + pkg) or ""):
+        for dep in bb.utils.explode_deps(d.getVar('RDEPENDS:' + pkg) or ""):
             add_dep(rdepends, dep)
 
     #bb.note('rdepends is %s' % rdepends)
@@ -2280,7 +2280,7 @@
 
     for suffix in pkgs:
         for pkg in pkgs[suffix]:
-            if d.getVarFlag('RRECOMMENDS_' + pkg, 'nodeprrecs'):
+            if d.getVarFlag('RRECOMMENDS:' + pkg, 'nodeprrecs'):
                 continue
             (base, func) = pkgs[suffix][pkg]
             if suffix == "-dev":
@@ -2293,7 +2293,7 @@
                 pkg_addrrecs(pkg, base, suffix, func, rdepends, d)
             else:
                 rdeps = []
-                for dep in bb.utils.explode_deps(d.getVar('RDEPENDS_' + base) or ""):
+                for dep in bb.utils.explode_deps(d.getVar('RDEPENDS:' + base) or ""):
                     add_dep(rdeps, dep)
                 pkg_addrrecs(pkg, base, suffix, func, rdeps, d)
 }
@@ -2310,7 +2310,7 @@
         ret.append(v)
     for p in pkgs:
         for v in vars:
-            ret.append(v + "_" + p)
+            ret.append(v + ":" + p)
 
         # Ensure that changes to INCOMPATIBLE_LICENSE re-run do_package for
         # affected recipes.
diff --git a/poky/meta/classes/package_deb.bbclass b/poky/meta/classes/package_deb.bbclass
index b3d8ce3..eca43e1 100644
--- a/poky/meta/classes/package_deb.bbclass
+++ b/poky/meta/classes/package_deb.bbclass
@@ -81,7 +81,7 @@
 
         localdata.setVar('ROOT', '')
         localdata.setVar('ROOT_%s' % pkg, root)
-        pkgname = localdata.getVar('PKG_%s' % pkg)
+        pkgname = localdata.getVar('PKG:%s' % pkg)
         if not pkgname:
             pkgname = pkg
         localdata.setVar('PKG', pkgname)
diff --git a/poky/meta/classes/package_ipk.bbclass b/poky/meta/classes/package_ipk.bbclass
index 600b3ac..c3b5385 100644
--- a/poky/meta/classes/package_ipk.bbclass
+++ b/poky/meta/classes/package_ipk.bbclass
@@ -65,7 +65,7 @@
     try:
         localdata.setVar('ROOT', '')
         localdata.setVar('ROOT_%s' % pkg, root)
-        pkgname = localdata.getVar('PKG_%s' % pkg)
+        pkgname = localdata.getVar('PKG:%s' % pkg)
         if not pkgname:
             pkgname = pkg
         localdata.setVar('PKG', pkgname)
diff --git a/poky/meta/classes/package_rpm.bbclass b/poky/meta/classes/package_rpm.bbclass
index 86706da..aebeaf6 100644
--- a/poky/meta/classes/package_rpm.bbclass
+++ b/poky/meta/classes/package_rpm.bbclass
@@ -332,7 +332,7 @@
 
         localdata.setVar('ROOT', '')
         localdata.setVar('ROOT_%s' % pkg, root)
-        pkgname = localdata.getVar('PKG_%s' % pkg)
+        pkgname = localdata.getVar('PKG:%s' % pkg)
         if not pkgname:
             pkgname = pkg
         localdata.setVar('PKG', pkgname)
diff --git a/poky/meta/classes/packagedata.bbclass b/poky/meta/classes/packagedata.bbclass
index a903e5c..c2760e2 100644
--- a/poky/meta/classes/packagedata.bbclass
+++ b/poky/meta/classes/packagedata.bbclass
@@ -24,10 +24,10 @@
                 continue
             #
             # If we set unsuffixed variables here there is a chance they could clobber override versions
-            # of that variable, e.g. DESCRIPTION could clobber DESCRIPTION_<pkgname>
+            # of that variable, e.g. DESCRIPTION could clobber DESCRIPTION:<pkgname>
             # We therefore don't clobber for the unsuffixed variable versions
             #
-            if key.endswith("_" + pkg):
+            if key.endswith(":" + pkg):
                 d.setVar(key, sdata[key])
             else:
                 d.setVar(key, sdata[key], parsing=True)
diff --git a/poky/meta/classes/packagegroup.bbclass b/poky/meta/classes/packagegroup.bbclass
index 1541c8f..557b1b6 100644
--- a/poky/meta/classes/packagegroup.bbclass
+++ b/poky/meta/classes/packagegroup.bbclass
@@ -32,7 +32,7 @@
                     for suffix in types]
         d.setVar('PACKAGES', ' '.join(packages))
     for pkg in packages:
-        d.setVar('ALLOW_EMPTY_%s' % pkg, '1')
+        d.setVar('ALLOW_EMPTY:%s' % pkg, '1')
 }
 
 # We don't want to look at shared library dependencies for the
diff --git a/poky/meta/classes/patch.bbclass b/poky/meta/classes/patch.bbclass
index cd491a5..388773a 100644
--- a/poky/meta/classes/patch.bbclass
+++ b/poky/meta/classes/patch.bbclass
@@ -10,7 +10,7 @@
 # http://git.savannah.gnu.org/cgit/patch.git/patch/?id=82b800c9552a088a241457948219d25ce0a407a4
 # This leaks into debug sources in particular. Add the dependency
 # to target recipes to avoid this problem until we can rely on 2.7.4 or later.
-PATCHDEPENDENCY_append_class-target = " patch-replacement-native:do_populate_sysroot"
+PATCHDEPENDENCY:append:class-target = " patch-replacement-native:do_populate_sysroot"
 
 PATCH_GIT_USER_NAME ?= "OpenEmbedded"
 PATCH_GIT_USER_EMAIL ?= "oe.patch@oe"
diff --git a/poky/meta/classes/pixbufcache.bbclass b/poky/meta/classes/pixbufcache.bbclass
index b07f51e..886bf19 100644
--- a/poky/meta/classes/pixbufcache.bbclass
+++ b/poky/meta/classes/pixbufcache.bbclass
@@ -3,7 +3,7 @@
 # packages.
 #
 
-DEPENDS_append_class-target = " qemu-native"
+DEPENDS:append:class-target = " qemu-native"
 inherit qemu
 
 PIXBUF_PACKAGES ??= "${PN}"
@@ -29,30 +29,30 @@
 fi
 }
 
-python populate_packages_append() {
+python populate_packages:append() {
     pixbuf_pkgs = d.getVar('PIXBUF_PACKAGES').split()
 
     for pkg in pixbuf_pkgs:
         bb.note("adding pixbuf postinst and postrm scripts to %s" % pkg)
-        postinst = d.getVar('pkg_postinst_%s' % pkg) or d.getVar('pkg_postinst')
+        postinst = d.getVar('pkg_postinst:%s' % pkg) or d.getVar('pkg_postinst')
         if not postinst:
             postinst = '#!/bin/sh\n'
         postinst += d.getVar('pixbufcache_common')
-        d.setVar('pkg_postinst_%s' % pkg, postinst)
+        d.setVar('pkg_postinst:%s' % pkg, postinst)
 
-        postrm = d.getVar('pkg_postrm_%s' % pkg) or d.getVar('pkg_postrm')
+        postrm = d.getVar('pkg_postrm:%s' % pkg) or d.getVar('pkg_postrm')
         if not postrm:
             postrm = '#!/bin/sh\n'
         postrm += d.getVar('pixbufcache_common')
-        d.setVar('pkg_postrm_%s' % pkg, postrm)
+        d.setVar('pkg_postrm:%s' % pkg, postrm)
 }
 
 gdkpixbuf_complete() {
 GDK_PIXBUF_FATAL_LOADER=1 ${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders --update-cache || exit 1
 }
 
-DEPENDS_append_class-native = " gdk-pixbuf-native"
-SYSROOT_PREPROCESS_FUNCS_append_class-native = " pixbufcache_sstate_postinst"
+DEPENDS:append:class-native = " gdk-pixbuf-native"
+SYSROOT_PREPROCESS_FUNCS:append:class-native = " pixbufcache_sstate_postinst"
 
 pixbufcache_sstate_postinst() {
 	mkdir -p ${SYSROOT_DESTDIR}${bindir}
diff --git a/poky/meta/classes/pkgconfig.bbclass b/poky/meta/classes/pkgconfig.bbclass
index ad1f84f..fa94527 100644
--- a/poky/meta/classes/pkgconfig.bbclass
+++ b/poky/meta/classes/pkgconfig.bbclass
@@ -1,2 +1,2 @@
-DEPENDS_prepend = "pkgconfig-native "
+DEPENDS:prepend = "pkgconfig-native "
 
diff --git a/poky/meta/classes/populate_sdk_base.bbclass b/poky/meta/classes/populate_sdk_base.bbclass
index f8072a9..ccfe223 100644
--- a/poky/meta/classes/populate_sdk_base.bbclass
+++ b/poky/meta/classes/populate_sdk_base.bbclass
@@ -23,7 +23,7 @@
 SDKIMAGE_INSTALL_COMPLEMENTARY = '${@complementary_globs("SDKIMAGE_FEATURES", d)}'
 SDKIMAGE_INSTALL_COMPLEMENTARY[vardeps] += "SDKIMAGE_FEATURES"
 
-PACKAGE_ARCHS_append_task-populate-sdk = " sdk-provides-dummy-target"
+PACKAGE_ARCHS:append:task-populate-sdk = " sdk-provides-dummy-target"
 SDK_PACKAGE_ARCHS += "sdk-provides-dummy-${SDKPKGSUFFIX}"
 
 # List of locales to install, or "all" for all of them, or unset for none.
@@ -37,7 +37,7 @@
 
 SDKDEPLOYDIR = "${WORKDIR}/${SDKMACHINE}-deploy-${PN}-populate-sdk"
 
-B_task-populate-sdk = "${SDK_DIR}"
+B:task-populate-sdk = "${SDK_DIR}"
 
 SDKTARGETSYSROOT = "${SDKPATH}/sysroots/${REAL_MULTIMACH_TARGET_SYS}"
 
@@ -66,7 +66,7 @@
 
 SDK_RDEPENDS = "${TOOLCHAIN_TARGET_TASK} ${TOOLCHAIN_HOST_TASK}"
 SDK_DEPENDS = "virtual/fakeroot-native ${SDK_ARCHIVE_DEPENDS} cross-localedef-native nativesdk-qemuwrapper-cross ${@' '.join(["%s-qemuwrapper-cross" % m for m in d.getVar("MULTILIB_VARIANTS").split()])} qemuwrapper-cross"
-PATH_prepend = "${WORKDIR}/recipe-sysroot/${SDKPATHNATIVE}${bindir}/crossscripts:${@":".join(all_multilib_tune_values(d, 'STAGING_BINDIR_CROSS').split())}:"
+PATH:prepend = "${WORKDIR}/recipe-sysroot/${SDKPATHNATIVE}${bindir}/crossscripts:${@":".join(all_multilib_tune_values(d, 'STAGING_BINDIR_CROSS').split())}:"
 SDK_DEPENDS += "nativesdk-glibc-locale"
 
 # We want the MULTIARCH_TARGET_SYS to point to the TUNE_PKGARCH, not PACKAGE_ARCH as it
@@ -119,9 +119,9 @@
         output.write(format_pkg_list(pkgs, 'ver'))
 }
 
-POPULATE_SDK_POST_TARGET_COMMAND_append = " write_sdk_test_data ; "
-POPULATE_SDK_POST_TARGET_COMMAND_append_task-populate-sdk  = " write_target_sdk_manifest ; "
-POPULATE_SDK_POST_HOST_COMMAND_append_task-populate-sdk = " write_host_sdk_manifest; "
+POPULATE_SDK_POST_TARGET_COMMAND:append = " write_sdk_test_data ; "
+POPULATE_SDK_POST_TARGET_COMMAND:append:task-populate-sdk  = " write_target_sdk_manifest ; "
+POPULATE_SDK_POST_HOST_COMMAND:append:task-populate-sdk = " write_host_sdk_manifest; "
 SDK_PACKAGING_COMMAND = "${@'${SDK_PACKAGING_FUNC};' if '${SDK_PACKAGING_FUNC}' else ''}"
 SDK_POSTPROCESS_COMMAND = " create_sdk_files; check_sdk_sysroots; archive_sdk; ${SDK_PACKAGING_COMMAND} "
 
@@ -172,7 +172,7 @@
     populate_sdk_common(d)
 }
 SSTATETASKS += "do_populate_sdk"
-SSTATE_SKIP_CREATION_task-populate-sdk = '1'
+SSTATE_SKIP_CREATION:task-populate-sdk = '1'
 do_populate_sdk[cleandirs] = "${SDKDEPLOYDIR}"
 do_populate_sdk[sstate-inputdirs] = "${SDKDEPLOYDIR}"
 do_populate_sdk[sstate-outputdirs] = "${SDK_DEPLOY}"
@@ -280,6 +280,7 @@
 	# substitute variables
 	sed -i -e 's#@SDK_ARCH@#${SDK_ARCH}#g' \
 		-e 's#@SDKPATH@#${SDKPATH}#g' \
+		-e 's#@SDKPATHINSTALL@#${SDKPATHINSTALL}#g' \
 		-e 's#@SDKEXTPATH@#${SDKEXTPATH}#g' \
 		-e 's#@OLDEST_KERNEL@#${SDK_OLDEST_KERNEL}#g' \
 		-e 's#@REAL_MULTIMACH_TARGET_SYS@#${REAL_MULTIMACH_TARGET_SYS}#g' \
diff --git a/poky/meta/classes/populate_sdk_ext.bbclass b/poky/meta/classes/populate_sdk_ext.bbclass
index 4aabafa..3567920 100644
--- a/poky/meta/classes/populate_sdk_ext.bbclass
+++ b/poky/meta/classes/populate_sdk_ext.bbclass
@@ -2,19 +2,15 @@
 
 inherit populate_sdk_base
 
-# NOTE: normally you cannot use task overrides for this kind of thing - this
-# only works because of get_sdk_ext_rdepends()
-
-TOOLCHAIN_HOST_TASK_task-populate-sdk-ext = " \
+# Used to override TOOLCHAIN_HOST_TASK in the eSDK case
+TOOLCHAIN_HOST_TASK_ESDK = " \
     meta-environment-extsdk-${MACHINE} \
     "
 
-TOOLCHAIN_TARGET_TASK_task-populate-sdk-ext = ""
-
-SDK_RELOCATE_AFTER_INSTALL_task-populate-sdk-ext = "0"
+SDK_RELOCATE_AFTER_INSTALL:task-populate-sdk-ext = "0"
 
 SDK_EXT = ""
-SDK_EXT_task-populate-sdk-ext = "-ext"
+SDK_EXT:task-populate-sdk-ext = "-ext"
 
 # Options are full or minimal
 SDK_EXT_TYPE ?= "full"
@@ -78,10 +74,10 @@
     .templateconf \
 "
 
-SDK_DIR_task-populate-sdk-ext = "${WORKDIR}/sdk-ext"
-B_task-populate-sdk-ext = "${SDK_DIR}"
+SDK_DIR:task-populate-sdk-ext = "${WORKDIR}/sdk-ext"
+B:task-populate-sdk-ext = "${SDK_DIR}"
 TOOLCHAINEXT_OUTPUTNAME ?= "${SDK_NAME}-toolchain-ext-${SDK_VERSION}"
-TOOLCHAIN_OUTPUTNAME_task-populate-sdk-ext = "${TOOLCHAINEXT_OUTPUTNAME}"
+TOOLCHAIN_OUTPUTNAME:task-populate-sdk-ext = "${TOOLCHAINEXT_OUTPUTNAME}"
 
 SDK_EXT_TARGET_MANIFEST = "${SDK_DEPLOY}/${TOOLCHAINEXT_OUTPUTNAME}.target.manifest"
 SDK_EXT_HOST_MANIFEST = "${SDK_DEPLOY}/${TOOLCHAINEXT_OUTPUTNAME}.host.manifest"
@@ -118,9 +114,9 @@
                 f.write("%s %s %s\n" % (info[1], info[2], info[3]))
 }
 
-SDK_POSTPROCESS_COMMAND_append_task-populate-sdk-ext = "write_target_sdk_ext_manifest; write_host_sdk_ext_manifest; "    
+SDK_POSTPROCESS_COMMAND:append:task-populate-sdk-ext = "write_target_sdk_ext_manifest; write_host_sdk_ext_manifest; "    
 
-SDK_TITLE_task-populate-sdk-ext = "${@d.getVar('DISTRO_NAME') or d.getVar('DISTRO')} Extensible SDK"
+SDK_TITLE:task-populate-sdk-ext = "${@d.getVar('DISTRO_NAME') or d.getVar('DISTRO')} Extensible SDK"
 
 def clean_esdk_builddir(d, sdkbasepath):
     """Clean up traces of the fake build for create_filtered_tasklist()"""
@@ -147,15 +143,15 @@
     try:
         with open(sdkbasepath + '/conf/local.conf', 'a') as f:
             # Force the use of sstate from the build system
-            f.write('\nSSTATE_DIR_forcevariable = "%s"\n' % d.getVar('SSTATE_DIR'))
-            f.write('SSTATE_MIRRORS_forcevariable = "file://universal/(.*) file://universal-4.9/\\1 file://universal-4.9/(.*) file://universal-4.8/\\1"\n')
+            f.write('\nSSTATE_DIR:forcevariable = "%s"\n' % d.getVar('SSTATE_DIR'))
+            f.write('SSTATE_MIRRORS:forcevariable = "file://universal/(.*) file://universal-4.9/\\1 file://universal-4.9/(.*) file://universal-4.8/\\1"\n')
             # Ensure TMPDIR is the default so that clean_esdk_builddir() can delete it
-            f.write('TMPDIR_forcevariable = "${TOPDIR}/tmp"\n')
-            f.write('TCLIBCAPPEND_forcevariable = ""\n')
+            f.write('TMPDIR:forcevariable = "${TOPDIR}/tmp"\n')
+            f.write('TCLIBCAPPEND:forcevariable = ""\n')
             # Drop uninative if the build isn't using it (or else NATIVELSBSTRING will
             # be different and we won't be able to find our native sstate)
             if not bb.data.inherits_class('uninative', d):
-                f.write('INHERIT_remove = "uninative"\n')
+                f.write('INHERIT:remove = "uninative"\n')
 
         # Unfortunately the default SDKPATH (or even a custom value) may contain characters that bitbake
         # will not allow in its COREBASE path, so we need to rename the directory temporarily
@@ -342,7 +338,7 @@
             f.write('CONF_VERSION = "%s"\n\n' % d.getVar('CONF_VERSION', False))
 
             # Some classes are not suitable for SDK, remove them from INHERIT
-            f.write('INHERIT_remove = "%s"\n' % d.getVar('SDK_INHERIT_BLACKLIST', False))
+            f.write('INHERIT:remove = "%s"\n' % d.getVar('SDK_INHERIT_BLACKLIST', False))
 
             # Bypass the default connectivity check if any
             f.write('CONNECTIVITY_CHECK_URIS = ""\n\n')
@@ -358,7 +354,7 @@
             f.write('SIGGEN_LOCKEDSIGS_TASKSIG_CHECK = "warn"\n\n')
 
             # We want to be able to set this without a full reparse
-            f.write('BB_HASHCONFIG_WHITELIST_append = " SIGGEN_UNLOCKED_RECIPES"\n\n')
+            f.write('BB_HASHCONFIG_WHITELIST:append = " SIGGEN_UNLOCKED_RECIPES"\n\n')
 
             # Set up whitelist for run on install
             f.write('BB_SETSCENE_ENFORCE_WHITELIST = "%:* *:do_shared_workdir *:do_rm_work wic-tools:* *:do_addto_recipe_sysroot"\n\n')
@@ -688,7 +684,7 @@
 		EXTRA_TAR_OPTIONS="$EXTRA_TAR_OPTIONS --exclude=sstate-cache"
 	fi
 }
-SDK_PRE_INSTALL_COMMAND_task-populate-sdk-ext = "${sdk_ext_preinst}"
+SDK_PRE_INSTALL_COMMAND:task-populate-sdk-ext = "${sdk_ext_preinst}"
 
 # FIXME this preparation should be done as part of the SDK construction
 sdk_ext_postinst() {
@@ -739,9 +735,9 @@
 	echo done
 }
 
-SDK_POST_INSTALL_COMMAND_task-populate-sdk-ext = "${sdk_ext_postinst}"
+SDK_POST_INSTALL_COMMAND:task-populate-sdk-ext = "${sdk_ext_postinst}"
 
-SDK_POSTPROCESS_COMMAND_prepend_task-populate-sdk-ext = "copy_buildsystem; install_tools; "
+SDK_POSTPROCESS_COMMAND:prepend:task-populate-sdk-ext = "copy_buildsystem; install_tools; "
 
 SDK_INSTALL_TARGETS = ""
 fakeroot python do_populate_sdk_ext() {
@@ -755,6 +751,10 @@
     if d.getVar('BB_CURRENT_MC') != 'default':
         bb.fatal('The extensible SDK can currently only be built for the default multiconfig.  Currently trying to build for %s.' % d.getVar('BB_CURRENT_MC'))
 
+    # eSDK dependencies don't use the traditional variables and things don't work properly if they are set
+    d.setVar("TOOLCHAIN_HOST_TASK", "${TOOLCHAIN_HOST_TASK_ESDK}")
+    d.setVar("TOOLCHAIN_TARGET_TASK", "")
+
     d.setVar('SDK_INSTALL_TARGETS', get_sdk_install_targets(d))
     if d.getVar('SDK_INCLUDE_BUILDTOOLS') == '1':
         buildtools_fn = get_current_buildtools(d)
@@ -800,12 +800,7 @@
 do_sdk_depends[depends] = "${@get_ext_sdk_depends(d)} meta-extsdk-toolchain:do_populate_sysroot"
 do_sdk_depends[recrdeptask] = "${@d.getVarFlag('do_populate_sdk', 'recrdeptask', False)}"
 do_sdk_depends[recrdeptask] += "do_populate_lic do_package_qa do_populate_sysroot do_deploy ${SDK_RECRDEP_TASKS}"
-do_sdk_depends[rdepends] = "${@get_sdk_ext_rdepends(d)}"
-
-def get_sdk_ext_rdepends(d):
-    localdata = d.createCopy()
-    localdata.appendVar('OVERRIDES', ':task-populate-sdk-ext')
-    return localdata.getVarFlag('do_populate_sdk', 'rdepends')
+do_sdk_depends[rdepends] = "${@' '.join([x + ':do_package_write_${IMAGE_PKGTYPE} ' + x + ':do_packagedata' for x in d.getVar('TOOLCHAIN_HOST_TASK_ESDK').split()])}"
 
 do_populate_sdk_ext[dirs] = "${@d.getVarFlag('do_populate_sdk', 'dirs', False)}"
 
@@ -833,7 +828,7 @@
 SDKEXTDEPLOYDIR = "${WORKDIR}/deploy-${PN}-populate-sdk-ext"
 
 SSTATETASKS += "do_populate_sdk_ext"
-SSTATE_SKIP_CREATION_task-populate-sdk-ext = '1'
+SSTATE_SKIP_CREATION:task-populate-sdk-ext = '1'
 do_populate_sdk_ext[cleandirs] = "${SDKEXTDEPLOYDIR}"
 do_populate_sdk_ext[sstate-inputdirs] = "${SDKEXTDEPLOYDIR}"
 do_populate_sdk_ext[sstate-outputdirs] = "${SDK_DEPLOY}"
diff --git a/poky/meta/classes/ptest-gnome.bbclass b/poky/meta/classes/ptest-gnome.bbclass
index 478a334..18bd3db 100644
--- a/poky/meta/classes/ptest-gnome.bbclass
+++ b/poky/meta/classes/ptest-gnome.bbclass
@@ -1,8 +1,8 @@
 inherit ptest
 
-EXTRA_OECONF_append = " ${@bb.utils.contains('PTEST_ENABLED', '1', '--enable-installed-tests', '--disable-installed-tests', d)}"
+EXTRA_OECONF:append = " ${@bb.utils.contains('PTEST_ENABLED', '1', '--enable-installed-tests', '--disable-installed-tests', d)}"
 
-FILES_${PN}-ptest += "${libexecdir}/installed-tests/ \
+FILES:${PN}-ptest += "${libexecdir}/installed-tests/ \
                       ${datadir}/installed-tests/"
 
-RDEPENDS_${PN}-ptest += "gnome-desktop-testing"
+RDEPENDS:${PN}-ptest += "gnome-desktop-testing"
diff --git a/poky/meta/classes/ptest-perl.bbclass b/poky/meta/classes/ptest-perl.bbclass
index a4bc40b..5dd72c9 100644
--- a/poky/meta/classes/ptest-perl.bbclass
+++ b/poky/meta/classes/ptest-perl.bbclass
@@ -1,6 +1,6 @@
 inherit ptest
 
-FILESEXTRAPATHS_prepend := "${COREBASE}/meta/files:"
+FILESEXTRAPATHS:prepend := "${COREBASE}/meta/files:"
 
 SRC_URI += "file://ptest-perl/run-ptest"
 
@@ -13,9 +13,9 @@
 	chown -R root:root ${D}${PTEST_PATH}
 }
 
-FILES_${PN}-ptest_prepend = "${PTEST_PATH}/t/* ${PTEST_PATH}/run-ptest "
+FILES:${PN}-ptest:prepend = "${PTEST_PATH}/t/* ${PTEST_PATH}/run-ptest "
 
-RDEPENDS_${PN}-ptest_prepend = "perl "
+RDEPENDS:${PN}-ptest:prepend = "perl "
 
 addtask install_ptest_perl after do_install_ptest_base before do_package
 
diff --git a/poky/meta/classes/ptest.bbclass b/poky/meta/classes/ptest.bbclass
index 4669162..200446e 100644
--- a/poky/meta/classes/ptest.bbclass
+++ b/poky/meta/classes/ptest.bbclass
@@ -1,22 +1,22 @@
-SUMMARY_${PN}-ptest ?= "${SUMMARY} - Package test files"
-DESCRIPTION_${PN}-ptest ?= "${DESCRIPTION}  \
+SUMMARY:${PN}-ptest ?= "${SUMMARY} - Package test files"
+DESCRIPTION:${PN}-ptest ?= "${DESCRIPTION}  \
 This package contains a test directory ${PTEST_PATH} for package test purposes."
 
 PTEST_PATH ?= "${libdir}/${BPN}/ptest"
 PTEST_BUILD_HOST_FILES ?= "Makefile"
 PTEST_BUILD_HOST_PATTERN ?= ""
 
-FILES_${PN}-ptest += "${PTEST_PATH}"
-SECTION_${PN}-ptest = "devel"
-ALLOW_EMPTY_${PN}-ptest = "1"
+FILES:${PN}-ptest += "${PTEST_PATH}"
+SECTION:${PN}-ptest = "devel"
+ALLOW_EMPTY:${PN}-ptest = "1"
 PTEST_ENABLED = "${@bb.utils.contains('DISTRO_FEATURES', 'ptest', '1', '0', d)}"
-PTEST_ENABLED_class-native = ""
-PTEST_ENABLED_class-nativesdk = ""
-PTEST_ENABLED_class-cross-canadian = ""
-RDEPENDS_${PN}-ptest += "${PN}"
-RDEPENDS_${PN}-ptest_class-native = ""
-RDEPENDS_${PN}-ptest_class-nativesdk = ""
-RRECOMMENDS_${PN}-ptest += "ptest-runner"
+PTEST_ENABLED:class-native = ""
+PTEST_ENABLED:class-nativesdk = ""
+PTEST_ENABLED:class-cross-canadian = ""
+RDEPENDS:${PN}-ptest += "${PN}"
+RDEPENDS:${PN}-ptest:class-native = ""
+RDEPENDS:${PN}-ptest:class-nativesdk = ""
+RRECOMMENDS:${PN}-ptest += "ptest-runner"
 
 PACKAGES =+ "${@bb.utils.contains('PTEST_ENABLED', '1', '${PN}-ptest', '', d)}"
 
@@ -73,7 +73,7 @@
 # This function needs to run after apply_update_alternative_renames because the
 # aforementioned function will update the ALTERNATIVE_LINK_NAME flag. Append is
 # used here to make this function to run as late as possible.
-PACKAGE_PREPROCESS_FUNCS_append = "${@bb.utils.contains('PTEST_BINDIR', '1', \
+PACKAGE_PREPROCESS_FUNCS:append = "${@bb.utils.contains('PTEST_BINDIR', '1', \
                                     bb.utils.contains('PTEST_ENABLED', '1', ' ptest_update_alternatives', '', d), '', d)}"
 
 python ptest_update_alternatives() {
diff --git a/poky/meta/classes/pypi.bbclass b/poky/meta/classes/pypi.bbclass
index 384a209..272c220 100644
--- a/poky/meta/classes/pypi.bbclass
+++ b/poky/meta/classes/pypi.bbclass
@@ -19,7 +19,7 @@
 
 HOMEPAGE ?= "https://pypi.python.org/pypi/${PYPI_PACKAGE}/"
 SECTION = "devel/python"
-SRC_URI_prepend = "${PYPI_SRC_URI} "
+SRC_URI:prepend = "${PYPI_SRC_URI} "
 S = "${WORKDIR}/${PYPI_PACKAGE}-${PV}"
 
 UPSTREAM_CHECK_URI ?= "https://pypi.org/project/${PYPI_PACKAGE}/"
diff --git a/poky/meta/classes/python3native.bbclass b/poky/meta/classes/python3native.bbclass
index 2e3a88c..13fbaa5 100644
--- a/poky/meta/classes/python3native.bbclass
+++ b/poky/meta/classes/python3native.bbclass
@@ -2,7 +2,7 @@
 
 PYTHON="${STAGING_BINDIR_NATIVE}/python3-native/python3"
 EXTRANATIVEPATH += "python3-native"
-DEPENDS_append = " python3-native "
+DEPENDS:append = " python3-native "
 
 # python-config and other scripts are using distutils modules
 # which we patch to access these variables
diff --git a/poky/meta/classes/python3targetconfig.bbclass b/poky/meta/classes/python3targetconfig.bbclass
index fc1025c..5c8457a 100644
--- a/poky/meta/classes/python3targetconfig.bbclass
+++ b/poky/meta/classes/python3targetconfig.bbclass
@@ -1,17 +1,17 @@
 inherit python3native
 
 EXTRA_PYTHON_DEPENDS ?= ""
-EXTRA_PYTHON_DEPENDS_class-target = "python3"
-DEPENDS_append = " ${EXTRA_PYTHON_DEPENDS}"
+EXTRA_PYTHON_DEPENDS:class-target = "python3"
+DEPENDS:append = " ${EXTRA_PYTHON_DEPENDS}"
 
-do_configure_prepend_class-target() {
+do_configure:prepend:class-target() {
         export _PYTHON_SYSCONFIGDATA_NAME="_sysconfigdata"
 }
 
-do_compile_prepend_class-target() {
+do_compile:prepend:class-target() {
         export _PYTHON_SYSCONFIGDATA_NAME="_sysconfigdata"
 }
 
-do_install_prepend_class-target() {
+do_install:prepend:class-target() {
         export _PYTHON_SYSCONFIGDATA_NAME="_sysconfigdata"
 }
diff --git a/poky/meta/classes/qemu.bbclass b/poky/meta/classes/qemu.bbclass
index 55bdff8..01a7b86 100644
--- a/poky/meta/classes/qemu.bbclass
+++ b/poky/meta/classes/qemu.bbclass
@@ -64,4 +64,4 @@
 QEMU_EXTRAOPTIONS_ppce6500 = " -cpu e500mc"
 QEMU_EXTRAOPTIONS_ppc64e6500 = " -cpu e500mc"
 QEMU_EXTRAOPTIONS_ppc7400 = " -cpu 7400"
-QEMU_EXTRAOPTIONS_powerpc64le = " -cpu POWER8"
+QEMU_EXTRAOPTIONS:powerpc64le = " -cpu POWER8"
diff --git a/poky/meta/classes/qemuboot.bbclass b/poky/meta/classes/qemuboot.bbclass
index 2b50dda..bf529e9 100644
--- a/poky/meta/classes/qemuboot.bbclass
+++ b/poky/meta/classes/qemuboot.bbclass
@@ -43,7 +43,7 @@
 #                    a custom one, but that may cause conflicts when multiple qemus are
 #                    running on the same host.
 #                    Note: If more than one interface of type -device virtio-net-device gets added,
-#                          QB_NETWORK_DEVICE_prepend might be used, since Qemu enumerates the eth*
+#                          QB_NETWORK_DEVICE:prepend might be used, since Qemu enumerates the eth*
 #                          devices in reverse order to -device arguments.
 #
 # QB_TAP_OPT: network option for 'tap' mode, e.g.,
@@ -122,6 +122,8 @@
     cf = configparser.ConfigParser()
     cf.add_section('config_bsp')
     for k in sorted(qemuboot_vars(d)):
+        if ":" in k:
+            continue
         # qemu-helper-native sysroot is not removed by rm_work and
         # contains all tools required by runqemu
         if k == 'STAGING_BINDIR_NATIVE':
diff --git a/poky/meta/classes/reproducible_build.bbclass b/poky/meta/classes/reproducible_build.bbclass
index 278eeed..3781219 100644
--- a/poky/meta/classes/reproducible_build.bbclass
+++ b/poky/meta/classes/reproducible_build.bbclass
@@ -42,7 +42,7 @@
 SDE_DEPLOYDIR = "${WORKDIR}/deploy-source-date-epoch"
 
 # Enable compiler warning when the __TIME__, __DATE__ and __TIMESTAMP__ macros are used.
-TARGET_CC_ARCH_append_class-target = " -Wdate-time"
+TARGET_CC_ARCH:append:class-target = " -Wdate-time"
 
 # A SOURCE_DATE_EPOCH of '0' might be misinterpreted as no SDE
 export SOURCE_DATE_EPOCH_FALLBACK ??= "1302044400"
diff --git a/poky/meta/classes/rm_work.bbclass b/poky/meta/classes/rm_work.bbclass
index 01c2ab1..07901d7 100644
--- a/poky/meta/classes/rm_work.bbclass
+++ b/poky/meta/classes/rm_work.bbclass
@@ -13,7 +13,7 @@
 # Recipes can also configure which entries in their ${WORKDIR}
 # are preserved besides temp, which already gets excluded by default
 # because it contains logs:
-# do_install_append () {
+# do_install:append () {
 #     echo "bar" >${WORKDIR}/foo
 # }
 # RM_WORK_EXCLUDE_ITEMS += "foo"
@@ -24,7 +24,7 @@
 BB_SCHEDULER ?= "completion"
 
 # Run the rm_work task in the idle scheduling class
-BB_TASK_IONICE_LEVEL_task-rm_work = "3.0"
+BB_TASK_IONICE_LEVEL:task-rm_work = "3.0"
 
 do_rm_work () {
     # If the recipe name is in the RM_WORK_EXCLUDE, skip the recipe.
diff --git a/poky/meta/classes/rm_work_and_downloads.bbclass b/poky/meta/classes/rm_work_and_downloads.bbclass
index 7c00bea..15e6091 100644
--- a/poky/meta/classes/rm_work_and_downloads.bbclass
+++ b/poky/meta/classes/rm_work_and_downloads.bbclass
@@ -28,6 +28,6 @@
 
 # Instead go up one level and remove ourself.
 DL_DIR = "${BASE_WORKDIR}/${MULTIMACH_TARGET_SYS}/${PN}/downloads"
-do_rm_work_append () {
+do_rm_work:append () {
     rm -rf ${DL_DIR}
 }
diff --git a/poky/meta/classes/rootfs-postcommands.bbclass b/poky/meta/classes/rootfs-postcommands.bbclass
index e66ed59..fbfa63f 100644
--- a/poky/meta/classes/rootfs-postcommands.bbclass
+++ b/poky/meta/classes/rootfs-postcommands.bbclass
@@ -23,7 +23,7 @@
 #
 # We do this with _append because the default value might get set later with ?=
 # and we don't want to disable such a default that by setting a value here.
-APPEND_append = '${@bb.utils.contains("IMAGE_FEATURES", "read-only-rootfs", " ro", "", d)}'
+APPEND:append = '${@bb.utils.contains("IMAGE_FEATURES", "read-only-rootfs", " ro", "", d)}'
 
 # Generates test data file with data store variables expanded in json format
 ROOTFS_POSTPROCESS_COMMAND += "write_image_test_data; "
diff --git a/poky/meta/classes/rootfs_rpm.bbclass b/poky/meta/classes/rootfs_rpm.bbclass
index 0af7d65..3d8d784 100644
--- a/poky/meta/classes/rootfs_rpm.bbclass
+++ b/poky/meta/classes/rootfs_rpm.bbclass
@@ -9,7 +9,7 @@
 export STAGING_LIBDIR
 
 # Add 100Meg of extra space for dnf
-IMAGE_ROOTFS_EXTRA_SPACE_append = "${@bb.utils.contains("PACKAGE_INSTALL", "dnf", " + 102400", "", d)}"
+IMAGE_ROOTFS_EXTRA_SPACE:append = "${@bb.utils.contains("PACKAGE_INSTALL", "dnf", " + 102400", "", d)}"
 
 # Dnf is python based, so be sure python3-native is available to us.
 EXTRANATIVEPATH += "python3-native"
diff --git a/poky/meta/classes/sanity.bbclass b/poky/meta/classes/sanity.bbclass
index e907a35..ddba1e6 100644
--- a/poky/meta/classes/sanity.bbclass
+++ b/poky/meta/classes/sanity.bbclass
@@ -199,7 +199,7 @@
 
 def check_toolchain_args_present(data, tune, multilib, tune_errors, which):
     args_set = (data.getVar("TUNE_%s" % which) or "").split()
-    args_wanted = (data.getVar("TUNEABI_REQUIRED_%s_tune-%s" % (which, tune)) or "").split()
+    args_wanted = (data.getVar("TUNEABI_REQUIRED_%s:tune-%s" % (which, tune)) or "").split()
     args_missing = []
 
     # If no args are listed/required, we are done.
@@ -227,7 +227,7 @@
         overrides = localdata.getVar("OVERRIDES", False) + ":virtclass-multilib-" + multilib
         localdata.setVar("OVERRIDES", overrides)
     bb.debug(2, "Sanity-checking tuning '%s' (%s) features:" % (tune, multilib))
-    features = (localdata.getVar("TUNE_FEATURES_tune-%s" % tune) or "").split()
+    features = (localdata.getVar("TUNE_FEATURES:tune-%s" % tune) or "").split()
     if not features:
         return "Tuning '%s' has no defined features, and cannot be used." % tune
     valid_tunes = localdata.getVarFlags('TUNEVALID') or {}
@@ -249,7 +249,7 @@
             tune_errors.append("Feature '%s' is not defined." % feature)
     whitelist = localdata.getVar("TUNEABI_WHITELIST")
     if whitelist:
-        tuneabi = localdata.getVar("TUNEABI_tune-%s" % tune)
+        tuneabi = localdata.getVar("TUNEABI:tune-%s" % tune)
         if not tuneabi:
             tuneabi = tune
         if True not in [x in whitelist.split() for x in tuneabi.split()]:
@@ -281,7 +281,7 @@
                 seen_libs.append(lib)
             if not lib in global_multilibs:
                 tune_error_set.append("Multilib %s is not present in MULTILIB_GLOBAL_VARIANTS" % lib)
-            tune = data.getVar("DEFAULTTUNE_virtclass-multilib-%s" % lib)
+            tune = data.getVar("DEFAULTTUNE:virtclass-multilib-%s" % lib)
             if tune in seen_tunes:
                 tune_error_set.append("The tuning '%s' appears in more than one multilib." % tune)
             else:
diff --git a/poky/meta/classes/sign_package_feed.bbclass b/poky/meta/classes/sign_package_feed.bbclass
index 7ff3a35..16bcd14 100644
--- a/poky/meta/classes/sign_package_feed.bbclass
+++ b/poky/meta/classes/sign_package_feed.bbclass
@@ -29,7 +29,7 @@
 PACKAGE_FEED_GPG_SIGNATURE_TYPE ?= 'ASC'
 
 # Make feed signing key to be present in rootfs
-FEATURE_PACKAGES_package-management_append = " signing-keys-packagefeed"
+FEATURE_PACKAGES_package-management:append = " signing-keys-packagefeed"
 
 python () {
     # Check sanity of configuration
diff --git a/poky/meta/classes/sstate.bbclass b/poky/meta/classes/sstate.bbclass
index f6710fc..554e401 100644
--- a/poky/meta/classes/sstate.bbclass
+++ b/poky/meta/classes/sstate.bbclass
@@ -1018,6 +1018,7 @@
         bb.parse.siggen.checkhashes(sq_data, missed, found, d)
 
     return found
+setscene_depvalid[vardepsexclude] = "SSTATE_EXCLUDEDEPS_SYSROOT"
 
 BB_SETSCENE_DEPVALID = "setscene_depvalid"
 
diff --git a/poky/meta/classes/staging.bbclass b/poky/meta/classes/staging.bbclass
index 32a615c..af3397b 100644
--- a/poky/meta/classes/staging.bbclass
+++ b/poky/meta/classes/staging.bbclass
@@ -19,9 +19,9 @@
     ${sysconfdir} \
     ${localstatedir} \
 "
-SYSROOT_DIRS_append_class-native = " ${SYSROOT_DIRS_NATIVE}"
-SYSROOT_DIRS_append_class-cross = " ${SYSROOT_DIRS_NATIVE}"
-SYSROOT_DIRS_append_class-crosssdk = " ${SYSROOT_DIRS_NATIVE}"
+SYSROOT_DIRS:append:class-native = " ${SYSROOT_DIRS_NATIVE}"
+SYSROOT_DIRS:append:class-cross = " ${SYSROOT_DIRS_NATIVE}"
+SYSROOT_DIRS:append:class-crosssdk = " ${SYSROOT_DIRS_NATIVE}"
 
 # These directories will not be staged in the sysroot
 SYSROOT_DIRS_BLACKLIST = " \
@@ -82,7 +82,7 @@
     pn = d.getVar('PN')
     libdir = d.getVar("libdir")
     base_libdir = d.getVar("base_libdir")
-    qa_already_stripped = 'already-stripped' in (d.getVar('INSANE_SKIP_' + pn) or "").split()
+    qa_already_stripped = 'already-stripped' in (d.getVar('INSANE_SKIP:' + pn) or "").split()
     strip_cmd = d.getVar("STRIP")
 
     oe.package.strip_execs(pn, dstdir, strip_cmd, libdir, base_libdir, d,
@@ -118,8 +118,8 @@
 do_populate_sysroot[vardepsexclude] += "MULTI_PROVIDER_WHITELIST"
 
 POPULATESYSROOTDEPS = ""
-POPULATESYSROOTDEPS_class-target = "virtual/${MLPREFIX}${TARGET_PREFIX}binutils:do_populate_sysroot"
-POPULATESYSROOTDEPS_class-nativesdk = "virtual/${TARGET_PREFIX}binutils-crosssdk:do_populate_sysroot"
+POPULATESYSROOTDEPS:class-target = "virtual/${MLPREFIX}${TARGET_PREFIX}binutils:do_populate_sysroot"
+POPULATESYSROOTDEPS:class-nativesdk = "virtual/${TARGET_PREFIX}binutils-crosssdk:do_populate_sysroot"
 do_populate_sysroot[depends] += "${POPULATESYSROOTDEPS}"
 
 SSTATETASKS += "do_populate_sysroot"
diff --git a/poky/meta/classes/systemd-boot.bbclass b/poky/meta/classes/systemd-boot.bbclass
index 336c4c2..57ec0ac 100644
--- a/poky/meta/classes/systemd-boot.bbclass
+++ b/poky/meta/classes/systemd-boot.bbclass
@@ -28,7 +28,7 @@
         done
 }
 
-efi_iso_populate_append() {
+efi_iso_populate:append() {
         cp -r $iso_dir/loader ${EFIIMGDIR}
 }
 
diff --git a/poky/meta/classes/systemd.bbclass b/poky/meta/classes/systemd.bbclass
index db5d109..09ec527 100644
--- a/poky/meta/classes/systemd.bbclass
+++ b/poky/meta/classes/systemd.bbclass
@@ -1,9 +1,9 @@
 # The list of packages that should have systemd packaging scripts added.  For
-# each entry, optionally have a SYSTEMD_SERVICE_[package] that lists the service
+# each entry, optionally have a SYSTEMD_SERVICE:[package] that lists the service
 # files in this package.  If this variable isn't set, [package].service is used.
 SYSTEMD_PACKAGES ?= "${PN}"
-SYSTEMD_PACKAGES_class-native ?= ""
-SYSTEMD_PACKAGES_class-nativesdk ?= ""
+SYSTEMD_PACKAGES:class-native ?= ""
+SYSTEMD_PACKAGES:class-nativesdk ?= ""
 
 # Whether to enable or disable the services on installation.
 SYSTEMD_AUTO_ENABLE ??= "enable"
@@ -70,7 +70,7 @@
         return
 
     def get_package_var(d, var, pkg):
-        val = (d.getVar('%s_%s' % (var, pkg)) or "").strip()
+        val = (d.getVar('%s:%s' % (var, pkg)) or "").strip()
         if val == "":
             val = (d.getVar(var) or "").strip()
         return val
@@ -85,39 +85,39 @@
     def systemd_generate_package_scripts(pkg):
         bb.debug(1, 'adding systemd calls to postinst/postrm for %s' % pkg)
 
-        paths_escaped = ' '.join(shlex.quote(s) for s in d.getVar('SYSTEMD_SERVICE_' + pkg).split())
-        d.setVar('SYSTEMD_SERVICE_ESCAPED_' + pkg, paths_escaped)
+        paths_escaped = ' '.join(shlex.quote(s) for s in d.getVar('SYSTEMD_SERVICE:' + pkg).split())
+        d.setVar('SYSTEMD_SERVICE_ESCAPED:' + pkg, paths_escaped)
 
-        # Add pkg to the overrides so that it finds the SYSTEMD_SERVICE_pkg
+        # Add pkg to the overrides so that it finds the SYSTEMD_SERVICE:pkg
         # variable.
         localdata = d.createCopy()
         localdata.prependVar("OVERRIDES", pkg + ":")
 
-        postinst = d.getVar('pkg_postinst_%s' % pkg)
+        postinst = d.getVar('pkg_postinst:%s' % pkg)
         if not postinst:
             postinst = '#!/bin/sh\n'
         postinst += localdata.getVar('systemd_postinst')
-        d.setVar('pkg_postinst_%s' % pkg, postinst)
+        d.setVar('pkg_postinst:%s' % pkg, postinst)
 
-        prerm = d.getVar('pkg_prerm_%s' % pkg)
+        prerm = d.getVar('pkg_prerm:%s' % pkg)
         if not prerm:
             prerm = '#!/bin/sh\n'
         prerm += localdata.getVar('systemd_prerm')
-        d.setVar('pkg_prerm_%s' % pkg, prerm)
+        d.setVar('pkg_prerm:%s' % pkg, prerm)
 
 
-    # Add files to FILES_*-systemd if existent and not already done
+    # Add files to FILES:*-systemd if existent and not already done
     def systemd_append_file(pkg_systemd, file_append):
         appended = False
         if os.path.exists(oe.path.join(d.getVar("D"), file_append)):
-            var_name = "FILES_" + pkg_systemd
+            var_name = "FILES:" + pkg_systemd
             files = d.getVar(var_name, False) or ""
             if file_append not in files.split():
                 d.appendVar(var_name, " " + file_append)
                 appended = True
         return appended
 
-    # Add systemd files to FILES_*-systemd, parse for Also= and follow recursive
+    # Add systemd files to FILES:*-systemd, parse for Also= and follow recursive
     def systemd_add_files_and_parse(pkg_systemd, path, service, keys):
         # avoid infinite recursion
         if systemd_append_file(pkg_systemd, oe.path.join(path, service)):
@@ -174,32 +174,32 @@
                 if path_found != '':
                     systemd_add_files_and_parse(pkg_systemd, path_found, service, keys)
                 else:
-                    bb.fatal("Didn't find service unit '{0}', specified in SYSTEMD_SERVICE_{1}. {2}".format(
+                    bb.fatal("Didn't find service unit '{0}', specified in SYSTEMD_SERVICE:{1}. {2}".format(
                         service, pkg_systemd, "Also looked for service unit '{0}'.".format(base) if base is not None else ""))
 
     def systemd_create_presets(pkg, action):
         presetf = oe.path.join(d.getVar("PKGD"), d.getVar("systemd_unitdir"), "system-preset/98-%s.preset" % pkg)
         bb.utils.mkdirhier(os.path.dirname(presetf))
         with open(presetf, 'a') as fd:
-            for service in d.getVar('SYSTEMD_SERVICE_%s' % pkg).split():
+            for service in d.getVar('SYSTEMD_SERVICE:%s' % pkg).split():
                 fd.write("%s %s\n" % (action,service))
-        d.appendVar("FILES_%s" % pkg, ' ' + oe.path.join(d.getVar("systemd_unitdir"), "system-preset/98-%s.preset" % pkg))
+        d.appendVar("FILES:%s" % pkg, ' ' + oe.path.join(d.getVar("systemd_unitdir"), "system-preset/98-%s.preset" % pkg))
 
     # Run all modifications once when creating package
     if os.path.exists(d.getVar("D")):
         for pkg in d.getVar('SYSTEMD_PACKAGES').split():
             systemd_check_package(pkg)
-            if d.getVar('SYSTEMD_SERVICE_' + pkg):
+            if d.getVar('SYSTEMD_SERVICE:' + pkg):
                 systemd_generate_package_scripts(pkg)
                 action = get_package_var(d, 'SYSTEMD_AUTO_ENABLE', pkg)
                 if action in ("enable", "disable"):
                     systemd_create_presets(pkg, action)
                 elif action not in ("mask", "preset"):
-                    bb.fatal("SYSTEMD_AUTO_ENABLE_%s '%s' is not 'enable', 'disable', 'mask' or 'preset'" % (pkg, action))
+                    bb.fatal("SYSTEMD_AUTO_ENABLE:%s '%s' is not 'enable', 'disable', 'mask' or 'preset'" % (pkg, action))
         systemd_check_services()
 }
 
-PACKAGESPLITFUNCS_prepend = "systemd_populate_packages "
+PACKAGESPLITFUNCS:prepend = "systemd_populate_packages "
 
 python rm_systemd_unitdir (){
     import shutil
@@ -227,7 +227,7 @@
 }
 
 do_install[postfuncs] += "${RMINITDIR} "
-RMINITDIR_class-target = " rm_sysvinit_initddir rm_systemd_unitdir "
-RMINITDIR_class-nativesdk = " rm_sysvinit_initddir rm_systemd_unitdir "
+RMINITDIR:class-target = " rm_sysvinit_initddir rm_systemd_unitdir "
+RMINITDIR:class-nativesdk = " rm_sysvinit_initddir rm_systemd_unitdir "
 RMINITDIR = ""
 
diff --git a/poky/meta/classes/testimage.bbclass b/poky/meta/classes/testimage.bbclass
index ed3a885..3c689ae 100644
--- a/poky/meta/classes/testimage.bbclass
+++ b/poky/meta/classes/testimage.bbclass
@@ -65,15 +65,15 @@
 DEFAULT_TEST_SUITES = "${BASICTESTSUITE}"
 
 # aarch64 has no graphics
-DEFAULT_TEST_SUITES_remove_aarch64 = "xorg"
+DEFAULT_TEST_SUITES:remove:aarch64 = "xorg"
 # musl doesn't support systemtap
-DEFAULT_TEST_SUITES_remove_libc-musl = "stap"
+DEFAULT_TEST_SUITES:remove:libc-musl = "stap"
 
 # qemumips is quite slow and has reached the timeout limit several times on the YP build cluster,
 # mitigate this by removing build tests for qemumips machines.
 MIPSREMOVE ??= "buildcpio buildlzip buildgalculator"
-DEFAULT_TEST_SUITES_remove_qemumips = "${MIPSREMOVE}"
-DEFAULT_TEST_SUITES_remove_qemumips64 = "${MIPSREMOVE}"
+DEFAULT_TEST_SUITES:remove:qemumips = "${MIPSREMOVE}"
+DEFAULT_TEST_SUITES:remove:qemumips64 = "${MIPSREMOVE}"
 
 TEST_SUITES ?= "${DEFAULT_TEST_SUITES}"
 
@@ -86,7 +86,7 @@
 TESTIMAGE_BOOT_PATTERNS ?= ""
 
 TESTIMAGEDEPENDS = ""
-TESTIMAGEDEPENDS_append_qemuall = " qemu-native:do_populate_sysroot qemu-helper-native:do_populate_sysroot qemu-helper-native:do_addto_recipe_sysroot"
+TESTIMAGEDEPENDS:append:qemuall = " qemu-native:do_populate_sysroot qemu-helper-native:do_populate_sysroot qemu-helper-native:do_addto_recipe_sysroot"
 TESTIMAGEDEPENDS += "${@bb.utils.contains('IMAGE_PKGTYPE', 'rpm', 'cpio-native:do_populate_sysroot', '', d)}"
 TESTIMAGEDEPENDS += "${@bb.utils.contains('IMAGE_PKGTYPE', 'rpm', 'dnf-native:do_populate_sysroot', '', d)}"
 TESTIMAGEDEPENDS += "${@bb.utils.contains('IMAGE_PKGTYPE', 'rpm', 'createrepo-c-native:do_populate_sysroot', '', d)}"
@@ -94,7 +94,7 @@
 TESTIMAGEDEPENDS += "${@bb.utils.contains('IMAGE_PKGTYPE', 'deb', 'apt-native:do_populate_sysroot  package-index:do_package_index', '', d)}"
 
 TESTIMAGELOCK = "${TMPDIR}/testimage.lock"
-TESTIMAGELOCK_qemuall = ""
+TESTIMAGELOCK:qemuall = ""
 
 TESTIMAGE_DUMP_DIR ?= "${LOG_DIR}/runtime-hostdump/"
 
diff --git a/poky/meta/classes/texinfo.bbclass b/poky/meta/classes/texinfo.bbclass
index f46baca..68c9d4f 100644
--- a/poky/meta/classes/texinfo.bbclass
+++ b/poky/meta/classes/texinfo.bbclass
@@ -7,12 +7,12 @@
 # makeinfo from SANITY_REQUIRED_UTILITIES.
 
 TEXDEP = "${@bb.utils.contains('DISTRO_FEATURES', 'api-documentation', 'texinfo-replacement-native', 'texinfo-dummy-native', d)}"
-TEXDEP_class-native = "texinfo-dummy-native"
-TEXDEP_class-cross = "texinfo-dummy-native"
-TEXDEP_class-crosssdk = "texinfo-dummy-native"
-TEXDEP_class-cross-canadian = "texinfo-dummy-native"
-DEPENDS_append = " ${TEXDEP}"
+TEXDEP:class-native = "texinfo-dummy-native"
+TEXDEP:class-cross = "texinfo-dummy-native"
+TEXDEP:class-crosssdk = "texinfo-dummy-native"
+TEXDEP:class-cross-canadian = "texinfo-dummy-native"
+DEPENDS:append = " ${TEXDEP}"
 
 # libtool-cross doesn't inherit cross
-TEXDEP_pn-libtool-cross = "texinfo-dummy-native"
+TEXDEP:pn-libtool-cross = "texinfo-dummy-native"
 
diff --git a/poky/meta/classes/toolchain-scripts.bbclass b/poky/meta/classes/toolchain-scripts.bbclass
index 67a812c..479f3b7 100644
--- a/poky/meta/classes/toolchain-scripts.bbclass
+++ b/poky/meta/classes/toolchain-scripts.bbclass
@@ -3,7 +3,7 @@
 # We want to be able to change the value of MULTIMACH_TARGET_SYS, because it
 # doesn't always match our expectations... but we default to the stock value
 REAL_MULTIMACH_TARGET_SYS ?= "${MULTIMACH_TARGET_SYS}"
-TARGET_CC_ARCH_append_libc-musl = " -mmusl"
+TARGET_CC_ARCH:append:libc-musl = " -mmusl"
 
 # default debug prefix map isn't valid in the SDK
 DEBUG_PREFIX_MAP = ""
diff --git a/poky/meta/classes/uboot-extlinux-config.bbclass b/poky/meta/classes/uboot-extlinux-config.bbclass
index be285da..dcebe7f 100644
--- a/poky/meta/classes/uboot-extlinux-config.bbclass
+++ b/poky/meta/classes/uboot-extlinux-config.bbclass
@@ -64,7 +64,7 @@
 UBOOT_EXTLINUX_FDTDIR ??= "../"
 UBOOT_EXTLINUX_KERNEL_IMAGE ??= "../${KERNEL_IMAGETYPE}"
 UBOOT_EXTLINUX_KERNEL_ARGS ??= "rootwait rw"
-UBOOT_EXTLINUX_MENU_DESCRIPTION_linux ??= "${DISTRO_NAME}"
+UBOOT_EXTLINUX_MENU_DESCRIPTION:linux ??= "${DISTRO_NAME}"
 
 UBOOT_EXTLINUX_CONFIG = "${B}/extlinux.conf"
 
diff --git a/poky/meta/classes/uboot-sign.bbclass b/poky/meta/classes/uboot-sign.bbclass
index 9671cf7..fdf1532 100644
--- a/poky/meta/classes/uboot-sign.bbclass
+++ b/poky/meta/classes/uboot-sign.bbclass
@@ -19,7 +19,7 @@
 # The tasks sequence is set as below, using DEPLOY_IMAGE_DIR as common place to
 # treat the device tree blob:
 #
-# * u-boot:do_install_append
+# * u-boot:do_install:append
 #   Install UBOOT_DTB_BINARY to datadir, so that kernel can use it for
 #   signing, and kernel will deploy UBOOT_DTB_BINARY after signs it.
 #
@@ -227,7 +227,7 @@
 	touch ${D}/${datadir}/${UBOOT_ITS_IMAGE}
 }
 
-do_install_append() {
+do_install:append() {
 	if [ "${PN}" = "${UBOOT_PN}" ]; then
 		if [ -n "${UBOOT_CONFIG}" ]; then
 			for config in ${UBOOT_MACHINE}; do
@@ -416,7 +416,7 @@
 
 addtask uboot_assemble_fitimage before do_deploy after do_compile
 
-do_deploy_prepend_pn-${UBOOT_PN}() {
+do_deploy:prepend:pn-${UBOOT_PN}() {
 	if [ "${UBOOT_SIGN_ENABLE}" = "1" -a -n "${UBOOT_DTB_BINARY}" ] ; then
 		concat_dtb
 	fi
@@ -446,7 +446,7 @@
 
 }
 
-do_deploy_append_pn-${UBOOT_PN}() {
+do_deploy:append:pn-${UBOOT_PN}() {
 	# If we're creating a u-boot fitImage, point u-boot.bin
 	# symlink since it might get used by image recipes
 	if [ "${UBOOT_FITIMAGE_ENABLE}" = "1" ] ; then
diff --git a/poky/meta/classes/update-alternatives.bbclass b/poky/meta/classes/update-alternatives.bbclass
index 000e4d5..81ca05d 100644
--- a/poky/meta/classes/update-alternatives.bbclass
+++ b/poky/meta/classes/update-alternatives.bbclass
@@ -6,9 +6,9 @@
 # To use this class a number of variables should be defined:
 #
 # List all of the alternatives needed by a package:
-# ALTERNATIVE_<pkg> = "name1 name2 name3 ..."
+# ALTERNATIVE:<pkg> = "name1 name2 name3 ..."
 #
-#   i.e. ALTERNATIVE_busybox = "sh sed test bracket"
+#   i.e. ALTERNATIVE:busybox = "sh sed test bracket"
 #
 # The pathname of the link
 # ALTERNATIVE_LINK_NAME[name] = "target"
@@ -123,7 +123,7 @@
 
     for p in pkgs:
         for v in vars:
-            ret.append(v + "_" + p)
+            ret.append(v + ":" + p)
             ret.append(v + "_VARDEPS_" + p)
     return " ".join(ret)
 
@@ -141,10 +141,10 @@
     import re
 
     def update_files(alt_target, alt_target_rename, pkg, d):
-        f = d.getVar('FILES_' + pkg)
+        f = d.getVar('FILES:' + pkg)
         if f:
             f = re.sub(r'(^|\s)%s(\s|$)' % re.escape (alt_target), r'\1%s\2' % alt_target_rename, f)
-            d.setVar('FILES_' + pkg, f)
+            d.setVar('FILES:' + pkg, f)
 
     # Check for deprecated usage...
     pn = d.getVar('BPN')
@@ -156,7 +156,7 @@
     for pkg in (d.getVar('PACKAGES') or "").split():
         # If the src == dest, we know we need to rename the dest by appending ${BPN}
         link_rename = []
-        for alt_name in (d.getVar('ALTERNATIVE_%s' % pkg) or "").split():
+        for alt_name in (d.getVar('ALTERNATIVE:%s' % pkg) or "").split():
             alt_link     = d.getVarFlag('ALTERNATIVE_LINK_NAME', alt_name)
             if not alt_link:
                 alt_link = "%s/%s" % (d.getVar('bindir'), alt_name)
@@ -233,7 +233,7 @@
     pn = d.getVar('BPN')
     pkgdest = d.getVar('PKGD')
     updates = list()
-    for alt_name in (d.getVar('ALTERNATIVE_%s' % pkg) or "").split():
+    for alt_name in (d.getVar('ALTERNATIVE:%s' % pkg) or "").split():
         alt_link     = d.getVarFlag('ALTERNATIVE_LINK_NAME', alt_name)
         alt_target   = d.getVarFlag('ALTERNATIVE_TARGET_%s' % pkg, alt_name) or \
                        d.getVarFlag('ALTERNATIVE_TARGET', alt_name) or \
@@ -259,7 +259,7 @@
 
     return updates
 
-PACKAGESPLITFUNCS_prepend = "populate_packages_updatealternatives "
+PACKAGESPLITFUNCS:prepend = "populate_packages_updatealternatives "
 
 python populate_packages_updatealternatives () {
     if not update_alternatives_enabled(d):
@@ -280,24 +280,24 @@
             provider = d.getVar('VIRTUAL-RUNTIME_update-alternatives')
             if provider:
                 #bb.note('adding runtime requirement for update-alternatives for %s' % pkg)
-                d.appendVar('RDEPENDS_%s' % pkg, ' ' + d.getVar('MLPREFIX', False) + provider)
+                d.appendVar('RDEPENDS:%s' % pkg, ' ' + d.getVar('MLPREFIX', False) + provider)
 
             bb.note('adding update-alternatives calls to postinst/prerm for %s' % pkg)
             bb.note('%s' % alt_setup_links)
-            postinst = d.getVar('pkg_postinst_%s' % pkg)
+            postinst = d.getVar('pkg_postinst:%s' % pkg)
             if postinst:
                 postinst = alt_setup_links + postinst
             else:
                 postinst = '#!/bin/sh\n' + alt_setup_links
-            d.setVar('pkg_postinst_%s' % pkg, postinst)
+            d.setVar('pkg_postinst:%s' % pkg, postinst)
 
             bb.note('%s' % alt_remove_links)
-            prerm = d.getVar('pkg_prerm_%s' % pkg) or '#!/bin/sh\n'
+            prerm = d.getVar('pkg_prerm:%s' % pkg) or '#!/bin/sh\n'
             prerm += alt_remove_links
-            d.setVar('pkg_prerm_%s' % pkg, prerm)
+            d.setVar('pkg_prerm:%s' % pkg, prerm)
 }
 
-python package_do_filedeps_append () {
+python package_do_filedeps:append () {
     if update_alternatives_enabled(d):
         apply_update_alternative_provides(d)
 }
@@ -307,7 +307,7 @@
     pkgdest = d.getVar('PKGDEST')
 
     for pkg in d.getVar('PACKAGES').split():
-        for alt_name in (d.getVar('ALTERNATIVE_%s' % pkg) or "").split():
+        for alt_name in (d.getVar('ALTERNATIVE:%s' % pkg) or "").split():
             alt_link     = d.getVarFlag('ALTERNATIVE_LINK_NAME', alt_name)
             alt_target   = d.getVarFlag('ALTERNATIVE_TARGET_%s' % pkg, alt_name) or d.getVarFlag('ALTERNATIVE_TARGET', alt_name)
             alt_target   = alt_target or d.getVar('ALTERNATIVE_TARGET_%s' % pkg) or d.getVar('ALTERNATIVE_TARGET') or alt_link
diff --git a/poky/meta/classes/update-rc.d.bbclass b/poky/meta/classes/update-rc.d.bbclass
index 1366fee..0a3a608 100644
--- a/poky/meta/classes/update-rc.d.bbclass
+++ b/poky/meta/classes/update-rc.d.bbclass
@@ -1,11 +1,11 @@
 UPDATERCPN ?= "${PN}"
 
-DEPENDS_append_class-target = "${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', ' update-rc.d initscripts', '', d)}"
+DEPENDS:append:class-target = "${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', ' update-rc.d initscripts', '', d)}"
 
 UPDATERCD = "update-rc.d"
-UPDATERCD_class-cross = ""
-UPDATERCD_class-native = ""
-UPDATERCD_class-nativesdk = ""
+UPDATERCD:class-cross = ""
+UPDATERCD:class-native = ""
+UPDATERCD:class-nativesdk = ""
 
 INITSCRIPT_PARAMS ?= "defaults"
 
@@ -62,8 +62,8 @@
     update_rc_after_parse(d)
 }
 
-PACKAGESPLITFUNCS_prepend = "${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'populate_packages_updatercd ', '', d)}"
-PACKAGESPLITFUNCS_remove_class-nativesdk = "populate_packages_updatercd "
+PACKAGESPLITFUNCS:prepend = "${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'populate_packages_updatercd ', '', d)}"
+PACKAGESPLITFUNCS:remove:class-nativesdk = "populate_packages_updatercd "
 
 populate_packages_updatercd[vardeps] += "updatercd_prerm updatercd_postrm updatercd_postinst"
 populate_packages_updatercd[vardepsexclude] += "OVERRIDES"
@@ -78,7 +78,7 @@
         statement = "grep -q -w '/etc/init.d/functions' %s" % path
         if subprocess.call(statement, shell=True) == 0:
             mlprefix = d.getVar('MLPREFIX') or ""
-            d.appendVar('RDEPENDS_' + pkg, ' %sinitd-functions' % (mlprefix))
+            d.appendVar('RDEPENDS:' + pkg, ' %sinitd-functions' % (mlprefix))
 
     def update_rcd_package(pkg):
         bb.debug(1, 'adding update-rc.d calls to postinst/prerm/postrm for %s' % pkg)
@@ -89,25 +89,25 @@
 
         update_rcd_auto_depend(pkg)
 
-        postinst = d.getVar('pkg_postinst_%s' % pkg)
+        postinst = d.getVar('pkg_postinst:%s' % pkg)
         if not postinst:
             postinst = '#!/bin/sh\n'
         postinst += localdata.getVar('updatercd_postinst')
-        d.setVar('pkg_postinst_%s' % pkg, postinst)
+        d.setVar('pkg_postinst:%s' % pkg, postinst)
 
-        prerm = d.getVar('pkg_prerm_%s' % pkg)
+        prerm = d.getVar('pkg_prerm:%s' % pkg)
         if not prerm:
             prerm = '#!/bin/sh\n'
         prerm += localdata.getVar('updatercd_prerm')
-        d.setVar('pkg_prerm_%s' % pkg, prerm)
+        d.setVar('pkg_prerm:%s' % pkg, prerm)
 
-        postrm = d.getVar('pkg_postrm_%s' % pkg)
+        postrm = d.getVar('pkg_postrm:%s' % pkg)
         if not postrm:
                 postrm = '#!/bin/sh\n'
         postrm += localdata.getVar('updatercd_postrm')
-        d.setVar('pkg_postrm_%s' % pkg, postrm)
+        d.setVar('pkg_postrm:%s' % pkg, postrm)
 
-        d.appendVar('RRECOMMENDS_' + pkg, " ${MLPREFIX}${UPDATERCD}")
+        d.appendVar('RRECOMMENDS:' + pkg, " ${MLPREFIX}${UPDATERCD}")
 
     # Check that this class isn't being inhibited (generally, by
     # systemd.bbclass) before doing any work.
diff --git a/poky/meta/classes/useradd-staticids.bbclass b/poky/meta/classes/useradd-staticids.bbclass
index 3a1b5f1..8e2a7fb 100644
--- a/poky/meta/classes/useradd-staticids.bbclass
+++ b/poky/meta/classes/useradd-staticids.bbclass
@@ -77,7 +77,7 @@
             try:
                 uaargs = parser.parse_args(oe.useradd.split_args(param))
             except Exception as e:
-                bb.fatal("%s: Unable to parse arguments for USERADD_PARAM_%s '%s': %s" % (d.getVar('PN'), pkg, param, e))
+                bb.fatal("%s: Unable to parse arguments for USERADD_PARAM:%s '%s': %s" % (d.getVar('PN'), pkg, param, e))
 
             # Read all passwd files specified in USERADD_UID_TABLES or files/passwd
             # Use the standard passwd layout:
@@ -140,13 +140,13 @@
                 uaargs.gid = uaargs.groupid
                 uaargs.user_group = None
                 if newgroup and is_pkg:
-                    groupadd = d.getVar("GROUPADD_PARAM_%s" % pkg)
+                    groupadd = d.getVar("GROUPADD_PARAM:%s" % pkg)
                     if groupadd:
                         # Only add the group if not already specified
                         if not uaargs.groupname in groupadd:
-                            d.setVar("GROUPADD_PARAM_%s" % pkg, "%s; %s" % (groupadd, newgroup))
+                            d.setVar("GROUPADD_PARAM:%s" % pkg, "%s; %s" % (groupadd, newgroup))
                     else:
-                        d.setVar("GROUPADD_PARAM_%s" % pkg, newgroup)
+                        d.setVar("GROUPADD_PARAM:%s" % pkg, newgroup)
 
             uaargs.comment = "'%s'" % field[4] if field[4] else uaargs.comment
             uaargs.home_dir = field[5] or uaargs.home_dir
@@ -198,7 +198,7 @@
                 # If we're processing multiple lines, we could have left over values here...
                 gaargs = parser.parse_args(oe.useradd.split_args(param))
             except Exception as e:
-                bb.fatal("%s: Unable to parse arguments for GROUPADD_PARAM_%s '%s': %s" % (d.getVar('PN'), pkg, param, e))
+                bb.fatal("%s: Unable to parse arguments for GROUPADD_PARAM:%s '%s': %s" % (d.getVar('PN'), pkg, param, e))
 
             # Read all group files specified in USERADD_GID_TABLES or files/group
             # Use the standard group layout:
@@ -265,17 +265,17 @@
     for pkg in useradd_packages.split():
         # Groupmems doesn't have anything we might want to change, so simply validating
         # is a bit of a waste -- only process useradd/groupadd
-        useradd_param = d.getVar('USERADD_PARAM_%s' % pkg)
+        useradd_param = d.getVar('USERADD_PARAM:%s' % pkg)
         if useradd_param:
-            #bb.warn("Before: 'USERADD_PARAM_%s' - '%s'" % (pkg, useradd_param))
-            d.setVar('USERADD_PARAM_%s' % pkg, rewrite_useradd(useradd_param, True))
-            #bb.warn("After:  'USERADD_PARAM_%s' - '%s'" % (pkg, d.getVar('USERADD_PARAM_%s' % pkg)))
+            #bb.warn("Before: 'USERADD_PARAM:%s' - '%s'" % (pkg, useradd_param))
+            d.setVar('USERADD_PARAM:%s' % pkg, rewrite_useradd(useradd_param, True))
+            #bb.warn("After:  'USERADD_PARAM:%s' - '%s'" % (pkg, d.getVar('USERADD_PARAM:%s' % pkg)))
 
-        groupadd_param = d.getVar('GROUPADD_PARAM_%s' % pkg)
+        groupadd_param = d.getVar('GROUPADD_PARAM:%s' % pkg)
         if groupadd_param:
-            #bb.warn("Before: 'GROUPADD_PARAM_%s' - '%s'" % (pkg, groupadd_param))
-            d.setVar('GROUPADD_PARAM_%s' % pkg, rewrite_groupadd(groupadd_param, True))
-            #bb.warn("After:  'GROUPADD_PARAM_%s' - '%s'" % (pkg, d.getVar('GROUPADD_PARAM_%s' % pkg)))
+            #bb.warn("Before: 'GROUPADD_PARAM:%s' - '%s'" % (pkg, groupadd_param))
+            d.setVar('GROUPADD_PARAM:%s' % pkg, rewrite_groupadd(groupadd_param, True))
+            #bb.warn("After:  'GROUPADD_PARAM:%s' - '%s'" % (pkg, d.getVar('GROUPADD_PARAM:%s' % pkg)))
 
     # Load and process extra users and groups, rewriting only adduser/addgroup params
     pkg = d.getVar('PN')
diff --git a/poky/meta/classes/useradd.bbclass b/poky/meta/classes/useradd.bbclass
index e5f3ba2..287ef84 100644
--- a/poky/meta/classes/useradd.bbclass
+++ b/poky/meta/classes/useradd.bbclass
@@ -3,7 +3,7 @@
 # base-passwd-cross provides the default passwd and group files in the
 # target sysroot, and shadow -native and -sysroot provide the utilities
 # and support files needed to add and modify user and group accounts
-DEPENDS_append_class-target = " base-files shadow-native shadow-sysroot shadow base-passwd"
+DEPENDS:append:class-target = " base-files shadow-native shadow-sysroot shadow base-passwd"
 PACKAGE_WRITE_DEPS += "shadow-native"
 
 # This preinstall function can be run in four different contexts:
@@ -164,16 +164,16 @@
 }
 
 do_prepare_recipe_sysroot[postfuncs] += "${SYSROOTFUNC}"
-SYSROOTFUNC_class-target = "useradd_sysroot_sstate"
+SYSROOTFUNC:class-target = "useradd_sysroot_sstate"
 SYSROOTFUNC = ""
 
 SYSROOT_PREPROCESS_FUNCS += "${SYSROOTFUNC}"
 
-SSTATEPREINSTFUNCS_append_class-target = " useradd_sysroot_sstate"
+SSTATEPREINSTFUNCS:append:class-target = " useradd_sysroot_sstate"
 
 do_package_setscene[depends] += "${USERADDSETSCENEDEPS}"
 do_populate_sysroot_setscene[depends] += "${USERADDSETSCENEDEPS}"
-USERADDSETSCENEDEPS_class-target = "${MLPREFIX}base-passwd:do_populate_sysroot_setscene pseudo-native:do_populate_sysroot_setscene shadow-native:do_populate_sysroot_setscene ${MLPREFIX}shadow-sysroot:do_populate_sysroot_setscene"
+USERADDSETSCENEDEPS:class-target = "${MLPREFIX}base-passwd:do_populate_sysroot_setscene pseudo-native:do_populate_sysroot_setscene shadow-native:do_populate_sysroot_setscene ${MLPREFIX}shadow-sysroot:do_populate_sysroot_setscene"
 USERADDSETSCENEDEPS = ""
 
 # Recipe parse-time sanity checks
@@ -184,8 +184,8 @@
         bb.fatal("%s inherits useradd but doesn't set USERADD_PACKAGES" % d.getVar('FILE', False))
 
     for pkg in useradd_packages.split():
-        d.appendVarFlag("do_populate_sysroot", "vardeps", "USERADD_PARAM_%s GROUPADD_PARAM_%s GROUPMEMS_PARAM_%s" % (pkg, pkg, pkg))
-        if not d.getVar('USERADD_PARAM_%s' % pkg) and not d.getVar('GROUPADD_PARAM_%s' % pkg) and not d.getVar('GROUPMEMS_PARAM_%s' % pkg):
+        d.appendVarFlag("do_populate_sysroot", "vardeps", "USERADD_PARAM:%s GROUPADD_PARAM:%s GROUPMEMS_PARAM:%s" % (pkg, pkg, pkg))
+        if not d.getVar('USERADD_PARAM:%s' % pkg) and not d.getVar('GROUPADD_PARAM:%s' % pkg) and not d.getVar('GROUPMEMS_PARAM:%s' % pkg):
             bb.fatal("%s inherits useradd but doesn't set USERADD_PARAM, GROUPADD_PARAM or GROUPMEMS_PARAM for package %s" % (d.getVar('FILE', False), pkg))
 
 python __anonymous() {
@@ -199,7 +199,7 @@
 def get_all_cmd_params(d, cmd_type):
     import string
     
-    param_type = cmd_type.upper() + "_PARAM_%s"
+    param_type = cmd_type.upper() + "_PARAM:%s"
     params = []
 
     useradd_packages = d.getVar('USERADD_PACKAGES') or ""
@@ -211,7 +211,7 @@
     return "; ".join(params)
 
 # Adds the preinst script into generated packages
-fakeroot python populate_packages_prepend () {
+fakeroot python populate_packages:prepend () {
     def update_useradd_package(pkg):
         bb.debug(1, 'adding user/group calls to preinst for %s' % pkg)
 
@@ -220,7 +220,7 @@
         required to execute on the target. Not doing so may cause
         useradd preinst to be invoked twice, causing unwanted warnings.
         """
-        preinst = d.getVar('pkg_preinst_%s' % pkg) or d.getVar('pkg_preinst')
+        preinst = d.getVar('pkg_preinst:%s' % pkg) or d.getVar('pkg_preinst')
         if not preinst:
             preinst = '#!/bin/sh\n'
         preinst += 'bbnote () {\n\techo "NOTE: $*"\n}\n'
@@ -230,15 +230,15 @@
         preinst += 'perform_useradd () {\n%s}\n' % d.getVar('perform_useradd')
         preinst += 'perform_groupmems () {\n%s}\n' % d.getVar('perform_groupmems')
         preinst += d.getVar('useradd_preinst')
-        d.setVar('pkg_preinst_%s' % pkg, preinst)
+        d.setVar('pkg_preinst:%s' % pkg, preinst)
 
         # RDEPENDS setup
-        rdepends = d.getVar("RDEPENDS_%s" % pkg) or ""
+        rdepends = d.getVar("RDEPENDS:%s" % pkg) or ""
         rdepends += ' ' + d.getVar('MLPREFIX', False) + 'base-passwd'
         rdepends += ' ' + d.getVar('MLPREFIX', False) + 'shadow'
         # base-files is where the default /etc/skel is packaged
         rdepends += ' ' + d.getVar('MLPREFIX', False) + 'base-files'
-        d.setVar("RDEPENDS_%s" % pkg, rdepends)
+        d.setVar("RDEPENDS:%s" % pkg, rdepends)
 
     # Add the user/group preinstall scripts and RDEPENDS requirements
     # to packages specified by USERADD_PACKAGES
diff --git a/poky/meta/classes/utility-tasks.bbclass b/poky/meta/classes/utility-tasks.bbclass
index b1f27d3..34d6b8f 100644
--- a/poky/meta/classes/utility-tasks.bbclass
+++ b/poky/meta/classes/utility-tasks.bbclass
@@ -19,7 +19,7 @@
 
 CLEANFUNCS ?= ""
 
-T_task-clean = "${LOG_DIR}/cleanlogs/${PN}"
+T:task-clean = "${LOG_DIR}/cleanlogs/${PN}"
 addtask clean
 do_clean[nostamp] = "1"
 python do_clean() {
diff --git a/poky/meta/classes/vala.bbclass b/poky/meta/classes/vala.bbclass
index bcaf68c..bfcceff 100644
--- a/poky/meta/classes/vala.bbclass
+++ b/poky/meta/classes/vala.bbclass
@@ -2,8 +2,8 @@
 # because that is where target builds look for .vapi files.
 #
 VALADEPENDS = ""
-VALADEPENDS_class-target = "vala"
-DEPENDS_append = " vala-native ${VALADEPENDS}"
+VALADEPENDS:class-target = "vala"
+DEPENDS:append = " vala-native ${VALADEPENDS}"
 
 # Our patched version of Vala looks in STAGING_DATADIR for .vapi files
 export STAGING_DATADIR
@@ -11,7 +11,7 @@
 export XDG_DATA_DIRS = "${STAGING_DATADIR}:${STAGING_LIBDIR}"
 
 # Package additional files
-FILES_${PN}-dev += "\
+FILES:${PN}-dev += "\
     ${datadir}/vala/vapi/*.vapi \
     ${datadir}/vala/vapi/*.deps \
     ${datadir}/gir-1.0 \
@@ -19,6 +19,6 @@
 
 # Remove vapigen.m4 that is bundled with tarballs
 # because it does not yet have our cross-compile fixes
-do_configure_prepend() {
+do_configure:prepend() {
         rm -f ${S}/m4/vapigen.m4
 }
diff --git a/poky/meta/classes/waf.bbclass b/poky/meta/classes/waf.bbclass
index 188119f..df0ab8d 100644
--- a/poky/meta/classes/waf.bbclass
+++ b/poky/meta/classes/waf.bbclass
@@ -8,7 +8,7 @@
 B = "${WORKDIR}/build"
 do_configure[cleandirs] += "${B}"
 
-EXTRA_OECONF_append = " ${PACKAGECONFIG_CONFARGS}"
+EXTRA_OECONF:append = " ${PACKAGECONFIG_CONFARGS}"
 
 EXTRA_OEWAF_BUILD ??= ""
 # In most cases, you want to pass the same arguments to `waf build` and `waf
diff --git a/poky/meta/classes/xmlcatalog.bbclass b/poky/meta/classes/xmlcatalog.bbclass
index ae4811f..be155b7 100644
--- a/poky/meta/classes/xmlcatalog.bbclass
+++ b/poky/meta/classes/xmlcatalog.bbclass
@@ -4,7 +4,7 @@
 # "${sysconfdir}/xml/docbook-xml.xml".
 XMLCATALOGS ?= ""
 
-SYSROOT_PREPROCESS_FUNCS_append = " xmlcatalog_sstate_postinst"
+SYSROOT_PREPROCESS_FUNCS:append = " xmlcatalog_sstate_postinst"
 
 xmlcatalog_complete() {
 	ROOTCATALOG="${STAGING_ETCDIR_NATIVE}/xml/catalog"
diff --git a/poky/meta/conf/bitbake.conf b/poky/meta/conf/bitbake.conf
index 160abf4..1d5f5b7 100644
--- a/poky/meta/conf/bitbake.conf
+++ b/poky/meta/conf/bitbake.conf
@@ -10,8 +10,8 @@
 baselib = "${BASELIB}"
 baselib[vardepvalue] = "${baselib}"
 BASELIB = "lib"
-BASELIB_libc-glibc_powerpc64 = "lib64"
-BASELIB_libc-glibc_powerpc64le = "lib64"
+BASELIB:libc-glibc:powerpc64 = "lib64"
+BASELIB:libc-glibc:powerpc64le = "lib64"
 
 # Path prefixes
 export base_prefix = ""
@@ -80,8 +80,8 @@
 target_datadir := "${datadir}"
 # Used to find env/perl/python
 USRBINPATH = "${bindir}"
-USRBINPATH_class-native = "/usr/bin"
-USRBINPATH_class-nativesdk = "/usr/bin"
+USRBINPATH:class-native = "/usr/bin"
+USRBINPATH:class-nativesdk = "/usr/bin"
 
 # Root home directory
 ROOT_HOME ??= "/home/root"
@@ -121,7 +121,7 @@
 TUNE_CCARGS[vardepvalue] = "${TUNE_CCARGS}"
 TUNE_LDARGS ??= ""
 TUNE_ASARGS ??= ""
-TUNE_FEATURES ??= "${TUNE_FEATURES_tune-${DEFAULTTUNE}}"
+TUNE_FEATURES ??= "${TUNE_FEATURES:tune-${DEFAULTTUNE}}"
 LIBCEXTENSION ??= ""
 ABIEXTENSION ??= ""
 USE_NLS ??= "yes"
@@ -150,7 +150,7 @@
 TUNE_PKGARCH ??= ""
 PACKAGE_ARCH ??= "${TUNE_PKGARCH}"
 MACHINE_ARCH = "${@[d.getVar('TUNE_PKGARCH'), d.getVar('MACHINE')][bool(d.getVar('MACHINE'))].replace('-', '_')}"
-PACKAGE_EXTRA_ARCHS ??= "${PACKAGE_EXTRA_ARCHS_tune-${DEFAULTTUNE}}"
+PACKAGE_EXTRA_ARCHS ??= "${PACKAGE_EXTRA_ARCHS:tune-${DEFAULTTUNE}}"
 PACKAGE_ARCHS = "all any noarch ${PACKAGE_EXTRA_ARCHS} ${MACHINE_ARCH}"
 # MACHINE_ARCH shouldn't be included here as a variable dependency
 # since machine specific packages are handled using multimachine
@@ -239,25 +239,25 @@
 #SUMMARY_${PN} ?= "${SUMMARY}"
 #DESCRIPTION_${PN} ?= "${DESCRIPTION}"
 
-SUMMARY_${PN}-src ?= "${SUMMARY} - Source files"
-DESCRIPTION_${PN}-src ?= "${DESCRIPTION}  \
+SUMMARY:${PN}-src ?= "${SUMMARY} - Source files"
+DESCRIPTION:${PN}-src ?= "${DESCRIPTION}  \
 This package contains sources for debugging purposes."
 
-SUMMARY_${PN}-dbg ?= "${SUMMARY} - Debugging files"
-DESCRIPTION_${PN}-dbg ?= "${DESCRIPTION}  \
+SUMMARY:${PN}-dbg ?= "${SUMMARY} - Debugging files"
+DESCRIPTION:${PN}-dbg ?= "${DESCRIPTION}  \
 This package contains ELF symbols and related sources for debugging purposes."
 
-SUMMARY_${PN}-dev ?= "${SUMMARY} - Development files"
-DESCRIPTION_${PN}-dev ?= "${DESCRIPTION}  \
+SUMMARY:${PN}-dev ?= "${SUMMARY} - Development files"
+DESCRIPTION:${PN}-dev ?= "${DESCRIPTION}  \
 This package contains symbolic links, header files, and \
 related items necessary for software development."
 
-SUMMARY_${PN}-staticdev ?= "${SUMMARY} - Development files (Static Libraries)"
-DESCRIPTION_${PN}-staticdev ?= "${DESCRIPTION}  \
+SUMMARY:${PN}-staticdev ?= "${SUMMARY} - Development files (Static Libraries)"
+DESCRIPTION:${PN}-staticdev ?= "${DESCRIPTION}  \
 This package contains static libraries for software development."
 
-SUMMARY_${PN}-doc ?= "${SUMMARY} - Documentation files"
-DESCRIPTION_${PN}-doc ?= "${DESCRIPTION}  \
+SUMMARY:${PN}-doc ?= "${SUMMARY} - Documentation files"
+DESCRIPTION:${PN}-doc ?= "${DESCRIPTION}  \
 This package contains documentation."
 
 LICENSE ??= "INVALID"
@@ -273,18 +273,18 @@
 
 DEPENDS = ""
 PROVIDES = ""
-PROVIDES_prepend = "${PN} "
+PROVIDES:prepend = "${PN} "
 
 MULTI_PROVIDER_WHITELIST = "virtual/libintl virtual/libintl-native virtual/nativesdk-libintl virtual/xserver virtual/update-alternatives-native virtual/update-alternatives"
 
 SOLIBS = ".so.*"
-SOLIBS_darwin = ".dylib"
+SOLIBS:darwin = ".dylib"
 
 SOLIBSDEV = ".so"
 # Due to the ordering of PACKAGES and the naming of the dev symlinks on darwin,
 # we can't make the symlinks end up in the -dev packages easily at this point. This hack
 # at least means builds aren't completely broken and symlinks don't take up much space.
-SOLIBSDEV_darwin = ".dylibbroken"
+SOLIBSDEV:darwin = ".dylibbroken"
 
 PACKAGE_DEBUG_SPLIT_STYLE ?= "debug-with-srcpkg"
 
@@ -293,7 +293,7 @@
 PACKAGES_DYNAMIC = "^${PN}-locale-.*"
 FILES = ""
 
-FILES_${PN} = "${bindir}/* ${sbindir}/* ${libexecdir}/* ${libdir}/lib*${SOLIBS} \
+FILES:${PN} = "${bindir}/* ${sbindir}/* ${libexecdir}/* ${libdir}/lib*${SOLIBS} \
             ${sysconfdir} ${sharedstatedir} ${localstatedir} \
             ${base_bindir}/* ${base_sbindir}/* \
             ${base_libdir}/*${SOLIBS} \
@@ -304,36 +304,36 @@
             ${datadir}/idl ${datadir}/omf ${datadir}/sounds \
             ${libdir}/bonobo/servers"
 
-FILES_${PN}-bin = "${bindir}/* ${sbindir}/*"
+FILES:${PN}-bin = "${bindir}/* ${sbindir}/*"
 
-FILES_${PN}-doc = "${docdir} ${mandir} ${infodir} ${datadir}/gtk-doc \
+FILES:${PN}-doc = "${docdir} ${mandir} ${infodir} ${datadir}/gtk-doc \
             ${datadir}/gnome/help"
-SECTION_${PN}-doc = "doc"
+SECTION:${PN}-doc = "doc"
 
 FILES_SOLIBSDEV ?= "${base_libdir}/lib*${SOLIBSDEV} ${libdir}/lib*${SOLIBSDEV}"
-FILES_${PN}-dev = "${includedir} ${FILES_SOLIBSDEV} ${libdir}/*.la \
+FILES:${PN}-dev = "${includedir} ${FILES_SOLIBSDEV} ${libdir}/*.la \
                 ${libdir}/*.o ${libdir}/pkgconfig ${datadir}/pkgconfig \
                 ${datadir}/aclocal ${base_libdir}/*.o \
                 ${libdir}/${BPN}/*.la ${base_libdir}/*.la \
                 ${libdir}/cmake ${datadir}/cmake"
-SECTION_${PN}-dev = "devel"
-ALLOW_EMPTY_${PN}-dev = "1"
-RDEPENDS_${PN}-dev = "${PN} (= ${EXTENDPKGV})"
+SECTION:${PN}-dev = "devel"
+ALLOW_EMPTY:${PN}-dev = "1"
+RDEPENDS:${PN}-dev = "${PN} (= ${EXTENDPKGV})"
 
-FILES_${PN}-staticdev = "${libdir}/*.a ${base_libdir}/*.a ${libdir}/${BPN}/*.a"
-SECTION_${PN}-staticdev = "devel"
-RDEPENDS_${PN}-staticdev = "${PN}-dev (= ${EXTENDPKGV})"
+FILES:${PN}-staticdev = "${libdir}/*.a ${base_libdir}/*.a ${libdir}/${BPN}/*.a"
+SECTION:${PN}-staticdev = "devel"
+RDEPENDS:${PN}-staticdev = "${PN}-dev (= ${EXTENDPKGV})"
 
-FILES_${PN}-dbg = "/usr/lib/debug /usr/lib/debug-static /usr/src/debug"
-SECTION_${PN}-dbg = "devel"
-ALLOW_EMPTY_${PN}-dbg = "1"
+FILES:${PN}-dbg = "/usr/lib/debug /usr/lib/debug-static /usr/src/debug"
+SECTION:${PN}-dbg = "devel"
+ALLOW_EMPTY:${PN}-dbg = "1"
 
 # The files list for source packages are dynamically set based on
 # PACKAGE_DEBUG_SPLIT_STYLE
-FILES_${PN}-src = ""
-SECTION_${PN}-src = "devel"
+FILES:${PN}-src = ""
+SECTION:${PN}-src = "devel"
 
-FILES_${PN}-locale = "${datadir}/locale"
+FILES:${PN}-locale = "${datadir}/locale"
 
 # File manifest
 
@@ -422,19 +422,21 @@
 
 SDK_NAME_PREFIX ?= "oecore"
 SDK_NAME = "${SDK_NAME_PREFIX}-${SDK_ARCH}-${TUNE_PKGARCH}"
-SDKPATH = "/usr/local/${SDK_NAME_PREFIX}-${SDK_ARCH}"
+SDKPATH = "/usr/local/oe-sdk-hardcoded-buildpath"
 SDKPATHNATIVE = "${SDKPATH}/sysroots/${SDK_SYS}"
+# The path to default to installing the SDK to
+SDKPATHINSTALL = "/usr/local/${SDK_NAME_PREFIX}-${SDK_ARCH}"
 
 ##################################################################
 # Kernel info.
 ##################################################################
 
 OLDEST_KERNEL = "3.2.0"
-OLDEST_KERNEL_aarch64 = "3.14"
-OLDEST_KERNEL_nios2 = "3.19"
-OLDEST_KERNEL_powerpc64le = "3.10.0"
-OLDEST_KERNEL_riscv32 = "5.4"
-OLDEST_KERNEL_riscv64 = "4.15"
+OLDEST_KERNEL:aarch64 = "3.14"
+OLDEST_KERNEL:nios2 = "3.19"
+OLDEST_KERNEL:powerpc64le = "3.10.0"
+OLDEST_KERNEL:riscv32 = "5.4"
+OLDEST_KERNEL:riscv64 = "4.15"
 
 # SDK_OLDEST_KERNEL can't be set using overrides since there are
 # none for the SDK architecture. Best to set it from a machine-sdk
@@ -469,7 +471,7 @@
 # Toolchain info.
 ##################################################################
 
-PATH_prepend = "${COREBASE}/scripts:${STAGING_BINDIR_TOOLCHAIN}:${STAGING_BINDIR_CROSS}:${STAGING_DIR_NATIVE}${sbindir_native}:${STAGING_BINDIR_NATIVE}:${STAGING_DIR_NATIVE}${base_sbindir_native}:${STAGING_DIR_NATIVE}${base_bindir_native}:"
+PATH:prepend = "${COREBASE}/scripts:${STAGING_BINDIR_TOOLCHAIN}:${STAGING_BINDIR_CROSS}:${STAGING_DIR_NATIVE}${sbindir_native}:${STAGING_BINDIR_NATIVE}:${STAGING_DIR_NATIVE}${base_sbindir_native}:${STAGING_DIR_NATIVE}${base_bindir_native}:"
 export PATH
 
 ##################################################################
@@ -597,13 +599,13 @@
 export LDFLAGS = "${TARGET_LDFLAGS}"
 TARGET_LDFLAGS = "-Wl,-O1 ${TARGET_LINK_HASH_STYLE} ${ASNEEDED}"
 # mips does not support GNU hash style therefore we override
-LINKER_HASH_STYLE_mipsarch_libc-musl = "sysv"
+LINKER_HASH_STYLE:mipsarch:libc-musl = "sysv"
 
 # Pass parallel make options to the compile task
-EXTRA_OEMAKE_prepend_task-compile = "${PARALLEL_MAKE} "
+EXTRA_OEMAKE:prepend:task-compile = "${PARALLEL_MAKE} "
 PARALLEL_MAKEINST ??= "${PARALLEL_MAKE}"
 # Pass parallel make options to the install task
-EXTRA_OEMAKE_prepend_task-install = "${PARALLEL_MAKEINST} "
+EXTRA_OEMAKE:prepend:task-install = "${PARALLEL_MAKEINST} "
 
 ##################################################################
 # Optimization flags.
@@ -639,7 +641,7 @@
 DEBIAN_MIRROR = "http://ftp.debian.org/debian/pool"
 GENTOO_MIRROR = "http://distfiles.gentoo.org/distfiles"
 GNOME_GIT = "git://gitlab.gnome.org/GNOME"
-GNOME_MIRROR = "https://ftp.gnome.org/pub/GNOME/sources"
+GNOME_MIRROR = "https://download.gnome.org/sources/"
 GNU_MIRROR = "https://ftp.gnu.org/gnu"
 GNUPG_MIRROR = "https://www.gnupg.org/ftp/gcrypt"
 GPE_MIRROR = "http://gpe.linuxtogo.org/download/source"
diff --git a/poky/meta/conf/conf-notes.txt b/poky/meta/conf/conf-notes.txt
index 1a9414a..cfd1f19 100644
--- a/poky/meta/conf/conf-notes.txt
+++ b/poky/meta/conf/conf-notes.txt
@@ -11,7 +11,7 @@
     meta-toolchain
     meta-ide-support
 
-You can also run generated qemu images with a command like 'runqemu qemux86'.
+You can also run generated qemu images with a command like 'runqemu qemux86-64'.
 
 Other commonly useful commands are:
  - 'devtool' and 'recipetool' handle common recipe tasks
diff --git a/poky/meta/conf/distro/include/default-distrovars.inc b/poky/meta/conf/distro/include/default-distrovars.inc
index e0726fa..f91df63 100644
--- a/poky/meta/conf/distro/include/default-distrovars.inc
+++ b/poky/meta/conf/distro/include/default-distrovars.inc
@@ -8,13 +8,13 @@
 ENABLE_BINARY_LOCALE_GENERATION ?= "1"
 LOCALE_UTF8_ONLY ?= "0"
 LOCALE_UTF8_IS_DEFAULT ?= "1"
-LOCALE_UTF8_IS_DEFAULT_class-nativesdk = "0"
+LOCALE_UTF8_IS_DEFAULT:class-nativesdk = "0"
 
 # seccomp is not yet ported to rv32
-DISTRO_FEATURES_DEFAULT_remove_riscv32 = "seccomp"
+DISTRO_FEATURES_DEFAULT:remove:riscv32 = "seccomp"
 
 # seccomp is not yet ported to ARC
-DISTRO_FEATURES_DEFAULT_remove_arc = "seccomp"
+DISTRO_FEATURES_DEFAULT:remove:arc = "seccomp"
 
 DISTRO_FEATURES_DEFAULT ?= "acl alsa argp bluetooth debuginfod ext2 ipv4 ipv6 largefile pcmcia usbgadget usbhost wifi xattr nfs zeroconf pci 3g nfc x11 vfat seccomp"
 DISTRO_FEATURES ?= "${DISTRO_FEATURES_DEFAULT}"
@@ -45,8 +45,8 @@
 GTK3DISTROFEATURES = "x11 wayland"
 
 ARCH_DEFAULT_KERNELIMAGETYPE = "zImage"
-ARCH_DEFAULT_KERNELIMAGETYPE_x86 = "bzImage"
-ARCH_DEFAULT_KERNELIMAGETYPE_x86-64 = "bzImage"
+ARCH_DEFAULT_KERNELIMAGETYPE:x86 = "bzImage"
+ARCH_DEFAULT_KERNELIMAGETYPE:x86-64 = "bzImage"
 KERNEL_IMAGETYPE ??= "${ARCH_DEFAULT_KERNELIMAGETYPE}"
 KERNEL_IMAGETYPES ??= "${KERNEL_IMAGETYPE}"
 
diff --git a/poky/meta/conf/distro/include/distro_alias.inc b/poky/meta/conf/distro/include/distro_alias.inc
index 001d269..44bc3bf 100644
--- a/poky/meta/conf/distro/include/distro_alias.inc
+++ b/poky/meta/conf/distro/include/distro_alias.inc
@@ -5,383 +5,383 @@
 #
 # The format is as a bitbake variable override for each recipe
 #
-#       DISTRO_PN_ALIAS_pn-<recipe name> = "Distro1=<pkgname> Distro2=<pkgname>"
+#       DISTRO_PN_ALIAS:pn-<recipe name> = "Distro1=<pkgname> Distro2=<pkgname>"
 #
 # Please keep this list in alphabetical order.
 #
-DISTRO_PN_ALIAS_pn-alsa-state = "OE-Core"
-DISTRO_PN_ALIAS_pn-alsa-utils-alsaconf = "OE-Core"
-DISTRO_PN_ALIAS_pn-alsa-utils-scripts = "OE-Core"
-DISTRO_PN_ALIAS_pn-atk = "Fedora=atk OpenSuSE=atk"
-DISTRO_PN_ALIAS_pn-avahi-ui = "Ubuntu=avahi-discover Debian=avahi-discover"
-DISTRO_PN_ALIAS_pn-babeltrace = "OSPDT"
-DISTRO_PN_ALIAS_pn-babeltrace2 = "OSPDT"
-DISTRO_PN_ALIAS_pn-bjam = "OpenSuSE=boost-jam Debian=bjam"
-DISTRO_PN_ALIAS_pn-blktool = "Debian=blktool Mandriva=blktool"
-DISTRO_PN_ALIAS_pn-bluez5 = "Fedora=bluez  Opensuse=bluez"
-DISTRO_PN_ALIAS_pn-bootchart2 = "Fedora=bootchart2 Opensuse=bootchart"
-DISTRO_PN_ALIAS_pn-btrfs-tools = "Debian=btrfs-tools Fedora=btrfs-progs"
-DISTRO_PN_ALIAS_pn-build-appliance-image = "OSPDT"
-DISTRO_PN_ALIAS_pn-builder = "OE-Core"
-DISTRO_PN_ALIAS_pn-buildtools-tarball = "OE-Core"
-DISTRO_PN_ALIAS_pn-cdrtools = "OpenSUSE=cdrtools OSPDT"
-DISTRO_PN_ALIAS_pn-chkconfig-alternatives = "Mandriva=chkconfig Debian=chkconfig"
-DISTRO_PN_ALIAS_pn-connman = "Meego=connman"
-DISTRO_PN_ALIAS_pn-connman-conf = "OE-Core"
-DISTRO_PN_ALIAS_pn-connman-gnome = "Intel"
-DISTRO_PN_ALIAS_pn-console-tools = "Debian=console-tools Ubuntu=console-tools"
-DISTRO_PN_ALIAS_pn-core-image-base = "OE-Core"
-DISTRO_PN_ALIAS_pn-core-image-full-cmdline = "OE-Core"
-DISTRO_PN_ALIAS_pn-core-image-kernel-dev = "OE-Core"
-DISTRO_PN_ALIAS_pn-core-image-minimal = "OE-Core"
-DISTRO_PN_ALIAS_pn-core-image-minimal-dev = "OE-Core"
-DISTRO_PN_ALIAS_pn-core-image-minimal-initramfs = "OE-Core"
-DISTRO_PN_ALIAS_pn-core-image-minimal-mtdutils = "OE-Core"
-DISTRO_PN_ALIAS_pn-core-image-rt = "OE-Core"
-DISTRO_PN_ALIAS_pn-core-image-rt-sdk = "OE-Core"
-DISTRO_PN_ALIAS_pn-core-image-sato = "OE-Core"
-DISTRO_PN_ALIAS_pn-core-image-sato-dev = "OE-Core"
-DISTRO_PN_ALIAS_pn-core-image-sato-sdk = "OE-Core"
-DISTRO_PN_ALIAS_pn-core-image-testmaster = "OE-Core"
-DISTRO_PN_ALIAS_pn-core-image-testmaster-initramfs = "OE-Core"
-DISTRO_PN_ALIAS_pn-core-image-weston = "OE-Core"
-DISTRO_PN_ALIAS_pn-core-image-x11 = "OE-Core"
-DISTRO_PN_ALIAS_pn-createrepo-c = "Fedora=createrepo_c Clear=createrepo_c"
-DISTRO_PN_ALIAS_pn-cross-localedef = "OSPDT"
-DISTRO_PN_ALIAS_pn-cryptodev-linux = "OE-Core"
-DISTRO_PN_ALIAS_pn-cryptodev-module = "OE-Core"
-DISTRO_PN_ALIAS_pn-cryptodev-tests = "OE-Core"
-DISTRO_PN_ALIAS_pn-cwautomacros = "OSPDT upstream=http://cwautomacros.berlios.de/"
-DISTRO_PN_ALIAS_pn-db = "Debian=db5.1 Ubuntu=db5.1"
-DISTRO_PN_ALIAS_pn-dbus-test = "Fedora=dbus Ubuntu=dbus"
-DISTRO_PN_ALIAS_pn-dbus-wait = "OpenedHand"
-DISTRO_PN_ALIAS_pn-depmodwrapper-cross = "OE-Core"
-DISTRO_PN_ALIAS_pn-distcc = "Debian=distcc Fedora=distcc"
-DISTRO_PN_ALIAS_pn-distcc-config = "OpenedHand"
-DISTRO_PN_ALIAS_pn-docbook-dsssl-stylesheets = "Fedora=docbook-style-dsssl Ubuntu=docbook-dsssl"
-DISTRO_PN_ALIAS_pn-docbook-sgml-dtd-3.1 = "Fedora=docbook-dtds Mandriva=docbook-dtd31-sgml"
-DISTRO_PN_ALIAS_pn-docbook-sgml-dtd-4.1 = "Fedora=docbook-dtds Mandriva=docbook-dtd41-sgml"
-DISTRO_PN_ALIAS_pn-docbook-sgml-dtd-4.5 = "Fedora=docbook-dtds Mandriva=docbook-dtd42-sgml"
-DISTRO_PN_ALIAS_pn-docbook-xml-dtd4 = "Ubuntu=docbook-xml Fedora=docbook-dtds"
-DISTRO_PN_ALIAS_pn-docbook-xml-dtd4-native = "Ubuntu=docbook-xml Fedora=docbook-dtds"
-DISTRO_PN_ALIAS_pn-docbook-xsl-stylesheets = "Fedora=docbook-xsl-stylesheets Opensuse=docbook-xsl-stylesheets"
-DISTRO_PN_ALIAS_pn-dropbear = "Debian=dropbear Ubuntu=dropbear"
-DISTRO_PN_ALIAS_pn-dtc = "Fedora=dtc Ubuntu=dtc"
-DISTRO_PN_ALIAS_pn-encodings = "Ubuntu=xfonts-encodings Mandriva=x11-font-encodings Debian=xfonts-encodings"
-DISTRO_PN_ALIAS_pn-font-alias = "Fedora=xorg-x11-fonts-base Mandriva=x11-font-alias Meego=xorg-x11-fonts"
-DISTRO_PN_ALIAS_pn-font-util = "Meego=xorg-x11-font-utils Fedora=xorg-x11-font-utils Ubuntu=xfonts-utils Mandriva=x11-font-util Debian=xfonts-utils"
-DISTRO_PN_ALIAS_pn-formfactor = "OE-Core"
-DISTRO_PN_ALIAS_pn-gccmakedep = "Mandriva=gccmakedep Ubuntu=xutils-dev"
-DISTRO_PN_ALIAS_pn-gcc-runtime = "Ubuntu=gcc Fedora=gcc"
-DISTRO_PN_ALIAS_pn-gcc-sanitizers = "Ubuntu=gcc Fedora=gcc"
-DISTRO_PN_ALIAS_pn-gcc-source = "Ubuntu=gcc Fedora=gcc"
-DISTRO_PN_ALIAS_pn-gconf-dbus = "Meego=GConf-dbus"
-DISTRO_PN_ALIAS_pn-gdk-pixbuf = "Debian=libgdk-pixbuf2.0 Fedora=gdk-pixbuf"
-DISTRO_PN_ALIAS_pn-gdk-pixbuf-csource = "Debian=libgdk-pixbuf2.0-0 Fedora=gdk-pixbuf2"
-DISTRO_PN_ALIAS_pn-gettext-minimal = "Debian=gettext Fedora=gettext"
-DISTRO_PN_ALIAS_pn-glib-2.0 = "Meego=glib2 Fedora=glib2 OpenSuSE=glib2 Ubuntu=glib2.0 Mandriva=glib2.0 Debian=glib2.0"
-DISTRO_PN_ALIAS_pn-glibc-locale = "OpenSuSE=glibc-locale Fedora=glibc-devel"
-DISTRO_PN_ALIAS_pn-glibc-mtrace = "Fedora=glibc-utils Ubuntu=libc-dev-bin"
-DISTRO_PN_ALIAS_pn-glibc-scripts = "Fedora=glibc Ubuntu=libc-bin"
-DISTRO_PN_ALIAS_pn-gnome-desktop-testing = "Debian=gnome-desktop-testing Fedora=gnome-desktop-testing"
-DISTRO_PN_ALIAS_pn-gnu-config = "OpenedHand"
-DISTRO_PN_ALIAS_pn-gptfdisk = "Fedora=gdisk Ubuntu=gdisk"
-DISTRO_PN_ALIAS_pn-grub-efi = "Debian=grub-efi Fedora=grub2-efi"
-DISTRO_PN_ALIAS_pn-gst-player = "Ubuntu=gst-player Fedora=gstreamer-player"
-DISTRO_PN_ALIAS_pn-gst-plugin-bluetooth = "Ubuntu=libgstreamer-plugins-base Fedora=gstreamer-plugins-base"
-DISTRO_PN_ALIAS_pn-gstreamer1.0 = "Debian=gstreamer1.0 Ubuntu=gstreamer1.0"
-DISTRO_PN_ALIAS_pn-gstreamer1.0-meta-base = "Meego=gstreamer Fedora=gstreamer OpenSuSE=gstreamer Ubuntu=gstreamer0.10"
-DISTRO_PN_ALIAS_pn-gstreamer1.0-plugins-bad = "Debian=gstreamer1.0-plugins-bad Ubuntu=gstreamer1.0-plugins-bad"
-DISTRO_PN_ALIAS_pn-gstreamer1.0-plugins-base = "Debian=gstreamer1.0-plugins-base Ubuntu=gstreamer1.0-plugins-base"
-DISTRO_PN_ALIAS_pn-gstreamer1.0-plugins-good = "Debian=gstreamer1.0-plugins-good Ubuntu=gstreamer1.0-plugins-bad"
-DISTRO_PN_ALIAS_pn-gstreamer1.0-rtsp-server = "Ubuntu=gstreamer0.10-rtsp Fedora=gstreamer-rtsp"
-DISTRO_PN_ALIAS_pn-gstreamer1.0-vaapi = "Fedora=gstreamer1-vaapi Debian=gstreamer-vaapi Clear=gstreamer-vaapi"
-DISTRO_PN_ALIAS_pn-gtk+ = "Meego=gtk2 Fedora=gtk2 OpenSuSE=gtk2 Ubuntu=gtk+2.0 Mandriva=gtk+2.0 Debian=gtk+2.0"
-DISTRO_PN_ALIAS_pn-gtk+3 = "Ubuntu=gtk+3.0 Debian=gtk+3.0 Fedora=gtk3"
-DISTRO_PN_ALIAS_pn-gtk-doc = "Fedora=gtk-doc Ubuntu=gtk-doc"
-DISTRO_PN_ALIAS_pn-gtk-engines = "Fedora=gtk2-engines OpenSuSE=gtk2-engines Ubuntu=gtk2-engines Mandriva=gtk-engines2 Debian=gtk2-engines"
-DISTRO_PN_ALIAS_pn-gtk-sato-engine = "OpenedHand"
-DISTRO_PN_ALIAS_pn-gtk-icon-utils-native = "OSPDT"
-DISTRO_PN_ALIAS_pn-systemd-boot = "Ubuntu=systemd-boot Fedora=systemd-boot"
-DISTRO_PN_ALIAS_pn-hello-mod = "OE-Core"
-DISTRO_PN_ALIAS_pn-hwlatdetect = "OSPDT"
-DISTRO_PN_ALIAS_pn-icecc-create-env = "OE-Core"
-DISTRO_PN_ALIAS_pn-init-ifupdown = "Debian=ifupdown Ubuntu=ifupdown"
-DISTRO_PN_ALIAS_pn-initramfs-boot = "OE-Core"
-DISTRO_PN_ALIAS_pn-initramfs-framework = "OE-Core"
-DISTRO_PN_ALIAS_pn-initramfs-live-boot = "OE-Core"
-DISTRO_PN_ALIAS_pn-initramfs-live-install = "OE-Core"
-DISTRO_PN_ALIAS_pn-initramfs-live-install-efi = "OE-Core"
-DISTRO_PN_ALIAS_pn-initramfs-live-install-efi-testfs = "OE-Core"
-DISTRO_PN_ALIAS_pn-initramfs-live-install-testfs = "OE-Core"
-DISTRO_PN_ALIAS_pn-initscripts = "Fedora=initscripts Mandriva=initscripts"
-DISTRO_PN_ALIAS_pn-iproute2 = "OSPDT"
-DISTRO_PN_ALIAS_pn-jpeg = "OpenSuSE=libjpeg Ubuntu=libjpeg62"
-DISTRO_PN_ALIAS_pn-kernel-devsrc = "Debian=linux-base Ubuntu=linux"
-DISTRO_PN_ALIAS_pn-kern-tools-native = "Windriver"
-DISTRO_PN_ALIAS_pn-keymaps = "OE-Core"
-DISTRO_PN_ALIAS_pn-kf = "OSPDT"
-DISTRO_PN_ALIAS_pn-lame = "Debian=lame Ubuntu=lame"
-DISTRO_PN_ALIAS_pn-ldconfig-native = "Ubuntu=libc-bin Fedora=glibc"
-DISTRO_PN_ALIAS_pn-liba52 = "Mandriva=a52dec Debian=a52dec"
-DISTRO_PN_ALIAS_pn-libacpi = "Ubuntu=libacpi Mandriva=libacpi"
-DISTRO_PN_ALIAS_pn-libatomics-ops = "Meego=libatomic-ops Debian=libatomic-ops Ubuntu=libatomic-ops OpenSuSE=libatomic-ops Mandriva=libatomic-ops"
-DISTRO_PN_ALIAS_pn-libcgroup = "Ubuntu=libcgroup1 Debian=libcgroup1"
-DISTRO_PN_ALIAS_pn-libcheck = "Ubuntu=check Fedora=check OpenSuSE=check"
-DISTRO_PN_ALIAS_pn-libclass-isa-perl = "OSPDT"
-DISTRO_PN_ALIAS_pn-libdumpvalue-perl = "OSPDT"
-DISTRO_PN_ALIAS_pn-libenv-perl = "OSPDT"
-DISTRO_PN_ALIAS_pn-liberation-fonts = "Ubuntu=fonts-liberation Fedora=liberation-fonts-ttf"
-DISTRO_PN_ALIAS_pn-libfakekey = "Meego1.0=libfakekey Debian=libfakekey"
-DISTRO_PN_ALIAS_pn-libfile-checktree-perl = "OSPDT"
-DISTRO_PN_ALIAS_pn-libfm-extra = "Opensuse=libfm-extra4 Ubuntu=libfm-extra4"
-DISTRO_PN_ALIAS_pn-libgcc = "Debian=libgcc4 Ubuntu=libgcc1 OpenSuSE=libgcc46"
-DISTRO_PN_ALIAS_pn-libgdbus = "Intel"
-DISTRO_PN_ALIAS_pn-libglade = "Meego=libglade2 Fedora=libglade2 OpenSuSE=libglade2 Ubuntu=libglade2 Mandriva=libglade2.0 Debian=libglade2"
-DISTRO_PN_ALIAS_pn-libglu = "Debian=libglu Ubuntu=libglu Opensuse=mesa-libglu"
-DISTRO_PN_ALIAS_pn-libgu = "OpenSuSE=glu OSPDT"
-DISTRO_PN_ALIAS_pn-libi18n-collate-perl = "OSPDT"
-DISTRO_PN_ALIAS_pn-libical = "Ubuntu=libical Fedora=libical"
-DISTRO_PN_ALIAS_pn-libiconv = "Fedora=mingw-libiconv Opensuse=cross-mingw-libiconv"
-DISTRO_PN_ALIAS_pn-libinput = "Ubuntu=libinput0 Fedora=libinput0"
-DISTRO_PN_ALIAS_pn-libjson = "Ubuntu=libjson0-dev Debian=libjson0-dev"
-DISTRO_PN_ALIAS_pn-libksba = "Fedora=libksba Debian=libksba8 Ubuntu=libksba"
-DISTRO_PN_ALIAS_pn-libmatchbox = "Ubuntu=libmatchbox Fedora=libmatchbox"
-DISTRO_PN_ALIAS_pn-libmpc = "Fedora=libmpc OpenSuse=libmpc2"
-DISTRO_PN_ALIAS_pn-libnewt = "Debian=libnewt0.52 Fedora=newt"
-DISTRO_PN_ALIAS_pn-libnewt-python = "Ubuntu=python-newt Fedora=newt-python"
-DISTRO_PN_ALIAS_pn-libnl = "Mandriva=libnl Fedora=libnl"
-DISTRO_PN_ALIAS_pn-libnss-mdns = "Meego=nss-mdns OpenSuSE=nss-mdns Ubuntu=nss-mdns Mandriva=nss_mdns Debian=nss-mdns"
-DISTRO_PN_ALIAS_pn-libomxil = "OSPDT upstream=http://omxil.sourceforge.net/"
-DISTRO_PN_ALIAS_pn-libowl = "Debian=owl OpenedHand"
-DISTRO_PN_ALIAS_pn-libpam = "Meego=pam Fedora=pam OpenSuSE=pam Ubuntu=pam Mandriva=pam Debian=pam"
-DISTRO_PN_ALIAS_pn-libpcre = "Mandriva=libpcre0 Fedora=pcre"
-DISTRO_PN_ALIAS_pn-libpcre2 = "Fedora=pcre2 Debian=pcre2 Clear=pcre2"
-DISTRO_PN_ALIAS_pn-libpng12 = "Debian=libpng12-0 Fedora=libpng"
-DISTRO_PN_ALIAS_pn-libpod-plainer-perl = "OSPDT"
-DISTRO_PN_ALIAS_pn-libsamplerate0 = "Meego=libsamplerate Fedora=libsamplerate OpenSuSE=libsamplerate Ubuntu=libsamplerate Mandriva=libsamplerate Debian=libsamplerate"
-DISTRO_PN_ALIAS_pn-libsdl2 = "Fedora=sdl2 Opensuse=libsdl2 Ubuntu=libsdl2 Debian=libsdl2"
-DISTRO_PN_ALIAS_pn-libsndfile1 = "Meego=libsndfile Fedora=libsndfile OpenSuSE=libsndfile Ubuntu=libsndfile Mandriva=libsndfile Debian=libsndfile"
-DISTRO_PN_ALIAS_pn-libsoup-2.4 = "Meego=libsoup Fedora=libsoup OpenSuSE=libsoup Ubuntu=libsoup2.4 Mandriva=libsoup Debian=libsoup2.4"
-DISTRO_PN_ALIAS_pn-libtelepathy = "Debian=libtelepathy2 Ubuntu=libtelepathy2"
-DISTRO_PN_ALIAS_pn-libtimedate-perl = "Debian=libtimedate-perl Ubuntu=libtimedate-perl"
-DISTRO_PN_ALIAS_pn-liburcu = "Fedora=userspace-rcu Ubuntu=liburcu0"
-DISTRO_PN_ALIAS_pn-libusb1 = "Debian=libusb-1.0-0 Fedora=libusb1"
-DISTRO_PN_ALIAS_pn-libx11 = "Debian=libx11-6 Fedora=libX11 Ubuntu=libx11-6 OpenSuSE=xorg-x11-libX11"
-DISTRO_PN_ALIAS_pn-libxcalibrate = "OSPDT upstream=http://cgit.freedesktop.org/xorg/lib/libXCalibrate/"
-DISTRO_PN_ALIAS_pn-libxfont2 = "Fedora=libXfont2 Clear=libXfont2"
-DISTRO_PN_ALIAS_pn-libxft = "Mandriva=libxft Debian=libxft2 Ubuntu=libxft2"
-DISTRO_PN_ALIAS_pn-libxi = "Ubuntu=libxi Fedora=libXi"
-DISTRO_PN_ALIAS_pn-libxkbcommon = "Fedora=libxkbcommon Debian=libxkbcommon"
-DISTRO_PN_ALIAS_pn-libxscrnsaver = "Fedora=libXScrnSaver Ubuntu=libxss1 Mandriva=libxscrnsaver"
-DISTRO_PN_ALIAS_pn-linux-dummy = "Intel"
-DISTRO_PN_ALIAS_pn-linux-firmware = "Fedora=linux-firmware Ubuntu=linux-firmware"
-DISTRO_PN_ALIAS_pn-linux-libc-headers = "Debian=linux-kernel-headers Ubuntu=linux-kernel-headers"
-DISTRO_PN_ALIAS_pn-linux-libc-headers-yocto = "Debian=linux-kernel-headers Ubuntu=linux-kernel-headers"
-DISTRO_PN_ALIAS_pn-linux-yocto = "Debian=linux-base Ubuntu=linux"
-DISTRO_PN_ALIAS_pn-linux-yocto-rt = "Debian=linux-base Ubuntu=linux"
-DISTRO_PN_ALIAS_pn-linux-yocto-tiny = "OSPDT"
-DISTRO_PN_ALIAS_pn-ltp = "Mandriva=ltp Ubuntu=ltp"
-DISTRO_PN_ALIAS_pn-lttng-modules = "OSPDT upstream=http://lttng.org/"
-DISTRO_PN_ALIAS_pn-lttng-tools = "OSPDT upstream=http://lttng.org/"
-DISTRO_PN_ALIAS_pn-lttng-ust = "OSPDT upstream=http://lttng.org/"
-DISTRO_PN_ALIAS_pn-lz4 = "Debian=lz4 Fedora=lz4"
-DISTRO_PN_ALIAS_pn-lzo = "Debian=liblzo Ubuntu=liblzo Fedora=lzp"
-DISTRO_PN_ALIAS_pn-mailx = "Debian=bsd-mailx Ubuntu=bsd-mailx"
-DISTRO_PN_ALIAS_pn-makedepend = "Mandriva=makedepend Ubuntu=xutils-dev"
-DISTRO_PN_ALIAS_pn-makedevs = "OE-Core"
-DISTRO_PN_ALIAS_pn-matchbox-config-gtk = "OpenedHand"
-DISTRO_PN_ALIAS_pn-matchbox-desktop = "Mandriva=matchbox-desktop Ubuntu=matchbox-desktop"
-DISTRO_PN_ALIAS_pn-matchbox-desktop-sato = "OpenedHand"
-DISTRO_PN_ALIAS_pn-matchbox-keyboard = "Debian=matchbox-keyboard Fedora=matchbox-keyboard"
-DISTRO_PN_ALIAS_pn-matchbox-panel-2 = "Debian=matchbox-panel Mandriva=matchbox-panel Ubuntu=matchbox-panel"
-DISTRO_PN_ALIAS_pn-matchbox-session = "OpenedHand"
-DISTRO_PN_ALIAS_pn-matchbox-session-sato = "OpenedHand"
-DISTRO_PN_ALIAS_pn-matchbox-terminal = "OpenedHand"
-DISTRO_PN_ALIAS_pn-matchbox-theme-sato = "OpenedHand"
-DISTRO_PN_ALIAS_pn-matchbox-themes-extra = "Ubuntu=matchbox-themes-extra Mandriva=matchbox-themes-extra"
-DISTRO_PN_ALIAS_pn-matchbox-themes-gtk = "OpenedHand"
-DISTRO_PN_ALIAS_pn-matchbox-wm = "OpenedHand"
-DISTRO_PN_ALIAS_pn-menu-cache = "OSPDT"
-DISTRO_PN_ALIAS_pn-mesa = "Fedora=mesa Ubuntu=libgl1-mesa-dri"
-DISTRO_PN_ALIAS_pn-mesa-gl = "Fedora=mesa Ubuntu=libgl1-mesa-dri"
-DISTRO_PN_ALIAS_pn-meta-environment-extsdk-qemux86 = "OE-Core"
-DISTRO_PN_ALIAS_pn-meta-environment-i586 = "OE-Core"
-DISTRO_PN_ALIAS_pn-meta-environment-qemux86 = "OE-Core"
-DISTRO_PN_ALIAS_pn-meta-environment-qemux86-64 = "OE-Core"
-DISTRO_PN_ALIAS_pn-meta-ide-support = "OE-Core"
-DISTRO_PN_ALIAS_pn-meta-toolchain = "OE-Core"
-DISTRO_PN_ALIAS_pn-mini-x-session = "OSPDT"
-DISTRO_PN_ALIAS_pn-mkelfimage = "Ubuntu=mkelfimage Fedora=mkelfimage"
-DISTRO_PN_ALIAS_pn-mkfontdir = "Mandriva=mkfontdir Ubuntu=xfonts-utils Fedora=xorg-x11-font-utils"
-DISTRO_PN_ALIAS_pn-mkfontscale = "Mandriva=mkfontscale Ubuntu=xfonts-utils Fedora=xorg-x11-font-utils"
-DISTRO_PN_ALIAS_pn-mmc-utils = "OE-Core"
-DISTRO_PN_ALIAS_pn-modutils-initscripts = "OE-Core"
-DISTRO_PN_ALIAS_pn-mtd-utils = "Debian=mtd-utils Ubuntu=mtd-utils"
-DISTRO_PN_ALIAS_pn-mx-1.0 = "Ubuntu=mx Debian=mx Fedora=mx"
-DISTRO_PN_ALIAS_pn-neard = "Intel"
-DISTRO_PN_ALIAS_pn-neon = "Fedora=neon Opensuse=neon"
-DISTRO_PN_ALIAS_pn-network-suspend-scripts = "OE-Core"
-DISTRO_PN_ALIAS_pn-nfs-export-root = "OpenedHand"
-DISTRO_PN_ALIAS_pn-npth = "OSPDT"
-DISTRO_PN_ALIAS_pn-nss-myhostname = "Meego=nss-mdns OpenSuSE=nss-mdns Ubuntu=nss-mdns Mandriva=nss_mdns Debian=nss-mdns"
-DISTRO_PN_ALIAS_pn-ofono = "Debian=ofono Ubuntu=ofono"
-DISTRO_PN_ALIAS_pn-oh-puzzles = "OpenedHand"
-DISTRO_PN_ALIAS_pn-opkg = "OSPDT upstream=http://svn.openmoko.org/trunk/src/tar"
-DISTRO_PN_ALIAS_pn-opkg-arch-config = "OE-Core"
-DISTRO_PN_ALIAS_pn-opkg-collateral = "OE-Core"
-DISTRO_PN_ALIAS_pn-opkg-keyrings = "OSPDT upstream=git://git.yoctoproject.org/opkg-utils"
-DISTRO_PN_ALIAS_pn-opkg-nogpg = "OSPDT upstream=git://git.yoctoproject.org/opkg-utils"
-DISTRO_PN_ALIAS_pn-opkg-utils = "OSPDT upstream=git://git.yoctoproject.org/opkg-utils"
-DISTRO_PN_ALIAS_pn-os-release = "OE-Core"
-DISTRO_PN_ALIAS_pn-packagegroup-base = "OE-Core"
-DISTRO_PN_ALIAS_pn-packagegroup-core = "OE-Core"
-DISTRO_PN_ALIAS_pn-packagegroup-core-boot = "OE-Core"
-DISTRO_PN_ALIAS_pn-packagegroup-core-buildessential = "OE-Core"
-DISTRO_PN_ALIAS_pn-packagegroup-core-device-devel = "OE-Core"
-DISTRO_PN_ALIAS_pn-packagegroup-core-eclipse-debug = "OE-Core"
-DISTRO_PN_ALIAS_pn-packagegroup-core-full-cmdline = "OE-Core"
-DISTRO_PN_ALIAS_pn-packagegroup-core-nfs = "OE-Core"
-DISTRO_PN_ALIAS_pn-packagegroup-core-sdk = "OE-Core"
-DISTRO_PN_ALIAS_pn-packagegroup-core-ssh-dropbear = "OE-Core"
-DISTRO_PN_ALIAS_pn-packagegroup-core-ssh-openssh = "OE-Core"
-DISTRO_PN_ALIAS_pn-packagegroup-core-standalone-sdk-target = "OE-Core"
-DISTRO_PN_ALIAS_pn-packagegroup-core-tools = "OE-Core"
-DISTRO_PN_ALIAS_pn-packagegroup-core-tools-debug = "OE-Core"
-DISTRO_PN_ALIAS_pn-packagegroup-core-tools-profile = "OE-Core"
-DISTRO_PN_ALIAS_pn-packagegroup-core-tools-testapps = "OE-Core"
-DISTRO_PN_ALIAS_pn-packagegroup-core-x11 = "OE-Core"
-DISTRO_PN_ALIAS_pn-packagegroup-core-x11-base = "OE-Core"
-DISTRO_PN_ALIAS_pn-packagegroup-core-x11-mini = "OE-Core"
-DISTRO_PN_ALIAS_pn-packagegroup-core-x11-sato = "OE-Core"
-DISTRO_PN_ALIAS_pn-packagegroup-core-x11-xserver = "OE-Core"
-DISTRO_PN_ALIAS_pn-packagegroup-cross-canadian-i586 = "OE-Core"
-DISTRO_PN_ALIAS_pn-packagegroup-cross-canadian-qemux86 = "OE-Core"
-DISTRO_PN_ALIAS_pn-packagegroup-cross-canadian-qemux86-64 = "OE-Core"
-DISTRO_PN_ALIAS_pn-packagegroup-sdk-host = "OE-Core"
-DISTRO_PN_ALIAS_pn-packagegroup-self-hosted = "OE-Core"
-DISTRO_PN_ALIAS_pn-package-index = "OE-Core"
-DISTRO_PN_ALIAS_pn-patchelf = "Opensuse=patchelf Fedora=patchelf"
-DISTRO_PN_ALIAS_pn-perf = "OSPDT"
-DISTRO_PN_ALIAS_pn-piglit = "OE-Core"
-DISTRO_PN_ALIAS_pn-pkgconfig = "Ubuntu=pkg-config Fedora=pkgconfig"
-DISTRO_PN_ALIAS_pn-pointercal-xinput = "OE-Core"
-DISTRO_PN_ALIAS_pn-pong-clock = "OpenedHand"
-DISTRO_PN_ALIAS_pn-portmap = "Debian=rpcbind Fedora=rpcbind"
-DISTRO_PN_ALIAS_pn-powertop = "Meego=powertop Fedora=powertop Debian=powertop OpenSuSE=powertop Mandriva=powertop"
-DISTRO_PN_ALIAS_pn-ppp-dialin = "OE-Core"
-DISTRO_PN_ALIAS_pn-pseudo = "Windriver"
-DISTRO_PN_ALIAS_pn-psplash = "OpenedHand"
-DISTRO_PN_ALIAS_pn-ptest-runner = "OE-Core"
-DISTRO_PN_ALIAS_pn-pulseaudio-client-conf-sato = "OE-Core"
-DISTRO_PN_ALIAS_pn-puzzles = "Debian=sgt-puzzles Fedora=puzzles"
-DISTRO_PN_ALIAS_pn-python3 = "Fedora=python3 Debian=python3.2"
-DISTRO_PN_ALIAS_pn-python3-iniparse = "Fedora=python-iniparse Debian=python-iniparse"
-DISTRO_PN_ALIAS_pn-python3-pip = "OpenSuSE=python3-pip Debian=python3-pip"
-DISTRO_PN_ALIAS_pn-python3-pycurl = "Fedora=python-pycurl Debian=pycurl"
-DISTRO_PN_ALIAS_pn-python3-pygpgme = "Fedora=python-pygpgme Debian=pygpgme"
-DISTRO_PN_ALIAS_pn-python3-setuptools = "OpenSuSE=python3-setuptools Debian=python3-setuptools"
-DISTRO_PN_ALIAS_pn-python-dbus = "Ubuntu=python-dbus Debian=python-dbus Mandriva=python-dbus"
-DISTRO_PN_ALIAS_pn-python-git = "Debian=python-git Fedora=GitPython"
-DISTRO_PN_ALIAS_pn-python-mako = "Fedora=python-mako Opensuse=python-Mako"
-DISTRO_PN_ALIAS_pn-python-pycairo = "Meego=pycairo Fedora=pycairo Ubuntu=pycairo Debian=pycairo"
-DISTRO_PN_ALIAS_pn-python-pygobject = "Meego=pygobject2 Fedora=pygobject2 Ubuntu=pygobject Debian=pygobject"
-DISTRO_PN_ALIAS_pn-python-scons = "Fedora=scons OpenSuSE=scons Ubuntu=scons Mandriva=scons Debian=scons"
-DISTRO_PN_ALIAS_pn-python-setuptools = "Mandriva=python-setup OpenSuSE=python-setup-git"
-DISTRO_PN_ALIAS_pn-python-smartpm = "Debian=smart OpenSuSE=smart"
-DISTRO_PN_ALIAS_pn-qemu-config = "OpenedHand"
-DISTRO_PN_ALIAS_pn-qemugl = "OpenedHand"
-DISTRO_PN_ALIAS_pn-qemu-helper = "OpenedHand"
-DISTRO_PN_ALIAS_pn-qemuwrapper-cross = "OE-Core"
-DISTRO_PN_ALIAS_pn-readline = "Fedora=readline Debian=readline-common"
-DISTRO_PN_ALIAS_pn-remake = "Mandriva=remake Debian=remake"
-DISTRO_PN_ALIAS_pn-rgb = "Fedora=xorg-X11-server-utils Debian=x11-xserver-utils"
-DISTRO_PN_ALIAS_pn-rpmresolve = "OSPDT"
-DISTRO_PN_ALIAS_pn-rt-tests = "Debian=rt-tests Ubuntu=rt-tests"
-DISTRO_PN_ALIAS_pn-run-postinsts = "OE-Core"
-DISTRO_PN_ALIAS_pn-sato-icon-theme = "OpenedHand"
-DISTRO_PN_ALIAS_pn-sato-screenshot = "OpenedHand"
-DISTRO_PN_ALIAS_pn-sbc = "Fedora=sbc Debian=libsbc1"
-DISTRO_PN_ALIAS_pn-screenshot = "OpenedHand"
-DISTRO_PN_ALIAS_pn-settings-daemon = "OpenedHand"
-DISTRO_PN_ALIAS_pn-sgml-common = "OpenSuSE=sgml-common Fedora=sgml-common"
-DISTRO_PN_ALIAS_pn-sgmlspl = "Debian=sgmlspl Ubuntu=sgmlspl"
-DISTRO_PN_ALIAS_pn-shadow-securetty = "Ubuntu=shadow Fedora=shadow"
-DISTRO_PN_ALIAS_pn-shadow-sysroot = "Ubuntu=shadow Fedora=shadow"
-DISTRO_PN_ALIAS_pn-shutdown-desktop = "OpenedHand"
-DISTRO_PN_ALIAS_pn-speexdsp = "Ubuntu=libspeexdsp1 Fedora=speexdsp"
-DISTRO_PN_ALIAS_pn-stat = "Debian=coreutils Fedora=coreutils"
-DISTRO_PN_ALIAS_pn-stress = "Debian=stress Fedora=stress"
-DISTRO_PN_ALIAS_pn-sysklogd = "Debian=sysklogd Mandriva=sysklogd"
-DISTRO_PN_ALIAS_pn-sysprof = "Fedora=sysprof Debian=sysprof"
-DISTRO_PN_ALIAS_pn-systemd-compat-units = "Fedora=systemd Ubuntu=systemd"
-DISTRO_PN_ALIAS_pn-systemd-systemctl = "OE-Core"
-DISTRO_PN_ALIAS_pn-systemd-systemdctl = "Fedora=systemd Ubuntu=systemd"
-DISTRO_PN_ALIAS_pn-systemtap-uprobes = "Ubuntu=systemtap Debian=systemtap"
-DISTRO_PN_ALIAS_pn-sysvinit-inittab = "OE-Core"
-DISTRO_PN_ALIAS_pn-tar-replacement = "Fedora=tar Ubuntu=tar"
-DISTRO_PN_ALIAS_pn-tcf-agent = "Windriver upstream=http://www.eclipse.org/dsdp/tm/"
-DISTRO_PN_ALIAS_pn-texinfo-dummy-native = "OE-Core"
-DISTRO_PN_ALIAS_pn-tiny-init = "OSPDT"
-DISTRO_PN_ALIAS_pn-tremor = "OSPDT upstream=http://www.xiph.org/vorbis/"
-DISTRO_PN_ALIAS_pn-ttf-bitstream-vera = "Debian=ttf-bitstream-vera Ubuntu=ttf-bitstream-vera"
-DISTRO_PN_ALIAS_pn-tzcode = "OSPDT"
-DISTRO_PN_ALIAS_pn-u-boot-fw-utils = "Ubuntu=u-boot-tools Debian=u-boot-tools"
-DISTRO_PN_ALIAS_pn-u-boot-tools = "Ubuntu=u-boot-tools Debian=uboot-tools"
-DISTRO_PN_ALIAS_pn-udev = "Mandriva=udev Fedora=udev"
-DISTRO_PN_ALIAS_pn-udev-extraconf = "OE-Core"
-DISTRO_PN_ALIAS_pn-unfs3 = "Debian=unfs3 Fedora=unfs3"
-DISTRO_PN_ALIAS_pn-unfs-server = "OE-Core"
-DISTRO_PN_ALIAS_pn-uninative-tarball = "OE-Core"
-DISTRO_PN_ALIAS_pn-update-alternatives-dpkg = "Opensuse=update-alternatives Mandriva=update-alternatives"
-DISTRO_PN_ALIAS_pn-update-rc.d = "OE-Core"
-DISTRO_PN_ALIAS_pn-usbinit = "OE-Core"
-DISTRO_PN_ALIAS_pn-util-macros = "Meego=xorg-x11-util-macros Fedora=xorg-x11-util-macros Mandriva=x11-util-macros"
-DISTRO_PN_ALIAS_pn-v86d = "Debian=v86d Ubuntu=v86d"
-DISTRO_PN_ALIAS_pn-waffle = "OE-Core"
-DISTRO_PN_ALIAS_pn-watchdog = "Debian=watchdog Ubuntu=watchdog Mandriva=watchdog"
-DISTRO_PN_ALIAS_pn-webkitgtk = "Fedora=webkitgtk Ubuntu=libwebkit"
-DISTRO_PN_ALIAS_pn-weston = "Fedora=weston OpenSuSE=weston"
-DISTRO_PN_ALIAS_pn-weston-init = "OE-Core"
-DISTRO_PN_ALIAS_pn-which = "Mandriva=which Fedora=which"
-DISTRO_PN_ALIAS_pn-wpa-supplicant = "Meego=wpa_supplicant Fedora=wpa_supplicant OpenSuSE=wpa_supplicant Ubuntu=wpasupplicant Mandriva=wpa_supplicant Debian=wpasupplicant"
-DISTRO_PN_ALIAS_pn-x11perf = "Fedora=xorg-x11-apps Ubuntu=x11-apps"
-DISTRO_PN_ALIAS_pn-xcb-util-image = "Debian=xcb-util Fedora=xcb-util"
-DISTRO_PN_ALIAS_pn-xcb-util-keysyms = "Debian=xcb-util Fedora=xcb-util"
-DISTRO_PN_ALIAS_pn-xcb-util-wm = "Debian=xcb-util Fedora=xcb-util"
-DISTRO_PN_ALIAS_pn-xcursor-transparent-theme = "OpenedHand"
-DISTRO_PN_ALIAS_pn-xdpyinfo = "Fedora=xorg-x11-utils Ubuntu=x11-utils"
-DISTRO_PN_ALIAS_pn-xev = "Fedora=xorg-x11-utils Ubuntu=x11-utils"
-DISTRO_PN_ALIAS_pn-xeyes = "Ubuntu=x11-apps Fedora=xorg-x11-apps"
-DISTRO_PN_ALIAS_pn-xf86-input-evdev = "Ubuntu=xserver-xorg-input-evdev Mandriva=x11-driver-input-evdev Debian=xserver-xorg-input-evdev Fedora=xorg-x11-drv-evdev Meego=xorg-x11-drv-evdev"
-DISTRO_PN_ALIAS_pn-xf86-input-keyboard = "Meego=xorg-x11-drv-keyboard Fedora=xorg-x11-drv-keyboard Mandriva=x11-driver-input-keyboard Debian=xserver-xorg-input-keyboard"
-DISTRO_PN_ALIAS_pn-xf86-input-mouse = "Ubuntu=xserver-xorg-input-mouse Mandriva=x11-driver-input-mouse Debian=xserver-xorg-input-mouse"
-DISTRO_PN_ALIAS_pn-xf86-input-synaptics = "Meego=xorg-x11-drv-synaptics Fedora=xorg-x11-drv-synaptics Ubuntu=xserver-xorg-input-synaptics Mandriva=x11-driver-input-synaptics Debian=xfree86-driver-synaptics"
-DISTRO_PN_ALIAS_pn-xf86-input-vmmouse = "Fedora=xorg-x11-drv-vmmouse Ubuntu=xserver-xorg-input-vmmouse Mandriva=x11-driver-input-vmmouse Debian=xserver-xorg-input-vmmouse"
-DISTRO_PN_ALIAS_pn-xf86-video-cirrus = "Opensuse=xf86-video-cirrus Debian=xserver-xorg-video-cirrus"
-DISTRO_PN_ALIAS_pn-xf86-video-fbdev = "Ubuntu=xserver-xorg-video-fbdev Debian=xserver-xorg-video-fbdev"
-DISTRO_PN_ALIAS_pn-xf86-video-intel = "Debian=xserver-xorg-video-intel Fedora=xorg-x11-drv-intel Mandriva=x11-driver-video-intel Meego=xorg-x11-drv-intel Ubuntu=xserver-xorg-video-intel"
-DISTRO_PN_ALIAS_pn-xf86-video-modesetting = "Debian=xserver-xorg-video-modesetting Fedora=xf86-video-modesetting"
-DISTRO_PN_ALIAS_pn-xf86-video-omap = "Ubuntu=xf86-video-omap Debian=xf86-video-omap"
-DISTRO_PN_ALIAS_pn-xf86-video-omapfb = "OSPDT"
-DISTRO_PN_ALIAS_pn-xf86-video-vesa = "Debian=xserver-xorg-video-vesa Fedora=xorg-x11-drv-vesa Mandriva=x11-driver-video-vesa Ubuntu=xserver-xorg-video-vesa"
-DISTRO_PN_ALIAS_pn-xf86-video-vmware = "Debian=xserver-xorg-video-vmware Fedora=xorg-x11-drv-vmware Mandriva=x11-driver-video-vmware Ubuntu=xserver-xorg-video-vmware"
-DISTRO_PN_ALIAS_pn-xhost = "Ubuntu=x11-xserver-utils Fedora=xorg-x11-server-utils"
-DISTRO_PN_ALIAS_pn-xinput-calibrator = "Fedora=xinput-calibrator Mandravia=xinput-calibrator Ubuntu=xinput-calibrator"
-DISTRO_PN_ALIAS_pn-xkbcomp = "Ubuntu=x11-xkb-utils Fedora=xorg-x11-xkb-utils"
-DISTRO_PN_ALIAS_pn-xmodmap = "Meego=xorg-x11-utils-xmodmap Fedora=xorg-x11-server-utils Ubuntu=x11-xserver-utils"
-DISTRO_PN_ALIAS_pn-xorg-minimal-fonts = "Ubuntu=xfonts-base Fedora=xorg-x11-fonts-base"
-DISTRO_PN_ALIAS_pn-xorgproto = "OSPDT upstream=http://cgit.freedesktop.org/xorg/proto/xorgproto"
-DISTRO_PN_ALIAS_pn-xprop = "Meego=xorg-x11-utils-xprop Fedora=xorg-x11-utils Ubuntu=x11-utils"
-DISTRO_PN_ALIAS_pn-xproxymanagementprotocol = "Meego=xorg-x11-proto-xproxymanagementprotocol"
-DISTRO_PN_ALIAS_pn-xrandr = "Ubuntu=x11-xserver-utils Fedora=xorg-x11-server-utils"
-DISTRO_PN_ALIAS_pn-xrdb = "Ubuntu=x11-xserver-utils Fedora=xorg-x11-server-utils"
-DISTRO_PN_ALIAS_pn-xserver-nodm-init = "OE-Core"
-DISTRO_PN_ALIAS_pn-xserver-xf86-config = "OE-Core"
-DISTRO_PN_ALIAS_pn-xserver-xf86-dri-lite = "Fedora=xorg-x11-server Ubuntu=xserver-xorg"
-DISTRO_PN_ALIAS_pn-xserver-xf86-lite = "Fedora=xorg-x11-server Ubuntu=xserver-xorg"
-DISTRO_PN_ALIAS_pn-xserver-xorg = "Fedora=xorg-x11-server Ubuntu=xserver-xorg"
-DISTRO_PN_ALIAS_pn-xset = "Fedora=xorg-x11-server-utils Ubuntu=x11-xserver-utils Debian=x11-xserver-utils Opensuse=xorg-x11"
-DISTRO_PN_ALIAS_pn-xuser-account = "OE-Core"
-DISTRO_PN_ALIAS_pn-xvinfo = "Fedora=xorg-x11-utils Ubuntu=x11-utils"
-DISTRO_PN_ALIAS_pn-xwininfo = "Fedora=xorg-x11-utils Ubuntu=x11-utils"
+DISTRO_PN_ALIAS:pn-alsa-state = "OE-Core"
+DISTRO_PN_ALIAS:pn-alsa-utils-alsaconf = "OE-Core"
+DISTRO_PN_ALIAS:pn-alsa-utils-scripts = "OE-Core"
+DISTRO_PN_ALIAS:pn-atk = "Fedora=atk OpenSuSE=atk"
+DISTRO_PN_ALIAS:pn-avahi-ui = "Ubuntu=avahi-discover Debian=avahi-discover"
+DISTRO_PN_ALIAS:pn-babeltrace = "OSPDT"
+DISTRO_PN_ALIAS:pn-babeltrace2 = "OSPDT"
+DISTRO_PN_ALIAS:pn-bjam = "OpenSuSE=boost-jam Debian=bjam"
+DISTRO_PN_ALIAS:pn-blktool = "Debian=blktool Mandriva=blktool"
+DISTRO_PN_ALIAS:pn-bluez5 = "Fedora=bluez  Opensuse=bluez"
+DISTRO_PN_ALIAS:pn-bootchart2 = "Fedora=bootchart2 Opensuse=bootchart"
+DISTRO_PN_ALIAS:pn-btrfs-tools = "Debian=btrfs-tools Fedora=btrfs-progs"
+DISTRO_PN_ALIAS:pn-build-appliance-image = "OSPDT"
+DISTRO_PN_ALIAS:pn-builder = "OE-Core"
+DISTRO_PN_ALIAS:pn-buildtools-tarball = "OE-Core"
+DISTRO_PN_ALIAS:pn-cdrtools = "OpenSUSE=cdrtools OSPDT"
+DISTRO_PN_ALIAS:pn-chkconfig-alternatives = "Mandriva=chkconfig Debian=chkconfig"
+DISTRO_PN_ALIAS:pn-connman = "Meego=connman"
+DISTRO_PN_ALIAS:pn-connman-conf = "OE-Core"
+DISTRO_PN_ALIAS:pn-connman-gnome = "Intel"
+DISTRO_PN_ALIAS:pn-console-tools = "Debian=console-tools Ubuntu=console-tools"
+DISTRO_PN_ALIAS:pn-core-image-base = "OE-Core"
+DISTRO_PN_ALIAS:pn-core-image-full-cmdline = "OE-Core"
+DISTRO_PN_ALIAS:pn-core-image-kernel-dev = "OE-Core"
+DISTRO_PN_ALIAS:pn-core-image-minimal = "OE-Core"
+DISTRO_PN_ALIAS:pn-core-image-minimal-dev = "OE-Core"
+DISTRO_PN_ALIAS:pn-core-image-minimal-initramfs = "OE-Core"
+DISTRO_PN_ALIAS:pn-core-image-minimal-mtdutils = "OE-Core"
+DISTRO_PN_ALIAS:pn-core-image-rt = "OE-Core"
+DISTRO_PN_ALIAS:pn-core-image-rt-sdk = "OE-Core"
+DISTRO_PN_ALIAS:pn-core-image-sato = "OE-Core"
+DISTRO_PN_ALIAS:pn-core-image-sato-dev = "OE-Core"
+DISTRO_PN_ALIAS:pn-core-image-sato-sdk = "OE-Core"
+DISTRO_PN_ALIAS:pn-core-image-testmaster = "OE-Core"
+DISTRO_PN_ALIAS:pn-core-image-testmaster-initramfs = "OE-Core"
+DISTRO_PN_ALIAS:pn-core-image-weston = "OE-Core"
+DISTRO_PN_ALIAS:pn-core-image-x11 = "OE-Core"
+DISTRO_PN_ALIAS:pn-createrepo-c = "Fedora=createrepo_c Clear=createrepo_c"
+DISTRO_PN_ALIAS:pn-cross-localedef = "OSPDT"
+DISTRO_PN_ALIAS:pn-cryptodev-linux = "OE-Core"
+DISTRO_PN_ALIAS:pn-cryptodev-module = "OE-Core"
+DISTRO_PN_ALIAS:pn-cryptodev-tests = "OE-Core"
+DISTRO_PN_ALIAS:pn-cwautomacros = "OSPDT upstream=http://cwautomacros.berlios.de/"
+DISTRO_PN_ALIAS:pn-db = "Debian=db5.1 Ubuntu=db5.1"
+DISTRO_PN_ALIAS:pn-dbus-test = "Fedora=dbus Ubuntu=dbus"
+DISTRO_PN_ALIAS:pn-dbus-wait = "OpenedHand"
+DISTRO_PN_ALIAS:pn-depmodwrapper-cross = "OE-Core"
+DISTRO_PN_ALIAS:pn-distcc = "Debian=distcc Fedora=distcc"
+DISTRO_PN_ALIAS:pn-distcc-config = "OpenedHand"
+DISTRO_PN_ALIAS:pn-docbook-dsssl-stylesheets = "Fedora=docbook-style-dsssl Ubuntu=docbook-dsssl"
+DISTRO_PN_ALIAS:pn-docbook-sgml-dtd-3.1 = "Fedora=docbook-dtds Mandriva=docbook-dtd31-sgml"
+DISTRO_PN_ALIAS:pn-docbook-sgml-dtd-4.1 = "Fedora=docbook-dtds Mandriva=docbook-dtd41-sgml"
+DISTRO_PN_ALIAS:pn-docbook-sgml-dtd-4.5 = "Fedora=docbook-dtds Mandriva=docbook-dtd42-sgml"
+DISTRO_PN_ALIAS:pn-docbook-xml-dtd4 = "Ubuntu=docbook-xml Fedora=docbook-dtds"
+DISTRO_PN_ALIAS:pn-docbook-xml-dtd4-native = "Ubuntu=docbook-xml Fedora=docbook-dtds"
+DISTRO_PN_ALIAS:pn-docbook-xsl-stylesheets = "Fedora=docbook-xsl-stylesheets Opensuse=docbook-xsl-stylesheets"
+DISTRO_PN_ALIAS:pn-dropbear = "Debian=dropbear Ubuntu=dropbear"
+DISTRO_PN_ALIAS:pn-dtc = "Fedora=dtc Ubuntu=dtc"
+DISTRO_PN_ALIAS:pn-encodings = "Ubuntu=xfonts-encodings Mandriva=x11-font-encodings Debian=xfonts-encodings"
+DISTRO_PN_ALIAS:pn-font-alias = "Fedora=xorg-x11-fonts-base Mandriva=x11-font-alias Meego=xorg-x11-fonts"
+DISTRO_PN_ALIAS:pn-font-util = "Meego=xorg-x11-font-utils Fedora=xorg-x11-font-utils Ubuntu=xfonts-utils Mandriva=x11-font-util Debian=xfonts-utils"
+DISTRO_PN_ALIAS:pn-formfactor = "OE-Core"
+DISTRO_PN_ALIAS:pn-gccmakedep = "Mandriva=gccmakedep Ubuntu=xutils-dev"
+DISTRO_PN_ALIAS:pn-gcc-runtime = "Ubuntu=gcc Fedora=gcc"
+DISTRO_PN_ALIAS:pn-gcc-sanitizers = "Ubuntu=gcc Fedora=gcc"
+DISTRO_PN_ALIAS:pn-gcc-source = "Ubuntu=gcc Fedora=gcc"
+DISTRO_PN_ALIAS:pn-gconf-dbus = "Meego=GConf-dbus"
+DISTRO_PN_ALIAS:pn-gdk-pixbuf = "Debian=libgdk-pixbuf2.0 Fedora=gdk-pixbuf"
+DISTRO_PN_ALIAS:pn-gdk-pixbuf-csource = "Debian=libgdk-pixbuf2.0-0 Fedora=gdk-pixbuf2"
+DISTRO_PN_ALIAS:pn-gettext-minimal = "Debian=gettext Fedora=gettext"
+DISTRO_PN_ALIAS:pn-glib-2.0 = "Meego=glib2 Fedora=glib2 OpenSuSE=glib2 Ubuntu=glib2.0 Mandriva=glib2.0 Debian=glib2.0"
+DISTRO_PN_ALIAS:pn-glibc-locale = "OpenSuSE=glibc-locale Fedora=glibc-devel"
+DISTRO_PN_ALIAS:pn-glibc-mtrace = "Fedora=glibc-utils Ubuntu=libc-dev-bin"
+DISTRO_PN_ALIAS:pn-glibc-scripts = "Fedora=glibc Ubuntu=libc-bin"
+DISTRO_PN_ALIAS:pn-gnome-desktop-testing = "Debian=gnome-desktop-testing Fedora=gnome-desktop-testing"
+DISTRO_PN_ALIAS:pn-gnu-config = "OpenedHand"
+DISTRO_PN_ALIAS:pn-gptfdisk = "Fedora=gdisk Ubuntu=gdisk"
+DISTRO_PN_ALIAS:pn-grub-efi = "Debian=grub-efi Fedora=grub2-efi"
+DISTRO_PN_ALIAS:pn-gst-player = "Ubuntu=gst-player Fedora=gstreamer-player"
+DISTRO_PN_ALIAS:pn-gst-plugin-bluetooth = "Ubuntu=libgstreamer-plugins-base Fedora=gstreamer-plugins-base"
+DISTRO_PN_ALIAS:pn-gstreamer1.0 = "Debian=gstreamer1.0 Ubuntu=gstreamer1.0"
+DISTRO_PN_ALIAS:pn-gstreamer1.0-meta-base = "Meego=gstreamer Fedora=gstreamer OpenSuSE=gstreamer Ubuntu=gstreamer0.10"
+DISTRO_PN_ALIAS:pn-gstreamer1.0-plugins-bad = "Debian=gstreamer1.0-plugins-bad Ubuntu=gstreamer1.0-plugins-bad"
+DISTRO_PN_ALIAS:pn-gstreamer1.0-plugins-base = "Debian=gstreamer1.0-plugins-base Ubuntu=gstreamer1.0-plugins-base"
+DISTRO_PN_ALIAS:pn-gstreamer1.0-plugins-good = "Debian=gstreamer1.0-plugins-good Ubuntu=gstreamer1.0-plugins-bad"
+DISTRO_PN_ALIAS:pn-gstreamer1.0-rtsp-server = "Ubuntu=gstreamer0.10-rtsp Fedora=gstreamer-rtsp"
+DISTRO_PN_ALIAS:pn-gstreamer1.0-vaapi = "Fedora=gstreamer1-vaapi Debian=gstreamer-vaapi Clear=gstreamer-vaapi"
+DISTRO_PN_ALIAS:pn-gtk+ = "Meego=gtk2 Fedora=gtk2 OpenSuSE=gtk2 Ubuntu=gtk+2.0 Mandriva=gtk+2.0 Debian=gtk+2.0"
+DISTRO_PN_ALIAS:pn-gtk+3 = "Ubuntu=gtk+3.0 Debian=gtk+3.0 Fedora=gtk3"
+DISTRO_PN_ALIAS:pn-gtk-doc = "Fedora=gtk-doc Ubuntu=gtk-doc"
+DISTRO_PN_ALIAS:pn-gtk-engines = "Fedora=gtk2-engines OpenSuSE=gtk2-engines Ubuntu=gtk2-engines Mandriva=gtk-engines2 Debian=gtk2-engines"
+DISTRO_PN_ALIAS:pn-gtk-sato-engine = "OpenedHand"
+DISTRO_PN_ALIAS:pn-gtk-icon-utils-native = "OSPDT"
+DISTRO_PN_ALIAS:pn-systemd-boot = "Ubuntu=systemd-boot Fedora=systemd-boot"
+DISTRO_PN_ALIAS:pn-hello-mod = "OE-Core"
+DISTRO_PN_ALIAS:pn-hwlatdetect = "OSPDT"
+DISTRO_PN_ALIAS:pn-icecc-create-env = "OE-Core"
+DISTRO_PN_ALIAS:pn-init-ifupdown = "Debian=ifupdown Ubuntu=ifupdown"
+DISTRO_PN_ALIAS:pn-initramfs-boot = "OE-Core"
+DISTRO_PN_ALIAS:pn-initramfs-framework = "OE-Core"
+DISTRO_PN_ALIAS:pn-initramfs-live-boot = "OE-Core"
+DISTRO_PN_ALIAS:pn-initramfs-live-install = "OE-Core"
+DISTRO_PN_ALIAS:pn-initramfs-live-install-efi = "OE-Core"
+DISTRO_PN_ALIAS:pn-initramfs-live-install-efi-testfs = "OE-Core"
+DISTRO_PN_ALIAS:pn-initramfs-live-install-testfs = "OE-Core"
+DISTRO_PN_ALIAS:pn-initscripts = "Fedora=initscripts Mandriva=initscripts"
+DISTRO_PN_ALIAS:pn-iproute2 = "OSPDT"
+DISTRO_PN_ALIAS:pn-jpeg = "OpenSuSE=libjpeg Ubuntu=libjpeg62"
+DISTRO_PN_ALIAS:pn-kernel-devsrc = "Debian=linux-base Ubuntu=linux"
+DISTRO_PN_ALIAS:pn-kern-tools-native = "Windriver"
+DISTRO_PN_ALIAS:pn-keymaps = "OE-Core"
+DISTRO_PN_ALIAS:pn-kf = "OSPDT"
+DISTRO_PN_ALIAS:pn-lame = "Debian=lame Ubuntu=lame"
+DISTRO_PN_ALIAS:pn-ldconfig-native = "Ubuntu=libc-bin Fedora=glibc"
+DISTRO_PN_ALIAS:pn-liba52 = "Mandriva=a52dec Debian=a52dec"
+DISTRO_PN_ALIAS:pn-libacpi = "Ubuntu=libacpi Mandriva=libacpi"
+DISTRO_PN_ALIAS:pn-libatomics-ops = "Meego=libatomic-ops Debian=libatomic-ops Ubuntu=libatomic-ops OpenSuSE=libatomic-ops Mandriva=libatomic-ops"
+DISTRO_PN_ALIAS:pn-libcgroup = "Ubuntu=libcgroup1 Debian=libcgroup1"
+DISTRO_PN_ALIAS:pn-libcheck = "Ubuntu=check Fedora=check OpenSuSE=check"
+DISTRO_PN_ALIAS:pn-libclass-isa-perl = "OSPDT"
+DISTRO_PN_ALIAS:pn-libdumpvalue-perl = "OSPDT"
+DISTRO_PN_ALIAS:pn-libenv-perl = "OSPDT"
+DISTRO_PN_ALIAS:pn-liberation-fonts = "Ubuntu=fonts-liberation Fedora=liberation-fonts-ttf"
+DISTRO_PN_ALIAS:pn-libfakekey = "Meego1.0=libfakekey Debian=libfakekey"
+DISTRO_PN_ALIAS:pn-libfile-checktree-perl = "OSPDT"
+DISTRO_PN_ALIAS:pn-libfm-extra = "Opensuse=libfm-extra4 Ubuntu=libfm-extra4"
+DISTRO_PN_ALIAS:pn-libgcc = "Debian=libgcc4 Ubuntu=libgcc1 OpenSuSE=libgcc46"
+DISTRO_PN_ALIAS:pn-libgdbus = "Intel"
+DISTRO_PN_ALIAS:pn-libglade = "Meego=libglade2 Fedora=libglade2 OpenSuSE=libglade2 Ubuntu=libglade2 Mandriva=libglade2.0 Debian=libglade2"
+DISTRO_PN_ALIAS:pn-libglu = "Debian=libglu Ubuntu=libglu Opensuse=mesa-libglu"
+DISTRO_PN_ALIAS:pn-libgu = "OpenSuSE=glu OSPDT"
+DISTRO_PN_ALIAS:pn-libi18n-collate-perl = "OSPDT"
+DISTRO_PN_ALIAS:pn-libical = "Ubuntu=libical Fedora=libical"
+DISTRO_PN_ALIAS:pn-libiconv = "Fedora=mingw-libiconv Opensuse=cross-mingw-libiconv"
+DISTRO_PN_ALIAS:pn-libinput = "Ubuntu=libinput0 Fedora=libinput0"
+DISTRO_PN_ALIAS:pn-libjson = "Ubuntu=libjson0-dev Debian=libjson0-dev"
+DISTRO_PN_ALIAS:pn-libksba = "Fedora=libksba Debian=libksba8 Ubuntu=libksba"
+DISTRO_PN_ALIAS:pn-libmatchbox = "Ubuntu=libmatchbox Fedora=libmatchbox"
+DISTRO_PN_ALIAS:pn-libmpc = "Fedora=libmpc OpenSuse=libmpc2"
+DISTRO_PN_ALIAS:pn-libnewt = "Debian=libnewt0.52 Fedora=newt"
+DISTRO_PN_ALIAS:pn-libnewt-python = "Ubuntu=python-newt Fedora=newt-python"
+DISTRO_PN_ALIAS:pn-libnl = "Mandriva=libnl Fedora=libnl"
+DISTRO_PN_ALIAS:pn-libnss-mdns = "Meego=nss-mdns OpenSuSE=nss-mdns Ubuntu=nss-mdns Mandriva=nss_mdns Debian=nss-mdns"
+DISTRO_PN_ALIAS:pn-libomxil = "OSPDT upstream=http://omxil.sourceforge.net/"
+DISTRO_PN_ALIAS:pn-libowl = "Debian=owl OpenedHand"
+DISTRO_PN_ALIAS:pn-libpam = "Meego=pam Fedora=pam OpenSuSE=pam Ubuntu=pam Mandriva=pam Debian=pam"
+DISTRO_PN_ALIAS:pn-libpcre = "Mandriva=libpcre0 Fedora=pcre"
+DISTRO_PN_ALIAS:pn-libpcre2 = "Fedora=pcre2 Debian=pcre2 Clear=pcre2"
+DISTRO_PN_ALIAS:pn-libpng12 = "Debian=libpng12-0 Fedora=libpng"
+DISTRO_PN_ALIAS:pn-libpod-plainer-perl = "OSPDT"
+DISTRO_PN_ALIAS:pn-libsamplerate0 = "Meego=libsamplerate Fedora=libsamplerate OpenSuSE=libsamplerate Ubuntu=libsamplerate Mandriva=libsamplerate Debian=libsamplerate"
+DISTRO_PN_ALIAS:pn-libsdl2 = "Fedora=sdl2 Opensuse=libsdl2 Ubuntu=libsdl2 Debian=libsdl2"
+DISTRO_PN_ALIAS:pn-libsndfile1 = "Meego=libsndfile Fedora=libsndfile OpenSuSE=libsndfile Ubuntu=libsndfile Mandriva=libsndfile Debian=libsndfile"
+DISTRO_PN_ALIAS:pn-libsoup-2.4 = "Meego=libsoup Fedora=libsoup OpenSuSE=libsoup Ubuntu=libsoup2.4 Mandriva=libsoup Debian=libsoup2.4"
+DISTRO_PN_ALIAS:pn-libtelepathy = "Debian=libtelepathy2 Ubuntu=libtelepathy2"
+DISTRO_PN_ALIAS:pn-libtimedate-perl = "Debian=libtimedate-perl Ubuntu=libtimedate-perl"
+DISTRO_PN_ALIAS:pn-liburcu = "Fedora=userspace-rcu Ubuntu=liburcu0"
+DISTRO_PN_ALIAS:pn-libusb1 = "Debian=libusb-1.0-0 Fedora=libusb1"
+DISTRO_PN_ALIAS:pn-libx11 = "Debian=libx11-6 Fedora=libX11 Ubuntu=libx11-6 OpenSuSE=xorg-x11-libX11"
+DISTRO_PN_ALIAS:pn-libxcalibrate = "OSPDT upstream=http://cgit.freedesktop.org/xorg/lib/libXCalibrate/"
+DISTRO_PN_ALIAS:pn-libxfont2 = "Fedora=libXfont2 Clear=libXfont2"
+DISTRO_PN_ALIAS:pn-libxft = "Mandriva=libxft Debian=libxft2 Ubuntu=libxft2"
+DISTRO_PN_ALIAS:pn-libxi = "Ubuntu=libxi Fedora=libXi"
+DISTRO_PN_ALIAS:pn-libxkbcommon = "Fedora=libxkbcommon Debian=libxkbcommon"
+DISTRO_PN_ALIAS:pn-libxscrnsaver = "Fedora=libXScrnSaver Ubuntu=libxss1 Mandriva=libxscrnsaver"
+DISTRO_PN_ALIAS:pn-linux-dummy = "Intel"
+DISTRO_PN_ALIAS:pn-linux-firmware = "Fedora=linux-firmware Ubuntu=linux-firmware"
+DISTRO_PN_ALIAS:pn-linux-libc-headers = "Debian=linux-kernel-headers Ubuntu=linux-kernel-headers"
+DISTRO_PN_ALIAS:pn-linux-libc-headers-yocto = "Debian=linux-kernel-headers Ubuntu=linux-kernel-headers"
+DISTRO_PN_ALIAS:pn-linux-yocto = "Debian=linux-base Ubuntu=linux"
+DISTRO_PN_ALIAS:pn-linux-yocto-rt = "Debian=linux-base Ubuntu=linux"
+DISTRO_PN_ALIAS:pn-linux-yocto-tiny = "OSPDT"
+DISTRO_PN_ALIAS:pn-ltp = "Mandriva=ltp Ubuntu=ltp"
+DISTRO_PN_ALIAS:pn-lttng-modules = "OSPDT upstream=http://lttng.org/"
+DISTRO_PN_ALIAS:pn-lttng-tools = "OSPDT upstream=http://lttng.org/"
+DISTRO_PN_ALIAS:pn-lttng-ust = "OSPDT upstream=http://lttng.org/"
+DISTRO_PN_ALIAS:pn-lz4 = "Debian=lz4 Fedora=lz4"
+DISTRO_PN_ALIAS:pn-lzo = "Debian=liblzo Ubuntu=liblzo Fedora=lzp"
+DISTRO_PN_ALIAS:pn-mailx = "Debian=bsd-mailx Ubuntu=bsd-mailx"
+DISTRO_PN_ALIAS:pn-makedepend = "Mandriva=makedepend Ubuntu=xutils-dev"
+DISTRO_PN_ALIAS:pn-makedevs = "OE-Core"
+DISTRO_PN_ALIAS:pn-matchbox-config-gtk = "OpenedHand"
+DISTRO_PN_ALIAS:pn-matchbox-desktop = "Mandriva=matchbox-desktop Ubuntu=matchbox-desktop"
+DISTRO_PN_ALIAS:pn-matchbox-desktop-sato = "OpenedHand"
+DISTRO_PN_ALIAS:pn-matchbox-keyboard = "Debian=matchbox-keyboard Fedora=matchbox-keyboard"
+DISTRO_PN_ALIAS:pn-matchbox-panel-2 = "Debian=matchbox-panel Mandriva=matchbox-panel Ubuntu=matchbox-panel"
+DISTRO_PN_ALIAS:pn-matchbox-session = "OpenedHand"
+DISTRO_PN_ALIAS:pn-matchbox-session-sato = "OpenedHand"
+DISTRO_PN_ALIAS:pn-matchbox-terminal = "OpenedHand"
+DISTRO_PN_ALIAS:pn-matchbox-theme-sato = "OpenedHand"
+DISTRO_PN_ALIAS:pn-matchbox-themes-extra = "Ubuntu=matchbox-themes-extra Mandriva=matchbox-themes-extra"
+DISTRO_PN_ALIAS:pn-matchbox-themes-gtk = "OpenedHand"
+DISTRO_PN_ALIAS:pn-matchbox-wm = "OpenedHand"
+DISTRO_PN_ALIAS:pn-menu-cache = "OSPDT"
+DISTRO_PN_ALIAS:pn-mesa = "Fedora=mesa Ubuntu=libgl1-mesa-dri"
+DISTRO_PN_ALIAS:pn-mesa-gl = "Fedora=mesa Ubuntu=libgl1-mesa-dri"
+DISTRO_PN_ALIAS:pn-meta-environment-extsdk-qemux86 = "OE-Core"
+DISTRO_PN_ALIAS:pn-meta-environment-i586 = "OE-Core"
+DISTRO_PN_ALIAS:pn-meta-environment-qemux86 = "OE-Core"
+DISTRO_PN_ALIAS:pn-meta-environment-qemux86-64 = "OE-Core"
+DISTRO_PN_ALIAS:pn-meta-ide-support = "OE-Core"
+DISTRO_PN_ALIAS:pn-meta-toolchain = "OE-Core"
+DISTRO_PN_ALIAS:pn-mini-x-session = "OSPDT"
+DISTRO_PN_ALIAS:pn-mkelfimage = "Ubuntu=mkelfimage Fedora=mkelfimage"
+DISTRO_PN_ALIAS:pn-mkfontdir = "Mandriva=mkfontdir Ubuntu=xfonts-utils Fedora=xorg-x11-font-utils"
+DISTRO_PN_ALIAS:pn-mkfontscale = "Mandriva=mkfontscale Ubuntu=xfonts-utils Fedora=xorg-x11-font-utils"
+DISTRO_PN_ALIAS:pn-mmc-utils = "OE-Core"
+DISTRO_PN_ALIAS:pn-modutils-initscripts = "OE-Core"
+DISTRO_PN_ALIAS:pn-mtd-utils = "Debian=mtd-utils Ubuntu=mtd-utils"
+DISTRO_PN_ALIAS:pn-mx-1.0 = "Ubuntu=mx Debian=mx Fedora=mx"
+DISTRO_PN_ALIAS:pn-neard = "Intel"
+DISTRO_PN_ALIAS:pn-neon = "Fedora=neon Opensuse=neon"
+DISTRO_PN_ALIAS:pn-network-suspend-scripts = "OE-Core"
+DISTRO_PN_ALIAS:pn-nfs-export-root = "OpenedHand"
+DISTRO_PN_ALIAS:pn-npth = "OSPDT"
+DISTRO_PN_ALIAS:pn-nss-myhostname = "Meego=nss-mdns OpenSuSE=nss-mdns Ubuntu=nss-mdns Mandriva=nss_mdns Debian=nss-mdns"
+DISTRO_PN_ALIAS:pn-ofono = "Debian=ofono Ubuntu=ofono"
+DISTRO_PN_ALIAS:pn-oh-puzzles = "OpenedHand"
+DISTRO_PN_ALIAS:pn-opkg = "OSPDT upstream=http://svn.openmoko.org/trunk/src/tar"
+DISTRO_PN_ALIAS:pn-opkg-arch-config = "OE-Core"
+DISTRO_PN_ALIAS:pn-opkg-collateral = "OE-Core"
+DISTRO_PN_ALIAS:pn-opkg-keyrings = "OSPDT upstream=git://git.yoctoproject.org/opkg-utils"
+DISTRO_PN_ALIAS:pn-opkg-nogpg = "OSPDT upstream=git://git.yoctoproject.org/opkg-utils"
+DISTRO_PN_ALIAS:pn-opkg-utils = "OSPDT upstream=git://git.yoctoproject.org/opkg-utils"
+DISTRO_PN_ALIAS:pn-os-release = "OE-Core"
+DISTRO_PN_ALIAS:pn-packagegroup-base = "OE-Core"
+DISTRO_PN_ALIAS:pn-packagegroup-core = "OE-Core"
+DISTRO_PN_ALIAS:pn-packagegroup-core-boot = "OE-Core"
+DISTRO_PN_ALIAS:pn-packagegroup-core-buildessential = "OE-Core"
+DISTRO_PN_ALIAS:pn-packagegroup-core-device-devel = "OE-Core"
+DISTRO_PN_ALIAS:pn-packagegroup-core-eclipse-debug = "OE-Core"
+DISTRO_PN_ALIAS:pn-packagegroup-core-full-cmdline = "OE-Core"
+DISTRO_PN_ALIAS:pn-packagegroup-core-nfs = "OE-Core"
+DISTRO_PN_ALIAS:pn-packagegroup-core-sdk = "OE-Core"
+DISTRO_PN_ALIAS:pn-packagegroup-core-ssh-dropbear = "OE-Core"
+DISTRO_PN_ALIAS:pn-packagegroup-core-ssh-openssh = "OE-Core"
+DISTRO_PN_ALIAS:pn-packagegroup-core-standalone-sdk-target = "OE-Core"
+DISTRO_PN_ALIAS:pn-packagegroup-core-tools = "OE-Core"
+DISTRO_PN_ALIAS:pn-packagegroup-core-tools-debug = "OE-Core"
+DISTRO_PN_ALIAS:pn-packagegroup-core-tools-profile = "OE-Core"
+DISTRO_PN_ALIAS:pn-packagegroup-core-tools-testapps = "OE-Core"
+DISTRO_PN_ALIAS:pn-packagegroup-core-x11 = "OE-Core"
+DISTRO_PN_ALIAS:pn-packagegroup-core-x11-base = "OE-Core"
+DISTRO_PN_ALIAS:pn-packagegroup-core-x11-mini = "OE-Core"
+DISTRO_PN_ALIAS:pn-packagegroup-core-x11-sato = "OE-Core"
+DISTRO_PN_ALIAS:pn-packagegroup-core-x11-xserver = "OE-Core"
+DISTRO_PN_ALIAS:pn-packagegroup-cross-canadian-i586 = "OE-Core"
+DISTRO_PN_ALIAS:pn-packagegroup-cross-canadian-qemux86 = "OE-Core"
+DISTRO_PN_ALIAS:pn-packagegroup-cross-canadian-qemux86-64 = "OE-Core"
+DISTRO_PN_ALIAS:pn-packagegroup-sdk-host = "OE-Core"
+DISTRO_PN_ALIAS:pn-packagegroup-self-hosted = "OE-Core"
+DISTRO_PN_ALIAS:pn-package-index = "OE-Core"
+DISTRO_PN_ALIAS:pn-patchelf = "Opensuse=patchelf Fedora=patchelf"
+DISTRO_PN_ALIAS:pn-perf = "OSPDT"
+DISTRO_PN_ALIAS:pn-piglit = "OE-Core"
+DISTRO_PN_ALIAS:pn-pkgconfig = "Ubuntu=pkg-config Fedora=pkgconfig"
+DISTRO_PN_ALIAS:pn-pointercal-xinput = "OE-Core"
+DISTRO_PN_ALIAS:pn-pong-clock = "OpenedHand"
+DISTRO_PN_ALIAS:pn-portmap = "Debian=rpcbind Fedora=rpcbind"
+DISTRO_PN_ALIAS:pn-powertop = "Meego=powertop Fedora=powertop Debian=powertop OpenSuSE=powertop Mandriva=powertop"
+DISTRO_PN_ALIAS:pn-ppp-dialin = "OE-Core"
+DISTRO_PN_ALIAS:pn-pseudo = "Windriver"
+DISTRO_PN_ALIAS:pn-psplash = "OpenedHand"
+DISTRO_PN_ALIAS:pn-ptest-runner = "OE-Core"
+DISTRO_PN_ALIAS:pn-pulseaudio-client-conf-sato = "OE-Core"
+DISTRO_PN_ALIAS:pn-puzzles = "Debian=sgt-puzzles Fedora=puzzles"
+DISTRO_PN_ALIAS:pn-python3 = "Fedora=python3 Debian=python3.2"
+DISTRO_PN_ALIAS:pn-python3-iniparse = "Fedora=python-iniparse Debian=python-iniparse"
+DISTRO_PN_ALIAS:pn-python3-pip = "OpenSuSE=python3-pip Debian=python3-pip"
+DISTRO_PN_ALIAS:pn-python3-pycurl = "Fedora=python-pycurl Debian=pycurl"
+DISTRO_PN_ALIAS:pn-python3-pygpgme = "Fedora=python-pygpgme Debian=pygpgme"
+DISTRO_PN_ALIAS:pn-python3-setuptools = "OpenSuSE=python3-setuptools Debian=python3-setuptools"
+DISTRO_PN_ALIAS:pn-python-dbus = "Ubuntu=python-dbus Debian=python-dbus Mandriva=python-dbus"
+DISTRO_PN_ALIAS:pn-python-git = "Debian=python-git Fedora=GitPython"
+DISTRO_PN_ALIAS:pn-python-mako = "Fedora=python-mako Opensuse=python-Mako"
+DISTRO_PN_ALIAS:pn-python-pycairo = "Meego=pycairo Fedora=pycairo Ubuntu=pycairo Debian=pycairo"
+DISTRO_PN_ALIAS:pn-python-pygobject = "Meego=pygobject2 Fedora=pygobject2 Ubuntu=pygobject Debian=pygobject"
+DISTRO_PN_ALIAS:pn-python-scons = "Fedora=scons OpenSuSE=scons Ubuntu=scons Mandriva=scons Debian=scons"
+DISTRO_PN_ALIAS:pn-python-setuptools = "Mandriva=python-setup OpenSuSE=python-setup-git"
+DISTRO_PN_ALIAS:pn-python-smartpm = "Debian=smart OpenSuSE=smart"
+DISTRO_PN_ALIAS:pn-qemu-config = "OpenedHand"
+DISTRO_PN_ALIAS:pn-qemugl = "OpenedHand"
+DISTRO_PN_ALIAS:pn-qemu-helper = "OpenedHand"
+DISTRO_PN_ALIAS:pn-qemuwrapper-cross = "OE-Core"
+DISTRO_PN_ALIAS:pn-readline = "Fedora=readline Debian=readline-common"
+DISTRO_PN_ALIAS:pn-remake = "Mandriva=remake Debian=remake"
+DISTRO_PN_ALIAS:pn-rgb = "Fedora=xorg-X11-server-utils Debian=x11-xserver-utils"
+DISTRO_PN_ALIAS:pn-rpmresolve = "OSPDT"
+DISTRO_PN_ALIAS:pn-rt-tests = "Debian=rt-tests Ubuntu=rt-tests"
+DISTRO_PN_ALIAS:pn-run-postinsts = "OE-Core"
+DISTRO_PN_ALIAS:pn-sato-icon-theme = "OpenedHand"
+DISTRO_PN_ALIAS:pn-sato-screenshot = "OpenedHand"
+DISTRO_PN_ALIAS:pn-sbc = "Fedora=sbc Debian=libsbc1"
+DISTRO_PN_ALIAS:pn-screenshot = "OpenedHand"
+DISTRO_PN_ALIAS:pn-settings-daemon = "OpenedHand"
+DISTRO_PN_ALIAS:pn-sgml-common = "OpenSuSE=sgml-common Fedora=sgml-common"
+DISTRO_PN_ALIAS:pn-sgmlspl = "Debian=sgmlspl Ubuntu=sgmlspl"
+DISTRO_PN_ALIAS:pn-shadow-securetty = "Ubuntu=shadow Fedora=shadow"
+DISTRO_PN_ALIAS:pn-shadow-sysroot = "Ubuntu=shadow Fedora=shadow"
+DISTRO_PN_ALIAS:pn-shutdown-desktop = "OpenedHand"
+DISTRO_PN_ALIAS:pn-speexdsp = "Ubuntu=libspeexdsp1 Fedora=speexdsp"
+DISTRO_PN_ALIAS:pn-stat = "Debian=coreutils Fedora=coreutils"
+DISTRO_PN_ALIAS:pn-stress = "Debian=stress Fedora=stress"
+DISTRO_PN_ALIAS:pn-sysklogd = "Debian=sysklogd Mandriva=sysklogd"
+DISTRO_PN_ALIAS:pn-sysprof = "Fedora=sysprof Debian=sysprof"
+DISTRO_PN_ALIAS:pn-systemd-compat-units = "Fedora=systemd Ubuntu=systemd"
+DISTRO_PN_ALIAS:pn-systemd-systemctl = "OE-Core"
+DISTRO_PN_ALIAS:pn-systemd-systemdctl = "Fedora=systemd Ubuntu=systemd"
+DISTRO_PN_ALIAS:pn-systemtap-uprobes = "Ubuntu=systemtap Debian=systemtap"
+DISTRO_PN_ALIAS:pn-sysvinit-inittab = "OE-Core"
+DISTRO_PN_ALIAS:pn-tar-replacement = "Fedora=tar Ubuntu=tar"
+DISTRO_PN_ALIAS:pn-tcf-agent = "Windriver upstream=http://www.eclipse.org/dsdp/tm/"
+DISTRO_PN_ALIAS:pn-texinfo-dummy-native = "OE-Core"
+DISTRO_PN_ALIAS:pn-tiny-init = "OSPDT"
+DISTRO_PN_ALIAS:pn-tremor = "OSPDT upstream=http://www.xiph.org/vorbis/"
+DISTRO_PN_ALIAS:pn-ttf-bitstream-vera = "Debian=ttf-bitstream-vera Ubuntu=ttf-bitstream-vera"
+DISTRO_PN_ALIAS:pn-tzcode = "OSPDT"
+DISTRO_PN_ALIAS:pn-u-boot-fw-utils = "Ubuntu=u-boot-tools Debian=u-boot-tools"
+DISTRO_PN_ALIAS:pn-u-boot-tools = "Ubuntu=u-boot-tools Debian=uboot-tools"
+DISTRO_PN_ALIAS:pn-udev = "Mandriva=udev Fedora=udev"
+DISTRO_PN_ALIAS:pn-udev-extraconf = "OE-Core"
+DISTRO_PN_ALIAS:pn-unfs3 = "Debian=unfs3 Fedora=unfs3"
+DISTRO_PN_ALIAS:pn-unfs-server = "OE-Core"
+DISTRO_PN_ALIAS:pn-uninative-tarball = "OE-Core"
+DISTRO_PN_ALIAS:pn-update-alternatives-dpkg = "Opensuse=update-alternatives Mandriva=update-alternatives"
+DISTRO_PN_ALIAS:pn-update-rc.d = "OE-Core"
+DISTRO_PN_ALIAS:pn-usbinit = "OE-Core"
+DISTRO_PN_ALIAS:pn-util-macros = "Meego=xorg-x11-util-macros Fedora=xorg-x11-util-macros Mandriva=x11-util-macros"
+DISTRO_PN_ALIAS:pn-v86d = "Debian=v86d Ubuntu=v86d"
+DISTRO_PN_ALIAS:pn-waffle = "OE-Core"
+DISTRO_PN_ALIAS:pn-watchdog = "Debian=watchdog Ubuntu=watchdog Mandriva=watchdog"
+DISTRO_PN_ALIAS:pn-webkitgtk = "Fedora=webkitgtk Ubuntu=libwebkit"
+DISTRO_PN_ALIAS:pn-weston = "Fedora=weston OpenSuSE=weston"
+DISTRO_PN_ALIAS:pn-weston-init = "OE-Core"
+DISTRO_PN_ALIAS:pn-which = "Mandriva=which Fedora=which"
+DISTRO_PN_ALIAS:pn-wpa-supplicant = "Meego=wpa_supplicant Fedora=wpa_supplicant OpenSuSE=wpa_supplicant Ubuntu=wpasupplicant Mandriva=wpa_supplicant Debian=wpasupplicant"
+DISTRO_PN_ALIAS:pn-x11perf = "Fedora=xorg-x11-apps Ubuntu=x11-apps"
+DISTRO_PN_ALIAS:pn-xcb-util-image = "Debian=xcb-util Fedora=xcb-util"
+DISTRO_PN_ALIAS:pn-xcb-util-keysyms = "Debian=xcb-util Fedora=xcb-util"
+DISTRO_PN_ALIAS:pn-xcb-util-wm = "Debian=xcb-util Fedora=xcb-util"
+DISTRO_PN_ALIAS:pn-xcursor-transparent-theme = "OpenedHand"
+DISTRO_PN_ALIAS:pn-xdpyinfo = "Fedora=xorg-x11-utils Ubuntu=x11-utils"
+DISTRO_PN_ALIAS:pn-xev = "Fedora=xorg-x11-utils Ubuntu=x11-utils"
+DISTRO_PN_ALIAS:pn-xeyes = "Ubuntu=x11-apps Fedora=xorg-x11-apps"
+DISTRO_PN_ALIAS:pn-xf86-input-evdev = "Ubuntu=xserver-xorg-input-evdev Mandriva=x11-driver-input-evdev Debian=xserver-xorg-input-evdev Fedora=xorg-x11-drv-evdev Meego=xorg-x11-drv-evdev"
+DISTRO_PN_ALIAS:pn-xf86-input-keyboard = "Meego=xorg-x11-drv-keyboard Fedora=xorg-x11-drv-keyboard Mandriva=x11-driver-input-keyboard Debian=xserver-xorg-input-keyboard"
+DISTRO_PN_ALIAS:pn-xf86-input-mouse = "Ubuntu=xserver-xorg-input-mouse Mandriva=x11-driver-input-mouse Debian=xserver-xorg-input-mouse"
+DISTRO_PN_ALIAS:pn-xf86-input-synaptics = "Meego=xorg-x11-drv-synaptics Fedora=xorg-x11-drv-synaptics Ubuntu=xserver-xorg-input-synaptics Mandriva=x11-driver-input-synaptics Debian=xfree86-driver-synaptics"
+DISTRO_PN_ALIAS:pn-xf86-input-vmmouse = "Fedora=xorg-x11-drv-vmmouse Ubuntu=xserver-xorg-input-vmmouse Mandriva=x11-driver-input-vmmouse Debian=xserver-xorg-input-vmmouse"
+DISTRO_PN_ALIAS:pn-xf86-video-cirrus = "Opensuse=xf86-video-cirrus Debian=xserver-xorg-video-cirrus"
+DISTRO_PN_ALIAS:pn-xf86-video-fbdev = "Ubuntu=xserver-xorg-video-fbdev Debian=xserver-xorg-video-fbdev"
+DISTRO_PN_ALIAS:pn-xf86-video-intel = "Debian=xserver-xorg-video-intel Fedora=xorg-x11-drv-intel Mandriva=x11-driver-video-intel Meego=xorg-x11-drv-intel Ubuntu=xserver-xorg-video-intel"
+DISTRO_PN_ALIAS:pn-xf86-video-modesetting = "Debian=xserver-xorg-video-modesetting Fedora=xf86-video-modesetting"
+DISTRO_PN_ALIAS:pn-xf86-video-omap = "Ubuntu=xf86-video-omap Debian=xf86-video-omap"
+DISTRO_PN_ALIAS:pn-xf86-video-omapfb = "OSPDT"
+DISTRO_PN_ALIAS:pn-xf86-video-vesa = "Debian=xserver-xorg-video-vesa Fedora=xorg-x11-drv-vesa Mandriva=x11-driver-video-vesa Ubuntu=xserver-xorg-video-vesa"
+DISTRO_PN_ALIAS:pn-xf86-video-vmware = "Debian=xserver-xorg-video-vmware Fedora=xorg-x11-drv-vmware Mandriva=x11-driver-video-vmware Ubuntu=xserver-xorg-video-vmware"
+DISTRO_PN_ALIAS:pn-xhost = "Ubuntu=x11-xserver-utils Fedora=xorg-x11-server-utils"
+DISTRO_PN_ALIAS:pn-xinput-calibrator = "Fedora=xinput-calibrator Mandravia=xinput-calibrator Ubuntu=xinput-calibrator"
+DISTRO_PN_ALIAS:pn-xkbcomp = "Ubuntu=x11-xkb-utils Fedora=xorg-x11-xkb-utils"
+DISTRO_PN_ALIAS:pn-xmodmap = "Meego=xorg-x11-utils-xmodmap Fedora=xorg-x11-server-utils Ubuntu=x11-xserver-utils"
+DISTRO_PN_ALIAS:pn-xorg-minimal-fonts = "Ubuntu=xfonts-base Fedora=xorg-x11-fonts-base"
+DISTRO_PN_ALIAS:pn-xorgproto = "OSPDT upstream=http://cgit.freedesktop.org/xorg/proto/xorgproto"
+DISTRO_PN_ALIAS:pn-xprop = "Meego=xorg-x11-utils-xprop Fedora=xorg-x11-utils Ubuntu=x11-utils"
+DISTRO_PN_ALIAS:pn-xproxymanagementprotocol = "Meego=xorg-x11-proto-xproxymanagementprotocol"
+DISTRO_PN_ALIAS:pn-xrandr = "Ubuntu=x11-xserver-utils Fedora=xorg-x11-server-utils"
+DISTRO_PN_ALIAS:pn-xrdb = "Ubuntu=x11-xserver-utils Fedora=xorg-x11-server-utils"
+DISTRO_PN_ALIAS:pn-xserver-nodm-init = "OE-Core"
+DISTRO_PN_ALIAS:pn-xserver-xf86-config = "OE-Core"
+DISTRO_PN_ALIAS:pn-xserver-xf86-dri-lite = "Fedora=xorg-x11-server Ubuntu=xserver-xorg"
+DISTRO_PN_ALIAS:pn-xserver-xf86-lite = "Fedora=xorg-x11-server Ubuntu=xserver-xorg"
+DISTRO_PN_ALIAS:pn-xserver-xorg = "Fedora=xorg-x11-server Ubuntu=xserver-xorg"
+DISTRO_PN_ALIAS:pn-xset = "Fedora=xorg-x11-server-utils Ubuntu=x11-xserver-utils Debian=x11-xserver-utils Opensuse=xorg-x11"
+DISTRO_PN_ALIAS:pn-xuser-account = "OE-Core"
+DISTRO_PN_ALIAS:pn-xvinfo = "Fedora=xorg-x11-utils Ubuntu=x11-utils"
+DISTRO_PN_ALIAS:pn-xwininfo = "Fedora=xorg-x11-utils Ubuntu=x11-utils"
diff --git a/poky/meta/conf/distro/include/init-manager-mdev-busybox.inc b/poky/meta/conf/distro/include/init-manager-mdev-busybox.inc
index 4e3be14..12091cb 100644
--- a/poky/meta/conf/distro/include/init-manager-mdev-busybox.inc
+++ b/poky/meta/conf/distro/include/init-manager-mdev-busybox.inc
@@ -1,5 +1,5 @@
 # enable mdev/busybox for init
-DISTRO_FEATURES_BACKFILL_CONSIDERED_append = " systemd sysvinit"
+DISTRO_FEATURES_BACKFILL_CONSIDERED:append = " systemd sysvinit"
 VIRTUAL-RUNTIME_dev_manager ??= "busybox-mdev"
 VIRTUAL-RUNTIME_init_manager ??= "busybox"
 VIRTUAL-RUNTIME_initscripts ??= "initscripts"
diff --git a/poky/meta/conf/distro/include/init-manager-systemd.inc b/poky/meta/conf/distro/include/init-manager-systemd.inc
index 1558b85..7867d90 100644
--- a/poky/meta/conf/distro/include/init-manager-systemd.inc
+++ b/poky/meta/conf/distro/include/init-manager-systemd.inc
@@ -1,6 +1,7 @@
 # Use systemd for system initialization
-DISTRO_FEATURES_append = " systemd"
-DISTRO_FEATURES_BACKFILL_CONSIDERED_append = " sysvinit"
+DISTRO_FEATURES:append = " systemd"
+DISTRO_FEATURES_BACKFILL_CONSIDERED:append = " sysvinit"
 VIRTUAL-RUNTIME_init_manager ??= "systemd"
 VIRTUAL-RUNTIME_initscripts ??= "systemd-compat-units"
 VIRTUAL-RUNTIME_login_manager ??= "shadow-base"
+VIRTUAL-RUNTIME_dev_manager ??= "systemd"
diff --git a/poky/meta/conf/distro/include/init-manager-sysvinit.inc b/poky/meta/conf/distro/include/init-manager-sysvinit.inc
index 6b662d6..aa23939 100644
--- a/poky/meta/conf/distro/include/init-manager-sysvinit.inc
+++ b/poky/meta/conf/distro/include/init-manager-sysvinit.inc
@@ -1,6 +1,6 @@
 # Use sysvinit for system initialization
-DISTRO_FEATURES_append = " sysvinit"
-DISTRO_FEATURES_BACKFILL_CONSIDERED_append = " systemd"
+DISTRO_FEATURES:append = " sysvinit"
+DISTRO_FEATURES_BACKFILL_CONSIDERED:append = " systemd"
 VIRTUAL-RUNTIME_init_manager ??= "sysvinit"
 VIRTUAL-RUNTIME_initscripts ??= "initscripts"
 VIRTUAL-RUNTIME_login_manager ??= "busybox"
diff --git a/poky/meta/conf/distro/include/lto.inc b/poky/meta/conf/distro/include/lto.inc
index 20895ad..b819372 100644
--- a/poky/meta/conf/distro/include/lto.inc
+++ b/poky/meta/conf/distro/include/lto.inc
@@ -1,32 +1,34 @@
 # To enable LTO, add following in local.conf
 # require conf/distro/include/lto.inc
-# DISTRO_FEATURES_append = " lto"
+# DISTRO_FEATURES:append = " lto"
 #
 
 # Disable LTO for following packages
-LTO_pn-glibc = ""
-LTO_pn-gcc-runtime = ""
-LTO_pn-libgcc-initial = ""
-LTO_pn-libgcc = ""
-LTO_pn-libaio = ""
-LTO_pn-libpam = ""
-LTO_pn-elfutils = ""
-LTO_pn-perl = ""
-LTO_pn-busybox = ""
-LTO_pn-libxcrypt = ""
-LTO_pn-curl = ""
-LTO_pn-libcap = ""
-LTO_pn-libproxy = ""
-LTO_pn-libbsd = ""
-LTO_pn-perf = ""
+LTO:pn-glibc = ""
+LTO:pn-gcc-runtime = ""
+LTO:pn-libgcc-initial = ""
+LTO:pn-libgcc = ""
+LTO:pn-libaio = ""
+LTO:pn-libpam = ""
+LTO:pn-elfutils = ""
+LTO:pn-perl = ""
+LTO:pn-busybox = ""
+LTO:pn-libxcrypt = ""
+LTO:pn-curl = ""
+LTO:pn-libcap = ""
+LTO:pn-libproxy = ""
+LTO:pn-libbsd = ""
+LTO:pn-perf = ""
 # webkit is not linking properly with LTO, disable until next time
-LTO_pn-webkitgtk = ""
-LTO_pn-xserver-xorg = ""
+LTO:pn-webkitgtk = ""
+LTO:pn-xserver-xorg = ""
+LTO:pn-grub = ""
+LTO:pn-grub-efi = ""
 
 # Custom LTO flags
 # disable partitioning/streaming algorithm since its uses ASM
 # constructs not compatible with lto
-LTOEXTRA_pn-alsa-lib = "-flto-partition=none"
+LTOEXTRA:pn-alsa-lib = "-flto-partition=none"
 
 LTOEXTRA ?= ""
 
@@ -43,7 +45,7 @@
 # code from .a files to linker
 LTO ?= "-flto -ffat-lto-objects -fuse-linker-plugin ${LTOEXTRA}"
 
-SELECTED_OPTIMIZATION_append = "${@bb.utils.contains('DISTRO_FEATURES', 'lto', ' ${LTO}', '', d)}"
-TARGET_LDFLAGS_append_class-target = "${@bb.utils.contains('DISTRO_FEATURES', 'lto', ' ${LTO}', '', d)}"
+SELECTED_OPTIMIZATION:append = "${@bb.utils.contains('DISTRO_FEATURES', 'lto', ' ${LTO}', '', d)}"
+TARGET_LDFLAGS:append:class-target = "${@bb.utils.contains('DISTRO_FEATURES', 'lto', ' ${LTO}', '', d)}"
 
 SELECTED_OPTIMIZATION[vardeps] += "LTO LTOEXTRA"
diff --git a/poky/meta/conf/distro/include/maintainers.inc b/poky/meta/conf/distro/include/maintainers.inc
index 13e4329..fa7ac07 100644
--- a/poky/meta/conf/distro/include/maintainers.inc
+++ b/poky/meta/conf/distro/include/maintainers.inc
@@ -23,788 +23,788 @@
 #
 # The format is as a bitbake variable override for each recipe
 #
-#	RECIPE_MAINTAINER_pn-<recipe name> = "Full Name <address@domain>"
+#	RECIPE_MAINTAINER:pn-<recipe name> = "Full Name <address@domain>"
 #
 # Please keep this list in alphabetical order.
 #
-RECIPE_MAINTAINER_pn-acl = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-acpica = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-acpid = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-adwaita-icon-theme = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-alsa-lib = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-alsa-plugins = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-alsa-state = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-alsa-tools = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-alsa-topology-conf = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-alsa-ucm-conf = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-alsa-utils = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-alsa-utils-scripts = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-apmd = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-apr = "Hongxu Jia <hongxu.jia@windriver.com>"
-RECIPE_MAINTAINER_pn-apr-util = "Hongxu Jia <hongxu.jia@windriver.com>"
-RECIPE_MAINTAINER_pn-apt = "Aníbal Limón <limon.anibal@gmail.com>"
-RECIPE_MAINTAINER_pn-argp-standalone = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-asciidoc = "Yi Zhao <yi.zhao@windriver.com>"
-RECIPE_MAINTAINER_pn-aspell = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-assimp = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-at = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-at-spi2-atk = "Tim Orling <timothy.t.orling@intel.com>"
-RECIPE_MAINTAINER_pn-at-spi2-core = "Tim Orling <timothy.t.orling@intel.com>"
-RECIPE_MAINTAINER_pn-atk = "Tim Orling <timothy.t.orling@intel.com>"
-RECIPE_MAINTAINER_pn-attr = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-autoconf = "Robert Yang <liezhi.yang@windriver.com>"
-RECIPE_MAINTAINER_pn-autoconf-archive = "Robert Yang <liezhi.yang@windriver.com>"
-RECIPE_MAINTAINER_pn-automake = "Robert Yang <liezhi.yang@windriver.com>"
-RECIPE_MAINTAINER_pn-avahi = "Yi Zhao <yi.zhao@windriver.com>"
-RECIPE_MAINTAINER_pn-babeltrace = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-babeltrace2 = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-base-files = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-base-passwd = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-bash = "Hongxu Jia <hongxu.jia@windriver.com>"
-RECIPE_MAINTAINER_pn-bash-completion = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-bc = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-bind = "Armin Kuster <akuster808@gmail.com>"
-RECIPE_MAINTAINER_pn-binutils = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-binutils-cross-${TARGET_ARCH} = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-binutils-cross-canadian-${TRANSLATED_TARGET_ARCH} = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-binutils-cross-testsuite = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-binutils-crosssdk-${SDK_SYS} = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-bison = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-blktool = "Yi Zhao <yi.zhao@windriver.com>"
-RECIPE_MAINTAINER_pn-blktrace = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-bluez5 = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-bmap-tools = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-boost = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-boost-build-native = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-bootchart2 = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-bsd-headers = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-btrfs-tools = "Wang Mingyu <wangmy@fujitsu.com>"
-RECIPE_MAINTAINER_pn-build-appliance-image = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-build-sysroots = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-builder = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-buildtools-extended-tarball = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-buildtools-tarball = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-busybox = "Andrej Valek <andrej.valek@siemens.com>"
-RECIPE_MAINTAINER_pn-busybox-inittab = "Denys Dmytriyenko <denis@denix.org>"
-RECIPE_MAINTAINER_pn-bzip2 = "Denys Dmytriyenko <denis@denix.org>"
-RECIPE_MAINTAINER_pn-ca-certificates = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-cairo = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-cantarell-fonts = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-ccache = "Robert Yang <liezhi.yang@windriver.com>"
-RECIPE_MAINTAINER_pn-cdrtools-native = "Yi Zhao <yi.zhao@windriver.com>"
-RECIPE_MAINTAINER_pn-chrpath = "Yi Zhao <yi.zhao@windriver.com>"
-RECIPE_MAINTAINER_pn-cmake = "Pascal Bach <pascal.bach@siemens.com>"
-RECIPE_MAINTAINER_pn-cmake-native = "Pascal Bach <pascal.bach@siemens.com>"
-RECIPE_MAINTAINER_pn-connman = "Changhyeok Bae <changhyeok.bae@gmail.com>"
-RECIPE_MAINTAINER_pn-connman-conf = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-connman-gnome = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-consolekit = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-core-image-base = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-core-image-minimal = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-core-image-minimal-dev = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-core-image-minimal-initramfs = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-core-image-minimal-mtdutils = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-core-image-tiny-initramfs = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-core-image-full-cmdline = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-core-image-kernel-dev = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-core-image-ptest-all = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-core-image-ptest-fast = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-core-image-sato = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-core-image-sato-sdk = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-core-image-testmaster-initramfs = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-core-image-testmaster = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-core-image-weston = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-core-image-weston-sdk = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-core-image-x11 = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-core-image-sato-dev = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-coreutils = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-cpio = "Denys Dmytriyenko <denis@denix.org>"
-RECIPE_MAINTAINER_pn-cracklib = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-createrepo-c = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-cronie = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-cross-localedef-native = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-cryptodev-linux = "Robert Yang <liezhi.yang@windriver.com>"
-RECIPE_MAINTAINER_pn-cryptodev-module = "Robert Yang <liezhi.yang@windriver.com>"
-RECIPE_MAINTAINER_pn-cryptodev-tests = "Robert Yang <liezhi.yang@windriver.com>"
-RECIPE_MAINTAINER_pn-cups = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-curl = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-cve-update-db-native = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-cwautomacros = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-db = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-dbus = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-dbus-glib = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-dbus-test = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-dbus-wait = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-debianutils = "Yi Zhao <yi.zhao@windriver.com>"
-RECIPE_MAINTAINER_pn-dejagnu = "Nathan Rossi <nathan@nathanrossi.com>"
-RECIPE_MAINTAINER_pn-depmodwrapper-cross = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-desktop-file-utils = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-dhcpcd = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-diffoscope = "Joshua Watt <JPEWhacker@gmail.com>"
-RECIPE_MAINTAINER_pn-diffstat = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-diffutils = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-distcc = "Hongxu Jia <hongxu.jia@windriver.com>"
-RECIPE_MAINTAINER_pn-distcc-config = "Yi Zhao <yi.zhao@windriver.com>"
-RECIPE_MAINTAINER_pn-dmidecode = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-dnf = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-docbook-xml-dtd4 = "Yi Zhao <yi.zhao@windriver.com>"
-RECIPE_MAINTAINER_pn-docbook-xsl-stylesheets = "Yi Zhao <yi.zhao@windriver.com>"
-RECIPE_MAINTAINER_pn-dos2unix = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-dosfstools = "Yi Zhao <yi.zhao@windriver.com>"
-RECIPE_MAINTAINER_pn-dpkg = "Aníbal Limón <limon.anibal@gmail.com>"
-RECIPE_MAINTAINER_pn-dropbear = "Yi Zhao <yi.zhao@windriver.com>"
-RECIPE_MAINTAINER_pn-dtc = "Wang Mingyu <wangmy@fujitsu.com>"
-RECIPE_MAINTAINER_pn-dwarfsrcfiles = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-e2fsprogs = "Robert Yang <liezhi.yang@windriver.com>"
-RECIPE_MAINTAINER_pn-ed = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-efivar = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-efibootmgr = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-elfutils = "Zang Ruochen <zangrc.fnst@fujitsu.com>"
-RECIPE_MAINTAINER_pn-ell = "Zang Ruochen <zangrc.fnst@fujitsu.com>"
-RECIPE_MAINTAINER_pn-enchant2 = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-encodings = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-epiphany = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-erofs-utils = "Richard Weinberger <richard@nod.at>"
-RECIPE_MAINTAINER_pn-ethtool = "Changhyeok Bae <changhyeok.bae@gmail.com>"
-RECIPE_MAINTAINER_pn-eudev = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-expat = "Yi Zhao <yi.zhao@windriver.com>"
-RECIPE_MAINTAINER_pn-expect = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-ffmpeg = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-file = "Yi Zhao <yi.zhao@windriver.com>"
-RECIPE_MAINTAINER_pn-findutils = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-flac = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-flex = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-font-alias = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-font-util = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-fontconfig = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-formfactor = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-freetype = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-fribidi = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-fts = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-gawk = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-gcc = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-gcc-cross-${TARGET_ARCH} = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-gcc-cross-canadian-${TRANSLATED_TARGET_ARCH} = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-gcc-crosssdk-${SDK_SYS} = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-gcc-runtime = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-gcc-sanitizers = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-gcc-source-11.1.0 = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-gconf = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-gcr = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-gdb = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-gdb-cross-${TARGET_ARCH} = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-gdb-cross-canadian-${TRANSLATED_TARGET_ARCH} = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-gdbm = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-gdk-pixbuf = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-gettext = "Robert Yang <liezhi.yang@windriver.com>"
-RECIPE_MAINTAINER_pn-gettext-minimal-native = "Robert Yang <liezhi.yang@windriver.com>"
-RECIPE_MAINTAINER_pn-ghostscript = "Hongxu Jia <hongxu.jia@windriver.com>"
-RECIPE_MAINTAINER_pn-gi-docgen = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-git = "Robert Yang <liezhi.yang@windriver.com>"
-RECIPE_MAINTAINER_pn-glew = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-glib-2.0 = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-glib-networking = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-glibc = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-glibc-locale = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-glibc-mtrace = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-glibc-scripts = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-glibc-testsuite = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-glide = "Otavio Salvador <otavio.salvador@ossystems.com.br>"
-RECIPE_MAINTAINER_pn-gmp = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-glslang = "Jose Quaresma <quaresma.jose@gmail.com>"
-RECIPE_MAINTAINER_pn-gnome-desktop-testing = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-gnu-config = "Robert Yang <liezhi.yang@windriver.com>"
-RECIPE_MAINTAINER_pn-gnu-efi = "Yi Zhao <yi.zhao@windriver.com>"
-RECIPE_MAINTAINER_pn-gnupg = "Hongxu Jia <hongxu.jia@windriver.com>"
-RECIPE_MAINTAINER_pn-gnutls = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-go = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-go-binary-native = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-go-cross-${TUNE_PKGARCH} = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-go-cross-canadian-${TRANSLATED_TARGET_ARCH} = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-go-crosssdk-${SDK_SYS} = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-go-helloworld = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-go-native = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-go-runtime = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-gobject-introspection = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-gperf = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-gpgme = "Hongxu Jia <hongxu.jia@windriver.com>"
-RECIPE_MAINTAINER_pn-gptfdisk = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-gcompat = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-grep = "Denys Dmytriyenko <denis@denix.org>"
-RECIPE_MAINTAINER_pn-groff = "Hongxu Jia <hongxu.jia@windriver.com>"
-RECIPE_MAINTAINER_pn-grub = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-grub-bootconf = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-grub-efi = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-gsettings-desktop-schemas = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-gst-devtools = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-gst-examples = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-gstreamer1.0 = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-gstreamer1.0-libav = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-gstreamer1.0-omx = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-gstreamer1.0-meta-base = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-gstreamer1.0-plugins-bad = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-gstreamer1.0-plugins-base = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-gstreamer1.0-plugins-good = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-gstreamer1.0-plugins-ugly = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-gstreamer1.0-python = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-gstreamer1.0-rtsp-server = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-gstreamer1.0-vaapi = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-gtk+3 = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-gtk-doc = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-gzip = "Denys Dmytriyenko <denis@denix.org>"
-RECIPE_MAINTAINER_pn-harfbuzz = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-hdparm = "Denys Dmytriyenko <denis@denix.org>"
-RECIPE_MAINTAINER_pn-help2man = "Hongxu Jia <hongxu.jia@windriver.com>"
-RECIPE_MAINTAINER_pn-hicolor-icon-theme = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-hwlatdetect = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-i2c-tools = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-icecc-create-env = "Joshua Watt <JPEWhacker@gmail.com>"
-RECIPE_MAINTAINER_pn-icu = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-ifupdown = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-igt-gpu-tools = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-inetutils = "Tom Rini <trini@konsulko.com>"
-RECIPE_MAINTAINER_pn-init-ifupdown = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-init-system-helpers = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-initramfs-boot = "Otavio Salvador <otavio.salvador@ossystems.com.br>"
-RECIPE_MAINTAINER_pn-initramfs-framework = "Otavio Salvador <otavio.salvador@ossystems.com.br>"
-RECIPE_MAINTAINER_pn-initramfs-live-boot = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-initramfs-live-boot-tiny = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-initramfs-live-install = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-initramfs-live-install-efi = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-initramfs-live-install-efi-testfs = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-initramfs-live-install-testfs = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-initscripts = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-intltool = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-iproute2 = "Changhyeok Bae <changhyeok.bae@gmail.com>"
-RECIPE_MAINTAINER_pn-iptables = "Changhyeok Bae <changhyeok.bae@gmail.com>"
-RECIPE_MAINTAINER_pn-iputils = "Changhyeok Bae <changhyeok.bae@gmail.com>"
-RECIPE_MAINTAINER_pn-iso-codes = "Wang Mingyu <wangmy@cn.ujitsu.com>"
-RECIPE_MAINTAINER_pn-itstool = "Andreas Müller <schnitzeltony@gmail.com>"
-RECIPE_MAINTAINER_pn-iw = "Changhyeok Bae <changhyeok.bae@gmail.com>"
-RECIPE_MAINTAINER_pn-libjpeg-turbo = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-json-c = "Yi Zhao <yi.zhao@windriver.com>"
-RECIPE_MAINTAINER_pn-json-glib = "Yi Zhao <yi.zhao@windriver.com>"
-RECIPE_MAINTAINER_pn-jquery = "Joshua Watt <JPEWhacker@gmail.com>"
-RECIPE_MAINTAINER_pn-kbd = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-kea = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-kern-tools-native = "Bruce Ashfield <bruce.ashfield@gmail.com>"
-RECIPE_MAINTAINER_pn-kernel-devsrc = "Bruce Ashfield <bruce.ashfield@gmail.com>"
-RECIPE_MAINTAINER_pn-kexec-tools = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-keymaps = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-kmod = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-kmod-native = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-kmscube = "Carlos Rafael Giani <dv@pseudoterminal.org>"
-RECIPE_MAINTAINER_pn-l3afpad = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-lame = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-ldconfig-native = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-less = "Yi Zhao <yi.zhao@windriver.com>"
-RECIPE_MAINTAINER_pn-liba52 = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libacpi = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-libaio = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-libarchive = "Otavio Salvador <otavio.salvador@ossystems.com.br>"
-RECIPE_MAINTAINER_pn-libassuan = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libatomic-ops = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-libbsd = "Yi Zhao <yi.zhao@windriver.com>"
-RECIPE_MAINTAINER_pn-libcap = "Yi Zhao <yi.zhao@windriver.com>"
-RECIPE_MAINTAINER_pn-libcap-ng = "Yi Zhao <yi.zhao@windriver.com>"
-RECIPE_MAINTAINER_pn-libcap-ng-python = "Yi Zhao <yi.zhao@windriver.com>"
-RECIPE_MAINTAINER_pn-libcgroup = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-libcheck = "Yi Zhao <yi.zhao@windriver.com>"
-RECIPE_MAINTAINER_pn-libcomps = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-libconvert-asn1-perl = "Tim Orling <timothy.t.orling@intel.com>"
-RECIPE_MAINTAINER_pn-libcroco = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-libdaemon = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-libdazzle = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-libdmx = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libdnf = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-libdrm = "Otavio Salvador <otavio.salvador@ossystems.com.br>"
-RECIPE_MAINTAINER_pn-libedit = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-libepoxy = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-liberation-fonts = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-liberror-perl = "Tim Orling <timothy.t.orling@intel.com>"
-RECIPE_MAINTAINER_pn-libevdev = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-libevent = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-libexif = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-libfakekey = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-libffi = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-libfm = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-libfm-extra = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-libfontenc = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libgcc = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-libgcc-initial = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-libgcrypt = "Hongxu Jia <hongxu.jia@windriver.com>"
-RECIPE_MAINTAINER_pn-libgfortran = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-libgit2 = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libgloss = "Alejandro Hernandez <aehs29@gmail.com>"
-RECIPE_MAINTAINER_pn-libglu = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-libgpg-error = "Hongxu Jia <hongxu.jia@windriver.com>"
-RECIPE_MAINTAINER_pn-libgudev = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-libhandy = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-libical = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-libice = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libid3tag = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libidn2 = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-libinput = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-libjitterentropy = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-libksba = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-libmatchbox = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-libmd = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-libmicrohttpd = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-libmnl = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-libmpc = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-libmodule-build-perl = "Tim Orling <timothy.t.orling@intel.com>"
-RECIPE_MAINTAINER_pn-libmodulemd = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-libnewt = "Hongxu Jia <hongxu.jia@windriver.com>"
-RECIPE_MAINTAINER_pn-libnl = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-libnotify = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-libnsl2 = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-libnss-mdns = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-libnss-nis = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-libogg = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-libomxil = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-libpam = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-libpcap = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-libpciaccess = "Wang Mingyu <wangmy@fujitsu.com>"
-RECIPE_MAINTAINER_pn-libpcre = "Yi Zhao <yi.zhao@windriver.com>"
-RECIPE_MAINTAINER_pn-libpcre2 = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libpipeline = "Wang Mingyu <wangmy@fujitsu.com>"
-RECIPE_MAINTAINER_pn-libpng = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-libportal = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-libproxy = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-libpthread-stubs = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-libpsl = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-librepo = "Wang Mingyu <wangmy@fujitsu.com>"
-RECIPE_MAINTAINER_pn-librsvg = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-libsamplerate0 = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libsdl2 = "Yi Zhao <yi.zhao@windriver.com>"
-RECIPE_MAINTAINER_pn-libseccomp = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libsecret = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-libsm = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libsndfile1 = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libsolv = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-libsoup-2.4 = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-libssh2 = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libssp-nonshared = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-libtasn1 = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-libtest-needs-perl = "Tim Orling <timothy.t.orling@intel.com>"
-RECIPE_MAINTAINER_pn-libtheora = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-libtimedate-perl = "Tim Orling <timothy.t.orling@intel.com>"
-RECIPE_MAINTAINER_pn-libtirpc = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-libtool = "Robert Yang <liezhi.yang@windriver.com>"
-RECIPE_MAINTAINER_pn-libtool-cross = "Robert Yang <liezhi.yang@windriver.com>"
-RECIPE_MAINTAINER_pn-libtool-native = "Robert Yang <liezhi.yang@windriver.com>"
-RECIPE_MAINTAINER_pn-libucontext = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-libunistring = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-libunwind = "Bruce Ashfield <bruce.ashfield@gmail.com>"
-RECIPE_MAINTAINER_pn-liburcu = "Wang Mingyu <wangmy@fujitsu.com>"
-RECIPE_MAINTAINER_pn-liburi-perl = "Tim Orling <timothy.t.orling@intel.com>"
-RECIPE_MAINTAINER_pn-libusb1 = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-libubootenv = "Stefano Babic <sbabic@denx.de>"
-RECIPE_MAINTAINER_pn-libuv = "Armin Kuster <akuster@mvista.com>"
-RECIPE_MAINTAINER_pn-libva = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-libva-initial = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-libva-utils = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-libvorbis = "Zang Ruochen <zangrc.fnst@fujitsu.com>"
-RECIPE_MAINTAINER_pn-libwebp = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-libwpe = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-libx11 = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libxau = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libxcb = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libxcomposite = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libxcursor = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libxcrypt = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-libxcrypt-compat = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-libxdamage = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libxdmcp = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libxext = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libxfixes = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libxfont = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libxfont2 = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libxft = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libxi = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libxinerama = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libxkbcommon = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libxkbfile = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libxml-namespacesupport-perl = "Tim Orling <timothy.t.orling@intel.com>"
-RECIPE_MAINTAINER_pn-libxml-parser-perl = "Tim Orling <timothy.t.orling@intel.com>"
-RECIPE_MAINTAINER_pn-libxml-perl = "Tim Orling <timothy.t.orling@intel.com>"
-RECIPE_MAINTAINER_pn-libxml-sax-base-perl = "Tim Orling <timothy.t.orling@intel.com>"
-RECIPE_MAINTAINER_pn-libxml-sax-perl = "Tim Orling <timothy.t.orling@intel.com>"
-RECIPE_MAINTAINER_pn-libxml-simple-perl = "Tim Orling <timothy.t.orling@intel.com>"
-RECIPE_MAINTAINER_pn-libxml2 = "Hongxu Jia <hongxu.jia@windriver.com>"
-RECIPE_MAINTAINER_pn-libxmu = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libxpm = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libxrandr = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libxrender = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libxres = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libxscrnsaver = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libxshmfence = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libxslt = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-libxt = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libxtst = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libxv = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libxvmc = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libxxf86vm = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-libyaml = "Wang Mingyu <wangmy@fujitsu.com>"
-RECIPE_MAINTAINER_pn-lighttpd = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-linux-dummy = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-linux-firmware = "Otavio Salvador <otavio.salvador@ossystems.com.br>"
-RECIPE_MAINTAINER_pn-linux-libc-headers = "Bruce Ashfield <bruce.ashfield@gmail.com>"
-RECIPE_MAINTAINER_pn-linux-yocto = "Bruce Ashfield <bruce.ashfield@gmail.com>"
-RECIPE_MAINTAINER_pn-linux-yocto-dev = "Bruce Ashfield <bruce.ashfield@gmail.com>"
-RECIPE_MAINTAINER_pn-linux-yocto-rt = "Bruce Ashfield <bruce.ashfield@gmail.com>"
-RECIPE_MAINTAINER_pn-linux-yocto-tiny = "Bruce Ashfield <bruce.ashfield@gmail.com>"
-RECIPE_MAINTAINER_pn-llvm = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-logrotate = "Yi Zhao <yi.zhao@windriver.com>"
-RECIPE_MAINTAINER_pn-log4cplus = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-lrzsz = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-lsb-release = "Hongxu Jia <hongxu.jia@windriver.com>"
-RECIPE_MAINTAINER_pn-lsof = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-ltp = "Yi Zhao <yi.zhao@windriver.com>"
-RECIPE_MAINTAINER_pn-lttng-modules = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-lttng-tools = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-lttng-ust = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-lz4 = "Denys Dmytriyenko <denis@denix.org>"
-RECIPE_MAINTAINER_pn-lzo = "Denys Dmytriyenko <denis@denix.org>"
-RECIPE_MAINTAINER_pn-lzip = "Denys Dmytriyenko <denis@denix.org>"
-RECIPE_MAINTAINER_pn-lzop = "Denys Dmytriyenko <denis@denix.org>"
-RECIPE_MAINTAINER_pn-m4 = "Robert Yang <liezhi.yang@windriver.com>"
-RECIPE_MAINTAINER_pn-m4-native = "Robert Yang <liezhi.yang@windriver.com>"
-RECIPE_MAINTAINER_pn-make = "Robert Yang <liezhi.yang@windriver.com>"
-RECIPE_MAINTAINER_pn-makedepend = "Robert Yang <liezhi.yang@windriver.com>"
-RECIPE_MAINTAINER_pn-makedevs = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-make-mod-scripts = "Bruce Ashfield <bruce.ashfield@gmail.com>"
-RECIPE_MAINTAINER_pn-man-db = "Hongxu Jia <hongxu.jia@windriver.com>"
-RECIPE_MAINTAINER_pn-man-pages = "Hongxu Jia <hongxu.jia@windriver.com>"
-RECIPE_MAINTAINER_pn-matchbox-config-gtk = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-matchbox-desktop = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-matchbox-keyboard = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-matchbox-panel-2 = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-matchbox-session = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-matchbox-session-sato = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-matchbox-terminal = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-matchbox-theme-sato = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-matchbox-wm = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-mc = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-mdadm = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-menu-cache = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-mesa = "Otavio Salvador <otavio.salvador@ossystems.com.br>"
-RECIPE_MAINTAINER_pn-mesa-demos = "Otavio Salvador <otavio.salvador@ossystems.com.br>"
-RECIPE_MAINTAINER_pn-mesa-gl = "Otavio Salvador <otavio.salvador@ossystems.com.br>"
-RECIPE_MAINTAINER_pn-meson = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-meta-environment-${MACHINE} = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-meta-environment-extsdk-${MACHINE} = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-meta-extsdk-toolchain = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-meta-go-toolchain = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-meta-ide-support = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-meta-toolchain = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-meta-world-pkgdata = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-mingetty = "Yi Zhao <yi.zhao@windriver.com>"
-RECIPE_MAINTAINER_pn-mini-x-session = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-minicom = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-mkfontscale = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-mmc-utils = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-mobile-broadband-provider-info = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-modutils-initscripts = "Yi Zhao <yi.zhao@windriver.com>"
-RECIPE_MAINTAINER_pn-mpeg2dec = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-mpfr = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-mpg123 = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-msmtp = "Wang Mingyu <wangmy@fujitsu.com>"
-RECIPE_MAINTAINER_pn-mtd-utils = "Denys Dmytriyenko <denis@denix.org>"
-RECIPE_MAINTAINER_pn-mtdev = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-mtools = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-musl = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-musl-obstack = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-musl-utils = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-nasm = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-nativesdk-buildtools-perl-dummy = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-nativesdk-icecc-toolchain = "Joshua Watt <JPEWhacker@gmail.com>"
-RECIPE_MAINTAINER_pn-nativesdk-libtool = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-nativesdk-meson = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-nativesdk-packagegroup-sdk-host = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-nativesdk-qemu-helper = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-nativesdk-sdk-provides-dummy = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-newlib = "Alejandro Hernandez <aehs29@gmail.com>"
-RECIPE_MAINTAINER_pn-ncurses = "Hongxu Jia <hongxu.jia@windriver.com>"
-RECIPE_MAINTAINER_pn-neard = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-net-tools = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-netbase = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-nettle = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-nfs-export-root = "Robert Yang <liezhi.yang@windriver.com>"
-RECIPE_MAINTAINER_pn-nfs-utils = "Robert Yang <liezhi.yang@windriver.com>"
-RECIPE_MAINTAINER_pn-ninja = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-npth = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-nss-myhostname = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-numactl = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-ofono = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-opensbi = "Alistair Francis <alistair.francis@wdc.com>"
-RECIPE_MAINTAINER_pn-openssh = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-openssl = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-opkg = "Alejandro del Castillo <alejandro.delcastillo@ni.com>"
-RECIPE_MAINTAINER_pn-opkg-arch-config = "Alejandro del Castillo <alejandro.delcastillo@ni.com>"
-RECIPE_MAINTAINER_pn-opkg-keyrings = "Alejandro del Castillo <alejandro.delcastillo@ni.com>"
-RECIPE_MAINTAINER_pn-opkg-utils = "Alejandro del Castillo <alejandro.delcastillo@ni.com>"
-RECIPE_MAINTAINER_pn-orc = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-os-release = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-ovmf = "Ricardo Neri <ricardo.neri-calderon@linux.intel.com>"
-RECIPE_MAINTAINER_pn-ovmf-shell-image = "Ricardo Neri <ricardo.neri-calderon@linux.intel.com>"
-RECIPE_MAINTAINER_pn-p11-kit = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-package-index = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-pango = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-parted = "Hongxu Jia <hongxu.jia@windriver.com>"
-RECIPE_MAINTAINER_pn-patch = "Hongxu Jia <hongxu.jia@windriver.com>"
-RECIPE_MAINTAINER_pn-patchelf = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-pbzip2 = "Denys Dmytriyenko <denis@denix.org>"
-RECIPE_MAINTAINER_pn-pciutils = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-pcmanfm = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-perf = "Bruce Ashfield <bruce.ashfield@gmail.com>"
-RECIPE_MAINTAINER_pn-perl = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-perlcross = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-piglit = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-pigz = "Hongxu Jia <hongxu.jia@windriver.com>"
-RECIPE_MAINTAINER_pn-pinentry = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-pixman = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-pkgconf = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-pkgconfig = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-pm-utils = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-pointercal-xinput = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-pong-clock = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-popt = "Yi Zhao <yi.zhao@windriver.com>"
-RECIPE_MAINTAINER_pn-powertop = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-ppp = "Hongxu Jia <hongxu.jia@windriver.com>"
-RECIPE_MAINTAINER_pn-ppp-dialin = "Hongxu Jia <hongxu.jia@windriver.com>"
-RECIPE_MAINTAINER_pn-prelink = "Mark Hatle <mark.hatle@kernel.crashing.org>"
-RECIPE_MAINTAINER_pn-procps = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-pseudo = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-psmisc = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-psplash = "Yi Zhao <yi.zhao@windriver.com>"
-RECIPE_MAINTAINER_pn-ptest-runner = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-pulseaudio = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-pulseaudio-client-conf-sato = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-puzzles = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-python3 = "Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>"
-RECIPE_MAINTAINER_pn-python3-async = "Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>"
-RECIPE_MAINTAINER_pn-python3-atomicwrites = "Tim Orling <timothy.t.orling@intel.com>"
-RECIPE_MAINTAINER_pn-python3-attrs = "Tim Orling <timothy.t.orling@intel.com>"
-RECIPE_MAINTAINER_pn-python3-cython = "Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>"
-RECIPE_MAINTAINER_pn-python3-dbus = "Zang Ruochen <zangrc.fnst@fujitsu.com>"
-RECIPE_MAINTAINER_pn-python3-dbusmock = "Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>"
-RECIPE_MAINTAINER_pn-python3-docutils = "Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>"
-RECIPE_MAINTAINER_pn-python3-pycryptodome = "Joshua Watt <JPEWhacker@gmail.com>"
-RECIPE_MAINTAINER_pn-python3-pycryptodomex = "Joshua Watt <JPEWhacker@gmail.com>"
-RECIPE_MAINTAINER_pn-python3-extras = "Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>"
-RECIPE_MAINTAINER_pn-python3-git = "Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>"
-RECIPE_MAINTAINER_pn-python3-gitdb = "Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>"
-RECIPE_MAINTAINER_pn-python3-hypothesis = "Tim Orling <timothy.t.orling@intel.com>"
-RECIPE_MAINTAINER_pn-python3-importlib-metadata = "Tim Orling <timothy.t.orling@intel.com>"
-RECIPE_MAINTAINER_pn-python3-iniconfig = "Tim Orling <timothy.t.orling@intel.com>"
-RECIPE_MAINTAINER_pn-python3-iniparse = "Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>"
-RECIPE_MAINTAINER_pn-python3-jinja2 = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-python3-libarchive-c = "Joshua Watt <JPEWhacker@gmail.com>"
-RECIPE_MAINTAINER_pn-python3-magic = "Joshua Watt <JPEWhacker@gmail.com>"
-RECIPE_MAINTAINER_pn-python3-mako = "Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>"
-RECIPE_MAINTAINER_pn-python3-markdown = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-python3-markupsafe = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-python3-more-itertools = "Tim Orling <timothy.t.orling@intel.com>"
-RECIPE_MAINTAINER_pn-python3-nose = "Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>"
-RECIPE_MAINTAINER_pn-python3-numpy = "Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>"
-RECIPE_MAINTAINER_pn-python3-packaging = "Tim Orling <timothy.t.orling@intel.com>"
-RECIPE_MAINTAINER_pn-python3-pathlib2 = "Tim Orling <timothy.t.orling@intel.com>"
-RECIPE_MAINTAINER_pn-python3-pbr = "Zang Ruochen <zangrc.fnst@fujitsu.com>"
-RECIPE_MAINTAINER_pn-python3-pip = "Zang Ruochen <zangrc.fnst@fujitsu.com>"
-RECIPE_MAINTAINER_pn-python3-pluggy = "Tim Orling <timothy.t.orling@intel.com>"
-RECIPE_MAINTAINER_pn-python3-py = "Tim Orling <timothy.t.orling@intel.com>"
-RECIPE_MAINTAINER_pn-python3-pyyaml = "Tim Orling <timothy.t.orling@intel.com>"
-RECIPE_MAINTAINER_pn-python3-pycairo = "Zang Ruochen <zangrc.fnst@fujitsu.com>"
-RECIPE_MAINTAINER_pn-python3-pyelftools = "Joshua Watt <JPEWhacker@gmail.com>"
-RECIPE_MAINTAINER_pn-python3-pygments = "Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>"
-RECIPE_MAINTAINER_pn-python3-pygobject = "Zang Ruochen <zangrc.fnst@fujitsu.com>"
-RECIPE_MAINTAINER_pn-python3-pyparsing = "Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>"
-RECIPE_MAINTAINER_pn-python3-pytest = "Tim Orling <timothy.t.orling@intel.com>"
-RECIPE_MAINTAINER_pn-python3-scons = "Tim Orling <timothy.t.orling@intel.com>"
-RECIPE_MAINTAINER_pn-python3-scons-native = "Tim Orling <timothy.t.orling@intel.com>"
-RECIPE_MAINTAINER_pn-python3-setuptools = "Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>"
-RECIPE_MAINTAINER_pn-python3-setuptools-scm = "Tim Orling <timothy.t.orling@intel.com>"
-RECIPE_MAINTAINER_pn-python3-six = "Zang Ruochen <zangrc.fnst@fujitsu.com>"
-RECIPE_MAINTAINER_pn-python3-smartypants = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-python3-smmap = "Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>"
-RECIPE_MAINTAINER_pn-python3-sortedcontainers = "Tim Orling <timothy.t.orling@intel.com>"
-RECIPE_MAINTAINER_pn-python3-subunit = "Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>"
-RECIPE_MAINTAINER_pn-python3-testtools = "Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>"
-RECIPE_MAINTAINER_pn-python3-toml = "Tim Orling <timothy.t.orling@intel.com>"
-RECIPE_MAINTAINER_pn-python3-typogrify = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-python3-wcwidth = "Tim Orling <timothy.t.orling@intel.com>"
-RECIPE_MAINTAINER_pn-python3-zipp = "Tim Orling <timothy.t.orling@intel.com>"
-RECIPE_MAINTAINER_pn-qemu = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-qemu-helper-native = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-qemu-native = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-qemu-system-native = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-qemuwrapper-cross = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-quilt = "Robert Yang <liezhi.yang@windriver.com>"
-RECIPE_MAINTAINER_pn-quilt-native = "Robert Yang <liezhi.yang@windriver.com>"
-RECIPE_MAINTAINER_pn-quota = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-re2c = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-readline = "Hongxu Jia <hongxu.jia@windriver.com>"
-RECIPE_MAINTAINER_pn-resolvconf = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-rgb = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-rpcbind = "Hongxu Jia <hongxu.jia@windriver.com>"
-RECIPE_MAINTAINER_pn-rng-tools = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-rpcsvc-proto = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER_pn-rpm = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-rsync = "Yi Zhao <yi.zhao@windriver.com>"
-RECIPE_MAINTAINER_pn-rt-tests = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-ruby = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-run-postinsts = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-rxvt-unicode = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-sato-screenshot = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-sbc = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-screen = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-sed = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-serf = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-setserial = "Yi Zhao <yi.zhao@windriver.com>"
-RECIPE_MAINTAINER_pn-settings-daemon = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-shadow = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-shadow-securetty = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-shadow-sysroot = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-shaderc = "Jose Quaresma <quaresma.jose@gmail.com>"
-RECIPE_MAINTAINER_pn-shared-mime-info = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-shutdown-desktop = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-signing-keys = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-slang = "Yi Zhao <yi.zhao@windriver.com>"
-RECIPE_MAINTAINER_pn-socat = "Hongxu Jia <hongxu.jia@windriver.com>"
-RECIPE_MAINTAINER_pn-speex = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-speexdsp = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-spirv-headers = "Jose Quaresma <quaresma.jose@gmail.com>"
-RECIPE_MAINTAINER_pn-spirv-tools = "Jose Quaresma <quaresma.jose@gmail.com>"
-RECIPE_MAINTAINER_pn-sqlite3 = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-squashfs-tools = "Robert Yang <liezhi.yang@windriver.com>"
-RECIPE_MAINTAINER_pn-ssh-pregen-hostkeys = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-startup-notification = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-strace = "Robert Yang <liezhi.yang@windriver.com>"
-RECIPE_MAINTAINER_pn-stress-ng = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-subversion = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-sudo = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-swig = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-sysfsutils = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-sysklogd = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-syslinux = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-sysstat = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-systemd = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-systemd-boot = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-systemd-bootchart = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-systemd-bootconf = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-systemd-conf = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-systemd-compat-units = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-systemd-serialgetty = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-systemd-systemctl-native = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-systemtap = "Victor Kamensky <victor.kamensky7@gmail.com>"
-RECIPE_MAINTAINER_pn-systemtap-native = "Victor Kamensky <victor.kamensky7@gmail.com>"
-RECIPE_MAINTAINER_pn-systemtap-uprobes = "Victor Kamensky <victor.kamensky7@gmail.com>"
-RECIPE_MAINTAINER_pn-sysvinit = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-sysvinit-inittab = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-taglib = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-tar = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-tcf-agent = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-tcl = "Yi Zhao <yi.zhao@windriver.com>"
-RECIPE_MAINTAINER_pn-tcp-wrappers = "Robert Yang <liezhi.yang@windriver.com>"
-RECIPE_MAINTAINER_pn-testexport-tarball = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-texinfo = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-texinfo-dummy-native = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-tiff = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-time = "Robert Yang <liezhi.yang@windriver.com>"
-RECIPE_MAINTAINER_pn-ttf-bitstream-vera = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-tzcode-native = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-tzdata = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-u-boot = "Marek Vasut <marek.vasut@gmail.com>"
-RECIPE_MAINTAINER_pn-u-boot-tools = "Marek Vasut <marek.vasut@gmail.com>"
-RECIPE_MAINTAINER_pn-udev-extraconf = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-unfs3 = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-unifdef = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-uninative-tarball = "Richard Purdie <richard.purdie@linuxfoundation.org>"
-RECIPE_MAINTAINER_pn-unzip = "Denys Dmytriyenko <denis@denix.org>"
-RECIPE_MAINTAINER_pn-update-rc.d = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-usbinit = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-usbutils = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-util-linux = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-util-linux-libuuid = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-util-macros = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-v86d = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-vala = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-valgrind = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-vim = "Tom Rini <trini@konsulko.com>"
-RECIPE_MAINTAINER_pn-vim-tiny = "Tom Rini <trini@konsulko.com>"
-RECIPE_MAINTAINER_pn-virglrenderer = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-volatile-binds = "Chen Qi <Qi.Chen@windriver.com>"
-RECIPE_MAINTAINER_pn-vte = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-vulkan-headers = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-vulkan-loader = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-vulkan-samples = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-vulkan-tools = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-waffle = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-watchdog = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-watchdog-config = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-wayland = "Denys Dmytriyenko <denis@denix.org>"
-RECIPE_MAINTAINER_pn-wayland-protocols = "Denys Dmytriyenko <denis@denix.org>"
-RECIPE_MAINTAINER_pn-wayland-utils = "Denys Dmytriyenko <denis@denix.org>"
-RECIPE_MAINTAINER_pn-webkitgtk = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-weston = "Denys Dmytriyenko <denis@denix.org>"
-RECIPE_MAINTAINER_pn-weston-init = "Denys Dmytriyenko <denis@denix.org>"
-RECIPE_MAINTAINER_pn-wget = "Yi Zhao <yi.zhao@windriver.com>"
-RECIPE_MAINTAINER_pn-which = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-wic-tools = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-wireless-regdb = "Adrian Bunk <bunk@kernel.org>"
-RECIPE_MAINTAINER_pn-wpa-supplicant = "Changhyeok Bae <changhyeok.bae@gmail.com>"
-RECIPE_MAINTAINER_pn-wpebackend-fdo = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-x11perf = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-x264 = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-xauth = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xcb-proto = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xcb-util = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xcb-util-image = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xcb-util-keysyms = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xcb-util-renderutil = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xcb-util-wm = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xcursor-transparent-theme = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xdg-utils = "Anuj Mittal <anuj.mittal@intel.com>"
-RECIPE_MAINTAINER_pn-xdpyinfo = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xev = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xeyes = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xf86-input-evdev = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xf86-input-keyboard = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xf86-input-libinput = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xf86-input-mouse = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xf86-input-synaptics = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xf86-input-vmmouse = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xf86-video-cirrus = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xf86-video-fbdev = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xf86-video-intel = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xf86-video-vesa = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xf86-video-vmware = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xhost = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xinetd = "Ross Burton <ross.burton@arm.com>"
-RECIPE_MAINTAINER_pn-xinit = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xinput = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xinput-calibrator = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xkbcomp = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xkeyboard-config = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xmlto = "Hongxu Jia <hongxu.jia@windriver.com>"
-RECIPE_MAINTAINER_pn-xmodmap = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xorg-minimal-fonts = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xorgproto = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xprop = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xrandr = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xrestop = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xserver-nodm-init = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xserver-xf86-config = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xserver-xorg = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xset = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xtrans = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xuser-account = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xvinfo = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xwayland = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xwininfo = "Unassigned <unassigned@yoctoproject.org>"
-RECIPE_MAINTAINER_pn-xxhash = "Alexander Kanavin <alex.kanavin@gmail.com>"
-RECIPE_MAINTAINER_pn-xz = "Denys Dmytriyenko <denis@denix.org>"
-RECIPE_MAINTAINER_pn-zip = "Denys Dmytriyenko <denis@denix.org>"
-RECIPE_MAINTAINER_pn-zlib = "Denys Dmytriyenko <denis@denix.org>"
-RECIPE_MAINTAINER_pn-zstd = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-acl = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-acpica = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-acpid = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-adwaita-icon-theme = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-alsa-lib = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-alsa-plugins = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-alsa-state = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-alsa-tools = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-alsa-topology-conf = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-alsa-ucm-conf = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-alsa-utils = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-alsa-utils-scripts = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-apmd = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-apr = "Hongxu Jia <hongxu.jia@windriver.com>"
+RECIPE_MAINTAINER:pn-apr-util = "Hongxu Jia <hongxu.jia@windriver.com>"
+RECIPE_MAINTAINER:pn-apt = "Aníbal Limón <limon.anibal@gmail.com>"
+RECIPE_MAINTAINER:pn-argp-standalone = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-asciidoc = "Yi Zhao <yi.zhao@windriver.com>"
+RECIPE_MAINTAINER:pn-aspell = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-assimp = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-at = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-at-spi2-atk = "Tim Orling <timothy.t.orling@intel.com>"
+RECIPE_MAINTAINER:pn-at-spi2-core = "Tim Orling <timothy.t.orling@intel.com>"
+RECIPE_MAINTAINER:pn-atk = "Tim Orling <timothy.t.orling@intel.com>"
+RECIPE_MAINTAINER:pn-attr = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-autoconf = "Robert Yang <liezhi.yang@windriver.com>"
+RECIPE_MAINTAINER:pn-autoconf-archive = "Robert Yang <liezhi.yang@windriver.com>"
+RECIPE_MAINTAINER:pn-automake = "Robert Yang <liezhi.yang@windriver.com>"
+RECIPE_MAINTAINER:pn-avahi = "Yi Zhao <yi.zhao@windriver.com>"
+RECIPE_MAINTAINER:pn-babeltrace = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-babeltrace2 = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-base-files = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-base-passwd = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-bash = "Hongxu Jia <hongxu.jia@windriver.com>"
+RECIPE_MAINTAINER:pn-bash-completion = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-bc = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-bind = "Armin Kuster <akuster808@gmail.com>"
+RECIPE_MAINTAINER:pn-binutils = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-binutils-cross-${TARGET_ARCH} = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-binutils-cross-canadian-${TRANSLATED_TARGET_ARCH} = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-binutils-cross-testsuite = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-binutils-crosssdk-${SDK_SYS} = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-bison = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-blktool = "Yi Zhao <yi.zhao@windriver.com>"
+RECIPE_MAINTAINER:pn-blktrace = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-bluez5 = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-bmap-tools = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-boost = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-boost-build-native = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-bootchart2 = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-bsd-headers = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-btrfs-tools = "Wang Mingyu <wangmy@fujitsu.com>"
+RECIPE_MAINTAINER:pn-build-appliance-image = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-build-sysroots = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-builder = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-buildtools-extended-tarball = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-buildtools-tarball = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-busybox = "Andrej Valek <andrej.valek@siemens.com>"
+RECIPE_MAINTAINER:pn-busybox-inittab = "Denys Dmytriyenko <denis@denix.org>"
+RECIPE_MAINTAINER:pn-bzip2 = "Denys Dmytriyenko <denis@denix.org>"
+RECIPE_MAINTAINER:pn-ca-certificates = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-cairo = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-cantarell-fonts = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-ccache = "Robert Yang <liezhi.yang@windriver.com>"
+RECIPE_MAINTAINER:pn-cdrtools-native = "Yi Zhao <yi.zhao@windriver.com>"
+RECIPE_MAINTAINER:pn-chrpath = "Yi Zhao <yi.zhao@windriver.com>"
+RECIPE_MAINTAINER:pn-cmake = "Pascal Bach <pascal.bach@siemens.com>"
+RECIPE_MAINTAINER:pn-cmake-native = "Pascal Bach <pascal.bach@siemens.com>"
+RECIPE_MAINTAINER:pn-connman = "Changhyeok Bae <changhyeok.bae@gmail.com>"
+RECIPE_MAINTAINER:pn-connman-conf = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-connman-gnome = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-consolekit = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-core-image-base = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-core-image-minimal = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-core-image-minimal-dev = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-core-image-minimal-initramfs = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-core-image-minimal-mtdutils = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-core-image-tiny-initramfs = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-core-image-full-cmdline = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-core-image-kernel-dev = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-core-image-ptest-all = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-core-image-ptest-fast = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-core-image-sato = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-core-image-sato-sdk = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-core-image-testmaster-initramfs = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-core-image-testmaster = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-core-image-weston = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-core-image-weston-sdk = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-core-image-x11 = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-core-image-sato-dev = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-coreutils = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-cpio = "Denys Dmytriyenko <denis@denix.org>"
+RECIPE_MAINTAINER:pn-cracklib = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-createrepo-c = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-cronie = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-cross-localedef-native = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-cryptodev-linux = "Robert Yang <liezhi.yang@windriver.com>"
+RECIPE_MAINTAINER:pn-cryptodev-module = "Robert Yang <liezhi.yang@windriver.com>"
+RECIPE_MAINTAINER:pn-cryptodev-tests = "Robert Yang <liezhi.yang@windriver.com>"
+RECIPE_MAINTAINER:pn-cups = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-curl = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-cve-update-db-native = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-cwautomacros = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-db = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-dbus = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-dbus-glib = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-dbus-test = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-dbus-wait = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-debianutils = "Yi Zhao <yi.zhao@windriver.com>"
+RECIPE_MAINTAINER:pn-dejagnu = "Nathan Rossi <nathan@nathanrossi.com>"
+RECIPE_MAINTAINER:pn-depmodwrapper-cross = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-desktop-file-utils = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-dhcpcd = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-diffoscope = "Joshua Watt <JPEWhacker@gmail.com>"
+RECIPE_MAINTAINER:pn-diffstat = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-diffutils = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-distcc = "Hongxu Jia <hongxu.jia@windriver.com>"
+RECIPE_MAINTAINER:pn-distcc-config = "Yi Zhao <yi.zhao@windriver.com>"
+RECIPE_MAINTAINER:pn-dmidecode = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-dnf = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-docbook-xml-dtd4 = "Yi Zhao <yi.zhao@windriver.com>"
+RECIPE_MAINTAINER:pn-docbook-xsl-stylesheets = "Yi Zhao <yi.zhao@windriver.com>"
+RECIPE_MAINTAINER:pn-dos2unix = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-dosfstools = "Yi Zhao <yi.zhao@windriver.com>"
+RECIPE_MAINTAINER:pn-dpkg = "Aníbal Limón <limon.anibal@gmail.com>"
+RECIPE_MAINTAINER:pn-dropbear = "Yi Zhao <yi.zhao@windriver.com>"
+RECIPE_MAINTAINER:pn-dtc = "Wang Mingyu <wangmy@fujitsu.com>"
+RECIPE_MAINTAINER:pn-dwarfsrcfiles = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-e2fsprogs = "Robert Yang <liezhi.yang@windriver.com>"
+RECIPE_MAINTAINER:pn-ed = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-efivar = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-efibootmgr = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-elfutils = "Zang Ruochen <zangrc.fnst@fujitsu.com>"
+RECIPE_MAINTAINER:pn-ell = "Zang Ruochen <zangrc.fnst@fujitsu.com>"
+RECIPE_MAINTAINER:pn-enchant2 = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-encodings = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-epiphany = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-erofs-utils = "Richard Weinberger <richard@nod.at>"
+RECIPE_MAINTAINER:pn-ethtool = "Changhyeok Bae <changhyeok.bae@gmail.com>"
+RECIPE_MAINTAINER:pn-eudev = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-expat = "Yi Zhao <yi.zhao@windriver.com>"
+RECIPE_MAINTAINER:pn-expect = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-ffmpeg = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-file = "Yi Zhao <yi.zhao@windriver.com>"
+RECIPE_MAINTAINER:pn-findutils = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-flac = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-flex = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-font-alias = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-font-util = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-fontconfig = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-formfactor = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-freetype = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-fribidi = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-fts = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-gawk = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-gcc = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-gcc-cross-${TARGET_ARCH} = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-gcc-cross-canadian-${TRANSLATED_TARGET_ARCH} = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-gcc-crosssdk-${SDK_SYS} = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-gcc-runtime = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-gcc-sanitizers = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-gcc-source-11.2.0 = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-gconf = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-gcr = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-gdb = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-gdb-cross-${TARGET_ARCH} = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-gdb-cross-canadian-${TRANSLATED_TARGET_ARCH} = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-gdbm = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-gdk-pixbuf = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-gettext = "Robert Yang <liezhi.yang@windriver.com>"
+RECIPE_MAINTAINER:pn-gettext-minimal-native = "Robert Yang <liezhi.yang@windriver.com>"
+RECIPE_MAINTAINER:pn-ghostscript = "Hongxu Jia <hongxu.jia@windriver.com>"
+RECIPE_MAINTAINER:pn-gi-docgen = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-git = "Robert Yang <liezhi.yang@windriver.com>"
+RECIPE_MAINTAINER:pn-glew = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-glib-2.0 = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-glib-networking = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-glibc = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-glibc-locale = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-glibc-mtrace = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-glibc-scripts = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-glibc-testsuite = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-glide = "Otavio Salvador <otavio.salvador@ossystems.com.br>"
+RECIPE_MAINTAINER:pn-gmp = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-glslang = "Jose Quaresma <quaresma.jose@gmail.com>"
+RECIPE_MAINTAINER:pn-gnome-desktop-testing = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-gnu-config = "Robert Yang <liezhi.yang@windriver.com>"
+RECIPE_MAINTAINER:pn-gnu-efi = "Yi Zhao <yi.zhao@windriver.com>"
+RECIPE_MAINTAINER:pn-gnupg = "Hongxu Jia <hongxu.jia@windriver.com>"
+RECIPE_MAINTAINER:pn-gnutls = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-go = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-go-binary-native = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-go-cross-${TUNE_PKGARCH} = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-go-cross-canadian-${TRANSLATED_TARGET_ARCH} = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-go-crosssdk-${SDK_SYS} = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-go-helloworld = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-go-native = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-go-runtime = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-gobject-introspection = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-gperf = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-gpgme = "Hongxu Jia <hongxu.jia@windriver.com>"
+RECIPE_MAINTAINER:pn-gptfdisk = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-gcompat = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-grep = "Denys Dmytriyenko <denis@denix.org>"
+RECIPE_MAINTAINER:pn-groff = "Hongxu Jia <hongxu.jia@windriver.com>"
+RECIPE_MAINTAINER:pn-grub = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-grub-bootconf = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-grub-efi = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-gsettings-desktop-schemas = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-gst-devtools = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-gst-examples = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-gstreamer1.0 = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-gstreamer1.0-libav = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-gstreamer1.0-omx = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-gstreamer1.0-meta-base = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-gstreamer1.0-plugins-bad = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-gstreamer1.0-plugins-base = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-gstreamer1.0-plugins-good = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-gstreamer1.0-plugins-ugly = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-gstreamer1.0-python = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-gstreamer1.0-rtsp-server = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-gstreamer1.0-vaapi = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-gtk+3 = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-gtk-doc = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-gzip = "Denys Dmytriyenko <denis@denix.org>"
+RECIPE_MAINTAINER:pn-harfbuzz = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-hdparm = "Denys Dmytriyenko <denis@denix.org>"
+RECIPE_MAINTAINER:pn-help2man = "Hongxu Jia <hongxu.jia@windriver.com>"
+RECIPE_MAINTAINER:pn-hicolor-icon-theme = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-hwlatdetect = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-i2c-tools = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-icecc-create-env = "Joshua Watt <JPEWhacker@gmail.com>"
+RECIPE_MAINTAINER:pn-icu = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-ifupdown = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-igt-gpu-tools = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-inetutils = "Tom Rini <trini@konsulko.com>"
+RECIPE_MAINTAINER:pn-init-ifupdown = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-init-system-helpers = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-initramfs-boot = "Otavio Salvador <otavio.salvador@ossystems.com.br>"
+RECIPE_MAINTAINER:pn-initramfs-framework = "Otavio Salvador <otavio.salvador@ossystems.com.br>"
+RECIPE_MAINTAINER:pn-initramfs-live-boot = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-initramfs-live-boot-tiny = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-initramfs-live-install = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-initramfs-live-install-efi = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-initramfs-live-install-efi-testfs = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-initramfs-live-install-testfs = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-initscripts = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-intltool = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-iproute2 = "Changhyeok Bae <changhyeok.bae@gmail.com>"
+RECIPE_MAINTAINER:pn-iptables = "Changhyeok Bae <changhyeok.bae@gmail.com>"
+RECIPE_MAINTAINER:pn-iputils = "Changhyeok Bae <changhyeok.bae@gmail.com>"
+RECIPE_MAINTAINER:pn-iso-codes = "Wang Mingyu <wangmy@cn.ujitsu.com>"
+RECIPE_MAINTAINER:pn-itstool = "Andreas Müller <schnitzeltony@gmail.com>"
+RECIPE_MAINTAINER:pn-iw = "Changhyeok Bae <changhyeok.bae@gmail.com>"
+RECIPE_MAINTAINER:pn-libjpeg-turbo = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-json-c = "Yi Zhao <yi.zhao@windriver.com>"
+RECIPE_MAINTAINER:pn-json-glib = "Yi Zhao <yi.zhao@windriver.com>"
+RECIPE_MAINTAINER:pn-jquery = "Joshua Watt <JPEWhacker@gmail.com>"
+RECIPE_MAINTAINER:pn-kbd = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-kea = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-kern-tools-native = "Bruce Ashfield <bruce.ashfield@gmail.com>"
+RECIPE_MAINTAINER:pn-kernel-devsrc = "Bruce Ashfield <bruce.ashfield@gmail.com>"
+RECIPE_MAINTAINER:pn-kexec-tools = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-keymaps = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-kmod = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-kmod-native = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-kmscube = "Carlos Rafael Giani <dv@pseudoterminal.org>"
+RECIPE_MAINTAINER:pn-l3afpad = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-lame = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-ldconfig-native = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-less = "Yi Zhao <yi.zhao@windriver.com>"
+RECIPE_MAINTAINER:pn-liba52 = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libacpi = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-libaio = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-libarchive = "Otavio Salvador <otavio.salvador@ossystems.com.br>"
+RECIPE_MAINTAINER:pn-libassuan = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libatomic-ops = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-libbsd = "Yi Zhao <yi.zhao@windriver.com>"
+RECIPE_MAINTAINER:pn-libcap = "Yi Zhao <yi.zhao@windriver.com>"
+RECIPE_MAINTAINER:pn-libcap-ng = "Yi Zhao <yi.zhao@windriver.com>"
+RECIPE_MAINTAINER:pn-libcap-ng-python = "Yi Zhao <yi.zhao@windriver.com>"
+RECIPE_MAINTAINER:pn-libcgroup = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-libcheck = "Yi Zhao <yi.zhao@windriver.com>"
+RECIPE_MAINTAINER:pn-libcomps = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-libconvert-asn1-perl = "Tim Orling <timothy.t.orling@intel.com>"
+RECIPE_MAINTAINER:pn-libcroco = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-libdaemon = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-libdazzle = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-libdmx = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libdnf = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-libdrm = "Otavio Salvador <otavio.salvador@ossystems.com.br>"
+RECIPE_MAINTAINER:pn-libedit = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-libepoxy = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-liberation-fonts = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-liberror-perl = "Tim Orling <timothy.t.orling@intel.com>"
+RECIPE_MAINTAINER:pn-libevdev = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-libevent = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-libexif = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-libfakekey = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-libffi = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-libfm = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-libfm-extra = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-libfontenc = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libgcc = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-libgcc-initial = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-libgcrypt = "Hongxu Jia <hongxu.jia@windriver.com>"
+RECIPE_MAINTAINER:pn-libgfortran = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-libgit2 = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libgloss = "Alejandro Hernandez <aehs29@gmail.com>"
+RECIPE_MAINTAINER:pn-libglu = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-libgpg-error = "Hongxu Jia <hongxu.jia@windriver.com>"
+RECIPE_MAINTAINER:pn-libgudev = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-libhandy = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-libical = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-libice = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libid3tag = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libidn2 = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-libinput = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-libjitterentropy = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-libksba = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-libmatchbox = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-libmd = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-libmicrohttpd = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-libmnl = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-libmpc = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-libmodule-build-perl = "Tim Orling <timothy.t.orling@intel.com>"
+RECIPE_MAINTAINER:pn-libmodulemd = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-libnewt = "Hongxu Jia <hongxu.jia@windriver.com>"
+RECIPE_MAINTAINER:pn-libnl = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-libnotify = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-libnsl2 = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-libnss-mdns = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-libnss-nis = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-libogg = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-libomxil = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-libpam = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-libpcap = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-libpciaccess = "Wang Mingyu <wangmy@fujitsu.com>"
+RECIPE_MAINTAINER:pn-libpcre = "Yi Zhao <yi.zhao@windriver.com>"
+RECIPE_MAINTAINER:pn-libpcre2 = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libpipeline = "Wang Mingyu <wangmy@fujitsu.com>"
+RECIPE_MAINTAINER:pn-libpng = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-libportal = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-libproxy = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-libpthread-stubs = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-libpsl = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-librepo = "Wang Mingyu <wangmy@fujitsu.com>"
+RECIPE_MAINTAINER:pn-librsvg = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-libsamplerate0 = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libsdl2 = "Yi Zhao <yi.zhao@windriver.com>"
+RECIPE_MAINTAINER:pn-libseccomp = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libsecret = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-libsm = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libsndfile1 = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libsolv = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-libsoup-2.4 = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-libssh2 = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libssp-nonshared = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-libtasn1 = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-libtest-needs-perl = "Tim Orling <timothy.t.orling@intel.com>"
+RECIPE_MAINTAINER:pn-libtheora = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-libtimedate-perl = "Tim Orling <timothy.t.orling@intel.com>"
+RECIPE_MAINTAINER:pn-libtirpc = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-libtool = "Robert Yang <liezhi.yang@windriver.com>"
+RECIPE_MAINTAINER:pn-libtool-cross = "Robert Yang <liezhi.yang@windriver.com>"
+RECIPE_MAINTAINER:pn-libtool-native = "Robert Yang <liezhi.yang@windriver.com>"
+RECIPE_MAINTAINER:pn-libucontext = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-libunistring = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-libunwind = "Bruce Ashfield <bruce.ashfield@gmail.com>"
+RECIPE_MAINTAINER:pn-liburcu = "Wang Mingyu <wangmy@fujitsu.com>"
+RECIPE_MAINTAINER:pn-liburi-perl = "Tim Orling <timothy.t.orling@intel.com>"
+RECIPE_MAINTAINER:pn-libusb1 = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-libubootenv = "Stefano Babic <sbabic@denx.de>"
+RECIPE_MAINTAINER:pn-libuv = "Armin Kuster <akuster@mvista.com>"
+RECIPE_MAINTAINER:pn-libva = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-libva-initial = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-libva-utils = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-libvorbis = "Zang Ruochen <zangrc.fnst@fujitsu.com>"
+RECIPE_MAINTAINER:pn-libwebp = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-libwpe = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-libx11 = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libxau = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libxcb = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libxcomposite = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libxcursor = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libxcrypt = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-libxcrypt-compat = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-libxdamage = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libxdmcp = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libxext = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libxfixes = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libxfont = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libxfont2 = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libxft = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libxi = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libxinerama = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libxkbcommon = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libxkbfile = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libxml-namespacesupport-perl = "Tim Orling <timothy.t.orling@intel.com>"
+RECIPE_MAINTAINER:pn-libxml-parser-perl = "Tim Orling <timothy.t.orling@intel.com>"
+RECIPE_MAINTAINER:pn-libxml-perl = "Tim Orling <timothy.t.orling@intel.com>"
+RECIPE_MAINTAINER:pn-libxml-sax-base-perl = "Tim Orling <timothy.t.orling@intel.com>"
+RECIPE_MAINTAINER:pn-libxml-sax-perl = "Tim Orling <timothy.t.orling@intel.com>"
+RECIPE_MAINTAINER:pn-libxml-simple-perl = "Tim Orling <timothy.t.orling@intel.com>"
+RECIPE_MAINTAINER:pn-libxml2 = "Hongxu Jia <hongxu.jia@windriver.com>"
+RECIPE_MAINTAINER:pn-libxmu = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libxpm = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libxrandr = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libxrender = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libxres = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libxscrnsaver = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libxshmfence = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libxslt = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-libxt = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libxtst = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libxv = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libxvmc = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libxxf86vm = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-libyaml = "Wang Mingyu <wangmy@fujitsu.com>"
+RECIPE_MAINTAINER:pn-lighttpd = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-linux-dummy = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-linux-firmware = "Otavio Salvador <otavio.salvador@ossystems.com.br>"
+RECIPE_MAINTAINER:pn-linux-libc-headers = "Bruce Ashfield <bruce.ashfield@gmail.com>"
+RECIPE_MAINTAINER:pn-linux-yocto = "Bruce Ashfield <bruce.ashfield@gmail.com>"
+RECIPE_MAINTAINER:pn-linux-yocto-dev = "Bruce Ashfield <bruce.ashfield@gmail.com>"
+RECIPE_MAINTAINER:pn-linux-yocto-rt = "Bruce Ashfield <bruce.ashfield@gmail.com>"
+RECIPE_MAINTAINER:pn-linux-yocto-tiny = "Bruce Ashfield <bruce.ashfield@gmail.com>"
+RECIPE_MAINTAINER:pn-llvm = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-logrotate = "Yi Zhao <yi.zhao@windriver.com>"
+RECIPE_MAINTAINER:pn-log4cplus = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-lrzsz = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-lsb-release = "Hongxu Jia <hongxu.jia@windriver.com>"
+RECIPE_MAINTAINER:pn-lsof = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-ltp = "Yi Zhao <yi.zhao@windriver.com>"
+RECIPE_MAINTAINER:pn-lttng-modules = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-lttng-tools = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-lttng-ust = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-lz4 = "Denys Dmytriyenko <denis@denix.org>"
+RECIPE_MAINTAINER:pn-lzo = "Denys Dmytriyenko <denis@denix.org>"
+RECIPE_MAINTAINER:pn-lzip = "Denys Dmytriyenko <denis@denix.org>"
+RECIPE_MAINTAINER:pn-lzop = "Denys Dmytriyenko <denis@denix.org>"
+RECIPE_MAINTAINER:pn-m4 = "Robert Yang <liezhi.yang@windriver.com>"
+RECIPE_MAINTAINER:pn-m4-native = "Robert Yang <liezhi.yang@windriver.com>"
+RECIPE_MAINTAINER:pn-make = "Robert Yang <liezhi.yang@windriver.com>"
+RECIPE_MAINTAINER:pn-makedepend = "Robert Yang <liezhi.yang@windriver.com>"
+RECIPE_MAINTAINER:pn-makedevs = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-make-mod-scripts = "Bruce Ashfield <bruce.ashfield@gmail.com>"
+RECIPE_MAINTAINER:pn-man-db = "Hongxu Jia <hongxu.jia@windriver.com>"
+RECIPE_MAINTAINER:pn-man-pages = "Hongxu Jia <hongxu.jia@windriver.com>"
+RECIPE_MAINTAINER:pn-matchbox-config-gtk = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-matchbox-desktop = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-matchbox-keyboard = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-matchbox-panel-2 = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-matchbox-session = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-matchbox-session-sato = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-matchbox-terminal = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-matchbox-theme-sato = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-matchbox-wm = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-mc = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-mdadm = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-menu-cache = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-mesa = "Otavio Salvador <otavio.salvador@ossystems.com.br>"
+RECIPE_MAINTAINER:pn-mesa-demos = "Otavio Salvador <otavio.salvador@ossystems.com.br>"
+RECIPE_MAINTAINER:pn-mesa-gl = "Otavio Salvador <otavio.salvador@ossystems.com.br>"
+RECIPE_MAINTAINER:pn-meson = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-meta-environment-${MACHINE} = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-meta-environment-extsdk-${MACHINE} = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-meta-extsdk-toolchain = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-meta-go-toolchain = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-meta-ide-support = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-meta-toolchain = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-meta-world-pkgdata = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-mingetty = "Yi Zhao <yi.zhao@windriver.com>"
+RECIPE_MAINTAINER:pn-mini-x-session = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-minicom = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-mkfontscale = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-mmc-utils = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-mobile-broadband-provider-info = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-modutils-initscripts = "Yi Zhao <yi.zhao@windriver.com>"
+RECIPE_MAINTAINER:pn-mpeg2dec = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-mpfr = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-mpg123 = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-msmtp = "Wang Mingyu <wangmy@fujitsu.com>"
+RECIPE_MAINTAINER:pn-mtd-utils = "Denys Dmytriyenko <denis@denix.org>"
+RECIPE_MAINTAINER:pn-mtdev = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-mtools = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-musl = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-musl-obstack = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-musl-utils = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-nasm = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-nativesdk-buildtools-perl-dummy = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-nativesdk-icecc-toolchain = "Joshua Watt <JPEWhacker@gmail.com>"
+RECIPE_MAINTAINER:pn-nativesdk-libtool = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-nativesdk-meson = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-nativesdk-packagegroup-sdk-host = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-nativesdk-qemu-helper = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-nativesdk-sdk-provides-dummy = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-newlib = "Alejandro Hernandez <aehs29@gmail.com>"
+RECIPE_MAINTAINER:pn-ncurses = "Hongxu Jia <hongxu.jia@windriver.com>"
+RECIPE_MAINTAINER:pn-neard = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-net-tools = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-netbase = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-nettle = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-nfs-export-root = "Robert Yang <liezhi.yang@windriver.com>"
+RECIPE_MAINTAINER:pn-nfs-utils = "Robert Yang <liezhi.yang@windriver.com>"
+RECIPE_MAINTAINER:pn-ninja = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-npth = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-nss-myhostname = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-numactl = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-ofono = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-opensbi = "Alistair Francis <alistair.francis@wdc.com>"
+RECIPE_MAINTAINER:pn-openssh = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-openssl = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-opkg = "Alejandro del Castillo <alejandro.delcastillo@ni.com>"
+RECIPE_MAINTAINER:pn-opkg-arch-config = "Alejandro del Castillo <alejandro.delcastillo@ni.com>"
+RECIPE_MAINTAINER:pn-opkg-keyrings = "Alejandro del Castillo <alejandro.delcastillo@ni.com>"
+RECIPE_MAINTAINER:pn-opkg-utils = "Alejandro del Castillo <alejandro.delcastillo@ni.com>"
+RECIPE_MAINTAINER:pn-orc = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-os-release = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-ovmf = "Ricardo Neri <ricardo.neri-calderon@linux.intel.com>"
+RECIPE_MAINTAINER:pn-ovmf-shell-image = "Ricardo Neri <ricardo.neri-calderon@linux.intel.com>"
+RECIPE_MAINTAINER:pn-p11-kit = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-package-index = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-pango = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-parted = "Hongxu Jia <hongxu.jia@windriver.com>"
+RECIPE_MAINTAINER:pn-patch = "Hongxu Jia <hongxu.jia@windriver.com>"
+RECIPE_MAINTAINER:pn-patchelf = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-pbzip2 = "Denys Dmytriyenko <denis@denix.org>"
+RECIPE_MAINTAINER:pn-pciutils = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-pcmanfm = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-perf = "Bruce Ashfield <bruce.ashfield@gmail.com>"
+RECIPE_MAINTAINER:pn-perl = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-perlcross = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-piglit = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-pigz = "Hongxu Jia <hongxu.jia@windriver.com>"
+RECIPE_MAINTAINER:pn-pinentry = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-pixman = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-pkgconf = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-pkgconfig = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-pm-utils = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-pointercal-xinput = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-pong-clock = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-popt = "Yi Zhao <yi.zhao@windriver.com>"
+RECIPE_MAINTAINER:pn-powertop = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-ppp = "Hongxu Jia <hongxu.jia@windriver.com>"
+RECIPE_MAINTAINER:pn-ppp-dialin = "Hongxu Jia <hongxu.jia@windriver.com>"
+RECIPE_MAINTAINER:pn-prelink = "Mark Hatle <mark.hatle@kernel.crashing.org>"
+RECIPE_MAINTAINER:pn-procps = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-pseudo = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-psmisc = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-psplash = "Yi Zhao <yi.zhao@windriver.com>"
+RECIPE_MAINTAINER:pn-ptest-runner = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-pulseaudio = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-pulseaudio-client-conf-sato = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-puzzles = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-python3 = "Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>"
+RECIPE_MAINTAINER:pn-python3-async = "Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>"
+RECIPE_MAINTAINER:pn-python3-atomicwrites = "Tim Orling <timothy.t.orling@intel.com>"
+RECIPE_MAINTAINER:pn-python3-attrs = "Tim Orling <timothy.t.orling@intel.com>"
+RECIPE_MAINTAINER:pn-python3-cython = "Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>"
+RECIPE_MAINTAINER:pn-python3-dbus = "Zang Ruochen <zangrc.fnst@fujitsu.com>"
+RECIPE_MAINTAINER:pn-python3-dbusmock = "Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>"
+RECIPE_MAINTAINER:pn-python3-docutils = "Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>"
+RECIPE_MAINTAINER:pn-python3-pycryptodome = "Joshua Watt <JPEWhacker@gmail.com>"
+RECIPE_MAINTAINER:pn-python3-pycryptodomex = "Joshua Watt <JPEWhacker@gmail.com>"
+RECIPE_MAINTAINER:pn-python3-extras = "Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>"
+RECIPE_MAINTAINER:pn-python3-git = "Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>"
+RECIPE_MAINTAINER:pn-python3-gitdb = "Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>"
+RECIPE_MAINTAINER:pn-python3-hypothesis = "Tim Orling <timothy.t.orling@intel.com>"
+RECIPE_MAINTAINER:pn-python3-importlib-metadata = "Tim Orling <timothy.t.orling@intel.com>"
+RECIPE_MAINTAINER:pn-python3-iniconfig = "Tim Orling <timothy.t.orling@intel.com>"
+RECIPE_MAINTAINER:pn-python3-iniparse = "Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>"
+RECIPE_MAINTAINER:pn-python3-jinja2 = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-python3-libarchive-c = "Joshua Watt <JPEWhacker@gmail.com>"
+RECIPE_MAINTAINER:pn-python3-magic = "Joshua Watt <JPEWhacker@gmail.com>"
+RECIPE_MAINTAINER:pn-python3-mako = "Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>"
+RECIPE_MAINTAINER:pn-python3-markdown = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-python3-markupsafe = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-python3-more-itertools = "Tim Orling <timothy.t.orling@intel.com>"
+RECIPE_MAINTAINER:pn-python3-nose = "Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>"
+RECIPE_MAINTAINER:pn-python3-numpy = "Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>"
+RECIPE_MAINTAINER:pn-python3-packaging = "Tim Orling <timothy.t.orling@intel.com>"
+RECIPE_MAINTAINER:pn-python3-pathlib2 = "Tim Orling <timothy.t.orling@intel.com>"
+RECIPE_MAINTAINER:pn-python3-pbr = "Zang Ruochen <zangrc.fnst@fujitsu.com>"
+RECIPE_MAINTAINER:pn-python3-pip = "Zang Ruochen <zangrc.fnst@fujitsu.com>"
+RECIPE_MAINTAINER:pn-python3-pluggy = "Tim Orling <timothy.t.orling@intel.com>"
+RECIPE_MAINTAINER:pn-python3-py = "Tim Orling <timothy.t.orling@intel.com>"
+RECIPE_MAINTAINER:pn-python3-pyyaml = "Tim Orling <timothy.t.orling@intel.com>"
+RECIPE_MAINTAINER:pn-python3-pycairo = "Zang Ruochen <zangrc.fnst@fujitsu.com>"
+RECIPE_MAINTAINER:pn-python3-pyelftools = "Joshua Watt <JPEWhacker@gmail.com>"
+RECIPE_MAINTAINER:pn-python3-pygments = "Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>"
+RECIPE_MAINTAINER:pn-python3-pygobject = "Zang Ruochen <zangrc.fnst@fujitsu.com>"
+RECIPE_MAINTAINER:pn-python3-pyparsing = "Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>"
+RECIPE_MAINTAINER:pn-python3-pytest = "Tim Orling <timothy.t.orling@intel.com>"
+RECIPE_MAINTAINER:pn-python3-scons = "Tim Orling <timothy.t.orling@intel.com>"
+RECIPE_MAINTAINER:pn-python3-scons-native = "Tim Orling <timothy.t.orling@intel.com>"
+RECIPE_MAINTAINER:pn-python3-setuptools = "Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>"
+RECIPE_MAINTAINER:pn-python3-setuptools-scm = "Tim Orling <timothy.t.orling@intel.com>"
+RECIPE_MAINTAINER:pn-python3-six = "Zang Ruochen <zangrc.fnst@fujitsu.com>"
+RECIPE_MAINTAINER:pn-python3-smartypants = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-python3-smmap = "Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>"
+RECIPE_MAINTAINER:pn-python3-sortedcontainers = "Tim Orling <timothy.t.orling@intel.com>"
+RECIPE_MAINTAINER:pn-python3-subunit = "Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>"
+RECIPE_MAINTAINER:pn-python3-testtools = "Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>"
+RECIPE_MAINTAINER:pn-python3-toml = "Tim Orling <timothy.t.orling@intel.com>"
+RECIPE_MAINTAINER:pn-python3-typogrify = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-python3-wcwidth = "Tim Orling <timothy.t.orling@intel.com>"
+RECIPE_MAINTAINER:pn-python3-zipp = "Tim Orling <timothy.t.orling@intel.com>"
+RECIPE_MAINTAINER:pn-qemu = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-qemu-helper-native = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-qemu-native = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-qemu-system-native = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-qemuwrapper-cross = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-quilt = "Robert Yang <liezhi.yang@windriver.com>"
+RECIPE_MAINTAINER:pn-quilt-native = "Robert Yang <liezhi.yang@windriver.com>"
+RECIPE_MAINTAINER:pn-quota = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-re2c = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-readline = "Hongxu Jia <hongxu.jia@windriver.com>"
+RECIPE_MAINTAINER:pn-resolvconf = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-rgb = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-rpcbind = "Hongxu Jia <hongxu.jia@windriver.com>"
+RECIPE_MAINTAINER:pn-rng-tools = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-rpcsvc-proto = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-rpm = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-rsync = "Yi Zhao <yi.zhao@windriver.com>"
+RECIPE_MAINTAINER:pn-rt-tests = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-ruby = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-run-postinsts = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-rxvt-unicode = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-sato-screenshot = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-sbc = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-screen = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-sed = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-serf = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-setserial = "Yi Zhao <yi.zhao@windriver.com>"
+RECIPE_MAINTAINER:pn-settings-daemon = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-shadow = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-shadow-securetty = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-shadow-sysroot = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-shaderc = "Jose Quaresma <quaresma.jose@gmail.com>"
+RECIPE_MAINTAINER:pn-shared-mime-info = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-shutdown-desktop = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-signing-keys = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-slang = "Yi Zhao <yi.zhao@windriver.com>"
+RECIPE_MAINTAINER:pn-socat = "Hongxu Jia <hongxu.jia@windriver.com>"
+RECIPE_MAINTAINER:pn-speex = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-speexdsp = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-spirv-headers = "Jose Quaresma <quaresma.jose@gmail.com>"
+RECIPE_MAINTAINER:pn-spirv-tools = "Jose Quaresma <quaresma.jose@gmail.com>"
+RECIPE_MAINTAINER:pn-sqlite3 = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-squashfs-tools = "Robert Yang <liezhi.yang@windriver.com>"
+RECIPE_MAINTAINER:pn-ssh-pregen-hostkeys = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-startup-notification = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-strace = "Robert Yang <liezhi.yang@windriver.com>"
+RECIPE_MAINTAINER:pn-stress-ng = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-subversion = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-sudo = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-swig = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-sysfsutils = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-sysklogd = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-syslinux = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-sysstat = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-systemd = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-systemd-boot = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-systemd-bootchart = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-systemd-bootconf = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-systemd-conf = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-systemd-compat-units = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-systemd-serialgetty = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-systemd-systemctl-native = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-systemtap = "Victor Kamensky <victor.kamensky7@gmail.com>"
+RECIPE_MAINTAINER:pn-systemtap-native = "Victor Kamensky <victor.kamensky7@gmail.com>"
+RECIPE_MAINTAINER:pn-systemtap-uprobes = "Victor Kamensky <victor.kamensky7@gmail.com>"
+RECIPE_MAINTAINER:pn-sysvinit = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-sysvinit-inittab = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-taglib = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-tar = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-tcf-agent = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-tcl = "Yi Zhao <yi.zhao@windriver.com>"
+RECIPE_MAINTAINER:pn-tcp-wrappers = "Robert Yang <liezhi.yang@windriver.com>"
+RECIPE_MAINTAINER:pn-testexport-tarball = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-texinfo = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-texinfo-dummy-native = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-tiff = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-time = "Robert Yang <liezhi.yang@windriver.com>"
+RECIPE_MAINTAINER:pn-ttf-bitstream-vera = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-tzcode-native = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-tzdata = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-u-boot = "Marek Vasut <marek.vasut@gmail.com>"
+RECIPE_MAINTAINER:pn-u-boot-tools = "Marek Vasut <marek.vasut@gmail.com>"
+RECIPE_MAINTAINER:pn-udev-extraconf = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-unfs3 = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-unifdef = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-uninative-tarball = "Richard Purdie <richard.purdie@linuxfoundation.org>"
+RECIPE_MAINTAINER:pn-unzip = "Denys Dmytriyenko <denis@denix.org>"
+RECIPE_MAINTAINER:pn-update-rc.d = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-usbinit = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-usbutils = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-util-linux = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-util-linux-libuuid = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-util-macros = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-v86d = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-vala = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-valgrind = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-vim = "Tom Rini <trini@konsulko.com>"
+RECIPE_MAINTAINER:pn-vim-tiny = "Tom Rini <trini@konsulko.com>"
+RECIPE_MAINTAINER:pn-virglrenderer = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-volatile-binds = "Chen Qi <Qi.Chen@windriver.com>"
+RECIPE_MAINTAINER:pn-vte = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-vulkan-headers = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-vulkan-loader = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-vulkan-samples = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-vulkan-tools = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-waffle = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-watchdog = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-watchdog-config = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-wayland = "Denys Dmytriyenko <denis@denix.org>"
+RECIPE_MAINTAINER:pn-wayland-protocols = "Denys Dmytriyenko <denis@denix.org>"
+RECIPE_MAINTAINER:pn-wayland-utils = "Denys Dmytriyenko <denis@denix.org>"
+RECIPE_MAINTAINER:pn-webkitgtk = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-weston = "Denys Dmytriyenko <denis@denix.org>"
+RECIPE_MAINTAINER:pn-weston-init = "Denys Dmytriyenko <denis@denix.org>"
+RECIPE_MAINTAINER:pn-wget = "Yi Zhao <yi.zhao@windriver.com>"
+RECIPE_MAINTAINER:pn-which = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-wic-tools = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-wireless-regdb = "Adrian Bunk <bunk@kernel.org>"
+RECIPE_MAINTAINER:pn-wpa-supplicant = "Changhyeok Bae <changhyeok.bae@gmail.com>"
+RECIPE_MAINTAINER:pn-wpebackend-fdo = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-x11perf = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-x264 = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-xauth = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xcb-proto = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xcb-util = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xcb-util-image = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xcb-util-keysyms = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xcb-util-renderutil = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xcb-util-wm = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xcursor-transparent-theme = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xdg-utils = "Anuj Mittal <anuj.mittal@intel.com>"
+RECIPE_MAINTAINER:pn-xdpyinfo = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xev = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xeyes = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xf86-input-evdev = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xf86-input-keyboard = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xf86-input-libinput = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xf86-input-mouse = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xf86-input-synaptics = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xf86-input-vmmouse = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xf86-video-cirrus = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xf86-video-fbdev = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xf86-video-intel = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xf86-video-vesa = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xf86-video-vmware = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xhost = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xinetd = "Ross Burton <ross.burton@arm.com>"
+RECIPE_MAINTAINER:pn-xinit = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xinput = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xinput-calibrator = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xkbcomp = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xkeyboard-config = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xmlto = "Hongxu Jia <hongxu.jia@windriver.com>"
+RECIPE_MAINTAINER:pn-xmodmap = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xorg-minimal-fonts = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xorgproto = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xprop = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xrandr = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xrestop = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xserver-nodm-init = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xserver-xf86-config = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xserver-xorg = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xset = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xtrans = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xuser-account = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xvinfo = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xwayland = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xwininfo = "Unassigned <unassigned@yoctoproject.org>"
+RECIPE_MAINTAINER:pn-xxhash = "Alexander Kanavin <alex.kanavin@gmail.com>"
+RECIPE_MAINTAINER:pn-xz = "Denys Dmytriyenko <denis@denix.org>"
+RECIPE_MAINTAINER:pn-zip = "Denys Dmytriyenko <denis@denix.org>"
+RECIPE_MAINTAINER:pn-zlib = "Denys Dmytriyenko <denis@denix.org>"
+RECIPE_MAINTAINER:pn-zstd = "Alexander Kanavin <alex.kanavin@gmail.com>"
diff --git a/poky/meta/conf/distro/include/no-static-libs.inc b/poky/meta/conf/distro/include/no-static-libs.inc
index a3a865c..7c6cf35 100644
--- a/poky/meta/conf/distro/include/no-static-libs.inc
+++ b/poky/meta/conf/distro/include/no-static-libs.inc
@@ -1,37 +1,37 @@
 DISABLE_STATIC ?= " --disable-static"
 
 # qemu aborts on unrecognised option
-DISABLE_STATIC_pn-qemu = ""
-DISABLE_STATIC_pn-qemu-native = ""
-DISABLE_STATIC_pn-nativesdk-qemu = ""
-DISABLE_STATIC_pn-qemu-system-native = ""
+DISABLE_STATIC:pn-qemu = ""
+DISABLE_STATIC:pn-qemu-native = ""
+DISABLE_STATIC:pn-nativesdk-qemu = ""
+DISABLE_STATIC:pn-qemu-system-native = ""
 # pciutils fails build
-DISABLE_STATIC_pn-pciutils = ""
+DISABLE_STATIC:pn-pciutils = ""
 # libcap aborts on unrecognised option
-DISABLE_STATIC_pn-libcap = ""
-DISABLE_STATIC_pn-libcap-native = ""
-DISABLE_STATIC_pn-nativesdk-libcap = ""
+DISABLE_STATIC:pn-libcap = ""
+DISABLE_STATIC:pn-libcap-native = ""
+DISABLE_STATIC:pn-nativesdk-libcap = ""
 # libpcap aborts on unrecognised option
-DISABLE_STATIC_pn-libpcap = ""
+DISABLE_STATIC:pn-libpcap = ""
 # needed by gdb
-DISABLE_STATIC_pn-readline = ""
+DISABLE_STATIC:pn-readline = ""
 # openjade/sgml-common have build issues without static libs
-DISABLE_STATIC_pn-sgml-common-native = ""
-DISABLE_STATIC_pn-openjade-native = ""
+DISABLE_STATIC:pn-sgml-common-native = ""
+DISABLE_STATIC:pn-openjade-native = ""
 # openssl has build issues without static libs
-DISABLE_STATIC_pn-openssl = ""
-DISABLE_STATIC_pn-openssl-native = ""
-DISABLE_STATIC_pn-nativesdk-openssl = ""
+DISABLE_STATIC:pn-openssl = ""
+DISABLE_STATIC:pn-openssl-native = ""
+DISABLE_STATIC:pn-nativesdk-openssl = ""
 # libssp-static-dev included in build-appliance
-DISABLE_STATIC_pn-gcc-runtime = ""
+DISABLE_STATIC:pn-gcc-runtime = ""
 # libusb1-native is used to build static dfu-util-native
-DISABLE_STATIC_pn-libusb1-native = ""
+DISABLE_STATIC:pn-libusb1-native = ""
 
-EXTRA_OECONF_append = "${DISABLE_STATIC}"
+EXTRA_OECONF:append = "${DISABLE_STATIC}"
 
-EXTRA_OECMAKE_append_pn-libical = " -DSHARED_ONLY=True"
-EXTRA_OECMAKE_append_pn-libjpeg-turbo = " -DENABLE_STATIC=False"
+EXTRA_OECMAKE:append:pn-libical = " -DSHARED_ONLY=True"
+EXTRA_OECMAKE:append:pn-libjpeg-turbo = " -DENABLE_STATIC=False"
 
-EXCONFIG_ARGS_append_pn-ncurses = " --without-normal"
-EXCONFIG_ARGS_append_pn-ncurses-native = " --without-normal"
-EXCONFIG_ARGS_append_pn-nativesdk-ncurses = " --without-normal"
+EXCONFIG_ARGS:append:pn-ncurses = " --without-normal"
+EXCONFIG_ARGS:append:pn-ncurses-native = " --without-normal"
+EXCONFIG_ARGS:append:pn-nativesdk-ncurses = " --without-normal"
diff --git a/poky/meta/conf/distro/include/ptest-packagelists.inc b/poky/meta/conf/distro/include/ptest-packagelists.inc
index d489ad8..3872bdc 100644
--- a/poky/meta/conf/distro/include/ptest-packagelists.inc
+++ b/poky/meta/conf/distro/include/ptest-packagelists.inc
@@ -60,8 +60,8 @@
     wayland-ptest \
     zlib-ptest \
 "
-PTESTS_FAST_remove_mips64 = "qemu-ptest"
-PTESTS_PROBLEMS_append_mips64 = "qemu-ptest"
+PTESTS_FAST:remove:mips64 = "qemu-ptest"
+PTESTS_PROBLEMS:append:mips64 = "qemu-ptest"
 
 PTESTS_SLOW = "\
     babeltrace-ptest \
@@ -84,8 +84,8 @@
     valgrind-ptest \
 "
 
-PTESTS_SLOW_remove_riscv64 = "valgrind-ptest"
-PTESTS_PROBLEMS_append_riscv64 = "valgrind-ptest"
+PTESTS_SLOW:remove:riscv64 = "valgrind-ptest"
+PTESTS_PROBLEMS:append:riscv64 = "valgrind-ptest"
 
 #    ruby-ptest \ # Timeout
 #    lz4-ptest \ # Needs a rewrite
diff --git a/poky/meta/conf/distro/include/security_flags.inc b/poky/meta/conf/distro/include/security_flags.inc
index f996ca9..e469ead 100644
--- a/poky/meta/conf/distro/include/security_flags.inc
+++ b/poky/meta/conf/distro/include/security_flags.inc
@@ -32,40 +32,40 @@
 SECURITY_X_LDFLAGS ?= "-Wl,-z,relro"
 
 # powerpc does not get on with pie for reasons not looked into as yet
-GCCPIE_powerpc = ""
-GLIBCPIE_powerpc = ""
-SECURITY_CFLAGS_remove_powerpc = "${SECURITY_PIE_CFLAGS}"
-SECURITY_CFLAGS_pn-libgcc_powerpc = ""
+GCCPIE:powerpc = ""
+GLIBCPIE:powerpc = ""
+SECURITY_CFLAGS:remove:powerpc = "${SECURITY_PIE_CFLAGS}"
+SECURITY_CFLAGS:pn-libgcc:powerpc = ""
 
-SECURITY_CFLAGS_pn-glibc = ""
-SECURITY_CFLAGS_pn-glibc-testsuite = ""
-SECURITY_CFLAGS_pn-gcc-runtime = ""
-SECURITY_CFLAGS_pn-grub = ""
-SECURITY_CFLAGS_pn-grub-efi = ""
-SECURITY_CFLAGS_pn-mkelfimage_x86 = ""
+SECURITY_CFLAGS:pn-glibc = ""
+SECURITY_CFLAGS:pn-glibc-testsuite = ""
+SECURITY_CFLAGS:pn-gcc-runtime = ""
+SECURITY_CFLAGS:pn-grub = ""
+SECURITY_CFLAGS:pn-grub-efi = ""
+SECURITY_CFLAGS:pn-mkelfimage:x86 = ""
 
-SECURITY_CFLAGS_pn-valgrind = "${SECURITY_NOPIE_CFLAGS}"
-SECURITY_LDFLAGS_pn-valgrind = ""
-SECURITY_CFLAGS_pn-sysklogd = "${SECURITY_NOPIE_CFLAGS}"
-SECURITY_LDFLAGS_pn-sysklogd = ""
+SECURITY_CFLAGS:pn-valgrind = "${SECURITY_NOPIE_CFLAGS}"
+SECURITY_LDFLAGS:pn-valgrind = ""
+SECURITY_CFLAGS:pn-sysklogd = "${SECURITY_NOPIE_CFLAGS}"
+SECURITY_LDFLAGS:pn-sysklogd = ""
 
 # Recipes which fail to compile when elevating -Wformat-security to an error
-SECURITY_STRINGFORMAT_pn-busybox = ""
-SECURITY_STRINGFORMAT_pn-gcc = ""
+SECURITY_STRINGFORMAT:pn-busybox = ""
+SECURITY_STRINGFORMAT:pn-gcc = ""
 
-TARGET_CC_ARCH_append_class-target = " ${SECURITY_CFLAGS}"
-TARGET_LDFLAGS_append_class-target = " ${SECURITY_LDFLAGS}"
-TARGET_CC_ARCH_append_class-cross-canadian = " ${SECURITY_CFLAGS}"
-TARGET_LDFLAGS_append_class-cross-canadian = " ${SECURITY_LDFLAGS}"
+TARGET_CC_ARCH:append:class-target = " ${SECURITY_CFLAGS}"
+TARGET_LDFLAGS:append:class-target = " ${SECURITY_LDFLAGS}"
+TARGET_CC_ARCH:append:class-cross-canadian = " ${SECURITY_CFLAGS}"
+TARGET_LDFLAGS:append:class-cross-canadian = " ${SECURITY_LDFLAGS}"
 
-SECURITY_STACK_PROTECTOR_pn-gcc-runtime = ""
-SECURITY_STACK_PROTECTOR_pn-glibc = ""
-SECURITY_STACK_PROTECTOR_pn-glibc-testsuite = ""
+SECURITY_STACK_PROTECTOR:pn-gcc-runtime = ""
+SECURITY_STACK_PROTECTOR:pn-glibc = ""
+SECURITY_STACK_PROTECTOR:pn-glibc-testsuite = ""
 # All xorg module drivers need to be linked this way as well and are
 # handled in recipes-graphics/xorg-driver/xorg-driver-common.inc
-SECURITY_LDFLAGS_pn-xserver-xorg = "${SECURITY_X_LDFLAGS}"
+SECURITY_LDFLAGS:pn-xserver-xorg = "${SECURITY_X_LDFLAGS}"
 
-TARGET_CC_ARCH_append_pn-binutils = " ${SELECTED_OPTIMIZATION}"
-TARGET_CC_ARCH_append_pn-gcc = " ${SELECTED_OPTIMIZATION}"
-TARGET_CC_ARCH_append_pn-gdb = " ${SELECTED_OPTIMIZATION}"
-TARGET_CC_ARCH_append_pn-perf = " ${SELECTED_OPTIMIZATION}"
+TARGET_CC_ARCH:append:pn-binutils = " ${SELECTED_OPTIMIZATION}"
+TARGET_CC_ARCH:append:pn-gcc = " ${SELECTED_OPTIMIZATION}"
+TARGET_CC_ARCH:append:pn-gdb = " ${SELECTED_OPTIMIZATION}"
+TARGET_CC_ARCH:append:pn-perf = " ${SELECTED_OPTIMIZATION}"
diff --git a/poky/meta/conf/distro/include/tclibc-baremetal.inc b/poky/meta/conf/distro/include/tclibc-baremetal.inc
index 31d132e..86ff93f 100644
--- a/poky/meta/conf/distro/include/tclibc-baremetal.inc
+++ b/poky/meta/conf/distro/include/tclibc-baremetal.inc
@@ -18,22 +18,22 @@
 IMAGE_LINGUAS = ""
 LIBC_DEPENDENCIES = ""
 
-EXTRA_OECONF_pn-gcc-cross-${TARGET_ARCH}_append = " --without-headers"
-DEPENDS_remove_pn-meta-toolchain = "virtual/libc virtual/${TARGET_PREFIX}compilerlibs"
+EXTRA_OECONF:pn-gcc-cross-${TARGET_ARCH}:append = " --without-headers"
+DEPENDS:remove:pn-meta-toolchain = "virtual/libc virtual/${TARGET_PREFIX}compilerlibs"
 
 # certain compiler libs cannot be used without libc, avoid the dependence on compilerlibs
-BASEDEPENDS_remove_class-target = "virtual/${TARGET_PREFIX}compilerlibs"
+BASEDEPENDS:remove:class-target = "virtual/${TARGET_PREFIX}compilerlibs"
 
 TARGET_OS = "elf"
-TARGET_OS_arm = "eabi"
+TARGET_OS:arm = "eabi"
 
 TOOLCHAIN_HOST_TASK ?= "packagegroup-cross-canadian-${MACHINE} nativesdk-qemu"
 TOOLCHAIN_HOST_TASK_ATTEMPTONLY ?= ""
 TOOLCHAIN_TARGET_TASK ?= "libgcc-dev"
-TOOLCHAIN_NEED_CONFIGSITE_CACHE_remove = "virtual/${MLPREFIX}libc zlib ncurses"
+TOOLCHAIN_NEED_CONFIGSITE_CACHE:remove = "virtual/${MLPREFIX}libc zlib ncurses"
 
 # disable stack protector by default (no-libc, no protector implementation)
-SECURITY_STACK_PROTECTOR_libc-baremetal = ""
+SECURITY_STACK_PROTECTOR:libc-baremetal = ""
 # disable pie security flags by default
-SECURITY_CFLAGS_libc-baremetal = "${SECURITY_NOPIE_CFLAGS}"
-SECURITY_LDFLAGS_libc-baremetal = ""
+SECURITY_CFLAGS:libc-baremetal = "${SECURITY_NOPIE_CFLAGS}"
+SECURITY_LDFLAGS:libc-baremetal = ""
diff --git a/poky/meta/conf/distro/include/tclibc-newlib.inc b/poky/meta/conf/distro/include/tclibc-newlib.inc
index bf89b11..e359058 100644
--- a/poky/meta/conf/distro/include/tclibc-newlib.inc
+++ b/poky/meta/conf/distro/include/tclibc-newlib.inc
@@ -33,15 +33,15 @@
 
 # Its useful to be able to extend newlib, but we dont provide a native variant of libgloss
 NEWLIB_EXTENDED ?=  "libgloss libgcc"
-BASE_DEFAULT_DEPS_append_class-target = " ${NEWLIB_EXTENDED}"
+BASE_DEFAULT_DEPS:append:class-target = " ${NEWLIB_EXTENDED}"
 
 TARGET_OS = "elf"
-TARGET_OS_arm = "eabi"
+TARGET_OS:arm = "eabi"
 
 TOOLCHAIN_HOST_TASK ?= "packagegroup-cross-canadian-${MACHINE} nativesdk-qemu"
 TOOLCHAIN_TARGET_TASK ?= "${LIBC_DEPENDENCIES}"
-TOOLCHAIN_NEED_CONFIGSITE_CACHE_remove = "zlib ncurses"
+TOOLCHAIN_NEED_CONFIGSITE_CACHE:remove = "zlib ncurses"
 
 # disable pie security flags by default
-SECURITY_CFLAGS_libc-newlib = "${SECURITY_NOPIE_CFLAGS}"
-SECURITY_LDFLAGS_libc-newlib = ""
+SECURITY_CFLAGS:libc-newlib = "${SECURITY_NOPIE_CFLAGS}"
+SECURITY_LDFLAGS:libc-newlib = ""
diff --git a/poky/meta/conf/distro/include/tcmode-default.inc b/poky/meta/conf/distro/include/tcmode-default.inc
index 68e5d84..7afe28a 100644
--- a/poky/meta/conf/distro/include/tcmode-default.inc
+++ b/poky/meta/conf/distro/include/tcmode-default.inc
@@ -18,7 +18,7 @@
 
 GCCVERSION ?= "11.%"
 SDKGCCVERSION ?= "${GCCVERSION}"
-BINUVERSION ?= "2.36%"
+BINUVERSION ?= "2.37%"
 GDBVERSION ?= "10.%"
 GLIBCVERSION ?= "2.33"
 LINUXLIBCVERSION ?= "5.13%"
@@ -26,7 +26,7 @@
 GOVERSION ?= "1.16%"
 # This can not use wildcards like 8.0.% since it is also used in mesa to denote
 # llvm version being used, so always bump it with llvm recipe version bump
-LLVMVERSION ?= "12.0.0"
+LLVMVERSION ?= "12.0.1"
 
 PREFERRED_VERSION_gcc ?= "${GCCVERSION}"
 PREFERRED_VERSION_gcc-cross-${TARGET_ARCH} ?= "${GCCVERSION}"
diff --git a/poky/meta/conf/distro/include/uninative-flags.inc b/poky/meta/conf/distro/include/uninative-flags.inc
index febf2a5..4638a7b 100644
--- a/poky/meta/conf/distro/include/uninative-flags.inc
+++ b/poky/meta/conf/distro/include/uninative-flags.inc
@@ -4,4 +4,4 @@
 # We therefore enable pie unconditionally for native recipes where static libs are
 # used such as libiberty from binutils, for now, until our minimum distro set is
 # all default pie.
-BUILD_CFLAGS_append_pn-binutils-native = " -pie -fpie"
+BUILD_CFLAGS:append:pn-binutils-native = " -pie -fpie"
diff --git a/poky/meta/conf/image-uefi.conf b/poky/meta/conf/image-uefi.conf
index 6ef011e..04a151f 100644
--- a/poky/meta/conf/image-uefi.conf
+++ b/poky/meta/conf/image-uefi.conf
@@ -10,12 +10,12 @@
 
 # The EFI name for the architecture
 EFI_ARCH ?= "INVALID"
-EFI_ARCH_x86 = "ia32"
-EFI_ARCH_x86-64 = "x64"
-EFI_ARCH_aarch64 = "aa64"
-EFI_ARCH_arm = "arm"
-EFI_ARCH_riscv32 = "riscv32"
-EFI_ARCH_riscv64 = "riscv64"
+EFI_ARCH:x86 = "ia32"
+EFI_ARCH:x86-64 = "x64"
+EFI_ARCH:aarch64 = "aa64"
+EFI_ARCH:arm = "arm"
+EFI_ARCH:riscv32 = "riscv32"
+EFI_ARCH:riscv64 = "riscv64"
 
 # Determine name of bootloader image
 EFI_BOOT_IMAGE ?= "boot${EFI_ARCH}.efi"
diff --git a/poky/meta/conf/layer.conf b/poky/meta/conf/layer.conf
index 5892c80..307ad7e 100644
--- a/poky/meta/conf/layer.conf
+++ b/poky/meta/conf/layer.conf
@@ -7,7 +7,7 @@
 BBFILE_PATTERN_core = "^${LAYERDIR}/"
 BBFILE_PRIORITY_core = "5"
 
-LAYERSERIES_CORENAMES = "hardknott honister"
+LAYERSERIES_CORENAMES = "honister"
 
 # This should only be incremented on significant changes that will
 # cause compatibility issues with other layers
diff --git a/poky/meta/conf/machine-sdk/aarch64.conf b/poky/meta/conf/machine-sdk/aarch64.conf
index 98d8380..4a285cf 100644
--- a/poky/meta/conf/machine-sdk/aarch64.conf
+++ b/poky/meta/conf/machine-sdk/aarch64.conf
@@ -1,2 +1,2 @@
 SDK_ARCH = "aarch64"
-ABIEXTENSION_class-nativesdk = ""
+ABIEXTENSION:class-nativesdk = ""
diff --git a/poky/meta/conf/machine-sdk/i586.conf b/poky/meta/conf/machine-sdk/i586.conf
index 41e5e15..05e8269 100644
--- a/poky/meta/conf/machine-sdk/i586.conf
+++ b/poky/meta/conf/machine-sdk/i586.conf
@@ -1,4 +1,4 @@
 SDK_ARCH = "i586"
 SDK_CC_ARCH = "-march=i586"
-ABIEXTENSION_class-nativesdk = ""
+ABIEXTENSION:class-nativesdk = ""
 
diff --git a/poky/meta/conf/machine-sdk/i686.conf b/poky/meta/conf/machine-sdk/i686.conf
index fe40697..22f580e 100644
--- a/poky/meta/conf/machine-sdk/i686.conf
+++ b/poky/meta/conf/machine-sdk/i686.conf
@@ -1,3 +1,3 @@
 SDK_ARCH = "i686"
 SDK_CC_ARCH = "-march=i686"
-ABIEXTENSION_class-nativesdk = ""
+ABIEXTENSION:class-nativesdk = ""
diff --git a/poky/meta/conf/machine-sdk/ppc64.conf b/poky/meta/conf/machine-sdk/ppc64.conf
index 1eb064e..b41325d 100644
--- a/poky/meta/conf/machine-sdk/ppc64.conf
+++ b/poky/meta/conf/machine-sdk/ppc64.conf
@@ -1,2 +1,2 @@
 SDK_ARCH = "ppc64"
-ABIEXTENSION_class-nativesdk = ""
+ABIEXTENSION:class-nativesdk = ""
diff --git a/poky/meta/conf/machine-sdk/ppc64le.conf b/poky/meta/conf/machine-sdk/ppc64le.conf
index 0eebc58..db1f863 100644
--- a/poky/meta/conf/machine-sdk/ppc64le.conf
+++ b/poky/meta/conf/machine-sdk/ppc64le.conf
@@ -1,2 +1,2 @@
 SDK_ARCH = "ppc64le"
-ABIEXTENSION_class-nativesdk = ""
+ABIEXTENSION:class-nativesdk = ""
diff --git a/poky/meta/conf/machine-sdk/x86_64.conf b/poky/meta/conf/machine-sdk/x86_64.conf
index 61439b4..8d494b2 100644
--- a/poky/meta/conf/machine-sdk/x86_64.conf
+++ b/poky/meta/conf/machine-sdk/x86_64.conf
@@ -1,2 +1,2 @@
 SDK_ARCH = "x86_64"
-ABIEXTENSION_class-nativesdk = ""
+ABIEXTENSION:class-nativesdk = ""
diff --git a/poky/meta/conf/machine/include/README b/poky/meta/conf/machine/include/README
index d66130a..3ae6823 100644
--- a/poky/meta/conf/machine/include/README
+++ b/poky/meta/conf/machine/include/README
@@ -31,10 +31,10 @@
 New sanity checks will try to reject combinations in which a single
 tuning ends up with features which conflict with each other.
 
-TUNE_FEATURES - This is automatically defined as TUNE_FEATURES_tune-<tune>.
-See TUNE_FEATURES_tune-<tune> for more information.
+TUNE_FEATURES - This is automatically defined as TUNE_FEATURES:tune-<tune>.
+See TUNE_FEATURES:tune-<tune> for more information.
 
-TUNE_FEATURES_tune-<tune> - Specify the features used to describe a
+TUNE_FEATURES:tune-<tune> - Specify the features used to describe a
 specific tune.  This is a list of features that a tune support, each
 feature must be in the TUNEVALID list.  Note: the tune and a given
 feature name may be the same, but they have different purposes.  Only
@@ -66,10 +66,10 @@
 
 PACKAGE_EXTRA_ARCHS - Lists all runtime compatible package
 architectures.  By default this is equal to
-PACKAGE_EXTRA_ARCHS_tune-<tune>.  If an architecture deviates from the
+PACKAGE_EXTRA_ARCHS:tune-<tune>.  If an architecture deviates from the
 default it will be listed in the architecture README.
 
-PACKAGE_EXTRA_ARCHS_tune-<tune> - List all of the package architectures
+PACKAGE_EXTRA_ARCHS:tune-<tune> - List all of the package architectures
 that are compatible with this specific tune.  The package arch of this
 tune must be in the list.
 
@@ -79,7 +79,7 @@
 compiler and other toolchain items.  This should be dynamically
 configured in the same way that TUNE_CCARGS is.
 
-BASE_LIB_tune-<tune> - The "/lib" location for a specific ABI.  This is
+BASE_LIB:tune-<tune> - The "/lib" location for a specific ABI.  This is
 used in a multilib configuration to place the libraries in the correct,
 non-conflicting locations.
 
diff --git a/poky/meta/conf/machine/include/arm/README b/poky/meta/conf/machine/include/arm/README
index a1beb75..c563779 100644
--- a/poky/meta/conf/machine/include/arm/README
+++ b/poky/meta/conf/machine/include/arm/README
@@ -10,7 +10,7 @@
 
 A small set of ARM specific variables have been defined to allow 
 TUNE_PKGARCH to be automatically defined.  Optimized tunings must NOT 
-change the definiton of TUNE_PKGARCH.  TUNE_PKGACH_tune-<tune> will be 
+change the definiton of TUNE_PKGARCH.  TUNE_PKGACH:tune-<tune> will be 
 ignored.  The format of the package arch is enforced by the TUNE_PKGARCH
 default.  The format must be of the form:
 <armversion>[t][e][hf][b][-vfp][-neon]
diff --git a/poky/meta/conf/machine/include/arm/arch-arm.inc b/poky/meta/conf/machine/include/arm/arch-arm.inc
index 99625d8..8690890 100644
--- a/poky/meta/conf/machine/include/arm/arch-arm.inc
+++ b/poky/meta/conf/machine/include/arm/arch-arm.inc
@@ -1,7 +1,7 @@
 
 TUNEVALID[bigendian] = "Enable big-endian mode."
 
-ARMPKGARCH = "${ARMPKGARCH_tune-${DEFAULTTUNE}}"
+ARMPKGARCH = "${ARMPKGARCH:tune-${DEFAULTTUNE}}"
 ARMPKGSFX_ENDIAN = "${@bb.utils.contains('TUNE_FEATURES', 'bigendian', 'b', '', d)}"
 ARMPKGSFX_FPU ??= ""
 ARMPKGSFX_DSP ??= ""
diff --git a/poky/meta/conf/machine/include/arm/arch-arm64.inc b/poky/meta/conf/machine/include/arm/arch-arm64.inc
index eab3323..0e2efb5 100644
--- a/poky/meta/conf/machine/include/arm/arch-arm64.inc
+++ b/poky/meta/conf/machine/include/arm/arch-arm64.inc
@@ -9,17 +9,17 @@
 
 # Little Endian base configs
 AVAILTUNES += "aarch64 aarch64_be"
-ARMPKGARCH_tune-aarch64 ?= "aarch64"
-ARMPKGARCH_tune-aarch64_be ?= "aarch64"
-TUNE_FEATURES_tune-aarch64 = "aarch64"
-TUNE_FEATURES_tune-aarch64_be = "${TUNE_FEATURES_tune-aarch64} bigendian"
-TUNE_PKGARCH_64_tune-aarch64 = "aarch64"
-TUNE_PKGARCH_64_tune-aarch64_be = "aarch64_be"
-BASE_LIB_tune-aarch64 = "lib64"
-BASE_LIB_tune-aarch64_be = "lib64"
+ARMPKGARCH:tune-aarch64 ?= "aarch64"
+ARMPKGARCH:tune-aarch64_be ?= "aarch64"
+TUNE_FEATURES:tune-aarch64 = "aarch64"
+TUNE_FEATURES:tune-aarch64_be = "${TUNE_FEATURES:tune-aarch64} bigendian"
+TUNE_PKGARCH_64:tune-aarch64 = "aarch64"
+TUNE_PKGARCH_64:tune-aarch64_be = "aarch64_be"
+BASE_LIB:tune-aarch64 = "lib64"
+BASE_LIB:tune-aarch64_be = "lib64"
 
-PACKAGE_EXTRA_ARCHS_tune-aarch64 = "aarch64"
-PACKAGE_EXTRA_ARCHS_tune-aarch64_be = "aarch64_be"
+PACKAGE_EXTRA_ARCHS:tune-aarch64 = "aarch64"
+PACKAGE_EXTRA_ARCHS:tune-aarch64_be = "aarch64_be"
 
 ARMPKGSFX_ENDIAN_64 = "${@bb.utils.contains('TUNE_FEATURES', 'bigendian', '_be', '', d)}"
 TUNE_ARCH_64 = "aarch64${ARMPKGSFX_ENDIAN_64}"
diff --git a/poky/meta/conf/machine/include/arm/arch-armv4.inc b/poky/meta/conf/machine/include/arm/arch-armv4.inc
index b71739c..4f4a63b 100644
--- a/poky/meta/conf/machine/include/arm/arch-armv4.inc
+++ b/poky/meta/conf/machine/include/arm/arch-armv4.inc
@@ -17,18 +17,18 @@
 
 # Little Endian
 AVAILTUNES += "armv4 armv4t"
-ARMPKGARCH_tune-armv4  ?= "armv4"
-ARMPKGARCH_tune-armv4t ?= "armv4"
-TUNE_FEATURES_tune-armv4  = "arm armv4"
-TUNE_FEATURES_tune-armv4t = "${TUNE_FEATURES_tune-armv4} thumb"
-PACKAGE_EXTRA_ARCHS_tune-armv4  = "arm armv4"
-PACKAGE_EXTRA_ARCHS_tune-armv4t = "${PACKAGE_EXTRA_ARCHS_tune-armv4} armv4t"
+ARMPKGARCH:tune-armv4  ?= "armv4"
+ARMPKGARCH:tune-armv4t ?= "armv4"
+TUNE_FEATURES:tune-armv4  = "arm armv4"
+TUNE_FEATURES:tune-armv4t = "${TUNE_FEATURES:tune-armv4} thumb"
+PACKAGE_EXTRA_ARCHS:tune-armv4  = "arm armv4"
+PACKAGE_EXTRA_ARCHS:tune-armv4t = "${PACKAGE_EXTRA_ARCHS:tune-armv4} armv4t"
 
 # Big Endian
 AVAILTUNES += "armv4b armv4tb"
-ARMPKGARCH_tune-armv4b  ?= "armv4"
-ARMPKGARCH_tune-armv4tb ?= "armv4"
-TUNE_FEATURES_tune-armv4b  = "${TUNE_FEATURES_tune-armv4}  bigendian"
-TUNE_FEATURES_tune-armv4tb = "${TUNE_FEATURES_tune-armv4t} bigendian"
-PACKAGE_EXTRA_ARCHS_tune-armv4b  = "armeb armv4b"
-PACKAGE_EXTRA_ARCHS_tune-armv4tb = "${PACKAGE_EXTRA_ARCHS_tune-armv4b} armv4tb"
+ARMPKGARCH:tune-armv4b  ?= "armv4"
+ARMPKGARCH:tune-armv4tb ?= "armv4"
+TUNE_FEATURES:tune-armv4b  = "${TUNE_FEATURES:tune-armv4}  bigendian"
+TUNE_FEATURES:tune-armv4tb = "${TUNE_FEATURES:tune-armv4t} bigendian"
+PACKAGE_EXTRA_ARCHS:tune-armv4b  = "armeb armv4b"
+PACKAGE_EXTRA_ARCHS:tune-armv4tb = "${PACKAGE_EXTRA_ARCHS:tune-armv4b} armv4tb"
diff --git a/poky/meta/conf/machine/include/arm/arch-armv5-dsp.inc b/poky/meta/conf/machine/include/arm/arch-armv5-dsp.inc
index d117af1..d296e82 100644
--- a/poky/meta/conf/machine/include/arm/arch-armv5-dsp.inc
+++ b/poky/meta/conf/machine/include/arm/arch-armv5-dsp.inc
@@ -5,48 +5,48 @@
 
 # Little Endian
 AVAILTUNES += "armv5e armv5te"
-ARMPKGARCH_tune-armv5e  ?= "armv5"
-ARMPKGARCH_tune-armv5te ?= "armv5"
-TUNE_FEATURES_tune-armv5e  = "${TUNE_FEATURES_tune-armv5} dsp"
-TUNE_FEATURES_tune-armv5te = "${TUNE_FEATURES_tune-armv5t} dsp"
-PACKAGE_EXTRA_ARCHS_tune-armv5e  = "${PACKAGE_EXTRA_ARCHS_tune-armv5} armv5e"
-PACKAGE_EXTRA_ARCHS_tune-armv5te = "${PACKAGE_EXTRA_ARCHS_tune-armv5t} armv5e armv5te"
+ARMPKGARCH:tune-armv5e  ?= "armv5"
+ARMPKGARCH:tune-armv5te ?= "armv5"
+TUNE_FEATURES:tune-armv5e  = "${TUNE_FEATURES:tune-armv5} dsp"
+TUNE_FEATURES:tune-armv5te = "${TUNE_FEATURES:tune-armv5t} dsp"
+PACKAGE_EXTRA_ARCHS:tune-armv5e  = "${PACKAGE_EXTRA_ARCHS:tune-armv5} armv5e"
+PACKAGE_EXTRA_ARCHS:tune-armv5te = "${PACKAGE_EXTRA_ARCHS:tune-armv5t} armv5e armv5te"
 
 # Little Endian + VFP/DSP
 AVAILTUNES += "armv5e-vfp armv5te-vfp armv5ehf-vfp armv5tehf-vfp"
-ARMPKGARCH_tune-armv5e-vfp    ?= "armv5"
-ARMPKGARCH_tune-armv5te-vfp   ?= "armv5"
-ARMPKGARCH_tune-armv5ehf-vfp  ?= "armv5"
-ARMPKGARCH_tune-armv5tehf-vfp ?= "armv5"
-TUNE_FEATURES_tune-armv5e-vfp    = "${TUNE_FEATURES_tune-armv5e} vfp"
-TUNE_FEATURES_tune-armv5te-vfp   = "${TUNE_FEATURES_tune-armv5te} vfp"
-TUNE_FEATURES_tune-armv5ehf-vfp  = "${TUNE_FEATURES_tune-armv5e-vfp} callconvention-hard"
-TUNE_FEATURES_tune-armv5tehf-vfp = "${TUNE_FEATURES_tune-armv5te-vfp} callconvention-hard"
-PACKAGE_EXTRA_ARCHS_tune-armv5e-vfp    = "${PACKAGE_EXTRA_ARCHS_tune-armv5-vfp} armv5e armv5e-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv5te-vfp   = "${PACKAGE_EXTRA_ARCHS_tune-armv5t-vfp} armv5e armv5te armv5e-vfp armv5te-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv5ehf-vfp  = "${PACKAGE_EXTRA_ARCHS_tune-armv5hf-vfp} armv5ehf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv5tehf-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5thf-vfp} armv5ehf-vfp armv5tehf-vfp"
+ARMPKGARCH:tune-armv5e-vfp    ?= "armv5"
+ARMPKGARCH:tune-armv5te-vfp   ?= "armv5"
+ARMPKGARCH:tune-armv5ehf-vfp  ?= "armv5"
+ARMPKGARCH:tune-armv5tehf-vfp ?= "armv5"
+TUNE_FEATURES:tune-armv5e-vfp    = "${TUNE_FEATURES:tune-armv5e} vfp"
+TUNE_FEATURES:tune-armv5te-vfp   = "${TUNE_FEATURES:tune-armv5te} vfp"
+TUNE_FEATURES:tune-armv5ehf-vfp  = "${TUNE_FEATURES:tune-armv5e-vfp} callconvention-hard"
+TUNE_FEATURES:tune-armv5tehf-vfp = "${TUNE_FEATURES:tune-armv5te-vfp} callconvention-hard"
+PACKAGE_EXTRA_ARCHS:tune-armv5e-vfp    = "${PACKAGE_EXTRA_ARCHS:tune-armv5-vfp} armv5e armv5e-vfp"
+PACKAGE_EXTRA_ARCHS:tune-armv5te-vfp   = "${PACKAGE_EXTRA_ARCHS:tune-armv5t-vfp} armv5e armv5te armv5e-vfp armv5te-vfp"
+PACKAGE_EXTRA_ARCHS:tune-armv5ehf-vfp  = "${PACKAGE_EXTRA_ARCHS:tune-armv5hf-vfp} armv5ehf-vfp"
+PACKAGE_EXTRA_ARCHS:tune-armv5tehf-vfp = "${PACKAGE_EXTRA_ARCHS:tune-armv5thf-vfp} armv5ehf-vfp armv5tehf-vfp"
 
 # Big Endian
 AVAILTUNES += "armv5eb armv5teb"
-ARMPKGARCH_tune-armv5eb  ?= "armv5"
-ARMPKGARCH_tune-armv5teb ?= "armv5"
-TUNE_FEATURES_tune-armv5eb  = "${TUNE_FEATURES_tune-armv5e} bigendian"
-TUNE_FEATURES_tune-armv5teb = "${TUNE_FEATURES_tune-armv5te} bigendian"
-PACKAGE_EXTRA_ARCHS_tune-armv5eb  = "${PACKAGE_EXTRA_ARCHS_tune-armv5b} armv5eb"
-PACKAGE_EXTRA_ARCHS_tune-armv5teb = "${PACKAGE_EXTRA_ARCHS_tune-armv5tb} armv5eb armv5teb"
+ARMPKGARCH:tune-armv5eb  ?= "armv5"
+ARMPKGARCH:tune-armv5teb ?= "armv5"
+TUNE_FEATURES:tune-armv5eb  = "${TUNE_FEATURES:tune-armv5e} bigendian"
+TUNE_FEATURES:tune-armv5teb = "${TUNE_FEATURES:tune-armv5te} bigendian"
+PACKAGE_EXTRA_ARCHS:tune-armv5eb  = "${PACKAGE_EXTRA_ARCHS:tune-armv5b} armv5eb"
+PACKAGE_EXTRA_ARCHS:tune-armv5teb = "${PACKAGE_EXTRA_ARCHS:tune-armv5tb} armv5eb armv5teb"
 
 # Big Endian + VFP/DSP
 AVAILTUNES += "armv5eb-vfp armv5teb-vfp armv5ehfb-vfp armv5tehfb-vfp"
-ARMPKGARCH_tune-armv5eb-vfp    ?= "armv5"
-ARMPKGARCH_tune-armv5teb-vfp   ?= "armv5"
-ARMPKGARCH_tune-armv5ehfb-vfp  ?= "armv5"
-ARMPKGARCH_tune-armv5tehfb-vfp ?= "armv5"
-TUNE_FEATURES_tune-armv5eb-vfp    = "${TUNE_FEATURES_tune-armv5e-vfp} bigendian"
-TUNE_FEATURES_tune-armv5teb-vfp   = "${TUNE_FEATURES_tune-armv5te-vfp} bigendian"
-TUNE_FEATURES_tune-armv5ehfb-vfp  = "${TUNE_FEATURES_tune-armv5ehf-vfp} bigendian"
-TUNE_FEATURES_tune-armv5tehfb-vfp = "${TUNE_FEATURES_tune-armv5tehf-vfp} bigendian"
-PACKAGE_EXTRA_ARCHS_tune-armv5eb-vfp    = "${PACKAGE_EXTRA_ARCHS_tune-armv5b-vfp} armv5eb armv5eb-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv5teb-vfp   = "${PACKAGE_EXTRA_ARCHS_tune-armv5tb-vfp} armv5eb armv5teb armv5eb-vfp armv5teb-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv5ehfb-vfp  = "${PACKAGE_EXTRA_ARCHS_tune-armv5hfb-vfp} armv5ehfb-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv5tehfb-vfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5thfb-vfp} armv5ehfb-vfp armv5tehfb-vfp"
+ARMPKGARCH:tune-armv5eb-vfp    ?= "armv5"
+ARMPKGARCH:tune-armv5teb-vfp   ?= "armv5"
+ARMPKGARCH:tune-armv5ehfb-vfp  ?= "armv5"
+ARMPKGARCH:tune-armv5tehfb-vfp ?= "armv5"
+TUNE_FEATURES:tune-armv5eb-vfp    = "${TUNE_FEATURES:tune-armv5e-vfp} bigendian"
+TUNE_FEATURES:tune-armv5teb-vfp   = "${TUNE_FEATURES:tune-armv5te-vfp} bigendian"
+TUNE_FEATURES:tune-armv5ehfb-vfp  = "${TUNE_FEATURES:tune-armv5ehf-vfp} bigendian"
+TUNE_FEATURES:tune-armv5tehfb-vfp = "${TUNE_FEATURES:tune-armv5tehf-vfp} bigendian"
+PACKAGE_EXTRA_ARCHS:tune-armv5eb-vfp    = "${PACKAGE_EXTRA_ARCHS:tune-armv5b-vfp} armv5eb armv5eb-vfp"
+PACKAGE_EXTRA_ARCHS:tune-armv5teb-vfp   = "${PACKAGE_EXTRA_ARCHS:tune-armv5tb-vfp} armv5eb armv5teb armv5eb-vfp armv5teb-vfp"
+PACKAGE_EXTRA_ARCHS:tune-armv5ehfb-vfp  = "${PACKAGE_EXTRA_ARCHS:tune-armv5hfb-vfp} armv5ehfb-vfp"
+PACKAGE_EXTRA_ARCHS:tune-armv5tehfb-vfp = "${PACKAGE_EXTRA_ARCHS:tune-armv5thfb-vfp} armv5ehfb-vfp armv5tehfb-vfp"
diff --git a/poky/meta/conf/machine/include/arm/arch-armv5.inc b/poky/meta/conf/machine/include/arm/arch-armv5.inc
index 52d8590..5f46992 100644
--- a/poky/meta/conf/machine/include/arm/arch-armv5.inc
+++ b/poky/meta/conf/machine/include/arm/arch-armv5.inc
@@ -10,48 +10,48 @@
 
 # Little Endian
 AVAILTUNES += "armv5 armv5t"
-ARMPKGARCH_tune-armv5  ?= "armv5"
-ARMPKGARCH_tune-armv5t ?= "armv5"
-TUNE_FEATURES_tune-armv5  = "arm armv5"
-TUNE_FEATURES_tune-armv5t = "${TUNE_FEATURES_tune-armv5} thumb"
-PACKAGE_EXTRA_ARCHS_tune-armv5  = "${PACKAGE_EXTRA_ARCHS_tune-armv4} armv5"
-PACKAGE_EXTRA_ARCHS_tune-armv5t = "${PACKAGE_EXTRA_ARCHS_tune-armv4t} armv5 armv5t"
+ARMPKGARCH:tune-armv5  ?= "armv5"
+ARMPKGARCH:tune-armv5t ?= "armv5"
+TUNE_FEATURES:tune-armv5  = "arm armv5"
+TUNE_FEATURES:tune-armv5t = "${TUNE_FEATURES:tune-armv5} thumb"
+PACKAGE_EXTRA_ARCHS:tune-armv5  = "${PACKAGE_EXTRA_ARCHS:tune-armv4} armv5"
+PACKAGE_EXTRA_ARCHS:tune-armv5t = "${PACKAGE_EXTRA_ARCHS:tune-armv4t} armv5 armv5t"
 
 # Little Endian + VFP/DSP
 AVAILTUNES += "armv5-vfp armv5t-vfp armv5hf-vfp armv5thf-vfp"
-ARMPKGARCH_tune-armv5-vfp    ?= "armv5"
-ARMPKGARCH_tune-armv5t-vfp   ?= "armv5"
-ARMPKGARCH_tune-armv5hf-vfp  ?= "armv5"
-ARMPKGARCH_tune-armv5thf-vfp ?= "armv5"
-TUNE_FEATURES_tune-armv5-vfp    = "${TUNE_FEATURES_tune-armv5} vfp"
-TUNE_FEATURES_tune-armv5t-vfp   = "${TUNE_FEATURES_tune-armv5t} vfp"
-TUNE_FEATURES_tune-armv5hf-vfp  = "${TUNE_FEATURES_tune-armv5-vfp} callconvention-hard"
-TUNE_FEATURES_tune-armv5thf-vfp = "${TUNE_FEATURES_tune-armv5t-vfp} callconvention-hard"
-PACKAGE_EXTRA_ARCHS_tune-armv5-vfp     = "${PACKAGE_EXTRA_ARCHS_tune-armv5} armv5-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv5t-vfp    = "${PACKAGE_EXTRA_ARCHS_tune-armv5t} armv5-vfp armv5t-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv5hf-vfp   = "armv5hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv5thf-vfp  = "armv5hf-vfp armv5thf-vfp"
+ARMPKGARCH:tune-armv5-vfp    ?= "armv5"
+ARMPKGARCH:tune-armv5t-vfp   ?= "armv5"
+ARMPKGARCH:tune-armv5hf-vfp  ?= "armv5"
+ARMPKGARCH:tune-armv5thf-vfp ?= "armv5"
+TUNE_FEATURES:tune-armv5-vfp    = "${TUNE_FEATURES:tune-armv5} vfp"
+TUNE_FEATURES:tune-armv5t-vfp   = "${TUNE_FEATURES:tune-armv5t} vfp"
+TUNE_FEATURES:tune-armv5hf-vfp  = "${TUNE_FEATURES:tune-armv5-vfp} callconvention-hard"
+TUNE_FEATURES:tune-armv5thf-vfp = "${TUNE_FEATURES:tune-armv5t-vfp} callconvention-hard"
+PACKAGE_EXTRA_ARCHS:tune-armv5-vfp     = "${PACKAGE_EXTRA_ARCHS:tune-armv5} armv5-vfp"
+PACKAGE_EXTRA_ARCHS:tune-armv5t-vfp    = "${PACKAGE_EXTRA_ARCHS:tune-armv5t} armv5-vfp armv5t-vfp"
+PACKAGE_EXTRA_ARCHS:tune-armv5hf-vfp   = "armv5hf-vfp"
+PACKAGE_EXTRA_ARCHS:tune-armv5thf-vfp  = "armv5hf-vfp armv5thf-vfp"
 
 # Big Endian
 AVAILTUNES += "armv5b armv5tb"
-ARMPKGARCH_tune-armv5b  ?= "armv5"
-ARMPKGARCH_tune-armv5tb ?= "armv5"
-TUNE_FEATURES_tune-armv5b  = "${TUNE_FEATURES_tune-armv5} bigendian"
-TUNE_FEATURES_tune-armv5tb = "${TUNE_FEATURES_tune-armv5t} bigendian"
-PACKAGE_EXTRA_ARCHS_tune-armv5b  = "${PACKAGE_EXTRA_ARCHS_tune-armv4b} armv5b"
-PACKAGE_EXTRA_ARCHS_tune-armv5tb = "${PACKAGE_EXTRA_ARCHS_tune-armv4tb} armv5b armv5tb"
+ARMPKGARCH:tune-armv5b  ?= "armv5"
+ARMPKGARCH:tune-armv5tb ?= "armv5"
+TUNE_FEATURES:tune-armv5b  = "${TUNE_FEATURES:tune-armv5} bigendian"
+TUNE_FEATURES:tune-armv5tb = "${TUNE_FEATURES:tune-armv5t} bigendian"
+PACKAGE_EXTRA_ARCHS:tune-armv5b  = "${PACKAGE_EXTRA_ARCHS:tune-armv4b} armv5b"
+PACKAGE_EXTRA_ARCHS:tune-armv5tb = "${PACKAGE_EXTRA_ARCHS:tune-armv4tb} armv5b armv5tb"
 
 # Big Endian + VFP/DSP
 AVAILTUNES += "armv5b-vfp armv5tb-vfp armv5hfb-vfp armv5thfb-vfp"
-ARMPKGARCH_tune-armv5b-vfp    ?= "armv5"
-ARMPKGARCH_tune-armv5tb-vfp   ?= "armv5"
-ARMPKGARCH_tune-armv5hfb-vfp  ?= "armv5"
-ARMPKGARCH_tune-armv5thfb-vfp ?= "armv5"
-TUNE_FEATURES_tune-armv5b-vfp    = "${TUNE_FEATURES_tune-armv5-vfp} bigendian"
-TUNE_FEATURES_tune-armv5tb-vfp   = "${TUNE_FEATURES_tune-armv5t-vfp} bigendian"
-TUNE_FEATURES_tune-armv5hfb-vfp  = "${TUNE_FEATURES_tune-armv5hf-vfp} bigendian"
-TUNE_FEATURES_tune-armv5thfb-vfp = "${TUNE_FEATURES_tune-armv5thf-vfp} bigendian"
-PACKAGE_EXTRA_ARCHS_tune-armv5b-vfp    = "${PACKAGE_EXTRA_ARCHS_tune-armv5b} armv5b-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv5tb-vfp   = "${PACKAGE_EXTRA_ARCHS_tune-armv5tb} armv5b-vfp armv5tb-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv5hfb-vfp  = "armv5hfb-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv5thfb-vfp = "armv5hfb-vfp armv5thfb-vfp"
+ARMPKGARCH:tune-armv5b-vfp    ?= "armv5"
+ARMPKGARCH:tune-armv5tb-vfp   ?= "armv5"
+ARMPKGARCH:tune-armv5hfb-vfp  ?= "armv5"
+ARMPKGARCH:tune-armv5thfb-vfp ?= "armv5"
+TUNE_FEATURES:tune-armv5b-vfp    = "${TUNE_FEATURES:tune-armv5-vfp} bigendian"
+TUNE_FEATURES:tune-armv5tb-vfp   = "${TUNE_FEATURES:tune-armv5t-vfp} bigendian"
+TUNE_FEATURES:tune-armv5hfb-vfp  = "${TUNE_FEATURES:tune-armv5hf-vfp} bigendian"
+TUNE_FEATURES:tune-armv5thfb-vfp = "${TUNE_FEATURES:tune-armv5thf-vfp} bigendian"
+PACKAGE_EXTRA_ARCHS:tune-armv5b-vfp    = "${PACKAGE_EXTRA_ARCHS:tune-armv5b} armv5b-vfp"
+PACKAGE_EXTRA_ARCHS:tune-armv5tb-vfp   = "${PACKAGE_EXTRA_ARCHS:tune-armv5tb} armv5b-vfp armv5tb-vfp"
+PACKAGE_EXTRA_ARCHS:tune-armv5hfb-vfp  = "armv5hfb-vfp"
+PACKAGE_EXTRA_ARCHS:tune-armv5thfb-vfp = "armv5hfb-vfp armv5thfb-vfp"
diff --git a/poky/meta/conf/machine/include/arm/arch-armv6.inc b/poky/meta/conf/machine/include/arm/arch-armv6.inc
index 7531890..9d2e112 100644
--- a/poky/meta/conf/machine/include/arm/arch-armv6.inc
+++ b/poky/meta/conf/machine/include/arm/arch-armv6.inc
@@ -9,42 +9,42 @@
 
 # Little Endian
 AVAILTUNES += "armv6-novfp armv6t-novfp armv6 armv6t armv6hf armv6thf"
-ARMPKGARCH_tune-armv6-novfp  ?= "armv6"
-ARMPKGARCH_tune-armv6t-novfp ?= "armv6"
-ARMPKGARCH_tune-armv6        ?= "armv6"
-ARMPKGARCH_tune-armv6t       ?= "armv6"
-ARMPKGARCH_tune-armv6hf      ?= "armv6"
-ARMPKGARCH_tune-armv6thf     ?= "armv6"
-TUNE_FEATURES_tune-armv6-novfp  = "arm armv6"
-TUNE_FEATURES_tune-armv6t-novfp = "${TUNE_FEATURES_tune-armv6-novfp} thumb"
-TUNE_FEATURES_tune-armv6        = "${TUNE_FEATURES_tune-armv6-novfp} vfp"
-TUNE_FEATURES_tune-armv6t       = "${TUNE_FEATURES_tune-armv6t-novfp} vfp"
-TUNE_FEATURES_tune-armv6hf      = "${TUNE_FEATURES_tune-armv6} callconvention-hard"
-TUNE_FEATURES_tune-armv6thf     = "${TUNE_FEATURES_tune-armv6t} callconvention-hard"
-PACKAGE_EXTRA_ARCHS_tune-armv6-novfp  = "${PACKAGE_EXTRA_ARCHS_tune-armv5e} armv6"
-PACKAGE_EXTRA_ARCHS_tune-armv6t-novfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5te} armv6 armv6t"
-PACKAGE_EXTRA_ARCHS_tune-armv6        = "${PACKAGE_EXTRA_ARCHS_tune-armv5e-vfp} armv6 armv6-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv6t       = "${PACKAGE_EXTRA_ARCHS_tune-armv5te-vfp} armv6 armv6t armv6-vfp armv6t-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv6hf      = "${PACKAGE_EXTRA_ARCHS_tune-armv5ehf-vfp} armv6hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv6thf     = "${PACKAGE_EXTRA_ARCHS_tune-armv5tehf-vfp} armv6hf-vfp armv6thf-vfp"
+ARMPKGARCH:tune-armv6-novfp  ?= "armv6"
+ARMPKGARCH:tune-armv6t-novfp ?= "armv6"
+ARMPKGARCH:tune-armv6        ?= "armv6"
+ARMPKGARCH:tune-armv6t       ?= "armv6"
+ARMPKGARCH:tune-armv6hf      ?= "armv6"
+ARMPKGARCH:tune-armv6thf     ?= "armv6"
+TUNE_FEATURES:tune-armv6-novfp  = "arm armv6"
+TUNE_FEATURES:tune-armv6t-novfp = "${TUNE_FEATURES:tune-armv6-novfp} thumb"
+TUNE_FEATURES:tune-armv6        = "${TUNE_FEATURES:tune-armv6-novfp} vfp"
+TUNE_FEATURES:tune-armv6t       = "${TUNE_FEATURES:tune-armv6t-novfp} vfp"
+TUNE_FEATURES:tune-armv6hf      = "${TUNE_FEATURES:tune-armv6} callconvention-hard"
+TUNE_FEATURES:tune-armv6thf     = "${TUNE_FEATURES:tune-armv6t} callconvention-hard"
+PACKAGE_EXTRA_ARCHS:tune-armv6-novfp  = "${PACKAGE_EXTRA_ARCHS:tune-armv5e} armv6"
+PACKAGE_EXTRA_ARCHS:tune-armv6t-novfp = "${PACKAGE_EXTRA_ARCHS:tune-armv5te} armv6 armv6t"
+PACKAGE_EXTRA_ARCHS:tune-armv6        = "${PACKAGE_EXTRA_ARCHS:tune-armv5e-vfp} armv6 armv6-vfp"
+PACKAGE_EXTRA_ARCHS:tune-armv6t       = "${PACKAGE_EXTRA_ARCHS:tune-armv5te-vfp} armv6 armv6t armv6-vfp armv6t-vfp"
+PACKAGE_EXTRA_ARCHS:tune-armv6hf      = "${PACKAGE_EXTRA_ARCHS:tune-armv5ehf-vfp} armv6hf-vfp"
+PACKAGE_EXTRA_ARCHS:tune-armv6thf     = "${PACKAGE_EXTRA_ARCHS:tune-armv5tehf-vfp} armv6hf-vfp armv6thf-vfp"
 
 # Big Endian
 AVAILTUNES += "armv6b-novfp armv6tb-novfp armv6b armv6tb armv6hfb armv6thfb"
-ARMPKGARCH_tune-armv6b-novfp  ?= "armv6"
-ARMPKGARCH_tune-armv6tb-novfp ?= "armv6"
-ARMPKGARCH_tune-armv6b        ?= "armv6"
-ARMPKGARCH_tune-armv6tb       ?= "armv6"
-ARMPKGARCH_tune-armv6hfb      ?= "armv6"
-ARMPKGARCH_tune-armv6thfb     ?= "armv6"
-TUNE_FEATURES_tune-armv6b-novfp  = "${TUNE_FEATURES_tune-armv6-novfp} bigendian"
-TUNE_FEATURES_tune-armv6tb-novfp = "${TUNE_FEATURES_tune-armv6t-novfp} bigendian"
-TUNE_FEATURES_tune-armv6b =        "${TUNE_FEATURES_tune-armv6} bigendian"
-TUNE_FEATURES_tune-armv6tb =       "${TUNE_FEATURES_tune-armv6t} bigendian"
-TUNE_FEATURES_tune-armv6hfb =      "${TUNE_FEATURES_tune-armv6hf} bigendian"
-TUNE_FEATURES_tune-armv6thfb =     "${TUNE_FEATURES_tune-armv6thf} bigendian"
-PACKAGE_EXTRA_ARCHS_tune-armv6b-novfp  = "${PACKAGE_EXTRA_ARCHS_tune-armv5eb} armv6b"
-PACKAGE_EXTRA_ARCHS_tune-armv6tb-novfp = "${PACKAGE_EXTRA_ARCHS_tune-armv5teb} armv6b armv6tb"
-PACKAGE_EXTRA_ARCHS_tune-armv6b        = "${PACKAGE_EXTRA_ARCHS_tune-armv5eb-vfp} armv6b armv6b-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv6tb       = "${PACKAGE_EXTRA_ARCHS_tune-armv5teb-vfp} armv6b armv6tb armv6b-vfp armv6tb-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv6hfb      = "${PACKAGE_EXTRA_ARCHS_tune-armv5ehfb-vfp} armv6hfb-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv6thfb     = "${PACKAGE_EXTRA_ARCHS_tune-armv5tehfb-vfp} armv6hfb-vfp armv6thfb-vfp"
+ARMPKGARCH:tune-armv6b-novfp  ?= "armv6"
+ARMPKGARCH:tune-armv6tb-novfp ?= "armv6"
+ARMPKGARCH:tune-armv6b        ?= "armv6"
+ARMPKGARCH:tune-armv6tb       ?= "armv6"
+ARMPKGARCH:tune-armv6hfb      ?= "armv6"
+ARMPKGARCH:tune-armv6thfb     ?= "armv6"
+TUNE_FEATURES:tune-armv6b-novfp  = "${TUNE_FEATURES:tune-armv6-novfp} bigendian"
+TUNE_FEATURES:tune-armv6tb-novfp = "${TUNE_FEATURES:tune-armv6t-novfp} bigendian"
+TUNE_FEATURES:tune-armv6b =        "${TUNE_FEATURES:tune-armv6} bigendian"
+TUNE_FEATURES:tune-armv6tb =       "${TUNE_FEATURES:tune-armv6t} bigendian"
+TUNE_FEATURES:tune-armv6hfb =      "${TUNE_FEATURES:tune-armv6hf} bigendian"
+TUNE_FEATURES:tune-armv6thfb =     "${TUNE_FEATURES:tune-armv6thf} bigendian"
+PACKAGE_EXTRA_ARCHS:tune-armv6b-novfp  = "${PACKAGE_EXTRA_ARCHS:tune-armv5eb} armv6b"
+PACKAGE_EXTRA_ARCHS:tune-armv6tb-novfp = "${PACKAGE_EXTRA_ARCHS:tune-armv5teb} armv6b armv6tb"
+PACKAGE_EXTRA_ARCHS:tune-armv6b        = "${PACKAGE_EXTRA_ARCHS:tune-armv5eb-vfp} armv6b armv6b-vfp"
+PACKAGE_EXTRA_ARCHS:tune-armv6tb       = "${PACKAGE_EXTRA_ARCHS:tune-armv5teb-vfp} armv6b armv6tb armv6b-vfp armv6tb-vfp"
+PACKAGE_EXTRA_ARCHS:tune-armv6hfb      = "${PACKAGE_EXTRA_ARCHS:tune-armv5ehfb-vfp} armv6hfb-vfp"
+PACKAGE_EXTRA_ARCHS:tune-armv6thfb     = "${PACKAGE_EXTRA_ARCHS:tune-armv5tehfb-vfp} armv6hfb-vfp armv6thfb-vfp"
diff --git a/poky/meta/conf/machine/include/arm/arch-armv6m.inc b/poky/meta/conf/machine/include/arm/arch-armv6m.inc
index 739550d..e7ca665 100644
--- a/poky/meta/conf/machine/include/arm/arch-armv6m.inc
+++ b/poky/meta/conf/machine/include/arm/arch-armv6m.inc
@@ -14,6 +14,6 @@
 
 # Little Endian
 AVAILTUNES += "armv6m"
-ARMPKGARCH_tune-armv6m             = "armv6m"
-TUNE_FEATURES_tune-armv6m          = "armv6m"
-PACKAGE_EXTRA_ARCHS_tune-armv6m    = "armv6m"
+ARMPKGARCH:tune-armv6m             = "armv6m"
+TUNE_FEATURES:tune-armv6m          = "armv6m"
+PACKAGE_EXTRA_ARCHS:tune-armv6m    = "armv6m"
diff --git a/poky/meta/conf/machine/include/arm/arch-armv7a.inc b/poky/meta/conf/machine/include/arm/arch-armv7a.inc
index ce87af5..0f83cee 100644
--- a/poky/meta/conf/machine/include/arm/arch-armv7a.inc
+++ b/poky/meta/conf/machine/include/arm/arch-armv7a.inc
@@ -11,156 +11,156 @@
 
 # Little Endian base configs
 AVAILTUNES += "armv7a armv7at armv7a-vfpv3d16 armv7at-vfpv3d16 armv7a-vfpv3 armv7at-vfpv3 armv7a-vfpv4d16 armv7at-vfpv4d16 armv7a-neon armv7at-neon armv7a-neon-vfpv4 armv7at-neon-vfpv4"
-ARMPKGARCH_tune-armv7a             ?= "armv7a"
-ARMPKGARCH_tune-armv7at            ?= "armv7a"
-ARMPKGARCH_tune-armv7a-vfpv3d16    ?= "armv7a"
-ARMPKGARCH_tune-armv7at-vfpv3d16   ?= "armv7a"
-ARMPKGARCH_tune-armv7a-vfpv3       ?= "armv7a"
-ARMPKGARCH_tune-armv7at-vfpv3      ?= "armv7a"
-ARMPKGARCH_tune-armv7a-vfpv4d16    ?= "armv7a"
-ARMPKGARCH_tune-armv7at-vfpv4d16   ?= "armv7a"
-ARMPKGARCH_tune-armv7a-neon        ?= "armv7a"
-ARMPKGARCH_tune-armv7at-neon       ?= "armv7a"
-ARMPKGARCH_tune-armv7a-neon-vfpv4  ?= "armv7a"
-ARMPKGARCH_tune-armv7at-neon-vfpv4 ?= "armv7a"
-TUNE_FEATURES_tune-armv7a             = "arm armv7a vfp"
-TUNE_FEATURES_tune-armv7at            = "${TUNE_FEATURES_tune-armv7a} thumb"
-TUNE_FEATURES_tune-armv7a-vfpv3d16    = "${TUNE_FEATURES_tune-armv7a} vfpv3d16"
-TUNE_FEATURES_tune-armv7at-vfpv3d16   = "${TUNE_FEATURES_tune-armv7at} vfpv3d16"
-TUNE_FEATURES_tune-armv7a-vfpv3       = "${TUNE_FEATURES_tune-armv7a-vfpv3d16} vfpv3"
-TUNE_FEATURES_tune-armv7at-vfpv3      = "${TUNE_FEATURES_tune-armv7at-vfpv3d16} vfpv3"
-TUNE_FEATURES_tune-armv7a-vfpv4d16    = "${TUNE_FEATURES_tune-armv7a} vfpv4d16"
-TUNE_FEATURES_tune-armv7at-vfpv4d16   = "${TUNE_FEATURES_tune-armv7at} vfpv4d16"
-TUNE_FEATURES_tune-armv7a-neon        = "${TUNE_FEATURES_tune-armv7a} neon"
-TUNE_FEATURES_tune-armv7at-neon       = "${TUNE_FEATURES_tune-armv7at} neon"
-TUNE_FEATURES_tune-armv7a-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7a-neon} vfpv4"
-TUNE_FEATURES_tune-armv7at-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7at-neon} vfpv4"
-PACKAGE_EXTRA_ARCHS_tune-armv7a             = "${PACKAGE_EXTRA_ARCHS_tune-armv6} armv7a armv7a-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv7at            = "${PACKAGE_EXTRA_ARCHS_tune-armv6t} armv7a armv7a-vfp armv7at2-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv7a-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7a} armv7a-vfpv3d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7at-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} armv7a-vfpv3d16 armv7at2-vfpv3d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7a-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-vfpv3d16} armv7a-vfpv3"
-PACKAGE_EXTRA_ARCHS_tune-armv7at-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-vfpv3d16} armv7a-vfpv3 armv7at2-vfpv3"
-PACKAGE_EXTRA_ARCHS_tune-armv7a-vfpv4d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7a} armv7a-vfpv4d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7at-vfpv4d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} armv7a-vfpv4d16 armv7at2-vfpv4d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7a-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a} armv7a-neon"
-PACKAGE_EXTRA_ARCHS_tune-armv7at-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} armv7a-neon armv7at2-neon"
-PACKAGE_EXTRA_ARCHS_tune-armv7a-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon} armv7a-neon-vfpv4"
-PACKAGE_EXTRA_ARCHS_tune-armv7at-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} armv7a-neon-vfpv4 armv7at2-neon-vfpv4"
+ARMPKGARCH:tune-armv7a             ?= "armv7a"
+ARMPKGARCH:tune-armv7at            ?= "armv7a"
+ARMPKGARCH:tune-armv7a-vfpv3d16    ?= "armv7a"
+ARMPKGARCH:tune-armv7at-vfpv3d16   ?= "armv7a"
+ARMPKGARCH:tune-armv7a-vfpv3       ?= "armv7a"
+ARMPKGARCH:tune-armv7at-vfpv3      ?= "armv7a"
+ARMPKGARCH:tune-armv7a-vfpv4d16    ?= "armv7a"
+ARMPKGARCH:tune-armv7at-vfpv4d16   ?= "armv7a"
+ARMPKGARCH:tune-armv7a-neon        ?= "armv7a"
+ARMPKGARCH:tune-armv7at-neon       ?= "armv7a"
+ARMPKGARCH:tune-armv7a-neon-vfpv4  ?= "armv7a"
+ARMPKGARCH:tune-armv7at-neon-vfpv4 ?= "armv7a"
+TUNE_FEATURES:tune-armv7a             = "arm armv7a vfp"
+TUNE_FEATURES:tune-armv7at            = "${TUNE_FEATURES:tune-armv7a} thumb"
+TUNE_FEATURES:tune-armv7a-vfpv3d16    = "${TUNE_FEATURES:tune-armv7a} vfpv3d16"
+TUNE_FEATURES:tune-armv7at-vfpv3d16   = "${TUNE_FEATURES:tune-armv7at} vfpv3d16"
+TUNE_FEATURES:tune-armv7a-vfpv3       = "${TUNE_FEATURES:tune-armv7a-vfpv3d16} vfpv3"
+TUNE_FEATURES:tune-armv7at-vfpv3      = "${TUNE_FEATURES:tune-armv7at-vfpv3d16} vfpv3"
+TUNE_FEATURES:tune-armv7a-vfpv4d16    = "${TUNE_FEATURES:tune-armv7a} vfpv4d16"
+TUNE_FEATURES:tune-armv7at-vfpv4d16   = "${TUNE_FEATURES:tune-armv7at} vfpv4d16"
+TUNE_FEATURES:tune-armv7a-neon        = "${TUNE_FEATURES:tune-armv7a} neon"
+TUNE_FEATURES:tune-armv7at-neon       = "${TUNE_FEATURES:tune-armv7at} neon"
+TUNE_FEATURES:tune-armv7a-neon-vfpv4  = "${TUNE_FEATURES:tune-armv7a-neon} vfpv4"
+TUNE_FEATURES:tune-armv7at-neon-vfpv4 = "${TUNE_FEATURES:tune-armv7at-neon} vfpv4"
+PACKAGE_EXTRA_ARCHS:tune-armv7a             = "${PACKAGE_EXTRA_ARCHS:tune-armv6} armv7a armv7a-vfp"
+PACKAGE_EXTRA_ARCHS:tune-armv7at            = "${PACKAGE_EXTRA_ARCHS:tune-armv6t} armv7a armv7a-vfp armv7at2-vfp"
+PACKAGE_EXTRA_ARCHS:tune-armv7a-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS:tune-armv7a} armv7a-vfpv3d16"
+PACKAGE_EXTRA_ARCHS:tune-armv7at-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS:tune-armv7at} armv7a-vfpv3d16 armv7at2-vfpv3d16"
+PACKAGE_EXTRA_ARCHS:tune-armv7a-vfpv3       = "${PACKAGE_EXTRA_ARCHS:tune-armv7a-vfpv3d16} armv7a-vfpv3"
+PACKAGE_EXTRA_ARCHS:tune-armv7at-vfpv3      = "${PACKAGE_EXTRA_ARCHS:tune-armv7at-vfpv3d16} armv7a-vfpv3 armv7at2-vfpv3"
+PACKAGE_EXTRA_ARCHS:tune-armv7a-vfpv4d16    = "${PACKAGE_EXTRA_ARCHS:tune-armv7a} armv7a-vfpv4d16"
+PACKAGE_EXTRA_ARCHS:tune-armv7at-vfpv4d16   = "${PACKAGE_EXTRA_ARCHS:tune-armv7at} armv7a-vfpv4d16 armv7at2-vfpv4d16"
+PACKAGE_EXTRA_ARCHS:tune-armv7a-neon        = "${PACKAGE_EXTRA_ARCHS:tune-armv7a} armv7a-neon"
+PACKAGE_EXTRA_ARCHS:tune-armv7at-neon       = "${PACKAGE_EXTRA_ARCHS:tune-armv7at} armv7a-neon armv7at2-neon"
+PACKAGE_EXTRA_ARCHS:tune-armv7a-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS:tune-armv7a-neon} armv7a-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS:tune-armv7at-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS:tune-armv7at-neon} armv7a-neon-vfpv4 armv7at2-neon-vfpv4"
 
 # HF Tunes
 AVAILTUNES += "armv7ahf armv7athf armv7ahf-vfpv3d16 armv7athf-vfpv3d16 armv7ahf-vfpv3 armv7athf-vfpv3 armv7ahf-vfpv4d16 armv7athf-vfpv4d16 armv7ahf-neon armv7athf-neon armv7ahf-neon-vfpv4 armv7athf-neon-vfpv4"
-ARMPKGARCH_tune-armv7ahf             ?= "armv7a"
-ARMPKGARCH_tune-armv7athf            ?= "armv7a"
-ARMPKGARCH_tune-armv7ahf-vfpv3d16    ?= "armv7a"
-ARMPKGARCH_tune-armv7athf-vfpv3d16   ?= "armv7a"
-ARMPKGARCH_tune-armv7ahf-vfpv3       ?= "armv7a"
-ARMPKGARCH_tune-armv7athf-vfpv3      ?= "armv7a"
-ARMPKGARCH_tune-armv7ahf-vfpv4d16    ?= "armv7a"
-ARMPKGARCH_tune-armv7athf-vfpv4d16   ?= "armv7a"
-ARMPKGARCH_tune-armv7ahf-neon        ?= "armv7a"
-ARMPKGARCH_tune-armv7athf-neon       ?= "armv7a"
-ARMPKGARCH_tune-armv7ahf-neon-vfpv4  ?= "armv7a"
-ARMPKGARCH_tune-armv7athf-neon-vfpv4 ?= "armv7a"
-TUNE_FEATURES_tune-armv7ahf             = "${TUNE_FEATURES_tune-armv7a} callconvention-hard"
-TUNE_FEATURES_tune-armv7athf            = "${TUNE_FEATURES_tune-armv7at} callconvention-hard"
-TUNE_FEATURES_tune-armv7ahf-vfpv3d16    = "${TUNE_FEATURES_tune-armv7a-vfpv3d16} callconvention-hard"
-TUNE_FEATURES_tune-armv7athf-vfpv3d16   = "${TUNE_FEATURES_tune-armv7at-vfpv3d16} callconvention-hard"
-TUNE_FEATURES_tune-armv7ahf-vfpv3       = "${TUNE_FEATURES_tune-armv7a-vfpv3} callconvention-hard"
-TUNE_FEATURES_tune-armv7athf-vfpv3      = "${TUNE_FEATURES_tune-armv7at-vfpv3} callconvention-hard"
-TUNE_FEATURES_tune-armv7ahf-vfpv4d16    = "${TUNE_FEATURES_tune-armv7a-vfpv4d16} callconvention-hard"
-TUNE_FEATURES_tune-armv7athf-vfpv4d16   = "${TUNE_FEATURES_tune-armv7at-vfpv4d16} callconvention-hard"
-TUNE_FEATURES_tune-armv7ahf-neon        = "${TUNE_FEATURES_tune-armv7a-neon} callconvention-hard"
-TUNE_FEATURES_tune-armv7athf-neon       = "${TUNE_FEATURES_tune-armv7at-neon} callconvention-hard"
-TUNE_FEATURES_tune-armv7ahf-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7a-neon-vfpv4} callconvention-hard"
-TUNE_FEATURES_tune-armv7athf-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7at-neon-vfpv4} callconvention-hard"
-PACKAGE_EXTRA_ARCHS_tune-armv7ahf             = "${PACKAGE_EXTRA_ARCHS_tune-armv6hf} armv7ahf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv7athf            = "${PACKAGE_EXTRA_ARCHS_tune-armv6thf} armv7ahf-vfp armv7at2hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv7ahf-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf} armv7ahf-vfpv3d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7athf-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} armv7ahf-vfpv3d16 armv7at2hf-vfpv3d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7ahf-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-vfpv3d16} armv7ahf-vfpv3"
-PACKAGE_EXTRA_ARCHS_tune-armv7athf-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-vfpv3d16} armv7ahf-vfpv3 armv7at2hf-vfpv3"
-PACKAGE_EXTRA_ARCHS_tune-armv7ahf-vfpv4d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf} armv7ahf-vfpv4d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7athf-vfpv4d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} armv7ahf-vfpv4d16 armv7at2hf-vfpv4d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf} armv7ahf-neon"
-PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} armv7ahf-neon armv7at2hf-neon"
-PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon} armv7ahf-neon-vfpv4"
-PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} armv7ahf-neon-vfpv4 armv7at2hf-neon-vfpv4"
+ARMPKGARCH:tune-armv7ahf             ?= "armv7a"
+ARMPKGARCH:tune-armv7athf            ?= "armv7a"
+ARMPKGARCH:tune-armv7ahf-vfpv3d16    ?= "armv7a"
+ARMPKGARCH:tune-armv7athf-vfpv3d16   ?= "armv7a"
+ARMPKGARCH:tune-armv7ahf-vfpv3       ?= "armv7a"
+ARMPKGARCH:tune-armv7athf-vfpv3      ?= "armv7a"
+ARMPKGARCH:tune-armv7ahf-vfpv4d16    ?= "armv7a"
+ARMPKGARCH:tune-armv7athf-vfpv4d16   ?= "armv7a"
+ARMPKGARCH:tune-armv7ahf-neon        ?= "armv7a"
+ARMPKGARCH:tune-armv7athf-neon       ?= "armv7a"
+ARMPKGARCH:tune-armv7ahf-neon-vfpv4  ?= "armv7a"
+ARMPKGARCH:tune-armv7athf-neon-vfpv4 ?= "armv7a"
+TUNE_FEATURES:tune-armv7ahf             = "${TUNE_FEATURES:tune-armv7a} callconvention-hard"
+TUNE_FEATURES:tune-armv7athf            = "${TUNE_FEATURES:tune-armv7at} callconvention-hard"
+TUNE_FEATURES:tune-armv7ahf-vfpv3d16    = "${TUNE_FEATURES:tune-armv7a-vfpv3d16} callconvention-hard"
+TUNE_FEATURES:tune-armv7athf-vfpv3d16   = "${TUNE_FEATURES:tune-armv7at-vfpv3d16} callconvention-hard"
+TUNE_FEATURES:tune-armv7ahf-vfpv3       = "${TUNE_FEATURES:tune-armv7a-vfpv3} callconvention-hard"
+TUNE_FEATURES:tune-armv7athf-vfpv3      = "${TUNE_FEATURES:tune-armv7at-vfpv3} callconvention-hard"
+TUNE_FEATURES:tune-armv7ahf-vfpv4d16    = "${TUNE_FEATURES:tune-armv7a-vfpv4d16} callconvention-hard"
+TUNE_FEATURES:tune-armv7athf-vfpv4d16   = "${TUNE_FEATURES:tune-armv7at-vfpv4d16} callconvention-hard"
+TUNE_FEATURES:tune-armv7ahf-neon        = "${TUNE_FEATURES:tune-armv7a-neon} callconvention-hard"
+TUNE_FEATURES:tune-armv7athf-neon       = "${TUNE_FEATURES:tune-armv7at-neon} callconvention-hard"
+TUNE_FEATURES:tune-armv7ahf-neon-vfpv4  = "${TUNE_FEATURES:tune-armv7a-neon-vfpv4} callconvention-hard"
+TUNE_FEATURES:tune-armv7athf-neon-vfpv4 = "${TUNE_FEATURES:tune-armv7at-neon-vfpv4} callconvention-hard"
+PACKAGE_EXTRA_ARCHS:tune-armv7ahf             = "${PACKAGE_EXTRA_ARCHS:tune-armv6hf} armv7ahf-vfp"
+PACKAGE_EXTRA_ARCHS:tune-armv7athf            = "${PACKAGE_EXTRA_ARCHS:tune-armv6thf} armv7ahf-vfp armv7at2hf-vfp"
+PACKAGE_EXTRA_ARCHS:tune-armv7ahf-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS:tune-armv7ahf} armv7ahf-vfpv3d16"
+PACKAGE_EXTRA_ARCHS:tune-armv7athf-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS:tune-armv7athf} armv7ahf-vfpv3d16 armv7at2hf-vfpv3d16"
+PACKAGE_EXTRA_ARCHS:tune-armv7ahf-vfpv3       = "${PACKAGE_EXTRA_ARCHS:tune-armv7ahf-vfpv3d16} armv7ahf-vfpv3"
+PACKAGE_EXTRA_ARCHS:tune-armv7athf-vfpv3      = "${PACKAGE_EXTRA_ARCHS:tune-armv7athf-vfpv3d16} armv7ahf-vfpv3 armv7at2hf-vfpv3"
+PACKAGE_EXTRA_ARCHS:tune-armv7ahf-vfpv4d16    = "${PACKAGE_EXTRA_ARCHS:tune-armv7ahf} armv7ahf-vfpv4d16"
+PACKAGE_EXTRA_ARCHS:tune-armv7athf-vfpv4d16   = "${PACKAGE_EXTRA_ARCHS:tune-armv7athf} armv7ahf-vfpv4d16 armv7at2hf-vfpv4d16"
+PACKAGE_EXTRA_ARCHS:tune-armv7ahf-neon        = "${PACKAGE_EXTRA_ARCHS:tune-armv7ahf} armv7ahf-neon"
+PACKAGE_EXTRA_ARCHS:tune-armv7athf-neon       = "${PACKAGE_EXTRA_ARCHS:tune-armv7athf} armv7ahf-neon armv7at2hf-neon"
+PACKAGE_EXTRA_ARCHS:tune-armv7ahf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS:tune-armv7ahf-neon} armv7ahf-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS:tune-armv7athf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS:tune-armv7athf-neon} armv7ahf-neon-vfpv4 armv7at2hf-neon-vfpv4"
 
 # Big Endian
 AVAILTUNES += "armv7ab armv7atb armv7ab-vfpv3d16 armv7atb-vfpv3d16 armv7ab-vfpv3 armv7atb-vfpv3 armv7ab-vfpv4d16 armv7atb-vfpv4d16 armv7ab-neon armv7atb-neon armv7ab-neon-vfpv4 armv7atb-neon-vfpv4"
-ARMPKGARCH_tune-armv7ab             ?= "armv7a"
-ARMPKGARCH_tune-armv7atb            ?= "armv7a"
-ARMPKGARCH_tune-armv7ab-vfpv3d16    ?= "armv7a"
-ARMPKGARCH_tune-armv7atb-vfpv3d16   ?= "armv7a"
-ARMPKGARCH_tune-armv7ab-vfpv3       ?= "armv7a"
-ARMPKGARCH_tune-armv7atb-vfpv3      ?= "armv7a"
-ARMPKGARCH_tune-armv7ab-vfpv4d16    ?= "armv7a"
-ARMPKGARCH_tune-armv7atb-vfpv4d16   ?= "armv7a"
-ARMPKGARCH_tune-armv7ab-neon        ?= "armv7a"
-ARMPKGARCH_tune-armv7atb-neon       ?= "armv7a"
-ARMPKGARCH_tune-armv7ab-neon-vfpv4  ?= "armv7a"
-ARMPKGARCH_tune-armv7atb-neon-vfpv4 ?= "armv7a"
-TUNE_FEATURES_tune-armv7ab             = "${TUNE_FEATURES_tune-armv7a} bigendian"
-TUNE_FEATURES_tune-armv7atb            = "${TUNE_FEATURES_tune-armv7at} bigendian"
-TUNE_FEATURES_tune-armv7ab-vfpv3d16    = "${TUNE_FEATURES_tune-armv7a-vfpv3d16} bigendian"
-TUNE_FEATURES_tune-armv7atb-vfpv3d16   = "${TUNE_FEATURES_tune-armv7at-vfpv3d16} bigendian"
-TUNE_FEATURES_tune-armv7ab-vfpv3       = "${TUNE_FEATURES_tune-armv7a-vfpv3} bigendian"
-TUNE_FEATURES_tune-armv7atb-vfpv3      = "${TUNE_FEATURES_tune-armv7at-vfpv3} bigendian"
-TUNE_FEATURES_tune-armv7ab-vfpv4d16    = "${TUNE_FEATURES_tune-armv7a-vfpv4d16} bigendian"
-TUNE_FEATURES_tune-armv7atb-vfpv4d16   = "${TUNE_FEATURES_tune-armv7at-vfpv4d16} bigendian"
-TUNE_FEATURES_tune-armv7ab-neon        = "${TUNE_FEATURES_tune-armv7a-neon} bigendian"
-TUNE_FEATURES_tune-armv7atb-neon       = "${TUNE_FEATURES_tune-armv7at-neon} bigendian"
-TUNE_FEATURES_tune-armv7ab-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7a-neon-vfpv4} bigendian"
-TUNE_FEATURES_tune-armv7atb-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7at-neon-vfpv4} bigendian"
-PACKAGE_EXTRA_ARCHS_tune-armv7ab             = "${PACKAGE_EXTRA_ARCHS_tune-armv6b} armv7ab-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv7atb            = "${PACKAGE_EXTRA_ARCHS_tune-armv6tb} armv7ab-vfp armv7at2b-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv7ab-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab} armv7ab-vfpv3d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7atb} armv7ab-vfpv3d16 armv7at2b-vfpv3d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7ab-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab-vfpv3d16} armv7ab-vfpv3"
-PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv3d16} armv7ab-vfpv3 armv7at2b-vfpv3"
-PACKAGE_EXTRA_ARCHS_tune-armv7ab-vfpv4d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab} armv7ab-vfpv4d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7atb-vfpv4d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7atb} armv7ab-vfpv4d16 armv7at2b-vfpv4d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7ab-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab} armv7ab-neon"
-PACKAGE_EXTRA_ARCHS_tune-armv7atb-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7atb} armv7ab-neon armv7at2b-neon"
-PACKAGE_EXTRA_ARCHS_tune-armv7ab-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab-neon} armv7ab-neon-vfpv4"
-PACKAGE_EXTRA_ARCHS_tune-armv7atb-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7atb-neon} armv7ab-neon-vfpv4 armv7at2b-neon-vfpv4"
+ARMPKGARCH:tune-armv7ab             ?= "armv7a"
+ARMPKGARCH:tune-armv7atb            ?= "armv7a"
+ARMPKGARCH:tune-armv7ab-vfpv3d16    ?= "armv7a"
+ARMPKGARCH:tune-armv7atb-vfpv3d16   ?= "armv7a"
+ARMPKGARCH:tune-armv7ab-vfpv3       ?= "armv7a"
+ARMPKGARCH:tune-armv7atb-vfpv3      ?= "armv7a"
+ARMPKGARCH:tune-armv7ab-vfpv4d16    ?= "armv7a"
+ARMPKGARCH:tune-armv7atb-vfpv4d16   ?= "armv7a"
+ARMPKGARCH:tune-armv7ab-neon        ?= "armv7a"
+ARMPKGARCH:tune-armv7atb-neon       ?= "armv7a"
+ARMPKGARCH:tune-armv7ab-neon-vfpv4  ?= "armv7a"
+ARMPKGARCH:tune-armv7atb-neon-vfpv4 ?= "armv7a"
+TUNE_FEATURES:tune-armv7ab             = "${TUNE_FEATURES:tune-armv7a} bigendian"
+TUNE_FEATURES:tune-armv7atb            = "${TUNE_FEATURES:tune-armv7at} bigendian"
+TUNE_FEATURES:tune-armv7ab-vfpv3d16    = "${TUNE_FEATURES:tune-armv7a-vfpv3d16} bigendian"
+TUNE_FEATURES:tune-armv7atb-vfpv3d16   = "${TUNE_FEATURES:tune-armv7at-vfpv3d16} bigendian"
+TUNE_FEATURES:tune-armv7ab-vfpv3       = "${TUNE_FEATURES:tune-armv7a-vfpv3} bigendian"
+TUNE_FEATURES:tune-armv7atb-vfpv3      = "${TUNE_FEATURES:tune-armv7at-vfpv3} bigendian"
+TUNE_FEATURES:tune-armv7ab-vfpv4d16    = "${TUNE_FEATURES:tune-armv7a-vfpv4d16} bigendian"
+TUNE_FEATURES:tune-armv7atb-vfpv4d16   = "${TUNE_FEATURES:tune-armv7at-vfpv4d16} bigendian"
+TUNE_FEATURES:tune-armv7ab-neon        = "${TUNE_FEATURES:tune-armv7a-neon} bigendian"
+TUNE_FEATURES:tune-armv7atb-neon       = "${TUNE_FEATURES:tune-armv7at-neon} bigendian"
+TUNE_FEATURES:tune-armv7ab-neon-vfpv4  = "${TUNE_FEATURES:tune-armv7a-neon-vfpv4} bigendian"
+TUNE_FEATURES:tune-armv7atb-neon-vfpv4 = "${TUNE_FEATURES:tune-armv7at-neon-vfpv4} bigendian"
+PACKAGE_EXTRA_ARCHS:tune-armv7ab             = "${PACKAGE_EXTRA_ARCHS:tune-armv6b} armv7ab-vfp"
+PACKAGE_EXTRA_ARCHS:tune-armv7atb            = "${PACKAGE_EXTRA_ARCHS:tune-armv6tb} armv7ab-vfp armv7at2b-vfp"
+PACKAGE_EXTRA_ARCHS:tune-armv7ab-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS:tune-armv7ab} armv7ab-vfpv3d16"
+PACKAGE_EXTRA_ARCHS:tune-armv7atb-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS:tune-armv7atb} armv7ab-vfpv3d16 armv7at2b-vfpv3d16"
+PACKAGE_EXTRA_ARCHS:tune-armv7ab-vfpv3       = "${PACKAGE_EXTRA_ARCHS:tune-armv7ab-vfpv3d16} armv7ab-vfpv3"
+PACKAGE_EXTRA_ARCHS:tune-armv7atb-vfpv3      = "${PACKAGE_EXTRA_ARCHS:tune-armv7atb-vfpv3d16} armv7ab-vfpv3 armv7at2b-vfpv3"
+PACKAGE_EXTRA_ARCHS:tune-armv7ab-vfpv4d16    = "${PACKAGE_EXTRA_ARCHS:tune-armv7ab} armv7ab-vfpv4d16"
+PACKAGE_EXTRA_ARCHS:tune-armv7atb-vfpv4d16   = "${PACKAGE_EXTRA_ARCHS:tune-armv7atb} armv7ab-vfpv4d16 armv7at2b-vfpv4d16"
+PACKAGE_EXTRA_ARCHS:tune-armv7ab-neon        = "${PACKAGE_EXTRA_ARCHS:tune-armv7ab} armv7ab-neon"
+PACKAGE_EXTRA_ARCHS:tune-armv7atb-neon       = "${PACKAGE_EXTRA_ARCHS:tune-armv7atb} armv7ab-neon armv7at2b-neon"
+PACKAGE_EXTRA_ARCHS:tune-armv7ab-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS:tune-armv7ab-neon} armv7ab-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS:tune-armv7atb-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS:tune-armv7atb-neon} armv7ab-neon-vfpv4 armv7at2b-neon-vfpv4"
 
 # Big Endian + HF
 AVAILTUNES += "armv7ahfb armv7athfb armv7ahfb-vfpv3d16 armv7athfb-vfpv3d16 armv7ahfb-vfpv3 armv7athfb-vfpv3 armv7ahfb-vfpv4d16 armv7athfb-vfpv4d16 armv7ahfb-neon armv7athfb-neon armv7ahfb-neon-vfpv4 armv7athfb-neon-vfpv4"
-ARMPKGARCH_tune-armv7ahfb             ?= "armv7a"
-ARMPKGARCH_tune-armv7athfb            ?= "armv7a"
-ARMPKGARCH_tune-armv7ahfb-vfpv3d16    ?= "armv7a"
-ARMPKGARCH_tune-armv7athfb-vfpv3d16   ?= "armv7a"
-ARMPKGARCH_tune-armv7ahfb-vfpv3       ?= "armv7a"
-ARMPKGARCH_tune-armv7athfb-vfpv3      ?= "armv7a"
-ARMPKGARCH_tune-armv7ahfb-vfpv4d16    ?= "armv7a"
-ARMPKGARCH_tune-armv7athfb-vfpv4d16   ?= "armv7a"
-ARMPKGARCH_tune-armv7ahfb-neon        ?= "armv7a"
-ARMPKGARCH_tune-armv7athfb-neon       ?= "armv7a"
-ARMPKGARCH_tune-armv7ahfb-neon-vfpv4  ?= "armv7a"
-ARMPKGARCH_tune-armv7athfb-neon-vfpv4 ?= "armv7a"
-TUNE_FEATURES_tune-armv7ahfb             = "${TUNE_FEATURES_tune-armv7ahf} bigendian"
-TUNE_FEATURES_tune-armv7athfb            = "${TUNE_FEATURES_tune-armv7athf} bigendian"
-TUNE_FEATURES_tune-armv7ahfb-vfpv3d16    = "${TUNE_FEATURES_tune-armv7ahf-vfpv3d16} bigendian"
-TUNE_FEATURES_tune-armv7athfb-vfpv3d16   = "${TUNE_FEATURES_tune-armv7athf-vfpv3d16} bigendian"
-TUNE_FEATURES_tune-armv7ahfb-vfpv3       = "${TUNE_FEATURES_tune-armv7ahf-vfpv3} bigendian"
-TUNE_FEATURES_tune-armv7athfb-vfpv3      = "${TUNE_FEATURES_tune-armv7athf-vfpv3} bigendian"
-TUNE_FEATURES_tune-armv7ahfb-vfpv4d16    = "${TUNE_FEATURES_tune-armv7ahf-vfpv4d16} bigendian"
-TUNE_FEATURES_tune-armv7athfb-vfpv4d16   = "${TUNE_FEATURES_tune-armv7athf-vfpv4d16} bigendian"
-TUNE_FEATURES_tune-armv7ahfb-neon        = "${TUNE_FEATURES_tune-armv7ahf-neon} bigendian"
-TUNE_FEATURES_tune-armv7athfb-neon       = "${TUNE_FEATURES_tune-armv7athf-neon} bigendian"
-TUNE_FEATURES_tune-armv7ahfb-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ahf-neon-vfpv4} bigendian"
-TUNE_FEATURES_tune-armv7athfb-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7athf-neon-vfpv4} bigendian"
-PACKAGE_EXTRA_ARCHS_tune-armv7ahfb             = "${PACKAGE_EXTRA_ARCHS_tune-armv6hfb} armv7ahfb-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv7athfb            = "${PACKAGE_EXTRA_ARCHS_tune-armv6thfb} armv7ahfb-vfp armv7at2hfb-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb} armv7ahfb-vfpv3d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7athfb-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7athfb} armv7ahfb-vfpv3d16 armv7at2hfb-vfpv3d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-vfpv3d16} armv7ahfb-vfpv3"
-PACKAGE_EXTRA_ARCHS_tune-armv7athfb-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7athfb-vfpv3d16} armv7ahfb-vfpv3 armv7at2hfb-vfpv3"
-PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-vfpv4d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb} armv7ahfb-vfpv4d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7athfb-vfpv4d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7athfb} armv7ahfb-vfpv4d16 armv7at2hfb-vfpv4d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb} armv7ahfb-neon"
-PACKAGE_EXTRA_ARCHS_tune-armv7athfb-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athfb} armv7ahfb-neon armv7at2hfb-neon"
-PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb-neon} armv7ahfb-neon-vfpv4"
-PACKAGE_EXTRA_ARCHS_tune-armv7athfb-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athfb-neon} armv7ahfb-neon-vfpv4 armv7at2hfb-neon-vfpv4"
+ARMPKGARCH:tune-armv7ahfb             ?= "armv7a"
+ARMPKGARCH:tune-armv7athfb            ?= "armv7a"
+ARMPKGARCH:tune-armv7ahfb-vfpv3d16    ?= "armv7a"
+ARMPKGARCH:tune-armv7athfb-vfpv3d16   ?= "armv7a"
+ARMPKGARCH:tune-armv7ahfb-vfpv3       ?= "armv7a"
+ARMPKGARCH:tune-armv7athfb-vfpv3      ?= "armv7a"
+ARMPKGARCH:tune-armv7ahfb-vfpv4d16    ?= "armv7a"
+ARMPKGARCH:tune-armv7athfb-vfpv4d16   ?= "armv7a"
+ARMPKGARCH:tune-armv7ahfb-neon        ?= "armv7a"
+ARMPKGARCH:tune-armv7athfb-neon       ?= "armv7a"
+ARMPKGARCH:tune-armv7ahfb-neon-vfpv4  ?= "armv7a"
+ARMPKGARCH:tune-armv7athfb-neon-vfpv4 ?= "armv7a"
+TUNE_FEATURES:tune-armv7ahfb             = "${TUNE_FEATURES:tune-armv7ahf} bigendian"
+TUNE_FEATURES:tune-armv7athfb            = "${TUNE_FEATURES:tune-armv7athf} bigendian"
+TUNE_FEATURES:tune-armv7ahfb-vfpv3d16    = "${TUNE_FEATURES:tune-armv7ahf-vfpv3d16} bigendian"
+TUNE_FEATURES:tune-armv7athfb-vfpv3d16   = "${TUNE_FEATURES:tune-armv7athf-vfpv3d16} bigendian"
+TUNE_FEATURES:tune-armv7ahfb-vfpv3       = "${TUNE_FEATURES:tune-armv7ahf-vfpv3} bigendian"
+TUNE_FEATURES:tune-armv7athfb-vfpv3      = "${TUNE_FEATURES:tune-armv7athf-vfpv3} bigendian"
+TUNE_FEATURES:tune-armv7ahfb-vfpv4d16    = "${TUNE_FEATURES:tune-armv7ahf-vfpv4d16} bigendian"
+TUNE_FEATURES:tune-armv7athfb-vfpv4d16   = "${TUNE_FEATURES:tune-armv7athf-vfpv4d16} bigendian"
+TUNE_FEATURES:tune-armv7ahfb-neon        = "${TUNE_FEATURES:tune-armv7ahf-neon} bigendian"
+TUNE_FEATURES:tune-armv7athfb-neon       = "${TUNE_FEATURES:tune-armv7athf-neon} bigendian"
+TUNE_FEATURES:tune-armv7ahfb-neon-vfpv4  = "${TUNE_FEATURES:tune-armv7ahf-neon-vfpv4} bigendian"
+TUNE_FEATURES:tune-armv7athfb-neon-vfpv4 = "${TUNE_FEATURES:tune-armv7athf-neon-vfpv4} bigendian"
+PACKAGE_EXTRA_ARCHS:tune-armv7ahfb             = "${PACKAGE_EXTRA_ARCHS:tune-armv6hfb} armv7ahfb-vfp"
+PACKAGE_EXTRA_ARCHS:tune-armv7athfb            = "${PACKAGE_EXTRA_ARCHS:tune-armv6thfb} armv7ahfb-vfp armv7at2hfb-vfp"
+PACKAGE_EXTRA_ARCHS:tune-armv7ahfb-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS:tune-armv7ahfb} armv7ahfb-vfpv3d16"
+PACKAGE_EXTRA_ARCHS:tune-armv7athfb-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS:tune-armv7athfb} armv7ahfb-vfpv3d16 armv7at2hfb-vfpv3d16"
+PACKAGE_EXTRA_ARCHS:tune-armv7ahfb-vfpv3       = "${PACKAGE_EXTRA_ARCHS:tune-armv7ahfb-vfpv3d16} armv7ahfb-vfpv3"
+PACKAGE_EXTRA_ARCHS:tune-armv7athfb-vfpv3      = "${PACKAGE_EXTRA_ARCHS:tune-armv7athfb-vfpv3d16} armv7ahfb-vfpv3 armv7at2hfb-vfpv3"
+PACKAGE_EXTRA_ARCHS:tune-armv7ahfb-vfpv4d16    = "${PACKAGE_EXTRA_ARCHS:tune-armv7ahfb} armv7ahfb-vfpv4d16"
+PACKAGE_EXTRA_ARCHS:tune-armv7athfb-vfpv4d16   = "${PACKAGE_EXTRA_ARCHS:tune-armv7athfb} armv7ahfb-vfpv4d16 armv7at2hfb-vfpv4d16"
+PACKAGE_EXTRA_ARCHS:tune-armv7ahfb-neon        = "${PACKAGE_EXTRA_ARCHS:tune-armv7ahfb} armv7ahfb-neon"
+PACKAGE_EXTRA_ARCHS:tune-armv7athfb-neon       = "${PACKAGE_EXTRA_ARCHS:tune-armv7athfb} armv7ahfb-neon armv7at2hfb-neon"
+PACKAGE_EXTRA_ARCHS:tune-armv7ahfb-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS:tune-armv7ahfb-neon} armv7ahfb-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS:tune-armv7athfb-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS:tune-armv7athfb-neon} armv7ahfb-neon-vfpv4 armv7at2hfb-neon-vfpv4"
diff --git a/poky/meta/conf/machine/include/arm/arch-armv7ve.inc b/poky/meta/conf/machine/include/arm/arch-armv7ve.inc
index d9d92f6..b40c2ca 100644
--- a/poky/meta/conf/machine/include/arm/arch-armv7ve.inc
+++ b/poky/meta/conf/machine/include/arm/arch-armv7ve.inc
@@ -9,156 +9,156 @@
 
 # Little Endian base configs
 AVAILTUNES += "armv7ve armv7vet armv7ve-vfpv3d16 armv7vet-vfpv3d16 armv7ve-vfpv3 armv7vet-vfpv3 armv7ve-vfpv4d16 armv7vet-vfpv4d16 armv7ve-neon armv7vet-neon armv7ve-neon-vfpv4 armv7vet-neon-vfpv4"
-ARMPKGARCH_tune-armv7ve             ?= "armv7ve"
-ARMPKGARCH_tune-armv7vet            ?= "armv7ve"
-ARMPKGARCH_tune-armv7ve-vfpv3d16    ?= "armv7ve"
-ARMPKGARCH_tune-armv7vet-vfpv3d16   ?= "armv7ve"
-ARMPKGARCH_tune-armv7ve-vfpv3       ?= "armv7ve"
-ARMPKGARCH_tune-armv7vet-vfpv3      ?= "armv7ve"
-ARMPKGARCH_tune-armv7ve-vfpv4d16    ?= "armv7ve"
-ARMPKGARCH_tune-armv7vet-vfpv4d16   ?= "armv7ve"
-ARMPKGARCH_tune-armv7ve-neon        ?= "armv7ve"
-ARMPKGARCH_tune-armv7vet-neon       ?= "armv7ve"
-ARMPKGARCH_tune-armv7ve-neon-vfpv4  ?= "armv7ve"
-ARMPKGARCH_tune-armv7vet-neon-vfpv4 ?= "armv7ve"
-TUNE_FEATURES_tune-armv7ve             = "arm armv7ve vfp"
-TUNE_FEATURES_tune-armv7vet            = "${TUNE_FEATURES_tune-armv7ve} thumb"
-TUNE_FEATURES_tune-armv7ve-vfpv3d16    = "${TUNE_FEATURES_tune-armv7ve} vfpv3d16"
-TUNE_FEATURES_tune-armv7vet-vfpv3d16   = "${TUNE_FEATURES_tune-armv7vet} vfpv3d16"
-TUNE_FEATURES_tune-armv7ve-vfpv3       = "${TUNE_FEATURES_tune-armv7ve-vfpv3d16} vfpv3"
-TUNE_FEATURES_tune-armv7vet-vfpv3      = "${TUNE_FEATURES_tune-armv7vet-vfpv3d16} vfpv3"
-TUNE_FEATURES_tune-armv7ve-vfpv4d16    = "${TUNE_FEATURES_tune-armv7ve} vfpv4d16"
-TUNE_FEATURES_tune-armv7vet-vfpv4d16   = "${TUNE_FEATURES_tune-armv7vet} vfpv4d16"
-TUNE_FEATURES_tune-armv7ve-neon        = "${TUNE_FEATURES_tune-armv7ve} neon"
-TUNE_FEATURES_tune-armv7vet-neon       = "${TUNE_FEATURES_tune-armv7vet} neon"
-TUNE_FEATURES_tune-armv7ve-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ve-neon} vfpv4"
-TUNE_FEATURES_tune-armv7vet-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7vet-neon} vfpv4"
-PACKAGE_EXTRA_ARCHS_tune-armv7ve             = "${PACKAGE_EXTRA_ARCHS_tune-armv7a} armv7ve armv7ve-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv7vet            = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} armv7ve armv7ve-vfp armv7vet2-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv7ve-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve} armv7ve-vfpv3d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7vet-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} armv7ve-vfpv3d16 armv7vet2-vfpv3d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7ve-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-vfpv3d16} armv7ve-vfpv3"
-PACKAGE_EXTRA_ARCHS_tune-armv7vet-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-vfpv3d16} armv7ve-vfpv3 armv7vet2-vfpv3"
-PACKAGE_EXTRA_ARCHS_tune-armv7ve-vfpv4d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve}  armv7ve-vfpv4d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7vet-vfpv4d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} armv7ve-vfpv4d16 armv7vet2-vfpv4d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve} armv7ve-neon"
-PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} armv7ve-neon armv7vet2-neon"
-PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon} armv7ve-neon-vfpv4"
-PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon} armv7ve-neon-vfpv4 armv7vet2-neon-vfpv4"
+ARMPKGARCH:tune-armv7ve             ?= "armv7ve"
+ARMPKGARCH:tune-armv7vet            ?= "armv7ve"
+ARMPKGARCH:tune-armv7ve-vfpv3d16    ?= "armv7ve"
+ARMPKGARCH:tune-armv7vet-vfpv3d16   ?= "armv7ve"
+ARMPKGARCH:tune-armv7ve-vfpv3       ?= "armv7ve"
+ARMPKGARCH:tune-armv7vet-vfpv3      ?= "armv7ve"
+ARMPKGARCH:tune-armv7ve-vfpv4d16    ?= "armv7ve"
+ARMPKGARCH:tune-armv7vet-vfpv4d16   ?= "armv7ve"
+ARMPKGARCH:tune-armv7ve-neon        ?= "armv7ve"
+ARMPKGARCH:tune-armv7vet-neon       ?= "armv7ve"
+ARMPKGARCH:tune-armv7ve-neon-vfpv4  ?= "armv7ve"
+ARMPKGARCH:tune-armv7vet-neon-vfpv4 ?= "armv7ve"
+TUNE_FEATURES:tune-armv7ve             = "arm armv7ve vfp"
+TUNE_FEATURES:tune-armv7vet            = "${TUNE_FEATURES:tune-armv7ve} thumb"
+TUNE_FEATURES:tune-armv7ve-vfpv3d16    = "${TUNE_FEATURES:tune-armv7ve} vfpv3d16"
+TUNE_FEATURES:tune-armv7vet-vfpv3d16   = "${TUNE_FEATURES:tune-armv7vet} vfpv3d16"
+TUNE_FEATURES:tune-armv7ve-vfpv3       = "${TUNE_FEATURES:tune-armv7ve-vfpv3d16} vfpv3"
+TUNE_FEATURES:tune-armv7vet-vfpv3      = "${TUNE_FEATURES:tune-armv7vet-vfpv3d16} vfpv3"
+TUNE_FEATURES:tune-armv7ve-vfpv4d16    = "${TUNE_FEATURES:tune-armv7ve} vfpv4d16"
+TUNE_FEATURES:tune-armv7vet-vfpv4d16   = "${TUNE_FEATURES:tune-armv7vet} vfpv4d16"
+TUNE_FEATURES:tune-armv7ve-neon        = "${TUNE_FEATURES:tune-armv7ve} neon"
+TUNE_FEATURES:tune-armv7vet-neon       = "${TUNE_FEATURES:tune-armv7vet} neon"
+TUNE_FEATURES:tune-armv7ve-neon-vfpv4  = "${TUNE_FEATURES:tune-armv7ve-neon} vfpv4"
+TUNE_FEATURES:tune-armv7vet-neon-vfpv4 = "${TUNE_FEATURES:tune-armv7vet-neon} vfpv4"
+PACKAGE_EXTRA_ARCHS:tune-armv7ve             = "${PACKAGE_EXTRA_ARCHS:tune-armv7a} armv7ve armv7ve-vfp"
+PACKAGE_EXTRA_ARCHS:tune-armv7vet            = "${PACKAGE_EXTRA_ARCHS:tune-armv7at} armv7ve armv7ve-vfp armv7vet2-vfp"
+PACKAGE_EXTRA_ARCHS:tune-armv7ve-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS:tune-armv7ve} armv7ve-vfpv3d16"
+PACKAGE_EXTRA_ARCHS:tune-armv7vet-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS:tune-armv7vet} armv7ve-vfpv3d16 armv7vet2-vfpv3d16"
+PACKAGE_EXTRA_ARCHS:tune-armv7ve-vfpv3       = "${PACKAGE_EXTRA_ARCHS:tune-armv7ve-vfpv3d16} armv7ve-vfpv3"
+PACKAGE_EXTRA_ARCHS:tune-armv7vet-vfpv3      = "${PACKAGE_EXTRA_ARCHS:tune-armv7vet-vfpv3d16} armv7ve-vfpv3 armv7vet2-vfpv3"
+PACKAGE_EXTRA_ARCHS:tune-armv7ve-vfpv4d16    = "${PACKAGE_EXTRA_ARCHS:tune-armv7ve}  armv7ve-vfpv4d16"
+PACKAGE_EXTRA_ARCHS:tune-armv7vet-vfpv4d16   = "${PACKAGE_EXTRA_ARCHS:tune-armv7vet} armv7ve-vfpv4d16 armv7vet2-vfpv4d16"
+PACKAGE_EXTRA_ARCHS:tune-armv7ve-neon        = "${PACKAGE_EXTRA_ARCHS:tune-armv7ve} armv7ve-neon"
+PACKAGE_EXTRA_ARCHS:tune-armv7vet-neon       = "${PACKAGE_EXTRA_ARCHS:tune-armv7vet} armv7ve-neon armv7vet2-neon"
+PACKAGE_EXTRA_ARCHS:tune-armv7ve-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS:tune-armv7ve-neon} armv7ve-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS:tune-armv7vet-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS:tune-armv7vet-neon} armv7ve-neon-vfpv4 armv7vet2-neon-vfpv4"
 
 # HF Tunes
 AVAILTUNES += "armv7vehf armv7vethf armv7vehf-vfpv3d16 armv7vethf-vfpv3d16 armv7vehf-vfpv3 armv7vethf-vfpv3 armv7vehf-vfpv4d16 armv7vethf-vfpv4d16 armv7vehf-neon armv7vethf-neon armv7vehf-neon-vfpv4 armv7vethf-neon-vfpv4"
-ARMPKGARCH_tune-armv7vehf             ?= "armv7ve"
-ARMPKGARCH_tune-armv7vethf            ?= "armv7ve"
-ARMPKGARCH_tune-armv7vehf-vfpv3d16    ?= "armv7ve"
-ARMPKGARCH_tune-armv7vethf-vfpv3d16   ?= "armv7ve"
-ARMPKGARCH_tune-armv7vehf-vfpv3       ?= "armv7ve"
-ARMPKGARCH_tune-armv7vethf-vfpv3      ?= "armv7ve"
-ARMPKGARCH_tune-armv7vehf-vfpv4d16    ?= "armv7ve"
-ARMPKGARCH_tune-armv7vethf-vfpv4d16   ?= "armv7ve"
-ARMPKGARCH_tune-armv7vehf-neon        ?= "armv7ve"
-ARMPKGARCH_tune-armv7vethf-neon       ?= "armv7ve"
-ARMPKGARCH_tune-armv7vehf-neon-vfpv4  ?= "armv7ve"
-ARMPKGARCH_tune-armv7vethf-neon-vfpv4 ?= "armv7ve"
-TUNE_FEATURES_tune-armv7vehf             = "${TUNE_FEATURES_tune-armv7ve} callconvention-hard"
-TUNE_FEATURES_tune-armv7vethf            = "${TUNE_FEATURES_tune-armv7vet} callconvention-hard"
-TUNE_FEATURES_tune-armv7vehf-vfpv3d16    = "${TUNE_FEATURES_tune-armv7ve-vfpv3d16} callconvention-hard"
-TUNE_FEATURES_tune-armv7vethf-vfpv3d16   = "${TUNE_FEATURES_tune-armv7vet-vfpv3d16} callconvention-hard"
-TUNE_FEATURES_tune-armv7vehf-vfpv3       = "${TUNE_FEATURES_tune-armv7ve-vfpv3} callconvention-hard"
-TUNE_FEATURES_tune-armv7vethf-vfpv3      = "${TUNE_FEATURES_tune-armv7vet-vfpv3} callconvention-hard"
-TUNE_FEATURES_tune-armv7vehf-vfpv4d16    = "${TUNE_FEATURES_tune-armv7ve-vfpv4d16} callconvention-hard"
-TUNE_FEATURES_tune-armv7vethf-vfpv4d16   = "${TUNE_FEATURES_tune-armv7vet-vfpv4d16} callconvention-hard"
-TUNE_FEATURES_tune-armv7vehf-neon        = "${TUNE_FEATURES_tune-armv7ve-neon} callconvention-hard"
-TUNE_FEATURES_tune-armv7vethf-neon       = "${TUNE_FEATURES_tune-armv7vet-neon} callconvention-hard"
-TUNE_FEATURES_tune-armv7vehf-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4} callconvention-hard"
-TUNE_FEATURES_tune-armv7vethf-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} callconvention-hard"
-PACKAGE_EXTRA_ARCHS_tune-armv7vehf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf} armv7vehf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv7vethf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} armv7vehf-vfp armv7vet2hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv7vehf-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf} armv7vehf-vfpv3d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7vethf-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} armv7vehf-vfpv3d16 armv7vet2hf-vfpv3d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7vehf-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-vfpv3d16} armv7vehf-vfpv3"
-PACKAGE_EXTRA_ARCHS_tune-armv7vethf-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-vfpv3d16} armv7vehf-vfpv3 armv7vet2hf-vfpv3"
-PACKAGE_EXTRA_ARCHS_tune-armv7vehf-vfpv4d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf} armv7vehf-vfpv4d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7vethf-vfpv4d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} armv7vehf-vfpv4d16 armv7vet2hf-vfpv4d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf} armv7vehf-neon"
-PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} armv7vehf-neon armv7vet2hf-neon"
-PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon} armv7vehf-neon-vfpv4"
-PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon} armv7vehf-neon-vfpv4 armv7vet2hf-neon-vfpv4"
+ARMPKGARCH:tune-armv7vehf             ?= "armv7ve"
+ARMPKGARCH:tune-armv7vethf            ?= "armv7ve"
+ARMPKGARCH:tune-armv7vehf-vfpv3d16    ?= "armv7ve"
+ARMPKGARCH:tune-armv7vethf-vfpv3d16   ?= "armv7ve"
+ARMPKGARCH:tune-armv7vehf-vfpv3       ?= "armv7ve"
+ARMPKGARCH:tune-armv7vethf-vfpv3      ?= "armv7ve"
+ARMPKGARCH:tune-armv7vehf-vfpv4d16    ?= "armv7ve"
+ARMPKGARCH:tune-armv7vethf-vfpv4d16   ?= "armv7ve"
+ARMPKGARCH:tune-armv7vehf-neon        ?= "armv7ve"
+ARMPKGARCH:tune-armv7vethf-neon       ?= "armv7ve"
+ARMPKGARCH:tune-armv7vehf-neon-vfpv4  ?= "armv7ve"
+ARMPKGARCH:tune-armv7vethf-neon-vfpv4 ?= "armv7ve"
+TUNE_FEATURES:tune-armv7vehf             = "${TUNE_FEATURES:tune-armv7ve} callconvention-hard"
+TUNE_FEATURES:tune-armv7vethf            = "${TUNE_FEATURES:tune-armv7vet} callconvention-hard"
+TUNE_FEATURES:tune-armv7vehf-vfpv3d16    = "${TUNE_FEATURES:tune-armv7ve-vfpv3d16} callconvention-hard"
+TUNE_FEATURES:tune-armv7vethf-vfpv3d16   = "${TUNE_FEATURES:tune-armv7vet-vfpv3d16} callconvention-hard"
+TUNE_FEATURES:tune-armv7vehf-vfpv3       = "${TUNE_FEATURES:tune-armv7ve-vfpv3} callconvention-hard"
+TUNE_FEATURES:tune-armv7vethf-vfpv3      = "${TUNE_FEATURES:tune-armv7vet-vfpv3} callconvention-hard"
+TUNE_FEATURES:tune-armv7vehf-vfpv4d16    = "${TUNE_FEATURES:tune-armv7ve-vfpv4d16} callconvention-hard"
+TUNE_FEATURES:tune-armv7vethf-vfpv4d16   = "${TUNE_FEATURES:tune-armv7vet-vfpv4d16} callconvention-hard"
+TUNE_FEATURES:tune-armv7vehf-neon        = "${TUNE_FEATURES:tune-armv7ve-neon} callconvention-hard"
+TUNE_FEATURES:tune-armv7vethf-neon       = "${TUNE_FEATURES:tune-armv7vet-neon} callconvention-hard"
+TUNE_FEATURES:tune-armv7vehf-neon-vfpv4  = "${TUNE_FEATURES:tune-armv7ve-neon-vfpv4} callconvention-hard"
+TUNE_FEATURES:tune-armv7vethf-neon-vfpv4 = "${TUNE_FEATURES:tune-armv7vet-neon-vfpv4} callconvention-hard"
+PACKAGE_EXTRA_ARCHS:tune-armv7vehf             = "${PACKAGE_EXTRA_ARCHS:tune-armv7ahf} armv7vehf-vfp"
+PACKAGE_EXTRA_ARCHS:tune-armv7vethf            = "${PACKAGE_EXTRA_ARCHS:tune-armv7athf} armv7vehf-vfp armv7vet2hf-vfp"
+PACKAGE_EXTRA_ARCHS:tune-armv7vehf-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS:tune-armv7vehf} armv7vehf-vfpv3d16"
+PACKAGE_EXTRA_ARCHS:tune-armv7vethf-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS:tune-armv7vethf} armv7vehf-vfpv3d16 armv7vet2hf-vfpv3d16"
+PACKAGE_EXTRA_ARCHS:tune-armv7vehf-vfpv3       = "${PACKAGE_EXTRA_ARCHS:tune-armv7vehf-vfpv3d16} armv7vehf-vfpv3"
+PACKAGE_EXTRA_ARCHS:tune-armv7vethf-vfpv3      = "${PACKAGE_EXTRA_ARCHS:tune-armv7vethf-vfpv3d16} armv7vehf-vfpv3 armv7vet2hf-vfpv3"
+PACKAGE_EXTRA_ARCHS:tune-armv7vehf-vfpv4d16    = "${PACKAGE_EXTRA_ARCHS:tune-armv7vehf} armv7vehf-vfpv4d16"
+PACKAGE_EXTRA_ARCHS:tune-armv7vethf-vfpv4d16   = "${PACKAGE_EXTRA_ARCHS:tune-armv7vethf} armv7vehf-vfpv4d16 armv7vet2hf-vfpv4d16"
+PACKAGE_EXTRA_ARCHS:tune-armv7vehf-neon        = "${PACKAGE_EXTRA_ARCHS:tune-armv7vehf} armv7vehf-neon"
+PACKAGE_EXTRA_ARCHS:tune-armv7vethf-neon       = "${PACKAGE_EXTRA_ARCHS:tune-armv7vethf} armv7vehf-neon armv7vet2hf-neon"
+PACKAGE_EXTRA_ARCHS:tune-armv7vehf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS:tune-armv7vehf-neon} armv7vehf-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS:tune-armv7vethf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS:tune-armv7vethf-neon} armv7vehf-neon-vfpv4 armv7vet2hf-neon-vfpv4"
 
 # Big Endian
 AVAILTUNES += "armv7veb armv7vetb armv7veb-vfpv3d16 armv7vetb-vfpv3d16 armv7veb-vfpv3 armv7vetb-vfpv3 armv7veb-vfpv4d16 armv7vetb-vfpv4d16 armv7veb-neon armv7vetb-neon armv7veb-neon-vfpv4 armv7vetb-neon-vfpv4"
-ARMPKGARCH_tune-armv7veb             ?= "armv7ve"
-ARMPKGARCH_tune-armv7vetb            ?= "armv7ve"
-ARMPKGARCH_tune-armv7veb-vfpv3d16    ?= "armv7ve"
-ARMPKGARCH_tune-armv7vetb-vfpv3d16   ?= "armv7ve"
-ARMPKGARCH_tune-armv7veb-vfpv3       ?= "armv7ve"
-ARMPKGARCH_tune-armv7vetb-vfpv3      ?= "armv7ve"
-ARMPKGARCH_tune-armv7veb-vfpv4d16    ?= "armv7ve"
-ARMPKGARCH_tune-armv7vetb-vfpv4d16   ?= "armv7ve"
-ARMPKGARCH_tune-armv7veb-neon        ?= "armv7ve"
-ARMPKGARCH_tune-armv7vetb-neon       ?= "armv7ve"
-ARMPKGARCH_tune-armv7veb-neon-vfpv4  ?= "armv7ve"
-ARMPKGARCH_tune-armv7vetb-neon-vfpv4 ?= "armv7ve"
-TUNE_FEATURES_tune-armv7veb             = "${TUNE_FEATURES_tune-armv7ve} bigendian"
-TUNE_FEATURES_tune-armv7vetb            = "${TUNE_FEATURES_tune-armv7vet} bigendian"
-TUNE_FEATURES_tune-armv7veb-vfpv3d16    = "${TUNE_FEATURES_tune-armv7ve-vfpv3d16} bigendian"
-TUNE_FEATURES_tune-armv7vetb-vfpv3d16   = "${TUNE_FEATURES_tune-armv7vet-vfpv3d16} bigendian"
-TUNE_FEATURES_tune-armv7veb-vfpv3       = "${TUNE_FEATURES_tune-armv7ve-vfpv3} bigendian"
-TUNE_FEATURES_tune-armv7vetb-vfpv3      = "${TUNE_FEATURES_tune-armv7vet-vfpv3} bigendian"
-TUNE_FEATURES_tune-armv7veb-vfpv4d16    = "${TUNE_FEATURES_tune-armv7ve-vfpv4d16} bigendian"
-TUNE_FEATURES_tune-armv7vetb-vfpv4d16   = "${TUNE_FEATURES_tune-armv7vet-vfpv4d16} bigendian"
-TUNE_FEATURES_tune-armv7veb-neon        = "${TUNE_FEATURES_tune-armv7ve-neon} bigendian"
-TUNE_FEATURES_tune-armv7vetb-neon       = "${TUNE_FEATURES_tune-armv7vet-neon} bigendian"
-TUNE_FEATURES_tune-armv7veb-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7ve-neon-vfpv4} bigendian"
-TUNE_FEATURES_tune-armv7vetb-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7vet-neon-vfpv4} bigendian"
-PACKAGE_EXTRA_ARCHS_tune-armv7veb             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ab} armv7veb-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv7vetb            = "${PACKAGE_EXTRA_ARCHS_tune-armv7atb} armv7veb-vfp armv7vet2b-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv7veb-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7veb} armv7veb-vfpv3d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7vetb-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb} armv7veb-vfpv3d16 armv7vet2b-vfpv3d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7veb-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7veb-vfpv3d16} armv7veb-vfpv3"
-PACKAGE_EXTRA_ARCHS_tune-armv7vetb-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb-vfpv3d16} armv7veb-vfpv3 armv7vet2b-vfpv3"
-PACKAGE_EXTRA_ARCHS_tune-armv7veb-vfpv4d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7veb} armv7veb-vfpv4d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7vetb-vfpv4d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb} armv7veb-vfpv4d16 armv7vet2b-vfpv4d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7veb-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7veb} armv7veb-neon"
-PACKAGE_EXTRA_ARCHS_tune-armv7vetb-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb} armv7veb-neon armv7vet2b-neon"
-PACKAGE_EXTRA_ARCHS_tune-armv7veb-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7veb-neon} armv7veb-neon-vfpv4"
-PACKAGE_EXTRA_ARCHS_tune-armv7vetb-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vetb-neon} armv7veb-neon-vfpv4 armv7vet2b-neon-vfpv4"
+ARMPKGARCH:tune-armv7veb             ?= "armv7ve"
+ARMPKGARCH:tune-armv7vetb            ?= "armv7ve"
+ARMPKGARCH:tune-armv7veb-vfpv3d16    ?= "armv7ve"
+ARMPKGARCH:tune-armv7vetb-vfpv3d16   ?= "armv7ve"
+ARMPKGARCH:tune-armv7veb-vfpv3       ?= "armv7ve"
+ARMPKGARCH:tune-armv7vetb-vfpv3      ?= "armv7ve"
+ARMPKGARCH:tune-armv7veb-vfpv4d16    ?= "armv7ve"
+ARMPKGARCH:tune-armv7vetb-vfpv4d16   ?= "armv7ve"
+ARMPKGARCH:tune-armv7veb-neon        ?= "armv7ve"
+ARMPKGARCH:tune-armv7vetb-neon       ?= "armv7ve"
+ARMPKGARCH:tune-armv7veb-neon-vfpv4  ?= "armv7ve"
+ARMPKGARCH:tune-armv7vetb-neon-vfpv4 ?= "armv7ve"
+TUNE_FEATURES:tune-armv7veb             = "${TUNE_FEATURES:tune-armv7ve} bigendian"
+TUNE_FEATURES:tune-armv7vetb            = "${TUNE_FEATURES:tune-armv7vet} bigendian"
+TUNE_FEATURES:tune-armv7veb-vfpv3d16    = "${TUNE_FEATURES:tune-armv7ve-vfpv3d16} bigendian"
+TUNE_FEATURES:tune-armv7vetb-vfpv3d16   = "${TUNE_FEATURES:tune-armv7vet-vfpv3d16} bigendian"
+TUNE_FEATURES:tune-armv7veb-vfpv3       = "${TUNE_FEATURES:tune-armv7ve-vfpv3} bigendian"
+TUNE_FEATURES:tune-armv7vetb-vfpv3      = "${TUNE_FEATURES:tune-armv7vet-vfpv3} bigendian"
+TUNE_FEATURES:tune-armv7veb-vfpv4d16    = "${TUNE_FEATURES:tune-armv7ve-vfpv4d16} bigendian"
+TUNE_FEATURES:tune-armv7vetb-vfpv4d16   = "${TUNE_FEATURES:tune-armv7vet-vfpv4d16} bigendian"
+TUNE_FEATURES:tune-armv7veb-neon        = "${TUNE_FEATURES:tune-armv7ve-neon} bigendian"
+TUNE_FEATURES:tune-armv7vetb-neon       = "${TUNE_FEATURES:tune-armv7vet-neon} bigendian"
+TUNE_FEATURES:tune-armv7veb-neon-vfpv4  = "${TUNE_FEATURES:tune-armv7ve-neon-vfpv4} bigendian"
+TUNE_FEATURES:tune-armv7vetb-neon-vfpv4 = "${TUNE_FEATURES:tune-armv7vet-neon-vfpv4} bigendian"
+PACKAGE_EXTRA_ARCHS:tune-armv7veb             = "${PACKAGE_EXTRA_ARCHS:tune-armv7ab} armv7veb-vfp"
+PACKAGE_EXTRA_ARCHS:tune-armv7vetb            = "${PACKAGE_EXTRA_ARCHS:tune-armv7atb} armv7veb-vfp armv7vet2b-vfp"
+PACKAGE_EXTRA_ARCHS:tune-armv7veb-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS:tune-armv7veb} armv7veb-vfpv3d16"
+PACKAGE_EXTRA_ARCHS:tune-armv7vetb-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS:tune-armv7vetb} armv7veb-vfpv3d16 armv7vet2b-vfpv3d16"
+PACKAGE_EXTRA_ARCHS:tune-armv7veb-vfpv3       = "${PACKAGE_EXTRA_ARCHS:tune-armv7veb-vfpv3d16} armv7veb-vfpv3"
+PACKAGE_EXTRA_ARCHS:tune-armv7vetb-vfpv3      = "${PACKAGE_EXTRA_ARCHS:tune-armv7vetb-vfpv3d16} armv7veb-vfpv3 armv7vet2b-vfpv3"
+PACKAGE_EXTRA_ARCHS:tune-armv7veb-vfpv4d16    = "${PACKAGE_EXTRA_ARCHS:tune-armv7veb} armv7veb-vfpv4d16"
+PACKAGE_EXTRA_ARCHS:tune-armv7vetb-vfpv4d16   = "${PACKAGE_EXTRA_ARCHS:tune-armv7vetb} armv7veb-vfpv4d16 armv7vet2b-vfpv4d16"
+PACKAGE_EXTRA_ARCHS:tune-armv7veb-neon        = "${PACKAGE_EXTRA_ARCHS:tune-armv7veb} armv7veb-neon"
+PACKAGE_EXTRA_ARCHS:tune-armv7vetb-neon       = "${PACKAGE_EXTRA_ARCHS:tune-armv7vetb} armv7veb-neon armv7vet2b-neon"
+PACKAGE_EXTRA_ARCHS:tune-armv7veb-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS:tune-armv7veb-neon} armv7veb-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS:tune-armv7vetb-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS:tune-armv7vetb-neon} armv7veb-neon-vfpv4 armv7vet2b-neon-vfpv4"
 
 # Big Endian + HF
 AVAILTUNES += "armv7vehfb armv7vethfb armv7vehfb-vfpv3d16 armv7vethfb-vfpv3d16 armv7vehfb-vfpv3 armv7vethfb-vfpv3 armv7vehfb-vfpv4d16 armv7vethfb-vfpv4d16 armv7vehfb-neon armv7vethfb-neon armv7vehfb-neon-vfpv4 armv7vethfb-neon-vfpv4"
-ARMPKGARCH_tune-armv7vehfb             ?= "armv7ve"
-ARMPKGARCH_tune-armv7vethfb            ?= "armv7ve"
-ARMPKGARCH_tune-armv7vehfb-vfpv3d16    ?= "armv7ve"
-ARMPKGARCH_tune-armv7vethfb-vfpv3d16   ?= "armv7ve"
-ARMPKGARCH_tune-armv7vehfb-vfpv3       ?= "armv7ve"
-ARMPKGARCH_tune-armv7vethfb-vfpv3      ?= "armv7ve"
-ARMPKGARCH_tune-armv7vehfb-vfpv4d16    ?= "armv7ve"
-ARMPKGARCH_tune-armv7vethfb-vfpv4d16   ?= "armv7ve"
-ARMPKGARCH_tune-armv7vehfb-neon        ?= "armv7ve"
-ARMPKGARCH_tune-armv7vethfb-neon       ?= "armv7ve"
-ARMPKGARCH_tune-armv7vehfb-neon-vfpv4  ?= "armv7ve"
-ARMPKGARCH_tune-armv7vethfb-neon-vfpv4 ?= "armv7ve"
-TUNE_FEATURES_tune-armv7vehfb             = "${TUNE_FEATURES_tune-armv7vehf} bigendian"
-TUNE_FEATURES_tune-armv7vethfb            = "${TUNE_FEATURES_tune-armv7vethf} bigendian"
-TUNE_FEATURES_tune-armv7vehfb-vfpv3d16    = "${TUNE_FEATURES_tune-armv7vehf-vfpv3d16} bigendian"
-TUNE_FEATURES_tune-armv7vethfb-vfpv3d16   = "${TUNE_FEATURES_tune-armv7vethf-vfpv3d16} bigendian"
-TUNE_FEATURES_tune-armv7vehfb-vfpv3       = "${TUNE_FEATURES_tune-armv7vehf-vfpv3} bigendian"
-TUNE_FEATURES_tune-armv7vethfb-vfpv3      = "${TUNE_FEATURES_tune-armv7vethf-vfpv3} bigendian"
-TUNE_FEATURES_tune-armv7vehfb-vfpv4d16    = "${TUNE_FEATURES_tune-armv7vehf-vfpv4d16} bigendian"
-TUNE_FEATURES_tune-armv7vethfb-vfpv4d16   = "${TUNE_FEATURES_tune-armv7vethf-vfpv4d16} bigendian"
-TUNE_FEATURES_tune-armv7vehfb-neon        = "${TUNE_FEATURES_tune-armv7vehf-neon} bigendian"
-TUNE_FEATURES_tune-armv7vethfb-neon       = "${TUNE_FEATURES_tune-armv7vethf-neon} bigendian"
-TUNE_FEATURES_tune-armv7vehfb-neon-vfpv4  = "${TUNE_FEATURES_tune-armv7vehf-neon-vfpv4} bigendian"
-TUNE_FEATURES_tune-armv7vethfb-neon-vfpv4 = "${TUNE_FEATURES_tune-armv7vethf-neon-vfpv4} bigendian"
-PACKAGE_EXTRA_ARCHS_tune-armv7vehfb             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahfb} armv7vehfb-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv7vethfb            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athfb} armv7vehfb-vfp armv7vet2hfb-vfp"
-PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb} armv7vehfb-vfpv3d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb} armv7vehfb-vfpv3d16 armv7vet2hfb-vfpv3d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-vfpv3       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-vfpv3d16} armv7vehfb-vfpv3"
-PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-vfpv3      = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-vfpv3d16} armv7vehfb-vfpv3 armv7vet2hfb-vfpv3"
-PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-vfpv4d16    = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb} armv7vehfb-vfpv4d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-vfpv4d16   = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb} armv7vehfb-vfpv4d16 armv7vet2hfb-vfpv4d16"
-PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb} armv7vehfb-neon"
-PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb} armv7vehfb-neon armv7vet2hfb-neon"
-PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehfb-neon} armv7vehfb-neon-vfpv4"
-PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethfb-neon} armv7vehfb-neon-vfpv4 armv7vet2hfb-neon-vfpv4"
+ARMPKGARCH:tune-armv7vehfb             ?= "armv7ve"
+ARMPKGARCH:tune-armv7vethfb            ?= "armv7ve"
+ARMPKGARCH:tune-armv7vehfb-vfpv3d16    ?= "armv7ve"
+ARMPKGARCH:tune-armv7vethfb-vfpv3d16   ?= "armv7ve"
+ARMPKGARCH:tune-armv7vehfb-vfpv3       ?= "armv7ve"
+ARMPKGARCH:tune-armv7vethfb-vfpv3      ?= "armv7ve"
+ARMPKGARCH:tune-armv7vehfb-vfpv4d16    ?= "armv7ve"
+ARMPKGARCH:tune-armv7vethfb-vfpv4d16   ?= "armv7ve"
+ARMPKGARCH:tune-armv7vehfb-neon        ?= "armv7ve"
+ARMPKGARCH:tune-armv7vethfb-neon       ?= "armv7ve"
+ARMPKGARCH:tune-armv7vehfb-neon-vfpv4  ?= "armv7ve"
+ARMPKGARCH:tune-armv7vethfb-neon-vfpv4 ?= "armv7ve"
+TUNE_FEATURES:tune-armv7vehfb             = "${TUNE_FEATURES:tune-armv7vehf} bigendian"
+TUNE_FEATURES:tune-armv7vethfb            = "${TUNE_FEATURES:tune-armv7vethf} bigendian"
+TUNE_FEATURES:tune-armv7vehfb-vfpv3d16    = "${TUNE_FEATURES:tune-armv7vehf-vfpv3d16} bigendian"
+TUNE_FEATURES:tune-armv7vethfb-vfpv3d16   = "${TUNE_FEATURES:tune-armv7vethf-vfpv3d16} bigendian"
+TUNE_FEATURES:tune-armv7vehfb-vfpv3       = "${TUNE_FEATURES:tune-armv7vehf-vfpv3} bigendian"
+TUNE_FEATURES:tune-armv7vethfb-vfpv3      = "${TUNE_FEATURES:tune-armv7vethf-vfpv3} bigendian"
+TUNE_FEATURES:tune-armv7vehfb-vfpv4d16    = "${TUNE_FEATURES:tune-armv7vehf-vfpv4d16} bigendian"
+TUNE_FEATURES:tune-armv7vethfb-vfpv4d16   = "${TUNE_FEATURES:tune-armv7vethf-vfpv4d16} bigendian"
+TUNE_FEATURES:tune-armv7vehfb-neon        = "${TUNE_FEATURES:tune-armv7vehf-neon} bigendian"
+TUNE_FEATURES:tune-armv7vethfb-neon       = "${TUNE_FEATURES:tune-armv7vethf-neon} bigendian"
+TUNE_FEATURES:tune-armv7vehfb-neon-vfpv4  = "${TUNE_FEATURES:tune-armv7vehf-neon-vfpv4} bigendian"
+TUNE_FEATURES:tune-armv7vethfb-neon-vfpv4 = "${TUNE_FEATURES:tune-armv7vethf-neon-vfpv4} bigendian"
+PACKAGE_EXTRA_ARCHS:tune-armv7vehfb             = "${PACKAGE_EXTRA_ARCHS:tune-armv7ahfb} armv7vehfb-vfp"
+PACKAGE_EXTRA_ARCHS:tune-armv7vethfb            = "${PACKAGE_EXTRA_ARCHS:tune-armv7athfb} armv7vehfb-vfp armv7vet2hfb-vfp"
+PACKAGE_EXTRA_ARCHS:tune-armv7vehfb-vfpv3d16    = "${PACKAGE_EXTRA_ARCHS:tune-armv7vehfb} armv7vehfb-vfpv3d16"
+PACKAGE_EXTRA_ARCHS:tune-armv7vethfb-vfpv3d16   = "${PACKAGE_EXTRA_ARCHS:tune-armv7vethfb} armv7vehfb-vfpv3d16 armv7vet2hfb-vfpv3d16"
+PACKAGE_EXTRA_ARCHS:tune-armv7vehfb-vfpv3       = "${PACKAGE_EXTRA_ARCHS:tune-armv7vehfb-vfpv3d16} armv7vehfb-vfpv3"
+PACKAGE_EXTRA_ARCHS:tune-armv7vethfb-vfpv3      = "${PACKAGE_EXTRA_ARCHS:tune-armv7vethfb-vfpv3d16} armv7vehfb-vfpv3 armv7vet2hfb-vfpv3"
+PACKAGE_EXTRA_ARCHS:tune-armv7vehfb-vfpv4d16    = "${PACKAGE_EXTRA_ARCHS:tune-armv7vehfb} armv7vehfb-vfpv4d16"
+PACKAGE_EXTRA_ARCHS:tune-armv7vethfb-vfpv4d16   = "${PACKAGE_EXTRA_ARCHS:tune-armv7vethfb} armv7vehfb-vfpv4d16 armv7vet2hfb-vfpv4d16"
+PACKAGE_EXTRA_ARCHS:tune-armv7vehfb-neon        = "${PACKAGE_EXTRA_ARCHS:tune-armv7vehfb} armv7vehfb-neon"
+PACKAGE_EXTRA_ARCHS:tune-armv7vethfb-neon       = "${PACKAGE_EXTRA_ARCHS:tune-armv7vethfb} armv7vehfb-neon armv7vet2hfb-neon"
+PACKAGE_EXTRA_ARCHS:tune-armv7vehfb-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS:tune-armv7vehfb-neon} armv7vehfb-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS:tune-armv7vethfb-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS:tune-armv7vethfb-neon} armv7vehfb-neon-vfpv4 armv7vet2hfb-neon-vfpv4"
diff --git a/poky/meta/conf/machine/include/arm/arch-armv8-2a.inc b/poky/meta/conf/machine/include/arm/arch-armv8-2a.inc
index 4129689..c84b1ec 100644
--- a/poky/meta/conf/machine/include/arm/arch-armv8-2a.inc
+++ b/poky/meta/conf/machine/include/arm/arch-armv8-2a.inc
@@ -9,11 +9,11 @@
 
 # Little Endian base configs
 AVAILTUNES += "armv8-2a armv8-2a-crypto"
-ARMPKGARCH_tune-armv8-2a                    ?= "armv8-2a"
-ARMPKGARCH_tune-armv8-2a-crypto             ?= "armv8-2a"
-TUNE_FEATURES_tune-armv8-2a                  = "aarch64 armv8-2a"
-TUNE_FEATURES_tune-armv8-2a-crypto           = "${TUNE_FEATURES_tune-armv8-2a} crypto"
-PACKAGE_EXTRA_ARCHS_tune-armv8-2a            = "${PACKAGE_EXTRA_ARCHS_tune-armv8a} armv8-2a"
-PACKAGE_EXTRA_ARCHS_tune-armv8-2a-crypto     = "${PACKAGE_EXTRA_ARCHS_tune-armv8-2a} armv8-2a-crypto"
-BASE_LIB_tune-armv8-2a                       = "lib64"
-BASE_LIB_tune-armv8-2a-crypto                = "lib64"
+ARMPKGARCH:tune-armv8-2a                    ?= "armv8-2a"
+ARMPKGARCH:tune-armv8-2a-crypto             ?= "armv8-2a"
+TUNE_FEATURES:tune-armv8-2a                  = "aarch64 armv8-2a"
+TUNE_FEATURES:tune-armv8-2a-crypto           = "${TUNE_FEATURES:tune-armv8-2a} crypto"
+PACKAGE_EXTRA_ARCHS:tune-armv8-2a            = "${PACKAGE_EXTRA_ARCHS:tune-armv8a} armv8-2a"
+PACKAGE_EXTRA_ARCHS:tune-armv8-2a-crypto     = "${PACKAGE_EXTRA_ARCHS:tune-armv8-2a} armv8-2a-crypto"
+BASE_LIB:tune-armv8-2a                       = "lib64"
+BASE_LIB:tune-armv8-2a-crypto                = "lib64"
diff --git a/poky/meta/conf/machine/include/arm/arch-armv8a.inc b/poky/meta/conf/machine/include/arm/arch-armv8a.inc
index 6e92bdb..819dffb 100644
--- a/poky/meta/conf/machine/include/arm/arch-armv8a.inc
+++ b/poky/meta/conf/machine/include/arm/arch-armv8a.inc
@@ -12,19 +12,19 @@
 
 # Little Endian base configs
 AVAILTUNES += "armv8a armv8a-crc armv8a-crc-crypto armv8a-crypto"
-ARMPKGARCH_tune-armv8a                    ?= "armv8a"
-ARMPKGARCH_tune-armv8a-crc                ?= "armv8a"
-ARMPKGARCH_tune-armv8a-crypto             ?= "armv8a"
-ARMPKGARCH_tune-armv8a-crc-crypto         ?= "armv8a"
-TUNE_FEATURES_tune-armv8a                  = "aarch64 armv8a"
-TUNE_FEATURES_tune-armv8a-crc              = "${TUNE_FEATURES_tune-armv8a} crc"
-TUNE_FEATURES_tune-armv8a-crypto           = "${TUNE_FEATURES_tune-armv8a} crypto"
-TUNE_FEATURES_tune-armv8a-crc-crypto       = "${TUNE_FEATURES_tune-armv8a-crc} crypto"
-PACKAGE_EXTRA_ARCHS_tune-armv8a            = "aarch64 armv8a"
-PACKAGE_EXTRA_ARCHS_tune-armv8a-crc        = "${PACKAGE_EXTRA_ARCHS_tune-armv8a} armv8a-crc"
-PACKAGE_EXTRA_ARCHS_tune-armv8a-crypto     = "${PACKAGE_EXTRA_ARCHS_tune-armv8a} armv8a-crypto"
-PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc} armv8a-crypto armv8a-crc-crypto"
-BASE_LIB_tune-armv8a                       = "lib64"
-BASE_LIB_tune-armv8a-crc                   = "lib64"
-BASE_LIB_tune-armv8a-crypto                = "lib64"
-BASE_LIB_tune-armv8a-crc-crypto            = "lib64"
+ARMPKGARCH:tune-armv8a                    ?= "armv8a"
+ARMPKGARCH:tune-armv8a-crc                ?= "armv8a"
+ARMPKGARCH:tune-armv8a-crypto             ?= "armv8a"
+ARMPKGARCH:tune-armv8a-crc-crypto         ?= "armv8a"
+TUNE_FEATURES:tune-armv8a                  = "aarch64 armv8a"
+TUNE_FEATURES:tune-armv8a-crc              = "${TUNE_FEATURES:tune-armv8a} crc"
+TUNE_FEATURES:tune-armv8a-crypto           = "${TUNE_FEATURES:tune-armv8a} crypto"
+TUNE_FEATURES:tune-armv8a-crc-crypto       = "${TUNE_FEATURES:tune-armv8a-crc} crypto"
+PACKAGE_EXTRA_ARCHS:tune-armv8a            = "aarch64 armv8a"
+PACKAGE_EXTRA_ARCHS:tune-armv8a-crc        = "${PACKAGE_EXTRA_ARCHS:tune-armv8a} armv8a-crc"
+PACKAGE_EXTRA_ARCHS:tune-armv8a-crypto     = "${PACKAGE_EXTRA_ARCHS:tune-armv8a} armv8a-crypto"
+PACKAGE_EXTRA_ARCHS:tune-armv8a-crc-crypto = "${PACKAGE_EXTRA_ARCHS:tune-armv8a-crc} armv8a-crypto armv8a-crc-crypto"
+BASE_LIB:tune-armv8a                       = "lib64"
+BASE_LIB:tune-armv8a-crc                   = "lib64"
+BASE_LIB:tune-armv8a-crypto                = "lib64"
+BASE_LIB:tune-armv8a-crc-crypto            = "lib64"
diff --git a/poky/meta/conf/machine/include/arm/armv8-2a/tune-cortexa65.inc b/poky/meta/conf/machine/include/arm/armv8-2a/tune-cortexa65.inc
index 427e589..c7e8688 100644
--- a/poky/meta/conf/machine/include/arm/armv8-2a/tune-cortexa65.inc
+++ b/poky/meta/conf/machine/include/arm/armv8-2a/tune-cortexa65.inc
@@ -10,7 +10,7 @@
 
 # Little Endian base configs
 AVAILTUNES                                         += "cortexa65"
-ARMPKGARCH_tune-cortexa65                           = "cortexa65"
-TUNE_FEATURES_tune-cortexa65                        = "${TUNE_FEATURES_tune-armv8-2a-crypto} cortexa65"
-PACKAGE_EXTRA_ARCHS_tune-cortexa65                  = "${PACKAGE_EXTRA_ARCHS_tune-armv8-2a-crypto} cortexa65"
-BASE_LIB_tune-cortexa65                             = "lib64"
+ARMPKGARCH:tune-cortexa65                           = "cortexa65"
+TUNE_FEATURES:tune-cortexa65                        = "${TUNE_FEATURES:tune-armv8-2a-crypto} cortexa65"
+PACKAGE_EXTRA_ARCHS:tune-cortexa65                  = "${PACKAGE_EXTRA_ARCHS:tune-armv8-2a-crypto} cortexa65"
+BASE_LIB:tune-cortexa65                             = "lib64"
diff --git a/poky/meta/conf/machine/include/arm/armv8-2a/tune-cortexa65ae.inc b/poky/meta/conf/machine/include/arm/armv8-2a/tune-cortexa65ae.inc
index aea47d0..dad6d1b 100644
--- a/poky/meta/conf/machine/include/arm/armv8-2a/tune-cortexa65ae.inc
+++ b/poky/meta/conf/machine/include/arm/armv8-2a/tune-cortexa65ae.inc
@@ -10,7 +10,7 @@
 
 # Little Endian base configs
 AVAILTUNES                                         += "cortexa65ae"
-ARMPKGARCH_tune-cortexa65ae                         = "cortexa65ae"
-TUNE_FEATURES_tune-cortexa65ae                      = "${TUNE_FEATURES_tune-armv8-2a-crypto} cortexa65ae"
-PACKAGE_EXTRA_ARCHS_tune-cortexa65ae                = "${PACKAGE_EXTRA_ARCHS_tune-armv8-2a-crypto} cortexa65ae"
-BASE_LIB_tune-cortexa65ae                           = "lib64"
+ARMPKGARCH:tune-cortexa65ae                         = "cortexa65ae"
+TUNE_FEATURES:tune-cortexa65ae                      = "${TUNE_FEATURES:tune-armv8-2a-crypto} cortexa65ae"
+PACKAGE_EXTRA_ARCHS:tune-cortexa65ae                = "${PACKAGE_EXTRA_ARCHS:tune-armv8-2a-crypto} cortexa65ae"
+BASE_LIB:tune-cortexa65ae                           = "lib64"
diff --git a/poky/meta/conf/machine/include/arm/armv8-2a/tune-cortexa75-cortexa55.inc b/poky/meta/conf/machine/include/arm/armv8-2a/tune-cortexa75-cortexa55.inc
index 9c45fe9..3a47e82 100644
--- a/poky/meta/conf/machine/include/arm/armv8-2a/tune-cortexa75-cortexa55.inc
+++ b/poky/meta/conf/machine/include/arm/armv8-2a/tune-cortexa75-cortexa55.inc
@@ -10,11 +10,11 @@
 require conf/machine/include/arm/arch-armv8-2a.inc
 
 AVAILTUNES                                         += "cortexa75-cortexa55 cortexa75-cortexa55-crypto"
-ARMPKGARCH_tune-cortexa75-cortexa55                 = "cortexa75-cortexa55"
-ARMPKGARCH_tune-cortexa75-cortexa55-crypto          = "cortexa75-cortexa55-crypto"
-TUNE_FEATURES_tune-cortexa75-cortexa55              = "${TUNE_FEATURES_tune-armv8-2a} cortexa75-cortexa55"
-TUNE_FEATURES_tune-cortexa75-cortexa55-crypto       = "${TUNE_FEATURES_tune-cortexa75-cortexa55} crypto"
-PACKAGE_EXTRA_ARCHS_tune-cortexa75-cortexa55        = "${PACKAGE_EXTRA_ARCHS_tune-armv8-2a} cortexa75-cortexa55"
-PACKAGE_EXTRA_ARCHS_tune-cortexa75-cortexa55-crypto = "${PACKAGE_EXTRA_ARCHS_tune-armv8-2a-crypto} cortexa75-cortexa55 cortexa75-cortexa55-crypto"
-BASE_LIB_tune-cortexa75-cortexa55                   = "lib64"
-BASE_LIB_tune-cortexa75-cortexa55-crypto            = "lib64"
+ARMPKGARCH:tune-cortexa75-cortexa55                 = "cortexa75-cortexa55"
+ARMPKGARCH:tune-cortexa75-cortexa55-crypto          = "cortexa75-cortexa55-crypto"
+TUNE_FEATURES:tune-cortexa75-cortexa55              = "${TUNE_FEATURES:tune-armv8-2a} cortexa75-cortexa55"
+TUNE_FEATURES:tune-cortexa75-cortexa55-crypto       = "${TUNE_FEATURES:tune-cortexa75-cortexa55} crypto"
+PACKAGE_EXTRA_ARCHS:tune-cortexa75-cortexa55        = "${PACKAGE_EXTRA_ARCHS:tune-armv8-2a} cortexa75-cortexa55"
+PACKAGE_EXTRA_ARCHS:tune-cortexa75-cortexa55-crypto = "${PACKAGE_EXTRA_ARCHS:tune-armv8-2a-crypto} cortexa75-cortexa55 cortexa75-cortexa55-crypto"
+BASE_LIB:tune-cortexa75-cortexa55                   = "lib64"
+BASE_LIB:tune-cortexa75-cortexa55-crypto            = "lib64"
diff --git a/poky/meta/conf/machine/include/arm/armv8-2a/tune-cortexa75.inc b/poky/meta/conf/machine/include/arm/armv8-2a/tune-cortexa75.inc
index d019450..2d9a115 100644
--- a/poky/meta/conf/machine/include/arm/armv8-2a/tune-cortexa75.inc
+++ b/poky/meta/conf/machine/include/arm/armv8-2a/tune-cortexa75.inc
@@ -10,7 +10,7 @@
 
 # Little Endian base configs
 AVAILTUNES                                         += "cortexa75"
-ARMPKGARCH_tune-cortexa75                           = "cortexa75"
-TUNE_FEATURES_tune-cortexa75                        = "${TUNE_FEATURES_tune-armv8-2a-crypto} cortexa75"
-PACKAGE_EXTRA_ARCHS_tune-cortexa75                  = "${PACKAGE_EXTRA_ARCHS_tune-armv8-2a-crypto} cortexa75"
-BASE_LIB_tune-cortexa75                             = "lib64"
+ARMPKGARCH:tune-cortexa75                           = "cortexa75"
+TUNE_FEATURES:tune-cortexa75                        = "${TUNE_FEATURES:tune-armv8-2a-crypto} cortexa75"
+PACKAGE_EXTRA_ARCHS:tune-cortexa75                  = "${PACKAGE_EXTRA_ARCHS:tune-armv8-2a-crypto} cortexa75"
+BASE_LIB:tune-cortexa75                             = "lib64"
diff --git a/poky/meta/conf/machine/include/arm/armv8-2a/tune-cortexa76-cortexa55.inc b/poky/meta/conf/machine/include/arm/armv8-2a/tune-cortexa76-cortexa55.inc
index cae8ffe..f4c99ad 100644
--- a/poky/meta/conf/machine/include/arm/armv8-2a/tune-cortexa76-cortexa55.inc
+++ b/poky/meta/conf/machine/include/arm/armv8-2a/tune-cortexa76-cortexa55.inc
@@ -10,11 +10,11 @@
 require conf/machine/include/arm/arch-armv8-2a.inc
 
 AVAILTUNES                                         += "cortexa76-cortexa55 cortexa76-cortexa55-crypto"
-ARMPKGARCH_tune-cortexa76-cortexa55                 = "cortexa76-cortexa55"
-ARMPKGARCH_tune-cortexa76-cortexa55-crypto          = "cortexa76-cortexa55-crypto"
-TUNE_FEATURES_tune-cortexa76-cortexa55              = "${TUNE_FEATURES_tune-armv8-2a} cortexa76-cortexa55"
-TUNE_FEATURES_tune-cortexa76-cortexa55-crypto       = "${TUNE_FEATURES_tune-cortexa76-cortexa55} crypto"
-PACKAGE_EXTRA_ARCHS_tune-cortexa76-cortexa55        = "${PACKAGE_EXTRA_ARCHS_tune-armv8-2a} cortexa76-cortexa55"
-PACKAGE_EXTRA_ARCHS_tune-cortexa76-cortexa55-crypto = "${PACKAGE_EXTRA_ARCHS_tune-armv8-2a-crypto} cortexa76-cortexa55 cortexa76-cortexa55-crypto"
-BASE_LIB_tune-cortexa76-cortexa55                   = "lib64"
-BASE_LIB_tune-cortexa76-cortexa55-crypto            = "lib64"
+ARMPKGARCH:tune-cortexa76-cortexa55                 = "cortexa76-cortexa55"
+ARMPKGARCH:tune-cortexa76-cortexa55-crypto          = "cortexa76-cortexa55-crypto"
+TUNE_FEATURES:tune-cortexa76-cortexa55              = "${TUNE_FEATURES:tune-armv8-2a} cortexa76-cortexa55"
+TUNE_FEATURES:tune-cortexa76-cortexa55-crypto       = "${TUNE_FEATURES:tune-cortexa76-cortexa55} crypto"
+PACKAGE_EXTRA_ARCHS:tune-cortexa76-cortexa55        = "${PACKAGE_EXTRA_ARCHS:tune-armv8-2a} cortexa76-cortexa55"
+PACKAGE_EXTRA_ARCHS:tune-cortexa76-cortexa55-crypto = "${PACKAGE_EXTRA_ARCHS:tune-armv8-2a-crypto} cortexa76-cortexa55 cortexa76-cortexa55-crypto"
+BASE_LIB:tune-cortexa76-cortexa55                   = "lib64"
+BASE_LIB:tune-cortexa76-cortexa55-crypto            = "lib64"
diff --git a/poky/meta/conf/machine/include/arm/armv8-2a/tune-cortexa76.inc b/poky/meta/conf/machine/include/arm/armv8-2a/tune-cortexa76.inc
index ae3661a..0dfdb8c 100644
--- a/poky/meta/conf/machine/include/arm/armv8-2a/tune-cortexa76.inc
+++ b/poky/meta/conf/machine/include/arm/armv8-2a/tune-cortexa76.inc
@@ -10,7 +10,7 @@
 
 # Little Endian base configs
 AVAILTUNES                                         += "cortexa76"
-ARMPKGARCH_tune-cortexa76                           = "cortexa76"
-TUNE_FEATURES_tune-cortexa76                        = "${TUNE_FEATURES_tune-armv8-2a-crypto} cortexa76"
-PACKAGE_EXTRA_ARCHS_tune-cortexa76                  = "${PACKAGE_EXTRA_ARCHS_tune-armv8-2a-crypto} cortexa76"
-BASE_LIB_tune-cortexa76                             = "lib64"
+ARMPKGARCH:tune-cortexa76                           = "cortexa76"
+TUNE_FEATURES:tune-cortexa76                        = "${TUNE_FEATURES:tune-armv8-2a-crypto} cortexa76"
+PACKAGE_EXTRA_ARCHS:tune-cortexa76                  = "${PACKAGE_EXTRA_ARCHS:tune-armv8-2a-crypto} cortexa76"
+BASE_LIB:tune-cortexa76                             = "lib64"
diff --git a/poky/meta/conf/machine/include/arm/armv8-2a/tune-cortexa76ae.inc b/poky/meta/conf/machine/include/arm/armv8-2a/tune-cortexa76ae.inc
index 8d5a0ef..b2863dc 100644
--- a/poky/meta/conf/machine/include/arm/armv8-2a/tune-cortexa76ae.inc
+++ b/poky/meta/conf/machine/include/arm/armv8-2a/tune-cortexa76ae.inc
@@ -10,7 +10,7 @@
 
 # Little Endian base configs
 AVAILTUNES                                         += "cortexa76ae"
-ARMPKGARCH_tune-cortexa76ae                         = "cortexa76ae"
-TUNE_FEATURES_tune-cortexa76ae                      = "${TUNE_FEATURES_tune-armv8-2a-crypto} cortexa76ae"
-PACKAGE_EXTRA_ARCHS_tune-cortexa76ae                = "${PACKAGE_EXTRA_ARCHS_tune-armv8-2a-crypto} cortexa76ae"
-BASE_LIB_tune-cortexa76ae                           = "lib64"
+ARMPKGARCH:tune-cortexa76ae                         = "cortexa76ae"
+TUNE_FEATURES:tune-cortexa76ae                      = "${TUNE_FEATURES:tune-armv8-2a-crypto} cortexa76ae"
+PACKAGE_EXTRA_ARCHS:tune-cortexa76ae                = "${PACKAGE_EXTRA_ARCHS:tune-armv8-2a-crypto} cortexa76ae"
+BASE_LIB:tune-cortexa76ae                           = "lib64"
diff --git a/poky/meta/conf/machine/include/arm/armv8-2a/tune-cortexa77.inc b/poky/meta/conf/machine/include/arm/armv8-2a/tune-cortexa77.inc
index 048fa31..654b1f6 100644
--- a/poky/meta/conf/machine/include/arm/armv8-2a/tune-cortexa77.inc
+++ b/poky/meta/conf/machine/include/arm/armv8-2a/tune-cortexa77.inc
@@ -10,7 +10,7 @@
 
 # Little Endian base configs
 AVAILTUNES                                         += "cortexa77"
-ARMPKGARCH_tune-cortexa77                           = "cortexa77"
-TUNE_FEATURES_tune-cortexa77                        = "${TUNE_FEATURES_tune-armv8-2a-crypto} cortexa77"
-PACKAGE_EXTRA_ARCHS_tune-cortexa77                  = "${PACKAGE_EXTRA_ARCHS_tune-armv8-2a-crypto} cortexa77"
-BASE_LIB_tune-cortexa77                             = "lib64"
+ARMPKGARCH:tune-cortexa77                           = "cortexa77"
+TUNE_FEATURES:tune-cortexa77                        = "${TUNE_FEATURES:tune-armv8-2a-crypto} cortexa77"
+PACKAGE_EXTRA_ARCHS:tune-cortexa77                  = "${PACKAGE_EXTRA_ARCHS:tune-armv8-2a-crypto} cortexa77"
+BASE_LIB:tune-cortexa77                             = "lib64"
diff --git a/poky/meta/conf/machine/include/arm/armv8-2a/tune-neoversee1.inc b/poky/meta/conf/machine/include/arm/armv8-2a/tune-neoversee1.inc
index b82c9ac..15ed595 100644
--- a/poky/meta/conf/machine/include/arm/armv8-2a/tune-neoversee1.inc
+++ b/poky/meta/conf/machine/include/arm/armv8-2a/tune-neoversee1.inc
@@ -10,7 +10,7 @@
 
 # Little Endian base configs
 AVAILTUNES                                         += "neoversee1"
-ARMPKGARCH_tune-neoversee1                          = "neoversee1"
-TUNE_FEATURES_tune-neoversee1                       = "${TUNE_FEATURES_tune-armv8-2a-crypto} neoversee1"
-PACKAGE_EXTRA_ARCHS_tune-neoversee1                 = "${PACKAGE_EXTRA_ARCHS_tune-armv8-2a-crypto} neoversee1"
-BASE_LIB_tune-neoversee1                            = "lib64"
+ARMPKGARCH:tune-neoversee1                          = "neoversee1"
+TUNE_FEATURES:tune-neoversee1                       = "${TUNE_FEATURES:tune-armv8-2a-crypto} neoversee1"
+PACKAGE_EXTRA_ARCHS:tune-neoversee1                 = "${PACKAGE_EXTRA_ARCHS:tune-armv8-2a-crypto} neoversee1"
+BASE_LIB:tune-neoversee1                            = "lib64"
diff --git a/poky/meta/conf/machine/include/arm/armv8-2a/tune-neoversen1.inc b/poky/meta/conf/machine/include/arm/armv8-2a/tune-neoversen1.inc
index 6c6e889..9d181ef 100644
--- a/poky/meta/conf/machine/include/arm/armv8-2a/tune-neoversen1.inc
+++ b/poky/meta/conf/machine/include/arm/armv8-2a/tune-neoversen1.inc
@@ -11,7 +11,7 @@
 
 # Little Endian base configs
 AVAILTUNES                                         += "neoversen1"
-ARMPKGARCH_tune-neoversen1                          = "neoversen1"
-TUNE_FEATURES_tune-neoversen1                       = "${TUNE_FEATURES_tune-armv8-2a-crypto} neoversen1"
-PACKAGE_EXTRA_ARCHS_tune-neoversen1                 = "${PACKAGE_EXTRA_ARCHS_tune-armv8-2a-crypto} neoversen1"
-BASE_LIB_tune-neoversen1                            = "lib64"
+ARMPKGARCH:tune-neoversen1                          = "neoversen1"
+TUNE_FEATURES:tune-neoversen1                       = "${TUNE_FEATURES:tune-armv8-2a-crypto} neoversen1"
+PACKAGE_EXTRA_ARCHS:tune-neoversen1                 = "${PACKAGE_EXTRA_ARCHS:tune-armv8-2a-crypto} neoversen1"
+BASE_LIB:tune-neoversen1                            = "lib64"
diff --git a/poky/meta/conf/machine/include/arm/armv8-2a/tune-octeontx2.inc b/poky/meta/conf/machine/include/arm/armv8-2a/tune-octeontx2.inc
index f873b95..2cac70e 100644
--- a/poky/meta/conf/machine/include/arm/armv8-2a/tune-octeontx2.inc
+++ b/poky/meta/conf/machine/include/arm/armv8-2a/tune-octeontx2.inc
@@ -7,7 +7,7 @@
 
 # Little Endian base configs
 AVAILTUNES += "octeontx2"
-ARMPKGARCH_tune-octeontx2             = "octeontx2"
-TUNE_FEATURES_tune-octeontx2          = "${TUNE_FEATURES_tune-armv8-2a-crypto} octeontx2"
-PACKAGE_EXTRA_ARCHS_tune-octeontx2    = "${PACKAGE_EXTRA_ARCHS_tune-armv8-2a-crypto} octeontx2"
-BASE_LIB_tune-octeontx2               = "lib64"
+ARMPKGARCH:tune-octeontx2             = "octeontx2"
+TUNE_FEATURES:tune-octeontx2          = "${TUNE_FEATURES:tune-armv8-2a-crypto} octeontx2"
+PACKAGE_EXTRA_ARCHS:tune-octeontx2    = "${PACKAGE_EXTRA_ARCHS:tune-armv8-2a-crypto} octeontx2"
+BASE_LIB:tune-octeontx2               = "lib64"
diff --git a/poky/meta/conf/machine/include/arm/armv8a/tune-cortexa34.inc b/poky/meta/conf/machine/include/arm/armv8a/tune-cortexa34.inc
index f7d4c87..55dd845 100644
--- a/poky/meta/conf/machine/include/arm/armv8a/tune-cortexa34.inc
+++ b/poky/meta/conf/machine/include/arm/armv8a/tune-cortexa34.inc
@@ -10,11 +10,11 @@
 
 # Little Endian base configs
 AVAILTUNES                                += "cortexa34 cortexa34-crypto"
-ARMPKGARCH_tune-cortexa34                  = "cortexa34"
-ARMPKGARCH_tune-cortexa34-crypto           = "cortexa34"
-TUNE_FEATURES_tune-cortexa34               = "${TUNE_FEATURES_tune-armv8a-crc} cortexa34"
-TUNE_FEATURES_tune-cortexa34-crypto        = "${TUNE_FEATURES_tune-cortexa34} crypto"
-PACKAGE_EXTRA_ARCHS_tune-cortexa34         = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc} cortexa34"
-PACKAGE_EXTRA_ARCHS_tune-cortexa34-crypto  = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa34 cortexa34-crypto"
-BASE_LIB_tune-cortexa34                    = "lib64"
-BASE_LIB_tune-cortexa34-crypto             = "lib64"
+ARMPKGARCH:tune-cortexa34                  = "cortexa34"
+ARMPKGARCH:tune-cortexa34-crypto           = "cortexa34"
+TUNE_FEATURES:tune-cortexa34               = "${TUNE_FEATURES:tune-armv8a-crc} cortexa34"
+TUNE_FEATURES:tune-cortexa34-crypto        = "${TUNE_FEATURES:tune-cortexa34} crypto"
+PACKAGE_EXTRA_ARCHS:tune-cortexa34         = "${PACKAGE_EXTRA_ARCHS:tune-armv8a-crc} cortexa34"
+PACKAGE_EXTRA_ARCHS:tune-cortexa34-crypto  = "${PACKAGE_EXTRA_ARCHS:tune-armv8a-crc-crypto} cortexa34 cortexa34-crypto"
+BASE_LIB:tune-cortexa34                    = "lib64"
+BASE_LIB:tune-cortexa34-crypto             = "lib64"
diff --git a/poky/meta/conf/machine/include/arm/armv8a/tune-cortexa73-cortexa35.inc b/poky/meta/conf/machine/include/arm/armv8a/tune-cortexa73-cortexa35.inc
index 927296c..869670b 100644
--- a/poky/meta/conf/machine/include/arm/armv8a/tune-cortexa73-cortexa35.inc
+++ b/poky/meta/conf/machine/include/arm/armv8a/tune-cortexa73-cortexa35.inc
@@ -11,11 +11,11 @@
 
 # cortexa73.cortexa35 implies crc support
 AVAILTUNES                                          += "cortexa73-cortexa35 cortexa73-cortexa35-crypto"
-ARMPKGARCH_tune-cortexa73-cortexa35                  = "cortexa73-cortexa35"
-ARMPKGARCH_tune-cortexa73-cortexa35-crypto           = "cortexa73-cortexa35-crypto"
-TUNE_FEATURES_tune-cortexa73-cortexa35               = "${TUNE_FEATURES_tune-armv8a-crc} cortexa73-cortexa35"
-TUNE_FEATURES_tune-cortexa73-cortexa35-crypto        = "${TUNE_FEATURES_tune-cortexa73-cortexa35} crypto"
-PACKAGE_EXTRA_ARCHS_tune-cortexa73-cortexa35         = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc} cortexa73-cortexa35"
-PACKAGE_EXTRA_ARCHS_tune-cortexa73-cortexa35-crypto  = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa73-cortexa35 cortexa73-cortexa35-crypto"
-BASE_LIB_tune-cortexa73-cortexa35                    = "lib64"
-BASE_LIB_tune-cortexa73-cortexa35-crypto             = "lib64"
+ARMPKGARCH:tune-cortexa73-cortexa35                  = "cortexa73-cortexa35"
+ARMPKGARCH:tune-cortexa73-cortexa35-crypto           = "cortexa73-cortexa35-crypto"
+TUNE_FEATURES:tune-cortexa73-cortexa35               = "${TUNE_FEATURES:tune-armv8a-crc} cortexa73-cortexa35"
+TUNE_FEATURES:tune-cortexa73-cortexa35-crypto        = "${TUNE_FEATURES:tune-cortexa73-cortexa35} crypto"
+PACKAGE_EXTRA_ARCHS:tune-cortexa73-cortexa35         = "${PACKAGE_EXTRA_ARCHS:tune-armv8a-crc} cortexa73-cortexa35"
+PACKAGE_EXTRA_ARCHS:tune-cortexa73-cortexa35-crypto  = "${PACKAGE_EXTRA_ARCHS:tune-armv8a-crc-crypto} cortexa73-cortexa35 cortexa73-cortexa35-crypto"
+BASE_LIB:tune-cortexa73-cortexa35                    = "lib64"
+BASE_LIB:tune-cortexa73-cortexa35-crypto             = "lib64"
diff --git a/poky/meta/conf/machine/include/arm/armv8a/tune-cortexa73.inc b/poky/meta/conf/machine/include/arm/armv8a/tune-cortexa73.inc
index ed2deb9..fc91daf 100644
--- a/poky/meta/conf/machine/include/arm/armv8a/tune-cortexa73.inc
+++ b/poky/meta/conf/machine/include/arm/armv8a/tune-cortexa73.inc
@@ -10,7 +10,7 @@
 
 # Little Endian base configs
 AVAILTUNES                                += "cortexa73"
-ARMPKGARCH_tune-cortexa73                  = "cortexa73"
-TUNE_FEATURES_tune-cortexa73               = "${TUNE_FEATURES_tune-armv8a-crc-crypto} cortexa73"
-PACKAGE_EXTRA_ARCHS_tune-cortexa73         = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa73"
-BASE_LIB_tune-cortexa73                    = "lib64"
+ARMPKGARCH:tune-cortexa73                  = "cortexa73"
+TUNE_FEATURES:tune-cortexa73               = "${TUNE_FEATURES:tune-armv8a-crc-crypto} cortexa73"
+PACKAGE_EXTRA_ARCHS:tune-cortexa73         = "${PACKAGE_EXTRA_ARCHS:tune-armv8a-crc-crypto} cortexa73"
+BASE_LIB:tune-cortexa73                    = "lib64"
diff --git a/poky/meta/conf/machine/include/arm/feature-arm-thumb.inc b/poky/meta/conf/machine/include/arm/feature-arm-thumb.inc
index bae169d..1c9a118 100644
--- a/poky/meta/conf/machine/include/arm/feature-arm-thumb.inc
+++ b/poky/meta/conf/machine/include/arm/feature-arm-thumb.inc
@@ -22,9 +22,9 @@
 TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'thumb', ' -m${ARM_M_OPT}', '', d)}"
 
 ARM_THUMB_SUFFIX = "t2"
-ARM_THUMB_SUFFIX_armv4 = "t"
-ARM_THUMB_SUFFIX_armv5 = "t"
-ARM_THUMB_SUFFIX_armv6 = "t"
+ARM_THUMB_SUFFIX:armv4 = "t"
+ARM_THUMB_SUFFIX:armv5 = "t"
+ARM_THUMB_SUFFIX:armv6 = "t"
 
 # Add suffix from ARM_THUMB_SUFFIX only if after all this we still set ARM_M_OPT to thumb
 ARMPKGSFX_THUMB .= "${@bb.utils.contains('TUNE_FEATURES', 'thumb', '${ARM_THUMB_SUFFIX}', '', d) if d.getVar('ARM_M_OPT') == 'thumb' else ''}"
diff --git a/poky/meta/conf/machine/include/m68k/arch-m68k.inc b/poky/meta/conf/machine/include/m68k/arch-m68k.inc
index 3ff8a3a..3f0f2ff 100644
--- a/poky/meta/conf/machine/include/m68k/arch-m68k.inc
+++ b/poky/meta/conf/machine/include/m68k/arch-m68k.inc
@@ -5,4 +5,4 @@
 # Architecture name
 TUNE_ARCH = "m68k"
 
-TUNE_PKGARCH = "${TUNE_PKGARCH_tune-${DEFAULTTUNE}}"
+TUNE_PKGARCH = "${TUNE_PKGARCH:tune-${DEFAULTTUNE}}"
diff --git a/poky/meta/conf/machine/include/mips/README b/poky/meta/conf/machine/include/mips/README
index f36e87b..77448c5 100644
--- a/poky/meta/conf/machine/include/mips/README
+++ b/poky/meta/conf/machine/include/mips/README
@@ -23,7 +23,7 @@
 
 TUNE_PKGARCH is defined as:
 
-${MIPSPKGSFX_VARIANT_tune-${DEFAULTTUNE}}${MIPSPKGSFX_FPU}${MIPSPKGSFX_ABI}
+${MIPSPKGSFX_VARIANT:tune-${DEFAULTTUNE}}${MIPSPKGSFX_FPU}${MIPSPKGSFX_ABI}
 
 The following is a list of MIPS specific variables:
 
@@ -35,7 +35,7 @@
 MIPSPKGSFX_ENDIAN2 - For bigendian hardware this is "eb", otherwise it's
 defined as "el".
 
-MIPSPKGSFX_VARIANT_tune-<tune> - In the default tunings it is set to the
+MIPSPKGSFX_VARIANT:tune-<tune> - In the default tunings it is set to the
 same value as TUNE_ARCH.  In custom, optimized tunings, the value should
 be modified to more precisely describe the tuning.
 
diff --git a/poky/meta/conf/machine/include/mips/arch-mips.inc b/poky/meta/conf/machine/include/mips/arch-mips.inc
index cb1a4c4..e48ddd2 100644
--- a/poky/meta/conf/machine/include/mips/arch-mips.inc
+++ b/poky/meta/conf/machine/include/mips/arch-mips.inc
@@ -21,7 +21,7 @@
 TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'n32', ' -mabi=n32', '', d)}"
 
 # user mode qemu doesn't support mips64 n32: "Invalid ELF image for this architecture"
-MACHINE_FEATURES_BACKFILL_CONSIDERED_append = " ${@bb.utils.contains('TUNE_FEATURES', 'n32', 'qemu-usermode', '', d)}"
+MACHINE_FEATURES_BACKFILL_CONSIDERED:append = " ${@bb.utils.contains('TUNE_FEATURES', 'n32', 'qemu-usermode', '', d)}"
 
 TUNEVALID[n64] = "MIPS64 n64 ABI"
 TUNECONFLICTS[n64] = "o32 n32"
@@ -49,7 +49,7 @@
 MIPSPKGSFX_32R6 = "${@bb.utils.contains('TUNE_FEATURES', 'mipsisa32r6', 'isa32', '', d)}"
 
 TUNE_ARCH = "mips${MIPSPKGSFX_32R6}${MIPSPKGSFX_64R6}${MIPSPKGSFX_BYTE}${MIPSPKGSFX_R6}${MIPSPKGSFX_ENDIAN}"
-TUNE_PKGARCH = "${MIPSPKGSFX_VARIANT_tune-${DEFAULTTUNE}}${MIPSPKGSFX_FPU}${MIPSPKGSFX_ABI}"
+TUNE_PKGARCH = "${MIPSPKGSFX_VARIANT:tune-${DEFAULTTUNE}}${MIPSPKGSFX_FPU}${MIPSPKGSFX_ABI}"
 
 # Various Global Machine Overrides
 MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES', 'n64', 'mipsarchn64${MIPSPKGSFX_ENDIAN2}:', '', d)}"
@@ -64,88 +64,88 @@
 
 # Base tunes
 AVAILTUNES += "mips mips64-n32 mips64 mipsel mips64el-n32 mips64el mips-nf mips64-nf-n32 mips64-nf mipsel-nf mips64el-nf-n32 mips64el-nf"
-TUNE_FEATURES_tune-mips = "o32 bigendian fpu-hard"
-BASE_LIB_tune-mips = "lib"
-MIPSPKGSFX_VARIANT_tune-mips = "${TUNE_ARCH}"
-PACKAGE_EXTRA_ARCHS_tune-mips = "mips"
+TUNE_FEATURES:tune-mips = "o32 bigendian fpu-hard"
+BASE_LIB:tune-mips = "lib"
+MIPSPKGSFX_VARIANT:tune-mips = "${TUNE_ARCH}"
+PACKAGE_EXTRA_ARCHS:tune-mips = "mips"
 
-TUNE_FEATURES_tune-mips64-n32 = "n32 bigendian fpu-hard"
-BASE_LIB_tune-mips64-n32 = "lib32"
-MIPSPKGSFX_VARIANT_tune-mips64-n32 = "${TUNE_ARCH}"
-PACKAGE_EXTRA_ARCHS_tune-mips64-n32 = "mips64-n32"
+TUNE_FEATURES:tune-mips64-n32 = "n32 bigendian fpu-hard"
+BASE_LIB:tune-mips64-n32 = "lib32"
+MIPSPKGSFX_VARIANT:tune-mips64-n32 = "${TUNE_ARCH}"
+PACKAGE_EXTRA_ARCHS:tune-mips64-n32 = "mips64-n32"
 
-TUNE_FEATURES_tune-mips64 = "n64 bigendian fpu-hard"
-BASE_LIB_tune-mips64 = "lib64"
-MIPSPKGSFX_VARIANT_tune-mips64 = "${TUNE_ARCH}"
-PACKAGE_EXTRA_ARCHS_tune-mips64 = "mips64"
+TUNE_FEATURES:tune-mips64 = "n64 bigendian fpu-hard"
+BASE_LIB:tune-mips64 = "lib64"
+MIPSPKGSFX_VARIANT:tune-mips64 = "${TUNE_ARCH}"
+PACKAGE_EXTRA_ARCHS:tune-mips64 = "mips64"
 
-TUNE_FEATURES_tune-mipsel = "o32 fpu-hard"
-BASE_LIB_tune-mipsel = "lib"
-MIPSPKGSFX_VARIANT_tune-mipsel = "${TUNE_ARCH}"
-PACKAGE_EXTRA_ARCHS_tune-mipsel = "mipsel"
+TUNE_FEATURES:tune-mipsel = "o32 fpu-hard"
+BASE_LIB:tune-mipsel = "lib"
+MIPSPKGSFX_VARIANT:tune-mipsel = "${TUNE_ARCH}"
+PACKAGE_EXTRA_ARCHS:tune-mipsel = "mipsel"
 
-TUNE_FEATURES_tune-mips64el-n32 = "n32 fpu-hard"
-BASE_LIB_tune-mips64el-n32 = "lib32"
-MIPSPKGSFX_VARIANT_tune-mips64el-n32 = "${TUNE_ARCH}"
-PACKAGE_EXTRA_ARCHS_tune-mips64el-n32 = "mips64el-n32"
+TUNE_FEATURES:tune-mips64el-n32 = "n32 fpu-hard"
+BASE_LIB:tune-mips64el-n32 = "lib32"
+MIPSPKGSFX_VARIANT:tune-mips64el-n32 = "${TUNE_ARCH}"
+PACKAGE_EXTRA_ARCHS:tune-mips64el-n32 = "mips64el-n32"
 
-TUNE_FEATURES_tune-mips64el = "n64 fpu-hard"
-BASE_LIB_tune-mips64el = "lib64"
-MIPSPKGSFX_VARIANT_tune-mips64el = "${TUNE_ARCH}"
-PACKAGE_EXTRA_ARCHS_tune-mips64el = "mips64el"
+TUNE_FEATURES:tune-mips64el = "n64 fpu-hard"
+BASE_LIB:tune-mips64el = "lib64"
+MIPSPKGSFX_VARIANT:tune-mips64el = "${TUNE_ARCH}"
+PACKAGE_EXTRA_ARCHS:tune-mips64el = "mips64el"
 
-TUNE_FEATURES_tune-mips-nf = "o32 bigendian"
-BASE_LIB_tune-mips-nf = "lib"
-MIPSPKGSFX_VARIANT_tune-mips-nf = "${TUNE_ARCH}"
-PACKAGE_EXTRA_ARCHS_tune-mips-nf = "mips-nf"
+TUNE_FEATURES:tune-mips-nf = "o32 bigendian"
+BASE_LIB:tune-mips-nf = "lib"
+MIPSPKGSFX_VARIANT:tune-mips-nf = "${TUNE_ARCH}"
+PACKAGE_EXTRA_ARCHS:tune-mips-nf = "mips-nf"
 
-TUNE_FEATURES_tune-mips64-nf-n32 = "n32 bigendian"
-BASE_LIB_tune-mips64-nf-n32 = "lib32"
-MIPSPKGSFX_VARIANT_tune-mips64-nf-n32 = "${TUNE_ARCH}"
-PACKAGE_EXTRA_ARCHS_tune-mips64-nf-n32 = "mips64-nf-n32"
+TUNE_FEATURES:tune-mips64-nf-n32 = "n32 bigendian"
+BASE_LIB:tune-mips64-nf-n32 = "lib32"
+MIPSPKGSFX_VARIANT:tune-mips64-nf-n32 = "${TUNE_ARCH}"
+PACKAGE_EXTRA_ARCHS:tune-mips64-nf-n32 = "mips64-nf-n32"
 
-TUNE_FEATURES_tune-mips64-nf = "n64 bigendian"
-BASE_LIB_tune-mips64-nf = "lib64"
-MIPSPKGSFX_VARIANT_tune-mips64-nf = "${TUNE_ARCH}"
-PACKAGE_EXTRA_ARCHS_tune-mips64-nf = "mips64-nf"
+TUNE_FEATURES:tune-mips64-nf = "n64 bigendian"
+BASE_LIB:tune-mips64-nf = "lib64"
+MIPSPKGSFX_VARIANT:tune-mips64-nf = "${TUNE_ARCH}"
+PACKAGE_EXTRA_ARCHS:tune-mips64-nf = "mips64-nf"
 
-TUNE_FEATURES_tune-mipsel-nf = "o32"
-BASE_LIB_tune-mipsel-nf = "lib"
-MIPSPKGSFX_VARIANT_tune-mipsel-nf = "${TUNE_ARCH}"
-PACKAGE_EXTRA_ARCHS_tune-mipsel-nf = "mipsel-nf"
+TUNE_FEATURES:tune-mipsel-nf = "o32"
+BASE_LIB:tune-mipsel-nf = "lib"
+MIPSPKGSFX_VARIANT:tune-mipsel-nf = "${TUNE_ARCH}"
+PACKAGE_EXTRA_ARCHS:tune-mipsel-nf = "mipsel-nf"
 
-TUNE_FEATURES_tune-mips64el-nf-n32 = "n32"
-BASE_LIB_tune-mips64el-nf-n32 = "lib32"
-MIPSPKGSFX_VARIANT_tune-mips64el-nf-n32 = "${TUNE_ARCH}"
-PACKAGE_EXTRA_ARCHS_tune-mips64el-nf-n32 = "mips64el-nf-n32"
+TUNE_FEATURES:tune-mips64el-nf-n32 = "n32"
+BASE_LIB:tune-mips64el-nf-n32 = "lib32"
+MIPSPKGSFX_VARIANT:tune-mips64el-nf-n32 = "${TUNE_ARCH}"
+PACKAGE_EXTRA_ARCHS:tune-mips64el-nf-n32 = "mips64el-nf-n32"
 
-TUNE_FEATURES_tune-mips64el-nf = "n64"
-BASE_LIB_tune-mips64el-nf = "lib64"
-MIPSPKGSFX_VARIANT_tune-mips64el-nf = "${TUNE_ARCH}"
-PACKAGE_EXTRA_ARCHS_tune-mips64el-nf = "mips64el-nf"
+TUNE_FEATURES:tune-mips64el-nf = "n64"
+BASE_LIB:tune-mips64el-nf = "lib64"
+MIPSPKGSFX_VARIANT:tune-mips64el-nf = "${TUNE_ARCH}"
+PACKAGE_EXTRA_ARCHS:tune-mips64el-nf = "mips64el-nf"
 
 # MIPS 64 + o32
 AVAILTUNES += "mips64-o32 mips64el-o32"
 
-TUNE_FEATURES_tune-mips64-o32 = "o32 bigendian fpu-hard"
-BASE_LIB_tune-mips64-o32 = "lib"
-MIPSPKGSFX_VARIANT_tune-mips64-o32 = "${TUNE_ARCH}"
-PACKAGE_EXTRA_ARCHS_tune-mips64-o32 = "mips mips64-o32"
+TUNE_FEATURES:tune-mips64-o32 = "o32 bigendian fpu-hard"
+BASE_LIB:tune-mips64-o32 = "lib"
+MIPSPKGSFX_VARIANT:tune-mips64-o32 = "${TUNE_ARCH}"
+PACKAGE_EXTRA_ARCHS:tune-mips64-o32 = "mips mips64-o32"
 
-TUNE_FEATURES_tune-mips64el-o32 = "o32 fpu-hard"
-BASE_LIB_tune-mips64el-o32 = "lib"
-MIPSPKGSFX_VARIANT_tune-mips64el-o32 = "${TUNE_ARCH}"
-PACKAGE_EXTRA_ARCHS_tune-mips64el-o32 = "mipsel mips64el-o32"
+TUNE_FEATURES:tune-mips64el-o32 = "o32 fpu-hard"
+BASE_LIB:tune-mips64el-o32 = "lib"
+MIPSPKGSFX_VARIANT:tune-mips64el-o32 = "${TUNE_ARCH}"
+PACKAGE_EXTRA_ARCHS:tune-mips64el-o32 = "mipsel mips64el-o32"
 
 # MIPS 64 o32 and Soft Float
 AVAILTUNES += "mips64-nf-o32 mips64el-nf-o32"
 
-TUNE_FEATURES_tune-mips64-nf-o32 = "o32 bigendian"
-BASE_LIB_tune-mips64-nf-o32 = "lib"
-MIPSPKGSFX_VARIANT_tune-mips64-nf-o32 = "${TUNE_ARCH}"
-PACKAGE_EXTRA_ARCHS_tune-mips64-nf-o32 = "mips-nf mips64-nf-o32"
+TUNE_FEATURES:tune-mips64-nf-o32 = "o32 bigendian"
+BASE_LIB:tune-mips64-nf-o32 = "lib"
+MIPSPKGSFX_VARIANT:tune-mips64-nf-o32 = "${TUNE_ARCH}"
+PACKAGE_EXTRA_ARCHS:tune-mips64-nf-o32 = "mips-nf mips64-nf-o32"
 
-TUNE_FEATURES_tune-mips64el-nf-o32 = "o32"
-BASE_LIB_tune-mips64el-nf-o32 = "lib"
-MIPSPKGSFX_VARIANT_tune-mips64el-nf-o32 = "${TUNE_ARCH}"
-PACKAGE_EXTRA_ARCHS_tune-mips64el-nf-o32 = "mipsel-nf mips64el-nf-o32"
+TUNE_FEATURES:tune-mips64el-nf-o32 = "o32"
+BASE_LIB:tune-mips64el-nf-o32 = "lib"
+MIPSPKGSFX_VARIANT:tune-mips64el-nf-o32 = "${TUNE_ARCH}"
+PACKAGE_EXTRA_ARCHS:tune-mips64el-nf-o32 = "mipsel-nf mips64el-nf-o32"
diff --git a/poky/meta/conf/machine/include/mips/tune-mips-24k.inc b/poky/meta/conf/machine/include/mips/tune-mips-24k.inc
index 828acd4..ed65665 100644
--- a/poky/meta/conf/machine/include/mips/tune-mips-24k.inc
+++ b/poky/meta/conf/machine/include/mips/tune-mips-24k.inc
@@ -16,36 +16,36 @@
 AVAILTUNES += "mips32r2el-24kc mips32r2el-24kec mips32r2el-24kec-m16"
 
 # big endian: kc, kc+dsp=kec, kc+dsp+mips16e=kec-m16
-TUNE_FEATURES_tune-mips32r2-24kc = "${TUNE_FEATURES_tune-mips32r2-nf} 24kc"
-TUNE_FEATURES_tune-mips32r2-24kec = "${TUNE_FEATURES_tune-mips32r2-nf} 24kec"
-TUNE_FEATURES_tune-mips32r2-24kec-m16 = "${TUNE_FEATURES_tune-mips32r2-24kec} mips16e"
+TUNE_FEATURES:tune-mips32r2-24kc = "${TUNE_FEATURES:tune-mips32r2-nf} 24kc"
+TUNE_FEATURES:tune-mips32r2-24kec = "${TUNE_FEATURES:tune-mips32r2-nf} 24kec"
+TUNE_FEATURES:tune-mips32r2-24kec-m16 = "${TUNE_FEATURES:tune-mips32r2-24kec} mips16e"
 
-MIPSPKGSFX_VARIANT_tune-mips32r2-24kc = "mips32r2-24kc"
-PACKAGE_EXTRA_ARCHS_tune-mips32r2-24kc = "${PACKAGE_EXTRA_ARCHS_tune-mips32r2-nf} mips32r2-24kc-nf"
+MIPSPKGSFX_VARIANT:tune-mips32r2-24kc = "mips32r2-24kc"
+PACKAGE_EXTRA_ARCHS:tune-mips32r2-24kc = "${PACKAGE_EXTRA_ARCHS:tune-mips32r2-nf} mips32r2-24kc-nf"
 QEMU_EXTRAOPTIONS_mips32r2-24kc-nf = " -cpu 24Kc"
 
-MIPSPKGSFX_VARIANT_tune-mips32r2-24kec = "mips32r2-24kec"
-PACKAGE_EXTRA_ARCHS_tune-mips32r2-24kec = "${PACKAGE_EXTRA_ARCHS_tune-mips32r2-24kc} mips32r2-24kec-nf"
+MIPSPKGSFX_VARIANT:tune-mips32r2-24kec = "mips32r2-24kec"
+PACKAGE_EXTRA_ARCHS:tune-mips32r2-24kec = "${PACKAGE_EXTRA_ARCHS:tune-mips32r2-24kc} mips32r2-24kec-nf"
 QEMU_EXTRAOPTIONS_mips32r2-24kec-nf = " -cpu 24KEc"
 
-MIPSPKGSFX_VARIANT_tune-mips32r2-24kec-m16 = "mips32r2-24kec${MIPSPKGSFX_MIPS16E}"
-PACKAGE_EXTRA_ARCHS_tune-mips32r2-24kec-m16 = "${PACKAGE_EXTRA_ARCHS_tune-mips32r2-24kec} mips32r2-24kec-m16-nf"
+MIPSPKGSFX_VARIANT:tune-mips32r2-24kec-m16 = "mips32r2-24kec${MIPSPKGSFX_MIPS16E}"
+PACKAGE_EXTRA_ARCHS:tune-mips32r2-24kec-m16 = "${PACKAGE_EXTRA_ARCHS:tune-mips32r2-24kec} mips32r2-24kec-m16-nf"
 QEMU_EXTRAOPTIONS_mips32r2-24kec-m16-nf = " -cpu 24KEc"
 
 
 # little endian: kc, kc+dsp=kec, kc+dsp+mips16e=kec-m16
-TUNE_FEATURES_tune-mips32r2el-24kc = "${TUNE_FEATURES_tune-mips32r2el-nf} 24kc"
-TUNE_FEATURES_tune-mips32r2el-24kec = "${TUNE_FEATURES_tune-mips32r2el-nf} 24kec"
-TUNE_FEATURES_tune-mips32r2el-24kec-m16 = "${TUNE_FEATURES_tune-mips32r2el-24kec} mips16e"
+TUNE_FEATURES:tune-mips32r2el-24kc = "${TUNE_FEATURES:tune-mips32r2el-nf} 24kc"
+TUNE_FEATURES:tune-mips32r2el-24kec = "${TUNE_FEATURES:tune-mips32r2el-nf} 24kec"
+TUNE_FEATURES:tune-mips32r2el-24kec-m16 = "${TUNE_FEATURES:tune-mips32r2el-24kec} mips16e"
 
-MIPSPKGSFX_VARIANT_tune-mips32r2el-24kc = "mips32r2el-24kc"
-PACKAGE_EXTRA_ARCHS_tune-mips32r2el-24kc = "${PACKAGE_EXTRA_ARCHS_tune-mips32r2el-nf} mips32r2el-24kc-nf"
+MIPSPKGSFX_VARIANT:tune-mips32r2el-24kc = "mips32r2el-24kc"
+PACKAGE_EXTRA_ARCHS:tune-mips32r2el-24kc = "${PACKAGE_EXTRA_ARCHS:tune-mips32r2el-nf} mips32r2el-24kc-nf"
 QEMU_EXTRAOPTIONS_mips32r2el-24kc-nf = " -cpu 24Kc"
 
-MIPSPKGSFX_VARIANT_tune-mips32r2el-24kec = "mips32r2el-24kec"
-PACKAGE_EXTRA_ARCHS_tune-mips32r2el-24kec = "${PACKAGE_EXTRA_ARCHS_tune-mips32r2el-24kc} mips32r2el-24kec-nf"
+MIPSPKGSFX_VARIANT:tune-mips32r2el-24kec = "mips32r2el-24kec"
+PACKAGE_EXTRA_ARCHS:tune-mips32r2el-24kec = "${PACKAGE_EXTRA_ARCHS:tune-mips32r2el-24kc} mips32r2el-24kec-nf"
 QEMU_EXTRAOPTIONS_mips32r2el-24kec-nf = " -cpu 24KEc"
 
-MIPSPKGSFX_VARIANT_tune-mips32r2el-24kec-m16 = "mips32r2el-24kec${MIPSPKGSFX_MIPS16E}"
-PACKAGE_EXTRA_ARCHS_tune-mips32r2el-24kec-m16 = "${PACKAGE_EXTRA_ARCHS_tune-mips32r2el-24kec} mips32r2el-24kec-m16-nf"
+MIPSPKGSFX_VARIANT:tune-mips32r2el-24kec-m16 = "mips32r2el-24kec${MIPSPKGSFX_MIPS16E}"
+PACKAGE_EXTRA_ARCHS:tune-mips32r2el-24kec-m16 = "${PACKAGE_EXTRA_ARCHS:tune-mips32r2el-24kec} mips32r2el-24kec-m16-nf"
 QEMU_EXTRAOPTIONS_mips32r2el-24kec-m16-nf = " -cpu 24KEc"
diff --git a/poky/meta/conf/machine/include/mips/tune-mips-74k.inc b/poky/meta/conf/machine/include/mips/tune-mips-74k.inc
index 94afee3..988cfae 100644
--- a/poky/meta/conf/machine/include/mips/tune-mips-74k.inc
+++ b/poky/meta/conf/machine/include/mips/tune-mips-74k.inc
@@ -13,25 +13,25 @@
 AVAILTUNES += "mips32r2el-74kc mips32r2el-74kc-m16"
 
 # big endian: kc+dsp2=kc, kc+dsp2+mips16e=kc-m16
-TUNE_FEATURES_tune-mips32r2-74kc = "${TUNE_FEATURES_tune-mips32r2-nf} 74kc"
-TUNE_FEATURES_tune-mips32r2-74kc-m16 = "${TUNE_FEATURES_tune-mips32r2-74kc} mips16e"
+TUNE_FEATURES:tune-mips32r2-74kc = "${TUNE_FEATURES:tune-mips32r2-nf} 74kc"
+TUNE_FEATURES:tune-mips32r2-74kc-m16 = "${TUNE_FEATURES:tune-mips32r2-74kc} mips16e"
 
-MIPSPKGSFX_VARIANT_tune-mips32r2-74kc = "mips32r2-74kc"
-PACKAGE_EXTRA_ARCHS_tune-mips32r2-74kc = "${PACKAGE_EXTRA_ARCHS_tune-mips32r2-nf} mips32r2-74kc-nf"
+MIPSPKGSFX_VARIANT:tune-mips32r2-74kc = "mips32r2-74kc"
+PACKAGE_EXTRA_ARCHS:tune-mips32r2-74kc = "${PACKAGE_EXTRA_ARCHS:tune-mips32r2-nf} mips32r2-74kc-nf"
 QEMU_EXTRAOPTIONS_mips32r2-74kc-nf = " -cpu 24Kc"
 
-MIPSPKGSFX_VARIANT_tune-mips32r2-74kc-m16 = "mips32r2-74kc${MIPSPKGSFX_MIPS16E}"
-PACKAGE_EXTRA_ARCHS_tune-mips32r2-74kc-m16 = "${PACKAGE_EXTRA_ARCHS_tune-mips32r2-74kc} mips32r2-74kc-m16-nf"
+MIPSPKGSFX_VARIANT:tune-mips32r2-74kc-m16 = "mips32r2-74kc${MIPSPKGSFX_MIPS16E}"
+PACKAGE_EXTRA_ARCHS:tune-mips32r2-74kc-m16 = "${PACKAGE_EXTRA_ARCHS:tune-mips32r2-74kc} mips32r2-74kc-m16-nf"
 QEMU_EXTRAOPTIONS_mips32r2-74kc-m16-nf = " -cpu 24KEc"
 
 # little endian: kc+dsp2=kc, kc+dsp2+mips16e=kc-m16
-TUNE_FEATURES_tune-mips32r2el-74kc = "${TUNE_FEATURES_tune-mips32r2el-nf} 74kc"
-TUNE_FEATURES_tune-mips32r2el-74kc-m16 = "${TUNE_FEATURES_tune-mips32r2el-74kc} mips16e"
+TUNE_FEATURES:tune-mips32r2el-74kc = "${TUNE_FEATURES:tune-mips32r2el-nf} 74kc"
+TUNE_FEATURES:tune-mips32r2el-74kc-m16 = "${TUNE_FEATURES:tune-mips32r2el-74kc} mips16e"
 
-MIPSPKGSFX_VARIANT_tune-mips32r2el-74kc = "mips32r2el-74kc"
-PACKAGE_EXTRA_ARCHS_tune-mips32r2el-74kc = "${PACKAGE_EXTRA_ARCHS_tune-mips32r2el-nf} mips32r2el-74kc-nf"
+MIPSPKGSFX_VARIANT:tune-mips32r2el-74kc = "mips32r2el-74kc"
+PACKAGE_EXTRA_ARCHS:tune-mips32r2el-74kc = "${PACKAGE_EXTRA_ARCHS:tune-mips32r2el-nf} mips32r2el-74kc-nf"
 QEMU_EXTRAOPTIONS_mips32r2el-74kc-nf = " -cpu 24Kc"
 
-MIPSPKGSFX_VARIANT_tune-mips32r2el-74kc-m16 = "mips32r2el-74kc${MIPSPKGSFX_MIPS16E}"
-PACKAGE_EXTRA_ARCHS_tune-mips32r2el-74kc-m16 = "${PACKAGE_EXTRA_ARCHS_tune-mips32r2el-74kc} mips32r2el-74kc-m16-nf"
+MIPSPKGSFX_VARIANT:tune-mips32r2el-74kc-m16 = "mips32r2el-74kc${MIPSPKGSFX_MIPS16E}"
+PACKAGE_EXTRA_ARCHS:tune-mips32r2el-74kc-m16 = "${PACKAGE_EXTRA_ARCHS:tune-mips32r2el-74kc} mips32r2el-74kc-m16-nf"
 QEMU_EXTRAOPTIONS_mips32r2el-74kc-m16-nf = " -cpu 24KEc"
diff --git a/poky/meta/conf/machine/include/powerpc/README b/poky/meta/conf/machine/include/powerpc/README
index e87fb50..e813d21 100644
--- a/poky/meta/conf/machine/include/powerpc/README
+++ b/poky/meta/conf/machine/include/powerpc/README
@@ -12,6 +12,6 @@
 However, a general naming scheme should be similar to: ppc[64][<family>][-nf].
 (Note: the default package architectures are "powerpc" and "powerpc64".)
 
-TUNE_PKGARCH is defined as TUNE_PKGARCH_tune-${DEFAULTTUNE}.  All 
-PowerPC tunings are required to define TUNE_PKGARCH_tune-<tune>.
+TUNE_PKGARCH is defined as TUNE_PKGARCH:tune-${DEFAULTTUNE}.  All 
+PowerPC tunings are required to define TUNE_PKGARCH:tune-<tune>.
 
diff --git a/poky/meta/conf/machine/include/powerpc/arch-powerpc.inc b/poky/meta/conf/machine/include/powerpc/arch-powerpc.inc
index ef18e9a..be687e2 100644
--- a/poky/meta/conf/machine/include/powerpc/arch-powerpc.inc
+++ b/poky/meta/conf/machine/include/powerpc/arch-powerpc.inc
@@ -5,7 +5,7 @@
 
 DEFAULTTUNE ?= "powerpc"
 
-TUNE_PKGARCH = "${TUNE_PKGARCH_tune-${DEFAULTTUNE}}"
+TUNE_PKGARCH = "${TUNE_PKGARCH:tune-${DEFAULTTUNE}}"
 ABIEXTENSION ?= ""
 
 # Endian
@@ -30,22 +30,22 @@
 # Basic tune definitions
 AVAILTUNES += "powerpc powerpc-nf powerpcle powerpcle-nf" 
 
-TUNE_FEATURES_tune-powerpc-nf = "m32 fpu-soft bigendian"
-BASE_LIB_tune-powerpc-nf = "lib"
-TUNE_PKGARCH_tune-powerpc-nf = "powerpc-nf"
-PACKAGE_EXTRA_ARCHS_tune-powerpc-nf = "powerpc-nf"
+TUNE_FEATURES:tune-powerpc-nf = "m32 fpu-soft bigendian"
+BASE_LIB:tune-powerpc-nf = "lib"
+TUNE_PKGARCH:tune-powerpc-nf = "powerpc-nf"
+PACKAGE_EXTRA_ARCHS:tune-powerpc-nf = "powerpc-nf"
 
-TUNE_FEATURES_tune-powerpc = "m32 fpu-hard bigendian"
-BASE_LIB_tune-powerpc = "lib"
-TUNE_PKGARCH_tune-powerpc = "powerpc"
-PACKAGE_EXTRA_ARCHS_tune-powerpc = "powerpc"
+TUNE_FEATURES:tune-powerpc = "m32 fpu-hard bigendian"
+BASE_LIB:tune-powerpc = "lib"
+TUNE_PKGARCH:tune-powerpc = "powerpc"
+PACKAGE_EXTRA_ARCHS:tune-powerpc = "powerpc"
 
-TUNE_FEATURES_tune-powerpcle-nf = "m32 fpu-soft"
-BASE_LIB_tune-powerpcle-nf = "lib"
-TUNE_PKGARCH_tune-powerpcle-nf = "powerpcle-nf"
-PACKAGE_EXTRA_ARCHS_tune-powerpcle-nf = "powerpcle-nf"
+TUNE_FEATURES:tune-powerpcle-nf = "m32 fpu-soft"
+BASE_LIB:tune-powerpcle-nf = "lib"
+TUNE_PKGARCH:tune-powerpcle-nf = "powerpcle-nf"
+PACKAGE_EXTRA_ARCHS:tune-powerpcle-nf = "powerpcle-nf"
 
-TUNE_FEATURES_tune-powerpcle = "m32 fpu-hard"
-BASE_LIB_tune-powerpcle = "lib"
-TUNE_PKGARCH_tune-powerpcle = "powerpcle"
-PACKAGE_EXTRA_ARCHS_tune-powerpcle = "powerpcle"
+TUNE_FEATURES:tune-powerpcle = "m32 fpu-hard"
+BASE_LIB:tune-powerpcle = "lib"
+TUNE_PKGARCH:tune-powerpcle = "powerpcle"
+PACKAGE_EXTRA_ARCHS:tune-powerpcle = "powerpcle"
diff --git a/poky/meta/conf/machine/include/powerpc/arch-powerpc64.inc b/poky/meta/conf/machine/include/powerpc/arch-powerpc64.inc
index 467abc5..2533151 100644
--- a/poky/meta/conf/machine/include/powerpc/arch-powerpc64.inc
+++ b/poky/meta/conf/machine/include/powerpc/arch-powerpc64.inc
@@ -12,12 +12,12 @@
 
 AVAILTUNES += "powerpc64 powerpc64le"
 
-TUNE_FEATURES_tune-powerpc64 = "m64 fpu-hard bigendian"
-BASE_LIB_tune-powerpc64 = "lib64"
-TUNE_PKGARCH_tune-powerpc64 = "powerpc64"
-PACKAGE_EXTRA_ARCHS_tune-powerpc64 = "powerpc64"
+TUNE_FEATURES:tune-powerpc64 = "m64 fpu-hard bigendian"
+BASE_LIB:tune-powerpc64 = "lib64"
+TUNE_PKGARCH:tune-powerpc64 = "powerpc64"
+PACKAGE_EXTRA_ARCHS:tune-powerpc64 = "powerpc64"
 
-TUNE_FEATURES_tune-powerpc64le = "m64 fpu-hard"
-BASE_LIB_tune-powerpc64le = "lib64"
-TUNE_PKGARCH_tune-powerpc64le = "powerpc64le"
-PACKAGE_EXTRA_ARCHS_tune-powerpc64le = "powerpc64le"
+TUNE_FEATURES:tune-powerpc64le = "m64 fpu-hard"
+BASE_LIB:tune-powerpc64le = "lib64"
+TUNE_PKGARCH:tune-powerpc64le = "powerpc64le"
+PACKAGE_EXTRA_ARCHS:tune-powerpc64le = "powerpc64le"
diff --git a/poky/meta/conf/machine/include/qemu.inc b/poky/meta/conf/machine/include/qemu.inc
index 7d0a6fe..c7136da 100644
--- a/poky/meta/conf/machine/include/qemu.inc
+++ b/poky/meta/conf/machine/include/qemu.inc
@@ -16,7 +16,7 @@
 IMAGE_FSTYPES += "tar.bz2 ext4"
 
 # Don't include kernels in standard images
-RDEPENDS_${KERNEL_PACKAGE_NAME}-base = ""
+RDEPENDS:${KERNEL_PACKAGE_NAME}-base = ""
 
 # Use a common kernel recipe for all QEMU machines
 PREFERRED_PROVIDER_virtual/kernel ??= "linux-yocto"
@@ -24,7 +24,7 @@
 EXTRA_IMAGEDEPENDS += "qemu-system-native qemu-helper-native"
 
 # Provide the nfs server kernel module for all qemu images
-KERNEL_FEATURES_append_pn-linux-yocto = " features/nfsd/nfsd-enable.scc"
-KERNEL_FEATURES_append_pn-linux-yocto-rt = " features/nfsd/nfsd-enable.scc"
+KERNEL_FEATURES:append:pn-linux-yocto = " features/nfsd/nfsd-enable.scc"
+KERNEL_FEATURES:append:pn-linux-yocto-rt = " features/nfsd/nfsd-enable.scc"
 
 IMAGE_CLASSES += "qemuboot"
diff --git a/poky/meta/conf/machine/include/qemuboot-x86.inc b/poky/meta/conf/machine/include/qemuboot-x86.inc
index a2dcdc6..d3b9107 100644
--- a/poky/meta/conf/machine/include/qemuboot-x86.inc
+++ b/poky/meta/conf/machine/include/qemuboot-x86.inc
@@ -1,11 +1,11 @@
 # For runqemu
 IMAGE_CLASSES += "qemuboot"
 QB_SMP = "-smp 4"
-QB_CPU_x86 = "-cpu IvyBridge -machine q35"
-QB_CPU_KVM_x86 = "-cpu IvyBridge -machine q35"
+QB_CPU:x86 = "-cpu IvyBridge -machine q35"
+QB_CPU_KVM:x86 = "-cpu IvyBridge -machine q35"
 
-QB_CPU_x86-64 = "-cpu IvyBridge -machine q35"
-QB_CPU_KVM_x86-64 = "-cpu IvyBridge -machine q35"
+QB_CPU:x86-64 = "-cpu IvyBridge -machine q35"
+QB_CPU_KVM:x86-64 = "-cpu IvyBridge -machine q35"
 
 QB_AUDIO_DRV = "alsa"
 QB_AUDIO_OPT = "-soundhw ac97,es1370"
diff --git a/poky/meta/conf/machine/include/riscv/arch-riscv.inc b/poky/meta/conf/machine/include/riscv/arch-riscv.inc
index eae2b88..e5611a1 100644
--- a/poky/meta/conf/machine/include/riscv/arch-riscv.inc
+++ b/poky/meta/conf/machine/include/riscv/arch-riscv.inc
@@ -2,12 +2,12 @@
 
 DEFAULTTUNE ?= "riscv64"
 
-TUNE_ARCH = "${TUNE_ARCH_tune-${DEFAULTTUNE}}"
-TUNE_PKGARCH = "${TUNE_PKGARCH_tune-${DEFAULTTUNE}}"
-TUNE_CCARGS_append = "${@bb.utils.contains('TUNE_FEATURES', 'riscv64nf', ' -mabi=lp64', ' ', d)}"
-TUNE_CCARGS_append = "${@bb.utils.contains('TUNE_FEATURES', 'riscv32nf', ' -mabi=ilp32', ' ', d)}"
+TUNE_ARCH = "${TUNE_ARCH:tune-${DEFAULTTUNE}}"
+TUNE_PKGARCH = "${TUNE_PKGARCH:tune-${DEFAULTTUNE}}"
+TUNE_CCARGS:append = "${@bb.utils.contains('TUNE_FEATURES', 'riscv64nf', ' -mabi=lp64', ' ', d)}"
+TUNE_CCARGS:append = "${@bb.utils.contains('TUNE_FEATURES', 'riscv32nf', ' -mabi=ilp32', ' ', d)}"
 
 # Fix: ld: unrecognized option '--hash-style=sysv'
-LINKER_HASH_STYLE_libc-newlib = ""
+LINKER_HASH_STYLE:libc-newlib = ""
 # Fix: ld: unrecognized option '--hash-style=gnu'
-LINKER_HASH_STYLE_libc-baremetal = ""
+LINKER_HASH_STYLE:libc-baremetal = ""
diff --git a/poky/meta/conf/machine/include/riscv/qemuriscv.inc b/poky/meta/conf/machine/include/riscv/qemuriscv.inc
index 20e2d46..14eaf5d 100644
--- a/poky/meta/conf/machine/include/riscv/qemuriscv.inc
+++ b/poky/meta/conf/machine/include/riscv/qemuriscv.inc
@@ -22,8 +22,8 @@
 RISCV_SBI_PLAT ?= "generic"
 RISCV_SBI_PAYLOAD ?= "${KERNEL_IMAGETYPE}-${MACHINE}.bin"
 
-UBOOT_ENTRYPOINT_riscv32 = "0x80400000"
-UBOOT_ENTRYPOINT_riscv64 = "0x80200000"
+UBOOT_ENTRYPOINT:riscv32 = "0x80400000"
+UBOOT_ENTRYPOINT:riscv64 = "0x80200000"
 
 # qemuboot options
 QB_SMP = "-smp 4"
diff --git a/poky/meta/conf/machine/include/riscv/tune-riscv.inc b/poky/meta/conf/machine/include/riscv/tune-riscv.inc
index 028548b..cc2896f 100644
--- a/poky/meta/conf/machine/include/riscv/tune-riscv.inc
+++ b/poky/meta/conf/machine/include/riscv/tune-riscv.inc
@@ -11,23 +11,23 @@
 AVAILTUNES += "riscv64 riscv32 riscv64nf riscv32nf"
 
 # Default
-TUNE_FEATURES_tune-riscv64 = "riscv64"
-TUNE_ARCH_tune-riscv64 = "riscv64"
-TUNE_PKGARCH_tune-riscv64 = "riscv64"
-PACKAGE_EXTRA_ARCHS_tune-riscv64 = "riscv64"
+TUNE_FEATURES:tune-riscv64 = "riscv64"
+TUNE_ARCH:tune-riscv64 = "riscv64"
+TUNE_PKGARCH:tune-riscv64 = "riscv64"
+PACKAGE_EXTRA_ARCHS:tune-riscv64 = "riscv64"
 
-TUNE_FEATURES_tune-riscv32 = "riscv32"
-TUNE_ARCH_tune-riscv32 = "riscv32"
-TUNE_PKGARCH_tune-riscv32 = "riscv32"
-PACKAGE_EXTRA_ARCHS_tune-riscv32 = "riscv32"
+TUNE_FEATURES:tune-riscv32 = "riscv32"
+TUNE_ARCH:tune-riscv32 = "riscv32"
+TUNE_PKGARCH:tune-riscv32 = "riscv32"
+PACKAGE_EXTRA_ARCHS:tune-riscv32 = "riscv32"
 
 # No float
-TUNE_FEATURES_tune-riscv64nf = "${TUNE_FEATURES_tune-riscv64} riscv64nf"
-TUNE_ARCH_tune-riscv64nf = "riscv64"
-TUNE_PKGARCH_tune-riscv64nf = "riscv64nf"
-PACKAGE_EXTRA_ARCHS_tune-riscv64nf = "riscv64nf"
+TUNE_FEATURES:tune-riscv64nf = "${TUNE_FEATURES:tune-riscv64} riscv64nf"
+TUNE_ARCH:tune-riscv64nf = "riscv64"
+TUNE_PKGARCH:tune-riscv64nf = "riscv64nf"
+PACKAGE_EXTRA_ARCHS:tune-riscv64nf = "riscv64nf"
 
-TUNE_FEATURES_tune-riscv32nf = "${TUNE_FEATURES_tune-riscv32} riscv32nf"
-TUNE_ARCH_tune-riscv32nf = "riscv32"
-TUNE_PKGARCH_tune-riscv32nf = "riscv32nf"
-PACKAGE_EXTRA_ARCHS_tune-riscv32nf = "riscv32nf"
+TUNE_FEATURES:tune-riscv32nf = "${TUNE_FEATURES:tune-riscv32} riscv32nf"
+TUNE_ARCH:tune-riscv32nf = "riscv32"
+TUNE_PKGARCH:tune-riscv32nf = "riscv32nf"
+PACKAGE_EXTRA_ARCHS:tune-riscv32nf = "riscv32nf"
diff --git a/poky/meta/conf/machine/include/sh/README b/poky/meta/conf/machine/include/sh/README
index b351acd..87d48b9 100644
--- a/poky/meta/conf/machine/include/sh/README
+++ b/poky/meta/conf/machine/include/sh/README
@@ -5,7 +5,7 @@
 
 Experimental -- SH tunings have not been validated.
 
-The TUNE_ARCH is defined as ${TUNE_ARCH_tune-${DEFAULTTUNE}}.
+The TUNE_ARCH is defined as ${TUNE_ARCH:tune-${DEFAULTTUNE}}.
 
-The TUNE_PKGARCH is defind as ${TUNE_PKGARCH_tune-${DEFAULTTUNE}}.
+The TUNE_PKGARCH is defind as ${TUNE_PKGARCH:tune-${DEFAULTTUNE}}.
 
diff --git a/poky/meta/conf/machine/include/sh/arch-sh.inc b/poky/meta/conf/machine/include/sh/arch-sh.inc
index bdfbf52..9d70e85 100644
--- a/poky/meta/conf/machine/include/sh/arch-sh.inc
+++ b/poky/meta/conf/machine/include/sh/arch-sh.inc
@@ -2,8 +2,8 @@
 
 DEFAULTTUNE ?= "sh"
 
-TUNE_ARCH = "${TUNE_ARCH_tune-${DEFAULTTUNE}}"
-TUNE_PKGARCH = "${TUNE_PKGARCH_tune-${DEFAULTTUNE}}"
+TUNE_ARCH = "${TUNE_ARCH:tune-${DEFAULTTUNE}}"
+TUNE_PKGARCH = "${TUNE_PKGARCH:tune-${DEFAULTTUNE}}"
 
 TUNEVALID[bigendian] = "Enabled big-endian mode."
 TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'bigendian', ' -mb', ' -ml', d)}"
diff --git a/poky/meta/conf/machine/include/tune-arm1136jf-s.inc b/poky/meta/conf/machine/include/tune-arm1136jf-s.inc
index 2bb8c7c..b848580 100644
--- a/poky/meta/conf/machine/include/tune-arm1136jf-s.inc
+++ b/poky/meta/conf/machine/include/tune-arm1136jf-s.inc
@@ -7,10 +7,10 @@
 MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES', 'arm1136jfs', 'armv6:', '', d)}"
 
 AVAILTUNES += "arm1136jfs arm1136jfshf"
-ARMPKGARCH_tune-arm1136jfs = "arm1136jfs"
-ARMPKGARCH_tune-arm1136jfshf = "arm1136jfs"
+ARMPKGARCH:tune-arm1136jfs = "arm1136jfs"
+ARMPKGARCH:tune-arm1136jfshf = "arm1136jfs"
 # mcpu is used so don't use armv6 as we don't want march
-TUNE_FEATURES_tune-arm1136jfs = "arm vfp arm1136jfs"
-TUNE_FEATURES_tune-arm1136jfshf = "${TUNE_FEATURES_tune-arm1136jfs} callconvention-hard"
-PACKAGE_EXTRA_ARCHS_tune-arm1136jfs = "${PACKAGE_EXTRA_ARCHS_tune-armv6} arm1136jfs-vfp"
-PACKAGE_EXTRA_ARCHS_tune-arm1136jfshf = "${PACKAGE_EXTRA_ARCHS_tune-armv6hf} arm1136jfshf-vfp"
+TUNE_FEATURES:tune-arm1136jfs = "arm vfp arm1136jfs"
+TUNE_FEATURES:tune-arm1136jfshf = "${TUNE_FEATURES:tune-arm1136jfs} callconvention-hard"
+PACKAGE_EXTRA_ARCHS:tune-arm1136jfs = "${PACKAGE_EXTRA_ARCHS:tune-armv6} arm1136jfs-vfp"
+PACKAGE_EXTRA_ARCHS:tune-arm1136jfshf = "${PACKAGE_EXTRA_ARCHS:tune-armv6hf} arm1136jfshf-vfp"
diff --git a/poky/meta/conf/machine/include/tune-arm1176jz-s.inc b/poky/meta/conf/machine/include/tune-arm1176jz-s.inc
index a74781f..21d77f0 100644
--- a/poky/meta/conf/machine/include/tune-arm1176jz-s.inc
+++ b/poky/meta/conf/machine/include/tune-arm1176jz-s.inc
@@ -7,11 +7,11 @@
 MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES', 'arm1176jzs', 'armv6:', '', d)}"
 
 AVAILTUNES += "arm1176jzs"
-ARMPKGARCH_tune-arm1176jzs = "arm1176jzs"
-TUNE_FEATURES_tune-arm1176jzs = "arm thumb arm1176jzs"
-PACKAGE_EXTRA_ARCHS_tune-arm1176jzs = "${PACKAGE_EXTRA_ARCHS_tune-armv6t-novfp} arm1176jzs arm1176jzst"
+ARMPKGARCH:tune-arm1176jzs = "arm1176jzs"
+TUNE_FEATURES:tune-arm1176jzs = "arm thumb arm1176jzs"
+PACKAGE_EXTRA_ARCHS:tune-arm1176jzs = "${PACKAGE_EXTRA_ARCHS:tune-armv6t-novfp} arm1176jzs arm1176jzst"
 
 AVAILTUNES += "arm1176jzs-be"
-ARMPKGARCH_tune-arm1176jzs-be = "${ARMPKGARCH_tune-arm1176jzs}"
-TUNE_FEATURES_tune-arm1176jzs-be = "${TUNE_FEATURES_tune-arm1176jzs} bigendian"
-PACKAGE_EXTRA_ARCHS_tune-arm1176jzs-be = "${PACKAGE_EXTRA_ARCHS_tune-armv6tb-novfp} arm1176jzsb arm1176jzstb"
+ARMPKGARCH:tune-arm1176jzs-be = "${ARMPKGARCH:tune-arm1176jzs}"
+TUNE_FEATURES:tune-arm1176jzs-be = "${TUNE_FEATURES:tune-arm1176jzs} bigendian"
+PACKAGE_EXTRA_ARCHS:tune-arm1176jzs-be = "${PACKAGE_EXTRA_ARCHS:tune-armv6tb-novfp} arm1176jzsb arm1176jzstb"
diff --git a/poky/meta/conf/machine/include/tune-arm920t.inc b/poky/meta/conf/machine/include/tune-arm920t.inc
index 62a1a7e..8a61579 100644
--- a/poky/meta/conf/machine/include/tune-arm920t.inc
+++ b/poky/meta/conf/machine/include/tune-arm920t.inc
@@ -7,7 +7,7 @@
 MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES', 'arm920t', 'armv4:', '', d)}"
 
 AVAILTUNES += "arm920t"
-ARMPKGARCH_tune-arm920t = "arm920t"
+ARMPKGARCH:tune-arm920t = "arm920t"
 # mcpu is used so don't use armv4t as we don't want march
-TUNE_FEATURES_tune-arm920t = "arm thumb arm920t"
-PACKAGE_EXTRA_ARCHS_tune-arm920t = "${PACKAGE_EXTRA_ARCHS_tune-armv4t} arm920t arm920tt"
+TUNE_FEATURES:tune-arm920t = "arm thumb arm920t"
+PACKAGE_EXTRA_ARCHS:tune-arm920t = "${PACKAGE_EXTRA_ARCHS:tune-armv4t} arm920t arm920tt"
diff --git a/poky/meta/conf/machine/include/tune-arm926ejs.inc b/poky/meta/conf/machine/include/tune-arm926ejs.inc
index 5f090ba..84c5084 100644
--- a/poky/meta/conf/machine/include/tune-arm926ejs.inc
+++ b/poky/meta/conf/machine/include/tune-arm926ejs.inc
@@ -7,7 +7,7 @@
 MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES', 'arm926ejs', 'armv5:', '', d)}"
 
 AVAILTUNES += "arm926ejs"
-ARMPKGARCH_tune-arm926ejs = "arm926ejs"
+ARMPKGARCH:tune-arm926ejs = "arm926ejs"
 # mcpu is used so don't use armv5te as we don't want march
-TUNE_FEATURES_tune-arm926ejs = "arm thumb dsp arm926ejs"
-PACKAGE_EXTRA_ARCHS_tune-arm926ejs = "${PACKAGE_EXTRA_ARCHS_tune-armv5te} arm926ejste arm926ejse"
+TUNE_FEATURES:tune-arm926ejs = "arm thumb dsp arm926ejs"
+PACKAGE_EXTRA_ARCHS:tune-arm926ejs = "${PACKAGE_EXTRA_ARCHS:tune-armv5te} arm926ejste arm926ejse"
diff --git a/poky/meta/conf/machine/include/tune-arm9tdmi.inc b/poky/meta/conf/machine/include/tune-arm9tdmi.inc
index 8a46f8e..5ab286b 100644
--- a/poky/meta/conf/machine/include/tune-arm9tdmi.inc
+++ b/poky/meta/conf/machine/include/tune-arm9tdmi.inc
@@ -7,7 +7,7 @@
 MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES', 'arm9tdmi', 'armv4:', '', d)}"
 
 AVAILTUNES += "arm9tdmi"
-ARMPKGARCH_tune-arm9tdmi = "arm9tdmi"
+ARMPKGARCH:tune-arm9tdmi = "arm9tdmi"
 # mcpu is used so don't use armv4t as we don't want march
-TUNE_FEATURES_tune-arm9tdmi = "arm thumb arm9tdmi"
-PACKAGE_EXTRA_ARCHS_tune-arm9tdmi = "${PACKAGE_EXTRA_ARCHS_tune-armv4t} arm9tdmi arm9tdmit"
+TUNE_FEATURES:tune-arm9tdmi = "arm thumb arm9tdmi"
+PACKAGE_EXTRA_ARCHS:tune-arm9tdmi = "${PACKAGE_EXTRA_ARCHS:tune-armv4t} arm9tdmi arm9tdmit"
diff --git a/poky/meta/conf/machine/include/tune-c3.inc b/poky/meta/conf/machine/include/tune-c3.inc
index 1b272b2..afae825 100644
--- a/poky/meta/conf/machine/include/tune-c3.inc
+++ b/poky/meta/conf/machine/include/tune-c3.inc
@@ -5,8 +5,8 @@
 TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'c3', ' -march=c3 -mtune=c3', '', d)}"
 
 AVAILTUNES += "c3"
-TUNE_FEATURES_tune-c3 = "${TUNE_FEATURES_tune-x86} c3"
-BASE_LIBS_tune-c3 = "${BASE_LIB_tune-x86}"
+TUNE_FEATURES:tune-c3 = "${TUNE_FEATURES:tune-x86} c3"
+BASE_LIBS:tune-c3 = "${BASE_LIB:tune-x86}"
 # The following should likely be something other then i586...
-TUNE_PKGARCH_tune-c3 = "i586"
-PACKAGE_EXTRA_ARCHS_tune-c3 = "${PACKAGE_EXTRA_ARCHS_tune-x86} i386 i486 i586"
+TUNE_PKGARCH:tune-c3 = "i586"
+PACKAGE_EXTRA_ARCHS:tune-c3 = "${PACKAGE_EXTRA_ARCHS:tune-x86} i386 i486 i586"
diff --git a/poky/meta/conf/machine/include/tune-core2.inc b/poky/meta/conf/machine/include/tune-core2.inc
index ddde719..a551cad 100644
--- a/poky/meta/conf/machine/include/tune-core2.inc
+++ b/poky/meta/conf/machine/include/tune-core2.inc
@@ -17,22 +17,22 @@
 
 # Extra tune selections
 AVAILTUNES += "core2-32"
-TUNE_FEATURES_tune-core2-32 = "${TUNE_FEATURES_tune-x86} core2"
-BASE_LIB_tune-core2-32 = "lib"
-TUNE_PKGARCH_tune-core2-32 = "core2-32"
-PACKAGE_EXTRA_ARCHS_tune-core2-32 = "${PACKAGE_EXTRA_ARCHS_tune-i686} core2-32"
+TUNE_FEATURES:tune-core2-32 = "${TUNE_FEATURES:tune-x86} core2"
+BASE_LIB:tune-core2-32 = "lib"
+TUNE_PKGARCH:tune-core2-32 = "core2-32"
+PACKAGE_EXTRA_ARCHS:tune-core2-32 = "${PACKAGE_EXTRA_ARCHS:tune-i686} core2-32"
 QEMU_EXTRAOPTIONS_core2-32 = " -cpu n270"
 
 AVAILTUNES += "core2-64"
-TUNE_FEATURES_tune-core2-64 = "${TUNE_FEATURES_tune-x86-64} core2"
-BASE_LIB_tune-core2-64 = "lib64"
-TUNE_PKGARCH_tune-core2-64 = "core2-64"
-PACKAGE_EXTRA_ARCHS_tune-core2-64 = "${PACKAGE_EXTRA_ARCHS_tune-x86-64} core2-64"
+TUNE_FEATURES:tune-core2-64 = "${TUNE_FEATURES:tune-x86-64} core2"
+BASE_LIB:tune-core2-64 = "lib64"
+TUNE_PKGARCH:tune-core2-64 = "core2-64"
+PACKAGE_EXTRA_ARCHS:tune-core2-64 = "${PACKAGE_EXTRA_ARCHS:tune-x86-64} core2-64"
 QEMU_EXTRAOPTIONS_core2-64 = " -cpu core2duo"
 
 AVAILTUNES += "core2-64-x32"
-TUNE_FEATURES_tune-core2-64-x32 = "${TUNE_FEATURES_tune-x86-64-x32} core2"
-BASE_LIB_tune-core2-64-x32 = "libx32"
-TUNE_PKGARCH_tune-core2-64-x32 = "core2-64-x32"
-PACKAGE_EXTRA_ARCHS_tune-core2-64-x32 = "${PACKAGE_EXTRA_ARCHS_tune-x86-64-x32} core2-64-x32"
+TUNE_FEATURES:tune-core2-64-x32 = "${TUNE_FEATURES:tune-x86-64-x32} core2"
+BASE_LIB:tune-core2-64-x32 = "libx32"
+TUNE_PKGARCH:tune-core2-64-x32 = "core2-64-x32"
+PACKAGE_EXTRA_ARCHS:tune-core2-64-x32 = "${PACKAGE_EXTRA_ARCHS:tune-x86-64-x32} core2-64-x32"
 QEMU_EXTRAOPTIONS_core2-64-x32 = " -cpu core2duo"
diff --git a/poky/meta/conf/machine/include/tune-corei7.inc b/poky/meta/conf/machine/include/tune-corei7.inc
index d06af47..bf1ac7a 100644
--- a/poky/meta/conf/machine/include/tune-corei7.inc
+++ b/poky/meta/conf/machine/include/tune-corei7.inc
@@ -17,22 +17,22 @@
 
 # Extra tune selections
 AVAILTUNES += "corei7-32"
-TUNE_FEATURES_tune-corei7-32 = "${TUNE_FEATURES_tune-x86} corei7"
-BASE_LIB_tune-corei7-32 = "lib"
-TUNE_PKGARCH_tune-corei7-32 = "corei7-32"
-PACKAGE_EXTRA_ARCHS_tune-corei7-32 = "${PACKAGE_EXTRA_ARCHS_tune-core2-32} corei7-32"
+TUNE_FEATURES:tune-corei7-32 = "${TUNE_FEATURES:tune-x86} corei7"
+BASE_LIB:tune-corei7-32 = "lib"
+TUNE_PKGARCH:tune-corei7-32 = "corei7-32"
+PACKAGE_EXTRA_ARCHS:tune-corei7-32 = "${PACKAGE_EXTRA_ARCHS:tune-core2-32} corei7-32"
 QEMU_EXTRAOPTIONS_corei7-32 = " -cpu Nehalem,check=false"
 
 AVAILTUNES += "corei7-64"
-TUNE_FEATURES_tune-corei7-64 = "${TUNE_FEATURES_tune-x86-64} corei7"
-BASE_LIB_tune-corei7-64 = "lib64"
-TUNE_PKGARCH_tune-corei7-64 = "corei7-64"
-PACKAGE_EXTRA_ARCHS_tune-corei7-64 = "${PACKAGE_EXTRA_ARCHS_tune-core2-64} corei7-64"
+TUNE_FEATURES:tune-corei7-64 = "${TUNE_FEATURES:tune-x86-64} corei7"
+BASE_LIB:tune-corei7-64 = "lib64"
+TUNE_PKGARCH:tune-corei7-64 = "corei7-64"
+PACKAGE_EXTRA_ARCHS:tune-corei7-64 = "${PACKAGE_EXTRA_ARCHS:tune-core2-64} corei7-64"
 QEMU_EXTRAOPTIONS_corei7-64 = " -cpu Nehalem,check=false"
 
 AVAILTUNES += "corei7-64-x32"
-TUNE_FEATURES_tune-corei7-64-x32 = "${TUNE_FEATURES_tune-x86-64-x32} corei7"
-BASE_LIB_tune-corei7-64-x32 = "libx32"
-TUNE_PKGARCH_tune-corei7-64-x32 = "corei7-64-x32"
-PACKAGE_EXTRA_ARCHS_tune-corei7-64-x32 = "${PACKAGE_EXTRA_ARCHS_tune-core2-64-x32} corei7-64-x32"
+TUNE_FEATURES:tune-corei7-64-x32 = "${TUNE_FEATURES:tune-x86-64-x32} corei7"
+BASE_LIB:tune-corei7-64-x32 = "libx32"
+TUNE_PKGARCH:tune-corei7-64-x32 = "corei7-64-x32"
+PACKAGE_EXTRA_ARCHS:tune-corei7-64-x32 = "${PACKAGE_EXTRA_ARCHS:tune-core2-64-x32} corei7-64-x32"
 QEMU_EXTRAOPTIONS_corei7-64-x32 = " -cpu Nehalem,check=false"
diff --git a/poky/meta/conf/machine/include/tune-cortex-m0.inc b/poky/meta/conf/machine/include/tune-cortex-m0.inc
index a59c8af..aadc532 100644
--- a/poky/meta/conf/machine/include/tune-cortex-m0.inc
+++ b/poky/meta/conf/machine/include/tune-cortex-m0.inc
@@ -5,7 +5,7 @@
 TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexm0', ' -mcpu=cortex-m0', '', d)}"
 AVAILTUNES += "cortexm0"
 
-ARMPKGARCH_tune-cortexm0 = "cortexm0"
-TUNE_FEATURES_tune-cortexm0 = "${TUNE_FEATURES_tune-armv6m} cortexm0"
+ARMPKGARCH:tune-cortexm0 = "cortexm0"
+TUNE_FEATURES:tune-cortexm0 = "${TUNE_FEATURES:tune-armv6m} cortexm0"
 
-PACKAGE_EXTRA_ARCHS_tune-cortexm0 = "${PACKAGE_EXTRA_ARCHS_tune-armv6m} cortexm0"
+PACKAGE_EXTRA_ARCHS:tune-cortexm0 = "${PACKAGE_EXTRA_ARCHS:tune-armv6m} cortexm0"
diff --git a/poky/meta/conf/machine/include/tune-cortex-m0plus.inc b/poky/meta/conf/machine/include/tune-cortex-m0plus.inc
index 1c7512b..a3cf3f0 100644
--- a/poky/meta/conf/machine/include/tune-cortex-m0plus.inc
+++ b/poky/meta/conf/machine/include/tune-cortex-m0plus.inc
@@ -5,7 +5,7 @@
 TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexm0-plus', ' -mcpu=cortex-m0plus', '', d)}"
 AVAILTUNES += "cortexm0-plus"
 
-ARMPKGARCH_tune-cortexm0-plus = "cortexm0-plus"
-TUNE_FEATURES_tune-cortexm0-plus = "${TUNE_FEATURES_tune-armv6m} cortexm0-plus"
+ARMPKGARCH:tune-cortexm0-plus = "cortexm0-plus"
+TUNE_FEATURES:tune-cortexm0-plus = "${TUNE_FEATURES:tune-armv6m} cortexm0-plus"
 
-PACKAGE_EXTRA_ARCHS_tune-cortexm0-plus = "${PACKAGE_EXTRA_ARCHS_tune-armv6m} cortexm0-plus"
+PACKAGE_EXTRA_ARCHS:tune-cortexm0-plus = "${PACKAGE_EXTRA_ARCHS:tune-armv6m} cortexm0-plus"
diff --git a/poky/meta/conf/machine/include/tune-cortexa15.inc b/poky/meta/conf/machine/include/tune-cortexa15.inc
index 0457c2d..66bc124 100644
--- a/poky/meta/conf/machine/include/tune-cortexa15.inc
+++ b/poky/meta/conf/machine/include/tune-cortexa15.inc
@@ -8,44 +8,44 @@
 
 # Little Endian base configs
 AVAILTUNES += "cortexa15 cortexa15t cortexa15-neon cortexa15t-neon cortexa15-neon-vfpv4 cortexa15t-neon-vfpv4"
-ARMPKGARCH_tune-cortexa15             = "cortexa15"
-ARMPKGARCH_tune-cortexa15t            = "cortexa15"
-ARMPKGARCH_tune-cortexa15-neon        = "cortexa15"
-ARMPKGARCH_tune-cortexa15t-neon       = "cortexa15"
-ARMPKGARCH_tune-cortexa15-neon-vfpv4  = "cortexa15"
-ARMPKGARCH_tune-cortexa15t-neon-vfpv4 = "cortexa15"
+ARMPKGARCH:tune-cortexa15             = "cortexa15"
+ARMPKGARCH:tune-cortexa15t            = "cortexa15"
+ARMPKGARCH:tune-cortexa15-neon        = "cortexa15"
+ARMPKGARCH:tune-cortexa15t-neon       = "cortexa15"
+ARMPKGARCH:tune-cortexa15-neon-vfpv4  = "cortexa15"
+ARMPKGARCH:tune-cortexa15t-neon-vfpv4 = "cortexa15"
 # mcpu is used so don't use armv7ve as we don't want march
-TUNE_FEATURES_tune-cortexa15             = "arm vfp cortexa15"
-TUNE_FEATURES_tune-cortexa15t            = "${TUNE_FEATURES_tune-cortexa15} thumb"
-TUNE_FEATURES_tune-cortexa15-neon        = "${TUNE_FEATURES_tune-cortexa15} neon"
-TUNE_FEATURES_tune-cortexa15t-neon       = "${TUNE_FEATURES_tune-cortexa15-neon} thumb"
-TUNE_FEATURES_tune-cortexa15-neon-vfpv4  = "${TUNE_FEATURES_tune-cortexa15-neon} vfpv4"
-TUNE_FEATURES_tune-cortexa15t-neon-vfpv4 = "${TUNE_FEATURES_tune-cortexa15-neon-vfpv4} thumb"
-PACKAGE_EXTRA_ARCHS_tune-cortexa15             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve} cortexa15-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa15t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} cortexa15-vfp cortexa15t2-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon} cortexa15-vfp cortexa15-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon} cortexa15-vfp cortexa15-neon cortexa15t2-vfp cortexa15t2-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa15-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon-vfpv4} cortexa15-vfp cortexa15-neon cortexa15-neon-vfpv4"
-PACKAGE_EXTRA_ARCHS_tune-cortexa15t-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon-vfpv4} cortexa15-vfp cortexa15-neon cortexa15-neon-vfpv4 cortexa15t2-vfp cortexa15t2-neon cortexa15t2-neon-vfpv4"
+TUNE_FEATURES:tune-cortexa15             = "arm vfp cortexa15"
+TUNE_FEATURES:tune-cortexa15t            = "${TUNE_FEATURES:tune-cortexa15} thumb"
+TUNE_FEATURES:tune-cortexa15-neon        = "${TUNE_FEATURES:tune-cortexa15} neon"
+TUNE_FEATURES:tune-cortexa15t-neon       = "${TUNE_FEATURES:tune-cortexa15-neon} thumb"
+TUNE_FEATURES:tune-cortexa15-neon-vfpv4  = "${TUNE_FEATURES:tune-cortexa15-neon} vfpv4"
+TUNE_FEATURES:tune-cortexa15t-neon-vfpv4 = "${TUNE_FEATURES:tune-cortexa15-neon-vfpv4} thumb"
+PACKAGE_EXTRA_ARCHS:tune-cortexa15             = "${PACKAGE_EXTRA_ARCHS:tune-armv7ve} cortexa15-vfp"
+PACKAGE_EXTRA_ARCHS:tune-cortexa15t            = "${PACKAGE_EXTRA_ARCHS:tune-armv7vet} cortexa15-vfp cortexa15t2-vfp"
+PACKAGE_EXTRA_ARCHS:tune-cortexa15-neon        = "${PACKAGE_EXTRA_ARCHS:tune-armv7ve-neon} cortexa15-vfp cortexa15-neon"
+PACKAGE_EXTRA_ARCHS:tune-cortexa15t-neon       = "${PACKAGE_EXTRA_ARCHS:tune-armv7vet-neon} cortexa15-vfp cortexa15-neon cortexa15t2-vfp cortexa15t2-neon"
+PACKAGE_EXTRA_ARCHS:tune-cortexa15-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS:tune-armv7ve-neon-vfpv4} cortexa15-vfp cortexa15-neon cortexa15-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS:tune-cortexa15t-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS:tune-armv7vet-neon-vfpv4} cortexa15-vfp cortexa15-neon cortexa15-neon-vfpv4 cortexa15t2-vfp cortexa15t2-neon cortexa15t2-neon-vfpv4"
 
 # HF Tunes
 AVAILTUNES += "cortexa15hf cortexa15thf cortexa15hf-neon cortexa15thf-neon cortexa15hf-neon-vfpv4 cortexa15thf-neon-vfpv4"
-ARMPKGARCH_tune-cortexa15hf             = "cortexa15"
-ARMPKGARCH_tune-cortexa15thf            = "cortexa15"
-ARMPKGARCH_tune-cortexa15hf-neon        = "cortexa15"
-ARMPKGARCH_tune-cortexa15thf-neon       = "cortexa15"
-ARMPKGARCH_tune-cortexa15hf-neon-vfpv4  = "cortexa15"
-ARMPKGARCH_tune-cortexa15thf-neon-vfpv4 = "cortexa15"
+ARMPKGARCH:tune-cortexa15hf             = "cortexa15"
+ARMPKGARCH:tune-cortexa15thf            = "cortexa15"
+ARMPKGARCH:tune-cortexa15hf-neon        = "cortexa15"
+ARMPKGARCH:tune-cortexa15thf-neon       = "cortexa15"
+ARMPKGARCH:tune-cortexa15hf-neon-vfpv4  = "cortexa15"
+ARMPKGARCH:tune-cortexa15thf-neon-vfpv4 = "cortexa15"
 # mcpu is used so don't use armv7ve as we don't want march
-TUNE_FEATURES_tune-cortexa15hf             = "${TUNE_FEATURES_tune-cortexa15} callconvention-hard"
-TUNE_FEATURES_tune-cortexa15thf            = "${TUNE_FEATURES_tune-cortexa15t} callconvention-hard"
-TUNE_FEATURES_tune-cortexa15hf-neon        = "${TUNE_FEATURES_tune-cortexa15-neon} callconvention-hard"
-TUNE_FEATURES_tune-cortexa15thf-neon       = "${TUNE_FEATURES_tune-cortexa15t-neon} callconvention-hard"
-TUNE_FEATURES_tune-cortexa15hf-neon-vfpv4  = "${TUNE_FEATURES_tune-cortexa15-neon-vfpv4} callconvention-hard"
-TUNE_FEATURES_tune-cortexa15thf-neon-vfpv4 = "${TUNE_FEATURES_tune-cortexa15t-neon-vfpv4} callconvention-hard"
-PACKAGE_EXTRA_ARCHS_tune-cortexa15hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf} cortexa15hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa15thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} cortexa15hf-vfp cortexa15t2hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon} cortexa15hf-vfp cortexa15hf-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon} cortexa15hf-vfp cortexa15hf-neon cortexa15t2hf-vfp cortexa15t2hf-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa15hf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon-vfpv4} cortexa15hf-vfp cortexa15hf-neon cortexa15hf-neon-vfpv4"
-PACKAGE_EXTRA_ARCHS_tune-cortexa15thf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon-vfpv4} cortexa15hf-vfp cortexa15hf-neon cortexa15hf-neon-vfpv4 cortexa15t2hf-vfp cortexa15t2hf-neon cortexa15t2hf-neon-vfpv4"
+TUNE_FEATURES:tune-cortexa15hf             = "${TUNE_FEATURES:tune-cortexa15} callconvention-hard"
+TUNE_FEATURES:tune-cortexa15thf            = "${TUNE_FEATURES:tune-cortexa15t} callconvention-hard"
+TUNE_FEATURES:tune-cortexa15hf-neon        = "${TUNE_FEATURES:tune-cortexa15-neon} callconvention-hard"
+TUNE_FEATURES:tune-cortexa15thf-neon       = "${TUNE_FEATURES:tune-cortexa15t-neon} callconvention-hard"
+TUNE_FEATURES:tune-cortexa15hf-neon-vfpv4  = "${TUNE_FEATURES:tune-cortexa15-neon-vfpv4} callconvention-hard"
+TUNE_FEATURES:tune-cortexa15thf-neon-vfpv4 = "${TUNE_FEATURES:tune-cortexa15t-neon-vfpv4} callconvention-hard"
+PACKAGE_EXTRA_ARCHS:tune-cortexa15hf             = "${PACKAGE_EXTRA_ARCHS:tune-armv7vehf} cortexa15hf-vfp"
+PACKAGE_EXTRA_ARCHS:tune-cortexa15thf            = "${PACKAGE_EXTRA_ARCHS:tune-armv7vethf} cortexa15hf-vfp cortexa15t2hf-vfp"
+PACKAGE_EXTRA_ARCHS:tune-cortexa15hf-neon        = "${PACKAGE_EXTRA_ARCHS:tune-armv7vehf-neon} cortexa15hf-vfp cortexa15hf-neon"
+PACKAGE_EXTRA_ARCHS:tune-cortexa15thf-neon       = "${PACKAGE_EXTRA_ARCHS:tune-armv7vethf-neon} cortexa15hf-vfp cortexa15hf-neon cortexa15t2hf-vfp cortexa15t2hf-neon"
+PACKAGE_EXTRA_ARCHS:tune-cortexa15hf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS:tune-armv7vehf-neon-vfpv4} cortexa15hf-vfp cortexa15hf-neon cortexa15hf-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS:tune-cortexa15thf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS:tune-armv7vethf-neon-vfpv4} cortexa15hf-vfp cortexa15hf-neon cortexa15hf-neon-vfpv4 cortexa15t2hf-vfp cortexa15t2hf-neon cortexa15t2hf-neon-vfpv4"
diff --git a/poky/meta/conf/machine/include/tune-cortexa17.inc b/poky/meta/conf/machine/include/tune-cortexa17.inc
index 6a2107f..324673d 100644
--- a/poky/meta/conf/machine/include/tune-cortexa17.inc
+++ b/poky/meta/conf/machine/include/tune-cortexa17.inc
@@ -8,44 +8,44 @@
 
 # Little Endian base configs
 AVAILTUNES += "cortexa17 cortexa17t cortexa17-neon cortexa17t-neon cortexa17-neon-vfpv4 cortexa17t-neon-vfpv4"
-ARMPKGARCH_tune-cortexa17             = "cortexa17"
-ARMPKGARCH_tune-cortexa17t            = "cortexa17"
-ARMPKGARCH_tune-cortexa17-neon        = "cortexa17"
-ARMPKGARCH_tune-cortexa17t-neon       = "cortexa17"
-ARMPKGARCH_tune-cortexa17-neon-vfpv4  = "cortexa17"
-ARMPKGARCH_tune-cortexa17t-neon-vfpv4 = "cortexa17"
+ARMPKGARCH:tune-cortexa17             = "cortexa17"
+ARMPKGARCH:tune-cortexa17t            = "cortexa17"
+ARMPKGARCH:tune-cortexa17-neon        = "cortexa17"
+ARMPKGARCH:tune-cortexa17t-neon       = "cortexa17"
+ARMPKGARCH:tune-cortexa17-neon-vfpv4  = "cortexa17"
+ARMPKGARCH:tune-cortexa17t-neon-vfpv4 = "cortexa17"
 # mcpu is used so don't use armv7ve as we don't want march
-TUNE_FEATURES_tune-cortexa17             = "arm vfp cortexa17"
-TUNE_FEATURES_tune-cortexa17t            = "${TUNE_FEATURES_tune-cortexa17} thumb"
-TUNE_FEATURES_tune-cortexa17-neon        = "${TUNE_FEATURES_tune-cortexa17} neon"
-TUNE_FEATURES_tune-cortexa17t-neon       = "${TUNE_FEATURES_tune-cortexa17-neon} thumb"
-TUNE_FEATURES_tune-cortexa17-neon-vfpv4  = "${TUNE_FEATURES_tune-cortexa17-neon} vfpv4"
-TUNE_FEATURES_tune-cortexa17t-neon-vfpv4 = "${TUNE_FEATURES_tune-cortexa17-neon-vfpv4} thumb"
-PACKAGE_EXTRA_ARCHS_tune-cortexa17             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve} cortexa17-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa17t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} cortexa17-vfp cortexa17t2-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa17-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon} cortexa17-vfp cortexa17-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa17t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon} cortexa17-vfp cortexa17-neon cortexa17t2-vfp cortexa17t2-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa17-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon-vfpv4} cortexa17-vfp cortexa17-neon cortexa17-neon-vfpv4"
-PACKAGE_EXTRA_ARCHS_tune-cortexa17t-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon-vfpv4} cortexa17-vfp cortexa17-neon cortexa17-neon-vfpv4 cortexa17t2-vfp cortexa17t2-neon cortexa17t2-neon-vfpv4"
+TUNE_FEATURES:tune-cortexa17             = "arm vfp cortexa17"
+TUNE_FEATURES:tune-cortexa17t            = "${TUNE_FEATURES:tune-cortexa17} thumb"
+TUNE_FEATURES:tune-cortexa17-neon        = "${TUNE_FEATURES:tune-cortexa17} neon"
+TUNE_FEATURES:tune-cortexa17t-neon       = "${TUNE_FEATURES:tune-cortexa17-neon} thumb"
+TUNE_FEATURES:tune-cortexa17-neon-vfpv4  = "${TUNE_FEATURES:tune-cortexa17-neon} vfpv4"
+TUNE_FEATURES:tune-cortexa17t-neon-vfpv4 = "${TUNE_FEATURES:tune-cortexa17-neon-vfpv4} thumb"
+PACKAGE_EXTRA_ARCHS:tune-cortexa17             = "${PACKAGE_EXTRA_ARCHS:tune-armv7ve} cortexa17-vfp"
+PACKAGE_EXTRA_ARCHS:tune-cortexa17t            = "${PACKAGE_EXTRA_ARCHS:tune-armv7vet} cortexa17-vfp cortexa17t2-vfp"
+PACKAGE_EXTRA_ARCHS:tune-cortexa17-neon        = "${PACKAGE_EXTRA_ARCHS:tune-armv7ve-neon} cortexa17-vfp cortexa17-neon"
+PACKAGE_EXTRA_ARCHS:tune-cortexa17t-neon       = "${PACKAGE_EXTRA_ARCHS:tune-armv7vet-neon} cortexa17-vfp cortexa17-neon cortexa17t2-vfp cortexa17t2-neon"
+PACKAGE_EXTRA_ARCHS:tune-cortexa17-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS:tune-armv7ve-neon-vfpv4} cortexa17-vfp cortexa17-neon cortexa17-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS:tune-cortexa17t-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS:tune-armv7vet-neon-vfpv4} cortexa17-vfp cortexa17-neon cortexa17-neon-vfpv4 cortexa17t2-vfp cortexa17t2-neon cortexa17t2-neon-vfpv4"
 
 # HF Tunes
 AVAILTUNES += "cortexa17hf cortexa17thf cortexa17hf-neon cortexa17thf-neon cortexa17hf-neon-vfpv4 cortexa17thf-neon-vfpv4"
-ARMPKGARCH_tune-cortexa17hf             = "cortexa17"
-ARMPKGARCH_tune-cortexa17thf            = "cortexa17"
-ARMPKGARCH_tune-cortexa17hf-neon        = "cortexa17"
-ARMPKGARCH_tune-cortexa17thf-neon       = "cortexa17"
-ARMPKGARCH_tune-cortexa17hf-neon-vfpv4  = "cortexa17"
-ARMPKGARCH_tune-cortexa17thf-neon-vfpv4 = "cortexa17"
+ARMPKGARCH:tune-cortexa17hf             = "cortexa17"
+ARMPKGARCH:tune-cortexa17thf            = "cortexa17"
+ARMPKGARCH:tune-cortexa17hf-neon        = "cortexa17"
+ARMPKGARCH:tune-cortexa17thf-neon       = "cortexa17"
+ARMPKGARCH:tune-cortexa17hf-neon-vfpv4  = "cortexa17"
+ARMPKGARCH:tune-cortexa17thf-neon-vfpv4 = "cortexa17"
 # mcpu is used so don't use armv7ve as we don't want march
-TUNE_FEATURES_tune-cortexa17hf             = "${TUNE_FEATURES_tune-cortexa17} callconvention-hard"
-TUNE_FEATURES_tune-cortexa17thf            = "${TUNE_FEATURES_tune-cortexa17t} callconvention-hard"
-TUNE_FEATURES_tune-cortexa17hf-neon        = "${TUNE_FEATURES_tune-cortexa17-neon} callconvention-hard"
-TUNE_FEATURES_tune-cortexa17thf-neon       = "${TUNE_FEATURES_tune-cortexa17t-neon} callconvention-hard"
-TUNE_FEATURES_tune-cortexa17hf-neon-vfpv4  = "${TUNE_FEATURES_tune-cortexa17-neon-vfpv4} callconvention-hard"
-TUNE_FEATURES_tune-cortexa17thf-neon-vfpv4 = "${TUNE_FEATURES_tune-cortexa17t-neon-vfpv4} callconvention-hard"
-PACKAGE_EXTRA_ARCHS_tune-cortexa17hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf} cortexa17hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa17thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} cortexa17hf-vfp cortexa17t2hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa17hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon} cortexa17hf-vfp cortexa17hf-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa17thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon} cortexa17hf-vfp cortexa17hf-neon cortexa17t2hf-vfp cortexa17t2hf-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa17hf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon-vfpv4} cortexa17hf-vfp cortexa17hf-neon cortexa17hf-neon-vfpv4"
-PACKAGE_EXTRA_ARCHS_tune-cortexa17thf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon-vfpv4} cortexa17hf-vfp cortexa17hf-neon cortexa17hf-neon-vfpv4 cortexa17t2hf-vfp cortexa17t2hf-neon cortexa17t2hf-neon-vfpv4"
+TUNE_FEATURES:tune-cortexa17hf             = "${TUNE_FEATURES:tune-cortexa17} callconvention-hard"
+TUNE_FEATURES:tune-cortexa17thf            = "${TUNE_FEATURES:tune-cortexa17t} callconvention-hard"
+TUNE_FEATURES:tune-cortexa17hf-neon        = "${TUNE_FEATURES:tune-cortexa17-neon} callconvention-hard"
+TUNE_FEATURES:tune-cortexa17thf-neon       = "${TUNE_FEATURES:tune-cortexa17t-neon} callconvention-hard"
+TUNE_FEATURES:tune-cortexa17hf-neon-vfpv4  = "${TUNE_FEATURES:tune-cortexa17-neon-vfpv4} callconvention-hard"
+TUNE_FEATURES:tune-cortexa17thf-neon-vfpv4 = "${TUNE_FEATURES:tune-cortexa17t-neon-vfpv4} callconvention-hard"
+PACKAGE_EXTRA_ARCHS:tune-cortexa17hf             = "${PACKAGE_EXTRA_ARCHS:tune-armv7vehf} cortexa17hf-vfp"
+PACKAGE_EXTRA_ARCHS:tune-cortexa17thf            = "${PACKAGE_EXTRA_ARCHS:tune-armv7vethf} cortexa17hf-vfp cortexa17t2hf-vfp"
+PACKAGE_EXTRA_ARCHS:tune-cortexa17hf-neon        = "${PACKAGE_EXTRA_ARCHS:tune-armv7vehf-neon} cortexa17hf-vfp cortexa17hf-neon"
+PACKAGE_EXTRA_ARCHS:tune-cortexa17thf-neon       = "${PACKAGE_EXTRA_ARCHS:tune-armv7vethf-neon} cortexa17hf-vfp cortexa17hf-neon cortexa17t2hf-vfp cortexa17t2hf-neon"
+PACKAGE_EXTRA_ARCHS:tune-cortexa17hf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS:tune-armv7vehf-neon-vfpv4} cortexa17hf-vfp cortexa17hf-neon cortexa17hf-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS:tune-cortexa17thf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS:tune-armv7vethf-neon-vfpv4} cortexa17hf-vfp cortexa17hf-neon cortexa17hf-neon-vfpv4 cortexa17t2hf-vfp cortexa17t2hf-neon cortexa17t2hf-neon-vfpv4"
diff --git a/poky/meta/conf/machine/include/tune-cortexa32.inc b/poky/meta/conf/machine/include/tune-cortexa32.inc
index b9ae2b1..c7b01a2 100644
--- a/poky/meta/conf/machine/include/tune-cortexa32.inc
+++ b/poky/meta/conf/machine/include/tune-cortexa32.inc
@@ -7,11 +7,11 @@
 
 # Little Endian base configs
 AVAILTUNES += "cortexa32 cortexa32-crypto"
-ARMPKGARCH_tune-cortexa32             = "cortexa32"
-ARMPKGARCH_tune-cortexa32-crypto      = "cortexa32"
-TUNE_FEATURES_tune-cortexa32          = "armv8a cortexa32 crc callconvention-hard neon"
-TUNE_FEATURES_tune-cortexa32-crypto   = "${TUNE_FEATURES_tune-cortexa32} crypto"
-PACKAGE_EXTRA_ARCHS_tune-cortexa32             = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc} cortexa32 cortexa32hf-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa32-crypto      = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa32 cortexa32hf-neon cortexa32hf-neon-crypto"
-BASE_LIB_tune-cortexa32               = "lib"
-BASE_LIB_tune-cortexa32-crypto        = "lib"
+ARMPKGARCH:tune-cortexa32             = "cortexa32"
+ARMPKGARCH:tune-cortexa32-crypto      = "cortexa32"
+TUNE_FEATURES:tune-cortexa32          = "armv8a cortexa32 crc callconvention-hard neon"
+TUNE_FEATURES:tune-cortexa32-crypto   = "${TUNE_FEATURES:tune-cortexa32} crypto"
+PACKAGE_EXTRA_ARCHS:tune-cortexa32             = "${PACKAGE_EXTRA_ARCHS:tune-armv8a-crc} cortexa32 cortexa32hf-neon"
+PACKAGE_EXTRA_ARCHS:tune-cortexa32-crypto      = "${PACKAGE_EXTRA_ARCHS:tune-armv8a-crc-crypto} cortexa32 cortexa32hf-neon cortexa32hf-neon-crypto"
+BASE_LIB:tune-cortexa32               = "lib"
+BASE_LIB:tune-cortexa32-crypto        = "lib"
diff --git a/poky/meta/conf/machine/include/tune-cortexa35.inc b/poky/meta/conf/machine/include/tune-cortexa35.inc
index cb3ad4c..33afb19 100644
--- a/poky/meta/conf/machine/include/tune-cortexa35.inc
+++ b/poky/meta/conf/machine/include/tune-cortexa35.inc
@@ -7,11 +7,11 @@
 
 # Little Endian base configs
 AVAILTUNES += "cortexa35 cortexa35-crypto"
-ARMPKGARCH_tune-cortexa35             = "cortexa35"
-ARMPKGARCH_tune-cortexa35-crypto      = "cortexa35"
-TUNE_FEATURES_tune-cortexa35          = "${TUNE_FEATURES_tune-armv8a-crc} cortexa35"
-TUNE_FEATURES_tune-cortexa35-crypto   = "${TUNE_FEATURES_tune-cortexa35} crypto"
-PACKAGE_EXTRA_ARCHS_tune-cortexa35             = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc} cortexa35"
-PACKAGE_EXTRA_ARCHS_tune-cortexa35-crypto      = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa35 cortexa35-crypto"
-BASE_LIB_tune-cortexa35               = "lib64"
-BASE_LIB_tune-cortexa35-crypto        = "lib64"
+ARMPKGARCH:tune-cortexa35             = "cortexa35"
+ARMPKGARCH:tune-cortexa35-crypto      = "cortexa35"
+TUNE_FEATURES:tune-cortexa35          = "${TUNE_FEATURES:tune-armv8a-crc} cortexa35"
+TUNE_FEATURES:tune-cortexa35-crypto   = "${TUNE_FEATURES:tune-cortexa35} crypto"
+PACKAGE_EXTRA_ARCHS:tune-cortexa35             = "${PACKAGE_EXTRA_ARCHS:tune-armv8a-crc} cortexa35"
+PACKAGE_EXTRA_ARCHS:tune-cortexa35-crypto      = "${PACKAGE_EXTRA_ARCHS:tune-armv8a-crc-crypto} cortexa35 cortexa35-crypto"
+BASE_LIB:tune-cortexa35               = "lib64"
+BASE_LIB:tune-cortexa35-crypto        = "lib64"
diff --git a/poky/meta/conf/machine/include/tune-cortexa5.inc b/poky/meta/conf/machine/include/tune-cortexa5.inc
index 923b758..817eb16 100644
--- a/poky/meta/conf/machine/include/tune-cortexa5.inc
+++ b/poky/meta/conf/machine/include/tune-cortexa5.inc
@@ -8,44 +8,44 @@
 
 # Little Endian base configs
 AVAILTUNES += "cortexa5 cortexa5t cortexa5-neon cortexa5t-neon cortexa5-neon-vfpv4 cortexa5t-neon-vfpv4"
-ARMPKGARCH_tune-cortexa5             = "cortexa5"
-ARMPKGARCH_tune-cortexa5t            = "cortexa5"
-ARMPKGARCH_tune-cortexa5-neon        = "cortexa5"
-ARMPKGARCH_tune-cortexa5t-neon       = "cortexa5"
-ARMPKGARCH_tune-cortexa5-neon-vfpv4  = "cortexa5"
-ARMPKGARCH_tune-cortexa5t-neon-vfpv4 = "cortexa5"
+ARMPKGARCH:tune-cortexa5             = "cortexa5"
+ARMPKGARCH:tune-cortexa5t            = "cortexa5"
+ARMPKGARCH:tune-cortexa5-neon        = "cortexa5"
+ARMPKGARCH:tune-cortexa5t-neon       = "cortexa5"
+ARMPKGARCH:tune-cortexa5-neon-vfpv4  = "cortexa5"
+ARMPKGARCH:tune-cortexa5t-neon-vfpv4 = "cortexa5"
 # mcpu is used so don't use armv7a as we don't want march
-TUNE_FEATURES_tune-cortexa5             = "arm vfp cortexa5"
-TUNE_FEATURES_tune-cortexa5t            = "${TUNE_FEATURES_tune-cortexa5} thumb"
-TUNE_FEATURES_tune-cortexa5-neon        = "${TUNE_FEATURES_tune-cortexa5} neon"
-TUNE_FEATURES_tune-cortexa5t-neon       = "${TUNE_FEATURES_tune-cortexa5-neon} thumb"
-TUNE_FEATURES_tune-cortexa5-neon-vfpv4  = "${TUNE_FEATURES_tune-cortexa5-neon} vfpv4"
-TUNE_FEATURES_tune-cortexa5t-neon-vfpv4 = "${TUNE_FEATURES_tune-cortexa5-neon-vfpv4} thumb"
-PACKAGE_EXTRA_ARCHS_tune-cortexa5             = "${PACKAGE_EXTRA_ARCHS_tune-armv7a} cortexa5-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa5t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa5-vfp cortexa5t2-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa5-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon} cortexa5-vfp cortexa5-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa5t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa5-vfp cortexa5-neon cortexa5t2-vfp cortexa5t2-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa5-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon-vfpv4} cortexa5-vfp cortexa5-neon cortexa5-neon-vfpv4"
-PACKAGE_EXTRA_ARCHS_tune-cortexa5t-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon-vfpv4} cortexa5-vfp cortexa5-neon cortexa5-neon-vfpv4 cortexa5t2-vfp cortexa5t2-neon cortexa5t2-neon-vfpv4"
+TUNE_FEATURES:tune-cortexa5             = "arm vfp cortexa5"
+TUNE_FEATURES:tune-cortexa5t            = "${TUNE_FEATURES:tune-cortexa5} thumb"
+TUNE_FEATURES:tune-cortexa5-neon        = "${TUNE_FEATURES:tune-cortexa5} neon"
+TUNE_FEATURES:tune-cortexa5t-neon       = "${TUNE_FEATURES:tune-cortexa5-neon} thumb"
+TUNE_FEATURES:tune-cortexa5-neon-vfpv4  = "${TUNE_FEATURES:tune-cortexa5-neon} vfpv4"
+TUNE_FEATURES:tune-cortexa5t-neon-vfpv4 = "${TUNE_FEATURES:tune-cortexa5-neon-vfpv4} thumb"
+PACKAGE_EXTRA_ARCHS:tune-cortexa5             = "${PACKAGE_EXTRA_ARCHS:tune-armv7a} cortexa5-vfp"
+PACKAGE_EXTRA_ARCHS:tune-cortexa5t            = "${PACKAGE_EXTRA_ARCHS:tune-armv7at} cortexa5-vfp cortexa5t2-vfp"
+PACKAGE_EXTRA_ARCHS:tune-cortexa5-neon        = "${PACKAGE_EXTRA_ARCHS:tune-armv7a-neon} cortexa5-vfp cortexa5-neon"
+PACKAGE_EXTRA_ARCHS:tune-cortexa5t-neon       = "${PACKAGE_EXTRA_ARCHS:tune-armv7at-neon} cortexa5-vfp cortexa5-neon cortexa5t2-vfp cortexa5t2-neon"
+PACKAGE_EXTRA_ARCHS:tune-cortexa5-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS:tune-armv7a-neon-vfpv4} cortexa5-vfp cortexa5-neon cortexa5-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS:tune-cortexa5t-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS:tune-armv7at-neon-vfpv4} cortexa5-vfp cortexa5-neon cortexa5-neon-vfpv4 cortexa5t2-vfp cortexa5t2-neon cortexa5t2-neon-vfpv4"
 
 # HF Tunes
 AVAILTUNES += "cortexa5hf cortexa5thf cortexa5hf-neon cortexa5thf-neon cortexa5hf-neon-vfpv4 cortexa5thf-neon-vfpv4"
-ARMPKGARCH_tune-cortexa5hf             = "cortexa5"
-ARMPKGARCH_tune-cortexa5thf            = "cortexa5"
-ARMPKGARCH_tune-cortexa5hf-neon        = "cortexa5"
-ARMPKGARCH_tune-cortexa5thf-neon       = "cortexa5"
-ARMPKGARCH_tune-cortexa5hf-neon-vfpv4  = "cortexa5"
-ARMPKGARCH_tune-cortexa5thf-neon-vfpv4 = "cortexa5"
+ARMPKGARCH:tune-cortexa5hf             = "cortexa5"
+ARMPKGARCH:tune-cortexa5thf            = "cortexa5"
+ARMPKGARCH:tune-cortexa5hf-neon        = "cortexa5"
+ARMPKGARCH:tune-cortexa5thf-neon       = "cortexa5"
+ARMPKGARCH:tune-cortexa5hf-neon-vfpv4  = "cortexa5"
+ARMPKGARCH:tune-cortexa5thf-neon-vfpv4 = "cortexa5"
 # mcpu is used so don't use armv7a as we don't want march
-TUNE_FEATURES_tune-cortexa5hf             = "${TUNE_FEATURES_tune-cortexa5} callconvention-hard"
-TUNE_FEATURES_tune-cortexa5thf            = "${TUNE_FEATURES_tune-cortexa5t} callconvention-hard"
-TUNE_FEATURES_tune-cortexa5hf-neon        = "${TUNE_FEATURES_tune-cortexa5-neon} callconvention-hard"
-TUNE_FEATURES_tune-cortexa5thf-neon       = "${TUNE_FEATURES_tune-cortexa5t-neon} callconvention-hard"
-TUNE_FEATURES_tune-cortexa5hf-neon-vfpv4  = "${TUNE_FEATURES_tune-cortexa5-neon-vfpv4} callconvention-hard"
-TUNE_FEATURES_tune-cortexa5thf-neon-vfpv4 = "${TUNE_FEATURES_tune-cortexa5t-neon-vfpv4} callconvention-hard"
-PACKAGE_EXTRA_ARCHS_tune-cortexa5hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf} cortexa5hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa5thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa5hf-vfp cortexa5t2hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa5hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon} cortexa5hf-vfp cortexa5hf-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa5thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa5hf-vfp cortexa5hf-neon cortexa5t2hf-vfp cortexa5t2hf-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa5hf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon-vfpv4} cortexa5hf-vfp cortexa5hf-neon cortexa5hf-neon-vfpv4"
-PACKAGE_EXTRA_ARCHS_tune-cortexa5thf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon-vfpv4} cortexa5hf-vfp cortexa5hf-neon cortexa5hf-neon-vfpv4 cortexa5t2hf-vfp cortexa5t2hf-neon cortexa5t2hf-neon-vfpv4"
+TUNE_FEATURES:tune-cortexa5hf             = "${TUNE_FEATURES:tune-cortexa5} callconvention-hard"
+TUNE_FEATURES:tune-cortexa5thf            = "${TUNE_FEATURES:tune-cortexa5t} callconvention-hard"
+TUNE_FEATURES:tune-cortexa5hf-neon        = "${TUNE_FEATURES:tune-cortexa5-neon} callconvention-hard"
+TUNE_FEATURES:tune-cortexa5thf-neon       = "${TUNE_FEATURES:tune-cortexa5t-neon} callconvention-hard"
+TUNE_FEATURES:tune-cortexa5hf-neon-vfpv4  = "${TUNE_FEATURES:tune-cortexa5-neon-vfpv4} callconvention-hard"
+TUNE_FEATURES:tune-cortexa5thf-neon-vfpv4 = "${TUNE_FEATURES:tune-cortexa5t-neon-vfpv4} callconvention-hard"
+PACKAGE_EXTRA_ARCHS:tune-cortexa5hf             = "${PACKAGE_EXTRA_ARCHS:tune-armv7ahf} cortexa5hf-vfp"
+PACKAGE_EXTRA_ARCHS:tune-cortexa5thf            = "${PACKAGE_EXTRA_ARCHS:tune-armv7athf} cortexa5hf-vfp cortexa5t2hf-vfp"
+PACKAGE_EXTRA_ARCHS:tune-cortexa5hf-neon        = "${PACKAGE_EXTRA_ARCHS:tune-armv7ahf-neon} cortexa5hf-vfp cortexa5hf-neon"
+PACKAGE_EXTRA_ARCHS:tune-cortexa5thf-neon       = "${PACKAGE_EXTRA_ARCHS:tune-armv7athf-neon} cortexa5hf-vfp cortexa5hf-neon cortexa5t2hf-vfp cortexa5t2hf-neon"
+PACKAGE_EXTRA_ARCHS:tune-cortexa5hf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS:tune-armv7ahf-neon-vfpv4} cortexa5hf-vfp cortexa5hf-neon cortexa5hf-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS:tune-cortexa5thf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS:tune-armv7athf-neon-vfpv4} cortexa5hf-vfp cortexa5hf-neon cortexa5hf-neon-vfpv4 cortexa5t2hf-vfp cortexa5t2hf-neon cortexa5t2hf-neon-vfpv4"
diff --git a/poky/meta/conf/machine/include/tune-cortexa53.inc b/poky/meta/conf/machine/include/tune-cortexa53.inc
index 7f8863a..a534ad3 100644
--- a/poky/meta/conf/machine/include/tune-cortexa53.inc
+++ b/poky/meta/conf/machine/include/tune-cortexa53.inc
@@ -7,11 +7,11 @@
 
 # Little Endian base configs
 AVAILTUNES += "cortexa53 cortexa53-crypto"
-ARMPKGARCH_tune-cortexa53             = "cortexa53"
-ARMPKGARCH_tune-cortexa53-crypto      = "cortexa53-crypto"
-TUNE_FEATURES_tune-cortexa53          = "${TUNE_FEATURES_tune-armv8a-crc} cortexa53"
-TUNE_FEATURES_tune-cortexa53-crypto   = "${TUNE_FEATURES_tune-cortexa53} crypto"
-PACKAGE_EXTRA_ARCHS_tune-cortexa53             = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc} cortexa53"
-PACKAGE_EXTRA_ARCHS_tune-cortexa53-crypto      = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa53 cortexa53-crypto"
-BASE_LIB_tune-cortexa53               = "lib64"
-BASE_LIB_tune-cortexa53-crypto        = "lib64"
+ARMPKGARCH:tune-cortexa53             = "cortexa53"
+ARMPKGARCH:tune-cortexa53-crypto      = "cortexa53-crypto"
+TUNE_FEATURES:tune-cortexa53          = "${TUNE_FEATURES:tune-armv8a-crc} cortexa53"
+TUNE_FEATURES:tune-cortexa53-crypto   = "${TUNE_FEATURES:tune-cortexa53} crypto"
+PACKAGE_EXTRA_ARCHS:tune-cortexa53             = "${PACKAGE_EXTRA_ARCHS:tune-armv8a-crc} cortexa53"
+PACKAGE_EXTRA_ARCHS:tune-cortexa53-crypto      = "${PACKAGE_EXTRA_ARCHS:tune-armv8a-crc-crypto} cortexa53 cortexa53-crypto"
+BASE_LIB:tune-cortexa53               = "lib64"
+BASE_LIB:tune-cortexa53-crypto        = "lib64"
diff --git a/poky/meta/conf/machine/include/tune-cortexa55.inc b/poky/meta/conf/machine/include/tune-cortexa55.inc
index e962973..d130b4b 100644
--- a/poky/meta/conf/machine/include/tune-cortexa55.inc
+++ b/poky/meta/conf/machine/include/tune-cortexa55.inc
@@ -7,7 +7,7 @@
 
 # Little Endian base configs
 AVAILTUNES += "cortexa55"
-ARMPKGARCH_tune-cortexa55             = "cortexa55"
-TUNE_FEATURES_tune-cortexa55          = "${TUNE_FEATURES_tune-armv8-2a-crypto} cortexa55"
-PACKAGE_EXTRA_ARCHS_tune-cortexa55    = "${PACKAGE_EXTRA_ARCHS_tune-armv8-2a-crypto} cortexa55"
-BASE_LIB_tune-cortexa55               = "lib64"
+ARMPKGARCH:tune-cortexa55             = "cortexa55"
+TUNE_FEATURES:tune-cortexa55          = "${TUNE_FEATURES:tune-armv8-2a-crypto} cortexa55"
+PACKAGE_EXTRA_ARCHS:tune-cortexa55    = "${PACKAGE_EXTRA_ARCHS:tune-armv8-2a-crypto} cortexa55"
+BASE_LIB:tune-cortexa55               = "lib64"
diff --git a/poky/meta/conf/machine/include/tune-cortexa57-cortexa53.inc b/poky/meta/conf/machine/include/tune-cortexa57-cortexa53.inc
index d329d61..7de671a 100644
--- a/poky/meta/conf/machine/include/tune-cortexa57-cortexa53.inc
+++ b/poky/meta/conf/machine/include/tune-cortexa57-cortexa53.inc
@@ -8,7 +8,7 @@
 
 # Little Endian base configs
 AVAILTUNES += "cortexa57-cortexa53"
-ARMPKGARCH_tune-cortexa57-cortexa53 = "cortexa57-cortexa53"
-TUNE_FEATURES_tune-cortexa57-cortexa53 = "${TUNE_FEATURES_tune-armv8a-crc} cortexa57-cortexa53"
-PACKAGE_EXTRA_ARCHS_tune-cortexa57-cortexa53 = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc} cortexa57-cortexa53"
-BASE_LIB_tune-cortexa57-cortexa53 = "lib64"
+ARMPKGARCH:tune-cortexa57-cortexa53 = "cortexa57-cortexa53"
+TUNE_FEATURES:tune-cortexa57-cortexa53 = "${TUNE_FEATURES:tune-armv8a-crc} cortexa57-cortexa53"
+PACKAGE_EXTRA_ARCHS:tune-cortexa57-cortexa53 = "${PACKAGE_EXTRA_ARCHS:tune-armv8a-crc} cortexa57-cortexa53"
+BASE_LIB:tune-cortexa57-cortexa53 = "lib64"
diff --git a/poky/meta/conf/machine/include/tune-cortexa57.inc b/poky/meta/conf/machine/include/tune-cortexa57.inc
index 91fa668..37650d8 100644
--- a/poky/meta/conf/machine/include/tune-cortexa57.inc
+++ b/poky/meta/conf/machine/include/tune-cortexa57.inc
@@ -7,11 +7,11 @@
 
 # Little Endian base configs
 AVAILTUNES += "cortexa57 cortexa57-crypto"
-ARMPKGARCH_tune-cortexa57             = "cortexa57"
-ARMPKGARCH_tune-cortexa57-crypto      = "cortexa57-crypto"
-TUNE_FEATURES_tune-cortexa57          = "${TUNE_FEATURES_tune-armv8a-crc} cortexa57"
-TUNE_FEATURES_tune-cortexa57-crypto   = "${TUNE_FEATURES_tune-cortexa57} crypto"
-PACKAGE_EXTRA_ARCHS_tune-cortexa57             = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc} cortexa57"
-PACKAGE_EXTRA_ARCHS_tune-cortexa57-crypto      = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa57 cortexa57-crypto"
-BASE_LIB_tune-cortexa57               = "lib64"
-BASE_LIB_tune-cortexa57-crypto        = "lib64"
+ARMPKGARCH:tune-cortexa57             = "cortexa57"
+ARMPKGARCH:tune-cortexa57-crypto      = "cortexa57-crypto"
+TUNE_FEATURES:tune-cortexa57          = "${TUNE_FEATURES:tune-armv8a-crc} cortexa57"
+TUNE_FEATURES:tune-cortexa57-crypto   = "${TUNE_FEATURES:tune-cortexa57} crypto"
+PACKAGE_EXTRA_ARCHS:tune-cortexa57             = "${PACKAGE_EXTRA_ARCHS:tune-armv8a-crc} cortexa57"
+PACKAGE_EXTRA_ARCHS:tune-cortexa57-crypto      = "${PACKAGE_EXTRA_ARCHS:tune-armv8a-crc-crypto} cortexa57 cortexa57-crypto"
+BASE_LIB:tune-cortexa57               = "lib64"
+BASE_LIB:tune-cortexa57-crypto        = "lib64"
diff --git a/poky/meta/conf/machine/include/tune-cortexa7.inc b/poky/meta/conf/machine/include/tune-cortexa7.inc
index 05081dc..5384369 100644
--- a/poky/meta/conf/machine/include/tune-cortexa7.inc
+++ b/poky/meta/conf/machine/include/tune-cortexa7.inc
@@ -8,44 +8,44 @@
 
 # Little Endian base configs
 AVAILTUNES += "cortexa7 cortexa7t cortexa7-neon cortexa7t-neon cortexa7-neon-vfpv4 cortexa7t-neon-vfpv4"
-ARMPKGARCH_tune-cortexa7             = "cortexa7"
-ARMPKGARCH_tune-cortexa7t            = "cortexa7"
-ARMPKGARCH_tune-cortexa7-neon        = "cortexa7"
-ARMPKGARCH_tune-cortexa7t-neon       = "cortexa7"
-ARMPKGARCH_tune-cortexa7-neon-vfpv4  = "cortexa7"
-ARMPKGARCH_tune-cortexa7t-neon-vfpv4 = "cortexa7"
+ARMPKGARCH:tune-cortexa7             = "cortexa7"
+ARMPKGARCH:tune-cortexa7t            = "cortexa7"
+ARMPKGARCH:tune-cortexa7-neon        = "cortexa7"
+ARMPKGARCH:tune-cortexa7t-neon       = "cortexa7"
+ARMPKGARCH:tune-cortexa7-neon-vfpv4  = "cortexa7"
+ARMPKGARCH:tune-cortexa7t-neon-vfpv4 = "cortexa7"
 # mcpu is used so don't use armv7ve as we don't want march
-TUNE_FEATURES_tune-cortexa7             = "arm vfp cortexa7"
-TUNE_FEATURES_tune-cortexa7t            = "${TUNE_FEATURES_tune-cortexa7} thumb"
-TUNE_FEATURES_tune-cortexa7-neon        = "${TUNE_FEATURES_tune-cortexa7} neon"
-TUNE_FEATURES_tune-cortexa7t-neon       = "${TUNE_FEATURES_tune-cortexa7-neon} thumb"
-TUNE_FEATURES_tune-cortexa7-neon-vfpv4  = "${TUNE_FEATURES_tune-cortexa7-neon} vfpv4"
-TUNE_FEATURES_tune-cortexa7t-neon-vfpv4 = "${TUNE_FEATURES_tune-cortexa7-neon-vfpv4} thumb"
-PACKAGE_EXTRA_ARCHS_tune-cortexa7             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve} cortexa7-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa7t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet} cortexa7-vfp cortexa7t2-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon} cortexa7-vfp cortexa7-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon} cortexa7-vfp cortexa7-neon cortexa7t2-vfp cortexa7t2-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa7-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7ve-neon-vfpv4} cortexa7-vfp cortexa7-neon cortexa7-neon-vfpv4"
-PACKAGE_EXTRA_ARCHS_tune-cortexa7t-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vet-neon-vfpv4} cortexa7-vfp cortexa7-neon cortexa7-neon-vfpv4 cortexa7t2-vfp cortexa7t2-neon cortexa7t2-neon-vfpv4"
+TUNE_FEATURES:tune-cortexa7             = "arm vfp cortexa7"
+TUNE_FEATURES:tune-cortexa7t            = "${TUNE_FEATURES:tune-cortexa7} thumb"
+TUNE_FEATURES:tune-cortexa7-neon        = "${TUNE_FEATURES:tune-cortexa7} neon"
+TUNE_FEATURES:tune-cortexa7t-neon       = "${TUNE_FEATURES:tune-cortexa7-neon} thumb"
+TUNE_FEATURES:tune-cortexa7-neon-vfpv4  = "${TUNE_FEATURES:tune-cortexa7-neon} vfpv4"
+TUNE_FEATURES:tune-cortexa7t-neon-vfpv4 = "${TUNE_FEATURES:tune-cortexa7-neon-vfpv4} thumb"
+PACKAGE_EXTRA_ARCHS:tune-cortexa7             = "${PACKAGE_EXTRA_ARCHS:tune-armv7ve} cortexa7-vfp"
+PACKAGE_EXTRA_ARCHS:tune-cortexa7t            = "${PACKAGE_EXTRA_ARCHS:tune-armv7vet} cortexa7-vfp cortexa7t2-vfp"
+PACKAGE_EXTRA_ARCHS:tune-cortexa7-neon        = "${PACKAGE_EXTRA_ARCHS:tune-armv7ve-neon} cortexa7-vfp cortexa7-neon"
+PACKAGE_EXTRA_ARCHS:tune-cortexa7t-neon       = "${PACKAGE_EXTRA_ARCHS:tune-armv7vet-neon} cortexa7-vfp cortexa7-neon cortexa7t2-vfp cortexa7t2-neon"
+PACKAGE_EXTRA_ARCHS:tune-cortexa7-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS:tune-armv7ve-neon-vfpv4} cortexa7-vfp cortexa7-neon cortexa7-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS:tune-cortexa7t-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS:tune-armv7vet-neon-vfpv4} cortexa7-vfp cortexa7-neon cortexa7-neon-vfpv4 cortexa7t2-vfp cortexa7t2-neon cortexa7t2-neon-vfpv4"
 
 # HF Tunes
 AVAILTUNES += "cortexa7hf cortexa7thf cortexa7hf-neon cortexa7thf-neon cortexa7hf-neon-vfpv4 cortexa7thf-neon-vfpv4"
-ARMPKGARCH_tune-cortexa7hf             = "cortexa7"
-ARMPKGARCH_tune-cortexa7thf            = "cortexa7"
-ARMPKGARCH_tune-cortexa7hf-neon        = "cortexa7"
-ARMPKGARCH_tune-cortexa7thf-neon       = "cortexa7"
-ARMPKGARCH_tune-cortexa7hf-neon-vfpv4  = "cortexa7"
-ARMPKGARCH_tune-cortexa7thf-neon-vfpv4 = "cortexa7"
+ARMPKGARCH:tune-cortexa7hf             = "cortexa7"
+ARMPKGARCH:tune-cortexa7thf            = "cortexa7"
+ARMPKGARCH:tune-cortexa7hf-neon        = "cortexa7"
+ARMPKGARCH:tune-cortexa7thf-neon       = "cortexa7"
+ARMPKGARCH:tune-cortexa7hf-neon-vfpv4  = "cortexa7"
+ARMPKGARCH:tune-cortexa7thf-neon-vfpv4 = "cortexa7"
 # mcpu is used so don't use armv7ve as we don't want march
-TUNE_FEATURES_tune-cortexa7hf             = "${TUNE_FEATURES_tune-cortexa7} callconvention-hard"
-TUNE_FEATURES_tune-cortexa7thf            = "${TUNE_FEATURES_tune-cortexa7t} callconvention-hard"
-TUNE_FEATURES_tune-cortexa7hf-neon        = "${TUNE_FEATURES_tune-cortexa7-neon} callconvention-hard"
-TUNE_FEATURES_tune-cortexa7thf-neon       = "${TUNE_FEATURES_tune-cortexa7t-neon} callconvention-hard"
-TUNE_FEATURES_tune-cortexa7hf-neon-vfpv4  = "${TUNE_FEATURES_tune-cortexa7-neon-vfpv4} callconvention-hard"
-TUNE_FEATURES_tune-cortexa7thf-neon-vfpv4 = "${TUNE_FEATURES_tune-cortexa7t-neon-vfpv4} callconvention-hard"
-PACKAGE_EXTRA_ARCHS_tune-cortexa7hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf} cortexa7hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa7thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf} cortexa7hf-vfp cortexa7t2hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon} cortexa7hf-vfp cortexa7hf-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon} cortexa7hf-vfp cortexa7hf-neon cortexa7t2hf-vfp cortexa7t2hf-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa7hf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS_tune-armv7vehf-neon-vfpv4} cortexa7hf-vfp cortexa7hf-neon cortexa7hf-neon-vfpv4"
-PACKAGE_EXTRA_ARCHS_tune-cortexa7thf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS_tune-armv7vethf-neon-vfpv4} cortexa7hf-vfp cortexa7hf-neon cortexa7hf-neon-vfpv4 cortexa7t2hf-vfp cortexa7t2hf-neon cortexa7t2hf-neon-vfpv4"
+TUNE_FEATURES:tune-cortexa7hf             = "${TUNE_FEATURES:tune-cortexa7} callconvention-hard"
+TUNE_FEATURES:tune-cortexa7thf            = "${TUNE_FEATURES:tune-cortexa7t} callconvention-hard"
+TUNE_FEATURES:tune-cortexa7hf-neon        = "${TUNE_FEATURES:tune-cortexa7-neon} callconvention-hard"
+TUNE_FEATURES:tune-cortexa7thf-neon       = "${TUNE_FEATURES:tune-cortexa7t-neon} callconvention-hard"
+TUNE_FEATURES:tune-cortexa7hf-neon-vfpv4  = "${TUNE_FEATURES:tune-cortexa7-neon-vfpv4} callconvention-hard"
+TUNE_FEATURES:tune-cortexa7thf-neon-vfpv4 = "${TUNE_FEATURES:tune-cortexa7t-neon-vfpv4} callconvention-hard"
+PACKAGE_EXTRA_ARCHS:tune-cortexa7hf             = "${PACKAGE_EXTRA_ARCHS:tune-armv7vehf} cortexa7hf-vfp"
+PACKAGE_EXTRA_ARCHS:tune-cortexa7thf            = "${PACKAGE_EXTRA_ARCHS:tune-armv7vethf} cortexa7hf-vfp cortexa7t2hf-vfp"
+PACKAGE_EXTRA_ARCHS:tune-cortexa7hf-neon        = "${PACKAGE_EXTRA_ARCHS:tune-armv7vehf-neon} cortexa7hf-vfp cortexa7hf-neon"
+PACKAGE_EXTRA_ARCHS:tune-cortexa7thf-neon       = "${PACKAGE_EXTRA_ARCHS:tune-armv7vethf-neon} cortexa7hf-vfp cortexa7hf-neon cortexa7t2hf-vfp cortexa7t2hf-neon"
+PACKAGE_EXTRA_ARCHS:tune-cortexa7hf-neon-vfpv4  = "${PACKAGE_EXTRA_ARCHS:tune-armv7vehf-neon-vfpv4} cortexa7hf-vfp cortexa7hf-neon cortexa7hf-neon-vfpv4"
+PACKAGE_EXTRA_ARCHS:tune-cortexa7thf-neon-vfpv4 = "${PACKAGE_EXTRA_ARCHS:tune-armv7vethf-neon-vfpv4} cortexa7hf-vfp cortexa7hf-neon cortexa7hf-neon-vfpv4 cortexa7t2hf-vfp cortexa7t2hf-neon cortexa7t2hf-neon-vfpv4"
diff --git a/poky/meta/conf/machine/include/tune-cortexa72-cortexa53.inc b/poky/meta/conf/machine/include/tune-cortexa72-cortexa53.inc
index 98e8eba..a77ef59 100644
--- a/poky/meta/conf/machine/include/tune-cortexa72-cortexa53.inc
+++ b/poky/meta/conf/machine/include/tune-cortexa72-cortexa53.inc
@@ -8,12 +8,12 @@
 
 # cortexa72.cortexa53 implies crc support
 AVAILTUNES += "cortexa72-cortexa53 cortexa72-cortexa53-crypto"
-ARMPKGARCH_tune-cortexa72-cortexa53                  = "cortexa72-cortexa53"
-ARMPKGARCH_tune-cortexa72-cortexa53-crypto           = "cortexa72-cortexa53-crypto"
-TUNE_FEATURES_tune-cortexa72-cortexa53               = "${TUNE_FEATURES_tune-armv8a-crc} cortexa72-cortexa53"
-TUNE_FEATURES_tune-cortexa72-cortexa53-crypto        = "${TUNE_FEATURES_tune-cortexa72-cortexa53} crypto"
-PACKAGE_EXTRA_ARCHS_tune-cortexa72-cortexa53         = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc}        cortexa72-cortexa53"
-PACKAGE_EXTRA_ARCHS_tune-cortexa72-cortexa53-crypto  = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa72-cortexa53 cortexa72-cortexa53-crypto"
-BASE_LIB_tune-cortexa72-cortexa53                    = "lib64"
-BASE_LIB_tune-cortexa72-cortexa53-crypto             = "lib64"
+ARMPKGARCH:tune-cortexa72-cortexa53                  = "cortexa72-cortexa53"
+ARMPKGARCH:tune-cortexa72-cortexa53-crypto           = "cortexa72-cortexa53-crypto"
+TUNE_FEATURES:tune-cortexa72-cortexa53               = "${TUNE_FEATURES:tune-armv8a-crc} cortexa72-cortexa53"
+TUNE_FEATURES:tune-cortexa72-cortexa53-crypto        = "${TUNE_FEATURES:tune-cortexa72-cortexa53} crypto"
+PACKAGE_EXTRA_ARCHS:tune-cortexa72-cortexa53         = "${PACKAGE_EXTRA_ARCHS:tune-armv8a-crc}        cortexa72-cortexa53"
+PACKAGE_EXTRA_ARCHS:tune-cortexa72-cortexa53-crypto  = "${PACKAGE_EXTRA_ARCHS:tune-armv8a-crc-crypto} cortexa72-cortexa53 cortexa72-cortexa53-crypto"
+BASE_LIB:tune-cortexa72-cortexa53                    = "lib64"
+BASE_LIB:tune-cortexa72-cortexa53-crypto             = "lib64"
 
diff --git a/poky/meta/conf/machine/include/tune-cortexa72.inc b/poky/meta/conf/machine/include/tune-cortexa72.inc
index b3f68ab..2a510bd 100644
--- a/poky/meta/conf/machine/include/tune-cortexa72.inc
+++ b/poky/meta/conf/machine/include/tune-cortexa72.inc
@@ -7,7 +7,7 @@
 
 # Little Endian base configs
 AVAILTUNES += "cortexa72"
-ARMPKGARCH_tune-cortexa72             = "cortexa72"
-TUNE_FEATURES_tune-cortexa72          = "${TUNE_FEATURES_tune-armv8a-crc-crypto} cortexa72"
-PACKAGE_EXTRA_ARCHS_tune-cortexa72    = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa72"
-BASE_LIB_tune-cortexa72               = "lib64"
+ARMPKGARCH:tune-cortexa72             = "cortexa72"
+TUNE_FEATURES:tune-cortexa72          = "${TUNE_FEATURES:tune-armv8a-crc-crypto} cortexa72"
+PACKAGE_EXTRA_ARCHS:tune-cortexa72    = "${PACKAGE_EXTRA_ARCHS:tune-armv8a-crc-crypto} cortexa72"
+BASE_LIB:tune-cortexa72               = "lib64"
diff --git a/poky/meta/conf/machine/include/tune-cortexa73-cortexa53.inc b/poky/meta/conf/machine/include/tune-cortexa73-cortexa53.inc
index 3750f07..9cebffd 100644
--- a/poky/meta/conf/machine/include/tune-cortexa73-cortexa53.inc
+++ b/poky/meta/conf/machine/include/tune-cortexa73-cortexa53.inc
@@ -8,12 +8,12 @@
 
 # cortexa73.cortexa53 implies crc support
 AVAILTUNES += "cortexa73-cortexa53 cortexa73-cortexa53-crypto"
-ARMPKGARCH_tune-cortexa73-cortexa53                  = "cortexa73-cortexa53"
-ARMPKGARCH_tune-cortexa73-cortexa53-crypto           = "cortexa73-cortexa53-crypto"
-TUNE_FEATURES_tune-cortexa73-cortexa53               = "${TUNE_FEATURES_tune-armv8a-crc} cortexa73-cortexa53"
-TUNE_FEATURES_tune-cortexa73-cortexa53-crypto        = "${TUNE_FEATURES_tune-cortexa73-cortexa53} crypto"
-PACKAGE_EXTRA_ARCHS_tune-cortexa73-cortexa53         = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc}        cortexa73-cortexa53"
-PACKAGE_EXTRA_ARCHS_tune-cortexa73-cortexa53-crypto  = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa73-cortexa53 cortexa73-cortexa53-crypto"
-BASE_LIB_tune-cortexa73-cortexa53                    = "lib64"
-BASE_LIB_tune-cortexa73-cortexa53-crypto             = "lib64"
+ARMPKGARCH:tune-cortexa73-cortexa53                  = "cortexa73-cortexa53"
+ARMPKGARCH:tune-cortexa73-cortexa53-crypto           = "cortexa73-cortexa53-crypto"
+TUNE_FEATURES:tune-cortexa73-cortexa53               = "${TUNE_FEATURES:tune-armv8a-crc} cortexa73-cortexa53"
+TUNE_FEATURES:tune-cortexa73-cortexa53-crypto        = "${TUNE_FEATURES:tune-cortexa73-cortexa53} crypto"
+PACKAGE_EXTRA_ARCHS:tune-cortexa73-cortexa53         = "${PACKAGE_EXTRA_ARCHS:tune-armv8a-crc}        cortexa73-cortexa53"
+PACKAGE_EXTRA_ARCHS:tune-cortexa73-cortexa53-crypto  = "${PACKAGE_EXTRA_ARCHS:tune-armv8a-crc-crypto} cortexa73-cortexa53 cortexa73-cortexa53-crypto"
+BASE_LIB:tune-cortexa73-cortexa53                    = "lib64"
+BASE_LIB:tune-cortexa73-cortexa53-crypto             = "lib64"
 
diff --git a/poky/meta/conf/machine/include/tune-cortexa8.inc b/poky/meta/conf/machine/include/tune-cortexa8.inc
index f27bfb8..e27002a 100644
--- a/poky/meta/conf/machine/include/tune-cortexa8.inc
+++ b/poky/meta/conf/machine/include/tune-cortexa8.inc
@@ -8,32 +8,32 @@
 
 # Little Endian base configs
 AVAILTUNES += "cortexa8 cortexa8t cortexa8-neon cortexa8t-neon"
-ARMPKGARCH_tune-cortexa8             = "cortexa8"
-ARMPKGARCH_tune-cortexa8t            = "cortexa8"
-ARMPKGARCH_tune-cortexa8-neon        = "cortexa8"
-ARMPKGARCH_tune-cortexa8t-neon       = "cortexa8"
+ARMPKGARCH:tune-cortexa8             = "cortexa8"
+ARMPKGARCH:tune-cortexa8t            = "cortexa8"
+ARMPKGARCH:tune-cortexa8-neon        = "cortexa8"
+ARMPKGARCH:tune-cortexa8t-neon       = "cortexa8"
 # mcpu is used so don't use armv7a as we don't want march
-TUNE_FEATURES_tune-cortexa8             = "arm vfp cortexa8"
-TUNE_FEATURES_tune-cortexa8t            = "${TUNE_FEATURES_tune-cortexa8} thumb"
-TUNE_FEATURES_tune-cortexa8-neon        = "${TUNE_FEATURES_tune-cortexa8} neon"
-TUNE_FEATURES_tune-cortexa8t-neon       = "${TUNE_FEATURES_tune-cortexa8-neon} thumb"
-PACKAGE_EXTRA_ARCHS_tune-cortexa8             = "${PACKAGE_EXTRA_ARCHS_tune-armv7a} cortexa8-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa8t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa8-vfp cortexa8t2-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa8-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon} cortexa8-vfp cortexa8-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa8t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa8-vfp cortexa8-neon cortexa8t2-vfp cortexa8t2-neon"
+TUNE_FEATURES:tune-cortexa8             = "arm vfp cortexa8"
+TUNE_FEATURES:tune-cortexa8t            = "${TUNE_FEATURES:tune-cortexa8} thumb"
+TUNE_FEATURES:tune-cortexa8-neon        = "${TUNE_FEATURES:tune-cortexa8} neon"
+TUNE_FEATURES:tune-cortexa8t-neon       = "${TUNE_FEATURES:tune-cortexa8-neon} thumb"
+PACKAGE_EXTRA_ARCHS:tune-cortexa8             = "${PACKAGE_EXTRA_ARCHS:tune-armv7a} cortexa8-vfp"
+PACKAGE_EXTRA_ARCHS:tune-cortexa8t            = "${PACKAGE_EXTRA_ARCHS:tune-armv7at} cortexa8-vfp cortexa8t2-vfp"
+PACKAGE_EXTRA_ARCHS:tune-cortexa8-neon        = "${PACKAGE_EXTRA_ARCHS:tune-armv7a-neon} cortexa8-vfp cortexa8-neon"
+PACKAGE_EXTRA_ARCHS:tune-cortexa8t-neon       = "${PACKAGE_EXTRA_ARCHS:tune-armv7at-neon} cortexa8-vfp cortexa8-neon cortexa8t2-vfp cortexa8t2-neon"
 
 # HF Tunes
 AVAILTUNES += "cortexa8hf cortexa8thf cortexa8hf-neon cortexa8thf-neon"
-ARMPKGARCH_tune-cortexa8hf             = "cortexa8"
-ARMPKGARCH_tune-cortexa8thf            = "cortexa8"
-ARMPKGARCH_tune-cortexa8hf-neon        = "cortexa8"
-ARMPKGARCH_tune-cortexa8thf-neon       = "cortexa8"
+ARMPKGARCH:tune-cortexa8hf             = "cortexa8"
+ARMPKGARCH:tune-cortexa8thf            = "cortexa8"
+ARMPKGARCH:tune-cortexa8hf-neon        = "cortexa8"
+ARMPKGARCH:tune-cortexa8thf-neon       = "cortexa8"
 # mcpu is used so don't use armv7a as we don't want march
-TUNE_FEATURES_tune-cortexa8hf             = "${TUNE_FEATURES_tune-cortexa8} callconvention-hard"
-TUNE_FEATURES_tune-cortexa8thf            = "${TUNE_FEATURES_tune-cortexa8t} callconvention-hard"
-TUNE_FEATURES_tune-cortexa8hf-neon        = "${TUNE_FEATURES_tune-cortexa8-neon} callconvention-hard"
-TUNE_FEATURES_tune-cortexa8thf-neon       = "${TUNE_FEATURES_tune-cortexa8t-neon} callconvention-hard"
-PACKAGE_EXTRA_ARCHS_tune-cortexa8hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf} cortexa8hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa8thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa8hf-vfp cortexa8t2hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa8hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon} cortexa8hf-vfp cortexa8hf-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa8thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa8hf-vfp cortexa8hf-neon cortexa8t2hf-vfp cortexa8t2hf-neon"
+TUNE_FEATURES:tune-cortexa8hf             = "${TUNE_FEATURES:tune-cortexa8} callconvention-hard"
+TUNE_FEATURES:tune-cortexa8thf            = "${TUNE_FEATURES:tune-cortexa8t} callconvention-hard"
+TUNE_FEATURES:tune-cortexa8hf-neon        = "${TUNE_FEATURES:tune-cortexa8-neon} callconvention-hard"
+TUNE_FEATURES:tune-cortexa8thf-neon       = "${TUNE_FEATURES:tune-cortexa8t-neon} callconvention-hard"
+PACKAGE_EXTRA_ARCHS:tune-cortexa8hf             = "${PACKAGE_EXTRA_ARCHS:tune-armv7ahf} cortexa8hf-vfp"
+PACKAGE_EXTRA_ARCHS:tune-cortexa8thf            = "${PACKAGE_EXTRA_ARCHS:tune-armv7athf} cortexa8hf-vfp cortexa8t2hf-vfp"
+PACKAGE_EXTRA_ARCHS:tune-cortexa8hf-neon        = "${PACKAGE_EXTRA_ARCHS:tune-armv7ahf-neon} cortexa8hf-vfp cortexa8hf-neon"
+PACKAGE_EXTRA_ARCHS:tune-cortexa8thf-neon       = "${PACKAGE_EXTRA_ARCHS:tune-armv7athf-neon} cortexa8hf-vfp cortexa8hf-neon cortexa8t2hf-vfp cortexa8t2hf-neon"
diff --git a/poky/meta/conf/machine/include/tune-cortexa9.inc b/poky/meta/conf/machine/include/tune-cortexa9.inc
index 0eb8f3b..d046a11 100644
--- a/poky/meta/conf/machine/include/tune-cortexa9.inc
+++ b/poky/meta/conf/machine/include/tune-cortexa9.inc
@@ -8,48 +8,48 @@
 
 # Little Endian base configs
 AVAILTUNES += "cortexa9 cortexa9t cortexa9-neon cortexa9t-neon"
-ARMPKGARCH_tune-cortexa9             = "cortexa9"
-ARMPKGARCH_tune-cortexa9t            = "cortexa9"
-ARMPKGARCH_tune-cortexa9-neon        = "cortexa9"
-ARMPKGARCH_tune-cortexa9t-neon       = "cortexa9"
+ARMPKGARCH:tune-cortexa9             = "cortexa9"
+ARMPKGARCH:tune-cortexa9t            = "cortexa9"
+ARMPKGARCH:tune-cortexa9-neon        = "cortexa9"
+ARMPKGARCH:tune-cortexa9t-neon       = "cortexa9"
 # mcpu is used so don't use armv7a as we don't want march
-TUNE_FEATURES_tune-cortexa9             = "arm vfp cortexa9"
-TUNE_FEATURES_tune-cortexa9t            = "${TUNE_FEATURES_tune-cortexa9} thumb"
-TUNE_FEATURES_tune-cortexa9-neon        = "${TUNE_FEATURES_tune-cortexa9} neon"
-TUNE_FEATURES_tune-cortexa9t-neon       = "${TUNE_FEATURES_tune-cortexa9-neon} thumb"
-PACKAGE_EXTRA_ARCHS_tune-cortexa9             = "${PACKAGE_EXTRA_ARCHS_tune-armv7a} cortexa9-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa9t            = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortexa9-vfp cortexa9t2-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa9-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon} cortexa9-vfp cortexa9-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa9t-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortexa9-vfp cortexa9-neon cortexa9t2-vfp cortexa9t2-neon"
+TUNE_FEATURES:tune-cortexa9             = "arm vfp cortexa9"
+TUNE_FEATURES:tune-cortexa9t            = "${TUNE_FEATURES:tune-cortexa9} thumb"
+TUNE_FEATURES:tune-cortexa9-neon        = "${TUNE_FEATURES:tune-cortexa9} neon"
+TUNE_FEATURES:tune-cortexa9t-neon       = "${TUNE_FEATURES:tune-cortexa9-neon} thumb"
+PACKAGE_EXTRA_ARCHS:tune-cortexa9             = "${PACKAGE_EXTRA_ARCHS:tune-armv7a} cortexa9-vfp"
+PACKAGE_EXTRA_ARCHS:tune-cortexa9t            = "${PACKAGE_EXTRA_ARCHS:tune-armv7at} cortexa9-vfp cortexa9t2-vfp"
+PACKAGE_EXTRA_ARCHS:tune-cortexa9-neon        = "${PACKAGE_EXTRA_ARCHS:tune-armv7a-neon} cortexa9-vfp cortexa9-neon"
+PACKAGE_EXTRA_ARCHS:tune-cortexa9t-neon       = "${PACKAGE_EXTRA_ARCHS:tune-armv7at-neon} cortexa9-vfp cortexa9-neon cortexa9t2-vfp cortexa9t2-neon"
 
 # HF Tunes
 AVAILTUNES += "cortexa9hf cortexa9thf cortexa9hf-neon cortexa9thf-neon"
-ARMPKGARCH_tune-cortexa9hf             = "cortexa9"
-ARMPKGARCH_tune-cortexa9thf            = "cortexa9"
-ARMPKGARCH_tune-cortexa9hf-neon        = "cortexa9"
-ARMPKGARCH_tune-cortexa9thf-neon       = "cortexa9"
+ARMPKGARCH:tune-cortexa9hf             = "cortexa9"
+ARMPKGARCH:tune-cortexa9thf            = "cortexa9"
+ARMPKGARCH:tune-cortexa9hf-neon        = "cortexa9"
+ARMPKGARCH:tune-cortexa9thf-neon       = "cortexa9"
 # mcpu is used so don't use armv7a as we don't want march
-TUNE_FEATURES_tune-cortexa9hf             = "${TUNE_FEATURES_tune-cortexa9} callconvention-hard"
-TUNE_FEATURES_tune-cortexa9thf            = "${TUNE_FEATURES_tune-cortexa9t} callconvention-hard"
-TUNE_FEATURES_tune-cortexa9hf-neon        = "${TUNE_FEATURES_tune-cortexa9-neon} callconvention-hard"
-TUNE_FEATURES_tune-cortexa9thf-neon       = "${TUNE_FEATURES_tune-cortexa9t-neon} callconvention-hard"
-PACKAGE_EXTRA_ARCHS_tune-cortexa9hf             = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf} cortexa9hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa9thf            = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf} cortexa9hf-vfp cortexa9t2hf-vfp"
-PACKAGE_EXTRA_ARCHS_tune-cortexa9hf-neon        = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-neon} cortexa9hf-vfp cortexa9hf-neon"
-PACKAGE_EXTRA_ARCHS_tune-cortexa9thf-neon       = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-neon} cortexa9hf-vfp cortexa9hf-neon cortexa9t2hf-vfp cortexa9t2hf-neon"
+TUNE_FEATURES:tune-cortexa9hf             = "${TUNE_FEATURES:tune-cortexa9} callconvention-hard"
+TUNE_FEATURES:tune-cortexa9thf            = "${TUNE_FEATURES:tune-cortexa9t} callconvention-hard"
+TUNE_FEATURES:tune-cortexa9hf-neon        = "${TUNE_FEATURES:tune-cortexa9-neon} callconvention-hard"
+TUNE_FEATURES:tune-cortexa9thf-neon       = "${TUNE_FEATURES:tune-cortexa9t-neon} callconvention-hard"
+PACKAGE_EXTRA_ARCHS:tune-cortexa9hf             = "${PACKAGE_EXTRA_ARCHS:tune-armv7ahf} cortexa9hf-vfp"
+PACKAGE_EXTRA_ARCHS:tune-cortexa9thf            = "${PACKAGE_EXTRA_ARCHS:tune-armv7athf} cortexa9hf-vfp cortexa9t2hf-vfp"
+PACKAGE_EXTRA_ARCHS:tune-cortexa9hf-neon        = "${PACKAGE_EXTRA_ARCHS:tune-armv7ahf-neon} cortexa9hf-vfp cortexa9hf-neon"
+PACKAGE_EXTRA_ARCHS:tune-cortexa9thf-neon       = "${PACKAGE_EXTRA_ARCHS:tune-armv7athf-neon} cortexa9hf-vfp cortexa9hf-neon cortexa9t2hf-vfp cortexa9t2hf-neon"
 
 # VFPv3 Tunes
 AVAILTUNES += "cortexa9-vfpv3 cortexa9t-vfpv3 cortexa9hf-vfpv3 cortexa9thf-vfpv3"
-ARMPKGARCH_tune-cortexa9-vfpv3          = "cortexa9"
-ARMPKGARCH_tune-cortexa9t-vfpv3         = "cortexa9"
-ARMPKGARCH_tune-cortexa9hf-vfpv3        = "cortexa9"
-ARMPKGARCH_tune-cortexa9thf-vfpv3       = "cortexa9"
+ARMPKGARCH:tune-cortexa9-vfpv3          = "cortexa9"
+ARMPKGARCH:tune-cortexa9t-vfpv3         = "cortexa9"
+ARMPKGARCH:tune-cortexa9hf-vfpv3        = "cortexa9"
+ARMPKGARCH:tune-cortexa9thf-vfpv3       = "cortexa9"
 # mcpu is used so don't use armv7a as we don't want march
-TUNE_FEATURES_tune-cortexa9-vfpv3           = "${TUNE_FEATURES_tune-cortexa9} vfpv3"
-TUNE_FEATURES_tune-cortexa9t-vfpv3          = "${TUNE_FEATURES_tune-cortexa9t} vfpv3"
-TUNE_FEATURES_tune-cortexa9hf-vfpv3         = "${TUNE_FEATURES_tune-cortexa9hf} vfpv3"
-TUNE_FEATURES_tune-cortexa9thf-vfpv3        = "${TUNE_FEATURES_tune-cortexa9thf} vfpv3"
-PACKAGE_EXTRA_ARCHS_tune-cortexa9-vfpv3           = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-vfpv3} cortexa9-vfp cortexa9-vfpv3"
-PACKAGE_EXTRA_ARCHS_tune-cortexa9t-vfpv3          = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-vfpv3} cortexa9-vfp cortexa9-vfpv3 cortexa9t2-vfp cortexa9t2-vfpv3"
-PACKAGE_EXTRA_ARCHS_tune-cortexa9hf-vfpv3         = "${PACKAGE_EXTRA_ARCHS_tune-armv7ahf-vfpv3} cortexa9hf-vfp cortexa9hf-vfpv3"
-PACKAGE_EXTRA_ARCHS_tune-cortexa9thf-vfpv3        = "${PACKAGE_EXTRA_ARCHS_tune-armv7athf-vfpv3} cortexa9hf-vfp cortexa9hf-vfpv3 cortexa9t2hf-vfp cortexa9t2hf-vfpv3"
+TUNE_FEATURES:tune-cortexa9-vfpv3           = "${TUNE_FEATURES:tune-cortexa9} vfpv3"
+TUNE_FEATURES:tune-cortexa9t-vfpv3          = "${TUNE_FEATURES:tune-cortexa9t} vfpv3"
+TUNE_FEATURES:tune-cortexa9hf-vfpv3         = "${TUNE_FEATURES:tune-cortexa9hf} vfpv3"
+TUNE_FEATURES:tune-cortexa9thf-vfpv3        = "${TUNE_FEATURES:tune-cortexa9thf} vfpv3"
+PACKAGE_EXTRA_ARCHS:tune-cortexa9-vfpv3           = "${PACKAGE_EXTRA_ARCHS:tune-armv7a-vfpv3} cortexa9-vfp cortexa9-vfpv3"
+PACKAGE_EXTRA_ARCHS:tune-cortexa9t-vfpv3          = "${PACKAGE_EXTRA_ARCHS:tune-armv7at-vfpv3} cortexa9-vfp cortexa9-vfpv3 cortexa9t2-vfp cortexa9t2-vfpv3"
+PACKAGE_EXTRA_ARCHS:tune-cortexa9hf-vfpv3         = "${PACKAGE_EXTRA_ARCHS:tune-armv7ahf-vfpv3} cortexa9hf-vfp cortexa9hf-vfpv3"
+PACKAGE_EXTRA_ARCHS:tune-cortexa9thf-vfpv3        = "${PACKAGE_EXTRA_ARCHS:tune-armv7athf-vfpv3} cortexa9hf-vfp cortexa9hf-vfpv3 cortexa9t2hf-vfp cortexa9t2hf-vfpv3"
diff --git a/poky/meta/conf/machine/include/tune-ep9312.inc b/poky/meta/conf/machine/include/tune-ep9312.inc
index 5e1a0e5..0d481d3 100644
--- a/poky/meta/conf/machine/include/tune-ep9312.inc
+++ b/poky/meta/conf/machine/include/tune-ep9312.inc
@@ -7,6 +7,6 @@
 MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES', 'ep9312', 'armv4:', '', d)}"
 
 AVAILTUNES += "ep9312"
-ARMPKGARCH_tune-ep9312 = "ep9312"
-TUNE_FEATURES_tune-ep9312 = "thumb ep9312"
-PACKAGE_EXTRA_ARCHS_tune-ep9312 = "${PACKAGE_EXTRA_ARCHS_tune-armv4t} ep9312t"
+ARMPKGARCH:tune-ep9312 = "ep9312"
+TUNE_FEATURES:tune-ep9312 = "thumb ep9312"
+PACKAGE_EXTRA_ARCHS:tune-ep9312 = "${PACKAGE_EXTRA_ARCHS:tune-armv4t} ep9312t"
diff --git a/poky/meta/conf/machine/include/tune-i586-nlp.inc b/poky/meta/conf/machine/include/tune-i586-nlp.inc
index 88e5903..ecfbf9f 100644
--- a/poky/meta/conf/machine/include/tune-i586-nlp.inc
+++ b/poky/meta/conf/machine/include/tune-i586-nlp.inc
@@ -13,7 +13,7 @@
 
 # Quark tune feature
 AVAILTUNES = "i586-nlp-32"
-TUNE_FEATURES_tune-i586-nlp-32 = "${TUNE_FEATURES_tune-x86} i586-nlp"
-BASE_LIB_tune-i586-nlp-32 = "lib"
-TUNE_PKGARCH_tune-i586-nlp-32 = "i586-nlp-32"
-PACKAGE_EXTRA_ARCHS_tune-i586-nlp-32 = "i586-nlp-32"
+TUNE_FEATURES:tune-i586-nlp-32 = "${TUNE_FEATURES:tune-x86} i586-nlp"
+BASE_LIB:tune-i586-nlp-32 = "lib"
+TUNE_PKGARCH:tune-i586-nlp-32 = "i586-nlp-32"
+PACKAGE_EXTRA_ARCHS:tune-i586-nlp-32 = "i586-nlp-32"
diff --git a/poky/meta/conf/machine/include/tune-i586.inc b/poky/meta/conf/machine/include/tune-i586.inc
index 1ab17bd..b1299e9 100644
--- a/poky/meta/conf/machine/include/tune-i586.inc
+++ b/poky/meta/conf/machine/include/tune-i586.inc
@@ -8,7 +8,7 @@
 
 # Extra tune selections
 AVAILTUNES += "i586"
-TUNE_FEATURES_tune-i586 = "${TUNE_FEATURES_tune-x86} i586"
-BASE_LIB_tune-i586 = "lib"
-TUNE_PKGARCH_tune-i586 = "i586"
-PACKAGE_EXTRA_ARCHS_tune-i586 = "${PACKAGE_EXTRA_ARCHS_tune-x86} i586"
+TUNE_FEATURES:tune-i586 = "${TUNE_FEATURES:tune-x86} i586"
+BASE_LIB:tune-i586 = "lib"
+TUNE_PKGARCH:tune-i586 = "i586"
+PACKAGE_EXTRA_ARCHS:tune-i586 = "${PACKAGE_EXTRA_ARCHS:tune-x86} i586"
diff --git a/poky/meta/conf/machine/include/tune-i686.inc b/poky/meta/conf/machine/include/tune-i686.inc
index bdb4799..3feb4df 100644
--- a/poky/meta/conf/machine/include/tune-i686.inc
+++ b/poky/meta/conf/machine/include/tune-i686.inc
@@ -21,7 +21,7 @@
 
 # Extra tune selections
 AVAILTUNES += "i686"
-TUNE_FEATURES_tune-i686 = "${TUNE_FEATURES_tune-x86} i686"
-BASE_LIB_tune-i686 = "lib"
-TUNE_PKGARCH_tune-i686 = "i686"
-PACKAGE_EXTRA_ARCHS_tune-i686 = "${PACKAGE_EXTRA_ARCHS_tune-i586} i686"
+TUNE_FEATURES:tune-i686 = "${TUNE_FEATURES:tune-x86} i686"
+BASE_LIB:tune-i686 = "lib"
+TUNE_PKGARCH:tune-i686 = "i686"
+PACKAGE_EXTRA_ARCHS:tune-i686 = "${PACKAGE_EXTRA_ARCHS:tune-i586} i686"
diff --git a/poky/meta/conf/machine/include/tune-iwmmxt.inc b/poky/meta/conf/machine/include/tune-iwmmxt.inc
index 81ff4c9..c584b47 100644
--- a/poky/meta/conf/machine/include/tune-iwmmxt.inc
+++ b/poky/meta/conf/machine/include/tune-iwmmxt.inc
@@ -10,6 +10,6 @@
 MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES', 'iwmmxt', 'armv5:', '', d)}"
 
 AVAILTUNES += "iwmmxt"
-ARMPKGARCH_tune-iwmmxt = "iwmmxt"
-TUNE_FEATURES_tune-iwmmxt = "thumb iwmmxt"
-PACKAGE_EXTRA_ARCHS_tune-iwmmxt = "${PACKAGE_EXTRA_ARCHS_tune-armv5te} iwmmxt iwmmxtt"
+ARMPKGARCH:tune-iwmmxt = "iwmmxt"
+TUNE_FEATURES:tune-iwmmxt = "thumb iwmmxt"
+PACKAGE_EXTRA_ARCHS:tune-iwmmxt = "${PACKAGE_EXTRA_ARCHS:tune-armv5te} iwmmxt iwmmxtt"
diff --git a/poky/meta/conf/machine/include/tune-mcf5441x.inc b/poky/meta/conf/machine/include/tune-mcf5441x.inc
index 11a41a7..7eefce0 100644
--- a/poky/meta/conf/machine/include/tune-mcf5441x.inc
+++ b/poky/meta/conf/machine/include/tune-mcf5441x.inc
@@ -6,8 +6,8 @@
 TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'mcf5441x', ' -mcpu=54418', '', d)}"
 
 AVAILTUNES += "mcf5441x"
-TUNE_FEATURES_tune-mcf5441x = "mcf5441x"
-TUNE_ARCH_tune-mcf5441x = "mcf5441x"
-TUNE_PKGARCH_tune-mcf5441x = "mcf5441x"
-PACKAGE_EXTRA_ARCHS_tune-mcf5441x = "m68k mcf5441x"
+TUNE_FEATURES:tune-mcf5441x = "mcf5441x"
+TUNE_ARCH:tune-mcf5441x = "mcf5441x"
+TUNE_PKGARCH:tune-mcf5441x = "mcf5441x"
+PACKAGE_EXTRA_ARCHS:tune-mcf5441x = "m68k mcf5441x"
 
diff --git a/poky/meta/conf/machine/include/tune-microblaze.inc b/poky/meta/conf/machine/include/tune-microblaze.inc
index 41f0afe..11f7233 100644
--- a/poky/meta/conf/machine/include/tune-microblaze.inc
+++ b/poky/meta/conf/machine/include/tune-microblaze.inc
@@ -3,6 +3,6 @@
 require conf/machine/include/microblaze/arch-microblaze.inc
 
 AVAILTUNES += "microblaze"
-TUNE_FEATURES_tune-microblaze = "microblaze"
-PACKAGE_EXTRA_ARCHS_tune-microblaze = "${TUNE_PKGARCH}"
+TUNE_FEATURES:tune-microblaze = "microblaze"
+PACKAGE_EXTRA_ARCHS:tune-microblaze = "${TUNE_PKGARCH}"
 
diff --git a/poky/meta/conf/machine/include/tune-mips32.inc b/poky/meta/conf/machine/include/tune-mips32.inc
index a90c0f0..820087f 100644
--- a/poky/meta/conf/machine/include/tune-mips32.inc
+++ b/poky/meta/conf/machine/include/tune-mips32.inc
@@ -9,21 +9,21 @@
 # Base Tunes (Hard Float)
 AVAILTUNES += "mips32 mips32el"
 
-TUNE_FEATURES_tune-mips32 = "${TUNE_FEATURES_tune-mips} mips32"
-MIPSPKGSFX_VARIANT_tune-mips32 = "mips32"
-PACKAGE_EXTRA_ARCHS_tune-mips32 = "mips mips32"
+TUNE_FEATURES:tune-mips32 = "${TUNE_FEATURES:tune-mips} mips32"
+MIPSPKGSFX_VARIANT:tune-mips32 = "mips32"
+PACKAGE_EXTRA_ARCHS:tune-mips32 = "mips mips32"
 
-TUNE_FEATURES_tune-mips32el = "${TUNE_FEATURES_tune-mipsel} mips32"
-MIPSPKGSFX_VARIANT_tune-mips32el = "mips32el"
-PACKAGE_EXTRA_ARCHS_tune-mips32el = "mipsel mips32el"
+TUNE_FEATURES:tune-mips32el = "${TUNE_FEATURES:tune-mipsel} mips32"
+MIPSPKGSFX_VARIANT:tune-mips32el = "mips32el"
+PACKAGE_EXTRA_ARCHS:tune-mips32el = "mipsel mips32el"
 
 # Soft Float
 AVAILTUNES += "mips32-nf mips32el-nf"
 
-TUNE_FEATURES_tune-mips32-nf = "${TUNE_FEATURES_tune-mips-nf} mips32"
-MIPSPKGSFX_VARIANT_tune-mips32-nf = "mips32"
-PACKAGE_EXTRA_ARCHS_tune-mips32-nf = "mips-nf mips32-nf"
+TUNE_FEATURES:tune-mips32-nf = "${TUNE_FEATURES:tune-mips-nf} mips32"
+MIPSPKGSFX_VARIANT:tune-mips32-nf = "mips32"
+PACKAGE_EXTRA_ARCHS:tune-mips32-nf = "mips-nf mips32-nf"
 
-TUNE_FEATURES_tune-mips32el-nf = "${TUNE_FEATURES_tune-mipsel-nf} mips32"
-MIPSPKGSFX_VARIANT_tune-mips32el-nf = "mips32el"
-PACKAGE_EXTRA_ARCHS_tune-mips32el-nf = "mipsel-nf mips32el-nf"
+TUNE_FEATURES:tune-mips32el-nf = "${TUNE_FEATURES:tune-mipsel-nf} mips32"
+MIPSPKGSFX_VARIANT:tune-mips32el-nf = "mips32el"
+PACKAGE_EXTRA_ARCHS:tune-mips32el-nf = "mipsel-nf mips32el-nf"
diff --git a/poky/meta/conf/machine/include/tune-mips32r2.inc b/poky/meta/conf/machine/include/tune-mips32r2.inc
index 14473ca..e7f6753 100644
--- a/poky/meta/conf/machine/include/tune-mips32r2.inc
+++ b/poky/meta/conf/machine/include/tune-mips32r2.inc
@@ -9,21 +9,21 @@
 # Base Tunes (Hard Float)
 AVAILTUNES += "mips32r2 mips32r2el"
 
-TUNE_FEATURES_tune-mips32r2 = "${TUNE_FEATURES_tune-mips} mips32r2"
-MIPSPKGSFX_VARIANT_tune-mips32r2 = "mips32r2"
-PACKAGE_EXTRA_ARCHS_tune-mips32r2 = "mips mips32 mips32r2"
+TUNE_FEATURES:tune-mips32r2 = "${TUNE_FEATURES:tune-mips} mips32r2"
+MIPSPKGSFX_VARIANT:tune-mips32r2 = "mips32r2"
+PACKAGE_EXTRA_ARCHS:tune-mips32r2 = "mips mips32 mips32r2"
 
-TUNE_FEATURES_tune-mips32r2el = "${TUNE_FEATURES_tune-mipsel} mips32r2"
-MIPSPKGSFX_VARIANT_tune-mips32r2el = "mips32r2el"
-PACKAGE_EXTRA_ARCHS_tune-mips32r2el = "mipsel mips32el mips32r2el"
+TUNE_FEATURES:tune-mips32r2el = "${TUNE_FEATURES:tune-mipsel} mips32r2"
+MIPSPKGSFX_VARIANT:tune-mips32r2el = "mips32r2el"
+PACKAGE_EXTRA_ARCHS:tune-mips32r2el = "mipsel mips32el mips32r2el"
 
 # Soft Float
 AVAILTUNES += "mips32r2-nf mips32r2el-nf"
 
-TUNE_FEATURES_tune-mips32r2-nf = "${TUNE_FEATURES_tune-mips-nf} mips32r2"
-MIPSPKGSFX_VARIANT_tune-mips32r2-nf = "mips32r2"
-PACKAGE_EXTRA_ARCHS_tune-mips32r2-nf = "mips-nf mips32-nf mips32r2-nf"
+TUNE_FEATURES:tune-mips32r2-nf = "${TUNE_FEATURES:tune-mips-nf} mips32r2"
+MIPSPKGSFX_VARIANT:tune-mips32r2-nf = "mips32r2"
+PACKAGE_EXTRA_ARCHS:tune-mips32r2-nf = "mips-nf mips32-nf mips32r2-nf"
 
-TUNE_FEATURES_tune-mips32r2el-nf = "${TUNE_FEATURES_tune-mipsel-nf} mips32r2"
-MIPSPKGSFX_VARIANT_tune-mips32r2el-nf = "mips32r2el"
-PACKAGE_EXTRA_ARCHS_tune-mips32r2el-nf = "mipsel-nf mips32el-nf mips32r2el-nf"
+TUNE_FEATURES:tune-mips32r2el-nf = "${TUNE_FEATURES:tune-mipsel-nf} mips32r2"
+MIPSPKGSFX_VARIANT:tune-mips32r2el-nf = "mips32r2el"
+PACKAGE_EXTRA_ARCHS:tune-mips32r2el-nf = "mipsel-nf mips32el-nf mips32r2el-nf"
diff --git a/poky/meta/conf/machine/include/tune-mips32r6.inc b/poky/meta/conf/machine/include/tune-mips32r6.inc
index 44369cb..9904cc0 100644
--- a/poky/meta/conf/machine/include/tune-mips32r6.inc
+++ b/poky/meta/conf/machine/include/tune-mips32r6.inc
@@ -9,21 +9,21 @@
 # Base Tunes (Hard Float)
 AVAILTUNES += "mipsisa32r6 mipsisa32r6el"
 
-TUNE_FEATURES_tune-mipsisa32r6 = "o32 bigendian mipsisa32r6 fpu-hard r6"
-MIPSPKGSFX_VARIANT_tune-mipsisa32r6 = "${TUNE_ARCH}"
-PACKAGE_EXTRA_ARCHS_tune-mipsisa32r6 = "mipsisa32r6"
+TUNE_FEATURES:tune-mipsisa32r6 = "o32 bigendian mipsisa32r6 fpu-hard r6"
+MIPSPKGSFX_VARIANT:tune-mipsisa32r6 = "${TUNE_ARCH}"
+PACKAGE_EXTRA_ARCHS:tune-mipsisa32r6 = "mipsisa32r6"
 
-TUNE_FEATURES_tune-mipsisa32r6el = "o32 fpu-hard mipsisa32r6 r6"
-MIPSPKGSFX_VARIANT_tune-mipsisa32r6el = "${TUNE_ARCH}"
-PACKAGE_EXTRA_ARCHS_tune-mipsisa32r6el = "mipsisa32r6el"
+TUNE_FEATURES:tune-mipsisa32r6el = "o32 fpu-hard mipsisa32r6 r6"
+MIPSPKGSFX_VARIANT:tune-mipsisa32r6el = "${TUNE_ARCH}"
+PACKAGE_EXTRA_ARCHS:tune-mipsisa32r6el = "mipsisa32r6el"
 
 # Soft Float
 AVAILTUNES += "mipsisa32r6-nf mipsisa32r6el-nf"
 
-TUNE_FEATURES_tune-mipsisa32r6-nf = "o32 bigendian mipsisa32r6 r6"
-MIPSPKGSFX_VARIANT_tune-mipsisa32r6-nf = "${TUNE_ARCH}"
-PACKAGE_EXTRA_ARCHS_tune-mipsisa32r6-nf = "mipsisa32r6-nf"
+TUNE_FEATURES:tune-mipsisa32r6-nf = "o32 bigendian mipsisa32r6 r6"
+MIPSPKGSFX_VARIANT:tune-mipsisa32r6-nf = "${TUNE_ARCH}"
+PACKAGE_EXTRA_ARCHS:tune-mipsisa32r6-nf = "mipsisa32r6-nf"
 
-TUNE_FEATURES_tune-mipsisa32r6el-nf = "o32 mipsisa32r6 r6"
-MIPSPKGSFX_VARIANT_tune-mipsisa32r6el-nf = "${TUNE_ARCH}"
-PACKAGE_EXTRA_ARCHS_tune-mipsisa32r6el-nf = "mipsisa32r6el-nf"
+TUNE_FEATURES:tune-mipsisa32r6el-nf = "o32 mipsisa32r6 r6"
+MIPSPKGSFX_VARIANT:tune-mipsisa32r6el-nf = "${TUNE_ARCH}"
+PACKAGE_EXTRA_ARCHS:tune-mipsisa32r6el-nf = "mipsisa32r6el-nf"
diff --git a/poky/meta/conf/machine/include/tune-mips64r2.inc b/poky/meta/conf/machine/include/tune-mips64r2.inc
index 75d7535..6337abb 100644
--- a/poky/meta/conf/machine/include/tune-mips64r2.inc
+++ b/poky/meta/conf/machine/include/tune-mips64r2.inc
@@ -8,77 +8,77 @@
 # Base tunes
 AVAILTUNES += "mips64r2 mips64r2el"
 
-TUNE_FEATURES_tune-mips64r2 = "${TUNE_FEATURES_tune-mips64} mips64r2"
-BASE_LIB_tune-mips64r2 = "lib64"
-MIPSPKGSFX_VARIANT_tune-mips64r2 = "mips64r2"
-PACKAGE_EXTRA_ARCHS_tune-mips64r2 = "mips64 mips64r2"
+TUNE_FEATURES:tune-mips64r2 = "${TUNE_FEATURES:tune-mips64} mips64r2"
+BASE_LIB:tune-mips64r2 = "lib64"
+MIPSPKGSFX_VARIANT:tune-mips64r2 = "mips64r2"
+PACKAGE_EXTRA_ARCHS:tune-mips64r2 = "mips64 mips64r2"
 
-TUNE_FEATURES_tune-mips64r2el = "${TUNE_FEATURES_tune-mips64el} mips64r2"
-BASE_LIB_tune-mips64r2el = "lib64"
-MIPSPKGSFX_VARIANT_tune-mips64r2el = "mips64r2el"
-PACKAGE_EXTRA_ARCHS_tune-mips64r2el = "mips64el mips64r2el"
+TUNE_FEATURES:tune-mips64r2el = "${TUNE_FEATURES:tune-mips64el} mips64r2"
+BASE_LIB:tune-mips64r2el = "lib64"
+MIPSPKGSFX_VARIANT:tune-mips64r2el = "mips64r2el"
+PACKAGE_EXTRA_ARCHS:tune-mips64r2el = "mips64el mips64r2el"
 
 # MIPS 64r2 Soft Float
 AVAILTUNES += "mips64r2-nf mips64r2el-nf"
 
-TUNE_FEATURES_tune-mips64r2-nf = "${TUNE_FEATURES_tune-mips64-nf} mips64r2"
-BASE_LIB_tune-mips64r2-nf = "lib64"
-MIPSPKGSFX_VARIANT_tune-mips64r2-nf = "${TUNE_ARCH}"
-PACKAGE_EXTRA_ARCHS_tune-mips64r2-nf = "mips64-nf mips64r2-nf"
+TUNE_FEATURES:tune-mips64r2-nf = "${TUNE_FEATURES:tune-mips64-nf} mips64r2"
+BASE_LIB:tune-mips64r2-nf = "lib64"
+MIPSPKGSFX_VARIANT:tune-mips64r2-nf = "${TUNE_ARCH}"
+PACKAGE_EXTRA_ARCHS:tune-mips64r2-nf = "mips64-nf mips64r2-nf"
 
-TUNE_FEATURES_tune-mips64r2el-nf = "${TUNE_FEATURES_tune-mips64el-nf} mips64r2"
-BASE_LIB_tune-mips64r2el-nf = "lib64"
-MIPSPKGSFX_VARIANT_tune-mips64r2el-nf = "${TUNE_ARCH}"
-PACKAGE_EXTRA_ARCHS_tune-mips64r2el-nf = "mips64el-nf mips64r2el-nf"
+TUNE_FEATURES:tune-mips64r2el-nf = "${TUNE_FEATURES:tune-mips64el-nf} mips64r2"
+BASE_LIB:tune-mips64r2el-nf = "lib64"
+MIPSPKGSFX_VARIANT:tune-mips64r2el-nf = "${TUNE_ARCH}"
+PACKAGE_EXTRA_ARCHS:tune-mips64r2el-nf = "mips64el-nf mips64r2el-nf"
 
 # MIPS 64r2 n32
 AVAILTUNES += "mips64r2-n32 mips64r2el-n32"
 
-TUNE_FEATURES_tune-mips64r2-n32 = "${TUNE_FEATURES_tune-mips64-n32} mips64r2"
-BASE_LIB_tune-mips64r2-n32 = "lib32"
-MIPSPKGSFX_VARIANT_tune-mips64r2-n32 = "${TUNE_ARCH}"
-PACKAGE_EXTRA_ARCHS_tune-mips64r2-n32 = "mips64-n32 mips64r2-n32"
+TUNE_FEATURES:tune-mips64r2-n32 = "${TUNE_FEATURES:tune-mips64-n32} mips64r2"
+BASE_LIB:tune-mips64r2-n32 = "lib32"
+MIPSPKGSFX_VARIANT:tune-mips64r2-n32 = "${TUNE_ARCH}"
+PACKAGE_EXTRA_ARCHS:tune-mips64r2-n32 = "mips64-n32 mips64r2-n32"
 
-TUNE_FEATURES_tune-mips64r2el-n32 = "${TUNE_FEATURES_tune-mips64el-n32} mips64r2"
-BASE_LIB_tune-mips64r2el-n32 = "lib32"
-MIPSPKGSFX_VARIANT_tune-mips64r2el-n32 = "${TUNE_ARCH}"
-PACKAGE_EXTRA_ARCHS_tune-mips64r2el-n32 = "mips64el-n32 mips64r2el-n32"
+TUNE_FEATURES:tune-mips64r2el-n32 = "${TUNE_FEATURES:tune-mips64el-n32} mips64r2"
+BASE_LIB:tune-mips64r2el-n32 = "lib32"
+MIPSPKGSFX_VARIANT:tune-mips64r2el-n32 = "${TUNE_ARCH}"
+PACKAGE_EXTRA_ARCHS:tune-mips64r2el-n32 = "mips64el-n32 mips64r2el-n32"
 
 # MIPS 64r2 n32 and Soft Float
 AVAILTUNES += "mips64r2-nf-n32 mips64r2el-nf-n32"
 
-TUNE_FEATURES_tune-mips64r2-nf-n32 = "${TUNE_FEATURES_tune-mips64-nf-n32} mips64r2"
-BASE_LIB_tune-mips64r2-nf-n32 = "lib32"
-MIPSPKGSFX_VARIANT_tune-mips64r2-nf-n32 = "${TUNE_ARCH}"
-PACKAGE_EXTRA_ARCHS_tune-mips64r2-nf-n32 = "mips64-nf-n32 mips64r2-nf-n32"
+TUNE_FEATURES:tune-mips64r2-nf-n32 = "${TUNE_FEATURES:tune-mips64-nf-n32} mips64r2"
+BASE_LIB:tune-mips64r2-nf-n32 = "lib32"
+MIPSPKGSFX_VARIANT:tune-mips64r2-nf-n32 = "${TUNE_ARCH}"
+PACKAGE_EXTRA_ARCHS:tune-mips64r2-nf-n32 = "mips64-nf-n32 mips64r2-nf-n32"
 
-TUNE_FEATURES_tune-mips64r2el-nf-n32 = "${TUNE_FEATURES_tune-mips64el-nf-n32} mips64r2"
-BASE_LIB_tune-mips64r2el-nf-n32 = "lib32"
-MIPSPKGSFX_VARIANT_tune-mips64r2el-nf-n32 = "${TUNE_ARCH}"
-PACKAGE_EXTRA_ARCHS_tune-mips64r2el-nf-n32 = "mips64el-nf-n32 mips64r2el-nf-n32"
+TUNE_FEATURES:tune-mips64r2el-nf-n32 = "${TUNE_FEATURES:tune-mips64el-nf-n32} mips64r2"
+BASE_LIB:tune-mips64r2el-nf-n32 = "lib32"
+MIPSPKGSFX_VARIANT:tune-mips64r2el-nf-n32 = "${TUNE_ARCH}"
+PACKAGE_EXTRA_ARCHS:tune-mips64r2el-nf-n32 = "mips64el-nf-n32 mips64r2el-nf-n32"
 
 # MIPS 64r2 o32
 AVAILTUNES += "mips64r2-o32 mips64r2el-o32"
 
-TUNE_FEATURES_tune-mips64r2-o32 = "${TUNE_FEATURES_tune-mips64-o32} mips64r2"
-BASE_LIB_tune-mips64r2-o32 = "lib"
-MIPSPKGSFX_VARIANT_tune-mips64r2-o32 = "${TUNE_ARCH}"
-PACKAGE_EXTRA_ARCHS_tune-mips64r2-o32 = "mips mips64-o32 mips64r2-o32"
+TUNE_FEATURES:tune-mips64r2-o32 = "${TUNE_FEATURES:tune-mips64-o32} mips64r2"
+BASE_LIB:tune-mips64r2-o32 = "lib"
+MIPSPKGSFX_VARIANT:tune-mips64r2-o32 = "${TUNE_ARCH}"
+PACKAGE_EXTRA_ARCHS:tune-mips64r2-o32 = "mips mips64-o32 mips64r2-o32"
 
-TUNE_FEATURES_tune-mips64r2el-o32 = "${TUNE_FEATURES_tune-mips64el-o32} mips64r2"
-BASE_LIB_tune-mips64r2el-o32 = "lib"
-MIPSPKGSFX_VARIANT_tune-mips64r2el-o32 = "${TUNE_ARCH}"
-PACKAGE_EXTRA_ARCHS_tune-mips64r2el-o32 = "mipsel mips64el-o32 mips64r2el-o32"
+TUNE_FEATURES:tune-mips64r2el-o32 = "${TUNE_FEATURES:tune-mips64el-o32} mips64r2"
+BASE_LIB:tune-mips64r2el-o32 = "lib"
+MIPSPKGSFX_VARIANT:tune-mips64r2el-o32 = "${TUNE_ARCH}"
+PACKAGE_EXTRA_ARCHS:tune-mips64r2el-o32 = "mipsel mips64el-o32 mips64r2el-o32"
 
 # MIPS 64r2 o32 and Soft Float
 AVAILTUNES += "mips64r2-nf-o32 mips64r2el-nf-o32"
 
-TUNE_FEATURES_tune-mips64r2-nf-o32 = "${TUNE_FEATURES_tune-mips64-nf-o32} mips64r2"
-BASE_LIB_tune-mips64r2-nf-o32 = "lib"
-MIPSPKGSFX_VARIANT_tune-mips64r2-nf-o32 = "${TUNE_ARCH}"
-PACKAGE_EXTRA_ARCHS_tune-mips64r2-nf-o32 = "mips-nf mips64r2-nf-o32"
+TUNE_FEATURES:tune-mips64r2-nf-o32 = "${TUNE_FEATURES:tune-mips64-nf-o32} mips64r2"
+BASE_LIB:tune-mips64r2-nf-o32 = "lib"
+MIPSPKGSFX_VARIANT:tune-mips64r2-nf-o32 = "${TUNE_ARCH}"
+PACKAGE_EXTRA_ARCHS:tune-mips64r2-nf-o32 = "mips-nf mips64r2-nf-o32"
 
-TUNE_FEATURES_tune-mips64r2el-nf-o32 = "${TUNE_FEATURES_tune-mips64el-nf-o32} mips64r2"
-BASE_LIB_tune-mips64r2el-nf-o32 = "lib"
-MIPSPKGSFX_VARIANT_tune-mips64r2el-nf-o32 = "${TUNE_ARCH}"
-PACKAGE_EXTRA_ARCHS_tune-mips64r2el-nf-o32 = "mipsel-nf mips64r2el-nf-o32"
+TUNE_FEATURES:tune-mips64r2el-nf-o32 = "${TUNE_FEATURES:tune-mips64el-nf-o32} mips64r2"
+BASE_LIB:tune-mips64r2el-nf-o32 = "lib"
+MIPSPKGSFX_VARIANT:tune-mips64r2el-nf-o32 = "${TUNE_ARCH}"
+PACKAGE_EXTRA_ARCHS:tune-mips64r2el-nf-o32 = "mipsel-nf mips64r2el-nf-o32"
diff --git a/poky/meta/conf/machine/include/tune-mips64r6.inc b/poky/meta/conf/machine/include/tune-mips64r6.inc
index e53239a..b4a7e9e 100644
--- a/poky/meta/conf/machine/include/tune-mips64r6.inc
+++ b/poky/meta/conf/machine/include/tune-mips64r6.inc
@@ -8,51 +8,51 @@
 # Base Tunes
 AVAILTUNES += "mipsisa64r6 mipsisa64r6el"
 
-TUNE_FEATURES_tune-mipsisa64r6 = "bigendian fpu-hard n64 mipsisa64r6 r6"
-MIPSPKGSFX_VARIANT_tune-mipsisa64r6 = "${TUNE_ARCH}"
-BASE_LIB_tune-mipsisa64r6 = "lib64"
-PACKAGE_EXTRA_ARCHS_tune-mipsisa64r6 = "mipsisa64r6"
+TUNE_FEATURES:tune-mipsisa64r6 = "bigendian fpu-hard n64 mipsisa64r6 r6"
+MIPSPKGSFX_VARIANT:tune-mipsisa64r6 = "${TUNE_ARCH}"
+BASE_LIB:tune-mipsisa64r6 = "lib64"
+PACKAGE_EXTRA_ARCHS:tune-mipsisa64r6 = "mipsisa64r6"
 
-TUNE_FEATURES_tune-mipsisa64r6el = "fpu-hard r6 n64 mipsisa64r6"
-MIPSPKGSFX_VARIANT_tune-mipsisa64r6el = "${TUNE_ARCH}"
-BASE_LIB_tune-mipsisa64r6el = "lib64"
-PACKAGE_EXTRA_ARCHS_tune-mipsisa64r6el = "mipsisa64r6el"
+TUNE_FEATURES:tune-mipsisa64r6el = "fpu-hard r6 n64 mipsisa64r6"
+MIPSPKGSFX_VARIANT:tune-mipsisa64r6el = "${TUNE_ARCH}"
+BASE_LIB:tune-mipsisa64r6el = "lib64"
+PACKAGE_EXTRA_ARCHS:tune-mipsisa64r6el = "mipsisa64r6el"
 
 # Soft Float
 AVAILTUNES += "mipsisa64r6-nf mipsisa64r6el-nf"
 
-TUNE_FEATURES_tune-mipsisa64r6-nf = "bigendian r6 n64 mipsisa64r6"
-MIPSPKGSFX_VARIANT_tune-mipsisa64r6-nf = "${TUNE_ARCH}"
-BASE_LIB_tune-mipsisa64r6-nf = "lib64"
-PACKAGE_EXTRA_ARCHS_tune-mipsisa64r6-nf = "mipsisa64r6-nf"
+TUNE_FEATURES:tune-mipsisa64r6-nf = "bigendian r6 n64 mipsisa64r6"
+MIPSPKGSFX_VARIANT:tune-mipsisa64r6-nf = "${TUNE_ARCH}"
+BASE_LIB:tune-mipsisa64r6-nf = "lib64"
+PACKAGE_EXTRA_ARCHS:tune-mipsisa64r6-nf = "mipsisa64r6-nf"
 
-TUNE_FEATURES_tune-mipsisa64r6el-nf = "r6 n64 mipsisa64r6"
-MIPSPKGSFX_VARIANT_tune-mipsisa64r6el-nf = "${TUNE_ARCH}"
-BASE_LIB_tune-mipsisa64r6el-nf = "lib64"
-PACKAGE_EXTRA_ARCHS_tune-mipsisa64r6el-nf = "mipsisa64r6el-nf"
+TUNE_FEATURES:tune-mipsisa64r6el-nf = "r6 n64 mipsisa64r6"
+MIPSPKGSFX_VARIANT:tune-mipsisa64r6el-nf = "${TUNE_ARCH}"
+BASE_LIB:tune-mipsisa64r6el-nf = "lib64"
+PACKAGE_EXTRA_ARCHS:tune-mipsisa64r6el-nf = "mipsisa64r6el-nf"
 
 # MIPS 64r6 n32
 AVAILTUNES += "mipsisa64r6-n32 mipsisa64r6el-n32"
 
-TUNE_FEATURES_tune-mipsisa64r6-n32 = "bigendian fpu-hard r6 n32 mipsisa64r6"
-BASE_LIB_tune-mipsisa64r6-n32 = "lib32"
-MIPSPKGSFX_VARIANT_tune-mipsisa64r6-n32 = "${TUNE_ARCH}"
-PACKAGE_EXTRA_ARCHS_tune-mipsisa64r6-n32 = "mipsisa64r6-n32"
+TUNE_FEATURES:tune-mipsisa64r6-n32 = "bigendian fpu-hard r6 n32 mipsisa64r6"
+BASE_LIB:tune-mipsisa64r6-n32 = "lib32"
+MIPSPKGSFX_VARIANT:tune-mipsisa64r6-n32 = "${TUNE_ARCH}"
+PACKAGE_EXTRA_ARCHS:tune-mipsisa64r6-n32 = "mipsisa64r6-n32"
 
-TUNE_FEATURES_tune-mipsisa64r6el-n32 = "fpu-hard r6 n32 mipsisa64r6"
-BASE_LIB_tune-mipsisa64r6el-n32 = "lib32"
-MIPSPKGSFX_VARIANT_tune-mipsisa64r6el-n32 = "${TUNE_ARCH}"
-PACKAGE_EXTRA_ARCHS_tune-mipsisa64r6el-n32 = "mipsisa64r6el-n32"
+TUNE_FEATURES:tune-mipsisa64r6el-n32 = "fpu-hard r6 n32 mipsisa64r6"
+BASE_LIB:tune-mipsisa64r6el-n32 = "lib32"
+MIPSPKGSFX_VARIANT:tune-mipsisa64r6el-n32 = "${TUNE_ARCH}"
+PACKAGE_EXTRA_ARCHS:tune-mipsisa64r6el-n32 = "mipsisa64r6el-n32"
 
 # MIPS 64r6 n32 and Soft Float
 AVAILTUNES += "mipsisa64r6-nf-n32 mipsisa64r6el-nf-n32"
 
-TUNE_FEATURES_tune-mipsisa64r6-nf-n32 = "bigendian r6 n32 mipsisa64r6"
-BASE_LIB_tune-mipsisa64r6-nf-n32 = "lib32"
-MIPSPKGSFX_VARIANT_tune-mipsisa64r6-nf-n32 = "${TUNE_ARCH}"
-PACKAGE_EXTRA_ARCHS_tune-mipsisa64r6-nf-n32 = "mipsisa64r6-nf-n32"
+TUNE_FEATURES:tune-mipsisa64r6-nf-n32 = "bigendian r6 n32 mipsisa64r6"
+BASE_LIB:tune-mipsisa64r6-nf-n32 = "lib32"
+MIPSPKGSFX_VARIANT:tune-mipsisa64r6-nf-n32 = "${TUNE_ARCH}"
+PACKAGE_EXTRA_ARCHS:tune-mipsisa64r6-nf-n32 = "mipsisa64r6-nf-n32"
 
-TUNE_FEATURES_tune-mipsisa64r6el-nf-n32 = "r6 n32 mipsisa64r6"
-BASE_LIB_tune-mipsisa64r6el-nf-n32 = "lib32"
-MIPSPKGSFX_VARIANT_tune-mipsisa64r6el-nf-n32 = "${TUNE_ARCH}"
-PACKAGE_EXTRA_ARCHS_tune-mipsisa64r6el-nf-n32 = "mipsisa64r6el-nf-n32"
+TUNE_FEATURES:tune-mipsisa64r6el-nf-n32 = "r6 n32 mipsisa64r6"
+BASE_LIB:tune-mipsisa64r6el-nf-n32 = "lib32"
+MIPSPKGSFX_VARIANT:tune-mipsisa64r6el-nf-n32 = "${TUNE_ARCH}"
+PACKAGE_EXTRA_ARCHS:tune-mipsisa64r6el-nf-n32 = "mipsisa64r6el-nf-n32"
diff --git a/poky/meta/conf/machine/include/tune-octeon.inc b/poky/meta/conf/machine/include/tune-octeon.inc
index b5deb8f..455c6a2 100644
--- a/poky/meta/conf/machine/include/tune-octeon.inc
+++ b/poky/meta/conf/machine/include/tune-octeon.inc
@@ -7,26 +7,26 @@
 TUNEVALID[octeon2] = "Enable optimization related to octeon2 support"
 TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'octeon2', ' -march=octeon2 ', '',d)}"
 
-TUNE_FEATURES_tune-octeon2 = "${TUNE_FEATURES_tune-mips64-n32} octeon2"
-BASE_LIB_tune-octeon2 = "lib32"
-MIPSPKGSFX_VARIANT_tune-octeon2 = "octeon2"
-PACKAGE_EXTRA_ARCHS_tune-octeon2 = "mips64-n32 octeon2-n32"
+TUNE_FEATURES:tune-octeon2 = "${TUNE_FEATURES:tune-mips64-n32} octeon2"
+BASE_LIB:tune-octeon2 = "lib32"
+MIPSPKGSFX_VARIANT:tune-octeon2 = "octeon2"
+PACKAGE_EXTRA_ARCHS:tune-octeon2 = "mips64-n32 octeon2-n32"
 
-TUNE_FEATURES_tune-octeon2_64 = "${TUNE_FEATURES_tune-mips64} octeon2"
-BASE_LIB_tune-octeon2_64 = "lib64"
-MIPSPKGSFX_VARIANT_tune-octeon2_64 = "octeon2_64"
-PACKAGE_EXTRA_ARCHS_tune-octeon2_64 = "mips64 octeon2_64"
+TUNE_FEATURES:tune-octeon2_64 = "${TUNE_FEATURES:tune-mips64} octeon2"
+BASE_LIB:tune-octeon2_64 = "lib64"
+MIPSPKGSFX_VARIANT:tune-octeon2_64 = "octeon2_64"
+PACKAGE_EXTRA_ARCHS:tune-octeon2_64 = "mips64 octeon2_64"
 
 
 TUNEVALID[octeon3] = "Enable optimization related to octeon3 support"
 TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'octeon3', ' -march=octeon3 ', '',d)}"
 
-TUNE_FEATURES_tune-octeon3 = "${TUNE_FEATURES_tune-mips64-n32} octeon3"
-BASE_LIB_tune-octeon3 = "lib32"
-MIPSPKGSFX_VARIANT_tune-octeon3 = "octeon3"
-PACKAGE_EXTRA_ARCHS_tune-octeon3 = "mips64-n32 octeon3-n32"
+TUNE_FEATURES:tune-octeon3 = "${TUNE_FEATURES:tune-mips64-n32} octeon3"
+BASE_LIB:tune-octeon3 = "lib32"
+MIPSPKGSFX_VARIANT:tune-octeon3 = "octeon3"
+PACKAGE_EXTRA_ARCHS:tune-octeon3 = "mips64-n32 octeon3-n32"
 
-TUNE_FEATURES_tune-octeon3_64 = "${TUNE_FEATURES_tune-mips64} octeon3"
-BASE_LIB_tune-octeon3_64 = "lib64"
-MIPSPKGSFX_VARIANT_tune-octeon3_64 = "octeon3_64"
-PACKAGE_EXTRA_ARCHS_tune-octeon3_64 = "mips64 octeon3_64"
+TUNE_FEATURES:tune-octeon3_64 = "${TUNE_FEATURES:tune-mips64} octeon3"
+BASE_LIB:tune-octeon3_64 = "lib64"
+MIPSPKGSFX_VARIANT:tune-octeon3_64 = "octeon3_64"
+PACKAGE_EXTRA_ARCHS:tune-octeon3_64 = "mips64 octeon3_64"
diff --git a/poky/meta/conf/machine/include/tune-power5.inc b/poky/meta/conf/machine/include/tune-power5.inc
index 48c33fb..e70e401 100644
--- a/poky/meta/conf/machine/include/tune-power5.inc
+++ b/poky/meta/conf/machine/include/tune-power5.inc
@@ -6,19 +6,19 @@
 TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'power5', ' -mcpu=power5', '', d)}"
 
 AVAILTUNES += "ppcp5 ppc64p5"
-TUNE_FEATURES_tune-ppcp5 = "m32 fpu-hard power5 altivec bigendian"
-BASE_LIB_tune-ppcp5 = "lib"
-TUNE_PKGARCH_tune-ppcp5 = "ppcp5"
-PACKAGE_EXTRA_ARCHS_tune-ppcp5 = "${PACKAGE_EXTRA_ARCHS_tune-powerpc} ppcp5"
+TUNE_FEATURES:tune-ppcp5 = "m32 fpu-hard power5 altivec bigendian"
+BASE_LIB:tune-ppcp5 = "lib"
+TUNE_PKGARCH:tune-ppcp5 = "ppcp5"
+PACKAGE_EXTRA_ARCHS:tune-ppcp5 = "${PACKAGE_EXTRA_ARCHS:tune-powerpc} ppcp5"
 
-TUNE_FEATURES_tune-ppc64p5 = "m64 fpu-hard power5 altivec bigendian"
-BASE_LIB_tune-ppc64p5 = "lib64"
-TUNE_PKGARCH_tune-ppc64p5 = "ppc64p5"
-PACKAGE_EXTRA_ARCHS_tune-ppc64p5 = "${PACKAGE_EXTRA_ARCHS_tune-powerpc64} ppc64p5"
+TUNE_FEATURES:tune-ppc64p5 = "m64 fpu-hard power5 altivec bigendian"
+BASE_LIB:tune-ppc64p5 = "lib64"
+TUNE_PKGARCH:tune-ppc64p5 = "ppc64p5"
+PACKAGE_EXTRA_ARCHS:tune-ppc64p5 = "${PACKAGE_EXTRA_ARCHS:tune-powerpc64} ppc64p5"
 
 # glibc configure options to get power5 specific library
-GLIBC_EXTRA_OECONF_powerpc64 += "${@bb.utils.contains('TUNE_FEATURES', 'power5', '--with-cpu=power5', '', d)}"
-GLIBC_EXTRA_OECONF_powerpc += "${@bb.utils.contains('TUNE_FEATURES', 'power5', '--with-cpu=power5', '', d)}"
+GLIBC_EXTRA_OECONF:powerpc64 += "${@bb.utils.contains('TUNE_FEATURES', 'power5', '--with-cpu=power5', '', d)}"
+GLIBC_EXTRA_OECONF:powerpc += "${@bb.utils.contains('TUNE_FEATURES', 'power5', '--with-cpu=power5', '', d)}"
 
 # QEMU usermode fails with invalid instruction error
-MACHINE_FEATURES_BACKFILL_CONSIDERED_append = "${@bb.utils.contains('TUNE_FEATURES', 'power5', ' qemu-usermode', '', d)}"
+MACHINE_FEATURES_BACKFILL_CONSIDERED:append = "${@bb.utils.contains('TUNE_FEATURES', 'power5', ' qemu-usermode', '', d)}"
diff --git a/poky/meta/conf/machine/include/tune-power6.inc b/poky/meta/conf/machine/include/tune-power6.inc
index b708660..eaf8951 100644
--- a/poky/meta/conf/machine/include/tune-power6.inc
+++ b/poky/meta/conf/machine/include/tune-power6.inc
@@ -6,19 +6,19 @@
 TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'power6', ' -mcpu=power6', '', d)}"
 
 AVAILTUNES += "ppcp6 ppc64p6"
-TUNE_FEATURES_tune-ppcp6 = "m32 fpu-hard power6 altivec bigendian"
-BASE_LIB_tune-ppcp6 = "lib"
-TUNE_PKGARCH_tune-ppcp6 = "ppcp6"
-PACKAGE_EXTRA_ARCHS_tune-ppcp6 = "${PACKAGE_EXTRA_ARCHS_tune-powerpc} ppcp6"
+TUNE_FEATURES:tune-ppcp6 = "m32 fpu-hard power6 altivec bigendian"
+BASE_LIB:tune-ppcp6 = "lib"
+TUNE_PKGARCH:tune-ppcp6 = "ppcp6"
+PACKAGE_EXTRA_ARCHS:tune-ppcp6 = "${PACKAGE_EXTRA_ARCHS:tune-powerpc} ppcp6"
 
-TUNE_FEATURES_tune-ppc64p6 = "m64 fpu-hard power6 altivec bigendian"
-BASE_LIB_tune-ppc64p6 = "lib64"
-TUNE_PKGARCH_tune-ppc64p6 = "ppc64p6"
-PACKAGE_EXTRA_ARCHS_tune-ppc64p6 = "${PACKAGE_EXTRA_ARCHS_tune-powerpc64} ppc64p6"
+TUNE_FEATURES:tune-ppc64p6 = "m64 fpu-hard power6 altivec bigendian"
+BASE_LIB:tune-ppc64p6 = "lib64"
+TUNE_PKGARCH:tune-ppc64p6 = "ppc64p6"
+PACKAGE_EXTRA_ARCHS:tune-ppc64p6 = "${PACKAGE_EXTRA_ARCHS:tune-powerpc64} ppc64p6"
 
 # glibc configure options to get power6 specific library
-GLIBC_EXTRA_OECONF_powerpc64 += "${@bb.utils.contains('TUNE_FEATURES', 'power6', '--with-cpu=power6', '', d)}"
-GLIBC_EXTRA_OECONF_powerpc += "${@bb.utils.contains('TUNE_FEATURES', 'power6', '--with-cpu=power6', '', d)}"
+GLIBC_EXTRA_OECONF:powerpc64 += "${@bb.utils.contains('TUNE_FEATURES', 'power6', '--with-cpu=power6', '', d)}"
+GLIBC_EXTRA_OECONF:powerpc += "${@bb.utils.contains('TUNE_FEATURES', 'power6', '--with-cpu=power6', '', d)}"
 
 # QEMU usermode fails with invalid instruction error
-MACHINE_FEATURES_BACKFILL_CONSIDERED_append = "${@bb.utils.contains('TUNE_FEATURES', 'power6', ' qemu-usermode', '', d)}"
+MACHINE_FEATURES_BACKFILL_CONSIDERED:append = "${@bb.utils.contains('TUNE_FEATURES', 'power6', ' qemu-usermode', '', d)}"
diff --git a/poky/meta/conf/machine/include/tune-power7.inc b/poky/meta/conf/machine/include/tune-power7.inc
index e976cc0..4531ddd 100644
--- a/poky/meta/conf/machine/include/tune-power7.inc
+++ b/poky/meta/conf/machine/include/tune-power7.inc
@@ -6,19 +6,19 @@
 TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'power7', ' -mcpu=power7', '', d)}"
 
 AVAILTUNES += "ppcp7 ppc64p7"
-TUNE_FEATURES_tune-ppcp7 = "m32 fpu-hard power7 altivec bigendian"
-BASE_LIB_tune-ppcp7 = "lib"
-TUNE_PKGARCH_tune-ppcp7 = "ppcp7"
-PACKAGE_EXTRA_ARCHS_tune-ppcp7 = "${PACKAGE_EXTRA_ARCHS_tune-powerpc} ppcp7"
+TUNE_FEATURES:tune-ppcp7 = "m32 fpu-hard power7 altivec bigendian"
+BASE_LIB:tune-ppcp7 = "lib"
+TUNE_PKGARCH:tune-ppcp7 = "ppcp7"
+PACKAGE_EXTRA_ARCHS:tune-ppcp7 = "${PACKAGE_EXTRA_ARCHS:tune-powerpc} ppcp7"
 
-TUNE_FEATURES_tune-ppc64p7 = "m64 fpu-hard power7 altivec bigendian"
-BASE_LIB_tune-ppc64p7 = "lib64"
-TUNE_PKGARCH_tune-ppc64p7 = "ppc64p7"
-PACKAGE_EXTRA_ARCHS_tune-ppc64p7 = "${PACKAGE_EXTRA_ARCHS_tune-powerpc64} ppc64p7"
+TUNE_FEATURES:tune-ppc64p7 = "m64 fpu-hard power7 altivec bigendian"
+BASE_LIB:tune-ppc64p7 = "lib64"
+TUNE_PKGARCH:tune-ppc64p7 = "ppc64p7"
+PACKAGE_EXTRA_ARCHS:tune-ppc64p7 = "${PACKAGE_EXTRA_ARCHS:tune-powerpc64} ppc64p7"
 
 # glibc configure options to get power7 specific library
-GLIBC_EXTRA_OECONF_powerpc64 += "${@bb.utils.contains('TUNE_FEATURES', 'power7', '--with-cpu=power7', '', d)}"
-GLIBC_EXTRA_OECONF_powerpc += "${@bb.utils.contains('TUNE_FEATURES', 'power7', '--with-cpu=power7', '', d)}"
+GLIBC_EXTRA_OECONF:powerpc64 += "${@bb.utils.contains('TUNE_FEATURES', 'power7', '--with-cpu=power7', '', d)}"
+GLIBC_EXTRA_OECONF:powerpc += "${@bb.utils.contains('TUNE_FEATURES', 'power7', '--with-cpu=power7', '', d)}"
 
 # QEMU usermode fails with invalid instruction error
-MACHINE_FEATURES_BACKFILL_CONSIDERED_append = "${@bb.utils.contains('TUNE_FEATURES', 'power7', ' qemu-usermode', '', d)}"
+MACHINE_FEATURES_BACKFILL_CONSIDERED:append = "${@bb.utils.contains('TUNE_FEATURES', 'power7', ' qemu-usermode', '', d)}"
diff --git a/poky/meta/conf/machine/include/tune-power9.inc b/poky/meta/conf/machine/include/tune-power9.inc
index 401b737..6744731 100644
--- a/poky/meta/conf/machine/include/tune-power9.inc
+++ b/poky/meta/conf/machine/include/tune-power9.inc
@@ -7,25 +7,25 @@
 
 AVAILTUNES += "ppcp9 ppc64p9 ppcp9le ppc64p9le"
 
-TUNE_FEATURES_tune-ppcp9 = "m32 fpu-hard power9 altivec bigendian"
-BASE_LIB_tune-ppcp9 = "lib"
-TUNE_PKGARCH_tune-ppcp9 = "ppcp9"
-PACKAGE_EXTRA_ARCHS_tune-ppcp9 = "${PACKAGE_EXTRA_ARCHS_tune-powerpc} ppcp9"
+TUNE_FEATURES:tune-ppcp9 = "m32 fpu-hard power9 altivec bigendian"
+BASE_LIB:tune-ppcp9 = "lib"
+TUNE_PKGARCH:tune-ppcp9 = "ppcp9"
+PACKAGE_EXTRA_ARCHS:tune-ppcp9 = "${PACKAGE_EXTRA_ARCHS:tune-powerpc} ppcp9"
 
-TUNE_FEATURES_tune-ppc64p9 = "m64 fpu-hard power9 altivec bigendian"
-BASE_LIB_tune-ppc64p9 = "lib64"
-TUNE_PKGARCH_tune-ppc64p9 = "ppc64p9"
-PACKAGE_EXTRA_ARCHS_tune-ppc64p9 = "${PACKAGE_EXTRA_ARCHS_tune-powerpc64} ppc64p9"
+TUNE_FEATURES:tune-ppc64p9 = "m64 fpu-hard power9 altivec bigendian"
+BASE_LIB:tune-ppc64p9 = "lib64"
+TUNE_PKGARCH:tune-ppc64p9 = "ppc64p9"
+PACKAGE_EXTRA_ARCHS:tune-ppc64p9 = "${PACKAGE_EXTRA_ARCHS:tune-powerpc64} ppc64p9"
 
-TUNE_FEATURES_tune-ppcp9le = "m32 fpu-hard power9 altivec"
-BASE_LIB_tune-ppcp9le = "lib"
-TUNE_PKGARCH_tune-ppcp9le = "ppcp9le"
-PACKAGE_EXTRA_ARCHS_tune-ppcp9le = "${PACKAGE_EXTRA_ARCHS_tune-powerpcle} ppcp9le"
+TUNE_FEATURES:tune-ppcp9le = "m32 fpu-hard power9 altivec"
+BASE_LIB:tune-ppcp9le = "lib"
+TUNE_PKGARCH:tune-ppcp9le = "ppcp9le"
+PACKAGE_EXTRA_ARCHS:tune-ppcp9le = "${PACKAGE_EXTRA_ARCHS:tune-powerpcle} ppcp9le"
 
-TUNE_FEATURES_tune-ppc64p9le = "m64 fpu-hard power9 altivec"
-BASE_LIB_tune-ppc64p9le = "lib64"
-TUNE_PKGARCH_tune-ppc64p9le = "ppc64p9le"
-PACKAGE_EXTRA_ARCHS_tune-ppc64p9le = "${PACKAGE_EXTRA_ARCHS_tune-powerpc64le} ppc64p9le"
+TUNE_FEATURES:tune-ppc64p9le = "m64 fpu-hard power9 altivec"
+BASE_LIB:tune-ppc64p9le = "lib64"
+TUNE_PKGARCH:tune-ppc64p9le = "ppc64p9le"
+PACKAGE_EXTRA_ARCHS:tune-ppc64p9le = "${PACKAGE_EXTRA_ARCHS:tune-powerpc64le} ppc64p9le"
 
 # glibc configure options to get power9 specific library
 GLIBC_EXTRA_OECONF += "${@bb.utils.contains('TUNE_FEATURES', 'power9', '--with-cpu=power9', '', d)}"
diff --git a/poky/meta/conf/machine/include/tune-ppc476.inc b/poky/meta/conf/machine/include/tune-ppc476.inc
index 31eecc4..54152cb 100644
--- a/poky/meta/conf/machine/include/tune-ppc476.inc
+++ b/poky/meta/conf/machine/include/tune-ppc476.inc
@@ -6,9 +6,9 @@
 TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'ppc476', ' -mcpu=476', '', d)}"
 
 AVAILTUNES += "ppc476"
-TUNE_FEATURES_tune-ppc476 = "m32 fpu-hard ppc476 bigendian"
-TUNE_PKGARCH_tune-ppc476 = "ppc476"
-PACKAGE_EXTRA_ARCHS_tune-ppc476 = "${PACKAGE_EXTRA_ARCHS_tune-powerpc} ppc476"
+TUNE_FEATURES:tune-ppc476 = "m32 fpu-hard ppc476 bigendian"
+TUNE_PKGARCH:tune-ppc476 = "ppc476"
+PACKAGE_EXTRA_ARCHS:tune-ppc476 = "${PACKAGE_EXTRA_ARCHS:tune-powerpc} ppc476"
 
 # glibc configure options to get 476 specific library (for sqrt)
 GLIBC_EXTRA_OECONF += "${@bb.utils.contains('TUNE_FEATURES', 'ppc476', '-with-cpu=476', '', d)}"
diff --git a/poky/meta/conf/machine/include/tune-ppc603e.inc b/poky/meta/conf/machine/include/tune-ppc603e.inc
index b110f13..8beec00 100644
--- a/poky/meta/conf/machine/include/tune-ppc603e.inc
+++ b/poky/meta/conf/machine/include/tune-ppc603e.inc
@@ -6,9 +6,9 @@
 TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'ppc603e', ' -mcpu=603e', '', d)}"
 
 AVAILTUNES += "ppc603e"
-TUNE_FEATURES_tune-ppc603e = "m32 fpu-hard ppc603e bigendian"
-TUNE_PKGARCH_tune-ppc603e = "ppc603e"
-PACKAGE_EXTRA_ARCHS_tune-ppc603e = "${PACKAGE_EXTRA_ARCHS_tune-powerpc} ppc603e"
+TUNE_FEATURES:tune-ppc603e = "m32 fpu-hard ppc603e bigendian"
+TUNE_PKGARCH:tune-ppc603e = "ppc603e"
+PACKAGE_EXTRA_ARCHS:tune-ppc603e = "${PACKAGE_EXTRA_ARCHS:tune-powerpc} ppc603e"
 
 # glibc configure options to get 603e specific library (for sqrt)
 GLIBC_EXTRA_OECONF += "${@bb.utils.contains('TUNE_FEATURES', 'ppc603e', '-with-cpu=603e', '', d)}"
diff --git a/poky/meta/conf/machine/include/tune-ppc7400.inc b/poky/meta/conf/machine/include/tune-ppc7400.inc
index 92d9029..1e2c9fc 100644
--- a/poky/meta/conf/machine/include/tune-ppc7400.inc
+++ b/poky/meta/conf/machine/include/tune-ppc7400.inc
@@ -6,9 +6,9 @@
 TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'ppc7400', ' -mcpu=7400 -mno-spe', '', d)}"
 
 AVAILTUNES += "ppc7400"
-TUNE_FEATURES_tune-ppc7400 = "m32 fpu-hard ppc7400 altivec bigendian"
-TUNE_PKGARCH_tune-ppc7400 = "ppc7400"
-PACKAGE_EXTRA_ARCHS_tune-ppc7400 = "${PACKAGE_EXTRA_ARCHS_tune-powerpc} ppc7400"
+TUNE_FEATURES:tune-ppc7400 = "m32 fpu-hard ppc7400 altivec bigendian"
+TUNE_PKGARCH:tune-ppc7400 = "ppc7400"
+PACKAGE_EXTRA_ARCHS:tune-ppc7400 = "${PACKAGE_EXTRA_ARCHS:tune-powerpc} ppc7400"
 
 # glibc configure options to get 7400 specific library (for sqrt)
 #GLIBC_EXTRA_OECONF += "${@bb.utils.contains('TUNE_FEATURES', 'ppc7400', '--with-cpu=power4', '', d)}"
diff --git a/poky/meta/conf/machine/include/tune-ppce300c2.inc b/poky/meta/conf/machine/include/tune-ppce300c2.inc
index 6adeb4b..90171c7 100644
--- a/poky/meta/conf/machine/include/tune-ppce300c2.inc
+++ b/poky/meta/conf/machine/include/tune-ppce300c2.inc
@@ -6,6 +6,6 @@
 TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'ppce300c2', ' -mcpu=e300c2', '', d)}"
 
 AVAILTUNES += "ppce300c2"
-TUNE_FEATURES_tune-ppce300c2 = "m32 fpu-soft ppce300c2 bigendian"
-TUNE_PKGARCH_tune-ppce300c2 = "ppce300c2"
-PACKAGE_EXTRA_ARCHS_tune-ppce300c2 = "${PACKAGE_EXTRA_ARCHS_tune-powerpc-nf} ppce300c2"
+TUNE_FEATURES:tune-ppce300c2 = "m32 fpu-soft ppce300c2 bigendian"
+TUNE_PKGARCH:tune-ppce300c2 = "ppce300c2"
+PACKAGE_EXTRA_ARCHS:tune-ppce300c2 = "${PACKAGE_EXTRA_ARCHS:tune-powerpc-nf} ppce300c2"
diff --git a/poky/meta/conf/machine/include/tune-ppce300c3.inc b/poky/meta/conf/machine/include/tune-ppce300c3.inc
index a3d836c..b74b6ad 100644
--- a/poky/meta/conf/machine/include/tune-ppce300c3.inc
+++ b/poky/meta/conf/machine/include/tune-ppce300c3.inc
@@ -6,9 +6,9 @@
 
 # hard-float
 TUNEVALID[ppce300c3] = "Enable ppce300c3 specific processor optimizations"
-TUNE_FEATURES_tune-ppce300c3 = "${TUNE_FEATURES_tune-powerpc} ppce300c3"
-TUNE_PKGARCH_tune-ppce300c3 = "ppce300c3"
-PACKAGE_EXTRA_ARCHS_tune-ppce300c3 = "${PACKAGE_EXTRA_ARCHS_tune-powerpc} ppce300c3"
+TUNE_FEATURES:tune-ppce300c3 = "${TUNE_FEATURES:tune-powerpc} ppce300c3"
+TUNE_PKGARCH:tune-ppce300c3 = "ppce300c3"
+PACKAGE_EXTRA_ARCHS:tune-ppce300c3 = "${PACKAGE_EXTRA_ARCHS:tune-powerpc} ppce300c3"
 TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'ppce300c3', ' -mcpu=e300c3', '', d)}"
 
 # glibc config options to make use of e300c3 (603e) specific sqrt/sqrtf routines
@@ -16,8 +16,8 @@
 
 # soft-float
 TUNEVALID[ppce300c3-nf] = "Enable ppce300c3 specific processor optimizations (no fpu)"
-TUNE_FEATURES_tune-ppce300c3-nf = "${TUNE_FEATURES_tune-powerpc-nf} ppce300c3-nf"
-TUNE_PKGARCH_tune-ppce300c3-nf = "ppce300c3-nf"
-PACKAGE_EXTRA_ARCHS_tune-ppce300c3-nf = "${PACKAGE_EXTRA_ARCHS_tune-powerpc-nf} ppce300c3-nf"
+TUNE_FEATURES:tune-ppce300c3-nf = "${TUNE_FEATURES:tune-powerpc-nf} ppce300c3-nf"
+TUNE_PKGARCH:tune-ppce300c3-nf = "ppce300c3-nf"
+PACKAGE_EXTRA_ARCHS:tune-ppce300c3-nf = "${PACKAGE_EXTRA_ARCHS:tune-powerpc-nf} ppce300c3-nf"
 TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'ppce300c3-nf', ' -mcpu=e300c3', '', d)}"
 
diff --git a/poky/meta/conf/machine/include/tune-ppce500.inc b/poky/meta/conf/machine/include/tune-ppce500.inc
index abf81b9..aceab32 100644
--- a/poky/meta/conf/machine/include/tune-ppce500.inc
+++ b/poky/meta/conf/machine/include/tune-ppce500.inc
@@ -15,6 +15,6 @@
 ABIEXTENSION .= "${SPEABIEXTENSION}"
 
 AVAILTUNES += "ppce500"
-TUNE_FEATURES_tune-ppce500 = "m32 spe ppce500 bigendian"
-TUNE_PKGARCH_tune-ppce500 = "ppce500"
-PACKAGE_EXTRA_ARCHS_tune-ppce500 = "ppce500"
+TUNE_FEATURES:tune-ppce500 = "m32 spe ppce500 bigendian"
+TUNE_PKGARCH:tune-ppce500 = "ppce500"
+PACKAGE_EXTRA_ARCHS:tune-ppce500 = "ppce500"
diff --git a/poky/meta/conf/machine/include/tune-ppce500mc.inc b/poky/meta/conf/machine/include/tune-ppce500mc.inc
index 9f8a172..e3524a1 100644
--- a/poky/meta/conf/machine/include/tune-ppce500mc.inc
+++ b/poky/meta/conf/machine/include/tune-ppce500mc.inc
@@ -6,9 +6,9 @@
 TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'ppce500mc', ' -mcpu=e500mc', '', d)}"
 
 AVAILTUNES += "ppce500mc"
-TUNE_FEATURES_tune-ppce500mc = "m32 fpu-hard ppce500mc bigendian"
-TUNE_PKGARCH_tune-ppce500mc = "ppce500mc"
-PACKAGE_EXTRA_ARCHS_tune-ppce500mc = "${PACKAGE_EXTRA_ARCHS_tune-powerpc} ppce500mc"
+TUNE_FEATURES:tune-ppce500mc = "m32 fpu-hard ppce500mc bigendian"
+TUNE_PKGARCH:tune-ppce500mc = "ppce500mc"
+PACKAGE_EXTRA_ARCHS:tune-ppce500mc = "${PACKAGE_EXTRA_ARCHS:tune-powerpc} ppce500mc"
 
 # glibc configure options to get e500mc specific library (for sqrt)
 GLIBC_EXTRA_OECONF += "${@bb.utils.contains('TUNE_FEATURES', 'ppce500mc', '-with-cpu=e500mc', '', d)}"
diff --git a/poky/meta/conf/machine/include/tune-ppce500v2.inc b/poky/meta/conf/machine/include/tune-ppce500v2.inc
index f6c7c17..461164d 100644
--- a/poky/meta/conf/machine/include/tune-ppce500v2.inc
+++ b/poky/meta/conf/machine/include/tune-ppce500v2.inc
@@ -15,6 +15,6 @@
 ABIEXTENSION .= "${SPEABIEXTENSION}"
 
 AVAILTUNES += "ppce500v2"
-TUNE_FEATURES_tune-ppce500v2 = "m32 ppce500v2 bigendian"
-TUNE_PKGARCH_tune-ppce500v2 = "ppce500v2"
-PACKAGE_EXTRA_ARCHS_tune-ppce500v2 = "ppce500v2"
+TUNE_FEATURES:tune-ppce500v2 = "m32 ppce500v2 bigendian"
+TUNE_PKGARCH:tune-ppce500v2 = "ppce500v2"
+PACKAGE_EXTRA_ARCHS:tune-ppce500v2 = "ppce500v2"
diff --git a/poky/meta/conf/machine/include/tune-ppce5500.inc b/poky/meta/conf/machine/include/tune-ppce5500.inc
index acc6a50..2cf7b17 100644
--- a/poky/meta/conf/machine/include/tune-ppce5500.inc
+++ b/poky/meta/conf/machine/include/tune-ppce5500.inc
@@ -6,18 +6,18 @@
 TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'e5500', ' -mcpu=e5500', '', d)}"
 
 AVAILTUNES += "ppce5500 ppc64e5500"
-TUNE_FEATURES_tune-ppce5500 = "m32 fpu-hard e5500 bigendian"
-BASE_LIB_tune-ppce5500 = "lib"
-TUNE_PKGARCH_tune-ppce5500 = "ppce5500"
-PACKAGE_EXTRA_ARCHS_tune-ppce5500 = "${PACKAGE_EXTRA_ARCHS_tune-powerpc} ppce5500"
+TUNE_FEATURES:tune-ppce5500 = "m32 fpu-hard e5500 bigendian"
+BASE_LIB:tune-ppce5500 = "lib"
+TUNE_PKGARCH:tune-ppce5500 = "ppce5500"
+PACKAGE_EXTRA_ARCHS:tune-ppce5500 = "${PACKAGE_EXTRA_ARCHS:tune-powerpc} ppce5500"
 
-TUNE_FEATURES_tune-ppc64e5500 = "m64 fpu-hard e5500 bigendian"
-BASE_LIB_tune-ppc64e5500 = "lib64"
-TUNE_PKGARCH_tune-ppc64e5500 = "ppc64e5500"
-PACKAGE_EXTRA_ARCHS_tune-ppc64e5500 = "${PACKAGE_EXTRA_ARCHS_tune-powerpc64} ppc64e5500"
+TUNE_FEATURES:tune-ppc64e5500 = "m64 fpu-hard e5500 bigendian"
+BASE_LIB:tune-ppc64e5500 = "lib64"
+TUNE_PKGARCH:tune-ppc64e5500 = "ppc64e5500"
+PACKAGE_EXTRA_ARCHS:tune-ppc64e5500 = "${PACKAGE_EXTRA_ARCHS:tune-powerpc64} ppc64e5500"
 
 # glibc configure options to get e5500 specific library (for sqrt)
 GLIBC_EXTRA_OECONF += "${@bb.utils.contains('TUNE_FEATURES', 'e5500', '--with-cpu=e5500', '', d)}"
 
 # QEMU usermode fails with invalid instruction error (YOCTO: #10304)
-MACHINE_FEATURES_BACKFILL_CONSIDERED_append = "${@bb.utils.contains('TUNE_FEATURES', 'e5500', ' qemu-usermode', '', d)}"
+MACHINE_FEATURES_BACKFILL_CONSIDERED:append = "${@bb.utils.contains('TUNE_FEATURES', 'e5500', ' qemu-usermode', '', d)}"
diff --git a/poky/meta/conf/machine/include/tune-ppce6500.inc b/poky/meta/conf/machine/include/tune-ppce6500.inc
index d12d218..e78de35 100644
--- a/poky/meta/conf/machine/include/tune-ppce6500.inc
+++ b/poky/meta/conf/machine/include/tune-ppce6500.inc
@@ -6,19 +6,19 @@
 TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'e6500', ' -mcpu=e6500', '', d)}"
 
 AVAILTUNES += "ppce6500 ppc64e6500"
-TUNE_FEATURES_tune-ppce6500 = "m32 fpu-hard e6500 altivec bigendian"
-BASE_LIB_tune-ppce6500 = "lib"
-TUNE_PKGARCH_tune-ppce6500 = "ppce6500"
-PACKAGE_EXTRA_ARCHS_tune-ppce6500 = "${PACKAGE_EXTRA_ARCHS_tune-powerpc} ppce6500"
+TUNE_FEATURES:tune-ppce6500 = "m32 fpu-hard e6500 altivec bigendian"
+BASE_LIB:tune-ppce6500 = "lib"
+TUNE_PKGARCH:tune-ppce6500 = "ppce6500"
+PACKAGE_EXTRA_ARCHS:tune-ppce6500 = "${PACKAGE_EXTRA_ARCHS:tune-powerpc} ppce6500"
 
-TUNE_FEATURES_tune-ppc64e6500 = "m64 fpu-hard e6500 altivec bigendian"
-BASE_LIB_tune-ppc64e6500 = "lib64"
-TUNE_PKGARCH_tune-ppc64e6500 = "ppc64e6500"
-PACKAGE_EXTRA_ARCHS_tune-ppc64e6500 = "${PACKAGE_EXTRA_ARCHS_tune-powerpc64} ppc64e6500"
+TUNE_FEATURES:tune-ppc64e6500 = "m64 fpu-hard e6500 altivec bigendian"
+BASE_LIB:tune-ppc64e6500 = "lib64"
+TUNE_PKGARCH:tune-ppc64e6500 = "ppc64e6500"
+PACKAGE_EXTRA_ARCHS:tune-ppc64e6500 = "${PACKAGE_EXTRA_ARCHS:tune-powerpc64} ppc64e6500"
 
 # glibc configure options to get e6500 specific library
-GLIBC_EXTRA_OECONF_powerpc64 += "${@bb.utils.contains('TUNE_FEATURES', 'e6500', '--with-cpu=e6500', '', d)}"
-GLIBC_EXTRA_OECONF_powerpc += "${@bb.utils.contains('TUNE_FEATURES', 'e6500', '--with-cpu=e6500', '', d)}"
+GLIBC_EXTRA_OECONF:powerpc64 += "${@bb.utils.contains('TUNE_FEATURES', 'e6500', '--with-cpu=e6500', '', d)}"
+GLIBC_EXTRA_OECONF:powerpc += "${@bb.utils.contains('TUNE_FEATURES', 'e6500', '--with-cpu=e6500', '', d)}"
 
 # QEMU usermode fails with invalid instruction error (YOCTO: #10304)
-MACHINE_FEATURES_BACKFILL_CONSIDERED_append = "${@bb.utils.contains('TUNE_FEATURES', 'e6500', ' qemu-usermode', '', d)}"
+MACHINE_FEATURES_BACKFILL_CONSIDERED:append = "${@bb.utils.contains('TUNE_FEATURES', 'e6500', ' qemu-usermode', '', d)}"
diff --git a/poky/meta/conf/machine/include/tune-sh3.inc b/poky/meta/conf/machine/include/tune-sh3.inc
index 80df9a0..77d0b71 100644
--- a/poky/meta/conf/machine/include/tune-sh3.inc
+++ b/poky/meta/conf/machine/include/tune-sh3.inc
@@ -6,12 +6,12 @@
 TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'sh3', ' -m3', '', d)}"
 
 AVAILTUNES += "sh3 sh3eb"
-TUNE_FEATURES_tune-sh3 = "sh3"
-TUNE_ARCH_tune-sh3 = "sh3"
-TUNE_PKGARCH_tune-sh3 = "sh3"
-PACKAGE_EXTRA_ARCHS_tune-sh3 = "sh sh3"
+TUNE_FEATURES:tune-sh3 = "sh3"
+TUNE_ARCH:tune-sh3 = "sh3"
+TUNE_PKGARCH:tune-sh3 = "sh3"
+PACKAGE_EXTRA_ARCHS:tune-sh3 = "sh sh3"
 
-TUNE_FEATURES_tune-sh3eb = "sh3 bigendian"
-TUNE_ARCH_tune-sh3eb = "sh3eb"
-TUNE_PKGARCH_tune-sh3eb = "sh3eb"
-PACKAGE_EXTRA_ARCHS_tune-sh3eb = "sheb sh3eb"
+TUNE_FEATURES:tune-sh3eb = "sh3 bigendian"
+TUNE_ARCH:tune-sh3eb = "sh3eb"
+TUNE_PKGARCH:tune-sh3eb = "sh3eb"
+PACKAGE_EXTRA_ARCHS:tune-sh3eb = "sheb sh3eb"
diff --git a/poky/meta/conf/machine/include/tune-sh4.inc b/poky/meta/conf/machine/include/tune-sh4.inc
index 4160c30..e21ede3 100644
--- a/poky/meta/conf/machine/include/tune-sh4.inc
+++ b/poky/meta/conf/machine/include/tune-sh4.inc
@@ -13,22 +13,22 @@
 TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'sh4a', ' -m4a', '', d)}"
 
 AVAILTUNES += "sh4 sh4eb sh4a sh4aeb"
-TUNE_FEATURES_tune-sh4 = "sh4"
-TUNE_ARCH_tune-sh4 = "sh4"
-TUNE_PKGARCH_tune-sh4 = "sh4"
-PACKAGE_EXTRA_ARCHS_tune-sh4 = "sh sh4"
+TUNE_FEATURES:tune-sh4 = "sh4"
+TUNE_ARCH:tune-sh4 = "sh4"
+TUNE_PKGARCH:tune-sh4 = "sh4"
+PACKAGE_EXTRA_ARCHS:tune-sh4 = "sh sh4"
 
-TUNE_FEATURES_tune-sh4eb = "sh4 bigendian"
-TUNE_ARCH_tune-sh4eb = "sh4eb"
-TUNE_PKGARCH_tune-sh4eb = "sh4eb"
-PACKAGE_EXTRA_ARCHS_tune-sh4eb = "sheb sh4eb"
+TUNE_FEATURES:tune-sh4eb = "sh4 bigendian"
+TUNE_ARCH:tune-sh4eb = "sh4eb"
+TUNE_PKGARCH:tune-sh4eb = "sh4eb"
+PACKAGE_EXTRA_ARCHS:tune-sh4eb = "sheb sh4eb"
 
-TUNE_FEATURES_tune-sh4a = "sh4a"
-TUNE_ARCH_tune-sh4a = "sh4"
-TUNE_PKGARCH_tune-sh4a = "sh4a"
-PACKAGE_EXTRA_ARCHS_tune-sh4a = "sh sh4 sh4a"
+TUNE_FEATURES:tune-sh4a = "sh4a"
+TUNE_ARCH:tune-sh4a = "sh4"
+TUNE_PKGARCH:tune-sh4a = "sh4a"
+PACKAGE_EXTRA_ARCHS:tune-sh4a = "sh sh4 sh4a"
 
-TUNE_FEATURES_tune-sh4aeb = "sh4a bigendian"
-TUNE_ARCH_tune-sh4aeb = "sh4eb"
-TUNE_PKGARCH_tune-sh4aeb = "sh4aeb"
-PACKAGE_EXTRA_ARCHS_tune-sh4aeb = "sheb sh4eb sh4aeb"
+TUNE_FEATURES:tune-sh4aeb = "sh4a bigendian"
+TUNE_ARCH:tune-sh4aeb = "sh4eb"
+TUNE_PKGARCH:tune-sh4aeb = "sh4aeb"
+PACKAGE_EXTRA_ARCHS:tune-sh4aeb = "sheb sh4eb sh4aeb"
diff --git a/poky/meta/conf/machine/include/tune-strongarm1100.inc b/poky/meta/conf/machine/include/tune-strongarm1100.inc
index 9479965..6f5033b 100644
--- a/poky/meta/conf/machine/include/tune-strongarm1100.inc
+++ b/poky/meta/conf/machine/include/tune-strongarm1100.inc
@@ -7,6 +7,6 @@
 MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES', 'strongarm', 'armv4:', '', d)}"
 
 AVAILTUNES += "strongarm"
-ARMPKGARCH_tune-strongarm = "strongarm"
-TUNE_FEATURES_tune-strongarm = "arm strongarm"
-PACKAGE_EXTRA_ARCHS_tune-strongarm = "${PACKAGE_EXTRA_ARCHS_tune-armv4} strongarm"
+ARMPKGARCH:tune-strongarm = "strongarm"
+TUNE_FEATURES:tune-strongarm = "arm strongarm"
+PACKAGE_EXTRA_ARCHS:tune-strongarm = "${PACKAGE_EXTRA_ARCHS:tune-armv4} strongarm"
diff --git a/poky/meta/conf/machine/include/tune-thunderx.inc b/poky/meta/conf/machine/include/tune-thunderx.inc
index d1aaf48..7bc6282 100644
--- a/poky/meta/conf/machine/include/tune-thunderx.inc
+++ b/poky/meta/conf/machine/include/tune-thunderx.inc
@@ -7,13 +7,13 @@
 
 require conf/machine/include/arm/arch-armv8a.inc
 
-ARMPKGARCH_tune-thunderx ?= "thunderx"
-ARMPKGARCH_tune-thunderx_be ?= "thunderx"
+ARMPKGARCH:tune-thunderx ?= "thunderx"
+ARMPKGARCH:tune-thunderx_be ?= "thunderx"
 
-TUNE_FEATURES_tune-thunderx = "${TUNE_FEATURES_tune-aarch64} thunderx"
-TUNE_FEATURES_tune-thunderx_be = "${TUNE_FEATURES_tune-thunderx} bigendian"
-BASE_LIB_tune-thunderx = "lib64"
-BASE_LIB_tune-thunderx_be = "lib64"
+TUNE_FEATURES:tune-thunderx = "${TUNE_FEATURES:tune-aarch64} thunderx"
+TUNE_FEATURES:tune-thunderx_be = "${TUNE_FEATURES:tune-thunderx} bigendian"
+BASE_LIB:tune-thunderx = "lib64"
+BASE_LIB:tune-thunderx_be = "lib64"
 
-PACKAGE_EXTRA_ARCHS_tune-thunderx = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} thunderx"
-PACKAGE_EXTRA_ARCHS_tune-thunderx_be = "aarch64_be thunderx_be"
+PACKAGE_EXTRA_ARCHS:tune-thunderx = "${PACKAGE_EXTRA_ARCHS:tune-armv8a-crc-crypto} thunderx"
+PACKAGE_EXTRA_ARCHS:tune-thunderx_be = "aarch64_be thunderx_be"
diff --git a/poky/meta/conf/machine/include/tune-xscale.inc b/poky/meta/conf/machine/include/tune-xscale.inc
index aeac365..cc67dcd 100644
--- a/poky/meta/conf/machine/include/tune-xscale.inc
+++ b/poky/meta/conf/machine/include/tune-xscale.inc
@@ -7,13 +7,13 @@
 MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES', 'xscale', 'armv5:', '', d)}"
 
 AVAILTUNES += "xscale"
-ARMPKGARCH_tune-xscale = "xscale"
+ARMPKGARCH:tune-xscale = "xscale"
 # mcpu is used so don't use armv5te as we don't want march
-TUNE_FEATURES_tune-xscale = "arm thumb dsp xscale"
-PACKAGE_EXTRA_ARCHS_tune-xscale = "${PACKAGE_EXTRA_ARCHS_tune-armv5te} xscale xscalet xscalee xscalete"
+TUNE_FEATURES:tune-xscale = "arm thumb dsp xscale"
+PACKAGE_EXTRA_ARCHS:tune-xscale = "${PACKAGE_EXTRA_ARCHS:tune-armv5te} xscale xscalet xscalee xscalete"
 
 AVAILTUNES += "xscale-be"
-ARMPKGARCH_tune-xscale-be = "xscale"
+ARMPKGARCH:tune-xscale-be = "xscale"
 # mcpu is used so don't use armv5te as we don't want march
-TUNE_FEATURES_tune-xscale-be = "${TUNE_FEATURES_tune-xscale} bigendian"
-PACKAGE_EXTRA_ARCHS_tune-xscale-be = "${PACKAGE_EXTRA_ARCHS_tune-armv5teb} xscaleb xscaletb xscaleeb xscaleteb"
+TUNE_FEATURES:tune-xscale-be = "${TUNE_FEATURES:tune-xscale} bigendian"
+PACKAGE_EXTRA_ARCHS:tune-xscale-be = "${PACKAGE_EXTRA_ARCHS:tune-armv5teb} xscaleb xscaletb xscaleeb xscaleteb"
diff --git a/poky/meta/conf/machine/include/x86/README b/poky/meta/conf/machine/include/x86/README
index 2b6c46c..05aee53 100644
--- a/poky/meta/conf/machine/include/x86/README
+++ b/poky/meta/conf/machine/include/x86/README
@@ -14,7 +14,7 @@
 
 The TUNE_PKGARCH is defined as follows:
 
-TUNE_PKGARCH = ${TUNE_PKGARCH_tune-${DEFAULTTUNE}}
+TUNE_PKGARCH = ${TUNE_PKGARCH:tune-${DEFAULTTUNE}}
 
 The package architecture for 32-bit targets is historical and generally
 set to to match the core compatible processor type, i.e. i386.
diff --git a/poky/meta/conf/machine/include/x86/arch-x86.inc b/poky/meta/conf/machine/include/x86/arch-x86.inc
index 2edb360..28742e7 100644
--- a/poky/meta/conf/machine/include/x86/arch-x86.inc
+++ b/poky/meta/conf/machine/include/x86/arch-x86.inc
@@ -7,7 +7,7 @@
 X86ARCH32 ?= "i586"
 X86ARCH64 ?= "x86_64"
 
-TUNE_PKGARCH = "${TUNE_PKGARCH_tune-${DEFAULTTUNE}}"
+TUNE_PKGARCH = "${TUNE_PKGARCH:tune-${DEFAULTTUNE}}"
 
 # ELF32 ABI
 TUNEVALID[m32] = "IA32 ELF32 standard ABI"
@@ -25,7 +25,7 @@
 TUNE_LDARGS += "${@bb.utils.contains('TUNE_FEATURES', 'mx32', '-m elf32_x86_64', '', d)}"
 TUNE_ASARGS += "${@bb.utils.contains('TUNE_FEATURES', 'mx32', '-x32', '', d)}"
 # user mode qemu doesn't support x32
-MACHINE_FEATURES_BACKFILL_CONSIDERED_append = " ${@bb.utils.contains('TUNE_FEATURES', 'mx32', 'qemu-usermode', '', d)}"
+MACHINE_FEATURES_BACKFILL_CONSIDERED:append = " ${@bb.utils.contains('TUNE_FEATURES', 'mx32', 'qemu-usermode', '', d)}"
 MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES', 'mx32', 'x86-x32:', '', d)}"
 
 # ELF64 ABI
@@ -36,19 +36,19 @@
 
 # Default Tune configurations
 AVAILTUNES += "x86"
-TUNE_FEATURES_tune-x86 = "m32"
-BASE_LIB_tune-x86 = "lib"
-TUNE_PKGARCH_tune-x86 = "x86"
-PACKAGE_EXTRA_ARCHS_tune-x86 = "${TUNE_PKGARCH_tune-x86}"
+TUNE_FEATURES:tune-x86 = "m32"
+BASE_LIB:tune-x86 = "lib"
+TUNE_PKGARCH:tune-x86 = "x86"
+PACKAGE_EXTRA_ARCHS:tune-x86 = "${TUNE_PKGARCH:tune-x86}"
 
 AVAILTUNES += "x86-64"
-TUNE_FEATURES_tune-x86-64 = "m64"
-BASE_LIB_tune-x86-64 = "lib64"
-TUNE_PKGARCH_tune-x86-64 = "x86_64"
-PACKAGE_EXTRA_ARCHS_tune-x86-64 = "${TUNE_PKGARCH_tune-x86-64}"
+TUNE_FEATURES:tune-x86-64 = "m64"
+BASE_LIB:tune-x86-64 = "lib64"
+TUNE_PKGARCH:tune-x86-64 = "x86_64"
+PACKAGE_EXTRA_ARCHS:tune-x86-64 = "${TUNE_PKGARCH:tune-x86-64}"
 
 AVAILTUNES += "x86-64-x32"
-TUNE_FEATURES_tune-x86-64-x32 = "mx32"
-BASE_LIB_tune-x86-64-x32 = "libx32"
-TUNE_PKGARCH_tune-x86-64-x32 = "x86_64_x32"
-PACKAGE_EXTRA_ARCHS_tune-x86-64-x32 = "${TUNE_PKGARCH_tune-x86-64-x32}"
+TUNE_FEATURES:tune-x86-64-x32 = "mx32"
+BASE_LIB:tune-x86-64-x32 = "libx32"
+TUNE_PKGARCH:tune-x86-64-x32 = "x86_64_x32"
+PACKAGE_EXTRA_ARCHS:tune-x86-64-x32 = "${TUNE_PKGARCH:tune-x86-64-x32}"
diff --git a/poky/meta/conf/machine/qemuarm.conf b/poky/meta/conf/machine/qemuarm.conf
index 34fcde6..f893f1a 100644
--- a/poky/meta/conf/machine/qemuarm.conf
+++ b/poky/meta/conf/machine/qemuarm.conf
@@ -7,7 +7,7 @@
 
 KERNEL_IMAGETYPE = "zImage"
 
-UBOOT_MACHINE ?= "qemu_arm_defconfig"
+UBOOT_MACHINE ?= "qemu:arm_defconfig"
 
 SERIAL_CONSOLES ?= "115200;ttyAMA0 115200;hvc0"
 SERIAL_CONSOLES_CHECK = "${SERIAL_CONSOLES}"
@@ -31,4 +31,4 @@
 QB_SERIAL_OPT = "-device virtio-serial-device -chardev null,id=virtcon -device virtconsole,chardev=virtcon"
 QB_TCPSERIAL_OPT = "-device virtio-serial-device -chardev socket,id=virtcon,port=@PORT@,host=127.0.0.1 -device virtconsole,chardev=virtcon"
 
-KMACHINE_qemuarm = "qemuarma15"
+KMACHINE:qemuarm = "qemuarma15"
diff --git a/poky/meta/conf/machine/qemuarm64.conf b/poky/meta/conf/machine/qemuarm64.conf
index 150a074..3dcb0d1 100644
--- a/poky/meta/conf/machine/qemuarm64.conf
+++ b/poky/meta/conf/machine/qemuarm64.conf
@@ -7,7 +7,7 @@
 
 KERNEL_IMAGETYPE = "Image"
 
-UBOOT_MACHINE ?= "qemu_arm64_defconfig"
+UBOOT_MACHINE ?= "qemu:arm64_defconfig"
 
 SERIAL_CONSOLES ?= "115200;ttyAMA0 115200;hvc0"
 SERIAL_CONSOLES_CHECK = "${SERIAL_CONSOLES}"
diff --git a/poky/meta/conf/machine/qemuarmv5.conf b/poky/meta/conf/machine/qemuarmv5.conf
index 7050bae..7650c2f 100644
--- a/poky/meta/conf/machine/qemuarmv5.conf
+++ b/poky/meta/conf/machine/qemuarmv5.conf
@@ -17,4 +17,4 @@
 PREFERRED_VERSION_linux-yocto ??= "5.10%"
 QB_DTB = "${@oe.utils.version_less_or_equal('PREFERRED_VERSION_linux-yocto', '4.7', '', 'zImage-versatile-pb.dtb', d)}"
 
-KMACHINE_qemuarmv5 = "qemuarm"
+KMACHINE:qemuarmv5 = "qemuarm"
diff --git a/poky/meta/conf/machine/qemumips.conf b/poky/meta/conf/machine/qemumips.conf
index 1373e4c..9b602fc 100644
--- a/poky/meta/conf/machine/qemumips.conf
+++ b/poky/meta/conf/machine/qemumips.conf
@@ -9,7 +9,7 @@
 KERNEL_IMAGETYPE = "vmlinux"
 KERNEL_ALT_IMAGETYPE = "vmlinux.bin"
 
-UBOOT_MACHINE ?= "qemu_mips_defconfig"
+UBOOT_MACHINE ?= "malta_defconfig"
 
 SERIAL_CONSOLES ?= "115200;ttyS0 115200;ttyS1"
 
diff --git a/poky/meta/conf/machine/qemumips64.conf b/poky/meta/conf/machine/qemumips64.conf
index 1e77486..b37d789 100644
--- a/poky/meta/conf/machine/qemumips64.conf
+++ b/poky/meta/conf/machine/qemumips64.conf
@@ -11,7 +11,7 @@
 KERNEL_IMAGETYPE = "vmlinux"
 KERNEL_ALT_IMAGETYPE = "vmlinux.bin"
 
-UBOOT_MACHINE ?= "qemu_mips64_defconfig"
+UBOOT_MACHINE ?= "malta64_defconfig"
 
 SERIAL_CONSOLES ?= "115200;ttyS0 115200;ttyS1"
 
diff --git a/poky/meta/conf/multilib.conf b/poky/meta/conf/multilib.conf
index d231107..8a8db58 100644
--- a/poky/meta/conf/multilib.conf
+++ b/poky/meta/conf/multilib.conf
@@ -1,5 +1,5 @@
 
-baselib = "${@d.getVar('BASE_LIB_tune-' + (d.getVar('DEFAULTTUNE') or 'INVALID')) or d.getVar('BASELIB')}"
+baselib = "${@d.getVar('BASE_LIB:tune-' + (d.getVar('DEFAULTTUNE') or 'INVALID')) or d.getVar('BASELIB')}"
 
 MULTILIB_VARIANTS = "${@extend_variants(d,'MULTILIBS','multilib')}"
 MULTILIB_SAVE_VARNAME = "DEFAULTTUNE TARGET_ARCH TARGET_SYS TARGET_VENDOR"
@@ -9,15 +9,15 @@
 STAGING_DIR_HOST = "${WORKDIR}/${MLPREFIX}recipe-sysroot"
 STAGING_DIR_TARGET = "${WORKDIR}/${MLPREFIX}recipe-sysroot"
 RECIPE_SYSROOT = "${WORKDIR}/${MLPREFIX}recipe-sysroot"
-RECIPE_SYSROOT_class-native = "${WORKDIR}/recipe-sysroot"
+RECIPE_SYSROOT:class-native = "${WORKDIR}/recipe-sysroot"
 
 INHERIT += "multilib_global"
 
-BBCLASSEXTEND_append = " ${MULTILIBS}"
+BBCLASSEXTEND:append = " ${MULTILIBS}"
 
 MULTILIB_GLOBAL_VARIANTS ?= "lib32 lib64 libx32"
 
-OPKG_ARGS_append = " --force-maintainer --force-overwrite"
+OPKG_ARGS:append = " --force-maintainer --force-overwrite"
 
 # When multilib is enabled, allarch recipes will be installed into the MACHINE
 # sysroot, not MLPREFIXMACHINE.  This means that anything using pkg-config to
diff --git a/poky/meta/conf/sanity.conf b/poky/meta/conf/sanity.conf
index 68d4523..95931a2 100644
--- a/poky/meta/conf/sanity.conf
+++ b/poky/meta/conf/sanity.conf
@@ -3,12 +3,12 @@
 # See sanity.bbclass
 #
 # Expert users can confirm their sanity with "touch conf/sanity.conf"
-BB_MIN_VERSION = "1.51.0"
+BB_MIN_VERSION = "1.51.1"
 
 SANITY_ABIFILE = "${TMPDIR}/abi_version"
 
 SANITY_VERSION ?= "1"
-LOCALCONF_VERSION  ?= "1"
+LOCALCONF_VERSION  ?= "2"
 LAYER_CONF_VERSION ?= "7"
 SITE_CONF_VERSION  ?= "1"
 
diff --git a/poky/meta/files/toolchain-shar-extract.sh b/poky/meta/files/toolchain-shar-extract.sh
index dd93427..4386b98 100644
--- a/poky/meta/files/toolchain-shar-extract.sh
+++ b/poky/meta/files/toolchain-shar-extract.sh
@@ -56,7 +56,8 @@
 	exit 1
 fi
 
-DEFAULT_INSTALL_DIR="@SDKPATH@"
+SDK_BUILD_PATH="@SDKPATH@"
+DEFAULT_INSTALL_DIR="@SDKPATHINSTALL@"
 SUDO_EXEC=""
 EXTRA_TAR_OPTIONS=""
 target_sdk_dir=""
diff --git a/poky/meta/files/toolchain-shar-relocate.sh b/poky/meta/files/toolchain-shar-relocate.sh
index 5433741..8ea6194 100644
--- a/poky/meta/files/toolchain-shar-relocate.sh
+++ b/poky/meta/files/toolchain-shar-relocate.sh
@@ -61,7 +61,7 @@
              -e "$target_sdk_dir/post-relocate-setup" \
              -e "$target_sdk_dir/${0##*/}" | \
     xargs -n100 $SUDO_EXEC sed -i \
-        -e "s:$DEFAULT_INSTALL_DIR:$target_sdk_dir:g" \
+        -e "s:$SDK_BUILD_PATH:$target_sdk_dir:g" \
         -e "s:^#! */usr/bin/perl.*:#! /usr/bin/env perl:g" \
         -e "s: /usr/bin/perl: /usr/bin/env perl:g"
 
diff --git a/poky/meta/lib/oe/classextend.py b/poky/meta/lib/oe/classextend.py
index d3d8fbe..e08d788 100644
--- a/poky/meta/lib/oe/classextend.py
+++ b/poky/meta/lib/oe/classextend.py
@@ -87,7 +87,7 @@
     def map_depends_variable(self, varname, suffix = ""):
         # We need to preserve EXTENDPKGV so it can be expanded correctly later
         if suffix:
-            varname = varname + "_" + suffix
+            varname = varname + ":" + suffix
         orig = self.d.getVar("EXTENDPKGV", False)
         self.d.setVar("EXTENDPKGV", "EXTENDPKGV")
         deps = self.d.getVar(varname)
@@ -142,7 +142,7 @@
             if pkg_mapping[0].startswith("${") and pkg_mapping[0].endswith("}"):
                 continue
             for subs in variables:
-                self.d.renameVar("%s_%s" % (subs, pkg_mapping[0]), "%s_%s" % (subs, pkg_mapping[1]))
+                self.d.renameVar("%s:%s" % (subs, pkg_mapping[0]), "%s:%s" % (subs, pkg_mapping[1]))
 
 class NativesdkClassExtender(ClassExtender):
     def map_depends(self, dep):
diff --git a/poky/meta/lib/oe/package_manager/__init__.py b/poky/meta/lib/oe/package_manager/__init__.py
index de5916d..8f7b60e 100644
--- a/poky/meta/lib/oe/package_manager/__init__.py
+++ b/poky/meta/lib/oe/package_manager/__init__.py
@@ -90,7 +90,7 @@
 
 def failed_postinsts_abort(pkgs, log_path):
     bb.fatal("""Postinstall scriptlets of %s have failed. If the intention is to defer them to first boot,
-then please place them into pkg_postinst_ontarget_${PN} ().
+then please place them into pkg_postinst_ontarget:${PN} ().
 Deferring to first boot via 'exit 1' is no longer supported.
 Details of the failure are in %s.""" %(pkgs, log_path))
 
diff --git a/poky/meta/lib/oe/package_manager/deb/__init__.py b/poky/meta/lib/oe/package_manager/deb/__init__.py
index a4b6b6f..9f112ae 100644
--- a/poky/meta/lib/oe/package_manager/deb/__init__.py
+++ b/poky/meta/lib/oe/package_manager/deb/__init__.py
@@ -422,7 +422,7 @@
         multilib_variants = self.d.getVar("MULTILIB_VARIANTS");
         for variant in multilib_variants.split():
             localdata = bb.data.createCopy(self.d)
-            variant_tune = localdata.getVar("DEFAULTTUNE_virtclass-multilib-" + variant, False)
+            variant_tune = localdata.getVar("DEFAULTTUNE:virtclass-multilib-" + variant, False)
             orig_arch = localdata.getVar("DPKG_ARCH")
             localdata.setVar("DEFAULTTUNE", variant_tune)
             variant_arch = localdata.getVar("DPKG_ARCH")
diff --git a/poky/meta/lib/oe/packagedata.py b/poky/meta/lib/oe/packagedata.py
index a82085a..22261d2 100644
--- a/poky/meta/lib/oe/packagedata.py
+++ b/poky/meta/lib/oe/packagedata.py
@@ -19,7 +19,7 @@
         import re
         with open(fn, 'r') as f:
             lines = f.readlines()
-        r = re.compile("([^:]+):\s*(.*)")
+        r = re.compile("(^.+?):\s+(.*)")
         for l in lines:
             m = r.match(l)
             if m:
diff --git a/poky/meta/lib/oe/recipeutils.py b/poky/meta/lib/oe/recipeutils.py
index 407d168..a0c6974 100644
--- a/poky/meta/lib/oe/recipeutils.py
+++ b/poky/meta/lib/oe/recipeutils.py
@@ -47,7 +47,7 @@
                 continue
             has_set = True
         elif event['op'] in ('append', 'prepend', 'postdot', 'predot'):
-            # Reminder: "append" and "prepend" mean += and =+ respectively, NOT _append / _prepend
+            # Reminder: "append" and "prepend" mean += and =+ respectively, NOT :append / :prepend
             if has_set:
                 continue
         ret_history.insert(0, event)
@@ -342,7 +342,7 @@
     def override_applicable(hevent):
         op = hevent['op']
         if '[' in op:
-            opoverrides = op.split('[')[1].split(']')[0].split('_')
+            opoverrides = op.split('[')[1].split(']')[0].split(':')
             for opoverride in opoverrides:
                 if not opoverride in overrides:
                     return False
@@ -368,13 +368,13 @@
                                 recipe_set = True
                     if not recipe_set:
                         for event in history:
-                            if event['op'].startswith('_remove'):
+                            if event['op'].startswith(':remove'):
                                 continue
                             if not override_applicable(event):
                                 continue
                             newvalue = value.replace(event['detail'], '')
-                            if newvalue == value and os.path.abspath(event['file']) == fn and event['op'].startswith('_'):
-                                op = event['op'].replace('[', '_').replace(']', '')
+                            if newvalue == value and os.path.abspath(event['file']) == fn and event['op'].startswith(':'):
+                                op = event['op'].replace('[', ':').replace(']', '')
                                 extravals[var + op] = None
                             value = newvalue
                             vals[var] = ('+=', value)
@@ -414,7 +414,7 @@
 
     fetch_urls(d)
     if all_variants:
-        # Get files for other variants e.g. in the case of a SRC_URI_append
+        # Get files for other variants e.g. in the case of a SRC_URI:append
         localdata = bb.data.createCopy(d)
         variants = (localdata.getVar('BBCLASSEXTEND') or '').split()
         if variants:
@@ -753,12 +753,12 @@
 
     destsubdir = rd.getVar('PN')
     if srcfiles:
-        bbappendlines.append(('FILESEXTRAPATHS_prepend', ':=', '${THISDIR}/${PN}:'))
+        bbappendlines.append(('FILESEXTRAPATHS:prepend', ':=', '${THISDIR}/${PN}:'))
 
     appendoverride = ''
     if machine:
         bbappendlines.append(('PACKAGE_ARCH', '=', '${MACHINE_ARCH}'))
-        appendoverride = '_%s' % machine
+        appendoverride = ':%s' % machine
     copyfiles = {}
     if srcfiles:
         instfunclines = []
@@ -772,7 +772,7 @@
                 # FIXME do we care if the entry is added by another bbappend that might go away?
                 if not srcurientry in rd.getVar('SRC_URI').split():
                     if machine:
-                        appendline('SRC_URI_append%s' % appendoverride, '=', ' ' + srcurientry)
+                        appendline('SRC_URI:append%s' % appendoverride, '=', ' ' + srcurientry)
                     else:
                         appendline('SRC_URI', '+=', srcurientry)
             copyfiles[newfile] = srcfile
@@ -786,7 +786,7 @@
                         instfunclines.append(instdirline)
                     instfunclines.append('install -m %s ${WORKDIR}/%s ${D}%s' % (perms, os.path.basename(srcfile), instdestpath))
         if instfunclines:
-            bbappendlines.append(('do_install_append%s()' % appendoverride, '', instfunclines))
+            bbappendlines.append(('do_install:append%s()' % appendoverride, '', instfunclines))
 
     if redirect_output:
         bb.note('Writing append file %s (dry-run)' % appendpath)
@@ -804,15 +804,15 @@
         extvars = {'destsubdir': destsubdir}
 
         def appendfile_varfunc(varname, origvalue, op, newlines):
-            if varname == 'FILESEXTRAPATHS_prepend':
+            if varname == 'FILESEXTRAPATHS:prepend':
                 if origvalue.startswith('${THISDIR}/'):
-                    popline('FILESEXTRAPATHS_prepend')
+                    popline('FILESEXTRAPATHS:prepend')
                     extvars['destsubdir'] = rd.expand(origvalue.split('${THISDIR}/', 1)[1].rstrip(':'))
             elif varname == 'PACKAGE_ARCH':
                 if machine:
                     popline('PACKAGE_ARCH')
                     return (machine, None, 4, False)
-            elif varname.startswith('do_install_append'):
+            elif varname.startswith('do_install:append'):
                 func = popline(varname)
                 if func:
                     instfunclines = [line.strip() for line in origvalue.strip('\n').splitlines()]
@@ -824,7 +824,7 @@
                 splitval = split_var_value(origvalue, assignment=False)
                 changed = False
                 removevar = varname
-                if varname in ['SRC_URI', 'SRC_URI_append%s' % appendoverride]:
+                if varname in ['SRC_URI', 'SRC_URI:append%s' % appendoverride]:
                     removevar = 'SRC_URI'
                     line = popline(varname)
                     if line:
@@ -853,11 +853,11 @@
                     newvalue = splitval
                     if len(newvalue) == 1:
                         # Ensure it's written out as one line
-                        if '_append' in varname:
+                        if ':append' in varname:
                             newvalue = ' ' + newvalue[0]
                         else:
                             newvalue = newvalue[0]
-                    if not newvalue and (op in ['+=', '.='] or '_append' in varname):
+                    if not newvalue and (op in ['+=', '.='] or ':append' in varname):
                         # There's no point appending nothing
                         newvalue = None
                     if varname.endswith('()'):
diff --git a/poky/meta/lib/oe/rootfs.py b/poky/meta/lib/oe/rootfs.py
index ad9fd77..4ea5adb 100644
--- a/poky/meta/lib/oe/rootfs.py
+++ b/poky/meta/lib/oe/rootfs.py
@@ -302,6 +302,16 @@
             self._exec_shell_cmd(['ldconfig', '-r', self.image_rootfs, '-c',
                                   'new', '-v', '-X'])
 
+        image_rorfs = bb.utils.contains("IMAGE_FEATURES", "read-only-rootfs",
+                                        True, False, self.d)
+        ldconfig_in_features = bb.utils.contains("DISTRO_FEATURES", "ldconfig",
+                                                 True, False, self.d)
+        if image_rorfs or not ldconfig_in_features:
+            ldconfig_cache_dir = os.path.join(self.image_rootfs, "var/cache/ldconfig")
+            if os.path.exists(ldconfig_cache_dir):
+                bb.note("Removing ldconfig auxiliary cache...")
+                shutil.rmtree(ldconfig_cache_dir)
+
     def _check_for_kernel_modules(self, modules_dir):
         for root, dirs, files in os.walk(modules_dir, topdown=True):
             for name in files:
diff --git a/poky/meta/lib/oe/sstatesig.py b/poky/meta/lib/oe/sstatesig.py
index 47f3ca4..78cdf87 100644
--- a/poky/meta/lib/oe/sstatesig.py
+++ b/poky/meta/lib/oe/sstatesig.py
@@ -59,7 +59,7 @@
         return False
 
     # Kernel modules are well namespaced. We don't want to depend on the kernel's checksum
-    # if we're just doing an RRECOMMENDS_xxx = "kernel-module-*", not least because the checksum
+    # if we're just doing an RRECOMMENDS:xxx = "kernel-module-*", not least because the checksum
     # is machine specific.
     # Therefore if we're not a kernel or a module recipe (inheriting the kernel classes)
     # and we reccomend a kernel-module, we exclude the dependency.
@@ -246,7 +246,7 @@
                         continue
                     f.write("    " + self.lockedpnmap[fn] + ":" + task + ":" + self.get_unihash(tid) + " \\\n")
                 f.write('    "\n')
-            f.write('SIGGEN_LOCKEDSIGS_TYPES_%s = "%s"' % (self.machine, " ".join(l)))
+            f.write('SIGGEN_LOCKEDSIGS_TYPES:%s = "%s"' % (self.machine, " ".join(l)))
 
     def dump_siglist(self, sigfile, path_prefix_strip=None):
         def strip_fn(fn):
diff --git a/poky/meta/lib/oeqa/files/testresults/testresults.json b/poky/meta/lib/oeqa/files/testresults/testresults.json
index 1a62155..86e5e41 100644
--- a/poky/meta/lib/oeqa/files/testresults/testresults.json
+++ b/poky/meta/lib/oeqa/files/testresults/testresults.json
@@ -1,5 +1,5 @@
 {
-    "runtime_core-image-minimal_qemuarm_20181225195701": {
+    "runtime_core-image-minimal:qemuarm_20181225195701": {
         "configuration": {
             "DISTRO": "poky",
             "HOST_DISTRO": "ubuntu-16.04",
diff --git a/poky/meta/lib/oeqa/manual/build-appliance.json b/poky/meta/lib/oeqa/manual/build-appliance.json
index 70f8c72..82a556e 100644
--- a/poky/meta/lib/oeqa/manual/build-appliance.json
+++ b/poky/meta/lib/oeqa/manual/build-appliance.json
@@ -48,7 +48,7 @@
                     "expected_results": ""
                 },
                 "3": {
-                    "action": "Install a new package to the image, for example, acpid. Set the following line in conf/local.conf: IMAGE_INSTALL_append = \" acpid\"",
+                    "action": "Install a new package to the image, for example, acpid. Set the following line in conf/local.conf: IMAGE_INSTALL:append = \" acpid\"",
                     "expected_results": ""
                 },
                 "4": {
diff --git a/poky/meta/lib/oeqa/manual/sdk.json b/poky/meta/lib/oeqa/manual/sdk.json
index 434982f..21d892d 100644
--- a/poky/meta/lib/oeqa/manual/sdk.json
+++ b/poky/meta/lib/oeqa/manual/sdk.json
@@ -26,7 +26,7 @@
                     "expected_results": "Expect both qemu to boot up successfully."
                 }
             },
-            "summary": "test_install_cross_toolchain_can_run_multiple_qemu_for_x86"
+            "summary": "test_install_cross_toolchain_can_run_multiple_qemu_for:x86"
         }
     }
 ]
\ No newline at end of file
diff --git a/poky/meta/lib/oeqa/manual/toaster-managed-mode.json b/poky/meta/lib/oeqa/manual/toaster-managed-mode.json
index 40eda64..1a71985 100644
--- a/poky/meta/lib/oeqa/manual/toaster-managed-mode.json
+++ b/poky/meta/lib/oeqa/manual/toaster-managed-mode.json
@@ -136,7 +136,7 @@
           "expected_results": ""
         },
         "3": {
-          "action": "Check that default values are as follows: \n\tDISTRO - poky \n\tIMAGE_FSTYPES - ext3 jffs2 tar.bz2 \n\tIMAGE_INSTALL_append - \"Not set\" \n\tPACKAGE_CLASSES - package_rpm \n        SSTATE_DIR  - /homeDirectory/poky/sstate-cache \n\n",
+          "action": "Check that default values are as follows: \n\tDISTRO - poky \n\tIMAGE_FSTYPES - ext3 jffs2 tar.bz2 \n\tIMAGE_INSTALL:append - \"Not set\" \n\tPACKAGE_CLASSES - package_rpm \n        SSTATE_DIR  - /homeDirectory/poky/sstate-cache \n\n",
           "expected_results": ""
         },
         "4": {
@@ -186,7 +186,7 @@
           "expected_results": ""
         },
         "7": {
-          "action": "IMAGE_INSTALL_append: \n\t- check that the \"change\" icon is present (represented by a pen icon) \n\t- click on the \"change\" icon and check that the variable becomes a text field, populated with the current value of the variable.  \n\n\t- check that the save button is disabled when the text field is empty \n\t- insert test in the text field (for example \"package1\") and hit save; be aware that there is no input validation for this variable \n\t- check that a new \"delete\" icon(a trashcan) has appeared next to the pen icon \n\t- check that clicking on the trashcan icon resets the value to \"Not set\" and makes the trashcan icon dissapear  \n\n",
+          "action": "IMAGE_INSTALL:append: \n\t- check that the \"change\" icon is present (represented by a pen icon) \n\t- click on the \"change\" icon and check that the variable becomes a text field, populated with the current value of the variable.  \n\n\t- check that the save button is disabled when the text field is empty \n\t- insert test in the text field (for example \"package1\") and hit save; be aware that there is no input validation for this variable \n\t- check that a new \"delete\" icon(a trashcan) has appeared next to the pen icon \n\t- check that clicking on the trashcan icon resets the value to \"Not set\" and makes the trashcan icon dissapear  \n\n",
           "expected_results": ""
         },
         "8": {
@@ -1574,7 +1574,7 @@
           "expected_results": "Open bitbake variables page. \n\n\t"
         },
         "5": {
-          "action": "Click on change button for IMAGE_INSTALL_append and add a variable (ex: acpid). \n\n",
+          "action": "Click on change button for IMAGE_INSTALL:append and add a variable (ex: acpid). \n\n",
           "expected_results": "Variable added. \n\n\t"
         },
         "6": {
@@ -1590,7 +1590,7 @@
           "expected_results": "You should get results for ssh packages."
         }
       },
-      "summary": "Test_IMAGE_INSTALL_append_variable"
+      "summary": "Test_IMAGE_INSTALL:append_variable"
     }
   },
   {
@@ -2569,4 +2569,4 @@
       "summary": "Download_task_log"
     }
   }
-]
\ No newline at end of file
+]
diff --git a/poky/meta/lib/oeqa/runtime/cases/ksample.py b/poky/meta/lib/oeqa/runtime/cases/ksample.py
index a9a1620..4d12d1d 100644
--- a/poky/meta/lib/oeqa/runtime/cases/ksample.py
+++ b/poky/meta/lib/oeqa/runtime/cases/ksample.py
@@ -10,7 +10,7 @@
 from oeqa.core.decorator.data import skipIfNotFeature
 
 # need some kernel fragments
-# echo "KERNEL_FEATURES_append += \" features\/kernel\-sample\/kernel\-sample.scc\"" >> local.conf
+# echo "KERNEL_FEATURES:append += \" features\/kernel\-sample\/kernel\-sample.scc\"" >> local.conf
 class KSample(OERuntimeTestCase):
     def cmd_and_check(self, cmd='', match_string=''):
         status, output = self.target.run(cmd)
diff --git a/poky/meta/lib/oeqa/runtime/cases/parselogs.py b/poky/meta/lib/oeqa/runtime/cases/parselogs.py
index 73243c3..af8a8d6 100644
--- a/poky/meta/lib/oeqa/runtime/cases/parselogs.py
+++ b/poky/meta/lib/oeqa/runtime/cases/parselogs.py
@@ -122,7 +122,7 @@
         'synth uevent: /devices/vio: failed to send uevent',
         'PCI 0000:00 Cannot reserve Legacy IO [io  0x10000-0x10fff]',
         ] + common_errors,
-    'qemuarm' : [
+    'qemuarmv5' : [
         'mmci-pl18x: probe of fpga:05 failed with error -22',
         'mmci-pl18x: probe of fpga:0b failed with error -22',
         'Failed to load module "glx"',
@@ -136,6 +136,7 @@
         'OF: amba_device_add() failed (-19) for /amba/fpga/sci@a000',
         'Failed to initialize \'/amba/timer@101e3000\': -22',
         'jitterentropy: Initialization failed with host not compliant with requirements: 2',
+        'clcd-pl11x: probe of 10120000.display failed with error -2',
         ] + common_errors,
     'qemuarm64' : [
         'Fatal server error:',
diff --git a/poky/meta/lib/oeqa/runtime/cases/ptest.py b/poky/meta/lib/oeqa/runtime/cases/ptest.py
index 0800f3c..00742da 100644
--- a/poky/meta/lib/oeqa/runtime/cases/ptest.py
+++ b/poky/meta/lib/oeqa/runtime/cases/ptest.py
@@ -57,7 +57,7 @@
         ptest_dirs = [ '/usr/lib' ]
         if not libdir in ptest_dirs:
             ptest_dirs.append(libdir)
-        status, output = self.target.run('ptest-runner -d \"{}\"'.format(' '.join(ptest_dirs)), 0)
+        status, output = self.target.run('ptest-runner -t 450 -d \"{}\"'.format(' '.join(ptest_dirs)), 0)
         os.makedirs(ptest_log_dir)
         with open(ptest_runner_log, 'w') as f:
             f.write(output)
diff --git a/poky/meta/lib/oeqa/runtime/cases/skeletoninit.py b/poky/meta/lib/oeqa/runtime/cases/skeletoninit.py
index 4779cd6..a12f1e9 100644
--- a/poky/meta/lib/oeqa/runtime/cases/skeletoninit.py
+++ b/poky/meta/lib/oeqa/runtime/cases/skeletoninit.py
@@ -4,7 +4,7 @@
 
 # This test should cover https://bugzilla.yoctoproject.org/tr_show_case.cgi?case_id=284
 # testcase. Image under test must have meta-skeleton layer in bblayers and
-# IMAGE_INSTALL_append = " service" in local.conf
+# IMAGE_INSTALL:append = " service" in local.conf
 from oeqa.runtime.case import OERuntimeTestCase
 from oeqa.core.decorator.depends import OETestDepends
 from oeqa.core.decorator.data import skipIfDataVar
diff --git a/poky/meta/lib/oeqa/sdkext/testsdk.py b/poky/meta/lib/oeqa/sdkext/testsdk.py
index ffd185e..6b564fa 100644
--- a/poky/meta/lib/oeqa/sdkext/testsdk.py
+++ b/poky/meta/lib/oeqa/sdkext/testsdk.py
@@ -70,7 +70,7 @@
                 f.write('SSTATE_MIRRORS += " \\n file://.* file://%s/PATH"\n' % test_data.get('SSTATE_DIR'))
                 f.write('SOURCE_MIRROR_URL = "file://%s"\n' % test_data.get('DL_DIR'))
                 f.write('INHERIT += "own-mirrors"\n')
-                f.write('PREMIRRORS_prepend = " git://git.yoctoproject.org/.* git://%s/git2/git.yoctoproject.org.BASENAME \\n "\n' % test_data.get('DL_DIR'))
+                f.write('PREMIRRORS:prepend = " git://git.yoctoproject.org/.* git://%s/git2/git.yoctoproject.org.BASENAME \\n "\n' % test_data.get('DL_DIR'))
 
             # We need to do this in case we have a minimal SDK
             subprocess.check_output(". %s > /dev/null; devtool sdk-install meta-extsdk-toolchain" % \
diff --git a/poky/meta/lib/oeqa/selftest/cases/bbtests.py b/poky/meta/lib/oeqa/selftest/cases/bbtests.py
index 79390ac..8831de6 100644
--- a/poky/meta/lib/oeqa/selftest/cases/bbtests.py
+++ b/poky/meta/lib/oeqa/selftest/cases/bbtests.py
@@ -70,8 +70,8 @@
 
     def test_invalid_patch(self):
         # This patch should fail to apply.
-        self.write_recipeinc('man-db', 'FILESEXTRAPATHS_prepend := "${THISDIR}/files:"\nSRC_URI += "file://0001-Test-patch-here.patch"')
-        self.write_config("INHERIT_remove = \"report-error\"")
+        self.write_recipeinc('man-db', 'FILESEXTRAPATHS:prepend := "${THISDIR}/files:"\nSRC_URI += "file://0001-Test-patch-here.patch"')
+        self.write_config("INHERIT:remove = \"report-error\"")
         result = bitbake('man-db -c patch', ignore_status=True)
         self.delete_recipeinc('man-db')
         bitbake('-cclean man-db')
@@ -139,7 +139,7 @@
         self.write_recipeinc('man-db', data)
         self.write_config("""DL_DIR = \"${TOPDIR}/download-selftest\"
 SSTATE_DIR = \"${TOPDIR}/download-selftest\"
-INHERIT_remove = \"report-error\"
+INHERIT:remove = \"report-error\"
 """)
         self.track_for_cleanup(os.path.join(self.builddir, "download-selftest"))
 
@@ -213,7 +213,7 @@
     def test_continue(self):
         self.write_config("""DL_DIR = \"${TOPDIR}/download-selftest\"
 SSTATE_DIR = \"${TOPDIR}/download-selftest\"
-INHERIT_remove = \"report-error\"
+INHERIT:remove = \"report-error\"
 """)
         self.track_for_cleanup(os.path.join(self.builddir, "download-selftest"))
         self.write_recipeinc('man-db',"\ndo_fail_task () {\nexit 1 \n}\n\naddtask do_fail_task before do_fetch\n" )
diff --git a/poky/meta/lib/oeqa/selftest/cases/buildoptions.py b/poky/meta/lib/oeqa/selftest/cases/buildoptions.py
index 754b77d..be49322 100644
--- a/poky/meta/lib/oeqa/selftest/cases/buildoptions.py
+++ b/poky/meta/lib/oeqa/selftest/cases/buildoptions.py
@@ -78,9 +78,9 @@
 
     def test_options_warnqa_errorqa_switch(self):
 
-        self.write_config("INHERIT_remove = \"report-error\"")
+        self.write_config("INHERIT:remove = \"report-error\"")
         if "packages-list" not in get_bb_var("ERROR_QA"):
-            self.append_config("ERROR_QA_append = \" packages-list\"")
+            self.append_config("ERROR_QA:append = \" packages-list\"")
 
         self.write_recipeinc('xcursor-transparent-theme', 'PACKAGES += \"${PN}-dbg\"')
         self.add_command_to_tearDown('bitbake -c clean xcursor-transparent-theme')
@@ -90,8 +90,8 @@
         self.assertTrue(line and line.startswith("ERROR:"), msg=res.output)
         self.assertEqual(res.status, 1, msg = "bitbake reported exit code %s. It should have been 1. Bitbake output: %s" % (str(res.status), res.output))
         self.write_recipeinc('xcursor-transparent-theme', 'PACKAGES += \"${PN}-dbg\"')
-        self.append_config('ERROR_QA_remove = "packages-list"')
-        self.append_config('WARN_QA_append = " packages-list"')
+        self.append_config('ERROR_QA:remove = "packages-list"')
+        self.append_config('WARN_QA:append = " packages-list"')
         res = bitbake("xcursor-transparent-theme -f -c package")
         self.delete_recipeinc('xcursor-transparent-theme')
         line = self.getline(res, "QA Issue: xcursor-transparent-theme-dbg is listed in PACKAGES multiple times, this leads to packaging errors.")
@@ -168,7 +168,7 @@
         Test that Fortran works by building a Hello, World binary.
         """
 
-        features = 'FORTRAN_forcevariable = ",fortran"\n'
+        features = 'FORTRAN:forcevariable = ",fortran"\n'
         self.write_config(features)
         bitbake('fortran-helloworld')
 
diff --git a/poky/meta/lib/oeqa/selftest/cases/containerimage.py b/poky/meta/lib/oeqa/selftest/cases/containerimage.py
index 79cc8a0..3068c9b 100644
--- a/poky/meta/lib/oeqa/selftest/cases/containerimage.py
+++ b/poky/meta/lib/oeqa/selftest/cases/containerimage.py
@@ -22,7 +22,7 @@
 #
 class ContainerImageTests(OESelftestTestCase):
 
-    # Verify that when specifying a IMAGE_TYPEDEP_ of the form "foo.bar" that
+    # Verify that when specifying a IMAGE_TYPEDEP: of the form "foo.bar" that
     # the conversion type bar gets added as a dep as well
     def test_expected_files(self):
 
@@ -43,7 +43,7 @@
 IMAGE_FEATURES = ""
 IMAGE_BUILDINFO_FILE = ""
 INIT_MANAGER = "sysvinit"
-IMAGE_INSTALL_remove = "ssh-pregen-hostkeys"
+IMAGE_INSTALL:remove = "ssh-pregen-hostkeys"
 
 """)
 
diff --git a/poky/meta/lib/oeqa/selftest/cases/devtool.py b/poky/meta/lib/oeqa/selftest/cases/devtool.py
index 3385546..6d9cd46 100644
--- a/poky/meta/lib/oeqa/selftest/cases/devtool.py
+++ b/poky/meta/lib/oeqa/selftest/cases/devtool.py
@@ -373,7 +373,7 @@
         recipefile = '%s/recipes/libftdi/libftdi_%s.bb' % (self.workspacedir, version)
         result = runCmd('recipetool setvar %s EXTRA_OECMAKE -- \'-DPYTHON_BINDINGS=OFF -DLIBFTDI_CMAKE_CONFIG_DIR=${datadir}/cmake/Modules\'' % recipefile)
         with open(recipefile, 'a') as f:
-            f.write('\nFILES_${PN}-dev += "${datadir}/cmake/Modules"\n')
+            f.write('\nFILES:${PN}-dev += "${datadir}/cmake/Modules"\n')
             # We don't have the ability to pick up this dependency automatically yet...
             f.write('\nDEPENDS += "libusb1"\n')
             f.write('\nTESTLIBOUTPUT = "${COMPONENTS_DIR}/${TUNE_PKGARCH}/${PN}/${libdir}"\n')
@@ -975,7 +975,7 @@
         self.assertExists(patchfile, 'Patch file not created')
 
         # Check bbappend contents
-        expectedlines = ['FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"\n',
+        expectedlines = ['FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"\n',
                          '\n',
                          'SRC_URI += "file://0001-Add-our-custom-version.patch"\n',
                          '\n']
@@ -990,7 +990,7 @@
         result = runCmd('git reset HEAD^', cwd=tempsrcdir)
         result = runCmd('devtool update-recipe %s -a %s' % (testrecipe, templayerdir))
         self.assertNotExists(patchfile, 'Patch file not deleted')
-        expectedlines2 = ['FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"\n',
+        expectedlines2 = ['FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"\n',
                          '\n']
         with open(bbappendfile, 'r') as f:
             self.assertEqual(expectedlines2, f.readlines())
diff --git a/poky/meta/lib/oeqa/selftest/cases/distrodata.py b/poky/meta/lib/oeqa/selftest/cases/distrodata.py
index 0ad6e1e..4a45855 100644
--- a/poky/meta/lib/oeqa/selftest/cases/distrodata.py
+++ b/poky/meta/lib/oeqa/selftest/cases/distrodata.py
@@ -110,7 +110,7 @@
 
             missing_recipes = []
             recipes = []
-            prefix = "RECIPE_MAINTAINER_pn-"
+            prefix = "RECIPE_MAINTAINER:pn-"
 
             # We could have used all_recipes() here, but this method will find
             # every recipe if we ever move to setting RECIPE_MAINTAINER in recipe files
diff --git a/poky/meta/lib/oeqa/selftest/cases/efibootpartition.py b/poky/meta/lib/oeqa/selftest/cases/efibootpartition.py
index a61cf9bc..26de3a0 100644
--- a/poky/meta/lib/oeqa/selftest/cases/efibootpartition.py
+++ b/poky/meta/lib/oeqa/selftest/cases/efibootpartition.py
@@ -26,11 +26,11 @@
         self.write_config(self,
 """
 EFI_PROVIDER = "%s"
-IMAGE_FSTYPES_pn-%s_append = " wic"
+IMAGE_FSTYPES:pn-%s:append = " wic"
 MACHINE = "%s"
-MACHINE_FEATURES_append = " efi"
+MACHINE_FEATURES:append = " efi"
 WKS_FILE = "efi-bootdisk.wks.in"
-IMAGE_INSTALL_append = " grub-efi systemd-boot kernel-image-bzimage"
+IMAGE_INSTALL:append = " grub-efi systemd-boot kernel-image-bzimage"
 """
 % (self.efi_provider, self.image, self.machine))
         if not self.recipes_built:
diff --git a/poky/meta/lib/oeqa/selftest/cases/fetch.py b/poky/meta/lib/oeqa/selftest/cases/fetch.py
index cd15f65..9aa91e5 100644
--- a/poky/meta/lib/oeqa/selftest/cases/fetch.py
+++ b/poky/meta/lib/oeqa/selftest/cases/fetch.py
@@ -24,8 +24,8 @@
         # No mirrors, should use git to fetch successfully
         features = """
 DL_DIR = "%s"
-MIRRORS_forcevariable = ""
-PREMIRRORS_forcevariable = ""
+MIRRORS:forcevariable = ""
+PREMIRRORS:forcevariable = ""
 """ % dldir
         self.write_config(features)
         oe.path.remove(dldir, recurse=True)
@@ -35,8 +35,8 @@
         features = """
 DL_DIR = "%s"
 GIT_PROXY_COMMAND = "false"
-MIRRORS_forcevariable = ""
-PREMIRRORS_forcevariable = ""
+MIRRORS:forcevariable = ""
+PREMIRRORS:forcevariable = ""
 """ % dldir
         self.write_config(features)
         oe.path.remove(dldir, recurse=True)
@@ -47,7 +47,7 @@
         features = """
 DL_DIR = "%s"
 GIT_PROXY_COMMAND = "false"
-MIRRORS_forcevariable = "git://.*/.* http://downloads.yoctoproject.org/mirror/sources/"
+MIRRORS:forcevariable = "git://.*/.* http://downloads.yoctoproject.org/mirror/sources/"
 """ % dldir
         self.write_config(features)
         oe.path.remove(dldir, recurse=True)
diff --git a/poky/meta/lib/oeqa/selftest/cases/glibc.py b/poky/meta/lib/oeqa/selftest/cases/glibc.py
index c687f6e..be97923 100644
--- a/poky/meta/lib/oeqa/selftest/cases/glibc.py
+++ b/poky/meta/lib/oeqa/selftest/cases/glibc.py
@@ -24,7 +24,7 @@
             features.append('TOOLCHAIN_TEST_HOST_USER = "root"')
             features.append('TOOLCHAIN_TEST_HOST_PORT = "22"')
             # force single threaded test execution
-            features.append('EGLIBCPARALLELISM_task-check_pn-glibc-testsuite = "PARALLELMFLAGS="-j1""')
+            features.append('EGLIBCPARALLELISM_task-check:pn-glibc-testsuite = "PARALLELMFLAGS="-j1""')
         self.write_config("\n".join(features))
 
         bitbake("glibc-testsuite -c check")
diff --git a/poky/meta/lib/oeqa/selftest/cases/image_typedep.py b/poky/meta/lib/oeqa/selftest/cases/image_typedep.py
index 52e1080..5b182a8 100644
--- a/poky/meta/lib/oeqa/selftest/cases/image_typedep.py
+++ b/poky/meta/lib/oeqa/selftest/cases/image_typedep.py
@@ -9,7 +9,7 @@
 
 class ImageTypeDepTests(OESelftestTestCase):
 
-    # Verify that when specifying a IMAGE_TYPEDEP_ of the form "foo.bar" that
+    # Verify that when specifying a IMAGE_TYPEDEP: of the form "foo.bar" that
     # the conversion type bar gets added as a dep as well
     def test_conversion_typedep_added(self):
 
@@ -22,7 +22,7 @@
 IMAGE_FSTYPES = "testfstype"
 
 IMAGE_TYPES_MASKED += "testfstype"
-IMAGE_TYPEDEP_testfstype = "tar.bz2"
+IMAGE_TYPEDEP:testfstype = "tar.bz2"
 
 inherit image
 
diff --git a/poky/meta/lib/oeqa/selftest/cases/imagefeatures.py b/poky/meta/lib/oeqa/selftest/cases/imagefeatures.py
index 2de22d3..12902ad 100644
--- a/poky/meta/lib/oeqa/selftest/cases/imagefeatures.py
+++ b/poky/meta/lib/oeqa/selftest/cases/imagefeatures.py
@@ -229,7 +229,7 @@
     def test_no_busybox_base_utils(self):
         config = """
 # Enable wayland
-DISTRO_FEATURES_append += "pam opengl wayland"
+DISTRO_FEATURES:append += "pam opengl wayland"
 
 # Switch to systemd
 DISTRO_FEATURES += "systemd"
diff --git a/poky/meta/lib/oeqa/selftest/cases/incompatible_lic.py b/poky/meta/lib/oeqa/selftest/cases/incompatible_lic.py
index 152da63..fd3b3f4 100644
--- a/poky/meta/lib/oeqa/selftest/cases/incompatible_lic.py
+++ b/poky/meta/lib/oeqa/selftest/cases/incompatible_lic.py
@@ -85,8 +85,8 @@
 class IncompatibleLicensePerImageTests(OESelftestTestCase):
     def default_config(self):
         return """
-IMAGE_INSTALL_append = " bash"
-INCOMPATIBLE_LICENSE_pn-core-image-minimal = "GPL-3.0 LGPL-3.0"
+IMAGE_INSTALL:append = " bash"
+INCOMPATIBLE_LICENSE:pn-core-image-minimal = "GPL-3.0 LGPL-3.0"
 """
 
     def test_bash_default(self):
@@ -98,7 +98,7 @@
             raise AssertionError(result.output)
 
     def test_bash_and_license(self):
-        self.write_config(self.default_config() + '\nLICENSE_append_pn-bash = " & SomeLicense"')
+        self.write_config(self.default_config() + '\nLICENSE:append:pn-bash = " & SomeLicense"')
         error_msg = "ERROR: core-image-minimal-1.0-r0 do_rootfs: Package bash cannot be installed into the image because it has incompatible license(s): GPL-3.0-or-later"
 
         result = bitbake('core-image-minimal', ignore_status=True)
@@ -106,30 +106,42 @@
             raise AssertionError(result.output)
 
     def test_bash_or_license(self):
-        self.write_config(self.default_config() + '\nLICENSE_append_pn-bash = " | SomeLicense"')
+        self.write_config(self.default_config() + '\nLICENSE:append:pn-bash = " | SomeLicense"')
 
         bitbake('core-image-minimal')
 
     def test_bash_whitelist(self):
-        self.write_config(self.default_config() + '\nWHITELIST_GPL-3.0_pn-core-image-minimal = "bash"')
+        self.write_config(self.default_config() + '\nWHITELIST_GPL-3.0:pn-core-image-minimal = "bash"')
 
         bitbake('core-image-minimal')
 
 class NoGPL3InImagesTests(OESelftestTestCase):
     def test_core_image_minimal(self):
         self.write_config("""
-INCOMPATIBLE_LICENSE_pn-core-image-minimal = "GPL-3.0 LGPL-3.0"
+INCOMPATIBLE_LICENSE:pn-core-image-minimal = "GPL-3.0 LGPL-3.0"
 """)
         bitbake('core-image-minimal')
 
-    def test_core_image_full_cmdline(self):
+    def test_core_image_full_cmdline_weston(self):
         self.write_config("""
-INHERIT += "testimage"\n
-INCOMPATIBLE_LICENSE_pn-core-image-full-cmdline = "GPL-3.0 LGPL-3.0"\n
-RDEPENDS_packagegroup-core-full-cmdline-utils_remove = "bash bc coreutils cpio ed findutils gawk grep mc mc-fish mc-helpers mc-helpers-perl sed tar time"\n
-RDEPENDS_packagegroup-core-full-cmdline-dev-utils_remove = "diffutils m4 make patch"\n
-RDEPENDS_packagegroup-core-full-cmdline-multiuser_remove = "gzip"\n
+INHERIT += "testimage"
+INCOMPATIBLE_LICENSE:pn-core-image-full-cmdline = "GPL-3.0 LGPL-3.0"
+INCOMPATIBLE_LICENSE:pn-core-image-weston = "GPL-3.0 LGPL-3.0"
+# Settings for full-cmdline
+RDEPENDS:packagegroup-core-full-cmdline-utils:remove = "bash bc coreutils cpio ed findutils gawk grep mc mc-fish mc-helpers mc-helpers-perl sed tar time"
+RDEPENDS:packagegroup-core-full-cmdline-dev-utils:remove = "diffutils m4 make patch"
+RDEPENDS:packagegroup-core-full-cmdline-multiuser:remove = "gzip"
+# Settings for weston
+# direct gpl3 dependencies
+RRECOMMENDS:packagegroup-base-vfat:remove = "dosfstools"
+PACKAGECONFIG:remove:pn-bluez5 = "readline"
+# dnf pulls in gpg which is gpl3; it also pulls in python3-rpm which pulls in rpm-build which pulls in bash
+# so install rpm but not dnf
+IMAGE_FEATURES:remove:pn-core-image-weston = "package-management"
+CORE_IMAGE_EXTRA_INSTALL:pn-core-image-weston += "rpm"
+# matchbox-terminal depends on vte, which is gpl3
+CORE_IMAGE_BASE_INSTALL:remove:pn-core-image-weston = "matchbox-terminal"
 """)
-        bitbake('core-image-full-cmdline')
-        bitbake('-c testimage core-image-full-cmdline')
+        bitbake('core-image-full-cmdline core-image-weston')
+        bitbake('-c testimage core-image-full-cmdline core-image-weston')
 
diff --git a/poky/meta/lib/oeqa/selftest/cases/kerneldevelopment.py b/poky/meta/lib/oeqa/selftest/cases/kerneldevelopment.py
index a61876e..b1623a1 100644
--- a/poky/meta/lib/oeqa/selftest/cases/kerneldevelopment.py
+++ b/poky/meta/lib/oeqa/selftest/cases/kerneldevelopment.py
@@ -58,7 +58,7 @@
         recipe_append = os.path.join(self.recipeskernel_dir, 'linux-yocto_%.bbappend')
         with open(recipe_append, 'w+') as fh:
             fh.write('SRC_URI += "file://%s"\n' % patch_name)
-            fh.write('FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"')
+            fh.write('FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"')
 
         runCmd('bitbake virtual/kernel -c clean')
         runCmd('bitbake virtual/kernel -c patch')
diff --git a/poky/meta/lib/oeqa/selftest/cases/layerappend.py b/poky/meta/lib/oeqa/selftest/cases/layerappend.py
index 05e9426..dadc7c5 100644
--- a/poky/meta/lib/oeqa/selftest/cases/layerappend.py
+++ b/poky/meta/lib/oeqa/selftest/cases/layerappend.py
@@ -30,20 +30,20 @@
 addtask build
 """
     append = """
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
 
-SRC_URI_append = " file://appendtest.txt"
+SRC_URI:append = " file://appendtest.txt"
 
-sysroot_stage_all_append() {
+sysroot_stage_all:append() {
 	install -m 644 ${WORKDIR}/appendtest.txt ${SYSROOT_DESTDIR}/
 }
 
 """
 
     append2 = """
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
 
-SRC_URI_append = " file://appendtest.txt"
+SRC_URI:append = " file://appendtest.txt"
 """
     layerappend = ''
 
diff --git a/poky/meta/lib/oeqa/selftest/cases/lic_checksum.py b/poky/meta/lib/oeqa/selftest/cases/lic_checksum.py
index bae935d..91021ac 100644
--- a/poky/meta/lib/oeqa/selftest/cases/lic_checksum.py
+++ b/poky/meta/lib/oeqa/selftest/cases/lic_checksum.py
@@ -21,7 +21,7 @@
         os.close(lic_file)
         self.track_for_cleanup(lic_path)
 
-        self.write_config("INHERIT_remove = \"report-error\"")
+        self.write_config("INHERIT:remove = \"report-error\"")
 
         self.write_recipeinc('emptytest', """
 INHIBIT_DEFAULT_DEPS = "1"
diff --git a/poky/meta/lib/oeqa/selftest/cases/multiconfig.py b/poky/meta/lib/oeqa/selftest/cases/multiconfig.py
index 39b92f2..baae9b4 100644
--- a/poky/meta/lib/oeqa/selftest/cases/multiconfig.py
+++ b/poky/meta/lib/oeqa/selftest/cases/multiconfig.py
@@ -17,7 +17,7 @@
         """
 
         config = """
-IMAGE_INSTALL_append_pn-core-image-full-cmdline = " multiconfig-image-packager-tiny multiconfig-image-packager-musl"
+IMAGE_INSTALL:append:pn-core-image-full-cmdline = " multiconfig-image-packager-tiny multiconfig-image-packager-musl"
 BBMULTICONFIG = "tiny musl"
 """
         self.write_config(config)
@@ -52,7 +52,7 @@
         self.write_config(config)
 
         testconfig = textwrap.dedent('''\
-                MCTESTVAR_append = "1"
+                MCTESTVAR:append = "1"
                 ''')
         self.write_config(testconfig, 'test')
 
@@ -64,7 +64,7 @@
         self.assertIn('MCTESTVAR=test1', result.output.splitlines())
 
         testconfig = textwrap.dedent('''\
-                MCTESTVAR_append = "2"
+                MCTESTVAR:append = "2"
                 ''')
         self.write_config(testconfig, 'test')
 
diff --git a/poky/meta/lib/oeqa/selftest/cases/package.py b/poky/meta/lib/oeqa/selftest/cases/package.py
index 7166c39..cebbb4f 100644
--- a/poky/meta/lib/oeqa/selftest/cases/package.py
+++ b/poky/meta/lib/oeqa/selftest/cases/package.py
@@ -116,9 +116,9 @@
 
     # Verify gdb to read symbols from separated debug hardlink file correctly
     def test_gdb_hardlink_debug(self):
-        features = 'IMAGE_INSTALL_append = " selftest-hardlink"\n'
-        features += 'IMAGE_INSTALL_append = " selftest-hardlink-dbg"\n'
-        features += 'IMAGE_INSTALL_append = " selftest-hardlink-gdb"\n'
+        features = 'IMAGE_INSTALL:append = " selftest-hardlink"\n'
+        features += 'IMAGE_INSTALL:append = " selftest-hardlink-dbg"\n'
+        features += 'IMAGE_INSTALL:append = " selftest-hardlink-gdb"\n'
         self.write_config(features)
         bitbake("core-image-minimal")
 
@@ -151,7 +151,7 @@
 
     def test_preserve_ownership(self):
         import os, stat, oe.cachedpath
-        features = 'IMAGE_INSTALL_append = " selftest-chown"\n'
+        features = 'IMAGE_INSTALL:append = " selftest-chown"\n'
         self.write_config(features)
         bitbake("core-image-minimal")
 
diff --git a/poky/meta/lib/oeqa/selftest/cases/prservice.py b/poky/meta/lib/oeqa/selftest/cases/prservice.py
index 578b2b4..10158ca 100644
--- a/poky/meta/lib/oeqa/selftest/cases/prservice.py
+++ b/poky/meta/lib/oeqa/selftest/cases/prservice.py
@@ -40,7 +40,7 @@
         return str(stamps[0])
 
     def increment_package_pr(self, package_name):
-        inc_data = "do_package_append() {\n    bb.build.exec_func('do_test_prserv', d)\n}\ndo_test_prserv() {\necho \"The current date is: %s\" > ${PKGDESTWORK}/${PN}.datestamp\n}" % datetime.datetime.now()
+        inc_data = "do_package:append() {\n    bb.build.exec_func('do_test_prserv', d)\n}\ndo_test_prserv() {\necho \"The current date is: %s\" > ${PKGDESTWORK}/${PN}.datestamp\n}" % datetime.datetime.now()
         self.write_recipeinc(package_name, inc_data)
         res = bitbake(package_name, ignore_status=True)
         self.delete_recipeinc(package_name)
diff --git a/poky/meta/lib/oeqa/selftest/cases/recipetool.py b/poky/meta/lib/oeqa/selftest/cases/recipetool.py
index f0685d3..6f531df 100644
--- a/poky/meta/lib/oeqa/selftest/cases/recipetool.py
+++ b/poky/meta/lib/oeqa/selftest/cases/recipetool.py
@@ -94,7 +94,7 @@
 
     def test_recipetool_appendfile_basic(self):
         # Basic test
-        expectedlines = ['FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"\n',
+        expectedlines = ['FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"\n',
                         '\n']
         _, output = self._try_recipetool_appendfile('base-files', '/etc/motd', self.testfile, '', expectedlines, ['motd'])
         self.assertNotIn('WARNING: ', output)
@@ -112,11 +112,11 @@
         # Need a test file - should be executable
         testfile2 = os.path.join(self.corebase, 'oe-init-build-env')
         testfile2name = os.path.basename(testfile2)
-        expectedlines = ['FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"\n',
+        expectedlines = ['FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"\n',
                          '\n',
                          'SRC_URI += "file://%s"\n' % testfile2name,
                          '\n',
-                         'do_install_append() {\n',
+                         'do_install:append() {\n',
                          '    install -d ${D}${base_bindir}\n',
                          '    install -m 0755 ${WORKDIR}/%s ${D}${base_bindir}/ls\n' % testfile2name,
                          '}\n']
@@ -138,11 +138,11 @@
 
     def test_recipetool_appendfile_add(self):
         # Try arbitrary file add to a recipe
-        expectedlines = ['FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"\n',
+        expectedlines = ['FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"\n',
                          '\n',
                          'SRC_URI += "file://testfile"\n',
                          '\n',
-                         'do_install_append() {\n',
+                         'do_install:append() {\n',
                          '    install -d ${D}${datadir}\n',
                          '    install -m 0644 ${WORKDIR}/testfile ${D}${datadir}/something\n',
                          '}\n']
@@ -151,13 +151,13 @@
         # (so we're testing that, plus modifying an existing bbappend)
         testfile2 = os.path.join(self.corebase, 'oe-init-build-env')
         testfile2name = os.path.basename(testfile2)
-        expectedlines = ['FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"\n',
+        expectedlines = ['FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"\n',
                          '\n',
                          'SRC_URI += "file://testfile \\\n',
                          '            file://%s \\\n' % testfile2name,
                          '            "\n',
                          '\n',
-                         'do_install_append() {\n',
+                         'do_install:append() {\n',
                          '    install -d ${D}${datadir}\n',
                          '    install -m 0644 ${WORKDIR}/testfile ${D}${datadir}/something\n',
                          '    install -m 0755 ${WORKDIR}/%s ${D}${datadir}/scriptname\n' % testfile2name,
@@ -166,11 +166,11 @@
 
     def test_recipetool_appendfile_add_bindir(self):
         # Try arbitrary file add to a recipe, this time to a location such that should be installed as executable
-        expectedlines = ['FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"\n',
+        expectedlines = ['FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"\n',
                          '\n',
                          'SRC_URI += "file://testfile"\n',
                          '\n',
-                         'do_install_append() {\n',
+                         'do_install:append() {\n',
                          '    install -d ${D}${bindir}\n',
                          '    install -m 0755 ${WORKDIR}/testfile ${D}${bindir}/selftest-recipetool-testbin\n',
                          '}\n']
@@ -179,13 +179,13 @@
 
     def test_recipetool_appendfile_add_machine(self):
         # Try arbitrary file add to a recipe, this time to a location such that should be installed as executable
-        expectedlines = ['FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"\n',
+        expectedlines = ['FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"\n',
                          '\n',
                          'PACKAGE_ARCH = "${MACHINE_ARCH}"\n',
                          '\n',
-                         'SRC_URI_append_mymachine = " file://testfile"\n',
+                         'SRC_URI:append:mymachine = " file://testfile"\n',
                          '\n',
-                         'do_install_append_mymachine() {\n',
+                         'do_install:append:mymachine() {\n',
                          '    install -d ${D}${datadir}\n',
                          '    install -m 0644 ${WORKDIR}/testfile ${D}${datadir}/something\n',
                          '}\n']
@@ -194,32 +194,32 @@
 
     def test_recipetool_appendfile_orig(self):
         # A file that's in SRC_URI and in do_install with the same name
-        expectedlines = ['FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"\n',
+        expectedlines = ['FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"\n',
                          '\n']
         _, output = self._try_recipetool_appendfile('selftest-recipetool-appendfile', '/usr/share/selftest-replaceme-orig', self.testfile, '', expectedlines, ['selftest-replaceme-orig'])
         self.assertNotIn('WARNING: ', output)
 
     def test_recipetool_appendfile_todir(self):
         # A file that's in SRC_URI and in do_install with destination directory rather than file
-        expectedlines = ['FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"\n',
+        expectedlines = ['FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"\n',
                          '\n']
         _, output = self._try_recipetool_appendfile('selftest-recipetool-appendfile', '/usr/share/selftest-replaceme-todir', self.testfile, '', expectedlines, ['selftest-replaceme-todir'])
         self.assertNotIn('WARNING: ', output)
 
     def test_recipetool_appendfile_renamed(self):
         # A file that's in SRC_URI with a different name to the destination file
-        expectedlines = ['FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"\n',
+        expectedlines = ['FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"\n',
                          '\n']
         _, output = self._try_recipetool_appendfile('selftest-recipetool-appendfile', '/usr/share/selftest-replaceme-renamed', self.testfile, '', expectedlines, ['file1'])
         self.assertNotIn('WARNING: ', output)
 
     def test_recipetool_appendfile_subdir(self):
         # A file that's in SRC_URI in a subdir
-        expectedlines = ['FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"\n',
+        expectedlines = ['FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"\n',
                          '\n',
                          'SRC_URI += "file://testfile"\n',
                          '\n',
-                         'do_install_append() {\n',
+                         'do_install:append() {\n',
                          '    install -d ${D}${datadir}\n',
                          '    install -m 0644 ${WORKDIR}/testfile ${D}${datadir}/selftest-replaceme-subdir\n',
                          '}\n']
@@ -228,25 +228,25 @@
 
     def test_recipetool_appendfile_inst_glob(self):
         # A file that's in do_install as a glob
-        expectedlines = ['FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"\n',
+        expectedlines = ['FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"\n',
                          '\n']
         _, output = self._try_recipetool_appendfile('selftest-recipetool-appendfile', '/usr/share/selftest-replaceme-inst-globfile', self.testfile, '', expectedlines, ['selftest-replaceme-inst-globfile'])
         self.assertNotIn('WARNING: ', output)
 
     def test_recipetool_appendfile_inst_todir_glob(self):
         # A file that's in do_install as a glob with destination as a directory
-        expectedlines = ['FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"\n',
+        expectedlines = ['FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"\n',
                          '\n']
         _, output = self._try_recipetool_appendfile('selftest-recipetool-appendfile', '/usr/share/selftest-replaceme-inst-todir-globfile', self.testfile, '', expectedlines, ['selftest-replaceme-inst-todir-globfile'])
         self.assertNotIn('WARNING: ', output)
 
     def test_recipetool_appendfile_patch(self):
         # A file that's added by a patch in SRC_URI
-        expectedlines = ['FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"\n',
+        expectedlines = ['FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"\n',
                          '\n',
                          'SRC_URI += "file://testfile"\n',
                          '\n',
-                         'do_install_append() {\n',
+                         'do_install:append() {\n',
                          '    install -d ${D}${sysconfdir}\n',
                          '    install -m 0644 ${WORKDIR}/testfile ${D}${sysconfdir}/selftest-replaceme-patched\n',
                          '}\n']
@@ -260,11 +260,11 @@
 
     def test_recipetool_appendfile_script(self):
         # Now, a file that's in SRC_URI but installed by a script (so no mention in do_install)
-        expectedlines = ['FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"\n',
+        expectedlines = ['FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"\n',
                          '\n',
                          'SRC_URI += "file://testfile"\n',
                          '\n',
-                         'do_install_append() {\n',
+                         'do_install:append() {\n',
                          '    install -d ${D}${datadir}\n',
                          '    install -m 0644 ${WORKDIR}/testfile ${D}${datadir}/selftest-replaceme-scripted\n',
                          '}\n']
@@ -273,7 +273,7 @@
 
     def test_recipetool_appendfile_inst_func(self):
         # A file that's installed from a function called by do_install
-        expectedlines = ['FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"\n',
+        expectedlines = ['FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"\n',
                          '\n']
         _, output = self._try_recipetool_appendfile('selftest-recipetool-appendfile', '/usr/share/selftest-replaceme-inst-func', self.testfile, '', expectedlines, ['selftest-replaceme-inst-func'])
         self.assertNotIn('WARNING: ', output)
@@ -283,11 +283,11 @@
         # First try without specifying recipe
         self._try_recipetool_appendfile_fail('/usr/share/selftest-replaceme-postinst', self.testfile, ['File /usr/share/selftest-replaceme-postinst may be written out in a pre/postinstall script of the following recipes:', 'selftest-recipetool-appendfile'])
         # Now specify recipe
-        expectedlines = ['FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"\n',
+        expectedlines = ['FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"\n',
                          '\n',
                          'SRC_URI += "file://testfile"\n',
                          '\n',
-                         'do_install_append() {\n',
+                         'do_install:append() {\n',
                          '    install -d ${D}${datadir}\n',
                          '    install -m 0644 ${WORKDIR}/testfile ${D}${datadir}/selftest-replaceme-postinst\n',
                          '}\n']
@@ -430,10 +430,10 @@
         urls.append('npmsw://${THISDIR}/${BPN}/npm-shrinkwrap.json')
         checkvars['SRC_URI'] = set(urls)
         checkvars['S'] = '${WORKDIR}/npm'
-        checkvars['LICENSE_${PN}'] = 'MIT'
-        checkvars['LICENSE_${PN}-base64'] = 'Unknown'
-        checkvars['LICENSE_${PN}-accepts'] = 'MIT'
-        checkvars['LICENSE_${PN}-inherits'] = 'ISC'
+        checkvars['LICENSE:${PN}'] = 'MIT'
+        checkvars['LICENSE:${PN}-base64'] = 'Unknown'
+        checkvars['LICENSE:${PN}-accepts'] = 'MIT'
+        checkvars['LICENSE:${PN}-inherits'] = 'ISC'
         inherits = ['npm']
         self._test_recipe_contents(recipefile, checkvars, inherits)
 
@@ -620,7 +620,7 @@
             else:
                 destpath = '.' + os.sep
 
-        expectedlines = ['FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"\n',
+        expectedlines = ['FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"\n',
                          '\n']
         if has_src_uri:
             uri = 'file://%s' % filename
diff --git a/poky/meta/lib/oeqa/selftest/cases/recipeutils.py b/poky/meta/lib/oeqa/selftest/cases/recipeutils.py
index 7478703..97edad8 100644
--- a/poky/meta/lib/oeqa/selftest/cases/recipeutils.py
+++ b/poky/meta/lib/oeqa/selftest/cases/recipeutils.py
@@ -52,7 +52,7 @@
 +SRC_URI[md5sum] = "aaaaaa"
  SRC_URI[sha256sum] = "ac6894d876e45878faae493b0cf61d0e28ec417334448ac0a6ea2229d8343051"
  
- RDEPENDS_${PN} += "${PYTHON_PN}-threading"
+ RDEPENDS:${PN} += "${PYTHON_PN}-threading"
 """
         patchlines = []
         for f in patches:
@@ -80,7 +80,7 @@
  
 -SRC_URI += "file://somefile"
 -
- SRC_URI_append = " file://anotherfile"
+ SRC_URI:append = " file://anotherfile"
 """
         patchlines = []
         for f in patches:
@@ -105,7 +105,7 @@
  
 -SRC_URI += "file://somefile"
 -
--SRC_URI_append = " file://anotherfile"
+-SRC_URI:append = " file://anotherfile"
 """
         patchlines = []
         for f in patches:
diff --git a/poky/meta/lib/oeqa/selftest/cases/reproducible.py b/poky/meta/lib/oeqa/selftest/cases/reproducible.py
index a627573..910ef0d 100644
--- a/poky/meta/lib/oeqa/selftest/cases/reproducible.py
+++ b/poky/meta/lib/oeqa/selftest/cases/reproducible.py
@@ -220,7 +220,7 @@
             INHIBIT_PACKAGE_STRIP = "1"
             TMPDIR = "{tmpdir}"
             LICENSE_FLAGS_WHITELIST = "commercial"
-            DISTRO_FEATURES_append = ' systemd pam'
+            DISTRO_FEATURES:append = ' systemd pam'
             USERADDEXTENSION = "useradd-staticids"
             USERADD_ERROR_DYNAMIC = "skip"
             USERADD_UID_TABLES += "files/static-passwd"
diff --git a/poky/meta/lib/oeqa/selftest/cases/runtime_test.py b/poky/meta/lib/oeqa/selftest/cases/runtime_test.py
index d0c2440..4cfec94 100644
--- a/poky/meta/lib/oeqa/selftest/cases/runtime_test.py
+++ b/poky/meta/lib/oeqa/selftest/cases/runtime_test.py
@@ -120,7 +120,7 @@
             self.skipTest('core-image-full-cmdline not buildable for poky-tiny')
 
         features = 'INHERIT += "testimage"\n'
-        features += 'IMAGE_INSTALL_append = " libssl"\n'
+        features += 'IMAGE_INSTALL:append = " libssl"\n'
         features += 'TEST_SUITES = "ping ssh selftest"\n'
         self.write_config(features)
 
@@ -186,14 +186,14 @@
         qemu_distrofeatures = get_bb_var('DISTRO_FEATURES', 'qemu-system-native')
         features = 'INHERIT += "testimage"\n'
         if 'gtk+' not in qemu_packageconfig:
-            features += 'PACKAGECONFIG_append_pn-qemu-system-native = " gtk+"\n'
+            features += 'PACKAGECONFIG:append:pn-qemu-system-native = " gtk+"\n'
         if 'sdl' not in qemu_packageconfig:
-            features += 'PACKAGECONFIG_append_pn-qemu-system-native = " sdl"\n'
+            features += 'PACKAGECONFIG:append:pn-qemu-system-native = " sdl"\n'
         if 'opengl' not in qemu_distrofeatures:
-            features += 'DISTRO_FEATURES_append = " opengl"\n'
+            features += 'DISTRO_FEATURES:append = " opengl"\n'
         features += 'TEST_SUITES = "ping ssh virgl"\n'
-        features += 'IMAGE_FEATURES_append = " ssh-server-dropbear"\n'
-        features += 'IMAGE_INSTALL_append = " kmscube"\n'
+        features += 'IMAGE_FEATURES:append = " ssh-server-dropbear"\n'
+        features += 'IMAGE_INSTALL:append = " kmscube"\n'
         features_gtk = features + 'TEST_RUNQEMUPARAMS = "gtk gl"\n'
         self.write_config(features_gtk)
         bitbake('core-image-minimal')
@@ -225,10 +225,10 @@
         qemu_distrofeatures = get_bb_var('DISTRO_FEATURES', 'qemu-system-native')
         features = 'INHERIT += "testimage"\n'
         if 'opengl' not in qemu_distrofeatures:
-            features += 'DISTRO_FEATURES_append = " opengl"\n'
+            features += 'DISTRO_FEATURES:append = " opengl"\n'
         features += 'TEST_SUITES = "ping ssh virgl"\n'
-        features += 'IMAGE_FEATURES_append = " ssh-server-dropbear"\n'
-        features += 'IMAGE_INSTALL_append = " kmscube"\n'
+        features += 'IMAGE_FEATURES:append = " ssh-server-dropbear"\n'
+        features += 'IMAGE_INSTALL:append = " kmscube"\n'
         features += 'TEST_RUNQEMUPARAMS = "egl-headless"\n'
         self.write_config(features)
         bitbake('core-image-minimal')
@@ -254,7 +254,7 @@
                 features += 'IMAGE_FEATURES += "package-management empty-root-password"\n'
                 features += 'PACKAGE_CLASSES = "%s"\n' % classes
                 if init_manager == "systemd":
-                    features += 'DISTRO_FEATURES_append = " systemd"\n'
+                    features += 'DISTRO_FEATURES:append = " systemd"\n'
                     features += 'VIRTUAL-RUNTIME_init_manager = "systemd"\n'
                     features += 'DISTRO_FEATURES_BACKFILL_CONSIDERED = "sysvinit"\n'
                     features += 'VIRTUAL-RUNTIME_initscripts = ""\n'
@@ -371,14 +371,14 @@
 TEST_TARGET_IP = "192.168.7.2"
 
 EXTRA_IMAGE_FEATURES += "tools-profile dbg-pkgs"
-IMAGE_FEATURES_append = " ssh-server-dropbear"
+IMAGE_FEATURES:append = " ssh-server-dropbear"
 
 # enables kernel debug symbols
-KERNEL_EXTRA_FEATURES_append = " features/debug/debug-kernel.scc"
-KERNEL_EXTRA_FEATURES_append = " features/systemtap/systemtap.scc"
+KERNEL_EXTRA_FEATURES:append = " features/debug/debug-kernel.scc"
+KERNEL_EXTRA_FEATURES:append = " features/systemtap/systemtap.scc"
 
 # add systemtap run-time into target image if it is not there yet
-IMAGE_INSTALL_append = " systemtap-runtime"
+IMAGE_INSTALL:append = " systemtap-runtime"
 """
 
         def test_crosstap_helloworld(self):
diff --git a/poky/meta/lib/oeqa/selftest/cases/signing.py b/poky/meta/lib/oeqa/selftest/cases/signing.py
index a28c7eb..af7a0b8 100644
--- a/poky/meta/lib/oeqa/selftest/cases/signing.py
+++ b/poky/meta/lib/oeqa/selftest/cases/signing.py
@@ -145,7 +145,7 @@
         feature += 'GPG_PATH = "%s"\n' % self.gpg_dir
         feature += 'SSTATE_DIR = "%s"\n' % sstatedir
         # Any mirror might have partial sstate without .sig files, triggering failures
-        feature += 'SSTATE_MIRRORS_forcevariable = ""\n'
+        feature += 'SSTATE_MIRRORS:forcevariable = ""\n'
 
         self.write_config(feature)
 
@@ -206,7 +206,7 @@
         # Use uuid so hash equivalance server isn't triggered
         recipe_append_file = test_recipe + '_' + get_bb_var('PV', test_recipe) + '.bbappend'
         recipe_append_path = os.path.join(templayerdir, 'recipes-test', test_recipe, recipe_append_file)
-        feature = 'SUMMARY_${PN} = "test locked signature%s"\n' % uuid.uuid4()
+        feature = 'SUMMARY:${PN} = "test locked signature%s"\n' % uuid.uuid4()
 
         os.mkdir(os.path.join(templayerdir, 'recipes-test'))
         os.mkdir(os.path.join(templayerdir, 'recipes-test', test_recipe))
diff --git a/poky/meta/lib/oeqa/selftest/cases/sstatetests.py b/poky/meta/lib/oeqa/selftest/cases/sstatetests.py
index 9db2a0b..17a1545 100644
--- a/poky/meta/lib/oeqa/selftest/cases/sstatetests.py
+++ b/poky/meta/lib/oeqa/selftest/cases/sstatetests.py
@@ -174,7 +174,7 @@
 
         # If buildhistory is enabled, we need to disable version-going-backwards
         # QA checks for this test. It may report errors otherwise.
-        self.append_config('ERROR_QA_remove = "version-going-backwards"')
+        self.append_config('ERROR_QA:remove = "version-going-backwards"')
 
         # For not this only checks if random sstate tasks are handled correctly as a group.
         # In the future we should add control over what tasks we check for.
@@ -360,7 +360,7 @@
 MACHINE = \"qemux86-64\"
 require conf/multilib.conf
 MULTILIBS = \"multilib:lib32\"
-DEFAULTTUNE_virtclass-multilib-lib32 = \"x86\"
+DEFAULTTUNE:virtclass-multilib-lib32 = \"x86\"
 BB_SIGNATURE_HANDLER = "OEBasicHash"
 """
         configB = """
@@ -414,7 +414,7 @@
 MACHINE = \"qemux86\"
 require conf/multilib.conf
 MULTILIBS = "multilib:lib32"
-DEFAULTTUNE_virtclass-multilib-lib32 = "x86"
+DEFAULTTUNE:virtclass-multilib-lib32 = "x86"
 BB_SIGNATURE_HANDLER = "OEBasicHash"
 """)
         self.track_for_cleanup(self.topdir + "/tmp-sstatesamehash")
@@ -425,7 +425,7 @@
 MACHINE = \"qemux86copy\"
 require conf/multilib.conf
 MULTILIBS = "multilib:lib32"
-DEFAULTTUNE_virtclass-multilib-lib32 = "x86"
+DEFAULTTUNE:virtclass-multilib-lib32 = "x86"
 BB_SIGNATURE_HANDLER = "OEBasicHash"
 """)
         self.track_for_cleanup(self.topdir + "/tmp-sstatesamehash2")
@@ -462,7 +462,7 @@
 MACHINE = \"qemux86\"
 require conf/multilib.conf
 MULTILIBS = "multilib:lib32"
-DEFAULTTUNE_virtclass-multilib-lib32 = "x86"
+DEFAULTTUNE:virtclass-multilib-lib32 = "x86"
 BB_SIGNATURE_HANDLER = "OEBasicHash"
 """)
         self.track_for_cleanup(self.topdir + "/tmp-sstatesamehash")
@@ -503,7 +503,7 @@
 DL_DIR = "${TOPDIR}/download1"
 TIME = "111111"
 DATE = "20161111"
-INHERIT_remove = "buildstats-summary buildhistory uninative"
+INHERIT:remove = "buildstats-summary buildhistory uninative"
 http_proxy = ""
 BB_SIGNATURE_HANDLER = "OEBasicHash"
 """)
@@ -519,7 +519,7 @@
 TIME = "222222"
 DATE = "20161212"
 # Always remove uninative as we're changing proxies
-INHERIT_remove = "uninative"
+INHERIT:remove = "uninative"
 INHERIT += "buildstats-summary buildhistory"
 http_proxy = "http://example.com/"
 BB_SIGNATURE_HANDLER = "OEBasicHash"
diff --git a/poky/meta/lib/oeqa/selftest/cases/sysroot.py b/poky/meta/lib/oeqa/selftest/cases/sysroot.py
index 6e34927..79ab452 100644
--- a/poky/meta/lib/oeqa/selftest/cases/sysroot.py
+++ b/poky/meta/lib/oeqa/selftest/cases/sysroot.py
@@ -24,14 +24,14 @@
         self.write_config("""
 PREFERRED_PROVIDER_virtual/sysroot-test = "sysroot-test-arch1"
 MACHINE = "qemux86"
-TESTSTRING_pn-sysroot-test-arch1 = "%s"
-TESTSTRING_pn-sysroot-test-arch2 = "%s"
+TESTSTRING:pn-sysroot-test-arch1 = "%s"
+TESTSTRING:pn-sysroot-test-arch2 = "%s"
 """ % (uuid1, uuid2))
         bitbake("sysroot-test")
         self.write_config("""
 PREFERRED_PROVIDER_virtual/sysroot-test = "sysroot-test-arch2"
 MACHINE = "qemux86copy"
-TESTSTRING_pn-sysroot-test-arch1 = "%s"
-TESTSTRING_pn-sysroot-test-arch2 = "%s"
+TESTSTRING:pn-sysroot-test-arch1 = "%s"
+TESTSTRING:pn-sysroot-test-arch2 = "%s"
 """ % (uuid1, uuid2))
         bitbake("sysroot-test")
diff --git a/poky/meta/lib/oeqa/selftest/cases/tinfoil.py b/poky/meta/lib/oeqa/selftest/cases/tinfoil.py
index a51c604..5109280 100644
--- a/poky/meta/lib/oeqa/selftest/cases/tinfoil.py
+++ b/poky/meta/lib/oeqa/selftest/cases/tinfoil.py
@@ -173,8 +173,8 @@
             self.assertEqual(value, 'origvalue', 'Variable renamed using config_data.renameVar() does not appear with new name')
             # Test overrides
             tinfoil.config_data.setVar('TESTVAR', 'original')
-            tinfoil.config_data.setVar('TESTVAR_overrideone', 'one')
-            tinfoil.config_data.setVar('TESTVAR_overridetwo', 'two')
+            tinfoil.config_data.setVar('TESTVAR:overrideone', 'one')
+            tinfoil.config_data.setVar('TESTVAR:overridetwo', 'two')
             tinfoil.config_data.appendVar('OVERRIDES', ':overrideone')
             value = tinfoil.config_data.getVar('TESTVAR')
             self.assertEqual(value, 'one', 'Variable overrides not functioning correctly')
diff --git a/poky/meta/lib/oeqa/selftest/cases/wic.py b/poky/meta/lib/oeqa/selftest/cases/wic.py
index a11e2d0..2efbe51 100644
--- a/poky/meta/lib/oeqa/selftest/cases/wic.py
+++ b/poky/meta/lib/oeqa/selftest/cases/wic.py
@@ -189,8 +189,8 @@
     def test_iso_image(self):
         """Test creation of hybrid iso image with legacy and EFI boot"""
         config = 'INITRAMFS_IMAGE = "core-image-minimal-initramfs"\n'\
-                 'MACHINE_FEATURES_append = " efi"\n'\
-                 'DEPENDS_pn-core-image-minimal += "syslinux"\n'
+                 'MACHINE_FEATURES:append = " efi"\n'\
+                 'DEPENDS:pn-core-image-minimal += "syslinux"\n'
         self.append_config(config)
         bitbake('core-image-minimal core-image-minimal-initramfs')
         self.remove_config(config)
@@ -216,7 +216,7 @@
     @only_for_arch(['i586', 'i686', 'x86_64'])
     def test_bootloader_config(self):
         """Test creation of directdisk-bootloader-config image"""
-        config = 'DEPENDS_pn-core-image-minimal += "syslinux"\n'
+        config = 'DEPENDS:pn-core-image-minimal += "syslinux"\n'
         self.append_config(config)
         bitbake('core-image-minimal')
         self.remove_config(config)
@@ -227,7 +227,7 @@
     @only_for_arch(['i586', 'i686', 'x86_64'])
     def test_systemd_bootdisk(self):
         """Test creation of systemd-bootdisk image"""
-        config = 'MACHINE_FEATURES_append = " efi"\n'
+        config = 'MACHINE_FEATURES:append = " efi"\n'
         self.append_config(config)
         bitbake('core-image-minimal')
         self.remove_config(config)
@@ -259,7 +259,7 @@
         """Test default output location"""
         for fname in glob("directdisk-*.direct"):
             os.remove(fname)
-        config = 'DEPENDS_pn-core-image-minimal += "syslinux"\n'
+        config = 'DEPENDS:pn-core-image-minimal += "syslinux"\n'
         self.append_config(config)
         bitbake('core-image-minimal')
         self.remove_config(config)
@@ -757,7 +757,7 @@
     def test_wic_image_type(self):
         """Test building wic images by bitbake"""
         config = 'IMAGE_FSTYPES += "wic"\nWKS_FILE = "wic-image-minimal"\n'\
-                 'MACHINE_FEATURES_append = " efi"\n'
+                 'MACHINE_FEATURES:append = " efi"\n'
         self.append_config(config)
         self.assertEqual(0, bitbake('wic-image-minimal').status)
         self.remove_config(config)
@@ -777,7 +777,7 @@
     def test_qemu(self):
         """Test wic-image-minimal under qemu"""
         config = 'IMAGE_FSTYPES += "wic"\nWKS_FILE = "wic-image-minimal"\n'\
-                 'MACHINE_FEATURES_append = " efi"\n'
+                 'MACHINE_FEATURES:append = " efi"\n'
         self.append_config(config)
         self.assertEqual(0, bitbake('wic-image-minimal').status)
         self.remove_config(config)
@@ -1035,7 +1035,7 @@
     @only_for_arch(['i586', 'i686', 'x86_64'])
     def test_biosplusefi_plugin_qemu(self):
         """Test biosplusefi plugin in qemu"""
-        config = 'IMAGE_FSTYPES = "wic"\nWKS_FILE = "test_biosplusefi_plugin.wks"\nMACHINE_FEATURES_append = " efi"\n'
+        config = 'IMAGE_FSTYPES = "wic"\nWKS_FILE = "test_biosplusefi_plugin.wks"\nMACHINE_FEATURES:append = " efi"\n'
         self.append_config(config)
         self.assertEqual(0, bitbake('core-image-minimal').status)
         self.remove_config(config)
@@ -1072,7 +1072,7 @@
         # If an image hasn't been built yet, directory ${STAGING_DATADIR}/syslinux won't exists and _get_bootimg_dir()
         #   will raise with "Couldn't find correct bootimg_dir"
         # The easiest way to work-around this issue is to make sure we already built an image here, hence the bitbake call
-        config = 'IMAGE_FSTYPES = "wic"\nWKS_FILE = "test_biosplusefi_plugin.wks"\nMACHINE_FEATURES_append = " efi"\n'
+        config = 'IMAGE_FSTYPES = "wic"\nWKS_FILE = "test_biosplusefi_plugin.wks"\nMACHINE_FEATURES:append = " efi"\n'
         self.append_config(config)
         self.assertEqual(0, bitbake('core-image-minimal').status)
         self.remove_config(config)
diff --git a/poky/meta/recipes-bsp/acpid/acpid.inc b/poky/meta/recipes-bsp/acpid/acpid.inc
index 1e43e7a..f48e519 100644
--- a/poky/meta/recipes-bsp/acpid/acpid.inc
+++ b/poky/meta/recipes-bsp/acpid/acpid.inc
@@ -22,9 +22,9 @@
 INITSCRIPT_NAME = "acpid"
 INITSCRIPT_PARAMS = "defaults"
 
-SYSTEMD_SERVICE_${PN} = "acpid.service"
+SYSTEMD_SERVICE:${PN} = "acpid.service"
 
-do_install_append () {
+do_install:append () {
 	install -d ${D}${sysconfdir}/init.d
 	sed -e 's,/usr/sbin,${sbindir},g' ${WORKDIR}/init > ${D}${sysconfdir}/init.d/acpid
 	chmod 755 ${D}${sysconfdir}/init.d/acpid
diff --git a/poky/meta/recipes-bsp/alsa-state/alsa-state.bb b/poky/meta/recipes-bsp/alsa-state/alsa-state.bb
index cec2272..df54663 100644
--- a/poky/meta/recipes-bsp/alsa-state/alsa-state.bb
+++ b/poky/meta/recipes-bsp/alsa-state/alsa-state.bb
@@ -49,15 +49,15 @@
 
 PACKAGES += "alsa-states"
 
-RRECOMMENDS_alsa-state = "alsa-states"
+RRECOMMENDS:alsa-state = "alsa-states"
 
-RDEPENDS_${PN} = "alsa-utils-alsactl"
-FILES_${PN} = "${sysconfdir}/init.d ${sysconfdir}/asound.conf"
-CONFFILES_${PN} = "${sysconfdir}/asound.conf"
+RDEPENDS:${PN} = "alsa-utils-alsactl"
+FILES:${PN} = "${sysconfdir}/init.d ${sysconfdir}/asound.conf"
+CONFFILES:${PN} = "${sysconfdir}/asound.conf"
 
-FILES_alsa-states = "${localstatedir}/lib/alsa/*.state"
+FILES:alsa-states = "${localstatedir}/lib/alsa/*.state"
 
-pkg_postinst_${PN}() {
+pkg_postinst:${PN}() {
 	if test -z "$D"
 	then
 		if test -x ${sbindir}/alsactl
diff --git a/poky/meta/recipes-bsp/apmd/apmd_3.2.2-15.bb b/poky/meta/recipes-bsp/apmd/apmd_3.2.2-15.bb
index 82c2649..5368abf 100644
--- a/poky/meta/recipes-bsp/apmd/apmd_3.2.2-15.bb
+++ b/poky/meta/recipes-bsp/apmd/apmd_3.2.2-15.bb
@@ -36,7 +36,7 @@
 INITSCRIPT_NAME = "apmd"
 INITSCRIPT_PARAMS = "defaults"
 
-SYSTEMD_SERVICE_${PN} = "apmd.service"
+SYSTEMD_SERVICE:${PN} = "apmd.service"
 SYSTEMD_AUTO_ENABLE = "disable"
 
 EXTRA_OEMAKE = "-e MAKEFLAGS="
@@ -81,5 +81,5 @@
 
 PACKAGES =+ "libapm apm"
 
-FILES_libapm = "${libdir}/libapm${SOLIBS}"
-FILES_apm = "${bindir}/apm*"
+FILES:libapm = "${libdir}/libapm${SOLIBS}"
+FILES:apm = "${bindir}/apm*"
diff --git a/poky/meta/recipes-bsp/efivar/efivar_37.bb b/poky/meta/recipes-bsp/efivar/efivar_37.bb
index 5bf121f..b11f153 100644
--- a/poky/meta/recipes-bsp/efivar/efivar_37.bb
+++ b/poky/meta/recipes-bsp/efivar/efivar_37.bb
@@ -22,7 +22,7 @@
 # enforce BFD.
 LDFLAGS += "-fuse-ld=bfd"
 
-do_compile_prepend() {
+do_compile:prepend() {
     # Remove when https://github.com/rhboot/efivar/issues/130 is fixed
     oe_runmake \
         CFLAGS="${BUILD_CFLAGS}" \
@@ -36,6 +36,6 @@
 
 BBCLASSEXTEND = "native"
 
-RRECOMMENDS_${PN}_class-target = "kernel-module-efivarfs"
+RRECOMMENDS:${PN}:class-target = "kernel-module-efivarfs"
 
 CLEANBROKEN = "1"
diff --git a/poky/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.13.bb b/poky/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.13.bb
index fa98860..ef3061c 100644
--- a/poky/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.13.bb
+++ b/poky/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.13.bb
@@ -22,9 +22,9 @@
 SRC_URI[sha256sum] = "2fccf715279c46ee69c4859186af8150d07a13f4d19876e5459cd65be82d3b7d"
 
 COMPATIBLE_HOST = "(x86_64.*|i.86.*|aarch64.*|arm.*)-linux"
-COMPATIBLE_HOST_armv4 = 'null'
+COMPATIBLE_HOST:armv4 = 'null'
 
-do_configure_linux-gnux32_prepend() {
+do_configure:linux-gnux32:prepend() {
 	cp ${STAGING_INCDIR}/gnu/stubs-x32.h ${STAGING_INCDIR}/gnu/stubs-64.h
 	cp ${STAGING_INCDIR}/bits/long-double-32.h ${STAGING_INCDIR}/bits/long-double-64.h
 }
@@ -48,18 +48,18 @@
         oe_runmake install INSTALLROOT="${D}"
 }
 
-FILES_${PN} += "${libdir}/*.lds"
+FILES:${PN} += "${libdir}/*.lds"
 
 # 64-bit binaries are expected for EFI when targeting X32
-INSANE_SKIP_${PN}-dev_append_linux-gnux32 = " arch"
-INSANE_SKIP_${PN}-dev_append_linux-muslx32 = " arch"
+INSANE_SKIP:${PN}-dev:append:linux-gnux32 = " arch"
+INSANE_SKIP:${PN}-dev:append:linux-muslx32 = " arch"
 
 BBCLASSEXTEND = "native"
 
 # It doesn't support sse, its make.defaults sets:
 # CFLAGS += -mno-mmx -mno-sse
 # So also remove -mfpmath=sse from TUNE_CCARGS
-TUNE_CCARGS_remove = "-mfpmath=sse"
+TUNE_CCARGS:remove = "-mfpmath=sse"
 
 python () {
     ccargs = d.getVar('TUNE_CCARGS').split()
diff --git a/poky/meta/recipes-bsp/grub/grub-bootconf_1.00.bb b/poky/meta/recipes-bsp/grub/grub-bootconf_1.00.bb
index 5725803..151e601 100644
--- a/poky/meta/recipes-bsp/grub/grub-bootconf_1.00.bb
+++ b/poky/meta/recipes-bsp/grub/grub-bootconf_1.00.bb
@@ -5,7 +5,7 @@
 different machines."
 HOMEPAGE = "https://www.gnu.org/software/grub/manual/grub/grub.html#Configuration"
 
-RPROVIDES_${PN} += "virtual/grub-bootconf"
+RPROVIDES:${PN} += "virtual/grub-bootconf"
 
 inherit grub-efi-cfg
 
@@ -29,4 +29,4 @@
 	install grub-bootconf ${D}${EFI_FILES_PATH}/grub.cfg
 }
 
-FILES_${PN} = "${EFI_FILES_PATH}/grub.cfg"
+FILES:${PN} = "${EFI_FILES_PATH}/grub.cfg"
diff --git a/poky/meta/recipes-bsp/grub/grub-efi_2.06.bb b/poky/meta/recipes-bsp/grub/grub-efi_2.06.bb
index 287845c..96e9df8 100644
--- a/poky/meta/recipes-bsp/grub/grub-efi_2.06.bb
+++ b/poky/meta/recipes-bsp/grub/grub-efi_2.06.bb
@@ -4,8 +4,8 @@
 
 GRUBPLATFORM = "efi"
 
-DEPENDS_append = " grub-native"
-RDEPENDS_${PN} = "grub-common virtual/grub-bootconf"
+DEPENDS:append = " grub-native"
+RDEPENDS:${PN} = "grub-common virtual/grub-bootconf"
 
 SRC_URI += " \
            file://cfg \
@@ -79,13 +79,13 @@
 
 addtask deploy after do_install before do_build
 
-FILES_${PN} = "${libdir}/grub/${GRUB_TARGET}-efi \
+FILES:${PN} = "${libdir}/grub/${GRUB_TARGET}-efi \
                ${datadir}/grub \
                ${EFI_FILES_PATH}/${GRUB_IMAGE} \
                "
 
 # 64-bit binaries are expected for the bootloader with an x32 userland
-INSANE_SKIP_${PN}_append_linux-gnux32 = " arch"
-INSANE_SKIP_${PN}-dbg_append_linux-gnux32 = " arch"
-INSANE_SKIP_${PN}_append_linux-muslx32 = " arch"
-INSANE_SKIP_${PN}-dbg_append_linux-muslx32 = " arch"
+INSANE_SKIP:${PN}:append:linux-gnux32 = " arch"
+INSANE_SKIP:${PN}-dbg:append:linux-gnux32 = " arch"
+INSANE_SKIP:${PN}:append:linux-muslx32 = " arch"
+INSANE_SKIP:${PN}-dbg:append:linux-muslx32 = " arch"
diff --git a/poky/meta/recipes-bsp/grub/grub2.inc b/poky/meta/recipes-bsp/grub/grub2.inc
index 1929476..bb79134 100644
--- a/poky/meta/recipes-bsp/grub/grub2.inc
+++ b/poky/meta/recipes-bsp/grub/grub2.inc
@@ -30,21 +30,21 @@
 DEPENDS = "flex-native bison-native gettext-native"
 
 COMPATIBLE_HOST = '(x86_64.*|i.86.*|arm.*|aarch64.*|riscv.*)-(linux.*|freebsd.*)'
-COMPATIBLE_HOST_armv7a = 'null'
-COMPATIBLE_HOST_armv7ve = 'null'
+COMPATIBLE_HOST:armv7a = 'null'
+COMPATIBLE_HOST:armv7ve = 'null'
 
 # configure.ac has code to set this automagically from the target tuple
 # but the OE freeform one (core2-foo-bar-linux) don't work with that.
 
-GRUBPLATFORM_arm = "efi"
-GRUBPLATFORM_aarch64 = "efi"
-GRUBPLATFORM_riscv32 = "efi"
-GRUBPLATFORM_riscv64 = "efi"
+GRUBPLATFORM:arm = "efi"
+GRUBPLATFORM:aarch64 = "efi"
+GRUBPLATFORM:riscv32 = "efi"
+GRUBPLATFORM:riscv64 = "efi"
 GRUBPLATFORM ??= "pc"
 
 inherit autotools gettext texinfo pkgconfig
 
-CFLAGS_remove = "-O2"
+CFLAGS:remove = "-O2"
 
 EXTRA_OECONF = "--with-platform=${GRUBPLATFORM} \
                 --disable-grub-mkfont \
@@ -70,7 +70,7 @@
 
 export PYTHON = "python3"
 
-do_configure_prepend() {
+do_configure:prepend() {
 	cd ${S}
 	FROM_BOOTSTRAP=1 ${S}/autogen.sh
 	cd ${B}
diff --git a/poky/meta/recipes-bsp/grub/grub_2.06.bb b/poky/meta/recipes-bsp/grub/grub_2.06.bb
index d4e09fa..05d4627 100644
--- a/poky/meta/recipes-bsp/grub/grub_2.06.bb
+++ b/poky/meta/recipes-bsp/grub/grub_2.06.bb
@@ -1,24 +1,24 @@
 require grub2.inc
 
-RDEPENDS_${PN}-common += "${PN}-editenv"
-RDEPENDS_${PN} += "${PN}-common"
-RDEPENDS_${PN}_class-native = ""
+RDEPENDS:${PN}-common += "${PN}-editenv"
+RDEPENDS:${PN} += "${PN}-common"
+RDEPENDS:${PN}:class-native = ""
 
-RPROVIDES_${PN}-editenv += "${PN}-efi-editenv"
+RPROVIDES:${PN}-editenv += "${PN}-efi-editenv"
 
-PROVIDES_append_class-native = " grub-efi-native"
+PROVIDES:append:class-native = " grub-efi-native"
 
 PACKAGES =+ "${PN}-editenv ${PN}-common"
-FILES_${PN}-editenv = "${bindir}/grub-editenv"
-FILES_${PN}-common = " \
+FILES:${PN}-editenv = "${bindir}/grub-editenv"
+FILES:${PN}-common = " \
     ${bindir} \
     ${sysconfdir} \
     ${sbindir} \
     ${datadir}/grub \
 "
-ALLOW_EMPTY_${PN} = "1"
+ALLOW_EMPTY:${PN} = "1"
 
-do_install_append () {
+do_install:append () {
     # Avoid conflicts with the EFI package for systems such as arm64 where we
     # need to build grub and grub-efi but only EFI is supported by removing EFI
     # from this package.
@@ -35,7 +35,7 @@
         {} +
 }
 
-INSANE_SKIP_${PN} = "arch"
-INSANE_SKIP_${PN}-dbg = "arch"
+INSANE_SKIP:${PN} = "arch"
+INSANE_SKIP:${PN}-dbg = "arch"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-bsp/keymaps/keymaps_1.0.bb b/poky/meta/recipes-bsp/keymaps/keymaps_1.0.bb
index 24b13f9..091bcc6 100644
--- a/poky/meta/recipes-bsp/keymaps/keymaps_1.0.bb
+++ b/poky/meta/recipes-bsp/keymaps/keymaps_1.0.bb
@@ -2,7 +2,7 @@
 DESCRIPTION = "Keymaps and initscript to set the keymap on bootup."
 SECTION = "base"
 
-RDEPENDS_${PN} = "kbd"
+RDEPENDS:${PN} = "kbd"
 
 LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
@@ -37,8 +37,8 @@
     fi
 }
 
-PACKAGE_WRITE_DEPS_append = " ${@bb.utils.contains('DISTRO_FEATURES','systemd sysvinit','systemd-systemctl-native','',d)}"
-pkg_postinst_${PN} () {
+PACKAGE_WRITE_DEPS:append = " ${@bb.utils.contains('DISTRO_FEATURES','systemd sysvinit','systemd-systemctl-native','',d)}"
+pkg_postinst:${PN} () {
 	if ${@bb.utils.contains('DISTRO_FEATURES','systemd sysvinit','true','false',d)}; then
 		if [ -n "$D" ]; then
 			OPTS="--root=$D"
@@ -47,4 +47,4 @@
 	fi
 }
 
-ALLOW_EMPTY_${PN} = "1"
+ALLOW_EMPTY:${PN} = "1"
diff --git a/poky/meta/recipes-bsp/lrzsz/lrzsz_0.12.20.bb b/poky/meta/recipes-bsp/lrzsz/lrzsz_0.12.20.bb
index 54c431e..5f38331 100644
--- a/poky/meta/recipes-bsp/lrzsz/lrzsz_0.12.20.bb
+++ b/poky/meta/recipes-bsp/lrzsz/lrzsz_0.12.20.bb
@@ -38,7 +38,7 @@
 
 ALTERNATIVE_PRIORITY = "100"
 
-ALTERNATIVE_${PN} = "rz rx rb sz sx sb"
+ALTERNATIVE:${PN} = "rz rx rb sz sx sb"
 
 ALTERNATIVE_TARGET[rz] = "${bindir}/lrz"
 ALTERNATIVE_TARGET[rx] = "${bindir}/lrz"
diff --git a/poky/meta/recipes-bsp/opensbi/opensbi_0.9.bb b/poky/meta/recipes-bsp/opensbi/opensbi_0.9.bb
index 5fee521..cb9f346 100644
--- a/poky/meta/recipes-bsp/opensbi/opensbi_0.9.bb
+++ b/poky/meta/recipes-bsp/opensbi/opensbi_0.9.bb
@@ -17,13 +17,13 @@
 
 EXTRA_OEMAKE += "PLATFORM=${RISCV_SBI_PLAT} I=${D} FW_PIC=n"
 # If RISCV_SBI_PAYLOAD is set then include it as a payload
-EXTRA_OEMAKE_append = " ${@riscv_get_extra_oemake_image(d)}"
-EXTRA_OEMAKE_append = " ${@riscv_get_extra_oemake_fdt(d)}"
+EXTRA_OEMAKE:append = " ${@riscv_get_extra_oemake_image(d)}"
+EXTRA_OEMAKE:append = " ${@riscv_get_extra_oemake_fdt(d)}"
 
 # Required if specifying a custom payload
 do_compile[depends] += "${@riscv_get_do_compile_depends(d)}"
 
-do_install_append() {
+do_install:append() {
 	# In the future these might be required as a dependency for other packages.
 	# At the moment just delete them to avoid warnings
 	rm -r ${D}/include
@@ -39,9 +39,9 @@
 
 addtask deploy before do_build after do_install
 
-FILES_${PN} += "/share/opensbi/*/${RISCV_SBI_PLAT}/firmware/fw_jump.*"
-FILES_${PN} += "/share/opensbi/*/${RISCV_SBI_PLAT}/firmware/fw_payload.*"
-FILES_${PN} += "/share/opensbi/*/${RISCV_SBI_PLAT}/firmware/fw_dynamic.*"
+FILES:${PN} += "/share/opensbi/*/${RISCV_SBI_PLAT}/firmware/fw_jump.*"
+FILES:${PN} += "/share/opensbi/*/${RISCV_SBI_PLAT}/firmware/fw_payload.*"
+FILES:${PN} += "/share/opensbi/*/${RISCV_SBI_PLAT}/firmware/fw_dynamic.*"
 
 COMPATIBLE_HOST = "(riscv64|riscv32).*"
 INHIBIT_PACKAGE_STRIP = "1"
diff --git a/poky/meta/recipes-bsp/pciutils/pciutils_3.7.0.bb b/poky/meta/recipes-bsp/pciutils/pciutils_3.7.0.bb
index 4f0edc0..3afa521 100644
--- a/poky/meta/recipes-bsp/pciutils/pciutils_3.7.0.bb
+++ b/poky/meta/recipes-bsp/pciutils/pciutils_3.7.0.bb
@@ -52,8 +52,8 @@
 }
 
 PACKAGES =+ "${PN}-ids libpci"
-FILES_${PN}-ids = "${datadir}/pci.ids*"
-FILES_libpci = "${libdir}/libpci.so.*"
-SUMMARY_${PN}-ids = "PCI utilities - device ID database"
-DESCRIPTION_${PN}-ids = "Package providing the PCI device ID database for pciutils."
-RDEPENDS_${PN} += "${PN}-ids"
+FILES:${PN}-ids = "${datadir}/pci.ids*"
+FILES:libpci = "${libdir}/libpci.so.*"
+SUMMARY:${PN}-ids = "PCI utilities - device ID database"
+DESCRIPTION:${PN}-ids = "Package providing the PCI device ID database for pciutils."
+RDEPENDS:${PN} += "${PN}-ids"
diff --git a/poky/meta/recipes-bsp/pm-utils/pm-utils_1.4.1.bb b/poky/meta/recipes-bsp/pm-utils/pm-utils_1.4.1.bb
index cac0910..0f6d3ff 100644
--- a/poky/meta/recipes-bsp/pm-utils/pm-utils_1.4.1.bb
+++ b/poky/meta/recipes-bsp/pm-utils/pm-utils_1.4.1.bb
@@ -17,11 +17,11 @@
 
 PACKAGECONFIG[manpages] = "--enable-doc, --disable-doc, libxslt-native xmlto-native"
 
-RDEPENDS_${PN} = "grep bash"
+RDEPENDS:${PN} = "grep bash"
 
-do_configure_prepend () {
+do_configure:prepend () {
 	( cd ${S}; autoreconf -f -i -s )
 }
 
-FILES_${PN} += "${libdir}/${BPN}/*"
-FILES_${PN}-dbg += "${datadir}/doc/pm-utils/README.debugging"
+FILES:${PN} += "${libdir}/${BPN}/*"
+FILES:${PN}-dbg += "${datadir}/doc/pm-utils/README.debugging"
diff --git a/poky/meta/recipes-bsp/u-boot/libubootenv_0.3.2.bb b/poky/meta/recipes-bsp/u-boot/libubootenv_0.3.2.bb
index 3062969..ce14bc4 100644
--- a/poky/meta/recipes-bsp/u-boot/libubootenv_0.3.2.bb
+++ b/poky/meta/recipes-bsp/u-boot/libubootenv_0.3.2.bb
@@ -21,10 +21,6 @@
 
 DEPENDS = "zlib"
 PROVIDES += "u-boot-fw-utils"
-RPROVIDES_${PN}-bin += "u-boot-fw-utils"
-
-PACKAGE_ARCH = "${MACHINE_ARCH}"
-
-RRECOMMENDS_${PN}-bin_append_class-target = " u-boot-default-env"
+RPROVIDES:${PN}-bin += "u-boot-fw-utils"
 
 BBCLASSEXTEND = "native"
diff --git a/poky/meta/recipes-bsp/u-boot/u-boot-tools.inc b/poky/meta/recipes-bsp/u-boot/u-boot-tools.inc
index 4ed936a..7eda6a0 100644
--- a/poky/meta/recipes-bsp/u-boot/u-boot-tools.inc
+++ b/poky/meta/recipes-bsp/u-boot/u-boot-tools.inc
@@ -2,25 +2,25 @@
 DEPENDS += "openssl"
 
 PROVIDES = "${MLPREFIX}u-boot-mkimage ${MLPREFIX}u-boot-mkenvimage"
-PROVIDES_class-native = "u-boot-mkimage-native u-boot-mkenvimage-native"
+PROVIDES:class-native = "u-boot-mkimage-native u-boot-mkenvimage-native"
 
 PACKAGES += "${PN}-mkimage ${PN}-mkenvimage"
 
 # Required for backward compatibility with "u-boot-mkimage-xxx.bb"
-RPROVIDES_${PN}-mkimage = "u-boot-mkimage"
-RREPLACES_${PN}-mkimage = "u-boot-mkimage"
-RCONFLICTS_${PN}-mkimage = "u-boot-mkimage"
+RPROVIDES:${PN}-mkimage = "u-boot-mkimage"
+RREPLACES:${PN}-mkimage = "u-boot-mkimage"
+RCONFLICTS:${PN}-mkimage = "u-boot-mkimage"
 
-EXTRA_OEMAKE_class-target = 'CROSS_COMPILE="${TARGET_PREFIX}" CC="${CC} ${CFLAGS} ${LDFLAGS}" HOSTCC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}" STRIP=true V=1'
-EXTRA_OEMAKE_class-native = 'CC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}" HOSTCC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}" STRIP=true V=1'
-EXTRA_OEMAKE_class-nativesdk = 'CROSS_COMPILE="${HOST_PREFIX}" CC="${CC} ${CFLAGS} ${LDFLAGS}" HOSTCC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}" STRIP=true V=1'
+EXTRA_OEMAKE:class-target = 'CROSS_COMPILE="${TARGET_PREFIX}" CC="${CC} ${CFLAGS} ${LDFLAGS}" HOSTCC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}" STRIP=true V=1'
+EXTRA_OEMAKE:class-native = 'CC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}" HOSTCC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}" STRIP=true V=1'
+EXTRA_OEMAKE:class-nativesdk = 'CROSS_COMPILE="${HOST_PREFIX}" CC="${CC} ${CFLAGS} ${LDFLAGS}" HOSTCC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}" STRIP=true V=1'
 
 SED_CONFIG_EFI = '-e "s/CONFIG_EFI_LOADER=.*/# CONFIG_EFI_LOADER is not set/"'
-SED_CONFIG_EFI_x86 = ''
-SED_CONFIG_EFI_x86-64 = ''
-SED_CONFIG_EFI_arm = ''
-SED_CONFIG_EFI_armeb = ''
-SED_CONFIG_EFI_aarch64 = ''
+SED_CONFIG_EFI:x86 = ''
+SED_CONFIG_EFI:x86-64 = ''
+SED_CONFIG_EFI:arm = ''
+SED_CONFIG_EFI:armeb = ''
+SED_CONFIG_EFI:aarch64 = ''
 
 do_compile () {
 	# Yes, this is crazy. If you build on a system with git < 2.14 from scratch, the tree will
@@ -68,14 +68,14 @@
 	ln -sf uboot-fit_check_sign ${D}${bindir}/fit_check_sign
 }
 
-ALLOW_EMPTY_${PN} = "1"
-FILES_${PN} = ""
-FILES_${PN}-mkimage = "${bindir}/uboot-mkimage ${bindir}/mkimage ${bindir}/uboot-dumpimage ${bindir}/dumpimage ${bindir}/uboot-fit_check_sign ${bindir}/fit_check_sign"
-FILES_${PN}-mkenvimage = "${bindir}/uboot-mkenvimage ${bindir}/mkenvimage"
+ALLOW_EMPTY:${PN} = "1"
+FILES:${PN} = ""
+FILES:${PN}-mkimage = "${bindir}/uboot-mkimage ${bindir}/mkimage ${bindir}/uboot-dumpimage ${bindir}/dumpimage ${bindir}/uboot-fit_check_sign ${bindir}/fit_check_sign"
+FILES:${PN}-mkenvimage = "${bindir}/uboot-mkenvimage ${bindir}/mkenvimage"
 
-RDEPENDS_${PN}-mkimage += "dtc"
-RDEPENDS_${PN} += "${PN}-mkimage ${PN}-mkenvimage"
-RDEPENDS_${PN}_class-native = ""
+RDEPENDS:${PN}-mkimage += "dtc"
+RDEPENDS:${PN} += "${PN}-mkimage ${PN}-mkenvimage"
+RDEPENDS:${PN}:class-native = ""
 
 BBCLASSEXTEND = "native nativesdk"
 
diff --git a/poky/meta/recipes-bsp/u-boot/u-boot-tools_2021.07.bb b/poky/meta/recipes-bsp/u-boot/u-boot-tools_2021.07.bb
index 4e90081..d0c0f30 100644
--- a/poky/meta/recipes-bsp/u-boot/u-boot-tools_2021.07.bb
+++ b/poky/meta/recipes-bsp/u-boot/u-boot-tools_2021.07.bb
@@ -1,4 +1,4 @@
 require u-boot-common.inc
 require u-boot-tools.inc
 
-SRC_URI_append = " file://0001-tools-image-host-fix-wrong-return-value.patch"
+SRC_URI:append = " file://0001-tools-image-host-fix-wrong-return-value.patch"
diff --git a/poky/meta/recipes-bsp/u-boot/u-boot.inc b/poky/meta/recipes-bsp/u-boot/u-boot.inc
index 8ccc532..4340b17 100644
--- a/poky/meta/recipes-bsp/u-boot/u-boot.inc
+++ b/poky/meta/recipes-bsp/u-boot/u-boot.inc
@@ -212,15 +212,15 @@
 
 PACKAGE_BEFORE_PN += "${PN}-env"
 
-RPROVIDES_${PN}-env += "u-boot-default-env"
-ALLOW_EMPTY_${PN}-env = "1"
-FILES_${PN}-env = " \
+RPROVIDES:${PN}-env += "u-boot-default-env"
+ALLOW_EMPTY:${PN}-env = "1"
+FILES:${PN}-env = " \
     ${@ '${sysconfdir}/${UBOOT_INITIAL_ENV}*' if d.getVar('UBOOT_INITIAL_ENV') else ''} \
     ${sysconfdir}/fw_env.config \
 "
 
-FILES_${PN} = "/boot ${datadir}"
-RDEPENDS_${PN} += "${PN}-env"
+FILES:${PN} = "/boot ${datadir}"
+RDEPENDS:${PN} += "${PN}-env"
 
 do_deploy () {
     if [ -n "${UBOOT_CONFIG}" ]
diff --git a/poky/meta/recipes-bsp/u-boot/u-boot_2021.07.bb b/poky/meta/recipes-bsp/u-boot/u-boot_2021.07.bb
index bbbc99b..c8dbe47 100644
--- a/poky/meta/recipes-bsp/u-boot/u-boot_2021.07.bb
+++ b/poky/meta/recipes-bsp/u-boot/u-boot_2021.07.bb
@@ -1,6 +1,6 @@
 require u-boot-common.inc
 require u-boot.inc
 
-SRC_URI_append = " file://0001-riscv32-Use-double-float-ABI-for-rv32.patch"
+SRC_URI:append = " file://0001-riscv32-Use-double-float-ABI-for-rv32.patch"
 
 DEPENDS += "bc-native dtc-native python3-setuptools-native"
diff --git a/poky/meta/recipes-bsp/usbutils/usbutils_013.bb b/poky/meta/recipes-bsp/usbutils/usbutils_013.bb
index 51f909b..db64a48 100644
--- a/poky/meta/recipes-bsp/usbutils/usbutils_013.bb
+++ b/poky/meta/recipes-bsp/usbutils/usbutils_013.bb
@@ -16,15 +16,15 @@
 
 inherit autotools pkgconfig update-alternatives
 
-ALTERNATIVE_${PN} = "lsusb"
+ALTERNATIVE:${PN} = "lsusb"
 ALTERNATIVE_PRIORITY = "100"
 
 # The binaries are mostly GPLv2+ apart from lsusb.py which is GPLv2 or v3.
-LICENSE_${PN} = "GPLv2+"
-LICENSE_${PN}-python = "GPLv2 | GPLv3"
+LICENSE:${PN} = "GPLv2+"
+LICENSE:${PN}-python = "GPLv2 | GPLv3"
 
-RRECOMMENDS_${PN} = "udev-hwdb"
+RRECOMMENDS:${PN} = "udev-hwdb"
 
 PACKAGE_BEFORE_PN =+ "${PN}-python"
-FILES_${PN}-python += "${bindir}/lsusb.py"
-RDEPENDS_${PN}-python = "python3-core"
+FILES:${PN}-python += "${bindir}/lsusb.py"
+RDEPENDS:${PN}-python = "python3-core"
diff --git a/poky/meta/recipes-bsp/v86d/v86d_0.1.10.bb b/poky/meta/recipes-bsp/v86d/v86d_0.1.10.bb
index e614de0..b011276 100644
--- a/poky/meta/recipes-bsp/v86d/v86d_0.1.10.bb
+++ b/poky/meta/recipes-bsp/v86d/v86d_0.1.10.bb
@@ -7,7 +7,7 @@
 LIC_FILES_CHKSUM = "file://README;md5=94ac1971e4f2309dc322d598e7b1f7dd"
 
 DEPENDS = "virtual/kernel"
-RRECOMMENDS_${PN} = "kernel-module-uvesafb"
+RRECOMMENDS:${PN} = "kernel-module-uvesafb"
 PR = "r2"
 
 SRC_URI = "http://snapshot.debian.org/archive/debian/20110427T035506Z/pool/main/v/${BPN}/${BPN}_${PV}.orig.tar.gz \
diff --git a/poky/meta/recipes-connectivity/avahi/avahi_0.8.bb b/poky/meta/recipes-connectivity/avahi/avahi_0.8.bb
index 79ce669..934044d 100644
--- a/poky/meta/recipes-connectivity/avahi/avahi_0.8.bb
+++ b/poky/meta/recipes-connectivity/avahi/avahi_0.8.bb
@@ -69,16 +69,16 @@
 EXTRA_OECONF_SYSVINIT = "${@bb.utils.contains('DISTRO_FEATURES','sysvinit','--with-distro=debian','--with-distro=none',d)}"
 EXTRA_OECONF_SYSTEMD = "${@bb.utils.contains('DISTRO_FEATURES','systemd','--with-systemdsystemunitdir=${systemd_unitdir}/system/','--without-systemdsystemunitdir',d)}"
 
-do_configure_prepend() {
+do_configure:prepend() {
     # This m4 file will get in the way of our introspection.m4 with special cross-compilation fixes
     rm "${S}/common/introspection.m4" || true
 }
 
-do_compile_prepend() {
+do_compile:prepend() {
     export GIR_EXTRA_LIBS_PATH="${B}/avahi-gobject/.libs:${B}/avahi-common/.libs:${B}/avahi-client/.libs:${B}/avahi-glib/.libs"
 }
 
-RRECOMMENDS_${PN}_append_libc-glibc = " libnss-mdns"
+RRECOMMENDS:${PN}:append:libc-glibc = " libnss-mdns"
 
 do_install() {
 	autotools_do_install
@@ -95,41 +95,41 @@
 
 PACKAGES =+ "${@bb.utils.contains("PACKAGECONFIG", "libdns_sd", "libavahi-compat-libdnssd", "", d)}"
 
-FILES_libavahi-compat-libdnssd = "${libdir}/libdns_sd.so.*"
+FILES:libavahi-compat-libdnssd = "${libdir}/libdns_sd.so.*"
 
-RPROVIDES_libavahi-compat-libdnssd = "libdns-sd"
+RPROVIDES:libavahi-compat-libdnssd = "libdns-sd"
 
 inherit update-rc.d systemd useradd
 
 PACKAGES =+ "libavahi-gobject avahi-daemon libavahi-common libavahi-core libavahi-client avahi-dnsconfd libavahi-glib avahi-autoipd avahi-utils avahi-discover avahi-ui"
 
-FILES_avahi-ui = "${libdir}/libavahi-ui*.so.*"
-FILES_avahi-discover = "${datadir}/applications/avahi-discover.desktop \
+FILES:avahi-ui = "${libdir}/libavahi-ui*.so.*"
+FILES:avahi-discover = "${datadir}/applications/avahi-discover.desktop \
                         ${datadir}/avahi/interfaces/avahi-discover.ui \
                         ${bindir}/avahi-discover-standalone \
                         "
 
-LICENSE_libavahi-gobject = "LGPLv2.1+"
-LICENSE_avahi-daemon = "LGPLv2.1+"
-LICENSE_libavahi-common = "LGPLv2.1+"
-LICENSE_libavahi-core = "LGPLv2.1+"
-LICENSE_libavahi-client = "LGPLv2.1+"
-LICENSE_avahi-dnsconfd = "LGPLv2.1+"
-LICENSE_libavahi-glib = "LGPLv2.1+"
-LICENSE_avahi-autoipd = "LGPLv2.1+"
-LICENSE_avahi-utils = "LGPLv2.1+"
+LICENSE:libavahi-gobject = "LGPLv2.1+"
+LICENSE:avahi-daemon = "LGPLv2.1+"
+LICENSE:libavahi-common = "LGPLv2.1+"
+LICENSE:libavahi-core = "LGPLv2.1+"
+LICENSE:libavahi-client = "LGPLv2.1+"
+LICENSE:avahi-dnsconfd = "LGPLv2.1+"
+LICENSE:libavahi-glib = "LGPLv2.1+"
+LICENSE:avahi-autoipd = "LGPLv2.1+"
+LICENSE:avahi-utils = "LGPLv2.1+"
 
 # As avahi doesn't put any files into PN, clear the files list to avoid problems
 # if extra libraries appear.
-FILES_${PN} = ""
-FILES_avahi-autoipd = "${sbindir}/avahi-autoipd \
+FILES:${PN} = ""
+FILES:avahi-autoipd = "${sbindir}/avahi-autoipd \
                        ${sysconfdir}/avahi/avahi-autoipd.action \
                        ${sysconfdir}/dhcp/*/avahi-autoipd \
                        ${sysconfdir}/udhcpc.d/00avahi-autoipd \
                        ${sysconfdir}/udhcpc.d/99avahi-autoipd"
-FILES_libavahi-common = "${libdir}/libavahi-common.so.*"
-FILES_libavahi-core = "${libdir}/libavahi-core.so.* ${libdir}/girepository-1.0/AvahiCore*.typelib"
-FILES_avahi-daemon = "${sbindir}/avahi-daemon \
+FILES:libavahi-common = "${libdir}/libavahi-common.so.*"
+FILES:libavahi-core = "${libdir}/libavahi-core.so.* ${libdir}/girepository-1.0/AvahiCore*.typelib"
+FILES:avahi-daemon = "${sbindir}/avahi-daemon \
                       ${sysconfdir}/avahi/avahi-daemon.conf \
                       ${sysconfdir}/avahi/hosts \
                       ${sysconfdir}/avahi/services \
@@ -139,44 +139,44 @@
                       ${datadir}/avahi/avahi-service.dtd \
                       ${datadir}/avahi/service-types \
                       ${datadir}/dbus-1/system-services"
-FILES_libavahi-client = "${libdir}/libavahi-client.so.*"
-FILES_avahi-dnsconfd = "${sbindir}/avahi-dnsconfd \
+FILES:libavahi-client = "${libdir}/libavahi-client.so.*"
+FILES:avahi-dnsconfd = "${sbindir}/avahi-dnsconfd \
                         ${sysconfdir}/avahi/avahi-dnsconfd.action \
                         ${sysconfdir}/init.d/avahi-dnsconfd"
-FILES_libavahi-glib = "${libdir}/libavahi-glib.so.*"
-FILES_libavahi-gobject = "${libdir}/libavahi-gobject.so.*  ${libdir}/girepository-1.0/Avahi*.typelib"
-FILES_avahi-utils = "${bindir}/avahi-* ${bindir}/b* ${datadir}/applications/b*"
+FILES:libavahi-glib = "${libdir}/libavahi-glib.so.*"
+FILES:libavahi-gobject = "${libdir}/libavahi-gobject.so.*  ${libdir}/girepository-1.0/Avahi*.typelib"
+FILES:avahi-utils = "${bindir}/avahi-* ${bindir}/b* ${datadir}/applications/b*"
 
-RDEPENDS_${PN}-dev = "avahi-daemon (= ${EXTENDPKGV}) libavahi-core (= ${EXTENDPKGV})"
-RDEPENDS_${PN}-dev += "${@["", " libavahi-client (= ${EXTENDPKGV})"][bb.utils.contains('PACKAGECONFIG', 'dbus', 1, 0, d)]}"
-RDEPENDS_${PN}-dnsconfd = "${PN}-daemon"
+RDEPENDS:${PN}-dev = "avahi-daemon (= ${EXTENDPKGV}) libavahi-core (= ${EXTENDPKGV})"
+RDEPENDS:${PN}-dev += "${@["", " libavahi-client (= ${EXTENDPKGV})"][bb.utils.contains('PACKAGECONFIG', 'dbus', 1, 0, d)]}"
+RDEPENDS:${PN}-dnsconfd = "${PN}-daemon"
 
-RRECOMMENDS_avahi-daemon_append_libc-glibc = " libnss-mdns"
+RRECOMMENDS:avahi-daemon:append:libc-glibc = " libnss-mdns"
 
-CONFFILES_avahi-daemon = "${sysconfdir}/avahi/avahi-daemon.conf"
+CONFFILES:avahi-daemon = "${sysconfdir}/avahi/avahi-daemon.conf"
 
 USERADD_PACKAGES = "avahi-daemon avahi-autoipd"
-USERADD_PARAM_avahi-daemon = "--system --home /run/avahi-daemon \
+USERADD_PARAM:avahi-daemon = "--system --home /run/avahi-daemon \
                               --no-create-home --shell /bin/false \
                               --user-group avahi"
 
-USERADD_PARAM_avahi-autoipd = "--system --home /run/avahi-autoipd \
+USERADD_PARAM:avahi-autoipd = "--system --home /run/avahi-autoipd \
                               --no-create-home --shell /bin/false \
                               --user-group \
                               -c \"Avahi autoip daemon\" \
                               avahi-autoipd"
 
 INITSCRIPT_PACKAGES = "avahi-daemon avahi-dnsconfd"
-INITSCRIPT_NAME_avahi-daemon = "avahi-daemon"
-INITSCRIPT_PARAMS_avahi-daemon = "defaults 21 19"
-INITSCRIPT_NAME_avahi-dnsconfd = "avahi-dnsconfd"
-INITSCRIPT_PARAMS_avahi-dnsconfd = "defaults 22 19"
+INITSCRIPT_NAME:avahi-daemon = "avahi-daemon"
+INITSCRIPT_PARAMS:avahi-daemon = "defaults 21 19"
+INITSCRIPT_NAME:avahi-dnsconfd = "avahi-dnsconfd"
+INITSCRIPT_PARAMS:avahi-dnsconfd = "defaults 22 19"
 
 SYSTEMD_PACKAGES = "${PN}-daemon ${PN}-dnsconfd"
-SYSTEMD_SERVICE_${PN}-daemon = "avahi-daemon.service"
-SYSTEMD_SERVICE_${PN}-dnsconfd = "avahi-dnsconfd.service"
+SYSTEMD_SERVICE:${PN}-daemon = "avahi-daemon.service"
+SYSTEMD_SERVICE:${PN}-dnsconfd = "avahi-dnsconfd.service"
 
-do_install_append() {
+do_install:append() {
 	install -d ${D}${sysconfdir}/udhcpc.d
 	install ${WORKDIR}/00avahi-autoipd ${D}${sysconfdir}/udhcpc.d
 	install ${WORKDIR}/99avahi-autoipd ${D}${sysconfdir}/udhcpc.d
@@ -184,7 +184,7 @@
 
 # At the time the postinst runs, dbus might not be setup so only restart if running 
 # Don't exit early, because update-rc.d needs to run subsequently.
-pkg_postinst_avahi-daemon () {
+pkg_postinst:avahi-daemon () {
 if [ -z "$D" ]; then
 	killall -q -HUP dbus-daemon || true
 fi
diff --git a/poky/meta/recipes-connectivity/bind/bind-9.16.18/0001-avoid-start-failure-with-bind-user.patch b/poky/meta/recipes-connectivity/bind/bind-9.16.19/0001-avoid-start-failure-with-bind-user.patch
similarity index 100%
rename from poky/meta/recipes-connectivity/bind/bind-9.16.18/0001-avoid-start-failure-with-bind-user.patch
rename to poky/meta/recipes-connectivity/bind/bind-9.16.19/0001-avoid-start-failure-with-bind-user.patch
diff --git a/poky/meta/recipes-connectivity/bind/bind-9.16.18/0001-named-lwresd-V-and-start-log-hide-build-options.patch b/poky/meta/recipes-connectivity/bind/bind-9.16.19/0001-named-lwresd-V-and-start-log-hide-build-options.patch
similarity index 100%
rename from poky/meta/recipes-connectivity/bind/bind-9.16.18/0001-named-lwresd-V-and-start-log-hide-build-options.patch
rename to poky/meta/recipes-connectivity/bind/bind-9.16.19/0001-named-lwresd-V-and-start-log-hide-build-options.patch
diff --git a/poky/meta/recipes-connectivity/bind/bind-9.16.18/bind-ensure-searching-for-json-headers-searches-sysr.patch b/poky/meta/recipes-connectivity/bind/bind-9.16.19/bind-ensure-searching-for-json-headers-searches-sysr.patch
similarity index 100%
rename from poky/meta/recipes-connectivity/bind/bind-9.16.18/bind-ensure-searching-for-json-headers-searches-sysr.patch
rename to poky/meta/recipes-connectivity/bind/bind-9.16.19/bind-ensure-searching-for-json-headers-searches-sysr.patch
diff --git a/poky/meta/recipes-connectivity/bind/bind-9.16.18/bind9 b/poky/meta/recipes-connectivity/bind/bind-9.16.19/bind9
similarity index 100%
rename from poky/meta/recipes-connectivity/bind/bind-9.16.18/bind9
rename to poky/meta/recipes-connectivity/bind/bind-9.16.19/bind9
diff --git a/poky/meta/recipes-connectivity/bind/bind-9.16.18/conf.patch b/poky/meta/recipes-connectivity/bind/bind-9.16.19/conf.patch
similarity index 100%
rename from poky/meta/recipes-connectivity/bind/bind-9.16.18/conf.patch
rename to poky/meta/recipes-connectivity/bind/bind-9.16.19/conf.patch
diff --git a/poky/meta/recipes-connectivity/bind/bind-9.16.18/generate-rndc-key.sh b/poky/meta/recipes-connectivity/bind/bind-9.16.19/generate-rndc-key.sh
similarity index 100%
rename from poky/meta/recipes-connectivity/bind/bind-9.16.18/generate-rndc-key.sh
rename to poky/meta/recipes-connectivity/bind/bind-9.16.19/generate-rndc-key.sh
diff --git a/poky/meta/recipes-connectivity/bind/bind-9.16.18/init.d-add-support-for-read-only-rootfs.patch b/poky/meta/recipes-connectivity/bind/bind-9.16.19/init.d-add-support-for-read-only-rootfs.patch
similarity index 100%
rename from poky/meta/recipes-connectivity/bind/bind-9.16.18/init.d-add-support-for-read-only-rootfs.patch
rename to poky/meta/recipes-connectivity/bind/bind-9.16.19/init.d-add-support-for-read-only-rootfs.patch
diff --git a/poky/meta/recipes-connectivity/bind/bind-9.16.18/make-etc-initd-bind-stop-work.patch b/poky/meta/recipes-connectivity/bind/bind-9.16.19/make-etc-initd-bind-stop-work.patch
similarity index 100%
rename from poky/meta/recipes-connectivity/bind/bind-9.16.18/make-etc-initd-bind-stop-work.patch
rename to poky/meta/recipes-connectivity/bind/bind-9.16.19/make-etc-initd-bind-stop-work.patch
diff --git a/poky/meta/recipes-connectivity/bind/bind-9.16.18/named.service b/poky/meta/recipes-connectivity/bind/bind-9.16.19/named.service
similarity index 100%
rename from poky/meta/recipes-connectivity/bind/bind-9.16.18/named.service
rename to poky/meta/recipes-connectivity/bind/bind-9.16.19/named.service
diff --git a/poky/meta/recipes-connectivity/bind/bind_9.16.18.bb b/poky/meta/recipes-connectivity/bind/bind_9.16.19.bb
similarity index 86%
rename from poky/meta/recipes-connectivity/bind/bind_9.16.18.bb
rename to poky/meta/recipes-connectivity/bind/bind_9.16.19.bb
index e7a1c5d..9fd251b 100644
--- a/poky/meta/recipes-connectivity/bind/bind_9.16.18.bb
+++ b/poky/meta/recipes-connectivity/bind/bind_9.16.19.bb
@@ -20,7 +20,7 @@
            file://0001-avoid-start-failure-with-bind-user.patch \
            "
 
-SRC_URI[sha256sum] = "3c6263a4364eb5dce233f9f22b90acfa1ec2488d534f91d21663d0ac25ce5e65"
+SRC_URI[sha256sum] = "20bf727559302c933475904847041916bb6c279680c170babc01a76998e80ad3"
 
 UPSTREAM_CHECK_URI = "https://ftp.isc.org/isc/bind9/"
 # stay at 9.16 follow the ESV versions divisible by 4
@@ -44,7 +44,7 @@
                  --sysconfdir=${sysconfdir}/bind \
                  --with-openssl=${STAGING_DIR_HOST}${prefix} \
                "
-LDFLAGS_append = " -lz"
+LDFLAGS:append = " -lz"
 
 inherit ${@bb.utils.contains('PACKAGECONFIG', 'python3', 'python3native distutils3-base', '', d)}
 
@@ -52,15 +52,15 @@
 REMOVE_LIBTOOL_LA = "0"
 
 USERADD_PACKAGES = "${PN}"
-USERADD_PARAM_${PN} = "--system --home ${localstatedir}/cache/bind --no-create-home \
+USERADD_PARAM:${PN} = "--system --home ${localstatedir}/cache/bind --no-create-home \
                        --user-group bind"
 
 INITSCRIPT_NAME = "bind"
 INITSCRIPT_PARAMS = "defaults"
 
-SYSTEMD_SERVICE_${PN} = "named.service"
+SYSTEMD_SERVICE:${PN} = "named.service"
 
-do_install_append() {
+do_install:append() {
 
 	install -d -o bind "${D}${localstatedir}/cache/bind"
 	install -d "${D}${sysconfdir}/bind"
@@ -94,7 +94,7 @@
     oe_multilib_header isc/platform.h
 }
 
-CONFFILES_${PN} = " \
+CONFFILES:${PN} = " \
 	${sysconfdir}/bind/named.conf \
 	${sysconfdir}/bind/named.conf.local \
 	${sysconfdir}/bind/named.conf.options \
@@ -105,25 +105,25 @@
 	${sysconfdir}/bind/db.root \
 	"
 
-ALTERNATIVE_${PN}-utils = "nslookup"
+ALTERNATIVE:${PN}-utils = "nslookup"
 ALTERNATIVE_LINK_NAME[nslookup] = "${bindir}/nslookup"
 ALTERNATIVE_PRIORITY = "100"
 
 PACKAGE_BEFORE_PN += "${PN}-utils"
-FILES_${PN}-utils = "${bindir}/host ${bindir}/dig ${bindir}/mdig ${bindir}/nslookup ${bindir}/nsupdate"
-FILES_${PN}-dev += "${bindir}/isc-config.h"
-FILES_${PN} += "${sbindir}/generate-rndc-key.sh"
+FILES:${PN}-utils = "${bindir}/host ${bindir}/dig ${bindir}/mdig ${bindir}/nslookup ${bindir}/nsupdate"
+FILES:${PN}-dev += "${bindir}/isc-config.h"
+FILES:${PN} += "${sbindir}/generate-rndc-key.sh"
 
 PACKAGE_BEFORE_PN += "${PN}-libs"
 # special arrangement below due to
 # https://github.com/isc-projects/bind9/commit/0e25af628cd776f98c04fc4cc59048f5448f6c88
 FILES_SOLIBSDEV = "${libdir}/*[!0-9].so ${libdir}/libbind9.so"
-FILES_${PN}-libs = "${libdir}/named/*.so* ${libdir}/*-${PV}.so"
-FILES_${PN}-staticdev += "${libdir}/*.la"
+FILES:${PN}-libs = "${libdir}/named/*.so* ${libdir}/*-${PV}.so"
+FILES:${PN}-staticdev += "${libdir}/*.la"
 
 PACKAGE_BEFORE_PN += "${@bb.utils.contains('PACKAGECONFIG', 'python3', 'python3-bind', '', d)}"
-FILES_python3-bind = "${sbindir}/dnssec-coverage ${sbindir}/dnssec-checkds \
+FILES:python3-bind = "${sbindir}/dnssec-coverage ${sbindir}/dnssec-checkds \
                 ${sbindir}/dnssec-keymgr ${PYTHON_SITEPACKAGES_DIR}"
 
-RDEPENDS_${PN}-dev = ""
-RDEPENDS_python3-bind = "python3-core python3-ply"
+RDEPENDS:${PN}-dev = ""
+RDEPENDS:python3-bind = "python3-core python3-ply"
diff --git a/poky/meta/recipes-connectivity/bluez5/bluez5.inc b/poky/meta/recipes-connectivity/bluez5/bluez5.inc
index f2d9a4f..68f3b58 100644
--- a/poky/meta/recipes-connectivity/bluez5/bluez5.inc
+++ b/poky/meta/recipes-connectivity/bluez5/bluez5.inc
@@ -8,9 +8,9 @@
                     file://src/main.c;beginline=1;endline=24;md5=0ad83ca0dc37ab08af448777c581e7ac"
 DEPENDS = "dbus glib-2.0"
 PROVIDES += "bluez-hcidump"
-RPROVIDES_${PN} += "bluez-hcidump"
+RPROVIDES:${PN} += "bluez-hcidump"
 
-RCONFLICTS_${PN} = "bluez4"
+RCONFLICTS:${PN} = "bluez4"
 
 PACKAGECONFIG ??= "obex-profiles \
     readline \
@@ -79,7 +79,7 @@
     ${@bb.utils.contains('PACKAGECONFIG', 'tools', '${NOINST_TOOLS_BT}', '', d)} \
 "
 
-do_install_append() {
+do_install:append() {
 	install -d ${D}${INIT_D_DIR}
 	install -m 0755 ${WORKDIR}/init ${D}${INIT_D_DIR}/bluetooth
 
@@ -107,25 +107,25 @@
 
 PACKAGES =+ "${PN}-testtools ${PN}-obex ${PN}-noinst-tools"
 
-FILES_${PN} += " \
+FILES:${PN} += " \
     ${libdir}/bluetooth/plugins/*.so \
     ${systemd_unitdir}/ ${datadir}/dbus-1 \
     ${libdir}/cups \
 "
-FILES_${PN}-dev += " \
+FILES:${PN}-dev += " \
     ${libdir}/bluetooth/plugins/*.la \
 "
 
-FILES_${PN}-obex = "${libexecdir}/bluetooth/obexd \
+FILES:${PN}-obex = "${libexecdir}/bluetooth/obexd \
                     ${exec_prefix}/lib/systemd/user/obex.service \
                     ${systemd_system_unitdir}/obex.service \
                     ${sysconfdir}/systemd/system/multi-user.target.wants/obex.service \
                     ${datadir}/dbus-1/services/org.bluez.obex.service \
                     ${sysconfdir}/dbus-1/system.d/obexd.conf \
                    "
-SYSTEMD_SERVICE_${PN}-obex = "obex.service"
+SYSTEMD_SERVICE:${PN}-obex = "obex.service"
 
-FILES_${PN}-testtools = "${libdir}/bluez/test/*"
+FILES:${PN}-testtools = "${libdir}/bluez/test/*"
 
 def get_noinst_tools_paths (d, bb, tools):
     s = list()
@@ -135,14 +135,14 @@
         s.append("%s/%s" % (bindir, f))
     return "\n".join(s)
 
-FILES_${PN}-noinst-tools = "${@get_noinst_tools_paths(d, bb, d.getVar('NOINST_TOOLS'))}"
+FILES:${PN}-noinst-tools = "${@get_noinst_tools_paths(d, bb, d.getVar('NOINST_TOOLS'))}"
 
-RDEPENDS_${PN}-testtools += "python3-core python3-dbus"
-RDEPENDS_${PN}-testtools += "${@bb.utils.contains('GI_DATA_ENABLED', 'True', 'python3-pygobject', '', d)}"
+RDEPENDS:${PN}-testtools += "python3-core python3-dbus"
+RDEPENDS:${PN}-testtools += "${@bb.utils.contains('GI_DATA_ENABLED', 'True', 'python3-pygobject', '', d)}"
 
-SYSTEMD_SERVICE_${PN} = "${@bb.utils.contains('PACKAGECONFIG', 'systemd', 'bluetooth.service', '', d)}"
+SYSTEMD_SERVICE:${PN} = "${@bb.utils.contains('PACKAGECONFIG', 'systemd', 'bluetooth.service', '', d)}"
 INITSCRIPT_PACKAGES = "${PN}"
-INITSCRIPT_NAME_${PN} = "bluetooth"
+INITSCRIPT_NAME:${PN} = "bluetooth"
 
 do_compile_ptest() {
 	oe_runmake buildtests
@@ -153,4 +153,4 @@
 	rm -f ${D}${PTEST_PATH}/unit/*.o
 }
 
-RDEPENDS_${PN}-ptest_append_libc-glibc = " glibc-gconv-utf-16"
+RDEPENDS:${PN}-ptest:append:libc-glibc = " glibc-gconv-utf-16"
diff --git a/poky/meta/recipes-connectivity/connman/connman-conf.bb b/poky/meta/recipes-connectivity/connman/connman-conf.bb
index 85fee09..006f976 100644
--- a/poky/meta/recipes-connectivity/connman/connman-conf.bb
+++ b/poky/meta/recipes-connectivity/connman/connman-conf.bb
@@ -6,7 +6,7 @@
 
 inherit systemd
 
-SRC_URI_append_qemuall = " file://wired.config \
+SRC_URI:append:qemuall = " file://wired.config \
                            file://wired-setup \
                            file://wired-connection.service \
 "
@@ -16,7 +16,7 @@
 
 PACKAGE_ARCH = "${MACHINE_ARCH}"
 
-FILES_${PN} = "${localstatedir}/* ${datadir}/*"
+FILES:${PN} = "${localstatedir}/* ${datadir}/*"
 
 do_install() {
     #Configure Wired network interface in case of qemu* machines
@@ -33,4 +33,4 @@
     fi
 }
 
-SYSTEMD_SERVICE_${PN}_qemuall = "wired-connection.service"
+SYSTEMD_SERVICE:${PN}:qemuall = "wired-connection.service"
diff --git a/poky/meta/recipes-connectivity/connman/connman-gnome_0.7.bb b/poky/meta/recipes-connectivity/connman/connman-gnome_0.7.bb
index af986c4..55c6879 100644
--- a/poky/meta/recipes-connectivity/connman/connman-gnome_0.7.bb
+++ b/poky/meta/recipes-connectivity/connman/connman-gnome_0.7.bb
@@ -23,8 +23,8 @@
 inherit autotools-brokensep gtk-icon-cache pkgconfig features_check
 ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
 
-RDEPENDS_${PN} = "connman"
+RDEPENDS:${PN} = "connman"
 
-do_install_append() {
+do_install:append() {
     install -m 0644 ${WORKDIR}/images/* ${D}/usr/share/icons/hicolor/22x22/apps/
 }
diff --git a/poky/meta/recipes-connectivity/connman/connman.inc b/poky/meta/recipes-connectivity/connman/connman.inc
index 776bbfb..856bb9e 100644
--- a/poky/meta/recipes-connectivity/connman/connman.inc
+++ b/poky/meta/recipes-connectivity/connman/connman.inc
@@ -34,7 +34,7 @@
 
 # If you want ConnMan to support VPN, add following statement into
 # local.conf or distro config
-# PACKAGECONFIG_append_pn-connman = " openvpn vpnc l2tp pptp"
+# PACKAGECONFIG:append:pn-connman = " openvpn vpnc l2tp pptp"
 
 PACKAGECONFIG[systemd] = "--with-systemdunitdir=${systemd_unitdir}/system/ --with-tmpfilesdir=${sysconfdir}/tmpfiles.d/,--with-systemdunitdir='' --with-tmpfilesdir=''"
 PACKAGECONFIG[wifi] = "--enable-wifi, --disable-wifi, wpa-supplicant, wpa-supplicant"
@@ -64,16 +64,16 @@
     d.setVar('SYSTEMD_PACKAGES', systemd_packages)
 }
 
-SYSTEMD_SERVICE_${PN} = "connman.service"
-SYSTEMD_SERVICE_${PN}-vpn = "connman-vpn.service"
-SYSTEMD_SERVICE_${PN}-wait-online = "connman-wait-online.service"
+SYSTEMD_SERVICE:${PN} = "connman.service"
+SYSTEMD_SERVICE:${PN}-vpn = "connman-vpn.service"
+SYSTEMD_SERVICE:${PN}-wait-online = "connman-wait-online.service"
 
 ALTERNATIVE_PRIORITY = "100"
-ALTERNATIVE_${PN} = "${@bb.utils.contains('DISTRO_FEATURES','systemd','resolv-conf','',d)}"
+ALTERNATIVE:${PN} = "${@bb.utils.contains('DISTRO_FEATURES','systemd','resolv-conf','',d)}"
 ALTERNATIVE_TARGET[resolv-conf] = "${@bb.utils.contains('DISTRO_FEATURES','systemd','${sysconfdir}/resolv-conf.connman','',d)}"
 ALTERNATIVE_LINK_NAME[resolv-conf] = "${@bb.utils.contains('DISTRO_FEATURES','systemd','${sysconfdir}/resolv.conf','',d)}"
 
-do_install_append() {
+do_install:append() {
 	if ${@bb.utils.contains('DISTRO_FEATURES','sysvinit','true','false',d)}; then
 		install -d ${D}${sysconfdir}/init.d
 		install -m 0755 ${WORKDIR}/connman ${D}${sysconfdir}/init.d/connman
@@ -100,7 +100,7 @@
 }
 
 # These used to be plugins, but now they are core
-RPROVIDES_${PN} = "\
+RPROVIDES:${PN} = "\
 	connman-plugin-loopback \
 	connman-plugin-ethernet \
 	${@bb.utils.contains('PACKAGECONFIG', 'bluetooth','connman-plugin-bluetooth', '', d)} \
@@ -108,7 +108,7 @@
 	${@bb.utils.contains('PACKAGECONFIG', '3g','connman-plugin-ofono', '', d)} \
 	"
 
-RDEPENDS_${PN} = "\
+RDEPENDS:${PN} = "\
 	dbus \
 	"
 
@@ -119,11 +119,11 @@
     if plugintype in depmap:
         rdepends = map(lambda x: multilib_prefix + x, \
                        depmap[plugintype].split())
-        d.setVar("RDEPENDS_%s" % pkg, " ".join(rdepends))
+        d.setVar("RDEPENDS:%s" % pkg, " ".join(rdepends))
     if add_insane_skip:
-        d.appendVar("INSANE_SKIP_%s" % pkg, "dev-so")
+        d.appendVar("INSANE_SKIP:%s" % pkg, "dev-so")
 
-python populate_packages_prepend() {
+python populate_packages:prepend() {
     depmap = dict(pppd="ppp")
     multilib_prefix = (d.getVar("MLPREFIX") or "")
 
@@ -144,72 +144,72 @@
 
 PACKAGES =+ "${PN}-tools ${PN}-tests ${PN}-client"
 
-FILES_${PN}-tools = "${bindir}/wispr"
-RDEPENDS_${PN}-tools ="${PN}"
+FILES:${PN}-tools = "${bindir}/wispr"
+RDEPENDS:${PN}-tools ="${PN}"
 
-FILES_${PN}-tests = "${bindir}/*-test"
+FILES:${PN}-tests = "${bindir}/*-test"
 
-FILES_${PN}-client = "${bindir}/connmanctl"
-RDEPENDS_${PN}-client ="${PN}"
+FILES:${PN}-client = "${bindir}/connmanctl"
+RDEPENDS:${PN}-client ="${PN}"
 
-FILES_${PN} = "${bindir}/* ${sbindir}/* ${libexecdir}/* ${libdir}/lib*.so.* \
+FILES:${PN} = "${bindir}/* ${sbindir}/* ${libexecdir}/* ${libdir}/lib*.so.* \
             ${libdir}/connman/plugins \
             ${sysconfdir} ${sharedstatedir} ${localstatedir} ${datadir} \
             ${base_bindir}/* ${base_sbindir}/* ${base_libdir}/*.so* ${datadir}/${PN} \
             ${datadir}/dbus-1/system-services/* \
             ${sysconfdir}/tmpfiles.d/connman_resolvconf.conf"
 
-FILES_${PN}-dev += "${libdir}/connman/*/*.la"
+FILES:${PN}-dev += "${libdir}/connman/*/*.la"
 
 PACKAGES =+ "${PN}-vpn ${PN}-wait-online"
 
-SUMMARY_${PN}-vpn = "A daemon for managing VPN connections within embedded devices"
-DESCRIPTION_${PN}-vpn = "The ConnMan VPN provides a daemon for \
+SUMMARY:${PN}-vpn = "A daemon for managing VPN connections within embedded devices"
+DESCRIPTION:${PN}-vpn = "The ConnMan VPN provides a daemon for \
 managing VPN connections within embedded devices running the Linux \
 operating system.  The connman-vpnd handles all the VPN connections \
 and starts/stops VPN client processes when necessary. The connman-vpnd \
 provides a DBus API for managing VPN connections. All the different \
 VPN technogies are implemented using plug-ins."
-FILES_${PN}-vpn += "${sbindir}/connman-vpnd \
+FILES:${PN}-vpn += "${sbindir}/connman-vpnd \
                     ${sysconfdir}/dbus-1/system.d/connman-vpn-dbus.conf \
                     ${datadir}/dbus-1/system-services/net.connman.vpn.service \
                     ${systemd_unitdir}/system/connman-vpn.service"
 
-SUMMARY_${PN}-wait-online = "A program that will return once ConnMan has connected to a network"
-DESCRIPTION_${PN}-wait-online = "A service that can be enabled so that \
+SUMMARY:${PN}-wait-online = "A program that will return once ConnMan has connected to a network"
+DESCRIPTION:${PN}-wait-online = "A service that can be enabled so that \
 the system waits until a network connection is established."
-FILES_${PN}-wait-online += "${sbindir}/connmand-wait-online \
+FILES:${PN}-wait-online += "${sbindir}/connmand-wait-online \
                             ${systemd_unitdir}/system/connman-wait-online.service"
 
-SUMMARY_${PN}-plugin-vpn-openvpn = "An OpenVPN plugin for ConnMan VPN"
-DESCRIPTION_${PN}-plugin-vpn-openvpn = "The ConnMan OpenVPN plugin uses openvpn client \
+SUMMARY:${PN}-plugin-vpn-openvpn = "An OpenVPN plugin for ConnMan VPN"
+DESCRIPTION:${PN}-plugin-vpn-openvpn = "The ConnMan OpenVPN plugin uses openvpn client \
 to create a VPN connection to OpenVPN server."
-FILES_${PN}-plugin-vpn-openvpn += "${libdir}/connman/scripts/openvpn-script \
+FILES:${PN}-plugin-vpn-openvpn += "${libdir}/connman/scripts/openvpn-script \
                                    ${libdir}/connman/plugins-vpn/openvpn.so"
-RDEPENDS_${PN}-plugin-vpn-openvpn += "${PN}-vpn"
-RRECOMMENDS_${PN} += "${@bb.utils.contains('PACKAGECONFIG','openvpn','${PN}-plugin-vpn-openvpn', '', d)}"
+RDEPENDS:${PN}-plugin-vpn-openvpn += "${PN}-vpn"
+RRECOMMENDS:${PN} += "${@bb.utils.contains('PACKAGECONFIG','openvpn','${PN}-plugin-vpn-openvpn', '', d)}"
 
-SUMMARY_${PN}-plugin-vpn-vpnc = "A vpnc plugin for ConnMan VPN"
-DESCRIPTION_${PN}-plugin-vpn-vpnc = "The ConnMan vpnc plugin uses vpnc client \
+SUMMARY:${PN}-plugin-vpn-vpnc = "A vpnc plugin for ConnMan VPN"
+DESCRIPTION:${PN}-plugin-vpn-vpnc = "The ConnMan vpnc plugin uses vpnc client \
 to create a VPN connection to Cisco3000 VPN Concentrator."
-FILES_${PN}-plugin-vpn-vpnc += "${libdir}/connman/scripts/openconnect-script \
+FILES:${PN}-plugin-vpn-vpnc += "${libdir}/connman/scripts/openconnect-script \
                                 ${libdir}/connman/plugins-vpn/vpnc.so \
                                 ${libdir}/connman/scripts/vpn-script"
-RDEPENDS_${PN}-plugin-vpn-vpnc += "${PN}-vpn"
-RRECOMMENDS_${PN} += "${@bb.utils.contains('PACKAGECONFIG','vpnc','${PN}-plugin-vpn-vpnc', '', d)}"
+RDEPENDS:${PN}-plugin-vpn-vpnc += "${PN}-vpn"
+RRECOMMENDS:${PN} += "${@bb.utils.contains('PACKAGECONFIG','vpnc','${PN}-plugin-vpn-vpnc', '', d)}"
 
-SUMMARY_${PN}-plugin-vpn-l2tp = "A L2TP plugin for ConnMan VPN"
-DESCRIPTION_${PN}-plugin-vpn-l2tp = "The ConnMan L2TP plugin uses xl2tpd daemon \
+SUMMARY:${PN}-plugin-vpn-l2tp = "A L2TP plugin for ConnMan VPN"
+DESCRIPTION:${PN}-plugin-vpn-l2tp = "The ConnMan L2TP plugin uses xl2tpd daemon \
 to create a VPN connection to L2TP server."
-FILES_${PN}-plugin-vpn-l2tp += "${libdir}/connman/scripts/libppp-plugin.so* \
+FILES:${PN}-plugin-vpn-l2tp += "${libdir}/connman/scripts/libppp-plugin.so* \
                                 ${libdir}/connman/plugins-vpn/l2tp.so"
-RDEPENDS_${PN}-plugin-vpn-l2tp += "${PN}-vpn"
-RRECOMMENDS_${PN} += "${@bb.utils.contains('PACKAGECONFIG','l2tp','${PN}-plugin-vpn-l2tp', '', d)}"
+RDEPENDS:${PN}-plugin-vpn-l2tp += "${PN}-vpn"
+RRECOMMENDS:${PN} += "${@bb.utils.contains('PACKAGECONFIG','l2tp','${PN}-plugin-vpn-l2tp', '', d)}"
 
-SUMMARY_${PN}-plugin-vpn-pptp = "A PPTP plugin for ConnMan VPN"
-DESCRIPTION_${PN}-plugin-vpn-pptp = "The ConnMan PPTP plugin uses pptp-linux client \
+SUMMARY:${PN}-plugin-vpn-pptp = "A PPTP plugin for ConnMan VPN"
+DESCRIPTION:${PN}-plugin-vpn-pptp = "The ConnMan PPTP plugin uses pptp-linux client \
 to create a VPN connection to PPTP server."
-FILES_${PN}-plugin-vpn-pptp += "${libdir}/connman/scripts/libppp-plugin.so* \
+FILES:${PN}-plugin-vpn-pptp += "${libdir}/connman/scripts/libppp-plugin.so* \
                                 ${libdir}/connman/plugins-vpn/pptp.so"
-RDEPENDS_${PN}-plugin-vpn-pptp += "${PN}-vpn"
-RRECOMMENDS_${PN} += "${@bb.utils.contains('PACKAGECONFIG','pptp','${PN}-plugin-vpn-pptp', '', d)}"
+RDEPENDS:${PN}-plugin-vpn-pptp += "${PN}-vpn"
+RRECOMMENDS:${PN} += "${@bb.utils.contains('PACKAGECONFIG','pptp','${PN}-plugin-vpn-pptp', '', d)}"
diff --git a/poky/meta/recipes-connectivity/connman/connman_1.40.bb b/poky/meta/recipes-connectivity/connman/connman_1.40.bb
index 15d105e..edb23a1 100644
--- a/poky/meta/recipes-connectivity/connman/connman_1.40.bb
+++ b/poky/meta/recipes-connectivity/connman/connman_1.40.bb
@@ -7,9 +7,9 @@
            file://no-version-scripts.patch \
            "
 
-SRC_URI_append_libc-musl = " file://0002-resolve-musl-does-not-implement-res_ninit.patch"
+SRC_URI:append:libc-musl = " file://0002-resolve-musl-does-not-implement-res_ninit.patch"
 
 SRC_URI[sha256sum] = "1a57ae7ce234aa3a1744aac3be5c2121d98dce999440ef8ab9cc4edfd5edcb12"
 
-RRECOMMENDS_${PN} = "connman-conf"
-RCONFLICTS_${PN} = "networkmanager"
+RRECOMMENDS:${PN} = "connman-conf"
+RCONFLICTS:${PN} = "networkmanager"
diff --git a/poky/meta/recipes-connectivity/dhcpcd/dhcpcd_9.4.0.bb b/poky/meta/recipes-connectivity/dhcpcd/dhcpcd_9.4.0.bb
index 5be480e..4e9a367 100644
--- a/poky/meta/recipes-connectivity/dhcpcd/dhcpcd_9.4.0.bb
+++ b/poky/meta/recipes-connectivity/dhcpcd/dhcpcd_9.4.0.bb
@@ -22,7 +22,7 @@
 
 inherit pkgconfig autotools-brokensep systemd useradd
 
-SYSTEMD_SERVICE_${PN} = "dhcpcd.service"
+SYSTEMD_SERVICE:${PN} = "dhcpcd.service"
 
 PACKAGECONFIG ?= "udev ${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}"
 
@@ -44,9 +44,9 @@
                "
 
 USERADD_PACKAGES = "${PN}"
-USERADD_PARAM_${PN} = "--system -d ${localstatedir}/lib/${BPN} -M -s /bin/false -U dhcpcd"
+USERADD_PARAM:${PN} = "--system -d ${localstatedir}/lib/${BPN} -M -s /bin/false -U dhcpcd"
 
-do_install_append () {
+do_install:append () {
     # install systemd unit files
     install -d ${D}${systemd_unitdir}/system
     install -m 0644 ${WORKDIR}/dhcpcd*.service ${D}${systemd_unitdir}/system
@@ -55,4 +55,4 @@
     chown dhcpcd:dhcpcd ${D}${localstatedir}/lib/${BPN}
 }
 
-FILES_${PN}-dbg += "${libdir}/dhcpcd/dev/.debug"
+FILES:${PN}-dbg += "${libdir}/dhcpcd/dev/.debug"
diff --git a/poky/meta/recipes-connectivity/inetutils/inetutils_2.0.bb b/poky/meta/recipes-connectivity/inetutils/inetutils_2.0.bb
index a4d05b0..4b25f9c 100644
--- a/poky/meta/recipes-connectivity/inetutils/inetutils_2.0.bb
+++ b/poky/meta/recipes-connectivity/inetutils/inetutils_2.0.bb
@@ -47,10 +47,10 @@
 "
 
 # These are horrible for security, disable them
-EXTRA_OECONF_append = " --disable-rsh --disable-rshd --disable-rcp \
+EXTRA_OECONF:append = " --disable-rsh --disable-rshd --disable-rcp \
         --disable-rlogin --disable-rlogind --disable-rexec --disable-rexecd"
 
-do_configure_prepend () {
+do_configure:prepend () {
     export HELP2MAN='true'
     cp ${STAGING_DATADIR_NATIVE}/gettext/config.rpath ${S}/build-aux/config.rpath
     install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.guess ${S}
@@ -58,7 +58,7 @@
     rm -f ${S}/glob/configure*
 }
 
-do_install_append () {
+do_install:append () {
     install -m 0755 -d ${D}${base_sbindir}
     install -m 0755 -d ${D}${sbindir}
     install -m 0755 -d ${D}${sysconfdir}/xinetd.d
@@ -114,34 +114,34 @@
 NOAUTOPACKAGEDEBUG = "1"
 
 ALTERNATIVE_PRIORITY = "79"
-ALTERNATIVE_${PN} = "whois dnsdomainname"
+ALTERNATIVE:${PN} = "whois dnsdomainname"
 ALTERNATIVE_LINK_NAME[uucpd]  = "${sbindir}/in.uucpd"
 ALTERNATIVE_LINK_NAME[dnsdomainname]  = "${base_bindir}/dnsdomainname"
 
 ALTERNATIVE_PRIORITY_${PN}-logger = "60"
-ALTERNATIVE_${PN}-logger = "logger"
-ALTERNATIVE_${PN}-syslogd = "syslogd"
+ALTERNATIVE:${PN}-logger = "logger"
+ALTERNATIVE:${PN}-syslogd = "syslogd"
 ALTERNATIVE_LINK_NAME[syslogd]  = "${base_sbindir}/syslogd"
 
-ALTERNATIVE_${PN}-ftp = "ftp"
-ALTERNATIVE_${PN}-ftpd = "ftpd"
-ALTERNATIVE_${PN}-tftp = "tftp"
-ALTERNATIVE_${PN}-tftpd = "tftpd"
+ALTERNATIVE:${PN}-ftp = "ftp"
+ALTERNATIVE:${PN}-ftpd = "ftpd"
+ALTERNATIVE:${PN}-tftp = "tftp"
+ALTERNATIVE:${PN}-tftpd = "tftpd"
 ALTERNATIVE_LINK_NAME[tftpd] = "${sbindir}/tftpd"
 ALTERNATIVE_TARGET[tftpd]  = "${sbindir}/in.tftpd"
 
-ALTERNATIVE_${PN}-telnet = "telnet"
-ALTERNATIVE_${PN}-telnetd = "telnetd"
+ALTERNATIVE:${PN}-telnet = "telnet"
+ALTERNATIVE:${PN}-telnetd = "telnetd"
 ALTERNATIVE_LINK_NAME[telnetd] = "${sbindir}/telnetd"
 ALTERNATIVE_TARGET[telnetd] = "${sbindir}/in.telnetd"
 
-ALTERNATIVE_${PN}-inetd= "inetd"
-ALTERNATIVE_${PN}-traceroute = "traceroute"
+ALTERNATIVE:${PN}-inetd= "inetd"
+ALTERNATIVE:${PN}-traceroute = "traceroute"
 
-ALTERNATIVE_${PN}-hostname = "hostname"
+ALTERNATIVE:${PN}-hostname = "hostname"
 ALTERNATIVE_LINK_NAME[hostname]  = "${base_bindir}/hostname"
 
-ALTERNATIVE_${PN}-doc = "hostname.1 dnsdomainname.1 logger.1 syslogd.8 \
+ALTERNATIVE:${PN}-doc = "hostname.1 dnsdomainname.1 logger.1 syslogd.8 \
                          tftpd.8 tftp.1 telnetd.8"
 ALTERNATIVE_LINK_NAME[hostname.1] = "${mandir}/man1/hostname.1"
 ALTERNATIVE_LINK_NAME[dnsdomainname.1] = "${mandir}/man1/dnsdomainname.1"
@@ -151,62 +151,62 @@
 ALTERNATIVE_LINK_NAME[tftpd.8] = "${mandir}/man8/tftpd.8"
 ALTERNATIVE_LINK_NAME[tftp.1] = "${mandir}/man1/tftp.1"
 
-ALTERNATIVE_${PN}-ifconfig = "ifconfig"
+ALTERNATIVE:${PN}-ifconfig = "ifconfig"
 ALTERNATIVE_LINK_NAME[ifconfig]  = "${base_sbindir}/ifconfig"
 
-ALTERNATIVE_${PN}-ping = "ping"
+ALTERNATIVE:${PN}-ping = "ping"
 ALTERNATIVE_LINK_NAME[ping]   = "${base_bindir}/ping"
 
-ALTERNATIVE_${PN}-ping6 = "${@bb.utils.filter('PACKAGECONFIG', 'ping6', d)}"
+ALTERNATIVE:${PN}-ping6 = "${@bb.utils.filter('PACKAGECONFIG', 'ping6', d)}"
 ALTERNATIVE_LINK_NAME[ping6]  = "${base_bindir}/ping6"
 
 
-FILES_${PN}-dbg += "${base_bindir}/.debug ${base_sbindir}/.debug ${bindir}/.debug ${sbindir}/.debug"
-FILES_${PN}-ping = "${base_bindir}/ping.${BPN}"
-FILES_${PN}-ping6 = "${base_bindir}/ping6.${BPN}"
-FILES_${PN}-hostname = "${base_bindir}/hostname.${BPN}"
-FILES_${PN}-ifconfig = "${base_sbindir}/ifconfig.${BPN}"
-FILES_${PN}-traceroute = "${bindir}/traceroute.${BPN}"
-FILES_${PN}-logger = "${bindir}/logger.${BPN}"
+FILES:${PN}-dbg += "${base_bindir}/.debug ${base_sbindir}/.debug ${bindir}/.debug ${sbindir}/.debug"
+FILES:${PN}-ping = "${base_bindir}/ping.${BPN}"
+FILES:${PN}-ping6 = "${base_bindir}/ping6.${BPN}"
+FILES:${PN}-hostname = "${base_bindir}/hostname.${BPN}"
+FILES:${PN}-ifconfig = "${base_sbindir}/ifconfig.${BPN}"
+FILES:${PN}-traceroute = "${bindir}/traceroute.${BPN}"
+FILES:${PN}-logger = "${bindir}/logger.${BPN}"
 
-FILES_${PN}-syslogd = "${base_sbindir}/syslogd.${BPN}"
-RCONFLICTS_${PN}-syslogd = "rsyslog busybox-syslog sysklogd syslog-ng"
+FILES:${PN}-syslogd = "${base_sbindir}/syslogd.${BPN}"
+RCONFLICTS:${PN}-syslogd = "rsyslog busybox-syslog sysklogd syslog-ng"
 
-FILES_${PN}-ftp = "${bindir}/ftp.${BPN}"
+FILES:${PN}-ftp = "${bindir}/ftp.${BPN}"
 
-FILES_${PN}-tftp = "${bindir}/tftp.${BPN}"
-FILES_${PN}-telnet = "${bindir}/telnet.${BPN}"
+FILES:${PN}-tftp = "${bindir}/tftp.${BPN}"
+FILES:${PN}-telnet = "${bindir}/telnet.${BPN}"
 
 # We make us of RCONFLICTS / RPROVIDES here rather than using the normal
 # alternatives method as this leads to packaging QA issues when using
 # musl as that library does not provide what these applications need to
 # build.
-FILES_${PN}-rsh = "${bindir}/rsh ${bindir}/rlogin ${bindir}/rexec ${bindir}/rcp"
-RCONFLICTS_${PN}-rsh += "netkit-rsh-client"
-RPROVIDES_${PN}-rsh = "rsh"
+FILES:${PN}-rsh = "${bindir}/rsh ${bindir}/rlogin ${bindir}/rexec ${bindir}/rcp"
+RCONFLICTS:${PN}-rsh += "netkit-rsh-client"
+RPROVIDES:${PN}-rsh = "rsh"
 
-FILES_${PN}-rshd = "${sbindir}/in.rshd ${sbindir}/in.rlogind ${sbindir}/in.rexecd \
+FILES:${PN}-rshd = "${sbindir}/in.rshd ${sbindir}/in.rlogind ${sbindir}/in.rexecd \
                     ${sysconfdir}/xinetd.d/rsh ${sysconfdir}/xinetd.d/rlogin ${sysconfdir}/xinetd.d/rexec"
-FILES_${PN}-rshd-dbg = "${sbindir}/.debug/in.rshd ${sbindir}/.debug/in.rlogind ${sbindir}/.debug/in.rexecd"
-RDEPENDS_${PN}-rshd += "xinetd tcp-wrappers"
-RCONFLICTS_${PN}-rshd += "netkit-rshd-server"
-RPROVIDES_${PN}-rshd = "rshd"
+FILES:${PN}-rshd-dbg = "${sbindir}/.debug/in.rshd ${sbindir}/.debug/in.rlogind ${sbindir}/.debug/in.rexecd"
+RDEPENDS:${PN}-rshd += "xinetd tcp-wrappers"
+RCONFLICTS:${PN}-rshd += "netkit-rshd-server"
+RPROVIDES:${PN}-rshd = "rshd"
 
-FILES_${PN}-ftpd = "${bindir}/ftpd.${BPN}"
-FILES_${PN}-ftpd-dbg = "${bindir}/.debug/ftpd.${BPN}"
-RDEPENDS_${PN}-ftpd += "xinetd"
+FILES:${PN}-ftpd = "${bindir}/ftpd.${BPN}"
+FILES:${PN}-ftpd-dbg = "${bindir}/.debug/ftpd.${BPN}"
+RDEPENDS:${PN}-ftpd += "xinetd"
 
-FILES_${PN}-tftpd = "${sbindir}/in.tftpd ${sysconfdir}/xinetd.d/tftpd"
-FILES_${PN}-tftpd-dbg = "${sbindir}/.debug/in.tftpd"
-RCONFLICTS_${PN}-tftpd += "netkit-tftpd"
-RDEPENDS_${PN}-tftpd += "xinetd"
+FILES:${PN}-tftpd = "${sbindir}/in.tftpd ${sysconfdir}/xinetd.d/tftpd"
+FILES:${PN}-tftpd-dbg = "${sbindir}/.debug/in.tftpd"
+RCONFLICTS:${PN}-tftpd += "netkit-tftpd"
+RDEPENDS:${PN}-tftpd += "xinetd"
 
-FILES_${PN}-telnetd = "${sbindir}/in.telnetd ${sysconfdir}/xinetd.d/telnet"
-FILES_${PN}-telnetd-dbg = "${sbindir}/.debug/in.telnetd"
-RCONFLICTS_${PN}-telnetd += "netkit-telnet"
-RPROVIDES_${PN}-telnetd = "telnetd"
-RDEPENDS_${PN}-telnetd += "xinetd"
+FILES:${PN}-telnetd = "${sbindir}/in.telnetd ${sysconfdir}/xinetd.d/telnet"
+FILES:${PN}-telnetd-dbg = "${sbindir}/.debug/in.telnetd"
+RCONFLICTS:${PN}-telnetd += "netkit-telnet"
+RPROVIDES:${PN}-telnetd = "telnetd"
+RDEPENDS:${PN}-telnetd += "xinetd"
 
-FILES_${PN}-inetd = "${bindir}/inetd.${BPN}"
+FILES:${PN}-inetd = "${bindir}/inetd.${BPN}"
 
-RDEPENDS_${PN} = "xinetd"
+RDEPENDS:${PN} = "xinetd"
diff --git a/poky/meta/recipes-connectivity/iproute2/iproute2.inc b/poky/meta/recipes-connectivity/iproute2/iproute2.inc
index 6c8eea6..3f070d6 100644
--- a/poky/meta/recipes-connectivity/iproute2/iproute2.inc
+++ b/poky/meta/recipes-connectivity/iproute2/iproute2.inc
@@ -32,7 +32,7 @@
     LIBDIR='${libdir}' \
 "
 
-do_configure_append () {
+do_configure:append () {
     sh configure ${STAGING_INCDIR}
     # Explicitly disable ATM support
     sed -i -e '/TC_CONFIG_ATM/d' config.mk
@@ -47,7 +47,7 @@
 }
 
 # The .so files in iproute2-tc are modules, not traditional libraries
-INSANE_SKIP_${PN}-tc = "dev-so"
+INSANE_SKIP:${PN}-tc = "dev-so"
 
 IPROUTE2_PACKAGES =+ "\
     ${PN}-devlink \
@@ -64,28 +64,28 @@
 "
 
 PACKAGE_BEFORE_PN = "${IPROUTE2_PACKAGES}"
-RDEPENDS_${PN} += "${PN}-ip"
+RDEPENDS:${PN} += "${PN}-ip"
 
-FILES_${PN}-tc = "${base_sbindir}/tc* \
+FILES:${PN}-tc = "${base_sbindir}/tc* \
                   ${libdir}/tc/*.so"
-FILES_${PN}-lnstat = "${base_sbindir}/lnstat \
+FILES:${PN}-lnstat = "${base_sbindir}/lnstat \
                       ${base_sbindir}/ctstat \
                       ${base_sbindir}/rtstat"
-FILES_${PN}-ifstat = "${base_sbindir}/ifstat"
-FILES_${PN}-ip = "${base_sbindir}/ip.${PN} ${sysconfdir}/iproute2"
-FILES_${PN}-genl = "${base_sbindir}/genl"
-FILES_${PN}-rtacct = "${base_sbindir}/rtacct"
-FILES_${PN}-nstat = "${base_sbindir}/nstat"
-FILES_${PN}-ss = "${base_sbindir}/ss"
-FILES_${PN}-tipc = "${base_sbindir}/tipc"
-FILES_${PN}-devlink = "${base_sbindir}/devlink"
-FILES_${PN}-rdma = "${base_sbindir}/rdma"
+FILES:${PN}-ifstat = "${base_sbindir}/ifstat"
+FILES:${PN}-ip = "${base_sbindir}/ip.${PN} ${sysconfdir}/iproute2"
+FILES:${PN}-genl = "${base_sbindir}/genl"
+FILES:${PN}-rtacct = "${base_sbindir}/rtacct"
+FILES:${PN}-nstat = "${base_sbindir}/nstat"
+FILES:${PN}-ss = "${base_sbindir}/ss"
+FILES:${PN}-tipc = "${base_sbindir}/tipc"
+FILES:${PN}-devlink = "${base_sbindir}/devlink"
+FILES:${PN}-rdma = "${base_sbindir}/rdma"
 
-ALTERNATIVE_${PN}-ip = "ip"
+ALTERNATIVE:${PN}-ip = "ip"
 ALTERNATIVE_TARGET[ip] = "${base_sbindir}/ip.${BPN}"
 ALTERNATIVE_LINK_NAME[ip] = "${base_sbindir}/ip"
 ALTERNATIVE_PRIORITY = "100"
 
-ALTERNATIVE_${PN}-tc = "tc"
+ALTERNATIVE:${PN}-tc = "tc"
 ALTERNATIVE_LINK_NAME[tc] = "${base_sbindir}/tc"
 ALTERNATIVE_PRIORITY_${PN}-tc = "100"
diff --git a/poky/meta/recipes-connectivity/iproute2/iproute2_5.13.0.bb b/poky/meta/recipes-connectivity/iproute2/iproute2_5.13.0.bb
index b117637..44575bd 100644
--- a/poky/meta/recipes-connectivity/iproute2/iproute2_5.13.0.bb
+++ b/poky/meta/recipes-connectivity/iproute2/iproute2_5.13.0.bb
@@ -8,4 +8,4 @@
 
 # CFLAGS are computed in Makefile and reference CCOPTS
 #
-EXTRA_OEMAKE_append = " CCOPTS='${CFLAGS}'"
+EXTRA_OEMAKE:append = " CCOPTS='${CFLAGS}'"
diff --git a/poky/meta/recipes-connectivity/kea/kea_1.8.2.bb b/poky/meta/recipes-connectivity/kea/kea_1.8.2.bb
index fe10d90..f1bbbc4 100644
--- a/poky/meta/recipes-connectivity/kea/kea_1.8.2.bb
+++ b/poky/meta/recipes-connectivity/kea/kea_1.8.2.bb
@@ -28,24 +28,24 @@
 INITSCRIPT_NAME = "kea-dhcp4-server"
 INITSCRIPT_PARAMS = "defaults 30"
 
-SYSTEMD_SERVICE_${PN} = "kea-dhcp4.service kea-dhcp6.service kea-dhcp-ddns.service"
+SYSTEMD_SERVICE:${PN} = "kea-dhcp4.service kea-dhcp6.service kea-dhcp-ddns.service"
 SYSTEMD_AUTO_ENABLE = "disable"
 
-DEBUG_OPTIMIZATION_remove_mips = " -Og"
-DEBUG_OPTIMIZATION_append_mips = " -O"
-BUILD_OPTIMIZATION_remove_mips = " -Og"
-BUILD_OPTIMIZATION_append_mips = " -O"
+DEBUG_OPTIMIZATION:remove:mips = " -Og"
+DEBUG_OPTIMIZATION:append:mips = " -O"
+BUILD_OPTIMIZATION:remove:mips = " -Og"
+BUILD_OPTIMIZATION:append:mips = " -O"
 
-DEBUG_OPTIMIZATION_remove_mipsel = " -Og"
-DEBUG_OPTIMIZATION_append_mipsel = " -O"
-BUILD_OPTIMIZATION_remove_mipsel = " -Og"
-BUILD_OPTIMIZATION_append_mipsel = " -O"
+DEBUG_OPTIMIZATION:remove:mipsel = " -Og"
+DEBUG_OPTIMIZATION:append:mipsel = " -O"
+BUILD_OPTIMIZATION:remove:mipsel = " -Og"
+BUILD_OPTIMIZATION:append:mipsel = " -O"
 
 EXTRA_OECONF = "--with-boost-libs=-lboost_system \
                 --with-log4cplus=${STAGING_DIR_TARGET}${prefix} \
                 --with-openssl=${STAGING_DIR_TARGET}${prefix}"
 
-do_configure_prepend() {
+do_configure:prepend() {
     # replace abs_top_builddir to avoid introducing the build path
     # don't expand the abs_top_builddir on the target as the abs_top_builddir is meanlingless on the target
     find ${S} -type f -name *.sh.in | xargs sed -i  "s:@abs_top_builddir@:@abs_top_builddir_placeholder@:g"
@@ -53,11 +53,11 @@
 }
 
 # patch out build host paths for reproducibility
-do_compile_prepend_class-target() {
+do_compile:prepend:class-target() {
         sed -i -e "s,${WORKDIR},,g" ${B}/config.report
 }
 
-do_install_append() {
+do_install:append() {
     install -d ${D}${sysconfdir}/init.d
     install -d ${D}${systemd_system_unitdir}
 
@@ -68,13 +68,13 @@
            ${D}${systemd_system_unitdir}/kea-dhcp*service ${D}${sbindir}/keactrl
 }
 
-do_install_append() {
+do_install:append() {
     rm -rf "${D}${localstatedir}"
 }
 
-CONFFILES_${PN} = "${sysconfdir}/kea/keactrl.conf"
+CONFFILES:${PN} = "${sysconfdir}/kea/keactrl.conf"
 
-FILES_${PN}-staticdev += "${libdir}/kea/hooks/*.a ${libdir}/hooks/*.a"
-FILES_${PN} += "${libdir}/hooks/*.so"
+FILES:${PN}-staticdev += "${libdir}/kea/hooks/*.a ${libdir}/hooks/*.a"
+FILES:${PN} += "${libdir}/hooks/*.so"
 
 PARALLEL_MAKEINST = ""
diff --git a/poky/meta/recipes-connectivity/libnss-mdns/libnss-mdns_0.15.1.bb b/poky/meta/recipes-connectivity/libnss-mdns/libnss-mdns_0.15.1.bb
index f3b6417..e455a60 100644
--- a/poky/meta/recipes-connectivity/libnss-mdns/libnss-mdns_0.15.1.bb
+++ b/poky/meta/recipes-connectivity/libnss-mdns/libnss-mdns_0.15.1.bb
@@ -17,13 +17,13 @@
 
 inherit autotools pkgconfig
 
-COMPATIBLE_HOST_libc-musl = 'null'
+COMPATIBLE_HOST:libc-musl = 'null'
 
 EXTRA_OECONF = "--libdir=${base_libdir}"
 
-RDEPENDS_${PN} = "avahi-daemon"
+RDEPENDS:${PN} = "avahi-daemon"
 
-pkg_postinst_${PN} () {
+pkg_postinst:${PN} () {
 	sed '
 		/^hosts:/ !b
 		/\<mdns\(4\|6\)\?\(_minimal\)\?\>/ b
@@ -31,7 +31,7 @@
 		' -i $D${sysconfdir}/nsswitch.conf
 }
 
-pkg_prerm_${PN} () {
+pkg_prerm:${PN} () {
 	sed '
 		/^hosts:/ !b
 		s/[[:blank:]]\+mdns\(4\|6\)\?\(_minimal\( \[NOTFOUND=return\]\)\?\)\?//g
diff --git a/poky/meta/recipes-connectivity/libpcap/libpcap_1.10.1.bb b/poky/meta/recipes-connectivity/libpcap/libpcap_1.10.1.bb
index f528595..9a8c46e 100644
--- a/poky/meta/recipes-connectivity/libpcap/libpcap_1.10.1.bb
+++ b/poky/meta/recipes-connectivity/libpcap/libpcap_1.10.1.bb
@@ -34,7 +34,7 @@
 PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6,"
 PACKAGECONFIG[libnl] = "--with-libnl,--without-libnl,libnl"
 
-do_configure_prepend () {
+do_configure:prepend () {
     #remove hardcoded references to /usr/include
     sed 's|\([ "^'\''I]\+\)/usr/include/|\1${STAGING_INCDIR}/|g' -i ${S}/configure.ac
 }
diff --git a/poky/meta/recipes-connectivity/libuv/libuv_1.41.0.bb b/poky/meta/recipes-connectivity/libuv/libuv_1.42.0.bb
similarity index 92%
rename from poky/meta/recipes-connectivity/libuv/libuv_1.41.0.bb
rename to poky/meta/recipes-connectivity/libuv/libuv_1.42.0.bb
index 4987331..169bd62 100644
--- a/poky/meta/recipes-connectivity/libuv/libuv_1.41.0.bb
+++ b/poky/meta/recipes-connectivity/libuv/libuv_1.42.0.bb
@@ -5,7 +5,7 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=a68902a430e32200263d182d44924d47"
 
-SRCREV = "1dff88e5161cba5c59276d2070d2e304e4dcb242"
+SRCREV = "6ce14710da7079eb248868171f6343bc409ea3a4"
 SRC_URI = "git://github.com/libuv/libuv;branch=v1.x"
 
 S = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-connectivity/neard/neard_0.16.bb b/poky/meta/recipes-connectivity/neard/neard_0.16.bb
index 7c124a3..d55cf6a 100644
--- a/poky/meta/recipes-connectivity/neard/neard_0.16.bb
+++ b/poky/meta/recipes-connectivity/neard/neard_0.16.bb
@@ -27,7 +27,7 @@
 EXTRA_OECONF += "--enable-tools"
 
 # This would copy neard start-stop shell and test scripts
-do_install_append() {
+do_install:append() {
 	if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then
 		install -d ${D}${sysconfdir}/init.d/
 		sed "s:@installpath@:${libexecdir}/nfc:" ${WORKDIR}/neard.in \
@@ -36,10 +36,10 @@
 	fi
 }
 
-RDEPENDS_${PN} = "dbus"
+RDEPENDS:${PN} = "dbus"
 
 # Bluez & Wifi are not mandatory except for handover
-RRECOMMENDS_${PN} = "\
+RRECOMMENDS:${PN} = "\
                      ${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluez5', '', d)} \
                      ${@bb.utils.contains('DISTRO_FEATURES', 'wifi','wpa-supplicant', '', d)} \
                     "
@@ -47,4 +47,4 @@
 INITSCRIPT_NAME = "neard"
 INITSCRIPT_PARAMS = "defaults 64"
 
-SYSTEMD_SERVICE_${PN} = "neard.service"
+SYSTEMD_SERVICE:${PN} = "neard.service"
diff --git a/poky/meta/recipes-connectivity/nfs-utils/nfs-utils_2.5.4.bb b/poky/meta/recipes-connectivity/nfs-utils/nfs-utils_2.5.4.bb
index 5500a92..495ce4e 100644
--- a/poky/meta/recipes-connectivity/nfs-utils/nfs-utils_2.5.4.bb
+++ b/poky/meta/recipes-connectivity/nfs-utils/nfs-utils_2.5.4.bb
@@ -9,13 +9,13 @@
 
 # util-linux for libblkid
 DEPENDS = "libcap libevent util-linux sqlite3 libtirpc"
-RDEPENDS_${PN} = "${PN}-client"
-RRECOMMENDS_${PN} = "kernel-module-nfsd"
+RDEPENDS:${PN} = "${PN}-client"
+RRECOMMENDS:${PN} = "kernel-module-nfsd"
 
 inherit useradd
 
 USERADD_PACKAGES = "${PN}-client"
-USERADD_PARAM_${PN}-client = "--system  --home-dir /var/lib/nfs \
+USERADD_PARAM:${PN}-client = "--system  --home-dir /var/lib/nfs \
 			      --shell /bin/false --user-group rpcuser"
 
 SRC_URI = "${KERNELORG_MIRROR}/linux/utils/nfs-utils/${PV}/nfs-utils-${PV}.tar.xz \
@@ -39,14 +39,14 @@
 INITSCRIPT_PACKAGES = "${PN} ${PN}-client"
 INITSCRIPT_NAME = "nfsserver"
 INITSCRIPT_PARAMS = "defaults"
-INITSCRIPT_NAME_${PN}-client = "nfscommon"
-INITSCRIPT_PARAMS_${PN}-client = "defaults 19 21"
+INITSCRIPT_NAME:${PN}-client = "nfscommon"
+INITSCRIPT_PARAMS:${PN}-client = "defaults 19 21"
 
 inherit autotools-brokensep update-rc.d systemd pkgconfig
 
 SYSTEMD_PACKAGES = "${PN} ${PN}-client"
-SYSTEMD_SERVICE_${PN} = "nfs-server.service nfs-mountd.service"
-SYSTEMD_SERVICE_${PN}-client = "nfs-statd.service"
+SYSTEMD_SERVICE:${PN} = "nfs-server.service nfs-mountd.service"
+SYSTEMD_SERVICE:${PN}-client = "nfs-statd.service"
 
 # --enable-uuid is need for cross-compiling
 EXTRA_OECONF = "--with-statduser=rpcuser \
@@ -62,7 +62,7 @@
 PACKAGECONFIG ??= "tcp-wrappers \
     ${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)} \
 "
-PACKAGECONFIG_remove_libc-musl = "tcp-wrappers"
+PACKAGECONFIG:remove:libc-musl = "tcp-wrappers"
 PACKAGECONFIG[tcp-wrappers] = "--with-tcp-wrappers,--without-tcp-wrappers,tcp-wrappers"
 PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6,"
 # libdevmapper is available in meta-oe
@@ -72,13 +72,13 @@
 
 PACKAGES =+ "${PN}-client ${PN}-mount ${PN}-stats"
 
-CONFFILES_${PN}-client += "${localstatedir}/lib/nfs/etab \
+CONFFILES:${PN}-client += "${localstatedir}/lib/nfs/etab \
 			   ${localstatedir}/lib/nfs/rmtab \
 			   ${localstatedir}/lib/nfs/xtab \
 			   ${localstatedir}/lib/nfs/statd/state \
 			   ${sysconfdir}/nfsmount.conf"
 
-FILES_${PN}-client = "${sbindir}/*statd \
+FILES:${PN}-client = "${sbindir}/*statd \
 		      ${sbindir}/rpc.idmapd ${sbindir}/sm-notify \
 		      ${sbindir}/showmount ${sbindir}/nfsstat \
 		      ${localstatedir}/lib/nfs \
@@ -86,32 +86,32 @@
 		      ${sysconfdir}/nfsmount.conf \
 		      ${sysconfdir}/init.d/nfscommon \
 		      ${systemd_unitdir}/system/nfs-statd.service"
-RDEPENDS_${PN}-client = "${PN}-mount rpcbind"
+RDEPENDS:${PN}-client = "${PN}-mount rpcbind"
 
-FILES_${PN}-mount = "${base_sbindir}/*mount.nfs*"
+FILES:${PN}-mount = "${base_sbindir}/*mount.nfs*"
 
-FILES_${PN}-stats = "${sbindir}/mountstats ${sbindir}/nfsiostat ${sbindir}/nfsdclnts"
-RDEPENDS_${PN}-stats = "python3-core"
+FILES:${PN}-stats = "${sbindir}/mountstats ${sbindir}/nfsiostat ${sbindir}/nfsdclnts"
+RDEPENDS:${PN}-stats = "python3-core"
 
-FILES_${PN}-staticdev += "${libdir}/libnfsidmap/*.a"
+FILES:${PN}-staticdev += "${libdir}/libnfsidmap/*.a"
 
-FILES_${PN} += "${systemd_unitdir} ${libdir}/libnfsidmap/"
+FILES:${PN} += "${systemd_unitdir} ${libdir}/libnfsidmap/"
 
-do_configure_prepend() {
+do_configure:prepend() {
 	sed -i -e 's,sbindir = /sbin,sbindir = ${base_sbindir},g' \
 		${S}/utils/mount/Makefile.am
 }
 
 # Make clean needed because the package comes with
 # precompiled 64-bit objects that break the build
-do_compile_prepend() {
+do_compile:prepend() {
 	make clean
 }
 
 # Works on systemd only
 HIGH_RLIMIT_NOFILE ??= "4096"
 
-do_install_append () {
+do_install:append () {
 	install -d ${D}${sysconfdir}/init.d
 	install -m 0755 ${WORKDIR}/nfsserver ${D}${sysconfdir}/init.d/nfsserver
 	install -m 0755 ${WORKDIR}/nfscommon ${D}${sysconfdir}/init.d/nfscommon
diff --git a/poky/meta/recipes-connectivity/ofono/ofono_1.32.bb b/poky/meta/recipes-connectivity/ofono/ofono_1.32.bb
index f3d875b..c3db52d 100644
--- a/poky/meta/recipes-connectivity/ofono/ofono_1.32.bb
+++ b/poky/meta/recipes-connectivity/ofono/ofono_1.32.bb
@@ -19,7 +19,7 @@
 
 INITSCRIPT_NAME = "ofono"
 INITSCRIPT_PARAMS = "defaults 22"
-SYSTEMD_SERVICE_${PN} = "ofono.service"
+SYSTEMD_SERVICE:${PN} = "ofono.service"
 
 PACKAGECONFIG ??= "\
     ${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)} \
@@ -30,26 +30,26 @@
 
 EXTRA_OECONF += "--enable-test --enable-external-ell"
 
-do_configure_prepend() {
+do_configure:prepend() {
     bbnote "Removing bundled ell from ${S}/ell to prevent including it"
     rm -rf ${S}/ell
 }
 
-do_install_append() {
+do_install:append() {
     install -d ${D}${sysconfdir}/init.d/
     install -m 0755 ${WORKDIR}/ofono ${D}${sysconfdir}/init.d/ofono
 }
 
 PACKAGES =+ "${PN}-tests"
 
-FILES_${PN} += "${systemd_unitdir}"
-FILES_${PN}-tests = "${libdir}/${BPN}/test"
+FILES:${PN} += "${systemd_unitdir}"
+FILES:${PN}-tests = "${libdir}/${BPN}/test"
 
-RDEPENDS_${PN} += "dbus"
-RDEPENDS_${PN}-tests = "\
+RDEPENDS:${PN} += "dbus"
+RDEPENDS:${PN}-tests = "\
     python3-core \
     python3-dbus \
     ${@bb.utils.contains('GI_DATA_ENABLED', 'True', 'python3-pygobject', '', d)} \
 "
 
-RRECOMMENDS_${PN} += "kernel-module-tun mobile-broadband-provider-info"
+RRECOMMENDS:${PN} += "kernel-module-tun mobile-broadband-provider-info"
diff --git a/poky/meta/recipes-connectivity/openssh/openssh_8.6p1.bb b/poky/meta/recipes-connectivity/openssh/openssh_8.6p1.bb
index e8f041c..093214c 100644
--- a/poky/meta/recipes-connectivity/openssh/openssh_8.6p1.bb
+++ b/poky/meta/recipes-connectivity/openssh/openssh_8.6p1.bb
@@ -42,13 +42,13 @@
 inherit manpages useradd update-rc.d update-alternatives systemd
 
 USERADD_PACKAGES = "${PN}-sshd"
-USERADD_PARAM_${PN}-sshd = "--system --no-create-home --home-dir /var/run/sshd --shell /bin/false --user-group sshd"
+USERADD_PARAM:${PN}-sshd = "--system --no-create-home --home-dir /var/run/sshd --shell /bin/false --user-group sshd"
 INITSCRIPT_PACKAGES = "${PN}-sshd"
-INITSCRIPT_NAME_${PN}-sshd = "sshd"
-INITSCRIPT_PARAMS_${PN}-sshd = "defaults 9"
+INITSCRIPT_NAME:${PN}-sshd = "sshd"
+INITSCRIPT_PARAMS:${PN}-sshd = "defaults 9"
 
 SYSTEMD_PACKAGES = "${PN}-sshd"
-SYSTEMD_SERVICE_${PN}-sshd = "sshd.socket"
+SYSTEMD_SERVICE:${PN}-sshd = "sshd.socket"
 
 inherit autotools-brokensep ptest
 
@@ -74,7 +74,7 @@
                 "
 
 # musl doesn't implement wtmp/utmp and logwtmp
-EXTRA_OECONF_append_libc-musl = " --disable-wtmp --disable-lastlog"
+EXTRA_OECONF:append:libc-musl = " --disable-wtmp --disable-lastlog"
 
 # Since we do not depend on libbsd, we do not want configure to use it
 # just because it finds libutil.h.  But, specifying --disable-libutil
@@ -87,7 +87,7 @@
 # We don't want to depend on libblockfile
 CACHED_CONFIGUREVARS += "ac_cv_header_maillock_h=no"
 
-do_configure_prepend () {
+do_configure:prepend () {
 	export LD="${CC}"
 	install -m 0644 ${WORKDIR}/sshd_config ${B}/
 	install -m 0644 ${WORKDIR}/ssh_config ${B}/
@@ -100,7 +100,7 @@
                    regress/check-perm regress/mkdtemp
 }
 
-do_install_append () {
+do_install:append () {
 	if [ "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}" ]; then
 		install -D -m 0644 ${WORKDIR}/sshd ${D}${sysconfdir}/pam.d/sshd
 		sed -i -e 's:#UsePAM no:UsePAM yes:' ${D}${sysconfdir}/ssh/sshd_config
@@ -147,39 +147,39 @@
 	cp -r regress ${D}${PTEST_PATH}
 }
 
-ALLOW_EMPTY_${PN} = "1"
+ALLOW_EMPTY:${PN} = "1"
 
 PACKAGES =+ "${PN}-keygen ${PN}-scp ${PN}-ssh ${PN}-sshd ${PN}-sftp ${PN}-misc ${PN}-sftp-server"
-FILES_${PN}-scp = "${bindir}/scp.${BPN}"
-FILES_${PN}-ssh = "${bindir}/ssh.${BPN} ${sysconfdir}/ssh/ssh_config"
-FILES_${PN}-sshd = "${sbindir}/sshd ${sysconfdir}/init.d/sshd ${systemd_unitdir}/system"
-FILES_${PN}-sshd += "${sysconfdir}/ssh/moduli ${sysconfdir}/ssh/sshd_config ${sysconfdir}/ssh/sshd_config_readonly ${sysconfdir}/default/volatiles/99_sshd ${sysconfdir}/pam.d/sshd"
-FILES_${PN}-sshd += "${libexecdir}/${BPN}/sshd_check_keys"
-FILES_${PN}-sftp = "${bindir}/sftp"
-FILES_${PN}-sftp-server = "${libexecdir}/sftp-server"
-FILES_${PN}-misc = "${bindir}/ssh* ${libexecdir}/ssh*"
-FILES_${PN}-keygen = "${bindir}/ssh-keygen"
+FILES:${PN}-scp = "${bindir}/scp.${BPN}"
+FILES:${PN}-ssh = "${bindir}/ssh.${BPN} ${sysconfdir}/ssh/ssh_config"
+FILES:${PN}-sshd = "${sbindir}/sshd ${sysconfdir}/init.d/sshd ${systemd_unitdir}/system"
+FILES:${PN}-sshd += "${sysconfdir}/ssh/moduli ${sysconfdir}/ssh/sshd_config ${sysconfdir}/ssh/sshd_config_readonly ${sysconfdir}/default/volatiles/99_sshd ${sysconfdir}/pam.d/sshd"
+FILES:${PN}-sshd += "${libexecdir}/${BPN}/sshd_check_keys"
+FILES:${PN}-sftp = "${bindir}/sftp"
+FILES:${PN}-sftp-server = "${libexecdir}/sftp-server"
+FILES:${PN}-misc = "${bindir}/ssh* ${libexecdir}/ssh*"
+FILES:${PN}-keygen = "${bindir}/ssh-keygen"
 
-RDEPENDS_${PN} += "${PN}-scp ${PN}-ssh ${PN}-sshd ${PN}-keygen"
-RDEPENDS_${PN}-sshd += "${PN}-keygen ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'pam-plugin-keyinit pam-plugin-loginuid', '', d)}"
-RRECOMMENDS_${PN}-sshd_append_class-target = "\
+RDEPENDS:${PN} += "${PN}-scp ${PN}-ssh ${PN}-sshd ${PN}-keygen"
+RDEPENDS:${PN}-sshd += "${PN}-keygen ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'pam-plugin-keyinit pam-plugin-loginuid', '', d)}"
+RRECOMMENDS:${PN}-sshd:append:class-target = "\
     ${@bb.utils.filter('PACKAGECONFIG', 'rng-tools', d)} \
 "
 
 # gdb would make attach-ptrace test pass rather than skip but not worth the build dependencies
-RDEPENDS_${PN}-ptest += "${PN}-sftp ${PN}-misc ${PN}-sftp-server make sed sudo coreutils"
+RDEPENDS:${PN}-ptest += "${PN}-sftp ${PN}-misc ${PN}-sftp-server make sed sudo coreutils"
 
-RPROVIDES_${PN}-ssh = "ssh"
-RPROVIDES_${PN}-sshd = "sshd"
+RPROVIDES:${PN}-ssh = "ssh"
+RPROVIDES:${PN}-sshd = "sshd"
 
-RCONFLICTS_${PN} = "dropbear"
-RCONFLICTS_${PN}-sshd = "dropbear"
+RCONFLICTS:${PN} = "dropbear"
+RCONFLICTS:${PN}-sshd = "dropbear"
 
-CONFFILES_${PN}-sshd = "${sysconfdir}/ssh/sshd_config"
-CONFFILES_${PN}-ssh = "${sysconfdir}/ssh/ssh_config"
+CONFFILES:${PN}-sshd = "${sysconfdir}/ssh/sshd_config"
+CONFFILES:${PN}-ssh = "${sysconfdir}/ssh/ssh_config"
 
 ALTERNATIVE_PRIORITY = "90"
-ALTERNATIVE_${PN}-scp = "scp"
-ALTERNATIVE_${PN}-ssh = "ssh"
+ALTERNATIVE:${PN}-scp = "scp"
+ALTERNATIVE:${PN}-ssh = "ssh"
 
 BBCLASSEXTEND += "nativesdk"
diff --git a/poky/meta/recipes-connectivity/openssl/openssl_1.1.1k.bb b/poky/meta/recipes-connectivity/openssl/openssl_1.1.1k.bb
index e518cb6..09afa27 100644
--- a/poky/meta/recipes-connectivity/openssl/openssl_1.1.1k.bb
+++ b/poky/meta/recipes-connectivity/openssl/openssl_1.1.1k.bb
@@ -19,11 +19,11 @@
            file://reproducible.patch \
            "
 
-SRC_URI_append_class-nativesdk = " \
+SRC_URI:append:class-nativesdk = " \
            file://environment.d-openssl.sh \
            "
 
-SRC_URI_append_riscv32 = " \
+SRC_URI:append:riscv32 = " \
            file://0003-Add-support-for-io_pgetevents_time64-syscall.patch \
            file://0004-Fixup-support-for-io_pgetevents_time64-syscall.patch \
            "
@@ -34,8 +34,8 @@
 MULTILIB_SCRIPTS = "${PN}-bin:${bindir}/c_rehash"
 
 PACKAGECONFIG ?= ""
-PACKAGECONFIG_class-native = ""
-PACKAGECONFIG_class-nativesdk = ""
+PACKAGECONFIG:class-native = ""
+PACKAGECONFIG:class-nativesdk = ""
 
 PACKAGECONFIG[cryptodev-linux] = "enable-devcryptoeng,disable-devcryptoeng,cryptodev-linux,,cryptodev-module"
 PACKAGECONFIG[no-tls1] = "no-tls1"
@@ -47,17 +47,17 @@
 #| ./libcrypto.so: undefined reference to `getcontext'
 #| ./libcrypto.so: undefined reference to `setcontext'
 #| ./libcrypto.so: undefined reference to `makecontext'
-EXTRA_OECONF_append_libc-musl = " no-async"
-EXTRA_OECONF_append_libc-musl_powerpc64 = " no-asm"
+EXTRA_OECONF:append:libc-musl = " no-async"
+EXTRA_OECONF:append:libc-musl:powerpc64 = " no-asm"
 
 # adding devrandom prevents openssl from using getrandom() which is not available on older glibc versions
 # (native versions can be built with newer glibc, but then relocated onto a system with older glibc)
-EXTRA_OECONF_class-native = "--with-rand-seed=os,devrandom"
-EXTRA_OECONF_class-nativesdk = "--with-rand-seed=os,devrandom"
+EXTRA_OECONF:class-native = "--with-rand-seed=os,devrandom"
+EXTRA_OECONF:class-nativesdk = "--with-rand-seed=os,devrandom"
 
 # Relying on hardcoded built-in paths causes openssl-native to not be relocateable from sstate.
-CFLAGS_append_class-native = " -DOPENSSLDIR=/not/builtin -DENGINESDIR=/not/builtin"
-CFLAGS_append_class-nativesdk = " -DOPENSSLDIR=/not/builtin -DENGINESDIR=/not/builtin"
+CFLAGS:append:class-native = " -DOPENSSLDIR=/not/builtin -DENGINESDIR=/not/builtin"
+CFLAGS:append:class-nativesdk = " -DOPENSSLDIR=/not/builtin -DENGINESDIR=/not/builtin"
 
 # Disable deprecated crypto algorithms
 # Retained for compatibilty
@@ -170,7 +170,7 @@
 	ln -sf ${@oe.path.relative('${libdir}/ssl-1.1', '${sysconfdir}/ssl/openssl.cnf')} ${D}${libdir}/ssl-1.1/openssl.cnf
 }
 
-do_install_append_class-native () {
+do_install:append:class-native () {
 	create_wrapper ${D}${bindir}/openssl \
 	    OPENSSL_CONF=${libdir}/ssl-1.1/openssl.cnf \
 	    SSL_CERT_DIR=${libdir}/ssl-1.1/certs \
@@ -178,7 +178,7 @@
 	    OPENSSL_ENGINES=${libdir}/engines-1.1
 }
 
-do_install_append_class-nativesdk () {
+do_install:append:class-nativesdk () {
 	mkdir -p ${D}${SDKPATHNATIVE}/environment-setup.d
 	install -m 644 ${WORKDIR}/environment.d-openssl.sh ${D}${SDKPATHNATIVE}/environment-setup.d/openssl.sh
 	sed 's|/usr/lib/ssl/|/usr/lib/ssl-1.1/|g' -i ${D}${SDKPATHNATIVE}/environment-setup.d/openssl.sh
@@ -217,25 +217,25 @@
 
 PACKAGES =+ "libcrypto libssl openssl-conf ${PN}-engines ${PN}-misc"
 
-FILES_libcrypto = "${libdir}/libcrypto${SOLIBS}"
-FILES_libssl = "${libdir}/libssl${SOLIBS}"
-FILES_openssl-conf = "${sysconfdir}/ssl/openssl.cnf \
+FILES:libcrypto = "${libdir}/libcrypto${SOLIBS}"
+FILES:libssl = "${libdir}/libssl${SOLIBS}"
+FILES:openssl-conf = "${sysconfdir}/ssl/openssl.cnf \
                       ${libdir}/ssl-1.1/openssl.cnf* \
                       "
-FILES_${PN}-engines = "${libdir}/engines-1.1"
+FILES:${PN}-engines = "${libdir}/engines-1.1"
 # ${prefix} comes from what we pass into --prefix at configure time (which is used for INSTALLTOP)
-FILES_${PN}-engines_append_mingw32_class-nativesdk = " ${prefix}${libdir}/engines-1_1"
-FILES_${PN}-misc = "${libdir}/ssl-1.1/misc ${bindir}/c_rehash"
-FILES_${PN} =+ "${libdir}/ssl-1.1/*"
-FILES_${PN}_append_class-nativesdk = " ${SDKPATHNATIVE}/environment-setup.d/openssl.sh"
+FILES:${PN}-engines:append:mingw32:class-nativesdk = " ${prefix}${libdir}/engines-1_1"
+FILES:${PN}-misc = "${libdir}/ssl-1.1/misc ${bindir}/c_rehash"
+FILES:${PN} =+ "${libdir}/ssl-1.1/*"
+FILES:${PN}:append:class-nativesdk = " ${SDKPATHNATIVE}/environment-setup.d/openssl.sh"
 
-CONFFILES_openssl-conf = "${sysconfdir}/ssl/openssl.cnf"
+CONFFILES:openssl-conf = "${sysconfdir}/ssl/openssl.cnf"
 
-RRECOMMENDS_libcrypto += "openssl-conf"
-RDEPENDS_${PN}-misc = "perl"
-RDEPENDS_${PN}-ptest += "openssl-bin perl perl-modules bash"
+RRECOMMENDS:libcrypto += "openssl-conf"
+RDEPENDS:${PN}-misc = "perl"
+RDEPENDS:${PN}-ptest += "openssl-bin perl perl-modules bash"
 
-RDEPENDS_${PN}-bin += "openssl-conf"
+RDEPENDS:${PN}-bin += "openssl-conf"
 
 BBCLASSEXTEND = "native nativesdk"
 
diff --git a/poky/meta/recipes-connectivity/ppp-dialin/ppp-dialin_0.1.bb b/poky/meta/recipes-connectivity/ppp-dialin/ppp-dialin_0.1.bb
index b0097aa..8a6c297 100644
--- a/poky/meta/recipes-connectivity/ppp-dialin/ppp-dialin_0.1.bb
+++ b/poky/meta/recipes-connectivity/ppp-dialin/ppp-dialin_0.1.bb
@@ -2,7 +2,7 @@
 SECTION = "console/network"
 DESCRIPTION = "PPP dail-in provides a point to point protocol (PPP), so that other computers can dial up to it and access connected networks."
 DEPENDS = "ppp"
-RDEPENDS_${PN} = "ppp"
+RDEPENDS:${PN} = "ppp"
 PR = "r8"
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
@@ -23,6 +23,6 @@
 }
 
 USERADD_PACKAGES = "${PN}"
-USERADD_PARAM_${PN} = "--system --home /dev/null \
+USERADD_PARAM:${PN} = "--system --home /dev/null \
                        --no-create-home --shell ${sbindir}/ppp-dialin \
                        --no-user-group --gid nogroup ppp"
diff --git a/poky/meta/recipes-connectivity/ppp/ppp_2.4.9.bb b/poky/meta/recipes-connectivity/ppp/ppp_2.4.9.bb
index a78992f..6e5cfc8 100644
--- a/poky/meta/recipes-connectivity/ppp/ppp_2.4.9.bb
+++ b/poky/meta/recipes-connectivity/ppp/ppp_2.4.9.bb
@@ -43,7 +43,7 @@
 	oe_runconf
 }
 
-do_install_append () {
+do_install:append () {
 	make install-etcppp ETCDIR=${D}/${sysconfdir}/ppp
 	mkdir -p ${D}${bindir}/ ${D}${sysconfdir}/init.d
 	mkdir -p ${D}${sysconfdir}/ppp/ip-up.d/
@@ -68,29 +68,29 @@
 	chmod u+s ${D}${sbindir}/pppd
 }
 
-do_install_append_libc-musl () {
+do_install:append:libc-musl () {
 	install -Dm 0644 ${S}/include/net/ppp_defs.h ${D}${includedir}/net/ppp_defs.h
 }
 
-CONFFILES_${PN} = "${sysconfdir}/ppp/pap-secrets ${sysconfdir}/ppp/chap-secrets ${sysconfdir}/ppp/options"
+CONFFILES:${PN} = "${sysconfdir}/ppp/pap-secrets ${sysconfdir}/ppp/chap-secrets ${sysconfdir}/ppp/options"
 PACKAGES =+ "${PN}-oa ${PN}-oe ${PN}-radius ${PN}-winbind ${PN}-minconn ${PN}-password ${PN}-l2tp ${PN}-tools"
-FILES_${PN}        = "${sysconfdir} ${bindir} ${sbindir}/chat ${sbindir}/pppd ${systemd_unitdir}/system/ppp@.service"
-FILES_${PN}-oa       = "${libdir}/pppd/${PV}/pppoatm.so"
-FILES_${PN}-oe       = "${sbindir}/pppoe-discovery ${libdir}/pppd/${PV}/*pppoe.so"
-FILES_${PN}-radius   = "${libdir}/pppd/${PV}/radius.so ${libdir}/pppd/${PV}/radattr.so ${libdir}/pppd/${PV}/radrealms.so"
-FILES_${PN}-winbind  = "${libdir}/pppd/${PV}/winbind.so"
-FILES_${PN}-minconn  = "${libdir}/pppd/${PV}/minconn.so"
-FILES_${PN}-password = "${libdir}/pppd/${PV}/pass*.so"
-FILES_${PN}-l2tp     = "${libdir}/pppd/${PV}/*l2tp.so"
-FILES_${PN}-tools    = "${sbindir}/pppstats ${sbindir}/pppdump"
-SUMMARY_${PN}-oa       = "Plugin for PPP for PPP-over-ATM support"
-SUMMARY_${PN}-oe       = "Plugin for PPP for PPP-over-Ethernet support"
-SUMMARY_${PN}-radius   = "Plugin for PPP for RADIUS support"
-SUMMARY_${PN}-winbind  = "Plugin for PPP to authenticate against Samba or Windows"
-SUMMARY_${PN}-minconn  = "Plugin for PPP to set a delay before the idle timeout applies"
-SUMMARY_${PN}-password = "Plugin for PPP to get passwords via a pipe"
-SUMMARY_${PN}-l2tp     = "Plugin for PPP for l2tp support"
-SUMMARY_${PN}-tools    = "Additional tools for the PPP package"
+FILES:${PN}        = "${sysconfdir} ${bindir} ${sbindir}/chat ${sbindir}/pppd ${systemd_unitdir}/system/ppp@.service"
+FILES:${PN}-oa       = "${libdir}/pppd/${PV}/pppoatm.so"
+FILES:${PN}-oe       = "${sbindir}/pppoe-discovery ${libdir}/pppd/${PV}/*pppoe.so"
+FILES:${PN}-radius   = "${libdir}/pppd/${PV}/radius.so ${libdir}/pppd/${PV}/radattr.so ${libdir}/pppd/${PV}/radrealms.so"
+FILES:${PN}-winbind  = "${libdir}/pppd/${PV}/winbind.so"
+FILES:${PN}-minconn  = "${libdir}/pppd/${PV}/minconn.so"
+FILES:${PN}-password = "${libdir}/pppd/${PV}/pass*.so"
+FILES:${PN}-l2tp     = "${libdir}/pppd/${PV}/*l2tp.so"
+FILES:${PN}-tools    = "${sbindir}/pppstats ${sbindir}/pppdump"
+SUMMARY:${PN}-oa       = "Plugin for PPP for PPP-over-ATM support"
+SUMMARY:${PN}-oe       = "Plugin for PPP for PPP-over-Ethernet support"
+SUMMARY:${PN}-radius   = "Plugin for PPP for RADIUS support"
+SUMMARY:${PN}-winbind  = "Plugin for PPP to authenticate against Samba or Windows"
+SUMMARY:${PN}-minconn  = "Plugin for PPP to set a delay before the idle timeout applies"
+SUMMARY:${PN}-password = "Plugin for PPP to get passwords via a pipe"
+SUMMARY:${PN}-l2tp     = "Plugin for PPP for l2tp support"
+SUMMARY:${PN}-tools    = "Additional tools for the PPP package"
 
 # Ignore compatibility symlink rp-pppoe.so->pppoe.so
-INSANE_SKIP_${PN}-oe += "dev-so"
+INSANE_SKIP:${PN}-oe += "dev-so"
diff --git a/poky/meta/recipes-connectivity/resolvconf/resolvconf_1.87.bb b/poky/meta/recipes-connectivity/resolvconf/resolvconf_1.87.bb
index 6df96b6..f57abe3 100644
--- a/poky/meta/recipes-connectivity/resolvconf/resolvconf_1.87.bb
+++ b/poky/meta/recipes-connectivity/resolvconf/resolvconf_1.87.bb
@@ -9,7 +9,7 @@
 LIC_FILES_CHKSUM = "file://COPYING;md5=c93c0550bd3173f4504b2cbd8991e50b"
 AUTHOR = "Thomas Hood"
 HOMEPAGE = "http://packages.debian.org/resolvconf"
-RDEPENDS_${PN} = "bash"
+RDEPENDS:${PN} = "bash"
 
 SRC_URI = "git://salsa.debian.org/debian/resolvconf.git;protocol=https;branch=unstable \
            file://fix-path-for-busybox.patch \
@@ -55,7 +55,7 @@
 	install -m 0644 man/resolvconf.8 ${D}${mandir}/man8/
 }
 
-pkg_postinst_${PN} () {
+pkg_postinst:${PN} () {
 	if [ -z "$D" ]; then
 		if command -v systemd-tmpfiles >/dev/null; then
 			systemd-tmpfiles --create ${sysconfdir}/tmpfiles.d/resolvconf.conf
@@ -65,4 +65,4 @@
 	fi
 }
 
-FILES_${PN} += "${base_libdir}/${BPN}"
+FILES:${PN} += "${base_libdir}/${BPN}"
diff --git a/poky/meta/recipes-connectivity/socat/socat_1.7.4.1.bb b/poky/meta/recipes-connectivity/socat/socat_1.7.4.1.bb
index 5a13af9..1ad5f15 100644
--- a/poky/meta/recipes-connectivity/socat/socat_1.7.4.1.bb
+++ b/poky/meta/recipes-connectivity/socat/socat_1.7.4.1.bb
@@ -29,15 +29,15 @@
                     sc_cv_sys_tabdly_shift=11 \
                     sc_cv_sys_csize_shift=4"
 
-TERMBITS_SHIFTS_powerpc = "sc_cv_sys_crdly_shift=12 \
+TERMBITS_SHIFTS:powerpc = "sc_cv_sys_crdly_shift=12 \
                            sc_cv_sys_tabdly_shift=10 \
                            sc_cv_sys_csize_shift=8"
 
-TERMBITS_SHIFTS_powerpc64 = "sc_cv_sys_crdly_shift=12 \
+TERMBITS_SHIFTS:powerpc64 = "sc_cv_sys_crdly_shift=12 \
                              sc_cv_sys_tabdly_shift=10 \
                              sc_cv_sys_csize_shift=8"
 
-PACKAGECONFIG_class-target ??= "tcp-wrappers readline openssl"
+PACKAGECONFIG:class-target ??= "tcp-wrappers readline openssl"
 PACKAGECONFIG ??= "readline openssl"
 PACKAGECONFIG[tcp-wrappers] = "--enable-libwrap,--disable-libwrap,tcp-wrappers"
 PACKAGECONFIG[readline] = "--enable-readline,--disable-readline,readline"
@@ -45,7 +45,7 @@
 
 CFLAGS += "-fcommon"
 
-do_install_prepend () {
+do_install:prepend () {
     mkdir -p ${D}${bindir}
     install -d ${D}${bindir} ${D}${mandir}/man1
 }
diff --git a/poky/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant_2.9.bb b/poky/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant_2.9.bb
index 16c5918..309bb4a 100644
--- a/poky/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant_2.9.bb
+++ b/poky/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant_2.9.bb
@@ -8,7 +8,7 @@
                     file://README;beginline=1;endline=56;md5=e7d3dbb01f75f0b9799e192731d1e1ff \
                     file://wpa_supplicant/wpa_supplicant.c;beginline=1;endline=12;md5=0a8b56d3543498b742b9c0e94cc2d18b"
 DEPENDS = "dbus libnl"
-RRECOMMENDS_${PN} = "wpa-supplicant-passphrase wpa-supplicant-cli"
+RRECOMMENDS:${PN} = "wpa-supplicant-passphrase wpa-supplicant-cli"
 
 PACKAGECONFIG ??= "openssl"
 PACKAGECONFIG[gnutls] = ",,gnutls libgcrypt"
@@ -16,7 +16,7 @@
 
 inherit pkgconfig systemd
 
-SYSTEMD_SERVICE_${PN} = "wpa_supplicant.service"
+SYSTEMD_SERVICE:${PN} = "wpa_supplicant.service"
 SYSTEMD_AUTO_ENABLE = "disable"
 
 SRC_URI = "http://w1.fi/releases/wpa_supplicant-${PV}.tar.gz  \
@@ -41,11 +41,11 @@
 
 S = "${WORKDIR}/wpa_supplicant-${PV}"
 
-PACKAGES_prepend = "wpa-supplicant-passphrase wpa-supplicant-cli "
-FILES_wpa-supplicant-passphrase = "${bindir}/wpa_passphrase"
-FILES_wpa-supplicant-cli = "${sbindir}/wpa_cli"
-FILES_${PN} += "${datadir}/dbus-1/system-services/* ${systemd_system_unitdir}/*"
-CONFFILES_${PN} += "${sysconfdir}/wpa_supplicant.conf"
+PACKAGES:prepend = "wpa-supplicant-passphrase wpa-supplicant-cli "
+FILES:wpa-supplicant-passphrase = "${bindir}/wpa_passphrase"
+FILES:wpa-supplicant-cli = "${sbindir}/wpa_cli"
+FILES:${PN} += "${datadir}/dbus-1/system-services/* ${systemd_system_unitdir}/*"
+CONFFILES:${PN} += "${sysconfdir}/wpa_supplicant.conf"
 
 do_configure () {
 	${MAKE} -C wpa_supplicant clean
@@ -108,7 +108,7 @@
 	install -m 0644 ${WORKDIR}/99_wpa_supplicant ${D}/etc/default/volatiles
 }
 
-pkg_postinst_wpa-supplicant () {
+pkg_postinst:wpa-supplicant () {
 	# If we're offline, we don't need to do this.
 	if [ "x$D" = "x" ]; then
 		killall -q -HUP dbus-daemon || true
diff --git a/poky/meta/recipes-core/base-files/base-files_3.0.14.bb b/poky/meta/recipes-core/base-files/base-files_3.0.14.bb
index 9429943..032827a 100644
--- a/poky/meta/recipes-core/base-files/base-files_3.0.14.bb
+++ b/poky/meta/recipes-core/base-files/base-files_3.0.14.bb
@@ -28,7 +28,7 @@
 
 INHIBIT_DEFAULT_DEPS = "1"
 
-docdir_append = "/${P}"
+docdir:append = "/${P}"
 dirs1777 = "/tmp ${localstatedir}/volatile/tmp"
 dirs2775 = ""
 dirs555 = "/sys /proc"
@@ -64,7 +64,7 @@
 # hostnames.
 #
 # The hostname can be changed outside of this recipe by using
-# hostname_pn-base-files = "my-host-name".
+# hostname:pn-base-files = "my-host-name".
 hostname = "${MACHINE}"
 
 BASEFILESISSUEINSTALL ?= "do_install_basefilesissue"
@@ -77,7 +77,7 @@
 # Otherwise the directory creation will fail and we will have circular symbolic
 # links.
 # 
-pkg_preinst_${PN} () {
+pkg_preinst:${PN} () {
     #!/bin/sh -e
     if [ x"$D" = "x" ]; then
         if [ -h "/var/lock" ]; then
@@ -139,7 +139,7 @@
 	fi
 }
 
-do_install_append_libc-glibc () {
+do_install:append:libc-glibc () {
 	install -m 0644 ${WORKDIR}/nsswitch.conf ${D}${sysconfdir}/nsswitch.conf
 }
 
@@ -162,7 +162,7 @@
 }
 do_install_basefilesissue[vardepsexclude] += "DATE"
 
-do_install_append_linuxstdbase() {
+do_install:append:linuxstdbase() {
 	for d in ${dirs755-lsb}; do
                 install -m 0755 -d ${D}$d
         done
@@ -175,10 +175,10 @@
 SYSROOT_DIRS += "${sysconfdir}/skel"
 
 PACKAGES = "${PN}-doc ${PN} ${PN}-dev ${PN}-dbg"
-FILES_${PN} = "/"
-FILES_${PN}-doc = "${docdir} ${datadir}/common-licenses"
+FILES:${PN} = "/"
+FILES:${PN}-doc = "${docdir} ${datadir}/common-licenses"
 
 PACKAGE_ARCH = "${MACHINE_ARCH}"
 
-CONFFILES_${PN} = "${sysconfdir}/fstab ${@['', '${sysconfdir}/hostname ${sysconfdir}/hosts'][(d.getVar('hostname') != '')]} ${sysconfdir}/shells"
-CONFFILES_${PN} += "${sysconfdir}/motd ${sysconfdir}/nsswitch.conf ${sysconfdir}/profile"
+CONFFILES:${PN} = "${sysconfdir}/fstab ${@['', '${sysconfdir}/hostname ${sysconfdir}/hosts'][(d.getVar('hostname') != '')]} ${sysconfdir}/shells"
+CONFFILES:${PN} += "${sysconfdir}/motd ${sysconfdir}/nsswitch.conf ${sysconfdir}/profile"
diff --git a/poky/meta/recipes-core/base-passwd/base-passwd_3.5.29.bb b/poky/meta/recipes-core/base-passwd/base-passwd_3.5.29.bb
index 65b3cd7..2926a37 100644
--- a/poky/meta/recipes-core/base-passwd/base-passwd_3.5.29.bb
+++ b/poky/meta/recipes-core/base-passwd/base-passwd_3.5.29.bb
@@ -73,7 +73,7 @@
 	chmod 0755 $dest
 }
 
-python populate_packages_prepend() {
+python populate_packages:prepend() {
     # Add in the preinst function for ${PN}
     # We have to do this here as prior to this, passwd/group.master
     # would be unavailable. We need to create these files at preinst
@@ -98,17 +98,17 @@
 """ + group + """EOF
 fi
 """
-    d.setVar(d.expand('pkg_preinst_${PN}'), preinst)
+    d.setVar(d.expand('pkg_preinst:${PN}'), preinst)
 }
 
 addtask do_package after do_populate_sysroot
 
-ALLOW_EMPTY_${PN} = "1"
+ALLOW_EMPTY:${PN} = "1"
 
 PACKAGES =+ "${PN}-update"
-FILES_${PN}-update = "${sbindir}/* ${datadir}/${PN}"
+FILES:${PN}-update = "${sbindir}/* ${datadir}/${PN}"
 
-pkg_postinst_${PN}-update () {
+pkg_postinst:${PN}-update () {
 #!/bin/sh
 if [ -n "$D" ]; then
 	exit 0
diff --git a/poky/meta/recipes-core/busybox/busybox-inittab_1.33.0.bb b/poky/meta/recipes-core/busybox/busybox-inittab_1.33.0.bb
index 3804f4f..be8c063 100644
--- a/poky/meta/recipes-core/busybox/busybox-inittab_1.33.0.bb
+++ b/poky/meta/recipes-core/busybox/busybox-inittab_1.33.0.bb
@@ -45,14 +45,14 @@
 
 }
 
-pkg_postinst_${PN} () {
+pkg_postinst:${PN} () {
 # run this on host and on target
 if [ "${SERIAL_CONSOLES_CHECK}" = "" ]; then
        exit 0
 fi
 }
 
-pkg_postinst_ontarget_${PN} () {
+pkg_postinst_ontarget:${PN} () {
 # run this on the target
 if [ -e /proc/consoles ]; then
         tmp="${SERIAL_CONSOLES_CHECK}"
@@ -76,10 +76,10 @@
 # Set PACKAGE_ARCH appropriately.
 PACKAGE_ARCH = "${MACHINE_ARCH}"
 
-FILES_${PN} = "${sysconfdir}/inittab"
-CONFFILES_${PN} = "${sysconfdir}/inittab"
+FILES:${PN} = "${sysconfdir}/inittab"
+CONFFILES:${PN} = "${sysconfdir}/inittab"
 
-RCONFLICTS_${PN} = "sysvinit-inittab"
+RCONFLICTS:${PN} = "sysvinit-inittab"
 
 USE_VT ?= "1"
 SYSVINIT_ENABLED_GETTYS ?= "1"
diff --git a/poky/meta/recipes-core/busybox/busybox.inc b/poky/meta/recipes-core/busybox/busybox.inc
index 47fcb59..d85e2a3 100644
--- a/poky/meta/recipes-core/busybox/busybox.inc
+++ b/poky/meta/recipes-core/busybox/busybox.inc
@@ -23,39 +23,39 @@
 
 PACKAGES =+ "${PN}-httpd ${PN}-udhcpd ${PN}-udhcpc ${PN}-syslog ${PN}-mdev ${PN}-hwclock"
 
-FILES_${PN}-httpd = "${sysconfdir}/init.d/busybox-httpd /srv/www"
-FILES_${PN}-syslog = "${sysconfdir}/init.d/syslog* ${sysconfdir}/syslog-startup.conf* ${sysconfdir}/syslog.conf* ${systemd_unitdir}/system/syslog.service ${sysconfdir}/default/busybox-syslog"
-FILES_${PN}-mdev = "${sysconfdir}/init.d/mdev ${sysconfdir}/mdev.conf ${sysconfdir}/mdev/*"
-FILES_${PN}-udhcpd = "${sysconfdir}/init.d/busybox-udhcpd"
-FILES_${PN}-udhcpc = "${sysconfdir}/udhcpc.d ${datadir}/udhcpc"
-FILES_${PN}-hwclock = "${sysconfdir}/init.d/hwclock.sh"
+FILES:${PN}-httpd = "${sysconfdir}/init.d/busybox-httpd /srv/www"
+FILES:${PN}-syslog = "${sysconfdir}/init.d/syslog* ${sysconfdir}/syslog-startup.conf* ${sysconfdir}/syslog.conf* ${systemd_unitdir}/system/syslog.service ${sysconfdir}/default/busybox-syslog"
+FILES:${PN}-mdev = "${sysconfdir}/init.d/mdev ${sysconfdir}/mdev.conf ${sysconfdir}/mdev/*"
+FILES:${PN}-udhcpd = "${sysconfdir}/init.d/busybox-udhcpd"
+FILES:${PN}-udhcpc = "${sysconfdir}/udhcpc.d ${datadir}/udhcpc"
+FILES:${PN}-hwclock = "${sysconfdir}/init.d/hwclock.sh"
 
 INITSCRIPT_PACKAGES = "${PN}-httpd ${PN}-syslog ${PN}-udhcpd ${PN}-mdev ${PN}-hwclock"
 
-INITSCRIPT_NAME_${PN}-httpd = "busybox-httpd"
-INITSCRIPT_NAME_${PN}-hwclock = "hwclock.sh"
-INITSCRIPT_NAME_${PN}-mdev = "mdev"
-INITSCRIPT_PARAMS_${PN}-mdev = "start 04 S ."
-INITSCRIPT_NAME_${PN}-syslog = "syslog"
-INITSCRIPT_NAME_${PN}-udhcpd = "busybox-udhcpd"
+INITSCRIPT_NAME:${PN}-httpd = "busybox-httpd"
+INITSCRIPT_NAME:${PN}-hwclock = "hwclock.sh"
+INITSCRIPT_NAME:${PN}-mdev = "mdev"
+INITSCRIPT_PARAMS:${PN}-mdev = "start 04 S ."
+INITSCRIPT_NAME:${PN}-syslog = "syslog"
+INITSCRIPT_NAME:${PN}-udhcpd = "busybox-udhcpd"
 
 SYSTEMD_PACKAGES = "${PN}-syslog"
-SYSTEMD_SERVICE_${PN}-syslog = "${@bb.utils.contains('SRC_URI', 'file://syslog.cfg', 'busybox-syslog.service', '', d)}"
+SYSTEMD_SERVICE:${PN}-syslog = "${@bb.utils.contains('SRC_URI', 'file://syslog.cfg', 'busybox-syslog.service', '', d)}"
 
-RDEPENDS_${PN}-syslog = "busybox"
-CONFFILES_${PN}-syslog = "${sysconfdir}/syslog-startup.conf"
-RCONFLICTS_${PN}-syslog = "rsyslog sysklogd syslog-ng"
+RDEPENDS:${PN}-syslog = "busybox"
+CONFFILES:${PN}-syslog = "${sysconfdir}/syslog-startup.conf"
+RCONFLICTS:${PN}-syslog = "rsyslog sysklogd syslog-ng"
 
-CONFFILES_${PN}-mdev = "${sysconfdir}/mdev.conf"
+CONFFILES:${PN}-mdev = "${sysconfdir}/mdev.conf"
 
-RRECOMMENDS_${PN} = "${PN}-udhcpc"
+RRECOMMENDS:${PN} = "${PN}-udhcpc"
 
-RDEPENDS_${PN} = "${@["", "busybox-inittab"][(d.getVar('VIRTUAL-RUNTIME_init_manager') == 'busybox')]}"
+RDEPENDS:${PN} = "${@["", "busybox-inittab"][(d.getVar('VIRTUAL-RUNTIME_init_manager') == 'busybox')]}"
 
 inherit cml1 systemd update-rc.d ptest
 
 # busybox's unzip test case needs zip command, which busybox itself does not provide
-RDEPENDS_${PN}-ptest = "zip"
+RDEPENDS:${PN}-ptest = "zip"
 
 # internal helper
 def busybox_cfg(feature, tokens, cnf, rem):
@@ -97,12 +97,12 @@
 
 python () {
   if "${OE_DEL}":
-    d.setVar('configmangle_append', "${OE_DEL}" + "\n")
+    d.setVar('configmangle:append', "${OE_DEL}" + "\n")
   if "${OE_FEATURES}":
-    d.setVar('configmangle_append',
+    d.setVar('configmangle:append',
                    "/^### DISTRO FEATURES$/a\\\n%s\n\n" %
                    ("\\n".join((d.expand("${OE_FEATURES}").split("\n")))))
-  d.setVar('configmangle_append',
+  d.setVar('configmangle:append',
                  "/^### CROSS$/a\\\n%s\n" %
                   ("\\n".join(["CONFIG_EXTRA_CFLAGS=\"${CFLAGS} ${HOST_CC_ARCH}\""
                         ])
@@ -356,7 +356,7 @@
 
 ALTERNATIVE_PRIORITY = "50"
 
-python do_package_prepend () {
+python do_package:prepend () {
     # We need to load the full set of busybox provides from the /etc/busybox.links
     # Use this to see the update-alternatives with the right information
 
@@ -373,9 +373,9 @@
             if alt_name == '[':
                 alt_name = 'lbracket'
             if alt_name == 'klogd' or alt_name == 'syslogd':
-                d.appendVar('ALTERNATIVE_%s-syslog' % (pn), ' ' + alt_name)
+                d.appendVar('ALTERNATIVE:%s-syslog' % (pn), ' ' + alt_name)
             else:
-                d.appendVar('ALTERNATIVE_%s' % (pn), ' ' + alt_name)
+                d.appendVar('ALTERNATIVE:%s' % (pn), ' ' + alt_name)
             d.setVarFlag('ALTERNATIVE_LINK_NAME', alt_name, alt_link_name)
             if os.path.exists('%s%s' % (dvar, target)):
                 d.setVarFlag('ALTERNATIVE_TARGET', alt_name, target)
@@ -395,7 +395,7 @@
 # These symlinks will later be updated by update-alternatives calls.
 # The update-alternatives.bbclass' postinst script runs firstly before other
 # postinst, but this part of code needs run firstly, so add this funtion.
-python populate_packages_updatealternatives_append() {
+python populate_packages_updatealternatives:append() {
     postinst = """
 test -n 2 > /dev/null || alias test='busybox test'
 if test "x$D" = "x"; then
@@ -422,10 +422,10 @@
 fi
 
 """
-    d.prependVar('pkg_postinst_%s' % pkg, postinst)
+    d.prependVar('pkg_postinst:%s' % pkg, postinst)
 }
 
-pkg_postinst_${PN}_prepend () {
+pkg_postinst:${PN}:prepend () {
         # Need path to saved utils, but they may have be removed on upgrade of busybox
         # Only use shell to get paths. Also capture if busybox was saved.
         BUSYBOX=""
@@ -441,7 +441,7 @@
         fi
 }
 
-pkg_postinst_${PN}_append () {
+pkg_postinst:${PN}:append () {
         # If busybox exists in the remove directory it is because it was the only shell left.
         if [ "x$D" = "x" ] ; then
            if [ "x$BUSYBOX" != "x" ] ; then
@@ -451,7 +451,7 @@
         fi
 } 
 
-pkg_prerm_${PN} () {
+pkg_prerm:${PN} () {
 	# This is so you can make busybox commit suicide - removing busybox with no other packages
 	# providing its files, this will make update-alternatives work, but the update-rc.d part
 	# for syslog, httpd and/or udhcpd will fail if there is no other package providing sh
@@ -481,7 +481,7 @@
         fi
 }
 
-pkg_postrm_${PN} () {
+pkg_postrm:${PN} () {
         # Add path to remove dir in case we removed our only grep
         if [ "x$D" = "x" ] ; then
            for busybox_rmdir in /tmp/busyboxrm-*; do
@@ -496,7 +496,7 @@
 	fi
 }
 
-pkg_prerm_${PN}-syslog () {
+pkg_prerm:${PN}-syslog () {
 	# remove syslog
 	if test "x$D" = "x"; then
 		if test "$1" = "upgrade" -o "$1" = "remove"; then
@@ -505,4 +505,4 @@
 	fi
 }
 
-RPROVIDES_${PN} += "${@bb.utils.contains('DISTRO_FEATURES', 'usrmerge', '/bin/sh /bin/ash', '', d)}"
+RPROVIDES:${PN} += "${@bb.utils.contains('DISTRO_FEATURES', 'usrmerge', '/bin/sh /bin/ash', '', d)}"
diff --git a/poky/meta/recipes-core/busybox/busybox_1.33.1.bb b/poky/meta/recipes-core/busybox/busybox_1.33.1.bb
index 4c2bc11..1e3e34e 100644
--- a/poky/meta/recipes-core/busybox/busybox_1.33.1.bb
+++ b/poky/meta/recipes-core/busybox/busybox_1.33.1.bb
@@ -50,6 +50,6 @@
            file://0001-gen_build_files-Use-C-locale-when-calling-sed-on-glo.patch \
            file://0001-mktemp-add-tmpdir-option.patch \
            "
-SRC_URI_append_libc-musl = " file://musl.cfg "
+SRC_URI:append:libc-musl = " file://musl.cfg "
 
 SRC_URI[tarball.sha256sum] = "12cec6bd2b16d8a9446dd16130f2b92982f1819f6e1c5f5887b6db03f5660d28"
diff --git a/poky/meta/recipes-core/coreutils/coreutils_8.32.bb b/poky/meta/recipes-core/coreutils/coreutils_8.32.bb
index dd271d4..f82572e 100644
--- a/poky/meta/recipes-core/coreutils/coreutils_8.32.bb
+++ b/poky/meta/recipes-core/coreutils/coreutils_8.32.bb
@@ -9,7 +9,7 @@
                     file://src/ls.c;beginline=1;endline=15;md5=b7d80abf5b279320fb0e4b1007ed108b \
                     "
 DEPENDS = "gmp libcap"
-DEPENDS_class-native = ""
+DEPENDS:class-native = ""
 
 inherit autotools gettext texinfo
 
@@ -31,21 +31,21 @@
 # runcon is not really a sandbox command, use `runcon ... setsid ...` to avoid this particular issue.
 CVE_CHECK_WHITELIST += "CVE-2016-2781"
 
-EXTRA_OECONF_class-native = "--without-gmp"
-EXTRA_OECONF_class-target = "--enable-install-program=arch,hostname --libexecdir=${libdir}"
-EXTRA_OECONF_class-nativesdk = "--enable-install-program=arch,hostname"
+EXTRA_OECONF:class-native = "--without-gmp"
+EXTRA_OECONF:class-target = "--enable-install-program=arch,hostname --libexecdir=${libdir}"
+EXTRA_OECONF:class-nativesdk = "--enable-install-program=arch,hostname"
 
 # acl and xattr are not default features
 #
-PACKAGECONFIG_class-target ??= "\
+PACKAGECONFIG:class-target ??= "\
     ${@bb.utils.filter('DISTRO_FEATURES', 'acl xattr', d)} \
 "
 
 # The lib/oe/path.py requires xattr
-PACKAGECONFIG_class-native ??= "xattr"
+PACKAGECONFIG:class-native ??= "xattr"
 
 # oe-core builds need xattr support
-PACKAGECONFIG_class-nativesdk ??= "xattr"
+PACKAGECONFIG:class-nativesdk ??= "xattr"
 
 # with, without, depends, rdepends
 #
@@ -71,16 +71,16 @@
 # coreutils-stdbuf without getting the rest of coreutils, but make
 # coreutils itself pull in stdbuf, so IMAGE_INSTALL += "coreutils"
 # always provides all coreutils
-PACKAGE_BEFORE_PN_class-target += "${@bb.utils.contains('PACKAGECONFIG', 'single-binary', '', 'coreutils-stdbuf', d)}"
-FILES_coreutils-stdbuf = "${bindir}/stdbuf ${libdir}/coreutils/libstdbuf.so"
-RDEPENDS_coreutils_class-target += "${@bb.utils.contains('PACKAGECONFIG', 'single-binary', '', 'coreutils-stdbuf', d)}"
+PACKAGE_BEFORE_PN:class-target += "${@bb.utils.contains('PACKAGECONFIG', 'single-binary', '', 'coreutils-stdbuf', d)}"
+FILES:coreutils-stdbuf = "${bindir}/stdbuf ${libdir}/coreutils/libstdbuf.so"
+RDEPENDS:coreutils:class-target += "${@bb.utils.contains('PACKAGECONFIG', 'single-binary', '', 'coreutils-stdbuf', d)}"
 
 # However, when the single-binary PACKAGECONFIG is used, stdbuf
 # functionality is built into the single coreutils binary, so there's
 # no point splitting /usr/bin/stdbuf to its own package. Instead, add
 # an RPROVIDE so that rdepending on coreutils-stdbuf will work
 # regardless of whether single-binary is in effect.
-RPROVIDES_coreutils += "${@bb.utils.contains('PACKAGECONFIG', 'single-binary', 'coreutils-stdbuf', '', d)}"
+RPROVIDES:coreutils += "${@bb.utils.contains('PACKAGECONFIG', 'single-binary', 'coreutils-stdbuf', '', d)}"
 
 # Let aclocal use the relative path for the m4 file rather than the
 # absolute since coreutils has a lot of m4 files, otherwise there might
@@ -89,20 +89,20 @@
 acpaths = "-I ./m4"
 
 # Deal with a separate builddir failure if src doesn't exist when creating version.c/version.h
-do_compile_prepend () {
+do_compile:prepend () {
 	mkdir -p ${B}/src
 }
 
-do_install_class-native() {
+do_install:class-native() {
 	autotools_do_install
 	# remove groups to fix conflict with shadow-native
 	rm -f ${D}${STAGING_BINDIR_NATIVE}/groups
 	# The return is a must since native doesn't need the
-	# do_install_append() in the below.
+	# do_install:append() in the below.
 	return
 }
 
-do_install_append() {
+do_install:append() {
 	for i in df mktemp nice printenv base64; do mv ${D}${bindir}/$i ${D}${bindir}/$i.${BPN}; done
 
 	install -d ${D}${base_bindir}
@@ -122,8 +122,8 @@
 ALTERNATIVE_PRIORITY = "100"
 # Make hostname's priority higher than busybox but lower than net-tools
 ALTERNATIVE_PRIORITY[hostname] = "90"
-ALTERNATIVE_${PN} = "lbracket ${bindir_progs} ${base_bindir_progs} ${sbindir_progs} base32 base64 nice printenv mktemp df"
-ALTERNATIVE_${PN}-doc = "base64.1 nice.1 mktemp.1 df.1 groups.1 kill.1 uptime.1 stat.1 hostname.1"
+ALTERNATIVE:${PN} = "lbracket ${bindir_progs} ${base_bindir_progs} ${sbindir_progs} base32 base64 nice printenv mktemp df"
+ALTERNATIVE:${PN}-doc = "base64.1 nice.1 mktemp.1 df.1 groups.1 kill.1 uptime.1 stat.1 hostname.1"
 
 ALTERNATIVE_LINK_NAME[hostname.1] = "${mandir}/man1/hostname.1"
 
@@ -166,12 +166,12 @@
 
 inherit ptest
 
-RDEPENDS_${PN}-ptest += "bash findutils gawk liberror-perl make perl perl-modules python3-core sed shadow"
+RDEPENDS:${PN}-ptest += "bash findutils gawk liberror-perl make perl perl-modules python3-core sed shadow"
 
 # -dev automatic dependencies fails as we don't want libmodule-build-perl-dev, its too heavy
 # may need tweaking if DEPENDS changes
-RRECOMMENDS_coreutils-dev[nodeprrecs] = "1"
-RRECOMMENDS_coreutils-dev = "acl-dev attr-dev gmp-dev libcap-dev bash-dev findutils-dev gawk-dev shadow-dev"
+RRECOMMENDS:coreutils-dev[nodeprrecs] = "1"
+RRECOMMENDS:coreutils-dev = "acl-dev attr-dev gmp-dev libcap-dev bash-dev findutils-dev gawk-dev shadow-dev"
 
 do_install_ptest () {
     install -d ${D}${PTEST_PATH}/tests
@@ -206,7 +206,7 @@
     sed -i s:@libdir@:${libdir}:g ${D}${PTEST_PATH}/run-ptest
 }
 
-FILES_${PN}-ptest += "${bindir}/getlimits"
+FILES:${PN}-ptest += "${bindir}/getlimits"
 
 # These are specific to Opensuse
 CVE_WHITELIST += "CVE-2013-0221 CVE-2013-0222 CVE-2013-0223"
diff --git a/poky/meta/recipes-core/dbus/dbus-glib_0.112.bb b/poky/meta/recipes-core/dbus/dbus-glib_0.112.bb
index 003c3ac..a03b2ad 100644
--- a/poky/meta/recipes-core/dbus/dbus-glib_0.112.bb
+++ b/poky/meta/recipes-core/dbus/dbus-glib_0.112.bb
@@ -8,7 +8,7 @@
 SECTION = "base"
 
 DEPENDS = "expat glib-2.0 virtual/libintl dbus-glib-native dbus"
-DEPENDS_class-native = "glib-2.0-native dbus-native"
+DEPENDS:class-native = "glib-2.0-native dbus-native"
 
 SRC_URI = "https://dbus.freedesktop.org/releases/dbus-glib/dbus-glib-${PV}.tar.gz \
            file://no-examples.patch \
@@ -24,16 +24,16 @@
 PACKAGECONFIG ??= ""
 PACKAGECONFIG[tests] = "--enable-tests,,,"
 
-EXTRA_OECONF_class-target = "--with-dbus-binding-tool=${STAGING_BINDIR_NATIVE}/dbus-binding-tool"
+EXTRA_OECONF:class-target = "--with-dbus-binding-tool=${STAGING_BINDIR_NATIVE}/dbus-binding-tool"
 
 PACKAGES += "${PN}-tests"
 
-FILES_${PN} = "${libdir}/lib*${SOLIBS}"
-FILES_${PN}-bash-completion += "${libexecdir}/dbus-bash-completion-helper"
-FILES_${PN}-dev += "${libdir}/dbus-1.0/include ${bindir}/dbus-glib-tool"
-FILES_${PN}-dev += "${bindir}/dbus-binding-tool"
+FILES:${PN} = "${libdir}/lib*${SOLIBS}"
+FILES:${PN}-bash-completion += "${libexecdir}/dbus-bash-completion-helper"
+FILES:${PN}-dev += "${libdir}/dbus-1.0/include ${bindir}/dbus-glib-tool"
+FILES:${PN}-dev += "${bindir}/dbus-binding-tool"
 
-RDEPENDS_${PN}-tests += "dbus-x11"
-FILES_${PN}-tests = "${datadir}/${BPN}/tests"
+RDEPENDS:${PN}-tests += "dbus-x11"
+FILES:${PN}-tests = "${datadir}/${BPN}/tests"
 
 BBCLASSEXTEND = "native"
diff --git a/poky/meta/recipes-core/dbus/dbus-test_1.12.20.bb b/poky/meta/recipes-core/dbus/dbus-test_1.12.20.bb
index 755c841..ae70301 100644
--- a/poky/meta/recipes-core/dbus/dbus-test_1.12.20.bb
+++ b/poky/meta/recipes-core/dbus/dbus-test_1.12.20.bb
@@ -10,7 +10,7 @@
 
 DEPENDS = "dbus glib-2.0"
 
-RDEPENDS_${PN}-dev = ""
+RDEPENDS:${PN}-dev = ""
 
 S="${WORKDIR}/dbus-${PV}"
 FILESEXTRAPATHS =. "${FILE_DIRNAME}/dbus:"
@@ -58,7 +58,7 @@
         sed -i -e 's;@PTEST_PATH@;${PTEST_PATH};g'  ${D}${PTEST_PATH}/run-ptest
 }
 
-RDEPENDS_${PN}-ptest += "bash make dbus"
-RDEPENDS_${PN}-ptest_remove = "${PN}"
+RDEPENDS:${PN}-ptest += "bash make dbus"
+RDEPENDS:${PN}-ptest:remove = "${PN}"
 
-PRIVATE_LIBS_${PN}-ptest = "libdbus-1.so.3"
+PRIVATE_LIBS:${PN}-ptest = "libdbus-1.so.3"
diff --git a/poky/meta/recipes-core/dbus/dbus.inc b/poky/meta/recipes-core/dbus/dbus.inc
index dcbcc0a..b237476 100644
--- a/poky/meta/recipes-core/dbus/dbus.inc
+++ b/poky/meta/recipes-core/dbus/dbus.inc
@@ -19,14 +19,14 @@
                 --enable-largefile \
                 --with-system-socket=/run/dbus/system_bus_socket \
                 "
-EXTRA_OECONF_append_class-target = " SYSTEMCTL=${base_bindir}/systemctl"
-EXTRA_OECONF_append_class-native = " --disable-selinux"
+EXTRA_OECONF:append:class-target = " SYSTEMCTL=${base_bindir}/systemctl"
+EXTRA_OECONF:append:class-native = " --disable-selinux"
 
 PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'systemd x11', d)} \
                    user-session \
                   "
-PACKAGECONFIG_class-native = ""
-PACKAGECONFIG_class-nativesdk = ""
+PACKAGECONFIG:class-native = ""
+PACKAGECONFIG:class-nativesdk = ""
 
 PACKAGECONFIG[systemd] = "--enable-systemd --with-systemdsystemunitdir=${systemd_system_unitdir},--disable-systemd --without-systemdsystemunitdir,systemd"
 PACKAGECONFIG[x11] = "--with-x --enable-x11-autolaunch,--without-x --disable-x11-autolaunch, virtual/libx11 libsm"
diff --git a/poky/meta/recipes-core/dbus/dbus_1.12.20.bb b/poky/meta/recipes-core/dbus/dbus_1.12.20.bb
index 2f6da67..4894720 100644
--- a/poky/meta/recipes-core/dbus/dbus_1.12.20.bb
+++ b/poky/meta/recipes-core/dbus/dbus_1.12.20.bb
@@ -7,10 +7,10 @@
 
 DEPENDS = "expat virtual/libintl autoconf-archive"
 PACKAGES += "${@bb.utils.contains('DISTRO_FEATURES', 'ptest', '${PN}-ptest', '', d)}"
-ALLOW_EMPTY_dbus-ptest = "1"
-RDEPENDS_dbus-ptest_class-target = "dbus-test-ptest"
-RDEPENDS_${PN} += "${PN}-common ${PN}-tools"
-RDEPENDS_${PN}_class-native = ""
+ALLOW_EMPTY:dbus-ptest = "1"
+RDEPENDS:dbus-ptest:class-target = "dbus-test-ptest"
+RDEPENDS:${PN} += "${PN}-common ${PN}-tools"
+RDEPENDS:${PN}:class-native = ""
 
 inherit useradd update-rc.d
 
@@ -25,22 +25,22 @@
 PACKAGES =+ "${PN}-lib ${PN}-common ${PN}-tools"
 
 USERADD_PACKAGES = "dbus-common"
-USERADD_PARAM_dbus-common = "--system --home ${localstatedir}/lib/dbus \
+USERADD_PARAM:dbus-common = "--system --home ${localstatedir}/lib/dbus \
                              --no-create-home --shell /bin/false \
                              --user-group messagebus"
 
-CONFFILES_${PN} = "${sysconfdir}/dbus-1/system.conf ${sysconfdir}/dbus-1/session.conf"
+CONFFILES:${PN} = "${sysconfdir}/dbus-1/system.conf ${sysconfdir}/dbus-1/session.conf"
 
-DEBIANNAME_${PN} = "dbus-1"
+DEBIANNAME:${PN} = "dbus-1"
 
 OLDPKGNAME = "dbus-x11"
-OLDPKGNAME_class-nativesdk = ""
+OLDPKGNAME:class-nativesdk = ""
 
 # for compatibility
-RPROVIDES_${PN} = "${OLDPKGNAME}"
-RREPLACES_${PN} += "${OLDPKGNAME}"
+RPROVIDES:${PN} = "${OLDPKGNAME}"
+RREPLACES:${PN} += "${OLDPKGNAME}"
 
-FILES_${PN} = "${bindir}/dbus-daemon* \
+FILES:${PN} = "${bindir}/dbus-daemon* \
                ${bindir}/dbus-cleanup-sockets \
                ${bindir}/dbus-launch \
                ${bindir}/dbus-run-session \
@@ -51,7 +51,7 @@
                ${systemd_user_unitdir} \
                ${nonarch_libdir}/tmpfiles.d/dbus.conf \
 "
-FILES_${PN}-common = "${sysconfdir}/dbus-1 \
+FILES:${PN}-common = "${sysconfdir}/dbus-1 \
                       ${datadir}/dbus-1/services \
                       ${datadir}/dbus-1/system-services \
                       ${datadir}/dbus-1/session.d \
@@ -64,17 +64,17 @@
                       ${systemd_user_unitdir}/sockets.target.wants \
                       ${nonarch_libdir}/sysusers.d/dbus.conf \
 "
-FILES_${PN}-tools = "${bindir}/dbus-uuidgen \
+FILES:${PN}-tools = "${bindir}/dbus-uuidgen \
                      ${bindir}/dbus-send \
                      ${bindir}/dbus-monitor \
                      ${bindir}/dbus-update-activation-environment \
 "
-FILES_${PN}-lib = "${libdir}/lib*.so.*"
-RRECOMMENDS_${PN}-lib = "${PN}"
-FILES_${PN}-dev += "${libdir}/dbus-1.0/include ${bindir}/dbus-test-tool ${datadir}/xml/dbus-1"
+FILES:${PN}-lib = "${libdir}/lib*.so.*"
+RRECOMMENDS:${PN}-lib = "${PN}"
+FILES:${PN}-dev += "${libdir}/dbus-1.0/include ${bindir}/dbus-test-tool ${datadir}/xml/dbus-1"
 
 PACKAGE_WRITE_DEPS += "${@bb.utils.contains('DISTRO_FEATURES','systemd sysvinit','systemd-systemctl-native','',d)}"
-pkg_postinst_dbus() {
+pkg_postinst:dbus() {
 	# If both systemd and sysvinit are enabled, mask the dbus-1 init script
         if ${@bb.utils.contains('DISTRO_FEATURES','systemd sysvinit','true','false',d)}; then
 		if [ -n "$D" ]; then
@@ -130,7 +130,7 @@
 	rm -rf ${D}${localstatedir}/run
 }
 
-do_install_class-native() {
+do_install:class-native() {
 	autotools_do_install
 
 	# dbus-launch has no X support so lets not install it in case the host
@@ -138,7 +138,7 @@
 	rm -f ${D}${bindir}/dbus-launch
 }
 
-do_install_class-nativesdk() {
+do_install:class-nativesdk() {
 	autotools_do_install
 
 	# dbus-launch has no X support so lets not install it in case the host
@@ -150,4 +150,4 @@
 }
 BBCLASSEXTEND = "native nativesdk"
 
-INSANE_SKIP_${PN}-ptest += "build-deps"
+INSANE_SKIP:${PN}-ptest += "build-deps"
diff --git a/poky/meta/recipes-core/dropbear/dropbear.inc b/poky/meta/recipes-core/dropbear/dropbear.inc
index ed3ef33..f2a490c 100644
--- a/poky/meta/recipes-core/dropbear/dropbear.inc
+++ b/poky/meta/recipes-core/dropbear/dropbear.inc
@@ -9,8 +9,8 @@
 LIC_FILES_CHKSUM = "file://LICENSE;md5=25cf44512b7bc8966a48b6b1a9b7605f"
 
 DEPENDS = "zlib virtual/crypt"
-RPROVIDES_${PN} = "ssh sshd"
-RCONFLICTS_${PN} = "openssh-sshd openssh"
+RPROVIDES:${PN} = "ssh sshd"
+RCONFLICTS:${PN} = "openssh-sshd openssh"
 
 DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}"
 
@@ -33,7 +33,7 @@
 	pam-plugin-permit \
 	pam-plugin-unix \
 	"
-RDEPENDS_${PN} += "${@bb.utils.contains('DISTRO_FEATURES', 'pam', '${PAM_PLUGINS}', '', d)}"
+RDEPENDS:${PN} += "${@bb.utils.contains('DISTRO_FEATURES', 'pam', '${PAM_PLUGINS}', '', d)}"
 
 inherit autotools update-rc.d systemd
 
@@ -42,7 +42,7 @@
 INITSCRIPT_NAME = "dropbear"
 INITSCRIPT_PARAMS = "defaults 10"
 
-SYSTEMD_SERVICE_${PN} = "dropbear.socket"
+SYSTEMD_SERVICE:${PN} = "dropbear.socket"
 
 SBINCOMMANDS = "dropbear dropbearkey dropbearconvert"
 BINCOMMANDS = "dbclient ssh scp"
@@ -60,7 +60,7 @@
 EXTRA_OECONF += "--disable-harden"
 
 # musl does not implement wtmp/logwtmp APIs
-EXTRA_OECONF_append_libc-musl = " --disable-wtmp --disable-lastlog"
+EXTRA_OECONF:append:libc-musl = " --disable-wtmp --disable-lastlog"
 
 do_install() {
 	install -d ${D}${sysconfdir} \
@@ -110,11 +110,11 @@
 inherit update-alternatives
 
 ALTERNATIVE_PRIORITY = "20"
-ALTERNATIVE_${PN} = "${@bb.utils.filter('BINCOMMANDS', 'scp ssh', d)}"
+ALTERNATIVE:${PN} = "${@bb.utils.filter('BINCOMMANDS', 'scp ssh', d)}"
 
 ALTERNATIVE_TARGET = "${sbindir}/dropbearmulti"
 
-pkg_postrm_append_${PN} () {
+pkg_postrm:${PN} () {
   if [ -f "${sysconfdir}/dropbear/dropbear_rsa_host_key" ]; then
         rm ${sysconfdir}/dropbear/dropbear_rsa_host_key
   fi
@@ -123,4 +123,4 @@
   fi
 }
 
-FILES_${PN} += "${bindir}"
+FILES:${PN} += "${bindir}"
diff --git a/poky/meta/recipes-core/ell/ell_0.41.bb b/poky/meta/recipes-core/ell/ell_0.41.bb
index 5fd3077..f6da957 100644
--- a/poky/meta/recipes-core/ell/ell_0.41.bb
+++ b/poky/meta/recipes-core/ell/ell_0.41.bb
@@ -19,6 +19,6 @@
            "
 SRC_URI[sha256sum] = "4e8dba6c53cf152dbd0fd1dc3d4c7b04abf79e20a948895f85943e586870505c"
 
-do_configure_prepend () {
+do_configure:prepend () {
     mkdir -p ${S}/build-aux
 }
diff --git a/poky/meta/recipes-core/expat/expat_2.4.1.bb b/poky/meta/recipes-core/expat/expat_2.4.1.bb
index 451158a..555dd0d 100644
--- a/poky/meta/recipes-core/expat/expat_2.4.1.bb
+++ b/poky/meta/recipes-core/expat/expat_2.4.1.bb
@@ -13,13 +13,13 @@
 
 SRC_URI[sha256sum] = "2f9b6a580b94577b150a7d5617ad4643a4301a6616ff459307df3e225bcfbf40"
 
-EXTRA_OECMAKE_class-native += "-DEXPAT_BUILD_DOCS=OFF"
+EXTRA_OECMAKE:class-native += "-DEXPAT_BUILD_DOCS=OFF"
 
-RDEPENDS_${PN}-ptest += "bash"
+RDEPENDS:${PN}-ptest += "bash"
 
 inherit cmake lib_package ptest
 
-do_install_ptest_class-target() {
+do_install_ptest:class-target() {
 	install -m 755 ${B}/tests/* ${D}${PTEST_PATH}
 }
 
diff --git a/poky/meta/recipes-core/gettext/gettext_0.21.bb b/poky/meta/recipes-core/gettext/gettext_0.21.bb
index b86e8d8..4247b48 100644
--- a/poky/meta/recipes-core/gettext/gettext_0.21.bb
+++ b/poky/meta/recipes-core/gettext/gettext_0.21.bb
@@ -9,10 +9,10 @@
 LIC_FILES_CHKSUM = "file://COPYING;md5=c678957b0c8e964aa6c70fd77641a71e"
 
 DEPENDS = "gettext-native virtual/libiconv"
-DEPENDS_class-native = "gettext-minimal-native"
+DEPENDS:class-native = "gettext-minimal-native"
 PROVIDES = "virtual/libintl virtual/gettext"
-PROVIDES_class-native = "virtual/gettext-native"
-RCONFLICTS_${PN} = "proxy-libintl"
+PROVIDES:class-native = "virtual/gettext-native"
+RCONFLICTS:${PN} = "proxy-libintl"
 SRC_URI = "${GNU_MIRROR}/gettext/gettext-${PV}.tar.gz \
            file://parallel.patch \
            file://use-pkgconfig.patch \
@@ -39,7 +39,7 @@
                  --without-git \
                  --cache-file=${B}/config.cache \
                 "
-EXTRA_OECONF_append_class-target = " \
+EXTRA_OECONF:append:class-target = " \
                  --with-bisonlocaledir=${datadir}/locale \
                  gt_cv_locale_fr_utf8=fr_FR \
                  gt_cv_locale_fr=fr_FR.ISO-8859-1 \
@@ -48,8 +48,8 @@
 "
 
 PACKAGECONFIG ??= "croco glib libxml"
-PACKAGECONFIG_class-native = ""
-PACKAGECONFIG_class-nativesdk = ""
+PACKAGECONFIG:class-native = ""
+PACKAGECONFIG:class-nativesdk = ""
 
 PACKAGECONFIG[croco] = "--without-included-libcroco,--with-included-libcroco,libcroco"
 PACKAGECONFIG[glib] = "--without-included-glib,--with-included-glib,glib-2.0"
@@ -62,7 +62,7 @@
 acpaths = '-I ${S}/gettext-runtime/m4 \
            -I ${S}/gettext-tools/m4'
 
-do_install_append_libc-musl () {
+do_install:append:libc-musl () {
 	rm -f ${D}${libdir}/charset.alias
 	rm -f ${D}${includedir}/libintl.h
 	rm -f ${D}${libdir}/libintl.la
@@ -79,29 +79,29 @@
 # 4       KiB /ep93xx/libgcc-s-dev_4.2.2-r2_ep93xx.ipk
 
 PACKAGES =+ "libgettextlib libgettextsrc"
-FILES_libgettextlib = "${libdir}/libgettextlib-*.so*"
-FILES_libgettextsrc = "${libdir}/libgettextsrc-*.so*"
+FILES:libgettextlib = "${libdir}/libgettextlib-*.so*"
+FILES:libgettextsrc = "${libdir}/libgettextsrc-*.so*"
 
 PACKAGES =+ "gettext-runtime gettext-runtime-dev gettext-runtime-doc"
 
-FILES_${PN} += "${libdir}/${BPN}/*"
+FILES:${PN} += "${libdir}/${BPN}/*"
 
 # The its/Makefile.am has defined:
 # itsdir = $(pkgdatadir)$(PACKAGE_SUFFIX)/its
 # not itsdir = $(pkgdatadir), so use wildcard to match the version.
-FILES_${PN} += "${datadir}/${BPN}-*/*"
+FILES:${PN} += "${datadir}/${BPN}-*/*"
 
-FILES_gettext-runtime = "${bindir}/gettext \
+FILES:gettext-runtime = "${bindir}/gettext \
                          ${bindir}/ngettext \
                          ${bindir}/envsubst \
                          ${bindir}/gettext.sh \
                          ${libdir}/libasprintf.so* \
                          ${libdir}/GNU.Gettext.dll \
                         "
-FILES_gettext-runtime-dev += "${libdir}/libasprintf.a \
+FILES:gettext-runtime-dev += "${libdir}/libasprintf.a \
                       ${includedir}/autosprintf.h \
                      "
-FILES_gettext-runtime-doc = "${mandir}/man1/gettext.* \
+FILES:gettext-runtime-doc = "${mandir}/man1/gettext.* \
                              ${mandir}/man1/ngettext.* \
                              ${mandir}/man1/envsubst.* \
                              ${mandir}/man1/.* \
@@ -116,11 +116,11 @@
                              ${infodir}/autosprintf.info \
                             "
 
-do_install_append() {
+do_install:append() {
     rm -f ${D}${libdir}/preloadable_libintl.so
 }
 
-do_install_append_class-native () {
+do_install:append:class-native () {
 	rm ${D}${datadir}/aclocal/*
 	rm ${D}${datadir}/gettext/config.rpath
 	rm ${D}${datadir}/gettext/po/Makefile.in.in
@@ -174,8 +174,8 @@
     fi
 }
 
-RDEPENDS_${PN}-ptest += "make xz"
-RDEPENDS_${PN}-ptest_append_libc-glibc = "\
+RDEPENDS:${PN}-ptest += "make xz"
+RDEPENDS:${PN}-ptest:append:libc-glibc = "\
     glibc-gconv-big5 \
     glibc-charmap-big5 \
     glibc-gconv-cp1251 \
@@ -196,12 +196,12 @@
     locale-base-fr-fr \
 "
 
-RRECOMMENDS_${PN}-ptest_append_libc-glibc = "\
+RRECOMMENDS:${PN}-ptest:append:libc-glibc = "\
     locale-base-de-de.iso-8859-1 \
     locale-base-fr-fr.iso-8859-1 \
 "
 
-INSANE_SKIP_${PN}-ptest += "ldflags"
-INSANE_SKIP_${PN}-ptest += "rpaths"
+INSANE_SKIP:${PN}-ptest += "ldflags"
+INSANE_SKIP:${PN}-ptest += "rpaths"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0_2.68.3.bb b/poky/meta/recipes-core/glib-2.0/glib-2.0_2.68.3.bb
index cbce6ea..c71dc81 100644
--- a/poky/meta/recipes-core/glib-2.0/glib-2.0_2.68.3.bb
+++ b/poky/meta/recipes-core/glib-2.0/glib-2.0_2.68.3.bb
@@ -20,7 +20,7 @@
            file://time-test.patch \
            file://0001-correctly-use-3-parameters-for-close_range.patch \
            "
-SRC_URI_append_class-native = " file://relocate-modules.patch"
+SRC_URI:append:class-native = " file://relocate-modules.patch"
 
 SRC_URI[sha256sum] = "e7e1a3c20c026109c45c9ec4a31d8dcebc22e86c69486993e565817d64be3138"
 
diff --git a/poky/meta/recipes-core/glib-2.0/glib.inc b/poky/meta/recipes-core/glib-2.0/glib.inc
index 71777bc..4859d28 100644
--- a/poky/meta/recipes-core/glib-2.0/glib.inc
+++ b/poky/meta/recipes-core/glib-2.0/glib.inc
@@ -30,7 +30,7 @@
 
 inherit meson gettext gtk-doc pkgconfig ptest-gnome upstream-version-is-even bash-completion gio-module-cache manpages
 
-DEPENDS_append_class-target = "${@' gtk-doc' if d.getVar('GTKDOC_ENABLED') == 'True' else ''}"
+DEPENDS:append:class-target = "${@' gtk-doc' if d.getVar('GTKDOC_ENABLED') == 'True' else ''}"
 
 GTKDOC_MESON_OPTION = "gtk_doc"
 
@@ -48,55 +48,55 @@
 
 EXTRA_OEMESON = "-Ddtrace=false -Dfam=false -Dsystemtap=false -Dselinux=disabled"
 
-do_configure_prepend() {
+do_configure:prepend() {
 	sed -i -e '1s,#!.*,#!${USRBINPATH}/env python3,' ${S}/gio/gdbus-2.0/codegen/gdbus-codegen.in
 }
 
-FILES_${PN} = "${libdir}/lib*${SOLIBS} \
+FILES:${PN} = "${libdir}/lib*${SOLIBS} \
                ${libdir}/gio \
                ${libexecdir}/*gio-querymodules \
                ${datadir}/glib-2.0/schemas"
 
-FILES_${PN}-utils += "${bindir}/glib-genmarshal \
+FILES:${PN}-utils += "${bindir}/glib-genmarshal \
                       ${bindir}/glib-gettextize \
                       ${bindir}/glib-mkenums \
                       ${bindir}/glib-compile-resources"
 
-FILES_${PN}-dev += "${libdir}/glib-2.0/include \
+FILES:${PN}-dev += "${libdir}/glib-2.0/include \
                     ${libdir}/gio/modules/lib*${SOLIBSDEV} \
                     ${libdir}/gio/modules/*.la \
                     ${datadir}/glib-2.0/gettext/po/Makefile.in.in \
                     ${datadir}/glib-2.0/schemas/gschema.dtd \
                     ${datadir}/glib-2.0/valgrind/glib.supp \
                     ${datadir}/gettext/its"
-FILES_${PN}-dbg += "${datadir}/glib-2.0/gdb ${datadir}/gdb"
-FILES_${PN}-codegen = "${datadir}/glib-2.0/codegen/*.py \
+FILES:${PN}-dbg += "${datadir}/glib-2.0/gdb ${datadir}/gdb"
+FILES:${PN}-codegen = "${datadir}/glib-2.0/codegen/*.py \
                        ${bindir}/gdbus-codegen"
-FILES_${PN}-utils = "${bindir}/*"
+FILES:${PN}-utils = "${bindir}/*"
 
 SHAREDMIMEDEP = "shared-mime-info"
-SHAREDMIMEDEP_class-native = ""
+SHAREDMIMEDEP:class-native = ""
 # When cross compiling for Windows we don't want to include this
-SHAREDMIMEDEP_mingw32 = ""
+SHAREDMIMEDEP:mingw32 = ""
 
-RRECOMMENDS_${PN} += "${SHAREDMIMEDEP}"
+RRECOMMENDS:${PN} += "${SHAREDMIMEDEP}"
 
-ARM_INSTRUCTION_SET_armv4 = "arm"
-ARM_INSTRUCTION_SET_armv5 = "arm"
+ARM_INSTRUCTION_SET:armv4 = "arm"
+ARM_INSTRUCTION_SET:armv5 = "arm"
 # Valgrind runtime detection works using hand-written assembly, which
 # doesn't support mips16e
-CPPFLAGS_append_class-target_mips16e = " -DNVALGRIND=1"
+CPPFLAGS:append:class-target:mips16e = " -DNVALGRIND=1"
 
 # GLib generally requires gettext to be present so for USE_NLS to yes.  For
 # native builds as i18n is disabled globally we have to add a gettext-native dependency.
-USE_NLS_class-target = "yes"
-USE_NLS_class-nativesdk = "yes"
-DEPENDS_append_class-native = " gettext-native"
+USE_NLS:class-target = "yes"
+USE_NLS:class-nativesdk = "yes"
+DEPENDS:append:class-native = " gettext-native"
 
 EXEEXT = ""
-EXEEXT_mingw32 = ".exe"
+EXEEXT:mingw32 = ".exe"
 
-do_install_append () {
+do_install:append () {
 	if [ -f ${D}${bindir}/gtester-report ]; then
 		sed ${D}${bindir}/gtester-report -i -e '1s|^#!.*|#!/usr/bin/env python3|'
 	fi
@@ -118,7 +118,7 @@
         mkdir -p ${D}${libdir}/gio/modules
 }
 
-do_install_append_class-target () {
+do_install:append:class-target () {
 	# Tests are only installed on targets, not native builds.  Separating this out
 	# keeps glib-2.0-native from depending on DISTRO_FEATURES
 	if [ -f ${D}${datadir}/installed-tests/glib/gdbus-serialization.test ]; then
@@ -134,18 +134,18 @@
 }
 
 # As we do not build python3 for windows, makes no sense to ship the script that's using it
-do_install_append_mingw32() {
+do_install:append:mingw32() {
         rm -f ${D}${bindir}/gtester-report
 }
 
 CODEGEN_PYTHON_RDEPENDS = "python3 python3-distutils python3-xml"
-CODEGEN_PYTHON_RDEPENDS_mingw32 = ""
+CODEGEN_PYTHON_RDEPENDS:mingw32 = ""
 
-RDEPENDS_${PN}-codegen += "${CODEGEN_PYTHON_RDEPENDS}"
+RDEPENDS:${PN}-codegen += "${CODEGEN_PYTHON_RDEPENDS}"
 
-RDEPENDS_${PN}-ptest += "${PN}-utils"
+RDEPENDS:${PN}-ptest += "${PN}-utils"
 
-RDEPENDS_${PN}-ptest += "\
+RDEPENDS:${PN}-ptest += "\
             coreutils \
             libgcc \
             dbus \
@@ -170,7 +170,7 @@
             ${PN}-codegen \
            "
 
-RDEPENDS_${PN}-ptest_append_libc-glibc = "\
+RDEPENDS:${PN}-ptest:append:libc-glibc = "\
             glibc-gconv-utf-16 \
             glibc-charmap-utf-8 \
             glibc-gconv-cp1255 \
diff --git a/poky/meta/recipes-core/glib-networking/glib-networking_2.68.1.bb b/poky/meta/recipes-core/glib-networking/glib-networking_2.68.1.bb
index fac0408..9a8ff38 100644
--- a/poky/meta/recipes-core/glib-networking/glib-networking_2.68.1.bb
+++ b/poky/meta/recipes-core/glib-networking/glib-networking_2.68.1.bb
@@ -25,14 +25,14 @@
 
 SRC_URI += "file://run-ptest"
 
-FILES_${PN} += "\
+FILES:${PN} += "\
                 ${libdir}/gio/modules/libgio*.so \
                 ${datadir}/dbus-1/services/ \
                 ${systemd_user_unitdir} \
                 "
-FILES_${PN}-dev += "${libdir}/gio/modules/libgio*.la"
-FILES_${PN}-staticdev += "${libdir}/gio/modules/libgio*.a"
+FILES:${PN}-dev += "${libdir}/gio/modules/libgio*.la"
+FILES:${PN}-staticdev += "${libdir}/gio/modules/libgio*.a"
 
-RDEPENDS_${PN}-ptest += "bash"
+RDEPENDS:${PN}-ptest += "bash"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-core/glibc/glibc-common.inc b/poky/meta/recipes-core/glibc/glibc-common.inc
index 41ff7e9..782b260 100644
--- a/poky/meta/recipes-core/glibc/glibc-common.inc
+++ b/poky/meta/recipes-core/glibc/glibc-common.inc
@@ -13,13 +13,13 @@
 
 INHIBIT_DEFAULT_DEPS = "1"
 
-ARM_INSTRUCTION_SET_armv4 = "arm"
-ARM_INSTRUCTION_SET_armv5 = "arm"
-ARM_INSTRUCTION_SET_armv6 = "arm"
+ARM_INSTRUCTION_SET:armv4 = "arm"
+ARM_INSTRUCTION_SET:armv5 = "arm"
+ARM_INSTRUCTION_SET:armv6 = "arm"
 #
 # We will skip parsing glibc when target system C library selection is not glibc
 # this helps in easing out parsing for non-glibc system libraries
 #
-COMPATIBLE_HOST_libc-musl_class-target = "null"
+COMPATIBLE_HOST:libc-musl:class-target = "null"
 
 PV = "2.33"
diff --git a/poky/meta/recipes-core/glibc/glibc-ld.inc b/poky/meta/recipes-core/glibc/glibc-ld.inc
index 041ffbb..da8fcc4 100644
--- a/poky/meta/recipes-core/glibc/glibc-ld.inc
+++ b/poky/meta/recipes-core/glibc/glibc-ld.inc
@@ -16,5 +16,5 @@
 
 EGLIBC_KNOWN_INTERPRETER_NAMES = "${@glibc_dl_info(d)['ldconfig']}"
 RTLDLIST = "${@glibc_dl_info(d)['lddrewrite']}"
-RTLDLIST_class-nativesdk = "${base_libdir}/${@bb.utils.contains('SDK_ARCH', 'x86_64', 'ld-linux-x86-64.so.2', 'ld-linux.so.2', d)}"
+RTLDLIST:class-nativesdk = "${base_libdir}/${@bb.utils.contains('SDK_ARCH', 'x86_64', 'ld-linux-x86-64.so.2', 'ld-linux.so.2', d)}"
 glibc_dl_info[vardepsexclude] = "OVERRIDES"
diff --git a/poky/meta/recipes-core/glibc/glibc-locale.inc b/poky/meta/recipes-core/glibc/glibc-locale.inc
index ef06389..b8de7d3 100644
--- a/poky/meta/recipes-core/glibc/glibc-locale.inc
+++ b/poky/meta/recipes-core/glibc/glibc-locale.inc
@@ -9,7 +9,7 @@
 # ERROR: objcopy failed with exit code 127 (cmd was 'i586-webos-linux-objcopy' --only-keep-debug 'glibc-locale/2.17-r0/package/usr/lib/gconv/IBM1166.so' 'glibc-locale/2.17-r0/package/usr/lib/gconv/.debug/IBM1166.so')
 # ERROR: Function failed: split_and_strip_files
 BINUTILSDEP = "virtual/${MLPREFIX}${TARGET_PREFIX}binutils:do_populate_sysroot"
-BINUTILSDEP_class-nativesdk = "virtual/${TARGET_PREFIX}binutils-crosssdk:do_populate_sysroot"
+BINUTILSDEP:class-nativesdk = "virtual/${TARGET_PREFIX}binutils-crosssdk:do_populate_sysroot"
 do_package[depends] += "${BINUTILSDEP}"
 
 DEPENDS += "virtual/libc"
@@ -21,7 +21,7 @@
 
 # default to disabled
 ENABLE_BINARY_LOCALE_GENERATION ?= "0"
-ENABLE_BINARY_LOCALE_GENERATION_pn-nativesdk-glibc-locale = "1"
+ENABLE_BINARY_LOCALE_GENERATION:pn-nativesdk-glibc-locale = "1"
 
 #enable locale generation on these arches
 # BINARY_LOCALE_ARCHES is a space separated list of regular expressions
@@ -40,32 +40,32 @@
                     ^${MLPREFIX}glibc-gconv$"
 
 # Create a glibc-binaries package
-ALLOW_EMPTY_${BPN}-binaries = "1"
+ALLOW_EMPTY:${BPN}-binaries = "1"
 PACKAGES += "${BPN}-binaries"
-RRECOMMENDS_${BPN}-binaries =  "${@" ".join([p for p in d.getVar('PACKAGES').split() if p.find("glibc-binary") != -1])}"
+RRECOMMENDS:${BPN}-binaries =  "${@" ".join([p for p in d.getVar('PACKAGES').split() if p.find("glibc-binary") != -1])}"
 
 # Create a glibc-charmaps package
-ALLOW_EMPTY_${BPN}-charmaps = "1"
+ALLOW_EMPTY:${BPN}-charmaps = "1"
 PACKAGES += "${BPN}-charmaps"
-RRECOMMENDS_${BPN}-charmaps =  "${@" ".join([p for p in d.getVar('PACKAGES').split() if p.find("glibc-charmap") != -1])}"
+RRECOMMENDS:${BPN}-charmaps =  "${@" ".join([p for p in d.getVar('PACKAGES').split() if p.find("glibc-charmap") != -1])}"
 
 # Create a glibc-gconvs package
-ALLOW_EMPTY_${BPN}-gconvs = "1"
+ALLOW_EMPTY:${BPN}-gconvs = "1"
 PACKAGES += "${BPN}-gconvs"
-RRECOMMENDS_${BPN}-gconvs =  "${@" ".join([p for p in d.getVar('PACKAGES').split() if p.find("glibc-gconv") != -1])}"
+RRECOMMENDS:${BPN}-gconvs =  "${@" ".join([p for p in d.getVar('PACKAGES').split() if p.find("glibc-gconv") != -1])}"
 
 # Create a glibc-localedatas package
-ALLOW_EMPTY_${BPN}-localedatas = "1"
+ALLOW_EMPTY:${BPN}-localedatas = "1"
 PACKAGES += "${BPN}-localedatas"
-RRECOMMENDS_${BPN}-localedatas =  "${@" ".join([p for p in d.getVar('PACKAGES').split() if p.find("glibc-localedata") != -1])}"
+RRECOMMENDS:${BPN}-localedatas =  "${@" ".join([p for p in d.getVar('PACKAGES').split() if p.find("glibc-localedata") != -1])}"
 
-DESCRIPTION_localedef = "glibc: compile locale definition files"
+DESCRIPTION:localedef = "glibc: compile locale definition files"
 
 # glibc-gconv is dynamically added into PACKAGES, thus
-# FILES_glibc-gconv will not be automatically extended in multilib.
-# Explicitly add ${MLPREFIX} for FILES_glibc-gconv.
-FILES_${MLPREFIX}glibc-gconv = "${libdir}/gconv/*"
-FILES_localedef = "${bindir}/localedef"
+# FILES:glibc-gconv will not be automatically extended in multilib.
+# Explicitly add ${MLPREFIX} for FILES:glibc-gconv.
+FILES:${MLPREFIX}glibc-gconv = "${libdir}/gconv/*"
+FILES:localedef = "${bindir}/localedef"
 
 LOCALETREESRC = "${COMPONENTS_DIR}/${PACKAGE_ARCH}/glibc-stash-locale"
 
diff --git a/poky/meta/recipes-core/glibc/glibc-mtrace.inc b/poky/meta/recipes-core/glibc/glibc-mtrace.inc
index ef9d60e..734a566 100644
--- a/poky/meta/recipes-core/glibc/glibc-mtrace.inc
+++ b/poky/meta/recipes-core/glibc/glibc-mtrace.inc
@@ -2,8 +2,8 @@
 
 SUMMARY = "mtrace utility provided by glibc"
 DESCRIPTION = "mtrace utility provided by glibc"
-RDEPENDS_${PN} = "perl"
-RPROVIDES_${PN} = "libc-mtrace"
+RDEPENDS:${PN} = "perl"
+RPROVIDES:${PN} = "libc-mtrace"
 
 SRC = "${COMPONENTS_DIR}/${PACKAGE_ARCH}/glibc-stash-locale/scripts"
 
diff --git a/poky/meta/recipes-core/glibc/glibc-package.inc b/poky/meta/recipes-core/glibc/glibc-package.inc
index 92e5dba..4bf5038 100644
--- a/poky/meta/recipes-core/glibc/glibc-package.inc
+++ b/poky/meta/recipes-core/glibc/glibc-package.inc
@@ -3,67 +3,67 @@
 PACKAGES = "${PN}-dbg catchsegv sln nscd ldconfig ldd tzcode glibc-thread-db ${PN}-pic libcidn libmemusage libnss-db libsegfault ${PN}-pcprofile libsotruss ${PN} ${PN}-utils glibc-extra-nss ${PN}-dev ${PN}-staticdev ${PN}-doc ${PN}-src"
 
 # The ld.so in this glibc supports the GNU_HASH
-RPROVIDES_${PN} = "eglibc rtld(GNU_HASH)"
-RPROVIDES_${PN}-utils = "eglibc-utils"
-RPROVIDES_${PN}-mtrace = "eglibc-mtrace libc-mtrace"
-RPROVIDES_${PN}-pic = "eglibc-pic"
-RPROVIDES_${PN}-dev = "eglibc-dev libc6-dev virtual-libc-dev"
-RPROVIDES_${PN}-staticdev = "eglibc-staticdev"
-RPROVIDES_${PN}-doc = "eglibc-doc"
-RPROVIDES_glibc-extra-nss = "eglibc-extra-nss"
-RPROVIDES_glibc-thread-db = "eglibc-thread-db"
-RPROVIDES_${PN}-pcprofile = "eglibc-pcprofile"
-RPROVIDES_${PN}-dbg = "eglibc-dbg"
+RPROVIDES:${PN} = "eglibc rtld(GNU_HASH)"
+RPROVIDES:${PN}-utils = "eglibc-utils"
+RPROVIDES:${PN}-mtrace = "eglibc-mtrace libc-mtrace"
+RPROVIDES:${PN}-pic = "eglibc-pic"
+RPROVIDES:${PN}-dev = "eglibc-dev libc6-dev virtual-libc-dev"
+RPROVIDES:${PN}-staticdev = "eglibc-staticdev"
+RPROVIDES:${PN}-doc = "eglibc-doc"
+RPROVIDES:glibc-extra-nss = "eglibc-extra-nss"
+RPROVIDES:glibc-thread-db = "eglibc-thread-db"
+RPROVIDES:${PN}-pcprofile = "eglibc-pcprofile"
+RPROVIDES:${PN}-dbg = "eglibc-dbg"
 libc_baselibs = "${base_libdir}/libc.so.* ${base_libdir}/libc-*.so ${base_libdir}/libm*.so.* ${base_libdir}/libm-*.so ${base_libdir}/libmvec-*.so ${base_libdir}/ld*.so.* ${base_libdir}/ld-*.so ${base_libdir}/libpthread*.so.* ${base_libdir}/libpthread-*.so ${base_libdir}/libresolv*.so.* ${base_libdir}/libresolv-*.so ${base_libdir}/librt*.so.* ${base_libdir}/librt-*.so ${base_libdir}/libutil*.so.* ${base_libdir}/libutil-*.so ${base_libdir}/libnsl*.so.* ${base_libdir}/libnsl-*.so ${base_libdir}/libnss_files*.so.* ${base_libdir}/libnss_files-*.so ${base_libdir}/libnss_compat*.so.* ${base_libdir}/libnss_compat-*.so ${base_libdir}/libnss_dns*.so.* ${base_libdir}/libnss_dns-*.so ${base_libdir}/libdl*.so.* ${base_libdir}/libdl-*.so ${base_libdir}/libanl*.so.* ${base_libdir}/libanl-*.so ${base_libdir}/libBrokenLocale*.so.* ${base_libdir}/libBrokenLocale-*.so"
 ARCH_DYNAMIC_LOADER = ""
 # The aarch64 ABI says the dynamic linker -must- be
 # /lib/ld-linux-aarch64{,_be}.so.1. With usrmerge, that may mean that
 # we need to install it in /usr/lib.
-ARCH_DYNAMIC_LOADER_aarch64 = "ld-linux-${TARGET_ARCH}.so.1"
-libc_baselibs_append = " ${@oe.utils.conditional('ARCH_DYNAMIC_LOADER', '', '', '${root_prefix}/lib/${ARCH_DYNAMIC_LOADER}', d)}"
-INSANE_SKIP_${PN}_append_aarch64 = " libdir"
+ARCH_DYNAMIC_LOADER:aarch64 = "ld-linux-${TARGET_ARCH}.so.1"
+libc_baselibs:append = " ${@oe.utils.conditional('ARCH_DYNAMIC_LOADER', '', '', '${root_prefix}/lib/${ARCH_DYNAMIC_LOADER}', d)}"
+INSANE_SKIP:${PN}:append:aarch64 = " libdir"
 
-FILES_${PN} = "${libc_baselibs} ${libexecdir}/* ${sysconfdir}/ld.so.conf"
-RRECOMMENDS_${PN} = "${@bb.utils.contains('DISTRO_FEATURES', 'ldconfig', '${MLPREFIX}ldconfig', '', d)}"
-FILES_ldconfig = "${base_sbindir}/ldconfig"
-FILES_ldd = "${bindir}/ldd"
-FILES_libsegfault = "${base_libdir}/libSegFault*"
-FILES_libcidn = "${base_libdir}/libcidn-*.so ${base_libdir}/libcidn.so.*"
-FILES_libmemusage = "${base_libdir}/libmemusage.so"
-FILES_libnss-db = "${base_libdir}/libnss_db.so.* ${base_libdir}/libnss_db-*.so ${localstatedir}/db/Makefile ${localstatedir}/db/makedbs.sh"
-RDEPENDS_libnss-db = "${PN}-utils"
-FILES_glibc-extra-nss = "${base_libdir}/libnss_*-*.so ${base_libdir}/libnss_*.so.*"
-FILES_sln = "${base_sbindir}/sln"
-FILES_${PN}-pic = "${libdir}/*_pic.a ${libdir}/*_pic.map ${libdir}/libc_pic/*.o"
-FILES_libsotruss = "${libdir}/audit/sotruss-lib.so"
+FILES:${PN} = "${libc_baselibs} ${libexecdir}/* ${sysconfdir}/ld.so.conf"
+RRECOMMENDS:${PN} = "${@bb.utils.contains('DISTRO_FEATURES', 'ldconfig', '${MLPREFIX}ldconfig', '', d)}"
+FILES:ldconfig = "${base_sbindir}/ldconfig"
+FILES:ldd = "${bindir}/ldd"
+FILES:libsegfault = "${base_libdir}/libSegFault*"
+FILES:libcidn = "${base_libdir}/libcidn-*.so ${base_libdir}/libcidn.so.*"
+FILES:libmemusage = "${base_libdir}/libmemusage.so"
+FILES:libnss-db = "${base_libdir}/libnss_db.so.* ${base_libdir}/libnss_db-*.so ${localstatedir}/db/Makefile ${localstatedir}/db/makedbs.sh"
+RDEPENDS:libnss-db = "${PN}-utils"
+FILES:glibc-extra-nss = "${base_libdir}/libnss_*-*.so ${base_libdir}/libnss_*.so.*"
+FILES:sln = "${base_sbindir}/sln"
+FILES:${PN}-pic = "${libdir}/*_pic.a ${libdir}/*_pic.map ${libdir}/libc_pic/*.o"
+FILES:libsotruss = "${libdir}/audit/sotruss-lib.so"
 FILES_SOLIBSDEV = "${libdir}/lib*${SOLIBSDEV}"
-FILES_${PN}-dev += "${libdir}/*_nonshared.a ${base_libdir}/*_nonshared.a ${base_libdir}/*.o ${datadir}/aclocal"
-RDEPENDS_${PN}-dev = "linux-libc-headers-dev"
-FILES_${PN}-staticdev += "${libdir}/*.a ${base_libdir}/*.a"
-FILES_nscd = "${sbindir}/nscd* ${sysconfdir}/init.d/nscd ${systemd_unitdir}/system/nscd* ${sysconfdir}/tmpfiles.d/nscd.conf \
+FILES:${PN}-dev += "${libdir}/*_nonshared.a ${base_libdir}/*_nonshared.a ${base_libdir}/*.o ${datadir}/aclocal"
+RDEPENDS:${PN}-dev = "linux-libc-headers-dev"
+FILES:${PN}-staticdev += "${libdir}/*.a ${base_libdir}/*.a"
+FILES:nscd = "${sbindir}/nscd* ${sysconfdir}/init.d/nscd ${systemd_unitdir}/system/nscd* ${sysconfdir}/tmpfiles.d/nscd.conf \
               ${sysconfdir}/nscd.conf ${sysconfdir}/default/volatiles/98_nscd ${localstatedir}/db/nscd"
-FILES_${PN}-mtrace = "${bindir}/mtrace"
-FILES_tzcode = "${bindir}/tzselect ${sbindir}/zic ${bindir}/zdump"
-FILES_${PN}-utils = "${bindir}/* ${sbindir}/*"
-FILES_catchsegv = "${bindir}/catchsegv"
-RDEPENDS_catchsegv = "libsegfault"
-FILES_${PN}-pcprofile = "${base_libdir}/libpcprofile.so"
-FILES_glibc-thread-db = "${base_libdir}/libthread_db.so.* ${base_libdir}/libthread_db-*.so"
-RPROVIDES_${PN}-dev += "libc-dev"
-RPROVIDES_${PN}-staticdev += "libc-staticdev"
+FILES:${PN}-mtrace = "${bindir}/mtrace"
+FILES:tzcode = "${bindir}/tzselect ${sbindir}/zic ${bindir}/zdump"
+FILES:${PN}-utils = "${bindir}/* ${sbindir}/*"
+FILES:catchsegv = "${bindir}/catchsegv"
+RDEPENDS:catchsegv = "libsegfault"
+FILES:${PN}-pcprofile = "${base_libdir}/libpcprofile.so"
+FILES:glibc-thread-db = "${base_libdir}/libthread_db.so.* ${base_libdir}/libthread_db-*.so"
+RPROVIDES:${PN}-dev += "libc-dev"
+RPROVIDES:${PN}-staticdev += "libc-staticdev"
 
-SUMMARY_sln = "The static ln"
-DESCRIPTION_sln = "Similar to the 'ln' utility, but statically linked.  sln is useful to make symbolic links to dynamic libraries if the dynamic linking system, for some reason, is not functional."
-SUMMARY_nscd = "Name service cache daemon"
-DESCRIPTION_nscd = "nscd, name service cache daemon, caches name service lookups for the passwd, group and hosts information.  It can damatically improvide performance with remote, such as NIS or NIS+, name services."
-SUMMARY_glibc-extra-nss = "hesiod, NIS and NIS+ nss libraries"
-DESCRIPTION_glibc-extra-nss = "glibc: nis, nisplus and hesiod search services."
-SUMMARY_ldd = "print shared library dependencies"
-DESCRIPTION_ldd = "${bindir}/ldd prints shared library dependencies for each program or shared library specified on the command line."
-SUMMARY_${PN}-utils = "Miscellaneous utilities provided by glibc"
-DESCRIPTION_${PN}-utils = "Miscellaneous utilities including getconf, iconv, locale, gencat, ..."
-DESCRIPTION_libsotruss = "Library to support sotruss which traces calls through PLTs"
-DESCRIPTION_tzcode = "tzcode, timezone zoneinfo utils -- zic, zdump, tzselect"
+SUMMARY:sln = "The static ln"
+DESCRIPTION:sln = "Similar to the 'ln' utility, but statically linked.  sln is useful to make symbolic links to dynamic libraries if the dynamic linking system, for some reason, is not functional."
+SUMMARY:nscd = "Name service cache daemon"
+DESCRIPTION:nscd = "nscd, name service cache daemon, caches name service lookups for the passwd, group and hosts information.  It can damatically improvide performance with remote, such as NIS or NIS+, name services."
+SUMMARY:glibc-extra-nss = "hesiod, NIS and NIS+ nss libraries"
+DESCRIPTION:glibc-extra-nss = "glibc: nis, nisplus and hesiod search services."
+SUMMARY:ldd = "print shared library dependencies"
+DESCRIPTION:ldd = "${bindir}/ldd prints shared library dependencies for each program or shared library specified on the command line."
+SUMMARY:${PN}-utils = "Miscellaneous utilities provided by glibc"
+DESCRIPTION:${PN}-utils = "Miscellaneous utilities including getconf, iconv, locale, gencat, ..."
+DESCRIPTION:libsotruss = "Library to support sotruss which traces calls through PLTs"
+DESCRIPTION:tzcode = "tzcode, timezone zoneinfo utils -- zic, zdump, tzselect"
 
 inherit multilib_header
 
@@ -125,7 +125,7 @@
         return "--without-fp"
     return ""
 
-do_install_append_class-target() {
+do_install:append:class-target() {
 	if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
 		install -d ${D}${sysconfdir}/tmpfiles.d
 		echo "d /run/nscd 755 root root -" \
@@ -139,15 +139,15 @@
 	fi
 
 }
-do_install_append_aarch64 () {
+do_install:append:aarch64 () {
 	do_install_armmultilib
 }
 
-do_install_append_arm () {
+do_install:append:arm () {
 	do_install_armmultilib
 }
 
-do_install_append_armeb () {
+do_install:append:armeb () {
 	do_install_armmultilib
 }
 
@@ -252,26 +252,26 @@
 	stash_locale_cleanup ${PKGD}
 }
 
-python populate_packages_prepend () {
+python populate_packages:prepend () {
     if d.getVar('DEBIAN_NAMES'):
         pkgs = d.getVar('PACKAGES').split()
         bpn = d.getVar('BPN')
         prefix = d.getVar('MLPREFIX') or ""
         # Set the base package...
-        d.setVar('PKG_' + prefix + bpn, prefix + 'libc6')
+        d.setVar('PKG:' + prefix + bpn, prefix + 'libc6')
         libcprefix = prefix + bpn + '-'
         for p in pkgs:
             # And all the subpackages.
             if p.startswith(libcprefix):
                 renamed = p.replace(bpn, 'libc6', 1)
-                d.setVar('PKG_' + p, renamed)
+                d.setVar('PKG:' + p, renamed)
         # For backward compatibility with old -dbg package
-        d.appendVar('RPROVIDES_' + libcprefix + 'dbg', ' ' + prefix + 'libc-dbg')
-        d.appendVar('RCONFLICTS_' + libcprefix + 'dbg', ' ' + prefix + 'libc-dbg')
-        d.appendVar('RREPLACES_' + libcprefix + 'dbg', ' ' + prefix + 'libc-dbg')
+        d.appendVar('RPROVIDES:' + libcprefix + 'dbg', ' ' + prefix + 'libc-dbg')
+        d.appendVar('RCONFLICTS:' + libcprefix + 'dbg', ' ' + prefix + 'libc-dbg')
+        d.appendVar('RREPLACES:' + libcprefix + 'dbg', ' ' + prefix + 'libc-dbg')
 }
 
-pkg_postinst_nscd () {
+pkg_postinst:nscd () {
 	if [ -z "$D" ]; then
 		if command -v systemd-tmpfiles >/dev/null; then
 			systemd-tmpfiles --create ${sysconfdir}/tmpfiles.d/nscd.conf
@@ -280,7 +280,7 @@
 		fi
 	fi
 }
-CONFFILES_nscd="${sysconfdir}/nscd.conf"
+CONFFILES:nscd="${sysconfdir}/nscd.conf"
 
 SYSTEMD_PACKAGES = "nscd"
-SYSTEMD_SERVICE_nscd = "nscd.service"
+SYSTEMD_SERVICE:nscd = "nscd.service"
diff --git a/poky/meta/recipes-core/glibc/glibc-scripts.inc b/poky/meta/recipes-core/glibc/glibc-scripts.inc
index 14a14e4..47216ae 100644
--- a/poky/meta/recipes-core/glibc/glibc-scripts.inc
+++ b/poky/meta/recipes-core/glibc/glibc-scripts.inc
@@ -2,7 +2,7 @@
 
 SUMMARY = "utility scripts provided by glibc"
 DESCRIPTION = "utility scripts provided by glibc"
-RDEPENDS_${PN} = "bash glibc-mtrace"
+RDEPENDS:${PN} = "bash glibc-mtrace"
 
 SRC = "${COMPONENTS_DIR}/${PACKAGE_ARCH}/glibc-stash-locale/scripts"
 
@@ -17,7 +17,7 @@
 
 # sotruss script requires sotruss-lib.so (given by libsotruss package), 
 # to produce trace of the library calls.
-RDEPENDS_${PN} += "libsotruss"
+RDEPENDS:${PN} += "libsotruss"
 
 # Don't scan for CVEs as glibc will be scanned
 CVE_PRODUCT = ""
diff --git a/poky/meta/recipes-core/glibc/glibc-testsuite_2.33.bb b/poky/meta/recipes-core/glibc/glibc-testsuite_2.33.bb
index 659d313..72aa332 100644
--- a/poky/meta/recipes-core/glibc/glibc-testsuite_2.33.bb
+++ b/poky/meta/recipes-core/glibc/glibc-testsuite_2.33.bb
@@ -3,7 +3,7 @@
 EXCLUDE_FROM_WORLD = "1"
 
 # handle PN differences
-FILESEXTRAPATHS_prepend := "${THISDIR}/glibc:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/glibc:"
 
 # strip provides
 PROVIDES = ""
@@ -20,7 +20,7 @@
 DEPENDS += "glibc-locale libgcc gcc-runtime"
 
 # remove the initial depends
-DEPENDS_remove = "libgcc-initial"
+DEPENDS:remove = "libgcc-initial"
 
 inherit qemu
 
diff --git a/poky/meta/recipes-core/glibc/glibc.inc b/poky/meta/recipes-core/glibc/glibc.inc
index 7d14306..04e6db9 100644
--- a/poky/meta/recipes-core/glibc/glibc.inc
+++ b/poky/meta/recipes-core/glibc/glibc.inc
@@ -24,10 +24,10 @@
 "
 
 # ifunc doesn't appear to work on mips, casuses libbfd assertion failures
-CACHED_CONFIGUREVARS_append_mipsarch = " libc_cv_ld_gnu_indirect_function=no"
+CACHED_CONFIGUREVARS:append:mipsarch = " libc_cv_ld_gnu_indirect_function=no"
 
 GLIBC_EXTRA_OECONF ?= ""
-GLIBC_EXTRA_OECONF_class-nativesdk = ""
+GLIBC_EXTRA_OECONF:class-nativesdk = ""
 
 # glibc uses PARALLELMFLAGS variable to pass parallel build info so transfer
 # PARALLEL_MAKE into PARALLELMFLAGS and empty out PARALLEL_MAKE
@@ -41,12 +41,12 @@
 # ensure make uses /bin/bash
 EXTRA_OEMAKE += "SHELL=/bin/bash"
 
-do_configure_prepend() {
+do_configure:prepend() {
 	sed -e "s#@BASH@#/bin/sh#" -i ${S}/elf/ldd.bash.in
 }
 
 # Enable backtrace from abort()
-do_configure_append_arm () {
+do_configure:append:arm () {
 	echo "CFLAGS-abort.c = -fasynchronous-unwind-tables" >> ${B}/configparms
 	echo "CFLAGS-raise.c = -fasynchronous-unwind-tables" >> ${B}/configparms
 }
diff --git a/poky/meta/recipes-core/glibc/glibc/CVE-2021-33574.patch b/poky/meta/recipes-core/glibc/glibc/CVE-2021-33574.patch
new file mode 100644
index 0000000..fd73b23
--- /dev/null
+++ b/poky/meta/recipes-core/glibc/glibc/CVE-2021-33574.patch
@@ -0,0 +1,61 @@
+From 42d359350510506b87101cf77202fefcbfc790cb Mon Sep 17 00:00:00 2001
+From: Andreas Schwab <schwab@linux-m68k.org>
+Date: Thu, 27 May 2021 12:49:47 +0200
+Subject: [PATCH] Use __pthread_attr_copy in mq_notify (bug 27896)
+
+Make a deep copy of the pthread attribute object to remove a potential
+use-after-free issue.
+
+Upstream-Status: Backport [https://sourceware.org/git/?p=glibc.git;a=commit;h=42d359350510506b87101cf77202fefcbfc790cb]
+CVE: CVE-2021-33574
+Signed-off-by: Vinay Kumar <vinay.m.engg@gmail.com>
+---
+diff --git a/sysdeps/unix/sysv/linux/mq_notify.c b/sysdeps/unix/sysv/linux/mq_notify.c
+index cc575a0cdd8..6f46d29d1dc 100644
+--- a/sysdeps/unix/sysv/linux/mq_notify.c
++++ b/sysdeps/unix/sysv/linux/mq_notify.c
+@@ -133,8 +133,11 @@ helper_thread (void *arg)
+ 	    (void) __pthread_barrier_wait (&notify_barrier);
+ 	}
+       else if (data.raw[NOTIFY_COOKIE_LEN - 1] == NOTIFY_REMOVED)
+-	/* The only state we keep is the copy of the thread attributes.  */
+-	free (data.attr);
++	{
++	  /* The only state we keep is the copy of the thread attributes.  */
++	  pthread_attr_destroy (data.attr);
++	  free (data.attr);
++	}
+     }
+   return NULL;
+ }
+@@ -255,8 +258,14 @@ mq_notify (mqd_t mqdes, const struct sigevent *notification)
+       if (data.attr == NULL)
+ 	return -1;
+ 
+-      memcpy (data.attr, notification->sigev_notify_attributes,
+-	      sizeof (pthread_attr_t));
++      int ret = __pthread_attr_copy (data.attr,
++				     notification->sigev_notify_attributes);
++      if (ret != 0)
++	{
++	  free (data.attr);
++	  __set_errno (ret);
++	  return -1;
++	}
+     }
+ 
+   /* Construct the new request.  */
+@@ -269,8 +278,11 @@ mq_notify (mqd_t mqdes, const struct sigevent *notification)
+   int retval = INLINE_SYSCALL (mq_notify, 2, mqdes, &se);
+ 
+   /* If it failed, free the allocated memory.  */
+-  if (__glibc_unlikely (retval != 0))
+-    free (data.attr);
++  if (retval != 0 && data.attr != NULL)
++    {
++      pthread_attr_destroy (data.attr);
++      free (data.attr);
++    }
+ 
+   return retval;
+ }
diff --git a/poky/meta/recipes-core/glibc/glibc_2.33.bb b/poky/meta/recipes-core/glibc/glibc_2.33.bb
index 925efe8..67eb3f0 100644
--- a/poky/meta/recipes-core/glibc/glibc_2.33.bb
+++ b/poky/meta/recipes-core/glibc/glibc_2.33.bb
@@ -19,7 +19,7 @@
 DEPENDS += "gperf-native bison-native make-native"
 
 NATIVESDKFIXES ?= ""
-NATIVESDKFIXES_class-nativesdk = "\
+NATIVESDKFIXES:class-nativesdk = "\
            file://0003-nativesdk-glibc-Look-for-host-system-ld.so.cache-as-.patch \
            file://0004-nativesdk-glibc-Fix-buffer-overrun-with-a-relocated-.patch \
            file://0005-nativesdk-glibc-Raise-the-size-of-arrays-containing-.patch \
@@ -57,6 +57,7 @@
            file://0029-wordsize.h-Unify-the-header-between-arm-and-aarch64.patch \
            file://0030-powerpc-Do-not-ask-compiler-for-finding-arch.patch \
            file://mte-backports.patch \
+           file://CVE-2021-33574.patch \
            "
 S = "${WORKDIR}/git"
 B = "${WORKDIR}/build-${TARGET_SYS}"
@@ -89,14 +90,14 @@
 
 EXTRA_OECONF += "${@get_libc_fpu_setting(bb, d)}"
 
-EXTRA_OECONF_append_x86 = " --enable-cet"
-EXTRA_OECONF_append_x86-64 = " --enable-cet"
+EXTRA_OECONF:append:x86 = " --enable-cet"
+EXTRA_OECONF:append:x86-64 = " --enable-cet"
 
 PACKAGECONFIG ??= "nscd memory-tagging"
 PACKAGECONFIG[nscd] = "--enable-nscd,--disable-nscd"
 PACKAGECONFIG[memory-tagging] = "--enable-memory-tagging,--disable-memory-tagging"
 
-do_patch_append() {
+do_patch:append() {
     bb.build.exec_func('do_fix_readlib_c', d)
 }
 
diff --git a/poky/meta/recipes-core/ifupdown/ifupdown_0.8.36.bb b/poky/meta/recipes-core/ifupdown/ifupdown_0.8.36.bb
index 0daf50a..1d01701 100644
--- a/poky/meta/recipes-core/ifupdown/ifupdown_0.8.36.bb
+++ b/poky/meta/recipes-core/ifupdown/ifupdown_0.8.36.bb
@@ -51,7 +51,7 @@
 }
 
 ALTERNATIVE_PRIORITY = "100"
-ALTERNATIVE_${PN} = "ifup ifdown"
+ALTERNATIVE:${PN} = "ifup ifdown"
 
 ALTERNATIVE_LINK_NAME[ifup] = "${base_sbindir}/ifup"
 ALTERNATIVE_LINK_NAME[ifdown] = "${base_sbindir}/ifdown"
diff --git a/poky/meta/recipes-core/images/build-appliance-image_15.0.0.bb b/poky/meta/recipes-core/images/build-appliance-image_15.0.0.bb
index 1176311..17e06a0 100644
--- a/poky/meta/recipes-core/images/build-appliance-image_15.0.0.bb
+++ b/poky/meta/recipes-core/images/build-appliance-image_15.0.0.bb
@@ -34,7 +34,7 @@
 RECIPE_NO_UPDATE_REASON = "Recipe is recursive and handled as part of the release process"
 BA_INCLUDE_SOURCES ??= "0"
 
-IMAGE_CMD_ext4_append () {
+IMAGE_CMD:ext4:append () {
 	# We don't need to reserve much space for root, 0.5% is more than enough
 	tune2fs -m 0.5 ${IMGDEPLOYDIR}/${IMAGE_NAME}.rootfs.ext4
 }
diff --git a/poky/meta/recipes-core/images/core-image-minimal.bb b/poky/meta/recipes-core/images/core-image-minimal.bb
index 19f27f8..84343ad 100644
--- a/poky/meta/recipes-core/images/core-image-minimal.bb
+++ b/poky/meta/recipes-core/images/core-image-minimal.bb
@@ -9,4 +9,4 @@
 inherit core-image
 
 IMAGE_ROOTFS_SIZE ?= "8192"
-IMAGE_ROOTFS_EXTRA_SPACE_append = "${@bb.utils.contains("DISTRO_FEATURES", "systemd", " + 4096", "", d)}"
+IMAGE_ROOTFS_EXTRA_SPACE:append = "${@bb.utils.contains("DISTRO_FEATURES", "systemd", " + 4096", "", d)}"
diff --git a/poky/meta/recipes-core/init-ifupdown/init-ifupdown_1.0.bb b/poky/meta/recipes-core/init-ifupdown/init-ifupdown_1.0.bb
index b6fc8a4..741da32 100644
--- a/poky/meta/recipes-core/init-ifupdown/init-ifupdown_1.0.bb
+++ b/poky/meta/recipes-core/init-ifupdown/init-ifupdown_1.0.bb
@@ -29,13 +29,13 @@
 	install -m 0755 ${WORKDIR}/nfsroot ${D}${sysconfdir}/network/if-pre-up.d
 }
 
-do_install_append_qemuall () {
+do_install:append:qemuall () {
 	# Disable network manager on machines that commonly do NFS booting
 	touch ${D}${sysconfdir}/network/nm-disabled-eth0
 }
 
 PACKAGE_ARCH = "${MACHINE_ARCH}"
-RDEPENDS_${PN} = "netbase"
-RCONFLICTS_${PN} = "netbase (< 1:5.0)"
+RDEPENDS:${PN} = "netbase"
+RCONFLICTS:${PN} = "netbase (< 1:5.0)"
 
-CONFFILES_${PN} = "${sysconfdir}/network/interfaces"
+CONFFILES:${PN} = "${sysconfdir}/network/interfaces"
diff --git a/poky/meta/recipes-core/initrdscripts/initramfs-boot_1.0.bb b/poky/meta/recipes-core/initrdscripts/initramfs-boot_1.0.bb
index 29ec5ec..ab460ac 100644
--- a/poky/meta/recipes-core/initrdscripts/initramfs-boot_1.0.bb
+++ b/poky/meta/recipes-core/initrdscripts/initramfs-boot_1.0.bb
@@ -18,4 +18,4 @@
 
 inherit allarch
 
-FILES_${PN} += "/init /dev/console"
+FILES:${PN} += "/init /dev/console"
diff --git a/poky/meta/recipes-core/initrdscripts/initramfs-framework/setup-live b/poky/meta/recipes-core/initrdscripts/initramfs-framework/setup-live
index 4c79f41..7e92f93 100644
--- a/poky/meta/recipes-core/initrdscripts/initramfs-framework/setup-live
+++ b/poky/meta/recipes-core/initrdscripts/initramfs-framework/setup-live
@@ -1,4 +1,4 @@
-#/bin/sh
+#!/bin/sh
 # Copyright (C) 2011 O.S. Systems Software LTDA.
 # Licensed on MIT
 
diff --git a/poky/meta/recipes-core/initrdscripts/initramfs-framework_1.0.bb b/poky/meta/recipes-core/initrdscripts/initramfs-framework_1.0.bb
index c53a0c0..9e8c1dc 100644
--- a/poky/meta/recipes-core/initrdscripts/initramfs-framework_1.0.bb
+++ b/poky/meta/recipes-core/initrdscripts/initramfs-framework_1.0.bb
@@ -1,8 +1,8 @@
 SUMMARY = "Modular initramfs system"
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
-RDEPENDS_${PN} += "${VIRTUAL-RUNTIME_base-utils}"
-RRECOMMENDS_${PN} = "${VIRTUAL-RUNTIME_base-utils-syslog}"
+RDEPENDS:${PN} += "${VIRTUAL-RUNTIME_base-utils}"
+RRECOMMENDS:${PN} = "${VIRTUAL-RUNTIME_base-utils-syslog}"
 
 PR = "r4"
 
@@ -31,7 +31,7 @@
     install -m 0755 ${WORKDIR}/rootfs ${D}/init.d/90-rootfs
     install -m 0755 ${WORKDIR}/finish ${D}/init.d/99-finish
 
-	# exec
+    # exec
     install -m 0755 ${WORKDIR}/exec ${D}/init.d/89-exec
 
     # mdev
@@ -66,7 +66,7 @@
             initramfs-module-lvm \
            "
 
-FILES_${PN}-base = "/init /init.d/99-finish /dev"
+FILES:${PN}-base = "/init /init.d/99-finish /dev"
 
 # 99-finish in base depends on some other module which mounts
 # the rootfs, like 90-rootfs. To replace that default, use
@@ -74,36 +74,36 @@
 # initramfs recipe and install something else, or install
 # something that runs earlier (for example, a 89-my-rootfs)
 # and mounts the rootfs. Then 90-rootfs will proceed immediately.
-RRECOMMENDS_${PN}-base += "initramfs-module-rootfs"
+RRECOMMENDS:${PN}-base += "initramfs-module-rootfs"
 
-SUMMARY_initramfs-module-exec = "initramfs support for easy execution of applications"
-RDEPENDS_initramfs-module-exec = "${PN}-base"
-FILES_initramfs-module-exec = "/init.d/89-exec"
+SUMMARY:initramfs-module-exec = "initramfs support for easy execution of applications"
+RDEPENDS:initramfs-module-exec = "${PN}-base"
+FILES:initramfs-module-exec = "/init.d/89-exec"
 
-SUMMARY_initramfs-module-mdev = "initramfs support for mdev"
-RDEPENDS_initramfs-module-mdev = "${PN}-base busybox-mdev"
-FILES_initramfs-module-mdev = "/init.d/01-mdev"
+SUMMARY:initramfs-module-mdev = "initramfs support for mdev"
+RDEPENDS:initramfs-module-mdev = "${PN}-base busybox-mdev"
+FILES:initramfs-module-mdev = "/init.d/01-mdev"
 
-SUMMARY_initramfs-module-udev = "initramfs support for udev"
-RDEPENDS_initramfs-module-udev = "${PN}-base udev"
-FILES_initramfs-module-udev = "/init.d/01-udev"
+SUMMARY:initramfs-module-udev = "initramfs support for udev"
+RDEPENDS:initramfs-module-udev = "${PN}-base udev"
+FILES:initramfs-module-udev = "/init.d/01-udev"
 
-SUMMARY_initramfs-module-e2fs = "initramfs support for ext4/ext3/ext2 filesystems"
-RDEPENDS_initramfs-module-e2fs = "${PN}-base"
-FILES_initramfs-module-e2fs = "/init.d/10-e2fs"
+SUMMARY:initramfs-module-e2fs = "initramfs support for ext4/ext3/ext2 filesystems"
+RDEPENDS:initramfs-module-e2fs = "${PN}-base"
+FILES:initramfs-module-e2fs = "/init.d/10-e2fs"
 
-SUMMARY_initramfs-module-nfsrootfs = "initramfs support for locating and mounting the root partition via nfs"
-RDEPENDS_initramfs-module-nfsrootfs = "${PN}-base"
-FILES_initramfs-module-nfsrootfs = "/init.d/85-nfsrootfs"
+SUMMARY:initramfs-module-nfsrootfs = "initramfs support for locating and mounting the root partition via nfs"
+RDEPENDS:initramfs-module-nfsrootfs = "${PN}-base"
+FILES:initramfs-module-nfsrootfs = "/init.d/85-nfsrootfs"
 
-SUMMARY_initramfs-module-rootfs = "initramfs support for locating and mounting the root partition"
-RDEPENDS_initramfs-module-rootfs = "${PN}-base"
-FILES_initramfs-module-rootfs = "/init.d/90-rootfs"
+SUMMARY:initramfs-module-rootfs = "initramfs support for locating and mounting the root partition"
+RDEPENDS:initramfs-module-rootfs = "${PN}-base"
+FILES:initramfs-module-rootfs = "/init.d/90-rootfs"
 
-SUMMARY_initramfs-module-debug = "initramfs dynamic debug support"
-RDEPENDS_initramfs-module-debug = "${PN}-base"
-FILES_initramfs-module-debug = "/init.d/00-debug"
+SUMMARY:initramfs-module-debug = "initramfs dynamic debug support"
+RDEPENDS:initramfs-module-debug = "${PN}-base"
+FILES:initramfs-module-debug = "/init.d/00-debug"
 
-SUMMARY_initramfs-module-lvm = "initramfs lvm rootfs support"
-RDEPENDS_initramfs-module-lvm = "${PN}-base"
-FILES_initramfs-module-lvm = "/init.d/09-lvm"
+SUMMARY:initramfs-module-lvm = "initramfs lvm rootfs support"
+RDEPENDS:initramfs-module-lvm = "${PN}-base"
+FILES:initramfs-module-lvm = "/init.d/09-lvm"
diff --git a/poky/meta/recipes-core/initrdscripts/initramfs-live-boot-tiny_1.0.bb b/poky/meta/recipes-core/initrdscripts/initramfs-live-boot-tiny_1.0.bb
index 7a9a8ec..59a5305 100644
--- a/poky/meta/recipes-core/initrdscripts/initramfs-live-boot-tiny_1.0.bb
+++ b/poky/meta/recipes-core/initrdscripts/initramfs-live-boot-tiny_1.0.bb
@@ -2,7 +2,7 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
 DEPENDS = "virtual/kernel"
-RDEPENDS_${PN} = "busybox-mdev"
+RDEPENDS:${PN} = "busybox-mdev"
 SRC_URI = "file://init-live.sh"
 
 PR = "r12"
@@ -15,7 +15,7 @@
         mknod -m 622 ${D}/dev/console c 5 1
 }
 
-FILES_${PN} += " /init /dev "
+FILES:${PN} += " /init /dev "
 
 # Due to kernel dependency
 PACKAGE_ARCH = "${MACHINE_ARCH}"
diff --git a/poky/meta/recipes-core/initrdscripts/initramfs-live-boot_1.0.bb b/poky/meta/recipes-core/initrdscripts/initramfs-live-boot_1.0.bb
index 57b3025..8f56d7a 100644
--- a/poky/meta/recipes-core/initrdscripts/initramfs-live-boot_1.0.bb
+++ b/poky/meta/recipes-core/initrdscripts/initramfs-live-boot_1.0.bb
@@ -2,7 +2,7 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
 DEPENDS = "virtual/kernel"
-RDEPENDS_${PN} = "udev udev-extraconf"
+RDEPENDS:${PN} = "udev udev-extraconf"
 SRC_URI = "file://init-live.sh"
 
 PR = "r12"
@@ -15,7 +15,7 @@
         mknod -m 622 ${D}/dev/console c 5 1
 }
 
-FILES_${PN} += " /init /dev "
+FILES:${PN} += " /init /dev "
 
 # Due to kernel dependency
 PACKAGE_ARCH = "${MACHINE_ARCH}"
diff --git a/poky/meta/recipes-core/initrdscripts/initramfs-live-install-efi-testfs_1.0.bb b/poky/meta/recipes-core/initrdscripts/initramfs-live-install-efi-testfs_1.0.bb
index c03bd2d..495eccb 100644
--- a/poky/meta/recipes-core/initrdscripts/initramfs-live-install-efi-testfs_1.0.bb
+++ b/poky/meta/recipes-core/initrdscripts/initramfs-live-install-efi-testfs_1.0.bb
@@ -3,7 +3,7 @@
 LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
 SRC_URI = "file://init-install-efi-testfs.sh"
 
-RDEPENDS_${PN} = "parted e2fsprogs-mke2fs dosfstools"
+RDEPENDS:${PN} = "parted e2fsprogs-mke2fs dosfstools"
 
 S = "${WORKDIR}"
 
@@ -12,5 +12,5 @@
 }
 
 INHIBIT_DEFAULT_DEPS = "1"
-FILES_${PN} = " /install-efi.sh "
+FILES:${PN} = " /install-efi.sh "
 COMPATIBLE_HOST = "(i.86|x86_64).*-linux"
diff --git a/poky/meta/recipes-core/initrdscripts/initramfs-live-install-efi_1.0.bb b/poky/meta/recipes-core/initrdscripts/initramfs-live-install-efi_1.0.bb
index cc842ae..ecbd567 100644
--- a/poky/meta/recipes-core/initrdscripts/initramfs-live-install-efi_1.0.bb
+++ b/poky/meta/recipes-core/initrdscripts/initramfs-live-install-efi_1.0.bb
@@ -5,8 +5,8 @@
 
 PR = "r1"
 
-RDEPENDS_${PN} = "parted e2fsprogs-mke2fs dosfstools util-linux-blkid ${VIRTUAL-RUNTIME_base-utils}"
-RRECOMMENDS_${PN} = "${VIRTUAL-RUNTIME_base-utils-syslog}"
+RDEPENDS:${PN} = "parted e2fsprogs-mke2fs dosfstools util-linux-blkid ${VIRTUAL-RUNTIME_base-utils}"
+RRECOMMENDS:${PN} = "${VIRTUAL-RUNTIME_base-utils-syslog}"
 
 S = "${WORKDIR}"
 
@@ -20,6 +20,6 @@
 #inherit allarch
 INHIBIT_DEFAULT_DEPS = "1"
 
-FILES_${PN} = " /install-efi.sh "
+FILES:${PN} = " /install-efi.sh "
 
 COMPATIBLE_HOST = "(i.86.*|x86_64.*|aarch64.*)-linux"
diff --git a/poky/meta/recipes-core/initrdscripts/initramfs-live-install-testfs_1.0.bb b/poky/meta/recipes-core/initrdscripts/initramfs-live-install-testfs_1.0.bb
index 937bfd4..d347e32 100644
--- a/poky/meta/recipes-core/initrdscripts/initramfs-live-install-testfs_1.0.bb
+++ b/poky/meta/recipes-core/initrdscripts/initramfs-live-install-testfs_1.0.bb
@@ -3,7 +3,7 @@
 LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
 SRC_URI = "file://init-install-testfs.sh"
 
-RDEPENDS_${PN} = "grub parted e2fsprogs-mke2fs"
+RDEPENDS:${PN} = "grub parted e2fsprogs-mke2fs"
 
 S = "${WORKDIR}"
 
@@ -12,5 +12,5 @@
 }
 
 INHIBIT_DEFAULT_DEPS = "1"
-FILES_${PN} = " /install.sh "
+FILES:${PN} = " /install.sh "
 COMPATIBLE_HOST = "(i.86|x86_64).*-linux"
diff --git a/poky/meta/recipes-core/initrdscripts/initramfs-live-install_1.0.bb b/poky/meta/recipes-core/initrdscripts/initramfs-live-install_1.0.bb
index 48fc0c4..674d49e 100644
--- a/poky/meta/recipes-core/initrdscripts/initramfs-live-install_1.0.bb
+++ b/poky/meta/recipes-core/initrdscripts/initramfs-live-install_1.0.bb
@@ -7,8 +7,8 @@
 
 S = "${WORKDIR}"
 
-RDEPENDS_${PN} = "grub parted e2fsprogs-mke2fs util-linux-blkid ${VIRTUAL-RUNTIME_base-utils}"
-RRECOMMENDS_${PN} = "${VIRTUAL-RUNTIME_base-utils-syslog}"
+RDEPENDS:${PN} = "grub parted e2fsprogs-mke2fs util-linux-blkid ${VIRTUAL-RUNTIME_base-utils}"
+RRECOMMENDS:${PN} = "${VIRTUAL-RUNTIME_base-utils-syslog}"
 
 do_install() {
         install -m 0755 ${WORKDIR}/init-install.sh ${D}/install.sh
@@ -20,6 +20,6 @@
 #inherit allarch
 INHIBIT_DEFAULT_DEPS = "1"
 
-FILES_${PN} = " /install.sh "
+FILES:${PN} = " /install.sh "
 
 COMPATIBLE_HOST = "(i.86.*|x86_64.*|aarch64.*)-linux"
diff --git a/poky/meta/recipes-core/initrdscripts/initramfs-module-install-efi_1.0.bb b/poky/meta/recipes-core/initrdscripts/initramfs-module-install-efi_1.0.bb
index 523138c..fb19484 100644
--- a/poky/meta/recipes-core/initrdscripts/initramfs-module-install-efi_1.0.bb
+++ b/poky/meta/recipes-core/initrdscripts/initramfs-module-install-efi_1.0.bb
@@ -1,8 +1,8 @@
 SUMMARY = "initramfs-framework module for EFI installation option"
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
-RDEPENDS_${PN} = "initramfs-framework-base parted e2fsprogs-mke2fs dosfstools util-linux-blkid ${VIRTUAL-RUNTIME_base-utils}"
-RRECOMMENDS_${PN} = "${VIRTUAL-RUNTIME_base-utils-syslog}"
+RDEPENDS:${PN} = "initramfs-framework-base parted e2fsprogs-mke2fs dosfstools util-linux-blkid ${VIRTUAL-RUNTIME_base-utils}"
+RRECOMMENDS:${PN} = "${VIRTUAL-RUNTIME_base-utils-syslog}"
 
 PR = "r4"
 
@@ -15,4 +15,4 @@
     install -m 0755 ${WORKDIR}/init-install-efi.sh ${D}/init.d/install-efi.sh
 }
 
-FILES_${PN} = "/init.d/install-efi.sh"
+FILES:${PN} = "/init.d/install-efi.sh"
diff --git a/poky/meta/recipes-core/initrdscripts/initramfs-module-install_1.0.bb b/poky/meta/recipes-core/initrdscripts/initramfs-module-install_1.0.bb
index 56898e8..4d48d54 100644
--- a/poky/meta/recipes-core/initrdscripts/initramfs-module-install_1.0.bb
+++ b/poky/meta/recipes-core/initrdscripts/initramfs-module-install_1.0.bb
@@ -1,13 +1,13 @@
 SUMMARY = "initramfs-framework module for installation option"
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
-RDEPENDS_${PN} = "initramfs-framework-base grub parted e2fsprogs-mke2fs util-linux-blkid ${VIRTUAL-RUNTIME_base-utils}"
-RRECOMMENDS_${PN} = "${VIRTUAL-RUNTIME_base-utils-syslog}"
+RDEPENDS:${PN} = "initramfs-framework-base grub parted e2fsprogs-mke2fs util-linux-blkid ${VIRTUAL-RUNTIME_base-utils}"
+RRECOMMENDS:${PN} = "${VIRTUAL-RUNTIME_base-utils-syslog}"
 
 # The same restriction as grub
 COMPATIBLE_HOST = '(x86_64.*|i.86.*|arm.*|aarch64.*)-(linux.*|freebsd.*)'
-COMPATIBLE_HOST_armv7a = 'null'
-COMPATIBLE_HOST_armv7ve = 'null'
+COMPATIBLE_HOST:armv7a = 'null'
+COMPATIBLE_HOST:armv7ve = 'null'
 
 PR = "r1"
 
@@ -20,4 +20,4 @@
     install -m 0755 ${WORKDIR}/init-install.sh ${D}/init.d/install.sh
 }
 
-FILES_${PN} = "/init.d/install.sh"
+FILES:${PN} = "/init.d/install.sh"
diff --git a/poky/meta/recipes-core/initrdscripts/initramfs-module-setup-live_1.0.bb b/poky/meta/recipes-core/initrdscripts/initramfs-module-setup-live_1.0.bb
index 4d2fe9d..d8ce024 100644
--- a/poky/meta/recipes-core/initrdscripts/initramfs-module-setup-live_1.0.bb
+++ b/poky/meta/recipes-core/initrdscripts/initramfs-module-setup-live_1.0.bb
@@ -1,13 +1,13 @@
 SUMMARY = "initramfs-framework module for live booting"
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
-RDEPENDS_${PN} = "initramfs-framework-base udev-extraconf"
+RDEPENDS:${PN} = "initramfs-framework-base udev-extraconf"
 
 PR = "r4"
 
 inherit allarch
 
-FILESEXTRAPATHS_prepend := "${THISDIR}/initramfs-framework:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/initramfs-framework:"
 SRC_URI = "file://setup-live"
 
 S = "${WORKDIR}"
@@ -17,4 +17,4 @@
     install -m 0755 ${WORKDIR}/setup-live ${D}/init.d/80-setup-live
 }
 
-FILES_${PN} = "/init.d/80-setup-live"
+FILES:${PN} = "/init.d/80-setup-live"
diff --git a/poky/meta/recipes-core/initscripts/init-system-helpers_1.60.bb b/poky/meta/recipes-core/initscripts/init-system-helpers_1.60.bb
index 33977e6..165f37c 100644
--- a/poky/meta/recipes-core/initscripts/init-system-helpers_1.60.bb
+++ b/poky/meta/recipes-core/initscripts/init-system-helpers_1.60.bb
@@ -32,10 +32,10 @@
 
 PACKAGES += "${PN}-invoke-rc.d ${PN}-service"
 
-FILES_${PN} = ""
-FILES_${PN}-invoke-rc.d = "${sbindir}/invoke-rc.d"
-FILES_${PN}-service = "${sbindir}/service"
+FILES:${PN} = ""
+FILES:${PN}-invoke-rc.d = "${sbindir}/invoke-rc.d"
+FILES:${PN}-service = "${sbindir}/service"
 
-ALLOW_EMPTY_${PN} = "1"
+ALLOW_EMPTY:${PN} = "1"
 
-RRECOMMENDS_${PN} += "${PN}-invoke-rc.d ${PN}-service"
+RRECOMMENDS:${PN} += "${PN}-invoke-rc.d ${PN}-service"
diff --git a/poky/meta/recipes-core/initscripts/initscripts-1.0/populate-volatile.sh b/poky/meta/recipes-core/initscripts/initscripts-1.0/populate-volatile.sh
index f21f48d..b56b72f 100755
--- a/poky/meta/recipes-core/initscripts/initscripts-1.0/populate-volatile.sh
+++ b/poky/meta/recipes-core/initscripts/initscripts-1.0/populate-volatile.sh
@@ -37,8 +37,8 @@
 	fi
 	EXEC="
 	${EXEC}
-	chown ${TUSER}:${TGROUP} $1 || echo \"Failed to set owner -${TUSER}- for -$1-.\" >/dev/tty0 2>&1;
-	chmod ${TMODE} $1 || echo \"Failed to set mode -${TMODE}- for -$1-.\" >/dev/tty0 2>&1 "
+	chown ${TUSER}:${TGROUP} $1 || echo \"Failed to set owner -${TUSER}- for -$1-.\";
+	chmod ${TMODE} $1 || echo \"Failed to set mode -${TMODE}- for -$1-.\" "
 
 	test "$VOLATILE_ENABLE_CACHE" = yes && echo "$EXEC" >> /etc/volatile.cache.build
 
@@ -60,8 +60,8 @@
 mk_dir() {
 	EXEC="
 	mkdir -p \"$1\";
-	chown ${TUSER}:${TGROUP} $1 || echo \"Failed to set owner -${TUSER}- for -$1-.\" >/dev/tty0 2>&1;
-	chmod ${TMODE} $1 || echo \"Failed to set mode -${TMODE}- for -$1-.\" >/dev/tty0 2>&1 "
+	chown ${TUSER}:${TGROUP} $1 || echo \"Failed to set owner -${TUSER}- for -$1-.\";
+	chmod ${TMODE} $1 || echo \"Failed to set mode -${TMODE}- for -$1-.\" "
 
 	test "$VOLATILE_ENABLE_CACHE" = yes && echo "$EXEC" >> /etc/volatile.cache.build
 	if [ -e "$1" ]; then
@@ -201,7 +201,7 @@
 			"f")  [ "${VERBOSE}" != "no" ] && echo "Creating file -${TNAME}-."
 				TSOURCE="$TLTARGET"
 				[ "${TSOURCE}" = "none" ] && TSOURCE=""
-				create_file "${TNAME}" "${TSOURCE}" &
+				create_file "${TNAME}" "${TSOURCE}"
 				;;
 			"d")  [ "${VERBOSE}" != "no" ] && echo "Creating directory -${TNAME}-."
 				mk_dir "${TNAME}"
diff --git a/poky/meta/recipes-core/initscripts/initscripts_1.0.bb b/poky/meta/recipes-core/initscripts/initscripts_1.0.bb
index 5e994f2..e4c4813 100644
--- a/poky/meta/recipes-core/initscripts/initscripts_1.0.bb
+++ b/poky/meta/recipes-core/initscripts/initscripts_1.0.bb
@@ -39,25 +39,25 @@
 
 S = "${WORKDIR}"
 
-SRC_URI_append_arm = " file://alignment.sh"
-SRC_URI_append_armeb = " file://alignment.sh"
+SRC_URI:append:arm = " file://alignment.sh"
+SRC_URI:append:armeb = " file://alignment.sh"
 
 KERNEL_VERSION = ""
 
-DEPENDS_append = " update-rc.d-native"
-PACKAGE_WRITE_DEPS_append = " ${@bb.utils.contains('DISTRO_FEATURES','systemd','systemd-systemctl-native','',d)}"
+DEPENDS:append = " update-rc.d-native"
+PACKAGE_WRITE_DEPS:append = " ${@bb.utils.contains('DISTRO_FEATURES','systemd','systemd-systemctl-native','',d)}"
 
 PACKAGES =+ "${PN}-functions ${PN}-sushell"
-RDEPENDS_${PN} = "initd-functions \
+RDEPENDS:${PN} = "initd-functions \
                   ${@bb.utils.contains('DISTRO_FEATURES','selinux','${PN}-sushell','',d)} \
                   init-system-helpers-service \
 		 "
 # Recommend pn-functions so that it will be a preferred default provider for initd-functions
-RRECOMMENDS_${PN} = "${PN}-functions"
-RPROVIDES_${PN}-functions = "initd-functions"
-RCONFLICTS_${PN}-functions = "lsbinitscripts"
-FILES_${PN}-functions = "${sysconfdir}/init.d/functions*"
-FILES_${PN}-sushell = "${base_sbindir}/sushell"
+RRECOMMENDS:${PN} = "${PN}-functions"
+RPROVIDES:${PN}-functions = "initd-functions"
+RCONFLICTS:${PN}-functions = "lsbinitscripts"
+FILES:${PN}-functions = "${sysconfdir}/init.d/functions*"
+FILES:${PN}-sushell = "${base_sbindir}/sushell"
 
 HALTARGS ?= "-d -f"
 
@@ -106,7 +106,8 @@
 	install -m 0755    ${WORKDIR}/save-rtc.sh	${D}${sysconfdir}/init.d
 	install -m 0644    ${WORKDIR}/volatiles		${D}${sysconfdir}/default/volatiles/00_core
 	if [ ${@ oe.types.boolean('${VOLATILE_LOG_DIR}') } = True ]; then
-		echo "l root root 0755 /var/log /var/volatile/log" >> ${D}${sysconfdir}/default/volatiles/00_core
+		sed -i -e '\@^d root root 0755 /var/volatile/log none$@ a\l root root 0755 /var/log /var/volatile/log' \
+			${D}${sysconfdir}/default/volatiles/00_core
 	fi
 	install -m 0755    ${WORKDIR}/dmesg.sh		${D}${sysconfdir}/init.d
 	install -m 0644    ${WORKDIR}/logrotate-dmesg.conf ${D}${sysconfdir}/
@@ -169,7 +170,7 @@
   sysfs \
   urandom"
 
-pkg_postinst_${PN} () {
+pkg_postinst:${PN} () {
 	if type systemctl >/dev/null 2>/dev/null; then
 		if [ -n "$D" ]; then
 			OPTS="--root=$D"
@@ -185,4 +186,4 @@
     fi
 }
 
-CONFFILES_${PN} += "${sysconfdir}/init.d/checkroot.sh"
+CONFFILES:${PN} += "${sysconfdir}/init.d/checkroot.sh"
diff --git a/poky/meta/recipes-core/kbd/kbd_2.4.0.bb b/poky/meta/recipes-core/kbd/kbd_2.4.0.bb
index b557d69..7cb45ef 100644
--- a/poky/meta/recipes-core/kbd/kbd_2.4.0.bb
+++ b/poky/meta/recipes-core/kbd/kbd_2.4.0.bb
@@ -9,9 +9,9 @@
 
 DEPENDS += "flex-native"
 
-RREPLACES_${PN} = "console-tools"
-RPROVIDES_${PN} = "console-tools"
-RCONFLICTS_${PN} = "console-tools"
+RREPLACES:${PN} = "console-tools"
+RPROVIDES:${PN} = "console-tools"
+RCONFLICTS:${PN} = "console-tools"
 
 SRC_URI = "${KERNELORG_MIRROR}/linux/utils/${BPN}/${BP}.tar.xz \
            "
@@ -25,12 +25,12 @@
 
 PACKAGES += "${PN}-consolefonts ${PN}-keymaps ${PN}-unimaps ${PN}-consoletrans"
 
-FILES_${PN}-consolefonts = "${datadir}/consolefonts"
-FILES_${PN}-consoletrans = "${datadir}/consoletrans"
-FILES_${PN}-keymaps = "${datadir}/keymaps"
-FILES_${PN}-unimaps = "${datadir}/unimaps"
+FILES:${PN}-consolefonts = "${datadir}/consolefonts"
+FILES:${PN}-consoletrans = "${datadir}/consoletrans"
+FILES:${PN}-keymaps = "${datadir}/keymaps"
+FILES:${PN}-unimaps = "${datadir}/unimaps"
 
-do_install_append () {
+do_install:append () {
     if [ ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'yes', '', d)} = yes ] \
     && [ -f ${D}${sysconfdir}/pam.d/vlock ]; then
         mv -f ${D}${sysconfdir}/pam.d/vlock ${D}${sysconfdir}/pam.d/vlock.kbd
@@ -39,7 +39,7 @@
 
 inherit update-alternatives
 
-ALTERNATIVE_${PN} = "chvt deallocvt fgconsole openvt showkey \
+ALTERNATIVE:${PN} = "chvt deallocvt fgconsole openvt showkey \
                      ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'vlock','', d)}"
 ALTERNATIVE_PRIORITY = "100"
 
diff --git a/poky/meta/recipes-core/libcgroup/libcgroup_0.41.bb b/poky/meta/recipes-core/libcgroup/libcgroup_0.41.bb
index 92d7261..400f96f 100644
--- a/poky/meta/recipes-core/libcgroup/libcgroup_0.41.bb
+++ b/poky/meta/recipes-core/libcgroup/libcgroup_0.41.bb
@@ -13,24 +13,24 @@
 
 SRC_URI = "${SOURCEFORGE_MIRROR}/project/libcg/${BPN}/v0.41/${BPN}-${PV}.tar.bz2 \
            file://CVE-2018-14348.patch"
-SRC_URI_append_libc-musl = " file://musl-decls-compat.patch"
+SRC_URI:append:libc-musl = " file://musl-decls-compat.patch"
 
 SRC_URI[md5sum] = "3dea9d50b8a5b73ff0bf1cdcb210f63f"
 SRC_URI[sha256sum] = "e4e38bdc7ef70645ce33740ddcca051248d56b53283c0dc6d404e17706f6fb51"
 
 UPSTREAM_CHECK_URI = "http://sourceforge.net/projects/libcg/files/libcgroup/"
 
-DEPENDS_append_libc-musl = " fts "
-EXTRA_OEMAKE_append_libc-musl = " LIBS=-lfts"
+DEPENDS:append:libc-musl = " fts "
+EXTRA_OEMAKE:append:libc-musl = " LIBS=-lfts"
 
 PACKAGECONFIG = "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}"
 PACKAGECONFIG[pam] = "--enable-pam-module-dir=${base_libdir}/security --enable-pam=yes,--enable-pam=no,libpam"
 
 PACKAGES =+ "cgroups-pam-plugin"
-FILES_cgroups-pam-plugin = "${base_libdir}/security/pam_cgroup.so*"
-FILES_${PN}-dev += "${base_libdir}/security/*.la"
+FILES:cgroups-pam-plugin = "${base_libdir}/security/pam_cgroup.so*"
+FILES:${PN}-dev += "${base_libdir}/security/*.la"
 
-do_install_append() {
+do_install:append() {
 	# Moving libcgroup to base_libdir
 	if [ ! ${D}${libdir} -ef ${D}${base_libdir} ]; then
 		mkdir -p ${D}/${base_libdir}/
diff --git a/poky/meta/recipes-core/libxcrypt/libxcrypt-compat_4.4.23.bb b/poky/meta/recipes-core/libxcrypt/libxcrypt-compat_4.4.23.bb
index ba74eb1..ec9f9f4 100644
--- a/poky/meta/recipes-core/libxcrypt/libxcrypt-compat_4.4.23.bb
+++ b/poky/meta/recipes-core/libxcrypt/libxcrypt-compat_4.4.23.bb
@@ -10,7 +10,7 @@
 
 API = "--enable-obsolete-api"
 
-do_install_append () {
+do_install:append () {
 	rm -rf ${D}${includedir}
 	rm -rf ${D}${libdir}/pkgconfig
 	rm -rf ${D}${datadir}
diff --git a/poky/meta/recipes-core/libxcrypt/libxcrypt.inc b/poky/meta/recipes-core/libxcrypt/libxcrypt.inc
index 79a2aa4..d9b3a7d 100644
--- a/poky/meta/recipes-core/libxcrypt/libxcrypt.inc
+++ b/poky/meta/recipes-core/libxcrypt/libxcrypt.inc
@@ -17,7 +17,7 @@
 
 PROVIDES = "virtual/crypt"
 
-FILES_${PN} = "${libdir}/libcrypt*.so.* \
+FILES:${PN} = "${libdir}/libcrypt*.so.* \
                ${libdir}/libcrypt-*.so \
                ${libdir}/libowcrypt*.so.* \
                ${libdir}/libowcrypt-*.so \
@@ -27,7 +27,7 @@
 
 BUILD_CPPFLAGS = "-I${STAGING_INCDIR_NATIVE}"
 TARGET_CPPFLAGS = "-I${STAGING_DIR_TARGET}${includedir} -Wno-error"
-CPPFLAGS_append_class-nativesdk = " -Wno-error"
+CPPFLAGS:append:class-nativesdk = " -Wno-error"
 
 API = "--disable-obsolete-api"
 EXTRA_OECONF += "${API}"
diff --git a/poky/meta/recipes-core/libxml/libxml2_2.9.12.bb b/poky/meta/recipes-core/libxml/libxml2_2.9.12.bb
index 2d1e929..3105889 100644
--- a/poky/meta/recipes-core/libxml/libxml2_2.9.12.bb
+++ b/poky/meta/recipes-core/libxml/libxml2_2.9.12.bb
@@ -38,11 +38,11 @@
 
 inherit ${@bb.utils.contains('PACKAGECONFIG', 'python', 'python3native', '', d)}
 
-RDEPENDS_${PN}-ptest += "bash make ${@bb.utils.contains('PACKAGECONFIG', 'python', 'libgcc python3-core python3-logging python3-shell  python3-stringold python3-threading python3-unittest ${PN}-python', '', d)}"
+RDEPENDS:${PN}-ptest += "bash make ${@bb.utils.contains('PACKAGECONFIG', 'python', 'libgcc python3-core python3-logging python3-shell  python3-stringold python3-threading python3-unittest ${PN}-python', '', d)}"
 
-RDEPENDS_${PN}-python += "${@bb.utils.contains('PACKAGECONFIG', 'python', 'python3-core', '', d)}"
+RDEPENDS:${PN}-python += "${@bb.utils.contains('PACKAGECONFIG', 'python', 'python3-core', '', d)}"
 
-RDEPENDS_${PN}-ptest_append_libc-glibc = " glibc-gconv-ebcdic-us \
+RDEPENDS:${PN}-ptest:append:libc-glibc = " glibc-gconv-ebcdic-us \
                                            glibc-gconv-ibm1141 \
                                            glibc-gconv-iso8859-5 \
                                            glibc-gconv-euc-jp \
@@ -53,25 +53,25 @@
 
 # WARNING: zlib is required for RPM use
 EXTRA_OECONF = "--without-debug --without-legacy --with-catalog --without-docbook --with-c14n --without-lzma --with-fexceptions"
-EXTRA_OECONF_class-native = "--without-legacy --without-docbook --with-c14n --without-lzma --with-zlib"
-EXTRA_OECONF_class-nativesdk = "--without-legacy --without-docbook --with-c14n --without-lzma --with-zlib"
-EXTRA_OECONF_linuxstdbase = "--with-debug --with-legacy --with-docbook --with-c14n --without-lzma --with-zlib"
+EXTRA_OECONF:class-native = "--without-legacy --without-docbook --with-c14n --without-lzma --with-zlib"
+EXTRA_OECONF:class-nativesdk = "--without-legacy --without-docbook --with-c14n --without-lzma --with-zlib"
+EXTRA_OECONF:linuxstdbase = "--with-debug --with-legacy --with-docbook --with-c14n --without-lzma --with-zlib"
 
-python populate_packages_prepend () {
+python populate_packages:prepend () {
     # autonamer would call this libxml2-2, but we don't want that
     if d.getVar('DEBIAN_NAMES'):
-        d.setVar('PKG_libxml2', '${MLPREFIX}libxml2')
+        d.setVar('PKG:libxml2', '${MLPREFIX}libxml2')
 }
 
 PACKAGE_BEFORE_PN += "${PN}-utils"
 PACKAGES += "${PN}-python"
 
-FILES_${PN}-staticdev += "${PYTHON_SITEPACKAGES_DIR}/*.a"
-FILES_${PN}-dev += "${libdir}/xml2Conf.sh"
-FILES_${PN}-utils = "${bindir}/*"
-FILES_${PN}-python = "${PYTHON_SITEPACKAGES_DIR}"
+FILES:${PN}-staticdev += "${PYTHON_SITEPACKAGES_DIR}/*.a"
+FILES:${PN}-dev += "${libdir}/xml2Conf.sh"
+FILES:${PN}-utils = "${bindir}/*"
+FILES:${PN}-python = "${PYTHON_SITEPACKAGES_DIR}"
 
-do_configure_prepend () {
+do_configure:prepend () {
 	# executables take longer to package: these should not be executable
 	find ${S}/xmlconf/ -type f -exec chmod -x {} \+
 }
@@ -101,7 +101,7 @@
 	    {} +
 }
 
-do_install_append_class-native () {
+do_install:append:class-native () {
 	# Docs are not needed in the native case
 	rm ${D}${datadir}/gtk-doc -rf
 }
diff --git a/poky/meta/recipes-core/meta/buildtools-tarball.bb b/poky/meta/recipes-core/meta/buildtools-tarball.bb
index b5dae17..9775430 100644
--- a/poky/meta/recipes-core/meta/buildtools-tarball.bb
+++ b/poky/meta/recipes-core/meta/buildtools-tarball.bb
@@ -61,7 +61,7 @@
 
 REAL_MULTIMACH_TARGET_SYS = "none"
 
-create_sdk_files_append () {
+create_sdk_files:append () {
 	rm -f ${SDK_OUTPUT}/${SDKPATH}/site-config-*
 	rm -f ${SDK_OUTPUT}/${SDKPATH}/environment-setup-*
 	rm -f ${SDK_OUTPUT}/${SDKPATH}/version-*
diff --git a/poky/meta/recipes-core/meta/dummy-sdk-package.inc b/poky/meta/recipes-core/meta/dummy-sdk-package.inc
index bedde29..bd26e39 100644
--- a/poky/meta/recipes-core/meta/dummy-sdk-package.inc
+++ b/poky/meta/recipes-core/meta/dummy-sdk-package.inc
@@ -13,7 +13,7 @@
     d.setVar('PACKAGE_ARCH', '${DUMMYARCH}')
 }
 
-ALLOW_EMPTY_${PN} = "1"
+ALLOW_EMPTY:${PN} = "1"
 
 PR[vardeps] += "DUMMYPROVIDES"
 PR[vardeps] += "DUMMYPROVIDES_PACKAGES"
@@ -22,10 +22,10 @@
 DUMMYPROVIDES_PACKAGES_MULTILIB = "${@' '.join([multilib_pkg_extend(d, pkg) for pkg in d.getVar('DUMMYPROVIDES_PACKAGES').split()])}"
 DUMMYPROVIDES += "${DUMMYPROVIDES_PACKAGES_MULTILIB}"
 
-python populate_packages_prepend() {
+python populate_packages:prepend() {
     p = d.getVar("PN")
-    d.appendVar("RPROVIDES_%s" % p, "${DUMMYPROVIDES}")
-    d.appendVar("RCONFLICTS_%s" % p, "${DUMMYPROVIDES}")
-    d.appendVar("RREPLACES_%s" % p, "${DUMMYPROVIDES_PACKAGES_MULTILIB}")
+    d.appendVar("RPROVIDES:%s" % p, "${DUMMYPROVIDES}")
+    d.appendVar("RCONFLICTS:%s" % p, "${DUMMYPROVIDES}")
+    d.appendVar("RREPLACES:%s" % p, "${DUMMYPROVIDES_PACKAGES_MULTILIB}")
 }
 
diff --git a/poky/meta/recipes-core/meta/meta-environment-extsdk.bb b/poky/meta/recipes-core/meta/meta-environment-extsdk.bb
index 2076b56..706312b 100644
--- a/poky/meta/recipes-core/meta/meta-environment-extsdk.bb
+++ b/poky/meta/recipes-core/meta/meta-environment-extsdk.bb
@@ -4,7 +4,7 @@
 
 PN = "meta-environment-extsdk-${MACHINE}"
 
-create_sdk_files_append() {
+create_sdk_files:append() {
 	local sysroot=${SDKPATH}/tmp/${@os.path.relpath(d.getVar('STAGING_DIR'), d.getVar('TMPDIR'))}/${MACHINE}
 	local sdkpathnative=${SDKPATH}/tmp/${@os.path.relpath(d.getVar('STAGING_DIR'), d.getVar('TMPDIR'))}/${BUILD_ARCH}
 
diff --git a/poky/meta/recipes-core/meta/meta-environment.bb b/poky/meta/recipes-core/meta/meta-environment.bb
index da1230b..27f0103 100644
--- a/poky/meta/recipes-core/meta/meta-environment.bb
+++ b/poky/meta/recipes-core/meta/meta-environment.bb
@@ -9,7 +9,7 @@
 REAL_MULTIMACH_TARGET_SYS = "${TUNE_PKGARCH}${TARGET_VENDOR}-${TARGET_OS}"
 
 inherit toolchain-scripts
-TOOLCHAIN_NEED_CONFIGSITE_CACHE_append = " zlib"
+TOOLCHAIN_NEED_CONFIGSITE_CACHE:append = " zlib"
 # Need to expand here before cross-candian changes HOST_ARCH -> SDK_ARCH
 TOOLCHAIN_CONFIGSITE_NOCACHE := "${TOOLCHAIN_CONFIGSITE_NOCACHE}"
 
@@ -66,7 +66,7 @@
 
 PN = "meta-environment-${MACHINE}"
 PACKAGES = "${PN}"
-FILES_${PN}= " \
+FILES:${PN}= " \
     ${SDKPATH}/* \
     "
 
diff --git a/poky/meta/recipes-core/meta/meta-go-toolchain.bb b/poky/meta/recipes-core/meta/meta-go-toolchain.bb
index dde385c..c24518e 100644
--- a/poky/meta/recipes-core/meta/meta-go-toolchain.bb
+++ b/poky/meta/recipes-core/meta/meta-go-toolchain.bb
@@ -3,10 +3,10 @@
 
 inherit populate_sdk
 
-TOOLCHAIN_HOST_TASK_append = " \
+TOOLCHAIN_HOST_TASK:append = " \
     packagegroup-go-cross-canadian-${MACHINE} \
 "
 
-TOOLCHAIN_TARGET_TASK_append = " \
+TOOLCHAIN_TARGET_TASK:append = " \
     ${@multilib_pkg_extend(d, 'packagegroup-go-sdk-target')} \
 "
diff --git a/poky/meta/recipes-core/meta/signing-keys.bb b/poky/meta/recipes-core/meta/signing-keys.bb
index 5bab94a..03463f9 100644
--- a/poky/meta/recipes-core/meta/signing-keys.bb
+++ b/poky/meta/recipes-core/meta/signing-keys.bb
@@ -14,9 +14,9 @@
 
 PACKAGES =+ "${PN}-ipk ${PN}-rpm ${PN}-packagefeed"
 
-FILES_${PN}-rpm = "${sysconfdir}/pki/rpm-gpg"
-FILES_${PN}-ipk = "${sysconfdir}/pki/ipk-gpg"
-FILES_${PN}-packagefeed = "${sysconfdir}/pki/packagefeed-gpg"
+FILES:${PN}-rpm = "${sysconfdir}/pki/rpm-gpg"
+FILES:${PN}-ipk = "${sysconfdir}/pki/ipk-gpg"
+FILES:${PN}-packagefeed = "${sysconfdir}/pki/packagefeed-gpg"
 
 python do_get_public_keys () {
     from oe.gpg_sign import get_signer
diff --git a/poky/meta/recipes-core/meta/testexport-tarball.bb b/poky/meta/recipes-core/meta/testexport-tarball.bb
index daedd78..de7663b 100644
--- a/poky/meta/recipes-core/meta/testexport-tarball.bb
+++ b/poky/meta/recipes-core/meta/testexport-tarball.bb
@@ -38,7 +38,7 @@
 
 REAL_MULTIMACH_TARGET_SYS = "none"
 
-create_sdk_files_append () {
+create_sdk_files:append () {
 	rm -f ${SDK_OUTPUT}/${SDKPATH}/site-config-*
 	rm -f ${SDK_OUTPUT}/${SDKPATH}/environment-setup-*
 	rm -f ${SDK_OUTPUT}/${SDKPATH}/version-*
diff --git a/poky/meta/recipes-core/meta/wic-tools.bb b/poky/meta/recipes-core/meta/wic-tools.bb
index bc6cc0d..ba0916c 100644
--- a/poky/meta/recipes-core/meta/wic-tools.bb
+++ b/poky/meta/recipes-core/meta/wic-tools.bb
@@ -8,10 +8,10 @@
            btrfs-tools-native squashfs-tools-native pseudo-native \
            e2fsprogs-native util-linux-native tar-native\
            "
-DEPENDS_append_x86 = " syslinux-native syslinux grub-efi systemd-boot"
-DEPENDS_append_x86-64 = " syslinux-native syslinux grub-efi systemd-boot"
-DEPENDS_append_x86-x32 = " syslinux-native syslinux grub-efi"
-DEPENDS_append_aarch64 = " grub-efi systemd-boot"
+DEPENDS:append:x86 = " syslinux-native syslinux grub-efi systemd-boot"
+DEPENDS:append:x86-64 = " syslinux-native syslinux grub-efi systemd-boot"
+DEPENDS:append:x86-x32 = " syslinux-native syslinux grub-efi"
+DEPENDS:append:aarch64 = " grub-efi systemd-boot"
 
 INHIBIT_DEFAULT_DEPS = "1"
 
diff --git a/poky/meta/recipes-core/musl/bsd-headers.bb b/poky/meta/recipes-core/musl/bsd-headers.bb
index c9945d4..cf8af0d 100644
--- a/poky/meta/recipes-core/musl/bsd-headers.bb
+++ b/poky/meta/recipes-core/musl/bsd-headers.bb
@@ -27,5 +27,5 @@
 #
 
 COMPATIBLE_HOST = ".*-musl.*"
-RDEPENDS_${PN}-dev = ""
-RRECOMMENDS_${PN}-dbg = "${PN}-dev (= ${EXTENDPKGV})"
+RDEPENDS:${PN}-dev = ""
+RRECOMMENDS:${PN}-dbg = "${PN}-dev (= ${EXTENDPKGV})"
diff --git a/poky/meta/recipes-core/musl/gcompat_git.bb b/poky/meta/recipes-core/musl/gcompat_git.bb
index 863ba8d..6e5cc11 100644
--- a/poky/meta/recipes-core/musl/gcompat_git.bb
+++ b/poky/meta/recipes-core/musl/gcompat_git.bb
@@ -41,11 +41,11 @@
 	fi
 }
 
-FILES_${PN} += "/lib64"
+FILES:${PN} += "/lib64"
 
-INSANE_SKIP_${PN} = "libdir"
+INSANE_SKIP:${PN} = "libdir"
 
-RPROVIDES_${PN} += "musl-glibc-compat"
+RPROVIDES:${PN} += "musl-glibc-compat"
 #
 # We will skip parsing for non-musl systems
 #
diff --git a/poky/meta/recipes-core/musl/libssp-nonshared.bb b/poky/meta/recipes-core/musl/libssp-nonshared.bb
index 81c87e8..748dacf 100644
--- a/poky/meta/recipes-core/musl/libssp-nonshared.bb
+++ b/poky/meta/recipes-core/musl/libssp-nonshared.bb
@@ -30,6 +30,6 @@
 # We will skip parsing for non-musl systems
 #
 COMPATIBLE_HOST = ".*-musl.*"
-RDEPENDS_${PN}-staticdev = ""
-RDEPENDS_${PN}-dev = ""
-RRECOMMENDS_${PN}-dbg = "${PN}-staticdev (= ${EXTENDPKGV})"
+RDEPENDS:${PN}-staticdev = ""
+RDEPENDS:${PN}-dev = ""
+RRECOMMENDS:${PN}-dbg = "${PN}-staticdev (= ${EXTENDPKGV})"
diff --git a/poky/meta/recipes-core/musl/musl-utils.bb b/poky/meta/recipes-core/musl/musl-utils.bb
index dd0ce33..4f99d43 100644
--- a/poky/meta/recipes-core/musl/musl-utils.bb
+++ b/poky/meta/recipes-core/musl/musl-utils.bb
@@ -21,7 +21,7 @@
 
 PACKAGES =+ "${PN}-iconv"
 
-FILES_${PN}-iconv = "${bindir}/iconv"
+FILES:${PN}-iconv = "${bindir}/iconv"
 
 COMPATIBLE_HOST = ".*-musl.*"
 
diff --git a/poky/meta/recipes-core/musl/musl.inc b/poky/meta/recipes-core/musl/musl.inc
index 54edfc8..66468e9 100644
--- a/poky/meta/recipes-core/musl/musl.inc
+++ b/poky/meta/recipes-core/musl/musl.inc
@@ -14,16 +14,16 @@
 INHIBIT_DEFAULT_DEPS = "1"
 
 FILES_SOLIBSDEV = ""
-FILES_${PN} += "${libdir}/lib*${SOLIBSDEV}"
-INSANE_SKIP_${PN} = "dev-so"
+FILES:${PN} += "${libdir}/lib*${SOLIBSDEV}"
+INSANE_SKIP:${PN} = "dev-so"
 
 # Doesn't compile in MIPS16e mode due to use of hand-written
 # assembly
 MIPS_INSTRUCTION_SET = "mips"
 
 # thumb1 is unsupported
-ARM_INSTRUCTION_SET_armv5 = "arm"
-ARM_INSTRUCTION_SET_armv4 = "arm"
+ARM_INSTRUCTION_SET:armv5 = "arm"
+ARM_INSTRUCTION_SET:armv4 = "arm"
 
 # Enable out of tree build
 B = "${WORKDIR}/build"
diff --git a/poky/meta/recipes-core/musl/musl_git.bb b/poky/meta/recipes-core/musl/musl_git.bb
index bd9d5f1..f9c174d 100644
--- a/poky/meta/recipes-core/musl/musl_git.bb
+++ b/poky/meta/recipes-core/musl/musl_git.bb
@@ -42,7 +42,7 @@
 # disabled automatically due to the optimisation level, but append an explicit
 # -fomit-frame-pointer to handle cases where optimisation is set to -O0 or frame
 # pointers have been enabled by -fno-omit-frame-pointer earlier in CFLAGS, etc.
-CFLAGS_append_arm = " ${@bb.utils.contains('TUNE_CCARGS', '-mthumb', '-fomit-frame-pointer', '', d)}"
+CFLAGS:append:arm = " ${@bb.utils.contains('TUNE_CCARGS', '-mthumb', '-fomit-frame-pointer', '', d)}"
 
 CONFIGUREOPTS = " \
     --prefix=${prefix} \
@@ -70,19 +70,19 @@
 	lnr ${D}${libdir}/libc.so ${D}${bindir}/ldd
 }
 
-FILES_${PN} += "/lib/ld-musl-${MUSL_LDSO_ARCH}.so.1 ${sysconfdir}/ld-musl-${MUSL_LDSO_ARCH}.path"
-FILES_${PN}-staticdev = "${libdir}/libc.a"
-FILES_${PN}-dev =+ "${libdir}/libcrypt.a ${libdir}/libdl.a ${libdir}/libm.a \
+FILES:${PN} += "/lib/ld-musl-${MUSL_LDSO_ARCH}.so.1 ${sysconfdir}/ld-musl-${MUSL_LDSO_ARCH}.path"
+FILES:${PN}-staticdev = "${libdir}/libc.a"
+FILES:${PN}-dev =+ "${libdir}/libcrypt.a ${libdir}/libdl.a ${libdir}/libm.a \
                     ${libdir}/libpthread.a ${libdir}/libresolv.a \
                     ${libdir}/librt.a ${libdir}/libutil.a ${libdir}/libxnet.a \
                    "
 
-RDEPENDS_${PN}-dev += "linux-libc-headers-dev bsd-headers-dev libssp-nonshared-staticdev"
-RPROVIDES_${PN}-dev += "libc-dev virtual-libc-dev"
-RPROVIDES_${PN} += "ldd libsegfault rtld(GNU_HASH)"
+RDEPENDS:${PN}-dev += "linux-libc-headers-dev bsd-headers-dev libssp-nonshared-staticdev"
+RPROVIDES:${PN}-dev += "libc-dev virtual-libc-dev"
+RPROVIDES:${PN} += "ldd libsegfault rtld(GNU_HASH)"
 
 LEAD_SONAME = "libc.so"
-INSANE_SKIP_${PN}-dev = "staticdev"
-INSANE_SKIP_${PN} = "libdir"
+INSANE_SKIP:${PN}-dev = "staticdev"
+INSANE_SKIP:${PN} = "libdir"
 
 UPSTREAM_CHECK_COMMITS = "1"
diff --git a/poky/meta/recipes-core/ncurses/ncurses.inc b/poky/meta/recipes-core/ncurses/ncurses.inc
index ef59bc3..cbb12ca 100644
--- a/poky/meta/recipes-core/ncurses/ncurses.inc
+++ b/poky/meta/recipes-core/ncurses/ncurses.inc
@@ -5,7 +5,7 @@
 LIC_FILES_CHKSUM = "file://ncurses/base/version.c;beginline=1;endline=27;md5=5526f2f3a29edc95538b368a4771edda"
 SECTION = "libs"
 DEPENDS = "ncurses-native"
-DEPENDS_class-native = ""
+DEPENDS:class-native = ""
 
 BINCONFIG = "${bindir}/ncurses5-config ${bindir}/ncursesw5-config \
 	${bindir}/ncurses6-config ${bindir}/ncursesw6-config"
@@ -32,17 +32,17 @@
 BUILD_CPPFLAGS += "-D_GNU_SOURCE"
 
 # natives don't generally look in base_libdir
-base_libdir_class-native = "${libdir}"
+base_libdir:class-native = "${libdir}"
 
 # Display corruption occurs on 64 bit hosts without these settings
 # This was derrived from the upstream debian ncurses which uses
 # these settings for 32 and 64 bit hosts.
 EXCONFIG_ARGS = ""
-EXCONFIG_ARGS_class-native = " \
+EXCONFIG_ARGS:class-native = " \
 		--disable-lp64 \
 		--with-chtype='long' \
 		--with-mmask-t='long'"
-EXCONFIG_ARGS_class-nativesdk = " \
+EXCONFIG_ARGS:class-nativesdk = " \
 		--disable-lp64 \
 		--with-chtype='long' \
 		--with-mmask-t='long'"
@@ -55,11 +55,11 @@
 # because the sstate had a hard coded search path.  Until this is fixed
 # another way this is deemed good enough.
 EX_TERMCAP = ""
-EX_TERMCAP_class-native = ":/etc/termcap:/usr/share/misc/termcap"
-EX_TERMCAP_class-nativesdk = ":/etc/termcap:/usr/share/misc/termcap"
+EX_TERMCAP:class-native = ":/etc/termcap:/usr/share/misc/termcap"
+EX_TERMCAP:class-nativesdk = ":/etc/termcap:/usr/share/misc/termcap"
 EX_TERMINFO = ""
-EX_TERMINFO_class-native = ":/etc/terminfo:/usr/share/terminfo:/usr/share/misc/terminfo:/lib/terminfo"
-EX_TERMINFO_class-nativesdk = ":/etc/terminfo:/usr/share/terminfo:/usr/share/misc/terminfo:/lib/terminfo"
+EX_TERMINFO:class-native = ":/etc/terminfo:/usr/share/terminfo:/usr/share/misc/terminfo:/lib/terminfo"
+EX_TERMINFO:class-nativesdk = ":/etc/terminfo:/usr/share/terminfo:/usr/share/misc/terminfo:/lib/terminfo"
 EX_TERMLIB ?= "tinfo"
 
 # Helper function for do_configure to allow multiple configurations
@@ -258,7 +258,7 @@
         oe_multilib_header curses.h
 }
 
-python populate_packages_prepend () {
+python populate_packages:prepend () {
     libdir = d.expand("${libdir}")
     base_libdir = d.expand("${base_libdir}")
     pnbase = d.expand("${PN}-lib%s")
@@ -272,8 +272,8 @@
 
 ALTERNATIVE_PRIORITY = "100"
 
-ALTERNATIVE_ncurses-tools_class-target = "clear reset"
-ALTERNATIVE_ncurses-terminfo_class-target = "st st-256color"
+ALTERNATIVE:ncurses-tools:class-target = "clear reset"
+ALTERNATIVE:ncurses-terminfo:class-target = "st st-256color"
 
 ALTERNATIVE_LINK_NAME[st] = "${datadir}/terminfo/s/st"
 
@@ -287,7 +287,7 @@
   ${PN}-terminfo \
 "
 
-FILES_${PN} = "\
+FILES:${PN} = "\
   ${bindir}/tput \
   ${bindir}/tset \
   ${bindir}/ncurses5-config \
@@ -299,7 +299,7 @@
 
 # This keeps only tput/tset in ncurses
 # clear/reset are in already busybox
-FILES_${PN}-tools = "\
+FILES:${PN}-tools = "\
   ${bindir}/tic \
   ${bindir}/toe \
   ${bindir}/infotocap \
@@ -312,20 +312,20 @@
 "
 
 # 'reset' is a symlink to 'tset' which is in the 'ncurses' package
-RDEPENDS_${PN}-tools = "${PN} ${PN}-terminfo-base"
+RDEPENDS:${PN}-tools = "${PN} ${PN}-terminfo-base"
 
-FILES_${PN}-terminfo = "\
+FILES:${PN}-terminfo = "\
   ${datadir}/terminfo \
 "
 
-FILES_${PN}-terminfo-base = "\
+FILES:${PN}-terminfo-base = "\
   ${sysconfdir}/terminfo \
 "
 
-RSUGGESTS_${PN}-libtinfo = "${PN}-terminfo"
-RRECOMMENDS_${PN}-libtinfo = "${PN}-terminfo-base"
+RSUGGESTS:${PN}-libtinfo = "${PN}-terminfo"
+RRECOMMENDS:${PN}-libtinfo = "${PN}-terminfo-base"
 
 # Putting terminfo into the sysroot adds around 2800 files to
 # each recipe specific sysroot. We can live without this, particularly
 # as many recipes may have native and target copies.
-SYSROOT_DIRS_remove = "${datadir}"
+SYSROOT_DIRS:remove = "${datadir}"
diff --git a/poky/meta/recipes-core/newlib/libgloss_4.1.0.bb b/poky/meta/recipes-core/newlib/libgloss_4.1.0.bb
index c9ed30d..8c8ee91 100644
--- a/poky/meta/recipes-core/newlib/libgloss_4.1.0.bb
+++ b/poky/meta/recipes-core/newlib/libgloss_4.1.0.bb
@@ -2,21 +2,21 @@
 
 DEPENDS += "newlib"
 
-FILESEXTRAPATHS_prepend := "${THISDIR}/libgloss:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/libgloss:"
 
-SRC_URI_append_powerpc = " file://fix-rs6000-crt0.patch"
-SRC_URI_append_arm = " file://fix_makefile_include_arm_h.patch"
+SRC_URI:append:powerpc = " file://fix-rs6000-crt0.patch"
+SRC_URI:append:arm = " file://fix_makefile_include_arm_h.patch"
 
 do_configure() {
 	${S}/libgloss/configure ${EXTRA_OECONF}
 }
 
-do_install_prepend() {
+do_install:prepend() {
 	# install doesn't create this itself, avoid install error
 	install -d ${D}${prefix}/${TARGET_SYS}/lib
 }
 
-do_install_append() {
+do_install:append() {
 	# Move libs to default directories so they can be picked up later
 	install -d ${D}${libdir}
 	mv -v ${D}${prefix}/${TARGET_SYS}/lib/* ${D}${libdir}
@@ -26,8 +26,8 @@
 }
 
 # Split packages correctly
-FILES_${PN} += "${libdir}/*.ld ${libdir}/*.specs"
-FILES_${PN}-dev += "${libdir}/cpu-init/*"
+FILES:${PN} += "${libdir}/*.ld ${libdir}/*.specs"
+FILES:${PN}-dev += "${libdir}/cpu-init/*"
 
 INHIBIT_PACKAGE_STRIP = "1"
 INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
diff --git a/poky/meta/recipes-core/newlib/newlib.inc b/poky/meta/recipes-core/newlib/newlib.inc
index 0aba21f..23cd172 100644
--- a/poky/meta/recipes-core/newlib/newlib.inc
+++ b/poky/meta/recipes-core/newlib/newlib.inc
@@ -25,7 +25,7 @@
 B = "${WORKDIR}/build"
 
 ## disable stdlib
-TARGET_CC_ARCH_append = " -nostdlib"
+TARGET_CC_ARCH:append = " -nostdlib"
 
 EXTRA_OECONF = " \
                 --build=${BUILD_SYS}  \
@@ -50,5 +50,5 @@
 	oe_runmake install DESTDIR='${D}'
 }
 
-COMPATIBLE_HOST_libc-musl_class-target = "null"
-COMPATIBLE_HOST_libc-glibc_class-target = "null"
+COMPATIBLE_HOST:libc-musl:class-target = "null"
+COMPATIBLE_HOST:libc-glibc:class-target = "null"
diff --git a/poky/meta/recipes-core/newlib/newlib_4.1.0.bb b/poky/meta/recipes-core/newlib/newlib_4.1.0.bb
index 7ab5b2b..0542c59 100644
--- a/poky/meta/recipes-core/newlib/newlib_4.1.0.bb
+++ b/poky/meta/recipes-core/newlib/newlib_4.1.0.bb
@@ -7,7 +7,7 @@
     ${S}/configure ${EXTRA_OECONF}
 }
 
-do_install_append() {
+do_install:append() {
 	# Move include files and libs to default directories so they can be picked up later
 	mv -v ${D}${prefix}/${TARGET_SYS}/lib ${D}${libdir}
 	mv -v ${D}${prefix}/${TARGET_SYS}/include ${D}${includedir}
@@ -17,4 +17,4 @@
 }
 
 # No rpm package is actually created but -dev depends on it, avoid dnf error
-RDEPENDS_${PN}-dev_libc-newlib = ""
+RDEPENDS:${PN}-dev:libc-newlib = ""
diff --git a/poky/meta/recipes-core/os-release/os-release.bb b/poky/meta/recipes-core/os-release/os-release.bb
index a29d678..38ee4f99 100644
--- a/poky/meta/recipes-core/os-release/os-release.bb
+++ b/poky/meta/recipes-core/os-release/os-release.bb
@@ -50,4 +50,4 @@
     lnr ${D}${nonarch_libdir}/os-release ${D}${sysconfdir}/os-release
 }
 
-FILES_${PN} += "${nonarch_libdir}/os-release"
+FILES:${PN} += "${nonarch_libdir}/os-release"
diff --git a/poky/meta/recipes-core/ovmf/ovmf-shell-image.bb b/poky/meta/recipes-core/ovmf/ovmf-shell-image.bb
index fd4fb5b..50c4517 100644
--- a/poky/meta/recipes-core/ovmf/ovmf-shell-image.bb
+++ b/poky/meta/recipes-core/ovmf/ovmf-shell-image.bb
@@ -1,11 +1,11 @@
 DESCRIPTION = "boot image with UEFI shell and tools"
-COMPATIBLE_HOST_class-target='(i.86|x86_64).*'
+COMPATIBLE_HOST:class-target='(i.86|x86_64).*'
 
 # For this image recipe, only the wic format with a
 # single vfat partition makes sense. Because we have no
 # boot loader and no rootfs partition, not additional
 # tools are needed for this .wks file.
-IMAGE_FSTYPES_forcevariable = 'wic'
+IMAGE_FSTYPES:forcevariable = 'wic'
 WKS_FILE = "ovmf/ovmf-shell-image.wks"
 WKS_FILE_DEPENDS = ""
 
diff --git a/poky/meta/recipes-core/ovmf/ovmf_git.bb b/poky/meta/recipes-core/ovmf/ovmf_git.bb
index 90dae2a..145240e 100644
--- a/poky/meta/recipes-core/ovmf/ovmf_git.bb
+++ b/poky/meta/recipes-core/ovmf/ovmf_git.bb
@@ -3,7 +3,7 @@
 Virtual Machines. OVMF contains sample UEFI firmware for QEMU and KVM"
 HOMEPAGE = "https://github.com/tianocore/tianocore.github.io/wiki/OVMF"
 LICENSE = "BSD-2-Clause"
-LICENSE_class-target = "${@bb.utils.contains('PACKAGECONFIG', 'secureboot', 'BSD & OpenSSL', 'BSD', d)}"
+LICENSE:class-target = "${@bb.utils.contains('PACKAGECONFIG', 'secureboot', 'BSD & OpenSSL', 'BSD', d)}"
 LIC_FILES_CHKSUM = "file://OvmfPkg/License.txt;md5=06357ddc23f46577c2aeaeaf7b776d65"
 
 # Enabling Secure Boot adds a dependency on OpenSSL and implies
@@ -40,7 +40,7 @@
 BUILD_OPTIMIZATION="-pipe"
 
 # OVMF supports IA only, although it could conceivably support ARM someday.
-COMPATIBLE_HOST_class-target='(i.86|x86_64).*'
+COMPATIBLE_HOST:class-target='(i.86|x86_64).*'
 
 # Additional build flags for OVMF with Secure Boot.
 # Fedora also uses "-D SMM_REQUIRE -D EXCLUDE_SHELL_FROM_FD".
@@ -52,7 +52,7 @@
 do_patch[postfuncs] += "fix_basetools_location"
 fix_basetools_location () {
 }
-fix_basetools_location_class-target() {
+fix_basetools_location:class-target() {
     # Replaces the fake path inserted by 0002-ovmf-update-path-to-native-BaseTools.patch.
     # Necessary for finding the actual BaseTools from ovmf-native.
     sed -i -e 's#BBAKE_EDK_TOOLS_PATH#${STAGING_BINDIR_NATIVE}/${EDK_TOOLS_DIR}#' ${S}/OvmfPkg/build.sh
@@ -61,7 +61,7 @@
 do_patch[postfuncs] += "fix_iasl"
 fix_iasl() {
 }
-fix_iasl_class-native() {
+fix_iasl:class-native() {
     # iasl is not installed under /usr/bin when building with OE.
     sed -i -e 's#/usr/bin/iasl#${STAGING_BINDIR_NATIVE}/iasl#' ${S}/BaseTools/Conf/tools_def.template
 }
@@ -80,14 +80,14 @@
         -e '/^VFR_CPPFLAGS/a CC = ${CC}\nCXX = ${CXX}\nAS = ${AS}\nAR = ${AR}\nLD = ${LD}' \
         ${S}/BaseTools/Source/C/VfrCompile/GNUmakefile
 }
-fix_toolchain_append_class-native() {
+fix_toolchain:append:class-native() {
     # This tools_def.template is going to be used by the target ovmf and
     # defines which compilers to use. For the GCC toolchain definitions,
     # that will be ${HOST_PREFIX}gcc. However, "make" doesn't need that
     # prefix.
     #
     # Injecting ENV(HOST_PREFIX) matches exporting that value as env
-    # variable in do_compile_class-target.
+    # variable in do_compile:class-target.
     sed -i \
         -e 's#\(ENV\|DEF\)(GCC.*_PREFIX)#ENV(HOST_PREFIX)#' \
         -e 's#ENV(HOST_PREFIX)make#make#' \
@@ -150,11 +150,11 @@
     echo ${FIXED_GCCVER}
 }
 
-do_compile_class-native() {
+do_compile:class-native() {
     oe_runmake -C ${S}/BaseTools
 }
 
-do_compile_class-target() {
+do_compile:class-target() {
     export LFLAGS="${LDFLAGS}"
     PARALLEL_JOBS="${@oe.utils.parallel_make_argument(d, '-n %d')}"
     OVMF_ARCH="X64"
@@ -203,12 +203,12 @@
     fi
 }
 
-do_install_class-native() {
+do_install:class-native() {
     install -d ${D}/${bindir}/edk2_basetools
     cp -r ${S}/BaseTools ${D}/${bindir}/${EDK_TOOLS_DIR}
 }
 
-do_install_class-target() {
+do_install:class-target() {
     # Content for UEFI shell iso. We install the EFI shell as
     # bootx64/ia32.efi because then it can be started even when the
     # firmware itself does not contain it.
@@ -225,19 +225,19 @@
 #
 # However, EnrollDefaultKeys.efi is only included when Secure Boot is enabled.
 PACKAGES =+ "ovmf-shell-efi"
-FILES_ovmf-shell-efi = " \
+FILES:ovmf-shell-efi = " \
     EnrollDefaultKeys.efi \
     efi/ \
 "
 
 DEPLOYDEP = ""
-DEPLOYDEP_class-target = "qemu-system-native:do_populate_sysroot"
-DEPLOYDEP_class-target += " ${@bb.utils.contains('PACKAGECONFIG', 'secureboot', 'openssl-native:do_populate_sysroot', '', d)}"
+DEPLOYDEP:class-target = "qemu-system-native:do_populate_sysroot"
+DEPLOYDEP:class-target += " ${@bb.utils.contains('PACKAGECONFIG', 'secureboot', 'openssl-native:do_populate_sysroot', '', d)}"
 do_deploy[depends] += "${DEPLOYDEP}"
 
 do_deploy() {
 }
-do_deploy_class-target() {
+do_deploy:class-target() {
     # For use with "runqemu ovmf".
     for i in \
         ovmf \
diff --git a/poky/meta/recipes-core/packagegroups/nativesdk-packagegroup-sdk-host.bb b/poky/meta/recipes-core/packagegroups/nativesdk-packagegroup-sdk-host.bb
index ae98901..64e5883 100644
--- a/poky/meta/recipes-core/packagegroups/nativesdk-packagegroup-sdk-host.bb
+++ b/poky/meta/recipes-core/packagegroups/nativesdk-packagegroup-sdk-host.bb
@@ -9,7 +9,7 @@
 
 PACKAGEGROUP_DISABLE_COMPLEMENTARY = "1"
 
-RDEPENDS_${PN} = "\
+RDEPENDS:${PN} = "\
     nativesdk-pkgconfig \
     nativesdk-qemu \
     nativesdk-qemu-helper \
@@ -29,7 +29,7 @@
     nativesdk-flex \
     "
 
-RDEPENDS_${PN}_darwin = "\
+RDEPENDS:${PN}:darwin = "\
     nativesdk-pkgconfig \
     nativesdk-opkg \
     nativesdk-libtool \
diff --git a/poky/meta/recipes-core/packagegroups/packagegroup-base.bb b/poky/meta/recipes-core/packagegroups/packagegroup-base.bb
index 6d4d7e6..7489ef6 100644
--- a/poky/meta/recipes-core/packagegroups/packagegroup-base.bb
+++ b/poky/meta/recipes-core/packagegroups/packagegroup-base.bb
@@ -47,7 +47,7 @@
 #
 # packagegroup-base contain stuff needed for base system (machine related)
 #
-RDEPENDS_packagegroup-base = "\
+RDEPENDS:packagegroup-base = "\
     packagegroup-distro-base \
     packagegroup-machine-base \
     \
@@ -79,7 +79,7 @@
     "
 
 
-RRECOMMENDS_packagegroup-base = "\
+RRECOMMENDS:packagegroup-base = "\
     kernel-module-nls-utf8 \
     kernel-module-input \
     kernel-module-uinput \
@@ -88,7 +88,7 @@
     kernel-module-rtc-sysfs \
     kernel-module-unix"
 
-RDEPENDS_packagegroup-base-extended = "\
+RDEPENDS:packagegroup-base-extended = "\
     packagegroup-base \
     ${ADD_WIFI} \
     ${ADD_BT} \
@@ -124,69 +124,69 @@
 #
 # packages added by distribution
 #
-SUMMARY_packagegroup-distro-base = "${DISTRO} extras"
+SUMMARY:packagegroup-distro-base = "${DISTRO} extras"
 DEPENDS_packagegroup-distro-base = "${DISTRO_EXTRA_DEPENDS}"
-RDEPENDS_packagegroup-distro-base = "${DISTRO_EXTRA_RDEPENDS}"
-RRECOMMENDS_packagegroup-distro-base = "${DISTRO_EXTRA_RRECOMMENDS}"
+RDEPENDS:packagegroup-distro-base = "${DISTRO_EXTRA_RDEPENDS}"
+RRECOMMENDS:packagegroup-distro-base = "${DISTRO_EXTRA_RRECOMMENDS}"
 
 #
 # packages added by machine config
 #
-SUMMARY_packagegroup-machine-base = "${MACHINE} extras"
-SUMMARY_packagegroup-machine-base = "Extra packages required to fully support ${MACHINE} hardware"
-RDEPENDS_packagegroup-machine-base = "${MACHINE_EXTRA_RDEPENDS}"
-RRECOMMENDS_packagegroup-machine-base = "${MACHINE_EXTRA_RRECOMMENDS}"
+SUMMARY:packagegroup-machine-base = "${MACHINE} extras"
+SUMMARY:packagegroup-machine-base = "Extra packages required to fully support ${MACHINE} hardware"
+RDEPENDS:packagegroup-machine-base = "${MACHINE_EXTRA_RDEPENDS}"
+RRECOMMENDS:packagegroup-machine-base = "${MACHINE_EXTRA_RRECOMMENDS}"
 
-SUMMARY_packagegroup-base-keyboard = "Keyboard support"
-RDEPENDS_packagegroup-base-keyboard = "\
+SUMMARY:packagegroup-base-keyboard = "Keyboard support"
+RDEPENDS:packagegroup-base-keyboard = "\
     ${VIRTUAL-RUNTIME_keymaps}"
 
-SUMMARY_packagegroup-base-pci = "PCI bus support"
-RDEPENDS_packagegroup-base-pci = "\
+SUMMARY:packagegroup-base-pci = "PCI bus support"
+RDEPENDS:packagegroup-base-pci = "\
     pciutils"
 
-SUMMARY_packagegroup-base-acpi = "ACPI support"
-RDEPENDS_packagegroup-base-acpi = "\
+SUMMARY:packagegroup-base-acpi = "ACPI support"
+RDEPENDS:packagegroup-base-acpi = "\
     acpid"
 
-SUMMARY_packagegroup-base-apm = "APM support"
-RDEPENDS_packagegroup-base-apm = "\
+SUMMARY:packagegroup-base-apm = "APM support"
+RDEPENDS:packagegroup-base-apm = "\
     ${VIRTUAL-RUNTIME_apm} \
     apmd"
 
-SUMMARY_packagegroup-base-ext2 = "ext2 filesystem support"
-RDEPENDS_packagegroup-base-ext2 = "\
+SUMMARY:packagegroup-base-ext2 = "ext2 filesystem support"
+RDEPENDS:packagegroup-base-ext2 = "\
     e2fsprogs-e2fsck \
     e2fsprogs-mke2fs"
 
-RRECOMMENDS_packagegroup-base-ext2 = "\
+RRECOMMENDS:packagegroup-base-ext2 = "\
     hdparm \
     e2fsprogs"
 
-SUMMARY_packagegroup-base-vfat = "FAT filesystem support"
-RRECOMMENDS_packagegroup-base-vfat = "\
+SUMMARY:packagegroup-base-vfat = "FAT filesystem support"
+RRECOMMENDS:packagegroup-base-vfat = "\
     kernel-module-msdos \
     kernel-module-vfat \
     kernel-module-nls-iso8859-1 \
     kernel-module-nls-cp437 \
     dosfstools"
 
-SUMMARY_packagegroup-base-alsa = "ALSA sound support"
-RDEPENDS_packagegroup-base-alsa = "\
+SUMMARY:packagegroup-base-alsa = "ALSA sound support"
+RDEPENDS:packagegroup-base-alsa = "\
     alsa-utils-alsactl \
     alsa-utils-amixer \
     ${VIRTUAL-RUNTIME_alsa-state}"
 
-RRECOMMENDS_packagegroup-base-alsa = "\
+RRECOMMENDS:packagegroup-base-alsa = "\
     kernel-module-snd-mixer-oss \
     kernel-module-snd-pcm-oss"
 
-SUMMARY_packagegroup-base-pcmcia = "PC card slot support"
-RDEPENDS_packagegroup-base-pcmcia = "\
+SUMMARY:packagegroup-base-pcmcia = "PC card slot support"
+RDEPENDS:packagegroup-base-pcmcia = "\
     pcmciautils \
     "
 
-RRECOMMENDS_packagegroup-base-pcmcia = "\
+RRECOMMENDS:packagegroup-base-pcmcia = "\
     kernel-module-pcmcia \
     kernel-module-airo-cs \
     kernel-module-pcnet-cs \
@@ -197,12 +197,12 @@
     ${@bb.utils.contains('DISTRO_FEATURES', 'wifi', 'kernel-module-orinoco-cs', '',d)} \
     ${@bb.utils.contains('DISTRO_FEATURES', 'wifi', 'kernel-module-spectrum-cs', '',d)}"
 
-SUMMARY_packagegroup-base-bluetooth = "Bluetooth support"
-RDEPENDS_packagegroup-base-bluetooth = "\
+SUMMARY:packagegroup-base-bluetooth = "Bluetooth support"
+RDEPENDS:packagegroup-base-bluetooth = "\
     bluez5 \
     "
 
-RRECOMMENDS_packagegroup-base-bluetooth = "\
+RRECOMMENDS:packagegroup-base-bluetooth = "\
     kernel-module-bluetooth \
     kernel-module-l2cap \
     kernel-module-rfcomm \
@@ -218,19 +218,19 @@
     ${@bb.utils.contains('COMBINED_FEATURES', 'pcmcia', 'kernel-module-dtl1-cs', '',d)} \
     "
 
-SUMMARY_packagegroup-base-usbgadget = "USB gadget support"
-RRECOMMENDS_packagegroup-base-usbgadget = "\
+SUMMARY:packagegroup-base-usbgadget = "USB gadget support"
+RRECOMMENDS:packagegroup-base-usbgadget = "\
     kernel-module-pxa27x_udc \
     kernel-module-gadgetfs \
     kernel-module-g-file-storage \
     kernel-module-g-serial \
     kernel-module-g-ether"
 
-SUMMARY_packagegroup-base-usbhost = "USB host support"
-RDEPENDS_packagegroup-base-usbhost = "\
+SUMMARY:packagegroup-base-usbhost = "USB host support"
+RDEPENDS:packagegroup-base-usbhost = "\
     usbutils "
 
-RRECOMMENDS_packagegroup-base-usbhost = "\
+RRECOMMENDS:packagegroup-base-usbhost = "\
     kernel-module-uhci-hcd \
     kernel-module-ohci-hcd \
     kernel-module-ehci-hcd \
@@ -244,36 +244,36 @@
     kernel-module-usbserial \
     kernel-module-usb-storage "
 
-SUMMARY_packagegroup-base-ppp = "PPP dial-up protocol support"
-RDEPENDS_packagegroup-base-ppp = "\
+SUMMARY:packagegroup-base-ppp = "PPP dial-up protocol support"
+RDEPENDS:packagegroup-base-ppp = "\
     ppp \
     ppp-dialin"
 
-RRECOMMENDS_packagegroup-base-ppp = "\
+RRECOMMENDS:packagegroup-base-ppp = "\
     kernel-module-ppp-async \
     kernel-module-ppp-deflate \
     kernel-module-ppp-generic \
     kernel-module-ppp-mppe \
     kernel-module-slhc"
 
-SUMMARY_packagegroup-base-ipsec = "IPSEC support"
-RDEPENDS_packagegroup-base-ipsec = "\
+SUMMARY:packagegroup-base-ipsec = "IPSEC support"
+RDEPENDS:packagegroup-base-ipsec = "\
     "
 
-RRECOMMENDS_packagegroup-base-ipsec = "\
+RRECOMMENDS:packagegroup-base-ipsec = "\
     kernel-module-ipsec"
 
 #
 # packagegroup-base-wifi contain everything needed to get WiFi working
 # WEP/WPA connection needs to be supported out-of-box
 #
-SUMMARY_packagegroup-base-wifi = "WiFi support"
-RDEPENDS_packagegroup-base-wifi = "\
+SUMMARY:packagegroup-base-wifi = "WiFi support"
+RDEPENDS:packagegroup-base-wifi = "\
     iw \
     wireless-regdb-static \
     wpa-supplicant"
 
-RRECOMMENDS_packagegroup-base-wifi = "\
+RRECOMMENDS:packagegroup-base-wifi = "\
     ${@bb.utils.contains('COMBINED_FEATURES', 'usbhost', 'kernel-module-zd1211rw', '',d)} \
     kernel-module-ieee80211-crypt \
     kernel-module-ieee80211-crypt-ccmp \
@@ -287,59 +287,59 @@
     kernel-module-aes-generic \
     kernel-module-aes"
 
-SUMMARY_packagegroup-base-nfc = "Near Field Communication support"
-RDEPENDS_packagegroup-base-nfc = "\
+SUMMARY:packagegroup-base-nfc = "Near Field Communication support"
+RDEPENDS:packagegroup-base-nfc = "\
     neard"
 
-RRECOMMENDS_packagegroup-base-nfc = "\
+RRECOMMENDS:packagegroup-base-nfc = "\
     kernel-module-nfc"
 
-SUMMARY_packagegroup-base-3g = "Cellular data support"
-RDEPENDS_packagegroup-base-3g = "\
+SUMMARY:packagegroup-base-3g = "Cellular data support"
+RDEPENDS:packagegroup-base-3g = "\
     ofono"
 
-RRECOMMENDS_packagegroup-base-3g = "\
+RRECOMMENDS:packagegroup-base-3g = "\
     kernel-module-cdc-acm \
     kernel-module-cdc-wdm"
 
-SUMMARY_packagegroup-base-smbfs = "SMB network filesystem support"
-RRECOMMENDS_packagegroup-base-smbfs = "\
+SUMMARY:packagegroup-base-smbfs = "SMB network filesystem support"
+RRECOMMENDS:packagegroup-base-smbfs = "\
     kernel-module-cifs \
     kernel-module-smbfs"
 
-SUMMARY_packagegroup-base-cramfs = "cramfs filesystem support"
-RRECOMMENDS_packagegroup-base-cramfs = "\
+SUMMARY:packagegroup-base-cramfs = "cramfs filesystem support"
+RRECOMMENDS:packagegroup-base-cramfs = "\
     kernel-module-cramfs"
 
 #
 # packagegroup-base-nfs provides ONLY client support - server is in nfs-utils package
 #
-SUMMARY_packagegroup-base-nfs = "NFS network filesystem support"
-RDEPENDS_packagegroup-base-nfs = "\
+SUMMARY:packagegroup-base-nfs = "NFS network filesystem support"
+RDEPENDS:packagegroup-base-nfs = "\
     rpcbind"
 
-RRECOMMENDS_packagegroup-base-nfs = "\
+RRECOMMENDS:packagegroup-base-nfs = "\
     kernel-module-nfs "
 
-SUMMARY_packagegroup-base-zeroconf = "Zeroconf support"
-RDEPENDS_packagegroup-base-zeroconf = "\
+SUMMARY:packagegroup-base-zeroconf = "Zeroconf support"
+RDEPENDS:packagegroup-base-zeroconf = "\
     avahi-daemon"
-RDEPENDS_packagegroup-base-zeroconf_append_libc-glibc = "\
+RDEPENDS:packagegroup-base-zeroconf:append:libc-glibc = "\
     libnss-mdns \
     "
 
-SUMMARY_packagegroup-base-ipv6 = "IPv6 support"
-RDEPENDS_packagegroup-base-ipv6 = "\
+SUMMARY:packagegroup-base-ipv6 = "IPv6 support"
+RDEPENDS:packagegroup-base-ipv6 = "\
     "
 
-RRECOMMENDS_packagegroup-base-ipv6 = "\
+RRECOMMENDS:packagegroup-base-ipv6 = "\
     kernel-module-ipv6 "
 
-SUMMARY_packagegroup-base-serial = "Serial port support"
-RDEPENDS_packagegroup-base-serial = "\
+SUMMARY:packagegroup-base-serial = "Serial port support"
+RDEPENDS:packagegroup-base-serial = "\
     setserial \
     lrzsz "
 
-SUMMARY_packagegroup-base-phone = "Cellular telephony (voice) support"
-RDEPENDS_packagegroup-base-phone = "\
+SUMMARY:packagegroup-base-phone = "Cellular telephony (voice) support"
+RDEPENDS:packagegroup-base-phone = "\
     ofono"
diff --git a/poky/meta/recipes-core/packagegroups/packagegroup-core-boot.bb b/poky/meta/recipes-core/packagegroups/packagegroup-core-boot.bb
index abbee14..faf7bc0 100644
--- a/poky/meta/recipes-core/packagegroups/packagegroup-core-boot.bb
+++ b/poky/meta/recipes-core/packagegroups/packagegroup-core-boot.bb
@@ -22,7 +22,7 @@
                     ${VIRTUAL-RUNTIME_initscripts} \
                    "
 
-RDEPENDS_${PN} = "\
+RDEPENDS:${PN} = "\
     base-files \
     base-passwd \
     ${VIRTUAL-RUNTIME_base-utils} \
@@ -36,6 +36,6 @@
     ${VIRTUAL-RUNTIME_update-alternatives} \
     ${MACHINE_ESSENTIAL_EXTRA_RDEPENDS}"
 
-RRECOMMENDS_${PN} = "\
+RRECOMMENDS:${PN} = "\
     ${VIRTUAL-RUNTIME_base-utils-syslog} \
     ${MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS}"
diff --git a/poky/meta/recipes-core/packagegroups/packagegroup-core-buildessential.bb b/poky/meta/recipes-core/packagegroups/packagegroup-core-buildessential.bb
index 78cc65d..32f4ac3 100644
--- a/poky/meta/recipes-core/packagegroups/packagegroup-core-buildessential.bb
+++ b/poky/meta/recipes-core/packagegroups/packagegroup-core-buildessential.bb
@@ -7,7 +7,7 @@
 
 inherit packagegroup
 
-RDEPENDS_packagegroup-core-buildessential = "\
+RDEPENDS:packagegroup-core-buildessential = "\
     autoconf \
     automake \
     binutils \
diff --git a/poky/meta/recipes-core/packagegroups/packagegroup-core-eclipse-debug.bb b/poky/meta/recipes-core/packagegroups/packagegroup-core-eclipse-debug.bb
index c45463f..4e91aaf 100644
--- a/poky/meta/recipes-core/packagegroups/packagegroup-core-eclipse-debug.bb
+++ b/poky/meta/recipes-core/packagegroups/packagegroup-core-eclipse-debug.bb
@@ -2,7 +2,7 @@
 
 inherit packagegroup
 
-RDEPENDS_${PN} = "\
+RDEPENDS:${PN} = "\
     gdbserver \
     tcf-agent \
     openssh-sftp-server \
diff --git a/poky/meta/recipes-core/packagegroups/packagegroup-core-nfs.bb b/poky/meta/recipes-core/packagegroups/packagegroup-core-nfs.bb
index 20fe6fc..35beb3f 100644
--- a/poky/meta/recipes-core/packagegroups/packagegroup-core-nfs.bb
+++ b/poky/meta/recipes-core/packagegroups/packagegroup-core-nfs.bb
@@ -9,11 +9,11 @@
 
 PACKAGES = "${PN}-server ${PN}-client"
 
-SUMMARY_${PN}-client = "NFS client"
-RDEPENDS_${PN}-client = "nfs-utils-client"
+SUMMARY:${PN}-client = "NFS client"
+RDEPENDS:${PN}-client = "nfs-utils-client"
 
-SUMMARY_${PN}-server = "NFS server"
-RDEPENDS_${PN}-server = "\
+SUMMARY:${PN}-server = "NFS server"
+RDEPENDS:${PN}-server = "\
     nfs-utils \
     nfs-utils-client \
     "
diff --git a/poky/meta/recipes-core/packagegroups/packagegroup-core-sdk.bb b/poky/meta/recipes-core/packagegroups/packagegroup-core-sdk.bb
index 03fa529..d70aff2 100644
--- a/poky/meta/recipes-core/packagegroups/packagegroup-core-sdk.bb
+++ b/poky/meta/recipes-core/packagegroups/packagegroup-core-sdk.bb
@@ -11,7 +11,7 @@
 
 #PACKAGEFUNCS =+ 'generate_sdk_pkgs'
 
-RDEPENDS_packagegroup-core-sdk = "\
+RDEPENDS:packagegroup-core-sdk = "\
     packagegroup-core-buildessential \
     coreutils \
     ccache \
@@ -26,15 +26,15 @@
     tcl"
 
 SANITIZERS = "libasan-dev libubsan-dev"
-SANITIZERS_arc = ""
-SANITIZERS_microblaze = ""
-SANITIZERS_mipsarch = ""
-SANITIZERS_nios2 = ""
-SANITIZERS_riscv64 = ""
-SANITIZERS_riscv32 = ""
-SANITIZERS_libc-musl = ""
+SANITIZERS:arc = ""
+SANITIZERS:microblaze = ""
+SANITIZERS:mipsarch = ""
+SANITIZERS:nios2 = ""
+SANITIZERS:riscv64 = ""
+SANITIZERS:riscv32 = ""
+SANITIZERS:libc-musl = ""
 
-RRECOMMENDS_packagegroup-core-sdk = "\
+RRECOMMENDS:packagegroup-core-sdk = "\
     libgomp \
     libgomp-dev \
     ${SANITIZERS}"
@@ -53,7 +53,7 @@
 #        # the package depchain code
 #        spkgdata = read_subpkgdata(pkg, d)
 #
-#        rdepends = explode_deps(spkgdata.get('RDEPENDS_%s' % pkg) or '')
+#        rdepends = explode_deps(spkgdata.get('RDEPENDS:%s' % pkg) or '')
 #        rreclist = []
 #
 #        for depend in rdepends:
@@ -63,16 +63,16 @@
 #                rreclist.append('%s-dev' % name)
 #            else:
 #                deppkgdata = read_subpkgdata(name, d)
-#                rdepends2 = explode_deps(deppkgdata.get('RDEPENDS_%s' % name) or '')
+#                rdepends2 = explode_deps(deppkgdata.get('RDEPENDS:%s' % name) or '')
 #                for depend in rdepends2:
 #                    split_depend = depend.split(' (')
 #                    name = split_depend[0].strip()
 #                    if packaged('%s-dev' % name, d):
 #                        rreclist.append('%s-dev' % name)
 #
-#            oldrrec = d.getVar('RRECOMMENDS_%s' % newpkg, False) or ''
-#            d.setVar('RRECOMMENDS_%s' % newpkg, oldrrec + ' ' + ' '.join(rreclist))
-#            # bb.note('RRECOMMENDS_%s = "%s"' % (newpkg, d.getVar('RRECOMMENDS_%s' % newpkg, False)))
+#            oldrrec = d.getVar('RRECOMMENDS:%s' % newpkg, False) or ''
+#            d.setVar('RRECOMMENDS:%s' % newpkg, oldrrec + ' ' + ' '.join(rreclist))
+#            # bb.note('RRECOMMENDS:%s = "%s"' % (newpkg, d.getVar('RRECOMMENDS:%s' % newpkg, False)))
 #
 #    # bb.note('pkgs is %s' % pkgs)
 #    d.setVar('PACKAGES', ' '.join(pkgs))
diff --git a/poky/meta/recipes-core/packagegroups/packagegroup-core-ssh-dropbear.bb b/poky/meta/recipes-core/packagegroups/packagegroup-core-ssh-dropbear.bb
index 5ec3f6c..4f844ad 100644
--- a/poky/meta/recipes-core/packagegroups/packagegroup-core-ssh-dropbear.bb
+++ b/poky/meta/recipes-core/packagegroups/packagegroup-core-ssh-dropbear.bb
@@ -3,4 +3,4 @@
 
 inherit packagegroup
 
-RDEPENDS_${PN} = "dropbear"
+RDEPENDS:${PN} = "dropbear"
diff --git a/poky/meta/recipes-core/packagegroups/packagegroup-core-ssh-openssh.bb b/poky/meta/recipes-core/packagegroups/packagegroup-core-ssh-openssh.bb
index 703f956..846df12 100644
--- a/poky/meta/recipes-core/packagegroups/packagegroup-core-ssh-openssh.bb
+++ b/poky/meta/recipes-core/packagegroups/packagegroup-core-ssh-openssh.bb
@@ -3,4 +3,4 @@
 
 inherit packagegroup
 
-RDEPENDS_${PN} = "openssh"
+RDEPENDS:${PN} = "openssh"
diff --git a/poky/meta/recipes-core/packagegroups/packagegroup-core-standalone-sdk-target.bb b/poky/meta/recipes-core/packagegroups/packagegroup-core-standalone-sdk-target.bb
index 2a54f1c..5ebcbce 100644
--- a/poky/meta/recipes-core/packagegroups/packagegroup-core-standalone-sdk-target.bb
+++ b/poky/meta/recipes-core/packagegroups/packagegroup-core-standalone-sdk-target.bb
@@ -5,7 +5,7 @@
 
 inherit packagegroup
 
-RDEPENDS_${PN} = "\
+RDEPENDS:${PN} = "\
     libgcc \
     libgcc-dev \
     libatomic \
@@ -15,7 +15,7 @@
     ${LIBC_DEPENDENCIES} \
     "
 
-RRECOMMENDS_${PN}_mingw32 = "\
+RRECOMMENDS:${PN}:mingw32 = "\
     libssp \
     libssp-dev \
     "
diff --git a/poky/meta/recipes-core/packagegroups/packagegroup-core-tools-debug.bb b/poky/meta/recipes-core/packagegroups/packagegroup-core-tools-debug.bb
index 542a020..c75850a 100644
--- a/poky/meta/recipes-core/packagegroups/packagegroup-core-tools-debug.bb
+++ b/poky/meta/recipes-core/packagegroups/packagegroup-core-tools-debug.bb
@@ -11,12 +11,12 @@
 PR = "r3"
 
 MTRACE = ""
-MTRACE_libc-glibc = "libc-mtrace"
+MTRACE:libc-glibc = "libc-mtrace"
 
 STRACE = "strace"
-STRACE_riscv32 = ""
+STRACE:riscv32 = ""
 
-RDEPENDS_${PN} = "\
+RDEPENDS:${PN} = "\
     gdb \
     gdbserver \
     ${MTRACE} \
diff --git a/poky/meta/recipes-core/packagegroups/packagegroup-core-tools-profile.bb b/poky/meta/recipes-core/packagegroups/packagegroup-core-tools-profile.bb
index 194dca7..663a9cd 100644
--- a/poky/meta/recipes-core/packagegroups/packagegroup-core-tools-profile.bb
+++ b/poky/meta/recipes-core/packagegroups/packagegroup-core-tools-profile.bb
@@ -12,11 +12,11 @@
 
 PROFILE_TOOLS_X = ""
 # sysprof doesn't support aarch64 and nios2
-PROFILE_TOOLS_X_aarch64 = ""
-PROFILE_TOOLS_X_nios2 = ""
+PROFILE_TOOLS_X:aarch64 = ""
+PROFILE_TOOLS_X:nios2 = ""
 PROFILE_TOOLS_SYSTEMD = "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd-analyze', '', d)}"
 
-RRECOMMENDS_${PN} = "\
+RRECOMMENDS:${PN} = "\
     ${PERF} \
     blktrace \
     ${PROFILE_TOOLS_X} \
@@ -27,19 +27,19 @@
     powertop \
     "
 PERF = "perf"
-PERF_libc-musl = ""
-PERF_libc-musl_arm = "perf"
-PERF_riscv32 = ""
+PERF:libc-musl = ""
+PERF:libc-musl:arm = "perf"
+PERF:riscv32 = ""
 
 # systemtap needs elfutils which is not fully buildable on some arches/libcs
 SYSTEMTAP = "systemtap"
-SYSTEMTAP_libc-musl = ""
-SYSTEMTAP_nios2 = ""
-SYSTEMTAP_riscv64 = ""
+SYSTEMTAP:libc-musl = ""
+SYSTEMTAP:nios2 = ""
+SYSTEMTAP:riscv64 = ""
 
 LTTNGTOOLS = "lttng-tools"
-LTTNGTOOLS_arc = ""
-LTTNGTOOLS_riscv32 = ""
+LTTNGTOOLS:arc = ""
+LTTNGTOOLS:riscv32 = ""
 
 BABELTRACE = "babeltrace"
 BABELTRACE2 = "babeltrace2"
@@ -47,22 +47,22 @@
 # valgrind does not work on the following configurations/architectures
 
 VALGRIND = "valgrind"
-VALGRIND_libc-musl = ""
-VALGRIND_mipsarch = ""
-VALGRIND_nios2 = ""
-VALGRIND_arc = ""
-VALGRIND_armv4 = ""
-VALGRIND_armv5 = ""
-VALGRIND_armv6 = ""
-VALGRIND_armeb = ""
-VALGRIND_aarch64 = ""
-VALGRIND_riscv64 = ""
-VALGRIND_riscv32 = ""
-VALGRIND_powerpc = "${@bb.utils.contains('TARGET_FPU', 'soft', '', 'valgrind', d)}"
-VALGRIND_linux-gnux32 = ""
-VALGRIND_linux-gnun32 = ""
+VALGRIND:libc-musl = ""
+VALGRIND:mipsarch = ""
+VALGRIND:nios2 = ""
+VALGRIND:arc = ""
+VALGRIND:armv4 = ""
+VALGRIND:armv5 = ""
+VALGRIND:armv6 = ""
+VALGRIND:armeb = ""
+VALGRIND:aarch64 = ""
+VALGRIND:riscv64 = ""
+VALGRIND:riscv32 = ""
+VALGRIND:powerpc = "${@bb.utils.contains('TARGET_FPU', 'soft', '', 'valgrind', d)}"
+VALGRIND:linux-gnux32 = ""
+VALGRIND:linux-gnun32 = ""
 
-RDEPENDS_${PN} = "\
+RDEPENDS:${PN} = "\
     ${PROFILETOOLS} \
     ${LTTNGTOOLS} \
     ${BABELTRACE} \
diff --git a/poky/meta/recipes-core/packagegroups/packagegroup-core-tools-testapps.bb b/poky/meta/recipes-core/packagegroups/packagegroup-core-tools-testapps.bb
index 015810c..94405fd 100644
--- a/poky/meta/recipes-core/packagegroups/packagegroup-core-tools-testapps.bb
+++ b/poky/meta/recipes-core/packagegroups/packagegroup-core-tools-testapps.bb
@@ -12,14 +12,14 @@
 
 # kexec-tools doesn't work on e5500-64b, microblaze and nios2 yet
 KEXECTOOLS ?= "kexec"
-KEXECTOOLS_e5500-64b ?= ""
-KEXECTOOLS_microblaze ?= ""
-KEXECTOOLS_nios2 ?= ""
-KEXECTOOLS_riscv64 ?= ""
-KEXECTOOLS_riscv32 ?= ""
+KEXECTOOLS:e5500-64b ?= ""
+KEXECTOOLS:microblaze ?= ""
+KEXECTOOLS:nios2 ?= ""
+KEXECTOOLS:riscv64 ?= ""
+KEXECTOOLS:riscv32 ?= ""
 
 GSTEXAMPLES ?= "gst-examples"
-GSTEXAMPLES_riscv64 = ""
+GSTEXAMPLES:riscv64 = ""
 
 X11GLTOOLS = "\
     mesa-demos \
@@ -37,7 +37,7 @@
     xprop \
     "
 
-RDEPENDS_${PN} = "\
+RDEPENDS:${PN} = "\
     blktool \
     ${KEXECTOOLS} \
     alsa-utils-amixer \
diff --git a/poky/meta/recipes-core/packagegroups/packagegroup-cross-canadian.bb b/poky/meta/recipes-core/packagegroups/packagegroup-cross-canadian.bb
index 3b430c0..49c075e 100644
--- a/poky/meta/recipes-core/packagegroups/packagegroup-cross-canadian.bb
+++ b/poky/meta/recipes-core/packagegroups/packagegroup-cross-canadian.bb
@@ -10,7 +10,7 @@
 GCC = "gcc-cross-canadian-${TRANSLATED_TARGET_ARCH}"
 GDB = "gdb-cross-canadian-${TRANSLATED_TARGET_ARCH}"
 
-RDEPENDS_${PN} = "\
+RDEPENDS:${PN} = "\
     ${@all_multilib_tune_values(d, 'BINUTILS')} \
     ${@all_multilib_tune_values(d, 'GCC')} \
     ${@all_multilib_tune_values(d, 'GDB')} \
diff --git a/poky/meta/recipes-core/packagegroups/packagegroup-go-cross-canadian.bb b/poky/meta/recipes-core/packagegroups/packagegroup-go-cross-canadian.bb
index 3daace1..d0596ef 100644
--- a/poky/meta/recipes-core/packagegroups/packagegroup-go-cross-canadian.bb
+++ b/poky/meta/recipes-core/packagegroups/packagegroup-go-cross-canadian.bb
@@ -7,6 +7,6 @@
 
 GO = "go-cross-canadian-${TRANSLATED_TARGET_ARCH}"
 
-RDEPENDS_${PN} = " \
+RDEPENDS:${PN} = " \
     ${@all_multilib_tune_values(d, 'GO')} \
 "
diff --git a/poky/meta/recipes-core/packagegroups/packagegroup-go-sdk-target.bb b/poky/meta/recipes-core/packagegroups/packagegroup-go-sdk-target.bb
index 9a52b07..61629d2 100644
--- a/poky/meta/recipes-core/packagegroups/packagegroup-go-sdk-target.bb
+++ b/poky/meta/recipes-core/packagegroups/packagegroup-go-sdk-target.bb
@@ -2,7 +2,7 @@
 
 inherit packagegroup goarch
 
-RDEPENDS_${PN} = " \
+RDEPENDS:${PN} = " \
     go \
     go-runtime \
     go-runtime-dev \
diff --git a/poky/meta/recipes-core/packagegroups/packagegroup-self-hosted.bb b/poky/meta/recipes-core/packagegroups/packagegroup-self-hosted.bb
index 9a70b18..9523aad 100644
--- a/poky/meta/recipes-core/packagegroups/packagegroup-self-hosted.bb
+++ b/poky/meta/recipes-core/packagegroups/packagegroup-self-hosted.bb
@@ -24,7 +24,7 @@
     packagegroup-self-hosted-host-tools \
     "
 
-RDEPENDS_packagegroup-self-hosted = "\
+RDEPENDS:packagegroup-self-hosted = "\
     packagegroup-self-hosted-debug \
     packagegroup-self-hosted-sdk \
     packagegroup-self-hosted-extended \
@@ -32,7 +32,7 @@
     packagegroup-self-hosted-host-tools \
     "
 
-RDEPENDS_packagegroup-self-hosted-host-tools = "\
+RDEPENDS:packagegroup-self-hosted-host-tools = "\
     e2fsprogs \
     e2fsprogs-e2fsck \
     e2fsprogs-mke2fs \
@@ -49,9 +49,9 @@
     screen \
     "
 PSEUDO = "pseudo"
-PSEUDO_libc-musl = ""
+PSEUDO:libc-musl = ""
 
-RRECOMMENDS_packagegroup-self-hosted-host-tools = "\
+RRECOMMENDS:packagegroup-self-hosted-host-tools = "\
     kernel-module-tun \
     kernel-module-iptable-raw \
     kernel-module-iptable-nat \
@@ -59,7 +59,7 @@
     kernel-module-iptable-filter \
 	"
 
-RDEPENDS_packagegroup-self-hosted-sdk = "\
+RDEPENDS:packagegroup-self-hosted-sdk = "\
     autoconf \
     automake \
     binutils \
@@ -87,18 +87,18 @@
     quilt \
     sed \
     "
-RDEPENDS_packagegroup-self-hosted-sdk_append_mingw32 = "\
+RDEPENDS:packagegroup-self-hosted-sdk:append:mingw32 = "\
     libssp \
     libssp-dev \
     libssp-staticdev \
     "
 # rpcsvc-proto: for rpcgen
-RDEPENDS_packagegroup-self-hosted-sdk_append_libc-glibc = "\
+RDEPENDS:packagegroup-self-hosted-sdk:append:libc-glibc = "\
     glibc-gconv-ibm850 \
     glibc-utils \
     rpcsvc-proto \
     "
-RDEPENDS_packagegroup-self-hosted-debug = " \
+RDEPENDS:packagegroup-self-hosted-debug = " \
     gdb \
     gdbserver \
     rsync \
@@ -106,7 +106,7 @@
     tcf-agent"
 
 
-RDEPENDS_packagegroup-self-hosted-extended = "\
+RDEPENDS:packagegroup-self-hosted-extended = "\
     bzip2 \
     chrpath \
     cpio \
@@ -177,7 +177,7 @@
     "
 
 
-RDEPENDS_packagegroup-self-hosted-graphics = "\
+RDEPENDS:packagegroup-self-hosted-graphics = "\
     builder \
     libgl \
     libgl-dev \
diff --git a/poky/meta/recipes-core/psplash/psplash_git.bb b/poky/meta/recipes-core/psplash/psplash_git.bb
index 59e1e3f..e9789c4 100644
--- a/poky/meta/recipes-core/psplash/psplash_git.bb
+++ b/poky/meta/recipes-core/psplash/psplash_git.bb
@@ -44,7 +44,7 @@
             pkgs.append(outname)
         localpaths.append(flocal)
 
-    # Set these so that we have less work to do in do_compile and do_install_append
+    # Set these so that we have less work to do in do_compile and do_install:append
     d.setVar("SPLASH_INSTALL", " ".join(pkgs))
     d.setVar("SPLASH_LOCALPATHS", " ".join(localpaths))
     for p in pkgs:
@@ -54,12 +54,12 @@
     for p in pkgs:
         ep = '%s%s' % (mlprefix, p)
         epsplash = '%s%s' % (mlprefix, 'psplash')
-        d.setVar("FILES_%s" % ep, "${bindir}/%s" % p)
-        d.setVar("ALTERNATIVE_%s" % ep, 'psplash')
+        d.setVar("FILES:%s" % ep, "${bindir}/%s" % p)
+        d.setVar("ALTERNATIVE:%s" % ep, 'psplash')
         d.setVarFlag("ALTERNATIVE_TARGET_%s" % ep, 'psplash', '${bindir}/%s' % p)
-        d.appendVar("RDEPENDS_%s" % ep, " %s" % pn)
+        d.appendVar("RDEPENDS:%s" % ep, " %s" % pn)
         if p == "psplash-default":
-            d.appendVar("RRECOMMENDS_%s" % pn, " %s" % ep)
+            d.appendVar("RRECOMMENDS:%s" % pn, " %s" % ep)
 }
 
 S = "${WORKDIR}/git"
@@ -98,7 +98,7 @@
         shutil.copyfile("psplash", outputfile)
 }
 
-do_install_append() {
+do_install:append() {
 	if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then
 		install -d ${D}${sysconfdir}/init.d/
 		install -m 0755 ${WORKDIR}/psplash-init ${D}${sysconfdir}/init.d/psplash.sh
@@ -122,9 +122,9 @@
 }
 
 SYSTEMD_PACKAGES = "${@bb.utils.contains('DISTRO_FEATURES','systemd','${PN}','',d)}"
-SYSTEMD_SERVICE_${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'systemd', 'psplash-start.service psplash-systemd.service', '', d)}"
+SYSTEMD_SERVICE:${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'systemd', 'psplash-start.service psplash-systemd.service', '', d)}"
 
 INITSCRIPT_NAME = "psplash.sh"
 INITSCRIPT_PARAMS = "start 0 S . stop 20 0 1 6 ."
 
-FILES_${PN} += "/mnt"
+FILES:${PN} += "/mnt"
diff --git a/poky/meta/recipes-core/readline/readline.inc b/poky/meta/recipes-core/readline/readline.inc
index 039ffde..7f7f5ad 100644
--- a/poky/meta/recipes-core/readline/readline.inc
+++ b/poky/meta/recipes-core/readline/readline.inc
@@ -21,13 +21,13 @@
 
 LEAD_SONAME = "libreadline.so"
 
-do_configure_prepend () {
+do_configure:prepend () {
 	if [ ! -e ${S}/acinclude.m4 ]; then
 		cat ${S}/aclocal.m4 > ${S}/acinclude.m4
 	fi
 }
 
-do_install_append () {
+do_install:append () {
 	# Make install doesn't properly install these
 	oe_libinstall -so -C shlib libhistory ${D}${libdir}
 	oe_libinstall -so -C shlib libreadline ${D}${libdir}
@@ -42,15 +42,15 @@
 
 BBCLASSEXTEND = "native nativesdk"
 
-CONFFILES_${PN} += "${sysconfdir}/inputrc"
+CONFFILES:${PN} += "${sysconfdir}/inputrc"
 
 inherit update-alternatives
 
 ALTERNATIVE_PRIORITY = "100"
-ALTERNATIVE_${PN}-doc = "history.3"
+ALTERNATIVE:${PN}-doc = "history.3"
 ALTERNATIVE_LINK_NAME[history.3] = "${mandir}/man3/history.3"
 
 # OpenSuse injects versions into libreadline leading to conficits between our native one and theirs
 # see their spec file for where this is injected. Extra versioning is harmless so we just do the same.
-SRC_URI_append_class-native = " file://rl-native.map"
-LDFLAGS_append_class-native = " -Wl,--version-script=${WORKDIR}/rl-native.map"
+SRC_URI:append:class-native = " file://rl-native.map"
+LDFLAGS:append:class-native = " -Wl,--version-script=${WORKDIR}/rl-native.map"
diff --git a/poky/meta/recipes-core/sysfsutils/sysfsutils_2.1.0.bb b/poky/meta/recipes-core/sysfsutils/sysfsutils_2.1.0.bb
index 34bf431..72f8069 100644
--- a/poky/meta/recipes-core/sysfsutils/sysfsutils_2.1.0.bb
+++ b/poky/meta/recipes-core/sysfsutils/sysfsutils_2.1.0.bb
@@ -3,8 +3,8 @@
 HOMEPAGE = "http://linux-diag.sourceforge.net/Sysfsutils.html"
 
 LICENSE = "GPLv2 & LGPLv2.1"
-LICENSE_${PN} = "GPLv2"
-LICENSE_libsysfs = "LGPLv2.1"
+LICENSE:${PN} = "GPLv2"
+LICENSE:libsysfs = "LGPLv2.1"
 LIC_FILES_CHKSUM = "file://COPYING;md5=3d06403ea54c7574a9e581c6478cc393 \
                     file://cmd/GPL;md5=d41d4e2e1e108554e0388ea4aecd8d27 \
                     file://lib/LGPL;md5=b75d069791103ffe1c0d6435deeff72e"
@@ -26,6 +26,6 @@
 inherit autotools
 
 PACKAGES =+ "libsysfs"
-FILES_libsysfs = "${libdir}/lib*${SOLIBS}"
+FILES:libsysfs = "${libdir}/lib*${SOLIBS}"
 
 export libdir = "${base_libdir}"
diff --git a/poky/meta/recipes-core/systemd/systemd-boot_248.3.bb b/poky/meta/recipes-core/systemd/systemd-boot_249.1.bb
similarity index 79%
rename from poky/meta/recipes-core/systemd/systemd-boot_248.3.bb
rename to poky/meta/recipes-core/systemd/systemd-boot_249.1.bb
index 249e620..c93bc31 100644
--- a/poky/meta/recipes-core/systemd/systemd-boot_248.3.bb
+++ b/poky/meta/recipes-core/systemd/systemd-boot_249.1.bb
@@ -3,15 +3,15 @@
 
 require conf/image-uefi.conf
 
-DEPENDS = "intltool-native libcap util-linux gnu-efi gperf-native"
+DEPENDS = "intltool-native libcap util-linux gnu-efi gperf-native python3-jinja2-native"
 
 inherit meson pkgconfig gettext
 inherit deploy
 
-LDFLAGS_prepend = "${@ " ".join(d.getVar('LD').split()[1:])} "
+LDFLAGS:prepend = "${@ " ".join(d.getVar('LD').split()[1:])} "
 
 do_write_config[vardeps] += "CC OBJCOPY"
-do_write_config_append() {
+do_write_config:append() {
     cat >${WORKDIR}/meson-${PN}.cross <<EOF
 [binaries]
 efi_cc = ${@meson_array('CC', d)}
@@ -19,11 +19,14 @@
 EOF
 }
 
+# need to use ${HOST_PREFIX} here, otherwise ld.bfd could be used from HOSTTOOLS_NONFATAL
+EFI_LD = "${HOST_PREFIX}ld.bfd"
+
 EXTRA_OEMESON += "-Defi=true \
                   -Dgnu-efi=true \
                   -Defi-includedir=${STAGING_INCDIR}/efi \
                   -Defi-libdir=${STAGING_LIBDIR} \
-                  -Defi-ld=${@ d.getVar('LD').split()[0]} \
+                  -Defi-ld=${EFI_LD} \
                   -Dman=false \
                   --cross-file ${WORKDIR}/meson-${PN}.cross \
                   "
@@ -41,15 +44,15 @@
     d.setVar("SYSTEMD_BOOT_IMAGE_PREFIX", prefix)
 }
 
-FILES_${PN} = "${EFI_FILES_PATH}/${SYSTEMD_BOOT_IMAGE}"
+FILES:${PN} = "${EFI_FILES_PATH}/${SYSTEMD_BOOT_IMAGE}"
 
-RDEPENDS_${PN} += "virtual/systemd-bootconf"
+RDEPENDS:${PN} += "virtual/systemd-bootconf"
 
 # Imported from the old gummiboot recipe
-TUNE_CCARGS_remove = "-mfpmath=sse"
+TUNE_CCARGS:remove = "-mfpmath=sse"
 
 COMPATIBLE_HOST = "(aarch64.*|arm.*|x86_64.*|i.86.*)-linux"
-COMPATIBLE_HOST_x86-x32 = "null"
+COMPATIBLE_HOST:x86-x32 = "null"
 
 do_compile() {
 	ninja \
diff --git a/poky/meta/recipes-core/systemd/systemd-bootconf_1.00.bb b/poky/meta/recipes-core/systemd/systemd-bootconf_1.00.bb
index d13b8c5..12c4447 100644
--- a/poky/meta/recipes-core/systemd/systemd-bootconf_1.00.bb
+++ b/poky/meta/recipes-core/systemd/systemd-bootconf_1.00.bb
@@ -2,7 +2,7 @@
 LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
 SUMMARY = "Basic systemd-boot configuration files"
 
-RPROVIDES_${PN} += "virtual/systemd-bootconf"
+RPROVIDES:${PN} += "virtual/systemd-bootconf"
 PACKAGE_ARCH = "${MACHINE_ARCH}"
 
 inherit systemd-boot-cfg
@@ -12,7 +12,7 @@
 LABELS = "boot"
 
 ROOT ?= "root=/dev/sda2"
-APPEND_append = " ${ROOT}"
+APPEND:append = " ${ROOT}"
 
 python do_configure() {
     bb.build.exec_func('build_efi_cfg', d)
@@ -29,4 +29,4 @@
 	install *.conf ${D}/boot/loader/entries/
 }
 
-FILES_${PN} = "/boot/loader/* /boot/loader/entries/*"
+FILES:${PN} = "/boot/loader/* /boot/loader/entries/*"
diff --git a/poky/meta/recipes-core/systemd/systemd-compat-units.bb b/poky/meta/recipes-core/systemd/systemd-compat-units.bb
index 361dc1c..f7505f1 100644
--- a/poky/meta/recipes-core/systemd/systemd-compat-units.bb
+++ b/poky/meta/recipes-core/systemd/systemd-compat-units.bb
@@ -12,7 +12,7 @@
 
 INHIBIT_DEFAULT_DEPS = "1"
 
-ALLOW_EMPTY_${PN} = "1"
+ALLOW_EMPTY:${PN} = "1"
 
 REQUIRED_DISTRO_FEATURES = "systemd"
 
@@ -25,7 +25,7 @@
   syslog.busybox \
 "
 
-pkg_postinst_${PN} () {
+pkg_postinst:${PN} () {
 
 	cd $D${sysconfdir}/init.d  ||  exit 0
 
@@ -46,4 +46,4 @@
 	echo
 }
 
-RDEPENDS_${PN} = "systemd"
+RDEPENDS:${PN} = "systemd"
diff --git a/poky/meta/recipes-core/systemd/systemd-conf_1.0.bb b/poky/meta/recipes-core/systemd/systemd-conf_1.0.bb
index 235923b..61ce793 100644
--- a/poky/meta/recipes-core/systemd/systemd-conf_1.0.bb
+++ b/poky/meta/recipes-core/systemd/systemd-conf_1.0.bb
@@ -29,13 +29,13 @@
 }
 
 # Based on change from YP bug 8141, OE commit 5196d7bacaef1076c361adaa2867be31759c1b52
-do_install_append_qemuall() {
+do_install:append:qemuall() {
 	install -D -m0644 ${WORKDIR}/system.conf-qemuall ${D}${systemd_unitdir}/system.conf.d/01-${PN}.conf
 }
 
 PACKAGE_ARCH = "${MACHINE_ARCH}"
 
-FILES_${PN} = "\
+FILES:${PN} = "\
     ${systemd_unitdir}/journald.conf.d/ \
     ${systemd_unitdir}/logind.conf.d/ \
     ${systemd_unitdir}/system.conf.d/ \
diff --git a/poky/meta/recipes-core/systemd/systemd-machine-units_1.0.bb b/poky/meta/recipes-core/systemd/systemd-machine-units_1.0.bb
index 02756f4..12f27d6 100644
--- a/poky/meta/recipes-core/systemd/systemd-machine-units_1.0.bb
+++ b/poky/meta/recipes-core/systemd/systemd-machine-units_1.0.bb
@@ -8,6 +8,6 @@
 PR = "r19"
 
 inherit systemd
-SYSTEMD_SERVICE_${PN} = ""
+SYSTEMD_SERVICE:${PN} = ""
 
-ALLOW_EMPTY_${PN} = "1"
+ALLOW_EMPTY:${PN} = "1"
diff --git a/poky/meta/recipes-core/systemd/systemd-serialgetty.bb b/poky/meta/recipes-core/systemd/systemd-serialgetty.bb
index 34defeb..92d35eb 100644
--- a/poky/meta/recipes-core/systemd/systemd-serialgetty.bb
+++ b/poky/meta/recipes-core/systemd/systemd-serialgetty.bb
@@ -46,7 +46,7 @@
 }
 
 # This is a machine specific file
-FILES_${PN} = "${systemd_unitdir}/system/*.service ${sysconfdir}"
+FILES:${PN} = "${systemd_unitdir}/system/*.service ${sysconfdir}"
 PACKAGE_ARCH = "${MACHINE_ARCH}"
 
-ALLOW_EMPTY_${PN} = "1"
+ALLOW_EMPTY:${PN} = "1"
diff --git a/poky/meta/recipes-core/systemd/systemd.inc b/poky/meta/recipes-core/systemd/systemd.inc
index 0524a25..0e92a72 100644
--- a/poky/meta/recipes-core/systemd/systemd.inc
+++ b/poky/meta/recipes-core/systemd/systemd.inc
@@ -14,8 +14,8 @@
 LIC_FILES_CHKSUM = "file://LICENSE.GPL2;md5=751419260aa954499f7abaabaa882bbe \
                     file://LICENSE.LGPL2.1;md5=4fbd65380cdd255951079008b364516c"
 
-SRCREV = "37c4cfde0ce613f0f00544d3f4e2e72bf93d9c76"
-SRCBRANCH = "v248-stable"
+SRCREV = "764b74113e36ac5219a4b82a05f311b5a92136ce"
+SRCBRANCH = "v249-stable"
 SRC_URI = "git://github.com/systemd/systemd-stable.git;protocol=git;branch=${SRCBRANCH} \
 "
 
diff --git a/poky/meta/recipes-core/systemd/systemd/0001-binfmt-Don-t-install-dependency-links-at-install-tim.patch b/poky/meta/recipes-core/systemd/systemd/0001-binfmt-Don-t-install-dependency-links-at-install-tim.patch
index 8dd22ee..d3af734 100644
--- a/poky/meta/recipes-core/systemd/systemd/0001-binfmt-Don-t-install-dependency-links-at-install-tim.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0001-binfmt-Don-t-install-dependency-links-at-install-tim.patch
@@ -1,4 +1,4 @@
-From 564830719be2017c4953589d50f21a9e856a4ecc Mon Sep 17 00:00:00 2001
+From 08cd165f5db0e68a499b80c4b1744a4206948259 Mon Sep 17 00:00:00 2001
 From: Chen Qi <Qi.Chen@windriver.com>
 Date: Thu, 21 Feb 2019 16:23:24 +0800
 Subject: [PATCH] binfmt: Don't install dependency links at install time for
@@ -25,11 +25,11 @@
  units/systemd-binfmt.service.in         | 4 ++++
  3 files changed, 9 insertions(+), 4 deletions(-)
 
-Index: systemd-stable/units/meson.build
-===================================================================
---- systemd-stable.orig/units/meson.build
-+++ systemd-stable/units/meson.build
-@@ -55,8 +55,7 @@ units = [
+diff --git a/units/meson.build b/units/meson.build
+index 17e9ead9c1..e5502be620 100644
+--- a/units/meson.build
++++ b/units/meson.build
+@@ -59,8 +59,7 @@ units = [
          ['poweroff.target',                     '',
           (with_runlevels ? 'runlevel0.target' : '')],
          ['printer.target',                      ''],
@@ -39,9 +39,9 @@
          ['proc-sys-fs-binfmt_misc.mount',       'ENABLE_BINFMT'],
          ['reboot.target',                       '',
           'ctrl-alt-del.target' + (with_runlevels ? ' runlevel6.target' : '')],
-@@ -166,8 +165,7 @@ in_units = [
-         ['rc-local.service',                     'HAVE_SYSV_COMPAT'],
+@@ -178,8 +177,7 @@ in_units = [
          ['rescue.service',                       ''],
+         ['serial-getty@.service',                ''],
          ['systemd-backlight@.service',           'ENABLE_BACKLIGHT'],
 -        ['systemd-binfmt.service',               'ENABLE_BINFMT',
 -         'sysinit.target.wants/'],
@@ -49,21 +49,21 @@
          ['systemd-bless-boot.service',           'ENABLE_EFI HAVE_BLKID'],
          ['systemd-boot-check-no-failures.service', ''],
          ['systemd-coredump@.service',            'ENABLE_COREDUMP'],
-Index: systemd-stable/units/proc-sys-fs-binfmt_misc.automount
-===================================================================
---- systemd-stable.orig/units/proc-sys-fs-binfmt_misc.automount
-+++ systemd-stable/units/proc-sys-fs-binfmt_misc.automount
-@@ -18,3 +18,6 @@ ConditionPathIsReadWrite=/proc/sys/
+diff --git a/units/proc-sys-fs-binfmt_misc.automount b/units/proc-sys-fs-binfmt_misc.automount
+index 172c8757ab..f65d8930c6 100644
+--- a/units/proc-sys-fs-binfmt_misc.automount
++++ b/units/proc-sys-fs-binfmt_misc.automount
+@@ -19,3 +19,6 @@ ConditionPathIsReadWrite=/proc/sys/
  
  [Automount]
  Where=/proc/sys/fs/binfmt_misc
 +
 +[Install]
 +WantedBy=sysinit.target
-Index: systemd-stable/units/systemd-binfmt.service.in
-===================================================================
---- systemd-stable.orig/units/systemd-binfmt.service.in
-+++ systemd-stable/units/systemd-binfmt.service.in
+diff --git a/units/systemd-binfmt.service.in b/units/systemd-binfmt.service.in
+index fdafce7ff7..4efc05e495 100644
+--- a/units/systemd-binfmt.service.in
++++ b/units/systemd-binfmt.service.in
 @@ -14,6 +14,7 @@ Documentation=https://www.kernel.org/doc/html/latest/admin-guide/binfmt-misc.htm
  Documentation=https://www.freedesktop.org/wiki/Software/systemd/APIFileSystems
  DefaultDependencies=no
@@ -73,8 +73,8 @@
  After=proc-sys-fs-binfmt_misc.mount
  Before=sysinit.target shutdown.target
 @@ -30,3 +31,6 @@ RemainAfterExit=yes
- ExecStart=@rootlibexecdir@/systemd-binfmt
- ExecStop=@rootlibexecdir@/systemd-binfmt --unregister
+ ExecStart={{ROOTLIBEXECDIR}}/systemd-binfmt
+ ExecStop={{ROOTLIBEXECDIR}}/systemd-binfmt --unregister
  TimeoutSec=90s
 +
 +[Install]
diff --git a/poky/meta/recipes-core/systemd/systemd/0001-test-seccomp-Check-for-__NR_ppoll-before-use.patch b/poky/meta/recipes-core/systemd/systemd/0001-test-seccomp-Check-for-__NR_ppoll-before-use.patch
deleted file mode 100644
index 0ba5fa2..0000000
--- a/poky/meta/recipes-core/systemd/systemd/0001-test-seccomp-Check-for-__NR_ppoll-before-use.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From 027ac2ad0695bb506460f9dd7e57149b71055887 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Tue, 8 Jun 2021 23:21:01 -0700
-Subject: [PATCH] test-seccomp: Check for __NR_ppoll before use
-
-some newer architectures like riscv32 do not have __NR_ppoll from get go
-
-Upstream-Status: Submitted [https://github.com/systemd/systemd/pull/19858]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/test/test-seccomp.c | 5 +++--
- 1 file changed, 3 insertions(+), 2 deletions(-)
-
-diff --git a/src/test/test-seccomp.c b/src/test/test-seccomp.c
-index b1f917eb54..daac0fcea8 100644
---- a/src/test/test-seccomp.c
-+++ b/src/test/test-seccomp.c
-@@ -832,7 +832,7 @@ static void test_load_syscall_filter_set_raw(void) {
-                 assert_se(s = hashmap_new(NULL));
- #if defined __NR_poll && __NR_poll >= 0
-                 assert_se(hashmap_put(s, UINT32_TO_PTR(__NR_poll + 1), INT_TO_PTR(-1)) >= 0);
--#else
-+#elif defined __NR_ppoll
-                 assert_se(hashmap_put(s, UINT32_TO_PTR(__NR_ppoll + 1), INT_TO_PTR(-1)) >= 0);
- #endif
- 
-@@ -849,7 +849,8 @@ static void test_load_syscall_filter_set_raw(void) {
-                 assert_se(s = hashmap_new(NULL));
- #if defined __NR_poll && __NR_poll >= 0
-                 assert_se(hashmap_put(s, UINT32_TO_PTR(__NR_poll + 1), INT_TO_PTR(EILSEQ)) >= 0);
--#else
-+#elif defined __NR_ppoll
-+                assert_se(hashmap_put(s, UINT32_TO_PTR(__NR_ppoll + 1), INT_TO_PTR(-1)) >= 0);
-                 assert_se(hashmap_put(s, UINT32_TO_PTR(__NR_ppoll + 1), INT_TO_PTR(EILSEQ)) >= 0);
- #endif
- 
--- 
-2.32.0
-
diff --git a/poky/meta/recipes-core/systemd/systemd/0002-don-t-use-glibc-specific-qsort_r.patch b/poky/meta/recipes-core/systemd/systemd/0002-don-t-use-glibc-specific-qsort_r.patch
index 4cdf66e..9db22cd 100644
--- a/poky/meta/recipes-core/systemd/systemd/0002-don-t-use-glibc-specific-qsort_r.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0002-don-t-use-glibc-specific-qsort_r.patch
@@ -19,11 +19,9 @@
  src/shared/format-table.c          | 36 ++++++++++++++++++++----------
  3 files changed, 38 insertions(+), 31 deletions(-)
 
-diff --git a/src/basic/sort-util.h b/src/basic/sort-util.h
-index 49586a4a24..d92a5ab0ed 100644
 --- a/src/basic/sort-util.h
 +++ b/src/basic/sort-util.h
-@@ -55,18 +55,4 @@ static inline void _qsort_safe(void *base, size_t nmemb, size_t size, __compar_f
+@@ -56,18 +56,4 @@ static inline void _qsort_safe(void *bas
                  _qsort_safe((p), (n), sizeof((p)[0]), (__compar_fn_t) _func_); \
          })
  
@@ -42,11 +40,9 @@
 -        })
 -
  int cmp_int(const int *a, const int *b);
-diff --git a/src/libsystemd/sd-hwdb/hwdb-util.c b/src/libsystemd/sd-hwdb/hwdb-util.c
-index fd45ff0f54..ac4b63c49b 100644
---- a/src/libsystemd/sd-hwdb/hwdb-util.c
-+++ b/src/libsystemd/sd-hwdb/hwdb-util.c
-@@ -126,9 +126,13 @@ static struct trie* trie_free(struct trie *trie) {
+--- a/src/shared/hwdb-util.c
++++ b/src/shared/hwdb-util.c
+@@ -127,9 +127,13 @@ static struct trie* trie_free(struct tri
  
  DEFINE_TRIVIAL_CLEANUP_FUNC(struct trie*, trie_free);
  
@@ -63,7 +59,7 @@
  }
  
  static int trie_node_add_value(struct trie *trie, struct trie_node *node,
-@@ -156,7 +160,10 @@ static int trie_node_add_value(struct trie *trie, struct trie_node *node,
+@@ -157,7 +161,10 @@ static int trie_node_add_value(struct tr
                          .value_off = v,
                  };
  
@@ -75,7 +71,7 @@
                  if (val) {
                          /* At this point we have 2 identical properties on the same match-string.
                           * Since we process files in order, we just replace the previous value. */
-@@ -182,7 +189,9 @@ static int trie_node_add_value(struct trie *trie, struct trie_node *node,
+@@ -183,7 +190,9 @@ static int trie_node_add_value(struct tr
                  .line_number = line_number,
          };
          node->values_count++;
@@ -86,11 +82,9 @@
          return 0;
  }
  
-diff --git a/src/shared/format-table.c b/src/shared/format-table.c
-index dccb796b26..c3ab8ac296 100644
 --- a/src/shared/format-table.c
 +++ b/src/shared/format-table.c
-@@ -1290,30 +1290,32 @@ static int cell_data_compare(TableData *a, size_t index_a, TableData *b, size_t
+@@ -1282,30 +1282,32 @@ static int cell_data_compare(TableData *
          return CMP(index_a, index_b);
  }
  
@@ -133,7 +127,7 @@
          }
  
          /* Order identical lines by the order there were originally added in */
-@@ -1952,7 +1954,12 @@ int table_print(Table *t, FILE *f) {
+@@ -1944,7 +1946,12 @@ int table_print(Table *t, FILE *f) {
                  for (size_t i = 0; i < n_rows; i++)
                          sorted[i] = i * t->n_columns;
  
@@ -147,7 +141,7 @@
          }
  
          if (t->display_map)
-@@ -2580,7 +2587,12 @@ int table_to_json(Table *t, JsonVariant **ret) {
+@@ -2572,7 +2579,12 @@ int table_to_json(Table *t, JsonVariant
                  for (size_t i = 0; i < n_rows; i++)
                          sorted[i] = i * t->n_columns;
  
diff --git a/poky/meta/recipes-core/systemd/systemd/0005-src-basic-missing.h-check-for-missing-strndupa.patch b/poky/meta/recipes-core/systemd/systemd/0005-src-basic-missing.h-check-for-missing-strndupa.patch
index 814c28f..c863fc9 100644
--- a/poky/meta/recipes-core/systemd/systemd/0005-src-basic-missing.h-check-for-missing-strndupa.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0005-src-basic-missing.h-check-for-missing-strndupa.patch
@@ -74,14 +74,14 @@
 
 --- a/meson.build
 +++ b/meson.build
-@@ -550,6 +550,7 @@ foreach ident : [
-         ['execveat',          '''#include <unistd.h>'''],
-         ['close_range',       '''#include <unistd.h>'''],
-         ['epoll_pwait2',      '''#include <sys/epoll.h>'''],
+@@ -480,6 +480,7 @@ foreach ident : ['secure_getenv', '__sec
+ endforeach
+
+ foreach ident : [
 +        ['strndupa' ,         '''#include <string.h>'''],
- ]
- 
-         have = cc.has_function(ident[0], prefix : ident[1], args : '-D_GNU_SOURCE')
+         ['memfd_create',      '''#include <sys/mman.h>'''],
+         ['gettid',            '''#include <sys/types.h>
+                                  #include <unistd.h>'''],
 --- a/src/backlight/backlight.c
 +++ b/src/backlight/backlight.c
 @@ -19,6 +19,7 @@
@@ -89,7 +89,7 @@
  #include "strv.h"
  #include "util.h"
 +#include "missing_stdlib.h"
- 
+
  static int help(void) {
          _cleanup_free_ char *link = NULL;
 --- a/src/basic/cgroup-util.c
@@ -99,7 +99,7 @@
  #include "user-util.h"
  #include "xattr-util.h"
 +#include "missing_stdlib.h"
- 
+
  static int cg_enumerate_items(const char *controller, const char *path, FILE **_f, const char *item) {
          _cleanup_free_ char *fs = NULL;
 --- a/src/basic/env-util.c
@@ -109,7 +109,7 @@
  #include "strv.h"
  #include "utf8.h"
 +#include "missing_stdlib.h"
- 
+
  /* We follow bash for the character set. Different shells have different rules. */
  #define VALID_BASH_ENV_NAME_CHARS               \
 --- a/src/basic/log.c
@@ -119,9 +119,9 @@
  #include "time-util.h"
  #include "utf8.h"
 +#include "missing_stdlib.h"
- 
+
  #define SNDBUF_SIZE (8*1024*1024)
- 
+
 --- a/src/basic/missing_stdlib.h
 +++ b/src/basic/missing_stdlib.h
 @@ -11,3 +11,15 @@
@@ -147,12 +147,12 @@
  #include "stdio-util.h"
  #include "user-util.h"
 +#include "missing_stdlib.h"
- 
+
  int mkdir_safe_internal(
                  const char *path,
 --- a/src/basic/mountpoint-util.c
 +++ b/src/basic/mountpoint-util.c
-@@ -12,6 +12,7 @@
+@@ -11,6 +11,7 @@
  #include "missing_stat.h"
  #include "missing_syscall.h"
  #include "mkdir.h"
@@ -167,7 +167,7 @@
  #include "string-util.h"
  #include "strv.h"
 +#include "missing_stdlib.h"
- 
+
  int parse_boolean(const char *v) {
          if (!v)
 --- a/src/basic/path-lookup.c
@@ -177,7 +177,7 @@
  #include "tmpfile-util.h"
  #include "user-util.h"
 +#include "missing_stdlib.h"
- 
+
  int xdg_user_runtime_dir(char **ret, const char *suffix) {
          const char *e;
 --- a/src/basic/proc-cmdline.c
@@ -187,7 +187,7 @@
  #include "util.h"
  #include "virt.h"
 +#include "missing_stdlib.h"
- 
+
  int proc_cmdline(char **ret) {
          const char *e;
 --- a/src/basic/procfs-util.c
@@ -197,29 +197,19 @@
  #include "stdio-util.h"
  #include "string-util.h"
 +#include "missing_stdlib.h"
- 
+
  int procfs_tasks_get_limit(uint64_t *ret) {
          _cleanup_free_ char *value = NULL;
---- a/src/basic/selinux-util.c
-+++ b/src/basic/selinux-util.c
-@@ -27,6 +27,7 @@
- #include "selinux-util.h"
- #include "stdio-util.h"
- #include "time-util.h"
-+#include "missing_stdlib.h"
- 
- #if HAVE_SELINUX
- DEFINE_TRIVIAL_CLEANUP_FUNC_FULL(context_t, context_free, NULL);
 --- a/src/basic/time-util.c
 +++ b/src/basic/time-util.c
-@@ -27,6 +27,7 @@
+@@ -26,6 +26,7 @@
  #include "string-util.h"
  #include "strv.h"
  #include "time-util.h"
 +#include "missing_stdlib.h"
- 
+
  static clockid_t map_clock_id(clockid_t c) {
- 
+
 --- a/src/boot/bless-boot.c
 +++ b/src/boot/bless-boot.c
 @@ -18,6 +18,7 @@
@@ -227,27 +217,27 @@
  #include "verbs.h"
  #include "virt.h"
 +#include "missing_stdlib.h"
- 
+
  static char **arg_path = NULL;
- 
+
 --- a/src/core/dbus-cgroup.c
 +++ b/src/core/dbus-cgroup.c
-@@ -17,6 +17,7 @@
- #include "limits-util.h"
+@@ -20,6 +20,7 @@
+ #include "parse-util.h"
  #include "path-util.h"
  #include "percent-util.h"
 +#include "missing_stdlib.h"
- 
+
  BUS_DEFINE_PROPERTY_GET(bus_property_get_tasks_max, "t", TasksMax, tasks_max_resolve);
- 
+
 --- a/src/core/dbus-execute.c
 +++ b/src/core/dbus-execute.c
-@@ -41,6 +41,7 @@
+@@ -42,6 +42,7 @@
  #include "unit-printf.h"
  #include "user-util.h"
  #include "utf8.h"
 +#include "missing_stdlib.h"
- 
+
  BUS_DEFINE_PROPERTY_GET_ENUM(bus_property_get_exec_output, exec_output, ExecOutput);
  static BUS_DEFINE_PROPERTY_GET_ENUM(property_get_exec_input, exec_input, ExecInput);
 --- a/src/core/dbus-util.c
@@ -257,17 +247,17 @@
  #include "user-util.h"
  #include "unit.h"
 +#include "missing_stdlib.h"
- 
+
  int bus_property_get_triggered_unit(
                  sd_bus *bus,
 --- a/src/core/execute.c
 +++ b/src/core/execute.c
-@@ -96,6 +96,7 @@
+@@ -98,6 +98,7 @@
  #include "unit-serialize.h"
  #include "user-util.h"
  #include "utmp-wtmp.h"
 +#include "missing_stdlib.h"
- 
+
  #define IDLE_TIMEOUT_USEC (5*USEC_PER_SEC)
  #define IDLE_TIMEOUT2_USEC (1*USEC_PER_SEC)
 --- a/src/core/kmod-setup.c
@@ -277,7 +267,7 @@
  #include "string-util.h"
  #include "missing_type.h"
 +#include "missing_stdlib.h"
- 
+
  #if HAVE_KMOD
  #include "module-util.h"
 --- a/src/core/service.c
@@ -287,7 +277,7 @@
  #include "utf8.h"
  #include "util.h"
 +#include "missing_stdlib.h"
- 
+
  static const UnitActiveState state_translation_table[_SERVICE_STATE_MAX] = {
          [SERVICE_DEAD] = UNIT_INACTIVE,
 --- a/src/coredump/coredump-vacuum.c
@@ -297,7 +287,7 @@
  #include "time-util.h"
  #include "user-util.h"
 +#include "missing_stdlib.h"
- 
+
  #define DEFAULT_MAX_USE_LOWER (uint64_t) (1ULL*1024ULL*1024ULL)           /* 1 MiB */
  #define DEFAULT_MAX_USE_UPPER (uint64_t) (4ULL*1024ULL*1024ULL*1024ULL)   /* 4 GiB */
 --- a/src/journal-remote/journal-remote-main.c
@@ -307,7 +297,7 @@
  #include "string-table.h"
  #include "strv.h"
 +#include "missing_stdlib.h"
- 
+
  #define PRIV_KEY_FILE CERTIFICATE_ROOT "/private/journal-remote.pem"
  #define CERT_FILE     CERTIFICATE_ROOT "/certs/journal-remote.pem"
 --- a/src/journal/journalctl.c
@@ -317,7 +307,7 @@
  #include "user-util.h"
  #include "varlink.h"
 +#include "missing_stdlib.h"
- 
+
  #define DEFAULT_FSS_INTERVAL_USEC (15*USEC_PER_MINUTE)
  #define PROCESS_INOTIFY_INTERVAL 1024   /* Every 1,024 messages processed */
 --- a/src/libsystemd/sd-bus/bus-message.c
@@ -327,9 +317,9 @@
  #include "time-util.h"
  #include "utf8.h"
 +#include "missing_stdlib.h"
- 
+
  static int message_append_basic(sd_bus_message *m, char type, const void *p, const void **stored);
- 
+
 --- a/src/libsystemd/sd-bus/bus-objects.c
 +++ b/src/libsystemd/sd-bus/bus-objects.c
 @@ -12,6 +12,7 @@
@@ -337,27 +327,27 @@
  #include "string-util.h"
  #include "strv.h"
 +#include "missing_stdlib.h"
- 
+
  static int node_vtable_get_userdata(
                  sd_bus *bus,
 --- a/src/libsystemd/sd-bus/bus-socket.c
 +++ b/src/libsystemd/sd-bus/bus-socket.c
-@@ -28,6 +28,7 @@
+@@ -27,6 +27,7 @@
  #include "string-util.h"
  #include "user-util.h"
  #include "utf8.h"
 +#include "missing_stdlib.h"
- 
+
  #define SNDBUF_SIZE (8*1024*1024)
- 
+
 --- a/src/libsystemd/sd-bus/sd-bus.c
 +++ b/src/libsystemd/sd-bus/sd-bus.c
-@@ -41,6 +41,7 @@
+@@ -42,6 +42,7 @@
  #include "string-util.h"
  #include "strv.h"
  #include "user-util.h"
 +#include "missing_stdlib.h"
- 
+
  #define log_debug_bus_message(m)                                         \
          do {                                                             \
 --- a/src/libsystemd/sd-bus/test-bus-benchmark.c
@@ -367,9 +357,9 @@
  #include "time-util.h"
  #include "util.h"
 +#include "missing_stdlib.h"
- 
+
  #define MAX_SIZE (2*1024*1024)
- 
+
 --- a/src/libsystemd/sd-journal/sd-journal.c
 +++ b/src/libsystemd/sd-journal/sd-journal.c
 @@ -40,6 +40,7 @@
@@ -377,9 +367,9 @@
  #include "strv.h"
  #include "syslog-util.h"
 +#include "missing_stdlib.h"
- 
+
  #define JOURNAL_FILES_MAX 7168
- 
+
 --- a/src/locale/keymap-util.c
 +++ b/src/locale/keymap-util.c
 @@ -24,6 +24,7 @@
@@ -387,7 +377,7 @@
  #include "strv.h"
  #include "tmpfile-util.h"
 +#include "missing_stdlib.h"
- 
+
  static bool startswith_comma(const char *s, const char *prefix) {
          s = startswith(s, prefix);
 --- a/src/login/pam_systemd.c
@@ -407,17 +397,17 @@
  #include "string-util.h"
  #include "strv.h"
 +#include "missing_stdlib.h"
- 
+
  /*
    # .network
 --- a/src/nspawn/nspawn-settings.c
 +++ b/src/nspawn/nspawn-settings.c
-@@ -16,6 +16,7 @@
+@@ -17,6 +17,7 @@
  #include "strv.h"
  #include "user-util.h"
  #include "util.h"
 +#include "missing_stdlib.h"
- 
+
  Settings *settings_new(void) {
          Settings *s;
 --- a/src/nss-mymachines/nss-mymachines.c
@@ -427,19 +417,19 @@
  #include "signal-util.h"
  #include "string-util.h"
 +#include "missing_stdlib.h"
- 
+
  static void setup_logging(void) {
          /* We need a dummy function because log_parse_environment is a macro. */
 --- a/src/portable/portable.c
 +++ b/src/portable/portable.c
-@@ -32,6 +32,7 @@
+@@ -34,6 +34,7 @@
  #include "strv.h"
  #include "tmpfile-util.h"
  #include "user-util.h"
 +#include "missing_stdlib.h"
- 
+
  static const char profile_dirs[] = CONF_PATHS_NULSTR("systemd/portable/profile");
- 
+
 --- a/src/resolve/resolvectl.c
 +++ b/src/resolve/resolvectl.c
 @@ -41,6 +41,7 @@
@@ -447,7 +437,7 @@
  #include "utf8.h"
  #include "verbs.h"
 +#include "missing_stdlib.h"
- 
+
  static int arg_family = AF_UNSPEC;
  static int arg_ifindex = 0;
 --- a/src/shared/bus-get-properties.c
@@ -457,7 +447,7 @@
  #include "stdio-util.h"
  #include "string-util.h"
 +#include "missing_stdlib.h"
- 
+
  int bus_property_get_bool(
                  sd_bus *bus,
 --- a/src/shared/bus-unit-procs.c
@@ -467,17 +457,17 @@
  #include "string-util.h"
  #include "terminal-util.h"
 +#include "missing_stdlib.h"
- 
+
  struct CGroupInfo {
          char *cgroup_path;
 --- a/src/shared/bus-unit-util.c
 +++ b/src/shared/bus-unit-util.c
-@@ -45,6 +45,7 @@
+@@ -47,6 +47,7 @@
  #include "unit-def.h"
  #include "user-util.h"
  #include "utf8.h"
 +#include "missing_stdlib.h"
- 
+
  int bus_parse_unit_info(sd_bus_message *message, UnitInfo *u) {
          assert(message);
 --- a/src/shared/bus-util.c
@@ -487,7 +477,7 @@
  #include "socket-util.h"
  #include "stdio-util.h"
 +#include "missing_stdlib.h"
- 
+
  static int name_owner_change_callback(sd_bus_message *m, void *userdata, sd_bus_error *ret_error) {
          sd_event *e = userdata;
 --- a/src/shared/dns-domain.c
@@ -497,17 +487,17 @@
  #include "strv.h"
  #include "utf8.h"
 +#include "missing_stdlib.h"
- 
+
  int dns_label_unescape(const char **name, char *dest, size_t sz, DNSLabelFlags flags) {
          const char *n;
 --- a/src/shared/journal-importer.c
 +++ b/src/shared/journal-importer.c
-@@ -14,6 +14,7 @@
+@@ -15,6 +15,7 @@
  #include "parse-util.h"
  #include "string-util.h"
  #include "unaligned.h"
 +#include "missing_stdlib.h"
- 
+
  enum {
          IMPORTER_STATE_LINE = 0,    /* waiting to read, or reading line */
 --- a/src/shared/logs-show.c
@@ -517,7 +507,7 @@
  #include "util.h"
  #include "web-util.h"
 +#include "missing_stdlib.h"
- 
+
  /* up to three lines (each up to 100 characters) or 300 characters, whichever is less */
  #define PRINT_LINE_THRESHOLD 3
 --- a/src/shared/pager.c
@@ -527,9 +517,9 @@
  #include "terminal-util.h"
  #include "util.h"
 +#include "missing_stdlib.h"
- 
+
  static pid_t pager_pid = 0;
- 
+
 --- a/src/shared/uid-range.c
 +++ b/src/shared/uid-range.c
 @@ -9,6 +9,7 @@
@@ -537,7 +527,7 @@
  #include "uid-range.h"
  #include "user-util.h"
 +#include "missing_stdlib.h"
- 
+
  static bool uid_range_intersect(UidRange *range, uid_t start, uid_t nr) {
          assert(range);
 --- a/src/socket-proxy/socket-proxyd.c
@@ -547,9 +537,9 @@
  #include "string-util.h"
  #include "util.h"
 +#include "missing_stdlib.h"
- 
+
  #define BUFFER_SIZE (256 * 1024)
- 
+
 --- a/src/test/test-hexdecoct.c
 +++ b/src/test/test-hexdecoct.c
 @@ -6,6 +6,7 @@
@@ -557,7 +547,7 @@
  #include "macro.h"
  #include "string-util.h"
 +#include "missing_stdlib.h"
- 
+
  static void test_hexchar(void) {
          assert_se(hexchar(0xa) == 'a');
 --- a/src/udev/udev-builtin-path_id.c
@@ -567,29 +557,29 @@
  #include "udev-builtin.h"
  #include "udev-util.h"
 +#include "missing_stdlib.h"
- 
+
  _printf_(2,3)
  static void path_prepend(char **path, const char *fmt, ...) {
 --- a/src/udev/udev-event.c
 +++ b/src/udev/udev-event.c
-@@ -33,6 +33,7 @@
+@@ -34,6 +34,7 @@
  #include "udev-util.h"
  #include "udev-watch.h"
  #include "user-util.h"
 +#include "missing_stdlib.h"
- 
+
  typedef struct Spawn {
          sd_device *device;
 --- a/src/udev/udev-rules.c
 +++ b/src/udev/udev-rules.c
-@@ -31,6 +31,7 @@
- #include "udev-rules.h"
+@@ -33,6 +33,7 @@
+ #include "udev-util.h"
  #include "user-util.h"
  #include "virt.h"
 +#include "missing_stdlib.h"
- 
+
  #define RULES_DIRS (const char* const*) CONF_PATHS_STRV("udev/rules.d")
- 
+
 --- a/src/basic/percent-util.c
 +++ b/src/basic/percent-util.c
 @@ -3,6 +3,7 @@
@@ -597,6 +587,7 @@
  #include "string-util.h"
  #include "parse-util.h"
 +#include "missing_stdlib.h"
- 
+
  static int parse_parts_value_whole(const char *p, const char *symbol) {
          const char *pc, *n;
+
diff --git a/poky/meta/recipes-core/systemd/systemd/0006-Include-netinet-if_ether.h.patch b/poky/meta/recipes-core/systemd/systemd/0006-Include-netinet-if_ether.h.patch
index 54d7142..2dfc7a3 100644
--- a/poky/meta/recipes-core/systemd/systemd/0006-Include-netinet-if_ether.h.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0006-Include-netinet-if_ether.h.patch
@@ -56,8 +56,6 @@
  src/udev/udev-builtin-net_setup_link.c    | 1 +
  21 files changed, 26 insertions(+), 8 deletions(-)
 
-diff --git a/src/libsystemd-network/sd-dhcp6-client.c b/src/libsystemd-network/sd-dhcp6-client.c
-index 410bfda10e..e70ed8be92 100644
 --- a/src/libsystemd-network/sd-dhcp6-client.c
 +++ b/src/libsystemd-network/sd-dhcp6-client.c
 @@ -5,7 +5,6 @@
@@ -68,8 +66,6 @@
  #include <linux/if_infiniband.h>
  
  #include "sd-dhcp6-client.h"
-diff --git a/src/libsystemd/sd-netlink/netlink-types.c b/src/libsystemd/sd-netlink/netlink-types.c
-index ed7b9a8cd1..112c0b09e4 100644
 --- a/src/libsystemd/sd-netlink/netlink-types.c
 +++ b/src/libsystemd/sd-netlink/netlink-types.c
 @@ -3,6 +3,7 @@
@@ -80,8 +76,6 @@
  #include <linux/can/vxcan.h>
  #include <linux/netlink.h>
  #include <linux/rtnetlink.h>
-diff --git a/src/machine/machine-dbus.c b/src/machine/machine-dbus.c
-index e7c4ed3c7c..3a1e4f9072 100644
 --- a/src/machine/machine-dbus.c
 +++ b/src/machine/machine-dbus.c
 @@ -3,6 +3,7 @@
@@ -92,8 +86,6 @@
  
  /* When we include libgen.h because we need dirname() we immediately
   * undefine basename() since libgen.h defines it as a macro to the POSIX
-diff --git a/src/network/netdev/bond.c b/src/network/netdev/bond.c
-index cf7ca88d6f..34ab468191 100644
 --- a/src/network/netdev/bond.c
 +++ b/src/network/netdev/bond.c
 @@ -1,5 +1,6 @@
@@ -103,8 +95,6 @@
  #include "alloc-util.h"
  #include "bond.h"
  #include "bond-util.h"
-diff --git a/src/network/netdev/bridge.c b/src/network/netdev/bridge.c
-index 38432f1578..79ccfe578e 100644
 --- a/src/network/netdev/bridge.c
 +++ b/src/network/netdev/bridge.c
 @@ -1,5 +1,6 @@
@@ -114,8 +104,6 @@
  #include <net/if.h>
  
  #include "bridge.h"
-diff --git a/src/network/netdev/macsec.c b/src/network/netdev/macsec.c
-index 77c5f8c4e7..04be1b4ab2 100644
 --- a/src/network/netdev/macsec.c
 +++ b/src/network/netdev/macsec.c
 @@ -1,5 +1,6 @@
@@ -125,8 +113,6 @@
  #include <netinet/in.h>
  #include <linux/if_ether.h>
  #include <linux/if_macsec.h>
-diff --git a/src/network/netdev/netdev-gperf.gperf b/src/network/netdev/netdev-gperf.gperf
-index 8abe044890..3c54c58928 100644
 --- a/src/network/netdev/netdev-gperf.gperf
 +++ b/src/network/netdev/netdev-gperf.gperf
 @@ -3,6 +3,7 @@
@@ -137,8 +123,6 @@
  #include <stddef.h>
  #include "bareudp.h"
  #include "batadv.h"
-diff --git a/src/network/netdev/netdev.c b/src/network/netdev/netdev.c
-index b31f0fa81a..c80e1ff537 100644
 --- a/src/network/netdev/netdev.c
 +++ b/src/network/netdev/netdev.c
 @@ -1,5 +1,6 @@
@@ -148,20 +132,6 @@
  #include <net/if.h>
  #include <netinet/in.h>
  #include <unistd.h>
-diff --git a/src/network/networkd-brvlan.c b/src/network/networkd-brvlan.c
-index 2847b336c9..4d6af8c642 100644
---- a/src/network/networkd-brvlan.c
-+++ b/src/network/networkd-brvlan.c
-@@ -4,6 +4,7 @@
- ***/
- 
- #include <netinet/in.h>
-+#include <netinet/if_ether.h>
- #include <linux/if_bridge.h>
- #include <stdbool.h>
- 
-diff --git a/src/network/networkd-dhcp-common.c b/src/network/networkd-dhcp-common.c
-index 00d055cf8d..65821c1d31 100644
 --- a/src/network/networkd-dhcp-common.c
 +++ b/src/network/networkd-dhcp-common.c
 @@ -1,7 +1,8 @@
@@ -173,8 +143,8 @@
 +#include <net/if.h>
  
  #include "bus-error.h"
- #include "dhcp-internal.h"
-@@ -11,6 +12,7 @@
+ #include "dhcp-identifier.h"
+@@ -13,6 +14,7 @@
  #include "networkd-dhcp-common.h"
  #include "networkd-link.h"
  #include "networkd-manager.h"
@@ -182,8 +152,6 @@
  #include "networkd-network.h"
  #include "parse-util.h"
  #include "socket-util.h"
-diff --git a/src/network/networkd-dhcp-server.c b/src/network/networkd-dhcp-server.c
-index 5cdf432c27..93cffb9863 100644
 --- a/src/network/networkd-dhcp-server.c
 +++ b/src/network/networkd-dhcp-server.c
 @@ -1,8 +1,8 @@
@@ -197,8 +165,6 @@
  
  #include "sd-dhcp-server.h"
  
-diff --git a/src/network/networkd-dhcp4.c b/src/network/networkd-dhcp4.c
-index 23dc3a45db..7ae6c2467a 100644
 --- a/src/network/networkd-dhcp4.c
 +++ b/src/network/networkd-dhcp4.c
 @@ -1,9 +1,9 @@
@@ -212,8 +178,6 @@
  
  #include "escape.h"
  #include "alloc-util.h"
-diff --git a/src/network/networkd-dhcp6.c b/src/network/networkd-dhcp6.c
-index aa077d6219..4f6ce22059 100644
 --- a/src/network/networkd-dhcp6.c
 +++ b/src/network/networkd-dhcp6.c
 @@ -3,9 +3,9 @@
@@ -227,11 +191,9 @@
  
  #include "sd-dhcp6-client.h"
  
-diff --git a/src/network/networkd-link.c b/src/network/networkd-link.c
-index 8219d95b0d..c92230453b 100644
 --- a/src/network/networkd-link.c
 +++ b/src/network/networkd-link.c
-@@ -1,8 +1,8 @@
+@@ -1,9 +1,10 @@
  /* SPDX-License-Identifier: LGPL-2.1-or-later */
  
 +#include <netinet/if_ether.h>
@@ -239,10 +201,10 @@
  #include <linux/if.h>
 -#include <linux/if_arp.h>
  #include <linux/if_link.h>
++#include <linux/netdevice.h>
+ #include <sys/socket.h>
  #include <unistd.h>
  
-diff --git a/src/network/networkd-network.c b/src/network/networkd-network.c
-index e5ffd35b6f..871ebb32c6 100644
 --- a/src/network/networkd-network.c
 +++ b/src/network/networkd-network.c
 @@ -1,5 +1,6 @@
@@ -252,24 +214,6 @@
  #include <net/if.h>
  #include <netinet/in.h>
  #include <linux/netdevice.h>
-diff --git a/src/network/networkd-route.c b/src/network/networkd-route.c
-index a74541a6c9..a10549b336 100644
---- a/src/network/networkd-route.c
-+++ b/src/network/networkd-route.c
-@@ -1,7 +1,10 @@
- /* SPDX-License-Identifier: LGPL-2.1-or-later */
- 
- #include <linux/icmpv6.h>
--#include <linux/ipv6_route.h>
-+/* linux/ipv6_route.h conflicts with netinet/in.h so define manually */
-+#ifndef IP6_RT_PRIO_USER
-+#define IP6_RT_PRIO_USER       1024
-+#endif
- 
- #include "alloc-util.h"
- #include "netlink-util.h"
-diff --git a/src/network/test-network-tables.c b/src/network/test-network-tables.c
-index ce34449554..0b5dc01182 100644
 --- a/src/network/test-network-tables.c
 +++ b/src/network/test-network-tables.c
 @@ -1,5 +1,6 @@
@@ -279,8 +223,6 @@
  #include "bond.h"
  #include "dhcp6-internal.h"
  #include "dhcp6-protocol.h"
-diff --git a/src/shared/ethtool-util.c b/src/shared/ethtool-util.c
-index 654d36a83a..f4ed42d543 100644
 --- a/src/shared/ethtool-util.c
 +++ b/src/shared/ethtool-util.c
 @@ -1,5 +1,6 @@
@@ -290,8 +232,6 @@
  #include <net/if.h>
  #include <sys/ioctl.h>
  #include <linux/ethtool.h>
-diff --git a/src/shared/ethtool-util.h b/src/shared/ethtool-util.h
-index 11e2906681..a171df0737 100644
 --- a/src/shared/ethtool-util.h
 +++ b/src/shared/ethtool-util.h
 @@ -3,6 +3,7 @@
@@ -302,8 +242,6 @@
  #include <linux/ethtool.h>
  
  #include "conf-parser.h"
-diff --git a/src/udev/net/link-config.c b/src/udev/net/link-config.c
-index 31e5d0cd67..f25f821364 100644
 --- a/src/udev/net/link-config.c
 +++ b/src/udev/net/link-config.c
 @@ -1,5 +1,6 @@
@@ -313,8 +251,6 @@
  #include <linux/netdevice.h>
  #include <netinet/ether.h>
  #include <unistd.h>
-diff --git a/src/udev/udev-builtin-net_setup_link.c b/src/udev/udev-builtin-net_setup_link.c
-index 87e1fb133e..13876029d0 100644
 --- a/src/udev/udev-builtin-net_setup_link.c
 +++ b/src/udev/udev-builtin-net_setup_link.c
 @@ -1,5 +1,6 @@
@@ -324,3 +260,76 @@
  #include "alloc-util.h"
  #include "device-util.h"
  #include "errno-util.h"
+--- a/src/network/networkd-bridge-vlan.c
++++ b/src/network/networkd-bridge-vlan.c
+@@ -4,6 +4,7 @@
+ ***/
+ 
+ #include <netinet/in.h>
++#include <netinet/if_ether.h>
+ #include <linux/if_bridge.h>
+ #include <stdbool.h>
+ 
+--- a/src/basic/linux/in6.h
++++ b/src/basic/linux/in6.h
+@@ -1,10 +1,10 @@
+ /* SPDX-License-Identifier: GPL-2.0+ WITH Linux-syscall-note */
+ /*
+- *	Types and definitions for AF_INET6 
+- *	Linux INET6 implementation 
++ *	Types and definitions for AF_INET6
++ *	Linux INET6 implementation
+  *
+  *	Authors:
+- *	Pedro Roque		<roque@di.fc.ul.pt>	
++ *	Pedro Roque		<roque@di.fc.ul.pt>
+  *
+  *	Sources:
+  *	IPv6 Program Interfaces for BSD Systems
+@@ -19,8 +19,8 @@
+  *      2 of the License, or (at your option) any later version.
+  */
+ 
+-#ifndef _UAPI_LINUX_IN6_H
+-#define _UAPI_LINUX_IN6_H
++#ifndef _LINUX_IN6_H
++#define _LINUX_IN6_H
+ 
+ #include <linux/types.h>
+ #include <linux/libc-compat.h>
+@@ -97,7 +97,7 @@ struct in6_flowlabel_req {
+ 
+ 
+ /*
+- *	Bitmask constant declarations to help applications select out the 
++ *	Bitmask constant declarations to help applications select out the
+  *	flow label and priority fields.
+  *
+  *	Note that this are in host byte order while the flowinfo field of
+@@ -298,4 +298,4 @@ struct in6_flowlabel_req {
+  * ...
+  * MRT6_MAX
+  */
+-#endif /* _UAPI_LINUX_IN6_H */
++#endif /* _LINUX_IN6_H */
+--- a/src/network/networkd-route.c
++++ b/src/network/networkd-route.c
+@@ -1,5 +1,6 @@
+ /* SPDX-License-Identifier: LGPL-2.1-or-later */
+ 
++#include <netinet/in.h>
+ #include <linux/icmpv6.h>
+ #include <linux/ipv6_route.h>
+ #include <linux/nexthop.h>
+--- a/src/network/networkd-setlink.c
++++ b/src/network/networkd-setlink.c
+@@ -1,8 +1,8 @@
+ /* SPDX-License-Identifier: LGPL-2.1-or-later */
+ 
+ #include <netinet/in.h>
++#include <net/if_arp.h>
+ #include <linux/if.h>
+-#include <linux/if_arp.h>
+ 
+ #include "missing_network.h"
+ #include "netlink-util.h"
diff --git a/poky/meta/recipes-core/systemd/systemd/0007-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not-.patch b/poky/meta/recipes-core/systemd/systemd/0007-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not-.patch
index 2ff08c7..4a60ee3 100644
--- a/poky/meta/recipes-core/systemd/systemd/0007-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not-.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0007-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not-.patch
@@ -23,8 +23,6 @@
  src/tmpfiles/tmpfiles.c   | 10 ++++++++++
  3 files changed, 38 insertions(+)
 
-diff --git a/src/basic/glob-util.c b/src/basic/glob-util.c
-index bc0278e57f..c973f82e54 100644
 --- a/src/basic/glob-util.c
 +++ b/src/basic/glob-util.c
 @@ -12,6 +12,12 @@
@@ -48,7 +46,7 @@
          /* We want to set GLOB_ALTDIRFUNC ourselves, don't allow it to be set. */
          assert(!(flags & GLOB_ALTDIRFUNC));
  
-@@ -32,9 +39,14 @@ int safe_glob(const char *path, int flags, glob_t *pglob) {
+@@ -32,9 +39,14 @@ int safe_glob(const char *path, int flag
                  pglob->gl_lstat = lstat;
          if (!pglob->gl_stat)
                  pglob->gl_stat = stat;
@@ -63,8 +61,6 @@
          if (k == GLOB_NOMATCH)
                  return -ENOENT;
          if (k == GLOB_NOSPACE)
-diff --git a/src/test/test-glob-util.c b/src/test/test-glob-util.c
-index df6444c433..79a692046e 100644
 --- a/src/test/test-glob-util.c
 +++ b/src/test/test-glob-util.c
 @@ -12,6 +12,12 @@
@@ -78,9 +74,9 @@
 +#endif
 +
  static void test_glob_exists(void) {
-         char name[] = "/tmp/test-glob_exists.XXXXXX";
-         int fd = -1;
-@@ -39,11 +45,13 @@ static void test_glob_no_dot(void) {
+         log_info("/* %s */", __func__);
+ 
+@@ -41,11 +47,13 @@ static void test_glob_no_dot(void) {
          const char *fn;
  
          _cleanup_globfree_ glob_t g = {
@@ -94,7 +90,7 @@
          };
  
          int r;
-@@ -51,11 +59,19 @@ static void test_glob_no_dot(void) {
+@@ -55,11 +63,19 @@ static void test_glob_no_dot(void) {
          assert_se(mkdtemp(template));
  
          fn = strjoina(template, "/*");
@@ -114,8 +110,6 @@
          assert_se(r == GLOB_NOMATCH);
  
          (void) rm_rf(template, REMOVE_ROOT|REMOVE_PHYSICAL);
-diff --git a/src/tmpfiles/tmpfiles.c b/src/tmpfiles/tmpfiles.c
-index 6b73d1e6d5..26b3b74275 100644
 --- a/src/tmpfiles/tmpfiles.c
 +++ b/src/tmpfiles/tmpfiles.c
 @@ -66,6 +66,12 @@
@@ -131,7 +125,7 @@
  /* This reads all files listed in /etc/tmpfiles.d/?*.conf and creates
   * them in the file system. This is intended to be used to create
   * properly owned directories beneath /tmp, /var/tmp, /run, which are
-@@ -1947,7 +1953,9 @@ finish:
+@@ -1990,7 +1996,9 @@ finish:
  
  static int glob_item(Item *i, action_t action) {
          _cleanup_globfree_ glob_t g = {
@@ -141,7 +135,7 @@
          };
          int r = 0, k;
          char **fn;
-@@ -1967,7 +1975,9 @@ static int glob_item(Item *i, action_t action) {
+@@ -2010,7 +2018,9 @@ static int glob_item(Item *i, action_t a
  
  static int glob_item_recursively(Item *i, fdaction_t action) {
          _cleanup_globfree_ glob_t g = {
diff --git a/poky/meta/recipes-core/systemd/systemd/0012-don-t-pass-AT_SYMLINK_NOFOLLOW-flag-to-faccessat.patch b/poky/meta/recipes-core/systemd/systemd/0012-don-t-pass-AT_SYMLINK_NOFOLLOW-flag-to-faccessat.patch
index 5f21787..cf06572 100644
--- a/poky/meta/recipes-core/systemd/systemd/0012-don-t-pass-AT_SYMLINK_NOFOLLOW-flag-to-faccessat.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0012-don-t-pass-AT_SYMLINK_NOFOLLOW-flag-to-faccessat.patch
@@ -31,11 +31,9 @@
  src/shared/base-filesystem.c |  6 +++---
  2 files changed, 24 insertions(+), 5 deletions(-)
 
-diff --git a/src/basic/fs-util.h b/src/basic/fs-util.h
-index 027037f7a7..16eb379caf 100644
 --- a/src/basic/fs-util.h
 +++ b/src/basic/fs-util.h
-@@ -44,8 +44,27 @@ int futimens_opath(int fd, const struct timespec ts[2]);
+@@ -47,8 +47,27 @@ int futimens_opath(int fd, const struct
  int fd_warn_permissions(const char *path, int fd);
  int stat_warn_permissions(const char *path, const struct stat *st);
  
@@ -65,20 +63,18 @@
  
  int touch_file(const char *path, bool parents, usec_t stamp, uid_t uid, gid_t gid, mode_t mode);
  int touch(const char *path);
-diff --git a/src/shared/base-filesystem.c b/src/shared/base-filesystem.c
-index 1d05409086..1ed06c31ab 100644
 --- a/src/shared/base-filesystem.c
 +++ b/src/shared/base-filesystem.c
-@@ -54,7 +54,7 @@ int base_filesystem_create(const char *root, uid_t uid, gid_t gid) {
+@@ -53,7 +53,7 @@ int base_filesystem_create(const char *r
                  return log_error_errno(errno, "Failed to open root file system: %m");
  
-         for (i = 0; i < ELEMENTSOF(table); i ++) {
+         for (size_t i = 0; i < ELEMENTSOF(table); i++) {
 -                if (faccessat(fd, table[i].dir, F_OK, AT_SYMLINK_NOFOLLOW) >= 0)
 +                if (faccessat(fd, table[i].dir, F_OK, 0) >= 0)
                          continue;
  
                  if (table[i].target) {
-@@ -62,7 +62,7 @@ int base_filesystem_create(const char *root, uid_t uid, gid_t gid) {
+@@ -61,7 +61,7 @@ int base_filesystem_create(const char *r
  
                          /* check if one of the targets exists */
                          NULSTR_FOREACH(s, table[i].target) {
@@ -87,7 +83,7 @@
                                          continue;
  
                                  /* check if a specific file exists at the target path */
-@@ -73,7 +73,7 @@ int base_filesystem_create(const char *root, uid_t uid, gid_t gid) {
+@@ -72,7 +72,7 @@ int base_filesystem_create(const char *r
                                          if (!p)
                                                  return log_oom();
  
diff --git a/poky/meta/recipes-core/systemd/systemd/0022-do-not-disable-buffer-in-writing-files.patch b/poky/meta/recipes-core/systemd/systemd/0022-do-not-disable-buffer-in-writing-files.patch
index bd627c5..44c3ff0 100644
--- a/poky/meta/recipes-core/systemd/systemd/0022-do-not-disable-buffer-in-writing-files.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0022-do-not-disable-buffer-in-writing-files.patch
@@ -38,11 +38,9 @@
  src/vconsole/vconsole-setup.c           |  2 +-
  16 files changed, 33 insertions(+), 33 deletions(-)
 
-diff --git a/src/basic/cgroup-util.c b/src/basic/cgroup-util.c
-index 50c1ae1b2b..5b40e92163 100644
 --- a/src/basic/cgroup-util.c
 +++ b/src/basic/cgroup-util.c
-@@ -765,7 +765,7 @@ int cg_install_release_agent(const char *controller, const char *agent) {
+@@ -766,7 +766,7 @@ int cg_install_release_agent(const char
  
          sc = strstrip(contents);
          if (isempty(sc)) {
@@ -51,7 +49,7 @@
                  if (r < 0)
                          return r;
          } else if (!path_equal(sc, agent))
-@@ -783,7 +783,7 @@ int cg_install_release_agent(const char *controller, const char *agent) {
+@@ -784,7 +784,7 @@ int cg_install_release_agent(const char
  
          sc = strstrip(contents);
          if (streq(sc, "0")) {
@@ -60,7 +58,7 @@
                  if (r < 0)
                          return r;
  
-@@ -810,7 +810,7 @@ int cg_uninstall_release_agent(const char *controller) {
+@@ -811,7 +811,7 @@ int cg_uninstall_release_agent(const cha
          if (r < 0)
                  return r;
  
@@ -69,7 +67,7 @@
          if (r < 0)
                  return r;
  
-@@ -820,7 +820,7 @@ int cg_uninstall_release_agent(const char *controller) {
+@@ -821,7 +821,7 @@ int cg_uninstall_release_agent(const cha
          if (r < 0)
                  return r;
  
@@ -78,7 +76,7 @@
          if (r < 0)
                  return r;
  
-@@ -1650,7 +1650,7 @@ int cg_set_attribute(const char *controller, const char *path, const char *attri
+@@ -1651,7 +1651,7 @@ int cg_set_attribute(const char *control
          if (r < 0)
                  return r;
  
@@ -87,11 +85,9 @@
  }
  
  int cg_get_attribute(const char *controller, const char *path, const char *attribute, char **ret) {
-diff --git a/src/basic/procfs-util.c b/src/basic/procfs-util.c
-index 8f9eee8d36..480f8cc0b4 100644
 --- a/src/basic/procfs-util.c
 +++ b/src/basic/procfs-util.c
-@@ -86,13 +86,13 @@ int procfs_tasks_set_limit(uint64_t limit) {
+@@ -86,13 +86,13 @@ int procfs_tasks_set_limit(uint64_t limi
           * decrease it, as threads-max is the much more relevant sysctl. */
          if (limit > pid_max-1) {
                  sprintf(buffer, "%" PRIu64, limit+1); /* Add one, since PID 0 is not a valid PID */
@@ -107,24 +103,9 @@
          if (r < 0) {
                  uint64_t threads_max;
  
-diff --git a/src/basic/smack-util.c b/src/basic/smack-util.c
-index 3362ee3924..80c0f2a52e 100644
---- a/src/basic/smack-util.c
-+++ b/src/basic/smack-util.c
-@@ -114,7 +114,7 @@ int mac_smack_apply_pid(pid_t pid, const char *label) {
-                 return 0;
- 
-         p = procfs_file_alloca(pid, "attr/current");
--        r = write_string_file(p, label, WRITE_STRING_FILE_DISABLE_BUFFER);
-+        r = write_string_file(p, label, 0);
-         if (r < 0)
-                 return r;
- 
-diff --git a/src/basic/sysctl-util.c b/src/basic/sysctl-util.c
-index c96b5cd77f..d2476d9665 100644
 --- a/src/basic/sysctl-util.c
 +++ b/src/basic/sysctl-util.c
-@@ -93,7 +93,7 @@ int sysctl_write_ip_property(int af, const char *ifname, const char *property, c
+@@ -93,7 +93,7 @@ int sysctl_write_ip_property(int af, con
  
          log_debug("Setting '%s' to '%s'", p, value);
  
@@ -133,8 +114,6 @@
  }
  
  int sysctl_read(const char *property, char **ret) {
-diff --git a/src/basic/util.c b/src/basic/util.c
-index 955b18bd2a..6d89c90176 100644
 --- a/src/basic/util.c
 +++ b/src/basic/util.c
 @@ -234,7 +234,7 @@ void disable_coredumps(void) {
@@ -146,11 +125,9 @@
          if (r < 0)
                  log_debug_errno(r, "Failed to turn off coredumps, ignoring: %m");
  }
-diff --git a/src/binfmt/binfmt.c b/src/binfmt/binfmt.c
-index f6b72e0bae..e9fd4d06be 100644
 --- a/src/binfmt/binfmt.c
 +++ b/src/binfmt/binfmt.c
-@@ -48,7 +48,7 @@ static int delete_rule(const char *rule) {
+@@ -48,7 +48,7 @@ static int delete_rule(const char *rule)
          if (!fn)
                  return log_oom();
  
@@ -159,7 +136,7 @@
  }
  
  static int apply_rule(const char *rule) {
-@@ -56,7 +56,7 @@ static int apply_rule(const char *rule) {
+@@ -56,7 +56,7 @@ static int apply_rule(const char *rule)
  
          (void) delete_rule(rule);
  
@@ -168,7 +145,7 @@
          if (r < 0)
                  return log_error_errno(r, "Failed to add binary format: %m");
  
-@@ -222,7 +222,7 @@ static int run(int argc, char *argv[]) {
+@@ -223,7 +223,7 @@ static int run(int argc, char *argv[]) {
                  }
  
                  /* Flush out all rules */
@@ -177,11 +154,9 @@
  
                  STRV_FOREACH(f, files) {
                          k = apply_file(*f, true);
-diff --git a/src/core/main.c b/src/core/main.c
-index 3ee8d0a869..ec36e3e80f 100644
 --- a/src/core/main.c
 +++ b/src/core/main.c
-@@ -1401,7 +1401,7 @@ static int bump_unix_max_dgram_qlen(void) {
+@@ -1402,7 +1402,7 @@ static int bump_unix_max_dgram_qlen(void
          if (v >= DEFAULT_UNIX_MAX_DGRAM_QLEN)
                  return 0;
  
@@ -190,7 +165,7 @@
          if (r < 0)
                  return log_full_errno(IN_SET(r, -EROFS, -EPERM, -EACCES) ? LOG_DEBUG : LOG_WARNING, r,
                                        "Failed to bump AF_UNIX datagram queue length, ignoring: %m");
-@@ -1678,7 +1678,7 @@ static void initialize_core_pattern(bool skip_setup) {
+@@ -1679,7 +1679,7 @@ static void initialize_core_pattern(bool
          if (getpid_cached() != 1)
                  return;
  
@@ -199,11 +174,9 @@
          if (r < 0)
                  log_warning_errno(r, "Failed to write '%s' to /proc/sys/kernel/core_pattern, ignoring: %m", arg_early_core_pattern);
  }
-diff --git a/src/core/smack-setup.c b/src/core/smack-setup.c
-index 8cc1696a4f..ab7b4ba2c3 100644
 --- a/src/core/smack-setup.c
 +++ b/src/core/smack-setup.c
-@@ -325,17 +325,17 @@ int mac_smack_setup(bool *loaded_policy) {
+@@ -323,17 +323,17 @@ int mac_smack_setup(bool *loaded_policy)
          }
  
  #ifdef SMACK_RUN_LABEL
@@ -225,8 +198,6 @@
          if (r < 0)
                  log_warning_errno(r, "Failed to set SMACK netlabel rule \"127.0.0.1 -CIPSO\": %m");
  #endif
-diff --git a/src/hibernate-resume/hibernate-resume.c b/src/hibernate-resume/hibernate-resume.c
-index 58e35e403e..1d0beb4008 100644
 --- a/src/hibernate-resume/hibernate-resume.c
 +++ b/src/hibernate-resume/hibernate-resume.c
 @@ -45,7 +45,7 @@ int main(int argc, char *argv[]) {
@@ -238,11 +209,9 @@
          if (r < 0) {
                  log_error_errno(r, "Failed to write '%s' to /sys/power/resume: %m", major_minor);
                  return EXIT_FAILURE;
-diff --git a/src/libsystemd/sd-device/sd-device.c b/src/libsystemd/sd-device/sd-device.c
-index d82f01a164..b8fd63346c 100644
 --- a/src/libsystemd/sd-device/sd-device.c
 +++ b/src/libsystemd/sd-device/sd-device.c
-@@ -1987,7 +1987,7 @@ _public_ int sd_device_set_sysattr_value(sd_device *device, const char *sysattr,
+@@ -2096,7 +2096,7 @@ _public_ int sd_device_set_sysattr_value
          if (!value)
                  return -ENOMEM;
  
@@ -251,24 +220,9 @@
          if (r < 0) {
                  /* On failure, clear cache entry, as we do not know how it fails. */
                  device_remove_cached_sysattr_value(device, sysattr);
-diff --git a/src/login/logind-dbus.c b/src/login/logind-dbus.c
-index 3bc424b83b..5f5eef0843 100644
---- a/src/login/logind-dbus.c
-+++ b/src/login/logind-dbus.c
-@@ -1330,7 +1330,7 @@ static int trigger_device(Manager *m, sd_device *d) {
-                 if (!t)
-                         return -ENOMEM;
- 
--                (void) write_string_file(t, "change", WRITE_STRING_FILE_DISABLE_BUFFER);
-+                (void) write_string_file(t, "change", 0);
-         }
- 
-         return 0;
-diff --git a/src/nspawn/nspawn-cgroup.c b/src/nspawn/nspawn-cgroup.c
-index cb01b25bc6..e92051268b 100644
 --- a/src/nspawn/nspawn-cgroup.c
 +++ b/src/nspawn/nspawn-cgroup.c
-@@ -124,7 +124,7 @@ int sync_cgroup(pid_t pid, CGroupUnified unified_requested, uid_t uid_shift) {
+@@ -124,7 +124,7 @@ int sync_cgroup(pid_t pid, CGroupUnified
          fn = strjoina(tree, cgroup, "/cgroup.procs");
  
          sprintf(pid_string, PID_FMT, pid);
@@ -277,11 +231,9 @@
          if (r < 0) {
                  log_error_errno(r, "Failed to move process: %m");
                  goto finish;
-diff --git a/src/nspawn/nspawn.c b/src/nspawn/nspawn.c
-index 0c41a48d4b..9c893b18e4 100644
 --- a/src/nspawn/nspawn.c
 +++ b/src/nspawn/nspawn.c
-@@ -2695,7 +2695,7 @@ static int reset_audit_loginuid(void) {
+@@ -2751,7 +2751,7 @@ static int reset_audit_loginuid(void) {
          if (streq(p, "4294967295"))
                  return 0;
  
@@ -290,27 +242,27 @@
          if (r < 0) {
                  log_error_errno(r,
                                  "Failed to reset audit login UID. This probably means that your kernel is too\n"
-@@ -3948,13 +3948,13 @@ static int setup_uid_map(pid_t pid) {
+@@ -4148,7 +4148,7 @@ static int setup_uid_map(
+                 return log_oom();
  
          xsprintf(uid_map, "/proc/" PID_FMT "/uid_map", pid);
-         xsprintf(line, UID_FMT " " UID_FMT " " UID_FMT "\n", 0, arg_uid_shift, arg_uid_range);
--        r = write_string_file(uid_map, line, WRITE_STRING_FILE_DISABLE_BUFFER);
-+        r = write_string_file(uid_map, line, 0);
+-        r = write_string_file(uid_map, s, WRITE_STRING_FILE_DISABLE_BUFFER);
++        r = write_string_file(uid_map, s, 0);
          if (r < 0)
                  return log_error_errno(r, "Failed to write UID map: %m");
  
-         /* We always assign the same UID and GID ranges */
+@@ -4158,7 +4158,7 @@ static int setup_uid_map(
+                 return log_oom();
+ 
          xsprintf(uid_map, "/proc/" PID_FMT "/gid_map", pid);
--        r = write_string_file(uid_map, line, WRITE_STRING_FILE_DISABLE_BUFFER);
-+        r = write_string_file(uid_map, line, 0);
+-        r = write_string_file(uid_map, s, WRITE_STRING_FILE_DISABLE_BUFFER);
++        r = write_string_file(uid_map, s, 0);
          if (r < 0)
                  return log_error_errno(r, "Failed to write GID map: %m");
  
-diff --git a/src/shared/cgroup-setup.c b/src/shared/cgroup-setup.c
-index f197f715c7..077f893177 100644
 --- a/src/shared/cgroup-setup.c
 +++ b/src/shared/cgroup-setup.c
-@@ -267,7 +267,7 @@ int cg_attach(const char *controller, const char *path, pid_t pid) {
+@@ -267,7 +267,7 @@ int cg_attach(const char *controller, co
  
          xsprintf(c, PID_FMT "\n", pid);
  
@@ -328,11 +280,9 @@
                          if (r < 0) {
                                  log_debug_errno(r, "Failed to %s controller %s for %s (%s): %m",
                                                  FLAGS_SET(mask, bit) ? "enable" : "disable", n, p, fs);
-diff --git a/src/sleep/sleep.c b/src/sleep/sleep.c
-index 262d4cea66..0523e8dc9b 100644
 --- a/src/sleep/sleep.c
 +++ b/src/sleep/sleep.c
-@@ -48,7 +48,7 @@ static int write_hibernate_location_info(const HibernateLocation *hibernate_loca
+@@ -46,7 +46,7 @@ static int write_hibernate_location_info
          assert(hibernate_location->swap);
  
          xsprintf(resume_str, "%u:%u", major(hibernate_location->devno), minor(hibernate_location->devno));
@@ -341,7 +291,7 @@
          if (r < 0)
                  return log_debug_errno(r, "Failed to write partition device to /sys/power/resume for '%s': '%s': %m",
                                         hibernate_location->swap->device, resume_str);
-@@ -75,7 +75,7 @@ static int write_hibernate_location_info(const HibernateLocation *hibernate_loca
+@@ -73,7 +73,7 @@ static int write_hibernate_location_info
          }
  
          xsprintf(offset_str, "%" PRIu64, hibernate_location->offset);
@@ -350,7 +300,7 @@
          if (r < 0)
                  return log_debug_errno(r, "Failed to write swap file offset to /sys/power/resume_offset for '%s': '%s': %m",
                                         hibernate_location->swap->device, offset_str);
-@@ -92,7 +92,7 @@ static int write_mode(char **modes) {
+@@ -90,7 +90,7 @@ static int write_mode(char **modes) {
          STRV_FOREACH(mode, modes) {
                  int k;
  
@@ -359,7 +309,7 @@
                  if (k >= 0)
                          return 0;
  
-@@ -114,7 +114,7 @@ static int write_state(FILE **f, char **states) {
+@@ -112,7 +112,7 @@ static int write_state(FILE **f, char **
          STRV_FOREACH(state, states) {
                  int k;
  
@@ -368,11 +318,9 @@
                  if (k >= 0)
                          return 0;
                  log_debug_errno(k, "Failed to write '%s' to /sys/power/state: %m", *state);
-diff --git a/src/vconsole/vconsole-setup.c b/src/vconsole/vconsole-setup.c
-index d1c3febdd5..1cc68694d1 100644
 --- a/src/vconsole/vconsole-setup.c
 +++ b/src/vconsole/vconsole-setup.c
-@@ -116,7 +116,7 @@ static int toggle_utf8_vc(const char *name, int fd, bool utf8) {
+@@ -116,7 +116,7 @@ static int toggle_utf8_vc(const char *na
  static int toggle_utf8_sysfs(bool utf8) {
          int r;
  
@@ -381,3 +329,32 @@
          if (r < 0)
                  return log_warning_errno(r, "Failed to %s sysfs UTF-8 flag: %m", enable_disable(utf8));
  
+--- a/src/shared/mount-util.c
++++ b/src/shared/mount-util.c
+@@ -1019,13 +1019,13 @@ static int make_userns(uid_t uid_shift,
+         xsprintf(line, UID_FMT " " UID_FMT " " UID_FMT "\n", 0, uid_shift, uid_range);
+ 
+         xsprintf(uid_map, "/proc/" PID_FMT "/uid_map", pid);
+-        r = write_string_file(uid_map, line, WRITE_STRING_FILE_DISABLE_BUFFER);
++        r = write_string_file(uid_map, line, 0);
+         if (r < 0)
+                 return log_error_errno(r, "Failed to write UID map: %m");
+ 
+         /* We always assign the same UID and GID ranges */
+         xsprintf(uid_map, "/proc/" PID_FMT "/gid_map", pid);
+-        r = write_string_file(uid_map, line, WRITE_STRING_FILE_DISABLE_BUFFER);
++        r = write_string_file(uid_map, line, 0);
+         if (r < 0)
+                 return log_error_errno(r, "Failed to write GID map: %m");
+ 
+--- a/src/shared/smack-util.c
++++ b/src/shared/smack-util.c
+@@ -114,7 +114,7 @@ int mac_smack_apply_pid(pid_t pid, const
+                 return 0;
+ 
+         p = procfs_file_alloca(pid, "attr/current");
+-        r = write_string_file(p, label, WRITE_STRING_FILE_DISABLE_BUFFER);
++        r = write_string_file(p, label, 0);
+         if (r < 0)
+                 return r;
+ 
diff --git a/poky/meta/recipes-core/systemd/systemd/0026-Handle-missing-gshadow.patch b/poky/meta/recipes-core/systemd/systemd/0026-Handle-missing-gshadow.patch
index 068600f..9394eeb 100644
--- a/poky/meta/recipes-core/systemd/systemd/0026-Handle-missing-gshadow.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0026-Handle-missing-gshadow.patch
@@ -17,8 +17,6 @@
  src/shared/userdb.c          |  6 ++++++
  3 files changed, 30 insertions(+)
 
-diff --git a/src/shared/user-record-nss.c b/src/shared/user-record-nss.c
-index 88b8fc2f8f..a819d41bac 100644
 --- a/src/shared/user-record-nss.c
 +++ b/src/shared/user-record-nss.c
 @@ -331,8 +331,10 @@ int nss_group_to_group_record(
@@ -48,7 +46,7 @@
  
          r = json_build(&g->json, JSON_BUILD_OBJECT(
                                         JSON_BUILD_PAIR("groupName", JSON_BUILD_STRING(g->group_name)),
-@@ -388,6 +392,7 @@ int nss_sgrp_for_group(const struct group *grp, struct sgrp *ret_sgrp, char **re
+@@ -388,6 +392,7 @@ int nss_sgrp_for_group(const struct grou
          assert(ret_sgrp);
          assert(ret_buffer);
  
@@ -56,7 +54,7 @@
          for (;;) {
                  _cleanup_free_ char *buf = NULL;
                  struct sgrp sgrp, *result;
-@@ -416,6 +421,9 @@ int nss_sgrp_for_group(const struct group *grp, struct sgrp *ret_sgrp, char **re
+@@ -416,6 +421,9 @@ int nss_sgrp_for_group(const struct grou
                  buflen *= 2;
                  buf = mfree(buf);
          }
@@ -122,8 +120,6 @@
          if (r < 0)
                  return r;
  
-diff --git a/src/shared/user-record-nss.h b/src/shared/user-record-nss.h
-index 22ab04d6ee..4e52e7a911 100644
 --- a/src/shared/user-record-nss.h
 +++ b/src/shared/user-record-nss.h
 @@ -2,7 +2,11 @@
@@ -138,28 +134,26 @@
  #include <pwd.h>
  #include <shadow.h>
  
-diff --git a/src/shared/userdb.c b/src/shared/userdb.c
-index 613350bd46..5c821d28cd 100644
 --- a/src/shared/userdb.c
 +++ b/src/shared/userdb.c
-@@ -938,13 +938,16 @@ int groupdb_iterator_get(UserDBIterator *iterator, GroupRecord **ret) {
+@@ -1047,13 +1047,15 @@ int groupdb_iterator_get(UserDBIterator
                  if (gr) {
                          _cleanup_free_ char *buffer = NULL;
                          bool incomplete = false;
 +#if ENABLE_GSHADOW
                          struct sgrp sgrp;
+-
 +#endif
- 
                          if (streq_ptr(gr->gr_name, "root"))
                                  iterator->synthesize_root = false;
                          if (gr->gr_gid == GID_NOBODY)
                                  iterator->synthesize_nobody = false;
  
 +#if ENABLE_GSHADOW
-                         if (!FLAGS_SET(iterator->flags, USERDB_AVOID_SHADOW)) {
+                         if (!FLAGS_SET(iterator->flags, USERDB_SUPPRESS_SHADOW)) {
                                  r = nss_sgrp_for_group(gr, &sgrp, &buffer);
                                  if (r < 0) {
-@@ -957,6 +960,9 @@ int groupdb_iterator_get(UserDBIterator *iterator, GroupRecord **ret) {
+@@ -1066,6 +1068,9 @@ int groupdb_iterator_get(UserDBIterator
                          }
  
                          r = nss_group_to_group_record(gr, r >= 0 ? &sgrp : NULL, ret);
diff --git a/poky/meta/recipes-core/systemd/systemd_248.3.bb b/poky/meta/recipes-core/systemd/systemd_249.1.bb
similarity index 90%
rename from poky/meta/recipes-core/systemd/systemd_248.3.bb
rename to poky/meta/recipes-core/systemd/systemd_249.1.bb
index f5022a9..5d47202 100644
--- a/poky/meta/recipes-core/systemd/systemd_248.3.bb
+++ b/poky/meta/recipes-core/systemd/systemd_249.1.bb
@@ -4,7 +4,7 @@
 
 PE = "1"
 
-DEPENDS = "intltool-native gperf-native libcap util-linux"
+DEPENDS = "intltool-native gperf-native libcap util-linux python3-jinja2-native"
 
 SECTION = "base/shell"
 
@@ -14,8 +14,7 @@
 # that we don't build both udev and systemd in world builds.
 REQUIRED_DISTRO_FEATURES = "systemd"
 
-SRC_URI += " \
-           file://touchscreen.rules \
+SRC_URI += "file://touchscreen.rules \
            file://00-create-volatile.conf \
            ${@bb.utils.contains('PACKAGECONFIG', 'polkit_hostnamed_fallback', 'file://org.freedesktop.hostname1_no_polkit.conf', '', d)} \
            ${@bb.utils.contains('PACKAGECONFIG', 'polkit_hostnamed_fallback', 'file://00-hostnamed-network-user.conf', '', d)} \
@@ -26,11 +25,10 @@
            file://0003-implment-systemd-sysv-install-for-OE.patch \
            file://0001-systemd.pc.in-use-ROOTPREFIX-without-suffixed-slash.patch \
            file://0001-test-parse-argument-Include-signal.h.patch \
-           file://0001-test-seccomp-Check-for-__NR_ppoll-before-use.patch \
            "
 
 # patches needed by musl
-SRC_URI_append_libc-musl = " ${SRC_URI_MUSL}"
+SRC_URI:append:libc-musl = " ${SRC_URI_MUSL}"
 SRC_URI_MUSL = "\
                file://0002-don-t-use-glibc-specific-qsort_r.patch \
                file://0003-missing_type.h-add-__compare_fn_t-and-comparison_fn_.patch \
@@ -98,7 +96,7 @@
     xz \
 "
 
-PACKAGECONFIG_remove_libc-musl = " \
+PACKAGECONFIG:remove:libc-musl = " \
     gshadow \
     idn \
     localed \
@@ -111,7 +109,7 @@
     utmp \
 "
 
-CFLAGS_append_libc-musl = " -D__UAPI_DEF_ETHHDR=0 "
+CFLAGS:append:libc-musl = " -D__UAPI_DEF_ETHHDR=0 "
 
 # Some of the dependencies are weak-style recommends - if not available at runtime,
 # systemd won't fail but the library-related feature will be skipped with a warning.
@@ -336,7 +334,7 @@
 	install -Dm 0644 ${WORKDIR}/systemd-pager.sh ${D}${sysconfdir}/profile.d/systemd-pager.sh
 }
 
-python populate_packages_prepend (){
+python populate_packages:prepend (){
     systemdlibdir = d.getVar("rootlibdir")
     do_split_packages(d, systemdlibdir, '^lib(.*)\.so\.*', 'lib%s', 'Systemd %s library', extra_depends='', allow_links=True)
 }
@@ -361,96 +359,96 @@
     udev-hwdb \
 "
 
-SUMMARY_${PN}-container = "Tools for containers and VMs"
-DESCRIPTION_${PN}-container = "Systemd tools to spawn and manage containers and virtual machines."
+SUMMARY:${PN}-container = "Tools for containers and VMs"
+DESCRIPTION:${PN}-container = "Systemd tools to spawn and manage containers and virtual machines."
 
-SUMMARY_${PN}-journal-gatewayd = "HTTP server for journal events"
-DESCRIPTION_${PN}-journal-gatewayd = "systemd-journal-gatewayd serves journal events over the network. Clients must connect using HTTP. The server listens on port 19531 by default."
+SUMMARY:${PN}-journal-gatewayd = "HTTP server for journal events"
+DESCRIPTION:${PN}-journal-gatewayd = "systemd-journal-gatewayd serves journal events over the network. Clients must connect using HTTP. The server listens on port 19531 by default."
 
-SUMMARY_${PN}-journal-upload = "Send journal messages over the network"
-DESCRIPTION_${PN}-journal-upload = "systemd-journal-upload uploads journal entries to a specified URL."
+SUMMARY:${PN}-journal-upload = "Send journal messages over the network"
+DESCRIPTION:${PN}-journal-upload = "systemd-journal-upload uploads journal entries to a specified URL."
 
-SUMMARY_${PN}-journal-remote = "Receive journal messages over the network"
-DESCRIPTION_${PN}-journal-remote = "systemd-journal-remote is a command to receive serialized journal events and store them to journal files."
+SUMMARY:${PN}-journal-remote = "Receive journal messages over the network"
+DESCRIPTION:${PN}-journal-remote = "systemd-journal-remote is a command to receive serialized journal events and store them to journal files."
 
 SYSTEMD_PACKAGES = "${@bb.utils.contains('PACKAGECONFIG', 'binfmt', '${PN}-binfmt', '', d)} \
                     ${@bb.utils.contains('PACKAGECONFIG', 'microhttpd', '${PN}-journal-gatewayd', '', d)} \
                     ${@bb.utils.contains('PACKAGECONFIG', 'microhttpd', '${PN}-journal-remote', '', d)} \
                     ${@bb.utils.contains('PACKAGECONFIG', 'journal-upload', '${PN}-journal-upload', '', d)} \
 "
-SYSTEMD_SERVICE_${PN}-binfmt = "systemd-binfmt.service"
+SYSTEMD_SERVICE:${PN}-binfmt = "systemd-binfmt.service"
 
 USERADD_PACKAGES = "${PN} ${PN}-extra-utils \
                     ${@bb.utils.contains('PACKAGECONFIG', 'microhttpd', '${PN}-journal-gateway', '', d)} \
                     ${@bb.utils.contains('PACKAGECONFIG', 'microhttpd', '${PN}-journal-remote', '', d)} \
                     ${@bb.utils.contains('PACKAGECONFIG', 'journal-upload', '${PN}-journal-upload', '', d)} \
 "
-GROUPADD_PARAM_${PN} = "-r systemd-journal;"
-GROUPADD_PARAM_${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'polkit_hostnamed_fallback', '-r systemd-hostname;', '', d)}"
-USERADD_PARAM_${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'coredump', '--system -d / -M --shell /sbin/nologin systemd-coredump;', '', d)}"
-USERADD_PARAM_${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'networkd', '--system -d / -M --shell /sbin/nologin systemd-network;', '', d)}"
-USERADD_PARAM_${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'polkit', '--system --no-create-home --user-group --home-dir ${sysconfdir}/polkit-1 polkitd;', '', d)}"
-USERADD_PARAM_${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'resolved', '--system -d / -M --shell /sbin/nologin systemd-resolve;', '', d)}"
-USERADD_PARAM_${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'timesyncd', '--system -d / -M --shell /sbin/nologin systemd-timesync;', '', d)}"
-USERADD_PARAM_${PN}-extra-utils = "--system -d / -M --shell /sbin/nologin systemd-bus-proxy"
-USERADD_PARAM_${PN}-journal-gateway = "--system -d / -M --shell /sbin/nologin systemd-journal-gateway"
-USERADD_PARAM_${PN}-journal-remote = "--system -d / -M --shell /sbin/nologin systemd-journal-remote"
-USERADD_PARAM_${PN}-journal-upload = "--system -d / -M --shell /sbin/nologin systemd-journal-upload"
+GROUPADD_PARAM:${PN} = "-r systemd-journal;"
+GROUPADD_PARAM:${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'polkit_hostnamed_fallback', '-r systemd-hostname;', '', d)}"
+USERADD_PARAM:${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'coredump', '--system -d / -M --shell /sbin/nologin systemd-coredump;', '', d)}"
+USERADD_PARAM:${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'networkd', '--system -d / -M --shell /sbin/nologin systemd-network;', '', d)}"
+USERADD_PARAM:${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'polkit', '--system --no-create-home --user-group --home-dir ${sysconfdir}/polkit-1 polkitd;', '', d)}"
+USERADD_PARAM:${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'resolved', '--system -d / -M --shell /sbin/nologin systemd-resolve;', '', d)}"
+USERADD_PARAM:${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'timesyncd', '--system -d / -M --shell /sbin/nologin systemd-timesync;', '', d)}"
+USERADD_PARAM:${PN}-extra-utils = "--system -d / -M --shell /sbin/nologin systemd-bus-proxy"
+USERADD_PARAM:${PN}-journal-gateway = "--system -d / -M --shell /sbin/nologin systemd-journal-gateway"
+USERADD_PARAM:${PN}-journal-remote = "--system -d / -M --shell /sbin/nologin systemd-journal-remote"
+USERADD_PARAM:${PN}-journal-upload = "--system -d / -M --shell /sbin/nologin systemd-journal-upload"
 
-FILES_${PN}-analyze = "${bindir}/systemd-analyze"
+FILES:${PN}-analyze = "${bindir}/systemd-analyze"
 
-FILES_${PN}-initramfs = "/init"
-RDEPENDS_${PN}-initramfs = "${PN}"
+FILES:${PN}-initramfs = "/init"
+RDEPENDS:${PN}-initramfs = "${PN}"
 
-FILES_${PN}-gui = "${bindir}/systemadm"
+FILES:${PN}-gui = "${bindir}/systemadm"
 
-FILES_${PN}-vconsole-setup = "${rootlibexecdir}/systemd/systemd-vconsole-setup \
+FILES:${PN}-vconsole-setup = "${rootlibexecdir}/systemd/systemd-vconsole-setup \
                               ${systemd_unitdir}/system/systemd-vconsole-setup.service \
                               ${systemd_unitdir}/system/sysinit.target.wants/systemd-vconsole-setup.service"
 
-RDEPENDS_${PN}-kernel-install += "bash"
-FILES_${PN}-kernel-install = "${bindir}/kernel-install \
+RDEPENDS:${PN}-kernel-install += "bash"
+FILES:${PN}-kernel-install = "${bindir}/kernel-install \
                               ${sysconfdir}/kernel/ \
                               ${exec_prefix}/lib/kernel \
                              "
-FILES_${PN}-rpm-macros = "${exec_prefix}/lib/rpm \
+FILES:${PN}-rpm-macros = "${exec_prefix}/lib/rpm \
                          "
 
-FILES_${PN}-zsh-completion = "${datadir}/zsh/site-functions"
+FILES:${PN}-zsh-completion = "${datadir}/zsh/site-functions"
 
-FILES_${PN}-binfmt = "${sysconfdir}/binfmt.d/ \
+FILES:${PN}-binfmt = "${sysconfdir}/binfmt.d/ \
                       ${exec_prefix}/lib/binfmt.d \
                       ${rootlibexecdir}/systemd/systemd-binfmt \
                       ${systemd_unitdir}/system/proc-sys-fs-binfmt_misc.* \
                       ${systemd_unitdir}/system/systemd-binfmt.service"
-RRECOMMENDS_${PN}-binfmt = "kernel-module-binfmt-misc"
+RRECOMMENDS:${PN}-binfmt = "kernel-module-binfmt-misc"
 
-RRECOMMENDS_${PN}-vconsole-setup = "kbd kbd-consolefonts kbd-keymaps"
+RRECOMMENDS:${PN}-vconsole-setup = "kbd kbd-consolefonts kbd-keymaps"
 
 
-FILES_${PN}-journal-gatewayd = "${rootlibexecdir}/systemd/systemd-journal-gatewayd \
+FILES:${PN}-journal-gatewayd = "${rootlibexecdir}/systemd/systemd-journal-gatewayd \
                                 ${systemd_system_unitdir}/systemd-journal-gatewayd.service \
                                 ${systemd_system_unitdir}/systemd-journal-gatewayd.socket \
                                 ${systemd_system_unitdir}/sockets.target.wants/systemd-journal-gatewayd.socket \
                                 ${datadir}/systemd/gatewayd/browse.html \
                                "
-SYSTEMD_SERVICE_${PN}-journal-gatewayd = "systemd-journal-gatewayd.socket"
+SYSTEMD_SERVICE:${PN}-journal-gatewayd = "systemd-journal-gatewayd.socket"
 
-FILES_${PN}-journal-upload = "${rootlibexecdir}/systemd/systemd-journal-upload \
+FILES:${PN}-journal-upload = "${rootlibexecdir}/systemd/systemd-journal-upload \
                               ${systemd_system_unitdir}/systemd-journal-upload.service \
                               ${sysconfdir}/systemd/journal-upload.conf \
                              "
-SYSTEMD_SERVICE_${PN}-journal-upload = "systemd-journal-upload.service"
+SYSTEMD_SERVICE:${PN}-journal-upload = "systemd-journal-upload.service"
 
-FILES_${PN}-journal-remote = "${rootlibexecdir}/systemd/systemd-journal-remote \
+FILES:${PN}-journal-remote = "${rootlibexecdir}/systemd/systemd-journal-remote \
                               ${sysconfdir}/systemd/journal-remote.conf \
                               ${systemd_system_unitdir}/systemd-journal-remote.service \
                               ${systemd_system_unitdir}/systemd-journal-remote.socket \
                              "
-SYSTEMD_SERVICE_${PN}-journal-remote = "systemd-journal-remote.socket"
+SYSTEMD_SERVICE:${PN}-journal-remote = "systemd-journal-remote.socket"
 
 
-FILES_${PN}-container = "${sysconfdir}/dbus-1/system.d/org.freedesktop.import1.conf \
+FILES:${PN}-container = "${sysconfdir}/dbus-1/system.d/org.freedesktop.import1.conf \
                          ${sysconfdir}/dbus-1/system.d/org.freedesktop.machine1.conf \
                          ${sysconfdir}/systemd/system/multi-user.target.wants/machines.target \
                          ${base_bindir}/machinectl \
@@ -486,7 +484,7 @@
                         "
 
 # "machinectl import-tar" uses "tar --numeric-owner", not supported by busybox.
-RRECOMMENDS_${PN}-container += "\
+RRECOMMENDS:${PN}-container += "\
                          ${PN}-journal-gatewayd \
                          ${PN}-journal-remote \
                          ${PN}-journal-upload \
@@ -496,7 +494,7 @@
                          tar \
                         "
 
-FILES_${PN}-extra-utils = "\
+FILES:${PN}-extra-utils = "\
                         ${base_bindir}/systemd-escape \
                         ${base_bindir}/systemd-inhibit \
                         ${bindir}/systemd-detect-virt \
@@ -540,14 +538,14 @@
                         ${rootlibexecdir}/systemd/systemd-cgroups-agent \
 "
 
-FILES_${PN}-udev-rules = "\
+FILES:${PN}-udev-rules = "\
                         ${rootlibexecdir}/udev/rules.d/70-uaccess.rules \
                         ${rootlibexecdir}/udev/rules.d/71-seat.rules \
                         ${rootlibexecdir}/udev/rules.d/73-seat-late.rules \
                         ${rootlibexecdir}/udev/rules.d/99-systemd.rules \
 "
 
-CONFFILES_${PN} = "${sysconfdir}/systemd/coredump.conf \
+CONFFILES:${PN} = "${sysconfdir}/systemd/coredump.conf \
 	${sysconfdir}/systemd/journald.conf \
 	${sysconfdir}/systemd/logind.conf \
 	${sysconfdir}/systemd/networkd.conf \
@@ -559,7 +557,7 @@
 	${sysconfdir}/systemd/user.conf \
 "
 
-FILES_${PN} = " ${base_bindir}/* \
+FILES:${PN} = " ${base_bindir}/* \
                 ${base_sbindir}/shutdown \
                 ${base_sbindir}/halt \
                 ${base_sbindir}/poweroff \
@@ -621,13 +619,13 @@
                 ${datadir}/dbus-1/system.d/org.freedesktop.oom1.conf \
                "
 
-FILES_${PN}-dev += "${base_libdir}/security/*.la ${datadir}/dbus-1/interfaces/ ${sysconfdir}/rpm/macros.systemd"
+FILES:${PN}-dev += "${base_libdir}/security/*.la ${datadir}/dbus-1/interfaces/ ${sysconfdir}/rpm/macros.systemd"
 
-RDEPENDS_${PN} += "kmod dbus util-linux-mount util-linux-umount udev (= ${EXTENDPKGV}) systemd-udev-rules util-linux-agetty util-linux-fsck"
-RDEPENDS_${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'serial-getty-generator', '', 'systemd-serialgetty', d)}"
-RDEPENDS_${PN} += "volatile-binds"
+RDEPENDS:${PN} += "kmod dbus util-linux-mount util-linux-umount udev (= ${EXTENDPKGV}) systemd-udev-rules util-linux-agetty util-linux-fsck"
+RDEPENDS:${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'serial-getty-generator', '', 'systemd-serialgetty', d)}"
+RDEPENDS:${PN} += "volatile-binds"
 
-RRECOMMENDS_${PN} += "systemd-extra-utils \
+RRECOMMENDS:${PN} += "systemd-extra-utils \
                       udev-hwdb \
                       e2fsprogs-e2fsck \
                       kernel-module-autofs4 kernel-module-unix kernel-module-ipv6 kernel-module-sch-fq-codel \
@@ -635,15 +633,15 @@
                       systemd-conf \
 "
 
-INSANE_SKIP_${PN} += "dev-so libdir"
-INSANE_SKIP_${PN}-dbg += "libdir"
-INSANE_SKIP_${PN}-doc += " libdir"
+INSANE_SKIP:${PN} += "dev-so libdir"
+INSANE_SKIP:${PN}-dbg += "libdir"
+INSANE_SKIP:${PN}-doc += " libdir"
 
-RPROVIDES_udev = "hotplug"
+RPROVIDES:udev = "hotplug"
 
-RDEPENDS_udev-hwdb += "udev"
+RDEPENDS:udev-hwdb += "udev"
 
-FILES_udev += "${base_sbindir}/udevd \
+FILES:udev += "${base_sbindir}/udevd \
                ${rootlibexecdir}/systemd/network/99-default.link \
                ${rootlibexecdir}/systemd/systemd-udevd \
                ${rootlibexecdir}/udev/accelerometer \
@@ -687,6 +685,7 @@
                ${rootlibexecdir}/udev/rules.d/78-sound-card.rules \
                ${rootlibexecdir}/udev/rules.d/80-drivers.rules \
                ${rootlibexecdir}/udev/rules.d/80-net-setup-link.rules \
+               ${rootlibexecdir}/udev/rules.d/81-net-dhcp.rules \
                ${rootlibexecdir}/udev/rules.d/90-vconsole.rules \
                ${rootlibexecdir}/udev/rules.d/README \
                ${sysconfdir}/udev \
@@ -701,14 +700,14 @@
                ${systemd_unitdir}/system/systemd-hwdb-update.service \
               "
 
-FILES_udev-hwdb = "${rootlibexecdir}/udev/hwdb.d \
+FILES:udev-hwdb = "${rootlibexecdir}/udev/hwdb.d \
                    "
 
-RCONFLICTS_${PN} = "tiny-init ${@bb.utils.contains('PACKAGECONFIG', 'resolved', 'resolvconf', '', d)}"
+RCONFLICTS:${PN} = "tiny-init ${@bb.utils.contains('PACKAGECONFIG', 'resolved', 'resolvconf', '', d)}"
 
 INITSCRIPT_PACKAGES = "udev"
-INITSCRIPT_NAME_udev = "systemd-udevd"
-INITSCRIPT_PARAMS_udev = "start 03 S ."
+INITSCRIPT_NAME:udev = "systemd-udevd"
+INITSCRIPT_PARAMS:udev = "start 03 S ."
 
 python __anonymous() {
     if not bb.utils.contains('DISTRO_FEATURES', 'sysvinit', True, False, d):
@@ -721,7 +720,7 @@
 }
 addtask warn_musl before do_configure
 
-ALTERNATIVE_${PN} = "halt reboot shutdown poweroff runlevel ${@bb.utils.contains('PACKAGECONFIG', 'resolved', 'resolv-conf', '', d)}"
+ALTERNATIVE:${PN} = "halt reboot shutdown poweroff runlevel ${@bb.utils.contains('PACKAGECONFIG', 'resolved', 'resolv-conf', '', d)}"
 
 ALTERNATIVE_TARGET[resolv-conf] = "${sysconfdir}/resolv-conf.systemd"
 ALTERNATIVE_LINK_NAME[resolv-conf] = "${sysconfdir}/resolv.conf"
@@ -747,20 +746,20 @@
 ALTERNATIVE_LINK_NAME[runlevel] = "${base_sbindir}/runlevel"
 ALTERNATIVE_PRIORITY[runlevel] ?= "300"
 
-pkg_postinst_${PN}_libc-glibc () {
+pkg_postinst:${PN}:libc-glibc () {
 	sed -e '/^hosts:/s/\s*\<myhostname\>//' \
 		-e 's/\(^hosts:.*\)\(\<files\>\)\(.*\)\(\<dns\>\)\(.*\)/\1\2 myhostname \3\4\5/' \
 		-i $D${sysconfdir}/nsswitch.conf
 }
 
-pkg_prerm_${PN}_libc-glibc () {
+pkg_prerm:${PN}:libc-glibc () {
 	sed -e '/^hosts:/s/\s*\<myhostname\>//' \
 		-e '/^hosts:/s/\s*myhostname//' \
 		-i $D${sysconfdir}/nsswitch.conf
 }
 
 PACKAGE_WRITE_DEPS += "qemu-native"
-pkg_postinst_udev-hwdb () {
+pkg_postinst:udev-hwdb () {
 	if test -n "$D"; then
 		$INTERCEPT_DIR/postinst_intercept update_udev_hwdb ${PKG} mlprefix=${MLPREFIX} binprefix=${MLPREFIX} rootlibexecdir="${rootlibexecdir}" PREFERRED_PROVIDER_udev="${PREFERRED_PROVIDER_udev}"
 	else
@@ -768,6 +767,6 @@
 	fi
 }
 
-pkg_prerm_udev-hwdb () {
+pkg_prerm:udev-hwdb () {
 	rm -f $D${sysconfdir}/udev/hwdb.bin
 }
diff --git a/poky/meta/recipes-core/sysvinit/sysvinit-inittab_2.88dsf.bb b/poky/meta/recipes-core/sysvinit/sysvinit-inittab_2.88dsf.bb
index d95d1a6..bfcf51c 100644
--- a/poky/meta/recipes-core/sysvinit/sysvinit-inittab_2.88dsf.bb
+++ b/poky/meta/recipes-core/sysvinit/sysvinit-inittab_2.88dsf.bb
@@ -53,14 +53,14 @@
     fi
 }
 
-pkg_postinst_${PN} () {
+pkg_postinst:${PN} () {
 # run this on host and on target
 if [ "${SERIAL_CONSOLES_CHECK}" = "" ]; then
        exit 0
 fi
 }
 
-pkg_postinst_ontarget_${PN} () {
+pkg_postinst_ontarget:${PN} () {
 # run this on the target
 if [ -e /proc/consoles ]; then
 	tmp="${SERIAL_CONSOLES_CHECK}"
@@ -84,10 +84,10 @@
 # Set PACKAGE_ARCH appropriately.
 PACKAGE_ARCH = "${MACHINE_ARCH}"
 
-FILES_${PN} = "${sysconfdir}/inittab ${base_bindir}/start_getty"
-CONFFILES_${PN} = "${sysconfdir}/inittab"
+FILES:${PN} = "${sysconfdir}/inittab ${base_bindir}/start_getty"
+CONFFILES:${PN} = "${sysconfdir}/inittab"
 
 USE_VT ?= "1"
 SYSVINIT_ENABLED_GETTYS ?= "1"
 
-RCONFLICTS_${PN} = "busybox-inittab"
+RCONFLICTS:${PN} = "busybox-inittab"
diff --git a/poky/meta/recipes-core/sysvinit/sysvinit_2.99.bb b/poky/meta/recipes-core/sysvinit/sysvinit_2.99.bb
index e39f22a..9ba9652 100644
--- a/poky/meta/recipes-core/sysvinit/sysvinit_2.99.bb
+++ b/poky/meta/recipes-core/sysvinit/sysvinit_2.99.bb
@@ -7,7 +7,7 @@
                     file://COPYRIGHT;endline=15;md5=a1d3b3526501d3546d530bbe6ab6cdbe \
                     "
 
-RDEPENDS_${PN} = "${PN}-inittab"
+RDEPENDS:${PN} = "${PN}-inittab"
 
 SRC_URI = "${SAVANNAH_GNU_MIRROR}/sysvinit/sysvinit-${PV}.tar.xz \
            file://install.patch \
@@ -26,14 +26,14 @@
 S = "${WORKDIR}/sysvinit-${PV}"
 
 inherit update-alternatives features_check
-DEPENDS_append = " update-rc.d-native base-passwd virtual/crypt"
+DEPENDS:append = " update-rc.d-native base-passwd virtual/crypt"
 do_package_setscene[depends] = "${MLPREFIX}base-passwd:do_populate_sysroot"
 
 PACKAGECONFIG[psplash-text-updates] = ",,"
 
 REQUIRED_DISTRO_FEATURES = "sysvinit"
 
-ALTERNATIVE_${PN} = "init mountpoint halt reboot runlevel shutdown poweroff last lastb mesg utmpdump wall"
+ALTERNATIVE:${PN} = "init mountpoint halt reboot runlevel shutdown poweroff last lastb mesg utmpdump wall"
 
 ALTERNATIVE_PRIORITY = "200"
 
@@ -49,13 +49,13 @@
 ALTERNATIVE_LINK_NAME[shutdown] = "${base_sbindir}/shutdown"
 ALTERNATIVE_LINK_NAME[poweroff] = "${base_sbindir}/poweroff"
 
-ALTERNATIVE_${PN}-pidof = "pidof"
+ALTERNATIVE:${PN}-pidof = "pidof"
 ALTERNATIVE_LINK_NAME[pidof] = "${base_bindir}/pidof"
 
-ALTERNATIVE_${PN}-sulogin = "sulogin"
+ALTERNATIVE:${PN}-sulogin = "sulogin"
 ALTERNATIVE_LINK_NAME[sulogin] = "${base_sbindir}/sulogin"
 
-ALTERNATIVE_${PN}-doc = "mountpoint.1 last.1 lastb.1 mesg.1 wall.1 sulogin.8 utmpdump.1"
+ALTERNATIVE:${PN}-doc = "mountpoint.1 last.1 lastb.1 mesg.1 wall.1 sulogin.8 utmpdump.1"
 
 ALTERNATIVE_LINK_NAME[last.1] = "${mandir}/man1/last.1"
 ALTERNATIVE_LINK_NAME[lastb.1] = "${mandir}/man1/lastb.1"
@@ -66,13 +66,13 @@
 ALTERNATIVE_LINK_NAME[wall.1] = "${mandir}/man1/wall.1"
 
 PACKAGES =+ "sysvinit-pidof sysvinit-sulogin"
-FILES_${PN} += "${base_sbindir}/* ${base_bindir}/*"
-FILES_sysvinit-pidof = "${base_bindir}/pidof.sysvinit ${base_sbindir}/killall5"
-FILES_sysvinit-sulogin = "${base_sbindir}/sulogin.sysvinit"
+FILES:${PN} += "${base_sbindir}/* ${base_bindir}/*"
+FILES:sysvinit-pidof = "${base_bindir}/pidof.sysvinit ${base_sbindir}/killall5"
+FILES:sysvinit-sulogin = "${base_sbindir}/sulogin.sysvinit"
 
-RDEPENDS_${PN} += "sysvinit-pidof initd-functions base-passwd"
+RDEPENDS:${PN} += "sysvinit-pidof initd-functions base-passwd"
 
-CFLAGS_prepend = "-D_GNU_SOURCE "
+CFLAGS:prepend = "-D_GNU_SOURCE "
 export LCRYPT = "-lcrypt"
 EXTRA_OEMAKE += "'base_bindir=${base_bindir}' \
 		 'base_sbindir=${base_sbindir}' \
diff --git a/poky/meta/recipes-core/udev/eudev/permissions.rules b/poky/meta/recipes-core/udev/eudev/permissions.rules
index 205b733..bfdff4f 100644
--- a/poky/meta/recipes-core/udev/eudev/permissions.rules
+++ b/poky/meta/recipes-core/udev/eudev/permissions.rules
@@ -10,9 +10,9 @@
 SUBSYSTEM=="net", ENV{DRIVER}=="?*",		WAIT_FOR_SYSFS="device/driver"
 
 # devices needed to load the drivers providing them
-KERNEL=="tun",					OPTIONS+="ignore_remove"
-KERNEL=="ppp",					OPTIONS+="ignore_remove"
-KERNEL=="loop[0-9]*",				OPTIONS+="ignore_remove"
+KERNEL=="tun",					OPTIONS+="ignore:remove"
+KERNEL=="ppp",					OPTIONS+="ignore:remove"
+KERNEL=="loop[0-9]*",				OPTIONS+="ignore:remove"
 
 # default permissions for block devices
 SUBSYSTEM=="block",				GROUP="disk"
diff --git a/poky/meta/recipes-core/udev/eudev_3.2.10.bb b/poky/meta/recipes-core/udev/eudev_3.2.10.bb
index a5d2115..347495c 100644
--- a/poky/meta/recipes-core/udev/eudev_3.2.10.bb
+++ b/poky/meta/recipes-core/udev/eudev_3.2.10.bb
@@ -2,7 +2,7 @@
 HOMEPAGE = "https://wiki.gentoo.org/wiki/Eudev"
 DESCRIPTION = "eudev is Gentoo's fork of udev, systemd's device file manager for the Linux kernel. It manages device nodes in /dev and handles all user space actions when adding or removing devices."
 LICENSE = "GPLv2.0+ & LGPL-2.1+"
-LICENSE_libudev = "LGPL-2.1+"
+LICENSE:libudev = "LGPL-2.1+"
 LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
 
 DEPENDS = "glib-2.0 glib-2.0-native gperf-native kmod libxslt-native util-linux"
@@ -38,7 +38,7 @@
 PACKAGECONFIG ??= "hwdb"
 PACKAGECONFIG[hwdb] = "--enable-hwdb,--disable-hwdb"
 
-do_install_append() {
+do_install:append() {
 	install -d ${D}${sysconfdir}/init.d
 	install -m 0755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/udev
 	sed -i s%@UDEVD@%${base_sbindir}/udevd% ${D}${sysconfdir}/init.d/udev
@@ -57,7 +57,7 @@
 	ln ${D}${bindir}/udevadm ${D}${libexecdir}/${MLPREFIX}udevadm
 }
 
-do_install_prepend_class-target () {
+do_install:prepend:class-target () {
 	# Remove references to buildmachine
 	sed -i -e 's:${RECIPE_SYSROOT_NATIVE}::g' \
 		${B}/src/udev/keyboard-keys-from-name.h
@@ -70,21 +70,21 @@
 PACKAGES =+ "eudev-hwdb"
 
 
-FILES_${PN} += "${libexecdir} ${nonarch_base_libdir}/udev ${bindir}/udevadm"
-FILES_${PN}-dev = "${datadir}/pkgconfig/udev.pc \
+FILES:${PN} += "${libexecdir} ${nonarch_base_libdir}/udev ${bindir}/udevadm"
+FILES:${PN}-dev = "${datadir}/pkgconfig/udev.pc \
                    ${includedir}/libudev.h ${libdir}/libudev.so \
                    ${includedir}/udev.h ${libdir}/libudev.la \
                    ${libdir}/libudev.a ${libdir}/pkgconfig/libudev.pc"
-FILES_libudev = "${base_libdir}/libudev.so.*"
-FILES_eudev-hwdb = "${sysconfdir}/udev/hwdb.d"
+FILES:libudev = "${base_libdir}/libudev.so.*"
+FILES:eudev-hwdb = "${sysconfdir}/udev/hwdb.d"
 
-RDEPENDS_eudev-hwdb += "eudev"
+RDEPENDS:eudev-hwdb += "eudev"
 
-RPROVIDES_${PN} = "hotplug udev"
-RPROVIDES_eudev-hwdb += "udev-hwdb"
+RPROVIDES:${PN} = "hotplug udev"
+RPROVIDES:eudev-hwdb += "udev-hwdb"
 
 PACKAGE_WRITE_DEPS += "qemu-native"
-pkg_postinst_eudev-hwdb () {
+pkg_postinst:eudev-hwdb () {
     if test -n "$D"; then
         $INTERCEPT_DIR/postinst_intercept update_udev_hwdb ${PKG} mlprefix=${MLPREFIX} binprefix=${MLPREFIX}
     else
@@ -92,6 +92,6 @@
     fi
 }
 
-pkg_prerm_eudev-hwdb () {
+pkg_prerm:eudev-hwdb () {
         rm -f $D${sysconfdir}/udev/hwdb.bin
 }
diff --git a/poky/meta/recipes-core/udev/udev-extraconf_1.1.bb b/poky/meta/recipes-core/udev/udev-extraconf_1.1.bb
index 90f933d..2ba35b0 100644
--- a/poky/meta/recipes-core/udev/udev-extraconf_1.1.bb
+++ b/poky/meta/recipes-core/udev/udev-extraconf_1.1.bb
@@ -35,11 +35,11 @@
     install -m 0755 ${WORKDIR}/network.sh ${D}${sysconfdir}/udev/scripts
 }
 
-FILES_${PN} = "${sysconfdir}/udev"
-RDEPENDS_${PN} = "udev"
-CONFFILES_${PN} = "${sysconfdir}/udev/mount.blacklist"
+FILES:${PN} = "${sysconfdir}/udev"
+RDEPENDS:${PN} = "udev"
+CONFFILES:${PN} = "${sysconfdir}/udev/mount.blacklist"
 
 # to replace udev-extra-rules from meta-oe
-RPROVIDES_${PN} = "udev-extra-rules"
-RREPLACES_${PN} = "udev-extra-rules"
-RCONFLICTS_${PN} = "udev-extra-rules"
+RPROVIDES:${PN} = "udev-extra-rules"
+RREPLACES:${PN} = "udev-extra-rules"
+RCONFLICTS:${PN} = "udev-extra-rules"
diff --git a/poky/meta/recipes-core/util-linux/util-linux-libuuid_2.37.bb b/poky/meta/recipes-core/util-linux/util-linux-libuuid_2.37.1.bb
similarity index 95%
rename from poky/meta/recipes-core/util-linux/util-linux-libuuid_2.37.bb
rename to poky/meta/recipes-core/util-linux/util-linux-libuuid_2.37.1.bb
index 9612c49..5d759ae 100644
--- a/poky/meta/recipes-core/util-linux/util-linux-libuuid_2.37.bb
+++ b/poky/meta/recipes-core/util-linux/util-linux-libuuid_2.37.1.bb
@@ -9,7 +9,7 @@
 EXTRA_OECONF += "--disable-all-programs --enable-libuuid"
 LICENSE = "BSD-3-Clause"
 
-do_install_append() {
+do_install:append() {
 	rm -rf ${D}${datadir} ${D}${bindir} ${D}${base_bindir} ${D}${sbindir} ${D}${base_sbindir} ${D}${exec_prefix}/sbin
 }
 
diff --git a/poky/meta/recipes-core/util-linux/util-linux.inc b/poky/meta/recipes-core/util-linux/util-linux.inc
index 0648366..a76fb9e 100644
--- a/poky/meta/recipes-core/util-linux/util-linux.inc
+++ b/poky/meta/recipes-core/util-linux/util-linux.inc
@@ -7,10 +7,10 @@
 SECTION = "base"
 
 LICENSE = "GPLv2+ & LGPLv2.1+ & BSD-3-Clause & BSD-4-Clause"
-LICENSE_${PN}-libblkid = "LGPLv2.1+"
-LICENSE_${PN}-libfdisk = "LGPLv2.1+"
-LICENSE_${PN}-libmount = "LGPLv2.1+"
-LICENSE_${PN}-libsmartcols = "LGPLv2.1+"
+LICENSE:${PN}-libblkid = "LGPLv2.1+"
+LICENSE:${PN}-libfdisk = "LGPLv2.1+"
+LICENSE:${PN}-libmount = "LGPLv2.1+"
+LICENSE:${PN}-libsmartcols = "LGPLv2.1+"
 
 LIC_FILES_CHKSUM = "file://README.licensing;md5=0fd5c050c6187d2bf0a4492b7f4e33da \
                     file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
@@ -25,7 +25,7 @@
                     file://libsmartcols/COPYING;md5=693bcbbe16d3a4a4b37bc906bc01cc04 \
 "
 
-FILESEXTRAPATHS_prepend := "${THISDIR}/util-linux:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/util-linux:"
 MAJOR_VERSION = "${@'.'.join(d.getVar('PV').split('.')[0:2])}"
 SRC_URI = "${KERNELORG_MIRROR}/linux/utils/util-linux/v${MAJOR_VERSION}/util-linux-${PV}.tar.xz \
            file://configure-sbindir.patch \
@@ -35,13 +35,6 @@
            file://run-ptest \
            file://display_testname_for_subtest.patch \
            file://avoid_parallel_tests.patch \
-           file://8a3a74160b96498d672e3652827aa7e6d7f3a120.patch \
-           file://tests-kill.patch \
-           file://tests-blkdiscard.patch \
-           file://tests-ul.patch \
-           file://tests-eject.patch \
-           file://tests-lscpu.patch \
-           file://0001-login-fix-close_range-use.patch \
            "
 
-SRC_URI[sha256sum] = "bd07b7e98839e0359842110525a3032fdb8eaf3a90bedde3dd1652d32d15cce5"
+SRC_URI[sha256sum] = "8e4bd42053b726cf86eb4d13a73bc1d9225a2c2e1a2e0d2a891f1020f83e6b76"
diff --git a/poky/meta/recipes-core/util-linux/util-linux/0001-login-fix-close_range-use.patch b/poky/meta/recipes-core/util-linux/util-linux/0001-login-fix-close_range-use.patch
deleted file mode 100644
index 7a47597..0000000
--- a/poky/meta/recipes-core/util-linux/util-linux/0001-login-fix-close_range-use.patch
+++ /dev/null
@@ -1,62 +0,0 @@
-From 76ae0badd3fd7c8653fa4d3c78d2dcfcec51d23d Mon Sep 17 00:00:00 2001
-From: Karel Zak <kzak@redhat.com>
-Date: Wed, 14 Jul 2021 17:25:57 +0200
-Subject: [PATCH] login: fix close_range() use
-
-This new syscall comes with three arguments (see kernel commit
-278a5fbaed89dacd04e9d052f4594ffd0e0585de). Not sure why util-linux
-assume only two.
-
-Upstream-Status: Backport [https://github.com/karelzak/util-linux/commit/b8d99a618baffb4fc03cda4c40e29778b6d77ad4]
-Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=1981729
-Signed-off-by: Karel Zak <kzak@redhat.com>
----
- include/fileutils.h | 4 ++--
- lib/fileutils.c     | 2 +-
- login-utils/login.c | 2 +-
- 3 files changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/include/fileutils.h b/include/fileutils.h
-index ad54b95..f86426b 100644
---- a/include/fileutils.h
-+++ b/include/fileutils.h
-@@ -82,9 +82,9 @@ static inline struct dirent *xreaddir(DIR *dp)
- # if defined(SYS_close_range)
- #  include <sys/types.h>
- #  ifndef HAVE_CLOSE_RANGE
--static inline int close_range(unsigned int first, unsigned int last)
-+static inline int close_range(unsigned int first, unsigned int last, int flags)
- {
--	return syscall(SYS_close_range, first, last);
-+	return syscall(SYS_close_range, first, last, flags);
- }
- #  endif
- #  define HAVE_CLOSE_RANGE 1
-diff --git a/lib/fileutils.c b/lib/fileutils.c
-index 846b718..a979b03 100644
---- a/lib/fileutils.c
-+++ b/lib/fileutils.c
-@@ -189,7 +189,7 @@ int main(int argc, char *argv[])
- 		ignore_result( dup(STDIN_FILENO) );
-
- # ifdef HAVE_CLOSE_RANGE
--		close_range(STDERR_FILENO + 1, ~0U);
-+		close_range(STDERR_FILENO + 1, ~0U, 0);
- # else
- 		ul_close_all_fds(STDERR_FILENO + 1, ~0U);
- # endif
-diff --git a/login-utils/login.c b/login-utils/login.c
-index 7fefd05..94a042d 100644
---- a/login-utils/login.c
-+++ b/login-utils/login.c
-@@ -1358,7 +1358,7 @@ static void initialize(int argc, char **argv, struct login_context *cxt)
- #endif
- 	}
- #ifdef HAVE_CLOSE_RANGE
--	close_range(STDERR_FILENO + 1, ~0U);
-+	close_range(STDERR_FILENO + 1, ~0U, 0);
- #else
- 	ul_close_all_fds(STDERR_FILENO + 1, ~0U);
- #endif
---
-2.32.0
diff --git a/poky/meta/recipes-core/util-linux/util-linux/8a3a74160b96498d672e3652827aa7e6d7f3a120.patch b/poky/meta/recipes-core/util-linux/util-linux/8a3a74160b96498d672e3652827aa7e6d7f3a120.patch
deleted file mode 100644
index a5bb00a..0000000
--- a/poky/meta/recipes-core/util-linux/util-linux/8a3a74160b96498d672e3652827aa7e6d7f3a120.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 8a3a74160b96498d672e3652827aa7e6d7f3a120 Mon Sep 17 00:00:00 2001
-From: Karel Zak <kzak@redhat.com>
-Date: Tue, 15 Jun 2021 12:04:43 +0200
-Subject: [PATCH] mkswap: fix holes detection (infinite loop and/or
- stack-buffer-underflow)
-
-Reported-by: Brian Lane <bcl@redhat.com>
-Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=1971877
-Fix: https://github.com/karelzak/util-linux/issues/1348
-Signed-off-by: Karel Zak <kzak@redhat.com>
-Upstream-Status: Backport
-Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
----
- disk-utils/mkswap.c | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/disk-utils/mkswap.c b/disk-utils/mkswap.c
-index 27374fd72..c45a3a317 100644
---- a/disk-utils/mkswap.c
-+++ b/disk-utils/mkswap.c
-@@ -267,6 +267,8 @@ static void check_extents(struct mkswap_control *ctl)
- 			return;
- 
- 		n = fiemap->fm_mapped_extents;
-+		if (n == 0)
-+			break;
- 
- 		for (i = 0; i < n; i++) {
- 			struct fiemap_extent *e = &fiemap->fm_extents[i];
diff --git a/poky/meta/recipes-core/util-linux/util-linux/tests-blkdiscard.patch b/poky/meta/recipes-core/util-linux/util-linux/tests-blkdiscard.patch
deleted file mode 100644
index 34b07a4..0000000
--- a/poky/meta/recipes-core/util-linux/util-linux/tests-blkdiscard.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-Upstream-Status: Backport
-Signed-off-by: Ross Burton <ross.burton@arm.com>
-
-From 45fe65d934df2c938701f1c3cd3e0a6f3bdf25e6 Mon Sep 17 00:00:00 2001
-From: Ross Burton <ross.burton@arm.com>
-Date: Tue, 29 Jun 2021 18:10:40 +0100
-Subject: [PATCH] tests/blkdiscard: check correct log file for errors
-
-When checking if the discard ioctl is supported, look in stderr not stdout.
-
-Signed-off-by: Ross Burton <ross.burton@arm.com>
----
- tests/ts/blkdiscard/offsets | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/tests/ts/blkdiscard/offsets b/tests/ts/blkdiscard/offsets
-index 9dddc35e2..5e724d51b 100755
---- a/tests/ts/blkdiscard/offsets
-+++ b/tests/ts/blkdiscard/offsets
-@@ -48,7 +48,7 @@ ts_log "testing offsets with full block size"
- run_tscmd $TS_CMD_BLKDISCARD -v $DEVICE
- if [ "$?" != "0" ]; then
- 	# Skip the rest? For example loop backing files on NFS seem unsupported.
--	grep -q "BLKDISCARD ioctl failed: Operation not supported" "$TS_OUTPUT" \
-+	grep -q "BLKDISCARD ioctl failed: Operation not supported" "$TS_ERRLOG" \
- 		&& ts_skip "BLKDISCARD not supported"
- fi
- run_tscmd $TS_CMD_BLKDISCARD -v -o 1 $DEVICE
--- 
-2.25.1
-
diff --git a/poky/meta/recipes-core/util-linux/util-linux/tests-eject.patch b/poky/meta/recipes-core/util-linux/util-linux/tests-eject.patch
deleted file mode 100644
index 51e914d..0000000
--- a/poky/meta/recipes-core/util-linux/util-linux/tests-eject.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-Upstream-Status: Submitted [https://github.com/karelzak/util-linux/pull/1375]
-Signed-off-by: Ross Burton <ross.burton@arm.com>
-
-From dd956268ba89fc1caf83c45c3c495f34d261e0e2 Mon Sep 17 00:00:00 2001
-From: Ross Burton <ross.burton@arm.com>
-Date: Thu, 1 Jul 2021 20:44:31 +0100
-Subject: [PATCH] test/eject: guard asan LD_PRELOAD with use-system-commands
- check
-
-This test tries to add asan to LD_PRELOAD because the just-built eject
-will call the host /bin/umount, and apparently asan doesn't like this.
-
-However, if ldd isn't present, this fails as the path to asan is the
-error message saying that ldd isn't present.
-
-As the asan workaround is only needed when executing the binaries that
-have just been built and not the system binaries, only use it if the
-test is on the built binaries.
-
-Closes #1373.
-
-Signed-off-by: Ross Burton <ross.burton@arm.com>
----
- tests/ts/eject/umount | 16 +++++++++-------
- 1 file changed, 9 insertions(+), 7 deletions(-)
-
-diff --git a/tests/ts/eject/umount b/tests/ts/eject/umount
-index a829d46c0..2be281ee3 100755
---- a/tests/ts/eject/umount
-+++ b/tests/ts/eject/umount
-@@ -60,13 +60,15 @@ function deinit_device {
- 	ts_scsi_debug_rmmod
- }
- 
--# As the eject binary execl()s an uninstrumented /bin/umount binary, we need
--# to explicitly $LD_PRELOAD the ASan's runtime DSO, otherwise ASan will complain.
--# Since all three utilities used by this test (eject, fdisk, mount) are just
--# libtool wrappers, let's check the kill binary instead, which should have
--# the needed DSO information.
--ASAN_RT_PATH="$(ts_get_asan_rt_path "$TS_CMD_KILL")"
--[ -n "$ASAN_RT_PATH" ] && export LD_PRELOAD="$ASAN_RT_PATH:$LD_PRELOAD"
-+if [ "$TS_USE_SYSTEM_COMMANDS" != "yes" ]; then
-+	# As the eject binary execl()s an uninstrumented /bin/umount binary, we need
-+	# to explicitly $LD_PRELOAD the ASan's runtime DSO, otherwise ASan will complain.
-+	# Since all three utilities used by this test (eject, fdisk, mount) are just
-+	# libtool wrappers, let's check the kill binary instead, which should have
-+	# the needed DSO information.
-+	ASAN_RT_PATH="$(ts_get_asan_rt_path "$TS_CMD_KILL")"
-+	[ -n "$ASAN_RT_PATH" ] && export LD_PRELOAD="$ASAN_RT_PATH:$LD_PRELOAD"
-+fi
- 
- ts_init_subtest "by-disk"
- init_device
--- 
-2.25.1
-
diff --git a/poky/meta/recipes-core/util-linux/util-linux/tests-kill.patch b/poky/meta/recipes-core/util-linux/util-linux/tests-kill.patch
deleted file mode 100644
index fa49fd4..0000000
--- a/poky/meta/recipes-core/util-linux/util-linux/tests-kill.patch
+++ /dev/null
@@ -1,88 +0,0 @@
-Don't hardcode the use of /bin/kill, as this could be kill.procps.  Instead ask
-the shell what kill binary to use, which will be the symlink in
-/usr/lib/util-linux/ptest/bin/.
-
-Upstream-Status: Backport [https://github.com/karelzak/util-linux/pull/1367]
-Signed-off-by: Ross Burton <ross.burton@arm.com>
-
-From e3f8a88cf688dffacb5f6033a8d24e2db40f75f6 Mon Sep 17 00:00:00 2001
-From: Ross Burton <ross.burton@arm.com>
-Date: Tue, 29 Jun 2021 16:34:20 +0100
-Subject: [PATCH] Don't hardcode /bin
-
----
- tests/ts/kill/all_processes  | 2 +-
- tests/ts/kill/name_to_number | 2 +-
- tests/ts/kill/options        | 2 +-
- tests/ts/kill/print_pid      | 2 +-
- tests/ts/kill/queue          | 2 +-
- 5 files changed, 5 insertions(+), 5 deletions(-)
-
-diff --git a/tests/ts/kill/all_processes b/tests/ts/kill/all_processes
-index 0b137574d..b2280777f 100755
---- a/tests/ts/kill/all_processes
-+++ b/tests/ts/kill/all_processes
-@@ -22,7 +22,7 @@ ts_skip_nonroot
- 
- # make sure we do not use shell built-in command
- if [ "$TS_USE_SYSTEM_COMMANDS" == "yes" ]; then
--	TS_CMD_KILL="/bin/kill"
-+	TS_CMD_KILL="$(which kill)"
- fi
- 
- ts_check_test_command "$TS_CMD_KILL"
-diff --git a/tests/ts/kill/name_to_number b/tests/ts/kill/name_to_number
-index 9f4881cb7..8a7f4bef0 100755
---- a/tests/ts/kill/name_to_number
-+++ b/tests/ts/kill/name_to_number
-@@ -20,7 +20,7 @@ ts_init "$*"
- 
- # make sure we do not use shell built-in command
- if [ "$TS_USE_SYSTEM_COMMANDS" == "yes" ]; then
--	TS_CMD_KILL="/bin/kill"
-+	TS_CMD_KILL="$(which kill)"
- fi
- 
- ts_check_test_command "$TS_CMD_KILL"
-diff --git a/tests/ts/kill/options b/tests/ts/kill/options
-index 2788c70a2..10653a543 100755
---- a/tests/ts/kill/options
-+++ b/tests/ts/kill/options
-@@ -20,7 +20,7 @@ ts_init "$*"
- 
- # make sure we do not use shell built-in command
- if [ "$TS_USE_SYSTEM_COMMANDS" == "yes" ]; then
--	TS_CMD_KILL="/bin/kill"
-+	TS_CMD_KILL="$(which kill)"
- fi
- 
- ts_check_test_command "$TS_CMD_KILL"
-diff --git a/tests/ts/kill/print_pid b/tests/ts/kill/print_pid
-index 6926a3714..6e2db3711 100755
---- a/tests/ts/kill/print_pid
-+++ b/tests/ts/kill/print_pid
-@@ -20,7 +20,7 @@ ts_init "$*"
- 
- # make sure we do not use shell built-in command
- if [ "$TS_USE_SYSTEM_COMMANDS" == "yes" ]; then
--	TS_CMD_KILL="/bin/kill"
-+	TS_CMD_KILL="$(which kill)"
- fi
- 
- ts_check_test_command "$TS_CMD_KILL"
-diff --git a/tests/ts/kill/queue b/tests/ts/kill/queue
-index 18f10e8c2..6c9e9efc9 100755
---- a/tests/ts/kill/queue
-+++ b/tests/ts/kill/queue
-@@ -20,7 +20,7 @@ ts_init "$*"
- 
- # make sure we do not use shell built-in command
- if [ "$TS_USE_SYSTEM_COMMANDS" == "yes" ]; then
--	TS_CMD_KILL="/bin/kill"
-+	TS_CMD_KILL="$(which kill)"
- fi
- 
- ts_check_test_command "$TS_CMD_KILL"
--- 
-2.25.1
-
diff --git a/poky/meta/recipes-core/util-linux/util-linux/tests-lscpu.patch b/poky/meta/recipes-core/util-linux/util-linux/tests-lscpu.patch
deleted file mode 100644
index 36a19bd..0000000
--- a/poky/meta/recipes-core/util-linux/util-linux/tests-lscpu.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-Upstream-Status: Backport
-Signed-off-by: Ross Burton <ross.burton@arm.com>
-
-From c2ca2837a27a3f1344904037ea691bfdbb288f02 Mon Sep 17 00:00:00 2001
-From: Karel Zak <kzak@redhat.com>
-Date: Fri, 2 Jul 2021 13:12:13 +0200
-Subject: [PATCH] lscpu: don't use DMI if executed with --sysroot
-
-Signed-off-by: Karel Zak <kzak@redhat.com>
----
- sys-utils/lscpu-arm.c | 8 +++++---
- 1 file changed, 5 insertions(+), 3 deletions(-)
-
-diff --git a/sys-utils/lscpu-arm.c b/sys-utils/lscpu-arm.c
-index d52765f9d..c7128094c 100644
---- a/sys-utils/lscpu-arm.c
-+++ b/sys-utils/lscpu-arm.c
-@@ -322,7 +322,8 @@ static void arm_decode(struct lscpu_cxt *cxt, struct lscpu_cputype *ct)
- 
- 	arm_ids_decode(ct);
- 	arm_rXpY_decode(ct);
--	if (cxt->is_cluster)
-+
-+	if (!cxt->noalive && cxt->is_cluster)
- 		ct->nr_socket_on_cluster = get_number_of_physical_sockets_from_dmi();
- }
- 
-@@ -330,8 +331,9 @@ static int is_cluster_arm(struct lscpu_cxt *cxt)
- {
- 	struct stat st;
- 
--	if (!(strcmp(cxt->arch->name, "aarch64")) &&
--	     (stat(_PATH_ACPI_PPTT, &st) < 0) && (cxt->ncputypes == 1))
-+	if (!cxt->noalive
-+	    && strcmp(cxt->arch->name, "aarch64") == 0
-+	    && stat(_PATH_ACPI_PPTT, &st) < 0 && cxt->ncputypes == 1)
- 		return 1;
- 	else
- 		return 0;
--- 
-2.25.1
-
diff --git a/poky/meta/recipes-core/util-linux/util-linux/tests-ul.patch b/poky/meta/recipes-core/util-linux/util-linux/tests-ul.patch
deleted file mode 100644
index 6896393..0000000
--- a/poky/meta/recipes-core/util-linux/util-linux/tests-ul.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-Upstream-Status: Backport
-Signed-off-by: Ross Burton <ross.burton@arm.com>
-
-From b1c71f19ea404e74d36ca5b8fbb0484043cdaef3 Mon Sep 17 00:00:00 2001
-From: Ross Burton <ross.burton@arm.com>
-Date: Wed, 30 Jun 2021 11:25:01 +0100
-Subject: [PATCH] tests: mark ul/ul as a known failure
-
-As with ul/basic, this test produces different output when ran under
-different terminals, which isn't very useful.
-
-Set TS_KNOWN_FAIL so that these problems don't cause the test to fail.
-
-Signed-off-by: Ross Burton <ross.burton@arm.com>
----
- tests/ts/ul/ul | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/tests/ts/ul/ul b/tests/ts/ul/ul
-index b856e33db..c707658ac 100755
---- a/tests/ts/ul/ul
-+++ b/tests/ts/ul/ul
-@@ -20,6 +20,9 @@ ts_init "$*"
- 
- ts_check_test_command "$TS_CMD_UL"
- 
-+# This test provides different result on some terminals and virtual machines
-+TS_KNOWN_FAIL="yes"
-+
- printf "a\x08ab\x5F\x08c\\n\\ttab\\f\\b\\r" |
- 	$TS_CMD_UL -t xterm >> $TS_OUTPUT 2>> $TS_ERRLOG
- 
--- 
-2.25.1
-
diff --git a/poky/meta/recipes-core/util-linux/util-linux_2.37.bb b/poky/meta/recipes-core/util-linux/util-linux_2.37.1.bb
similarity index 83%
rename from poky/meta/recipes-core/util-linux/util-linux_2.37.bb
rename to poky/meta/recipes-core/util-linux/util-linux_2.37.1.bb
index 2548b72..b67c3dc 100644
--- a/poky/meta/recipes-core/util-linux/util-linux_2.37.bb
+++ b/poky/meta/recipes-core/util-linux/util-linux_2.37.1.bb
@@ -10,12 +10,12 @@
 python util_linux_binpackages () {
     def pkg_hook(f, pkg, file_regex, output_pattern, modulename):
         pn = d.getVar('PN')
-        d.appendVar('RRECOMMENDS_%s' % pn, ' %s' % pkg)
+        d.appendVar('RRECOMMENDS:%s' % pn, ' %s' % pkg)
 
-        if d.getVar('ALTERNATIVE_' + pkg):
+        if d.getVar('ALTERNATIVE:' + pkg):
             return
         if d.getVarFlag('ALTERNATIVE_LINK_NAME', modulename):
-            d.setVar('ALTERNATIVE_' + pkg, modulename)
+            d.setVar('ALTERNATIVE:' + pkg, modulename)
 
     bindirs = sorted(list(set(d.expand("${base_sbindir} ${base_bindir} ${sbindir} ${bindir}").split())))
     for dir in bindirs:
@@ -41,9 +41,9 @@
 
     pn = d.getVar('PN')
     for pkg, links in extras.items():
-        of = d.getVar('FILES_' + pn + '-' + pkg)
+        of = d.getVar('FILES:' + pn + '-' + pkg)
         links = of + links
-        d.setVar('FILES_' + pn + '-' + pkg, links)
+        d.setVar('FILES:' + pn + '-' + pkg, links)
 }
 
 # we must execute before update-alternatives PACKAGE_PREPROCESS_FUNCS
@@ -63,7 +63,7 @@
 
 CACHED_CONFIGUREVARS += "scanf_cv_alloc_modifier=ms"
 UTIL_LINUX_LIBDIR = "${libdir}"
-UTIL_LINUX_LIBDIR_class-target = "${base_libdir}"
+UTIL_LINUX_LIBDIR:class-target = "${base_libdir}"
 EXTRA_OECONF = "\
     --enable-libuuid --enable-libblkid \
     \
@@ -81,17 +81,17 @@
     --libdir='${UTIL_LINUX_LIBDIR}' \
 "
 
-EXTRA_OECONF_append_class-target = " --enable-setpriv"
-EXTRA_OECONF_append_class-native = " --without-cap-ng --disable-setpriv"
-EXTRA_OECONF_append_class-nativesdk = " --without-cap-ng --disable-setpriv"
-EXTRA_OECONF_append = " --disable-hwclock-gplv3"
+EXTRA_OECONF:append:class-target = " --enable-setpriv"
+EXTRA_OECONF:append:class-native = " --without-cap-ng --disable-setpriv"
+EXTRA_OECONF:append:class-nativesdk = " --without-cap-ng --disable-setpriv"
+EXTRA_OECONF:append = " --disable-hwclock-gplv3"
 
 # enable pcre2 for native/nativesdk to match host distros
 # this helps to keep same expectations when using the SDK or
 # build host versions during development
 #
 PACKAGECONFIG ?= "pcre2"
-PACKAGECONFIG_class-target ?= "${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'chfn-chsh pam', '', d)}"
+PACKAGECONFIG:class-target ?= "${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'chfn-chsh pam', '', d)}"
 PACKAGECONFIG[pam] = "--enable-su --enable-runuser,--disable-su --disable-runuser, libpam,"
 # Respect the systemd feature for uuidd
 PACKAGECONFIG[systemd] = "--with-systemd --with-systemdsystemunitdir=${systemd_system_unitdir}, --without-systemd --without-systemdsystemunitdir,systemd"
@@ -106,43 +106,43 @@
 
 EXTRA_OEMAKE = "ARCH=${TARGET_ARCH} CPU= CPUOPT= 'OPT=${CFLAGS}'"
 
-ALLOW_EMPTY_${PN} = "1"
-FILES_${PN} = ""
-FILES_${PN}-doc += "${datadir}/getopt/getopt-*.*"
-FILES_${PN}-dev += "${PYTHON_SITEPACKAGES_DIR}/libmount/pylibmount.la"
-FILES_${PN}-mount = "${sysconfdir}/default/mountall"
-FILES_${PN}-runuser = "${sysconfdir}/pam.d/runuser*"
-FILES_${PN}-su = "${sysconfdir}/pam.d/su-l"
-CONFFILES_${PN}-su = "${sysconfdir}/pam.d/su-l"
-FILES_${PN}-pylibmount = "${PYTHON_SITEPACKAGES_DIR}/libmount/pylibmount.so \
+ALLOW_EMPTY:${PN} = "1"
+FILES:${PN} = ""
+FILES:${PN}-doc += "${datadir}/getopt/getopt-*.*"
+FILES:${PN}-dev += "${PYTHON_SITEPACKAGES_DIR}/libmount/pylibmount.la"
+FILES:${PN}-mount = "${sysconfdir}/default/mountall"
+FILES:${PN}-runuser = "${sysconfdir}/pam.d/runuser*"
+FILES:${PN}-su = "${sysconfdir}/pam.d/su-l"
+CONFFILES:${PN}-su = "${sysconfdir}/pam.d/su-l"
+FILES:${PN}-pylibmount = "${PYTHON_SITEPACKAGES_DIR}/libmount/pylibmount.so \
                           ${PYTHON_SITEPACKAGES_DIR}/libmount/__init__.* \
                           ${PYTHON_SITEPACKAGES_DIR}/libmount/__pycache__/*"
 
 # Util-linux' blkid replaces the e2fsprogs one
-RCONFLICTS_${PN}-blkid = "${MLPREFIX}e2fsprogs-blkid"
-RREPLACES_${PN}-blkid = "${MLPREFIX}e2fsprogs-blkid"
+RCONFLICTS:${PN}-blkid = "${MLPREFIX}e2fsprogs-blkid"
+RREPLACES:${PN}-blkid = "${MLPREFIX}e2fsprogs-blkid"
 
-RRECOMMENDS_${PN}_class-native = ""
-RRECOMMENDS_${PN}_class-nativesdk = ""
-RDEPENDS_${PN}_class-native = ""
-RDEPENDS_${PN}_class-nativesdk = ""
+RRECOMMENDS:${PN}:class-native = ""
+RRECOMMENDS:${PN}:class-nativesdk = ""
+RDEPENDS:${PN}:class-native = ""
+RDEPENDS:${PN}:class-nativesdk = ""
 
-RDEPENDS_${PN} += " util-linux-libuuid"
-RDEPENDS_${PN}-dev += " util-linux-libuuid-dev"
+RDEPENDS:${PN} += " util-linux-libuuid"
+RDEPENDS:${PN}-dev += " util-linux-libuuid-dev"
 
-RPROVIDES_${PN}-dev = "${PN}-libblkid-dev ${PN}-libmount-dev"
+RPROVIDES:${PN}-dev = "${PN}-libblkid-dev ${PN}-libmount-dev"
 
-RDEPENDS_${PN}-bash-completion += "${PN}-lsblk"
-RDEPENDS_${PN}-ptest += "bash bc btrfs-tools coreutils e2fsprogs findutils grep iproute2 kmod mdadm procps sed socat which xz"
-RRECOMMENDS_${PN}-ptest += "kernel-module-scsi-debug kernel-module-sd-mod kernel-module-loop"
-RDEPENDS_${PN}-swaponoff = "${PN}-swapon ${PN}-swapoff"
-ALLOW_EMPTY_${PN}-swaponoff = "1"
+RDEPENDS:${PN}-bash-completion += "${PN}-lsblk"
+RDEPENDS:${PN}-ptest += "bash bc btrfs-tools coreutils e2fsprogs findutils grep iproute2 kmod mdadm procps sed socat which xz"
+RRECOMMENDS:${PN}-ptest += "kernel-module-scsi-debug kernel-module-sd-mod kernel-module-loop"
+RDEPENDS:${PN}-swaponoff = "${PN}-swapon ${PN}-swapoff"
+ALLOW_EMPTY:${PN}-swaponoff = "1"
 
 #SYSTEMD_PACKAGES = "${PN}-uuidd ${PN}-fstrim"
-SYSTEMD_SERVICE_${PN}-uuidd = "uuidd.socket uuidd.service"
-SYSTEMD_AUTO_ENABLE_${PN}-uuidd = "disable"
-SYSTEMD_SERVICE_${PN}-fstrim = "fstrim.timer fstrim.service"
-SYSTEMD_AUTO_ENABLE_${PN}-fstrim = "disable"
+SYSTEMD_SERVICE:${PN}-uuidd = "uuidd.socket uuidd.service"
+SYSTEMD_AUTO_ENABLE:${PN}-uuidd = "disable"
+SYSTEMD_SERVICE:${PN}-fstrim = "fstrim.timer fstrim.service"
+SYSTEMD_AUTO_ENABLE:${PN}-fstrim = "disable"
 
 do_install () {
 	# with ccache the timestamps on compiled files may
@@ -181,7 +181,7 @@
 	rm -f ${D}${bindir}/chkdupexe
 }
 
-do_install_append_class-target () {
+do_install:append:class-target () {
 	if [ "${@bb.utils.filter('PACKAGECONFIG', 'pam', d)}" ]; then
 		install -d ${D}${sysconfdir}/pam.d
 		install -m 0644 ${WORKDIR}/runuser.pamd ${D}${sysconfdir}/pam.d/runuser
@@ -194,14 +194,14 @@
 }
 # nologin causes a conflict with shadow-native
 # kill causes a conflict with coreutils-native (if ${bindir}==${base_bindir})
-do_install_append_class-native () {
+do_install:append:class-native () {
 	rm -f ${D}${base_sbindir}/nologin
 	rm -f ${D}${base_bindir}/kill
 }
 
 # dm-verity support introduces a circular build dependency, so util-linux-libuuid is split out for target builds
 # Need to build libuuid for uuidgen, but then delete it and let the other recipe ship it
-do_install_append () {
+do_install:append () {
 	rm -rf ${D}${includedir}/uuid ${D}${libdir}/pkgconfig/uuid.pc ${D}${libdir}/libuuid* ${D}${base_libdir}/libuuid*
 }
 
@@ -222,14 +222,14 @@
 ALTERNATIVE_LINK_NAME[fsfreeze] = "${sbindir}/fsfreeze"
 ALTERNATIVE_LINK_NAME[fstrim] = "${base_sbindir}/fstrim"
 ALTERNATIVE_LINK_NAME[getopt] = "${base_bindir}/getopt"
-ALTERNATIVE_${PN}-agetty = "getty"
+ALTERNATIVE:${PN}-agetty = "getty"
 ALTERNATIVE_LINK_NAME[getty] = "${base_sbindir}/getty"
 ALTERNATIVE_TARGET[getty] = "${base_sbindir}/agetty"
 ALTERNATIVE_LINK_NAME[hexdump] = "${bindir}/hexdump"
 ALTERNATIVE_LINK_NAME[hwclock] = "${base_sbindir}/hwclock"
 ALTERNATIVE_LINK_NAME[ionice] = "${bindir}/ionice"
 ALTERNATIVE_LINK_NAME[kill] = "${base_bindir}/kill"
-ALTERNATIVE_${PN}-last = "last lastb"
+ALTERNATIVE:${PN}-last = "last lastb"
 ALTERNATIVE_LINK_NAME[last] = "${bindir}/last"
 ALTERNATIVE_LINK_NAME[lastb] = "${bindir}/lastb"
 ALTERNATIVE_LINK_NAME[logger] = "${bindir}/logger"
diff --git a/poky/meta/recipes-core/volatile-binds/volatile-binds.bb b/poky/meta/recipes-core/volatile-binds/volatile-binds.bb
index 3c8b182..b693c24 100644
--- a/poky/meta/recipes-core/volatile-binds/volatile-binds.bb
+++ b/poky/meta/recipes-core/volatile-binds/volatile-binds.bb
@@ -33,9 +33,9 @@
         services.append("%s.service" % what[1:].replace("/", "-"))
     return " ".join(services)
 
-SYSTEMD_SERVICE_${PN} = "${@volatile_systemd_services(d)}"
+SYSTEMD_SERVICE:${PN} = "${@volatile_systemd_services(d)}"
 
-FILES_${PN} += "${systemd_unitdir}/system/*.service ${servicedir}"
+FILES:${PN} += "${systemd_unitdir}/system/*.service ${servicedir}"
 
 do_compile () {
     while read spec mountpoint; do
@@ -68,7 +68,7 @@
     install -m 0755 mount-copybind ${D}${base_sbindir}/
 
     install -d ${D}${systemd_unitdir}/system
-    for service in ${SYSTEMD_SERVICE_${PN}}; do
+    for service in ${SYSTEMD_SERVICE:${PN}}; do
         install -m 0644 $service ${D}${systemd_unitdir}/system/
     done
 
diff --git a/poky/meta/recipes-core/zlib/zlib_1.2.11.bb b/poky/meta/recipes-core/zlib/zlib_1.2.11.bb
index ef9431a..1c06aa0 100644
--- a/poky/meta/recipes-core/zlib/zlib_1.2.11.bb
+++ b/poky/meta/recipes-core/zlib/zlib_1.2.11.bb
@@ -17,7 +17,7 @@
 
 CFLAGS += "-D_REENTRANT"
 
-RDEPENDS_${PN}-ptest += "make"
+RDEPENDS:${PN}-ptest += "make"
 
 inherit ptest
 
@@ -39,7 +39,7 @@
 
 # Move zlib shared libraries for target builds to $base_libdir so the library
 # can be used in early boot before $prefix is mounted.
-do_install_append_class-target() {
+do_install:append:class-target() {
 	if [ ${base_libdir} != ${libdir} ]
 	then
 		mkdir -p ${D}/${base_libdir}
diff --git a/poky/meta/recipes-devtools/apt/apt_2.2.4.bb b/poky/meta/recipes-devtools/apt/apt_2.2.4.bb
index f120111..29fc49f 100644
--- a/poky/meta/recipes-devtools/apt/apt_2.2.4.bb
+++ b/poky/meta/recipes-devtools/apt/apt_2.2.4.bb
@@ -16,12 +16,12 @@
            file://0001-aptwebserver.cc-Include-array.patch \
            "
 
-SRC_URI_append_class-native = " \
+SRC_URI:append:class-native = " \
            file://0001-Do-not-init-tables-from-dpkg-configuration.patch \
            file://0001-Revert-always-run-dpkg-configure-a-at-the-end-of-our.patch \
            "
 
-SRC_URI_append_class-nativesdk = " \
+SRC_URI:append:class-nativesdk = " \
            file://0001-Do-not-init-tables-from-dpkg-configuration.patch \
            file://0001-Revert-always-run-dpkg-configure-a-at-the-end-of-our.patch \
            "
@@ -37,13 +37,13 @@
 
 # User is added to allow apt to drop privs, will runtime warn without
 USERADD_PACKAGES = "${PN}"
-USERADD_PARAM_${PN} = "--system --home /nonexistent --no-create-home _apt"
+USERADD_PARAM:${PN} = "--system --home /nonexistent --no-create-home _apt"
 
 BBCLASSEXTEND = "native nativesdk"
 
 DEPENDS += "db gnutls lz4 zlib bzip2 xz libgcrypt xxhash"
 
-EXTRA_OECMAKE_append = " -DCURRENT_VENDOR=debian -DWITH_DOC=False \
+EXTRA_OECMAKE:append = " -DCURRENT_VENDOR=debian -DWITH_DOC=False \
     -DDPKG_DATADIR=${datadir}/dpkg \
     -DTRIEHASH_EXECUTABLE=${WORKDIR}/triehash \
     -DCMAKE_DISABLE_FIND_PACKAGE_ZSTD=True \
@@ -51,14 +51,14 @@
     -DWITH_TESTS=False \
 "
 
-do_configure_prepend () {
+do_configure:prepend () {
     echo "set( CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH )" >>  ${WORKDIR}/toolchain.cmake
 
 }
 
 # Unfortunately apt hardcodes this all over the place
-FILES_${PN} += "${prefix}/lib/dpkg ${prefix}/lib/apt"
-RDEPENDS_${PN} += "bash perl dpkg"
+FILES:${PN} += "${prefix}/lib/dpkg ${prefix}/lib/apt"
+RDEPENDS:${PN} += "bash perl dpkg"
 
 customize_apt_conf_sample() {
     cat > ${D}${sysconfdir}/apt/apt.conf.sample << EOF
@@ -113,23 +113,23 @@
 EOF
 }
 
-do_install_append_class-native() {
+do_install:append:class-native() {
     customize_apt_conf_sample
 }
 
-do_install_append_class-nativesdk() {
+do_install:append:class-nativesdk() {
     customize_apt_conf_sample
 }
 
 
-do_install_append_class-target() {
+do_install:append:class-target() {
     #Write the correct apt-architecture to apt.conf
     APT_CONF=${D}/etc/apt/apt.conf
     echo 'APT::Architecture "${DPKG_ARCH}";' > ${APT_CONF}
 }
 
 # Avoid non-reproducible -src package
-do_install_append () {
+do_install:append () {
         sed -i -e "s,${B},,g" \
             ${B}/apt-pkg/tagfile-keys.cc
 }
diff --git a/poky/meta/recipes-devtools/autoconf-archive/autoconf-archive_2021.02.19.bb b/poky/meta/recipes-devtools/autoconf-archive/autoconf-archive_2021.02.19.bb
index 54079b5..2f86b50 100644
--- a/poky/meta/recipes-devtools/autoconf-archive/autoconf-archive_2021.02.19.bb
+++ b/poky/meta/recipes-devtools/autoconf-archive/autoconf-archive_2021.02.19.bb
@@ -12,6 +12,6 @@
 
 PACKAGES = "${PN} ${PN}-doc"
 
-FILES_${PN} += "${datadir}/aclocal"
+FILES:${PN} += "${datadir}/aclocal"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/autoconf/autoconf_2.71.bb b/poky/meta/recipes-devtools/autoconf/autoconf_2.71.bb
index 8526067..324e6f8 100644
--- a/poky/meta/recipes-devtools/autoconf/autoconf_2.71.bb
+++ b/poky/meta/recipes-devtools/autoconf/autoconf_2.71.bb
@@ -6,7 +6,7 @@
 HOMEPAGE = "http://www.gnu.org/software/autoconf/"
 SECTION = "devel"
 DEPENDS = "m4-native autoconf-native automake-native gnu-config-native help2man-native"
-DEPENDS_remove_class-native = "autoconf-native automake-native help2man-native"
+DEPENDS:remove:class-native = "autoconf-native automake-native help2man-native"
 
 LIC_FILES_CHKSUM = "file://COPYING;md5=cc3f3a7596cb558bbd9eb7fbaa3ef16c \
 		    file://COPYINGv3;md5=1ebbd3e34237af26da5dc08a4e440464"
@@ -19,11 +19,11 @@
            file://autotest-automake-result-format.patch \
            file://man-host-perl.patch \
            "
-SRC_URI_append_class-native = " file://no-man.patch"
+SRC_URI:append:class-native = " file://no-man.patch"
 
 SRC_URI[sha256sum] = "431075ad0bf529ef13cb41e9042c542381103e80015686222b8a9d4abef42a1c"
 
-RDEPENDS_${PN} = "m4 gnu-config \
+RDEPENDS:${PN} = "m4 gnu-config \
 		  perl \
 		  perl-module-bytes \
 		  perl-module-carp \
@@ -51,13 +51,13 @@
 		  perl-module-thread-queue \
 		  perl-module-threads \
 		 "
-RDEPENDS_${PN}_class-native = "m4-native gnu-config-native hostperl-runtime-native"
+RDEPENDS:${PN}:class-native = "m4-native gnu-config-native hostperl-runtime-native"
 
 inherit autotools texinfo
 
 PERL = "${USRBINPATH}/perl"
-PERL_class-native = "/usr/bin/env perl"
-PERL_class-nativesdk = "/usr/bin/env perl"
+PERL:class-native = "/usr/bin/env perl"
+PERL:class-nativesdk = "/usr/bin/env perl"
 
 CACHED_CONFIGUREVARS += "ac_cv_path_PERL='${PERL}'"
 
@@ -70,11 +70,11 @@
 }
 do_configure[prefuncs] += "update_gnu_config"
 
-do_configure_class-native() {
+do_configure:class-native() {
 	oe_runconf
 }
 
-do_install_append() {
+do_install:append() {
     rm -rf ${D}${datadir}/emacs
 }
 
diff --git a/poky/meta/recipes-devtools/automake/automake.inc b/poky/meta/recipes-devtools/automake/automake.inc
index 87cedc9..ceca16a 100644
--- a/poky/meta/recipes-devtools/automake/automake.inc
+++ b/poky/meta/recipes-devtools/automake/automake.inc
@@ -18,4 +18,4 @@
 
 export AUTOMAKE = "${@bb.utils.which('automake', d.getVar('PATH'))}"
 
-FILES_${PN} += "${datadir}/automake* ${datadir}/aclocal*"
+FILES:${PN} += "${datadir}/automake* ${datadir}/aclocal*"
diff --git a/poky/meta/recipes-devtools/automake/automake_1.16.3.bb b/poky/meta/recipes-devtools/automake/automake_1.16.3.bb
index 7dc59d9..1882eed 100644
--- a/poky/meta/recipes-devtools/automake/automake_1.16.3.bb
+++ b/poky/meta/recipes-devtools/automake/automake_1.16.3.bb
@@ -1,11 +1,11 @@
 require automake.inc
 LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
-DEPENDS_class-native = "autoconf-native"
+DEPENDS:class-native = "autoconf-native"
 
 NAMEVER = "${@oe.utils.trim_version("${PV}", 2)}"
 
-RDEPENDS_${PN} += "\
+RDEPENDS:${PN} += "\
     autoconf \
     perl \
     perl-module-bytes \
@@ -16,7 +16,7 @@
     perl-module-threads \
     perl-module-vars "
 
-RDEPENDS_${PN}_class-native = "autoconf-native hostperl-runtime-native"
+RDEPENDS:${PN}:class-native = "autoconf-native hostperl-runtime-native"
 
 SRC_URI += "file://python-libdir.patch \
            file://buildtest.patch \
@@ -29,12 +29,12 @@
 SRC_URI[sha256sum] = "ce010788b51f64511a1e9bb2a1ec626037c6d0e7ede32c1c103611b9d3cba65f"
 
 PERL = "${USRBINPATH}/perl"
-PERL_class-native = "${USRBINPATH}/env perl"
-PERL_class-nativesdk = "${USRBINPATH}/env perl"
+PERL:class-native = "${USRBINPATH}/env perl"
+PERL:class-nativesdk = "${USRBINPATH}/env perl"
 
 CACHED_CONFIGUREVARS += "ac_cv_path_PERL='${PERL}'"
 
-do_install_append () {
+do_install:append () {
     install -d ${D}${datadir}
 }
 
diff --git a/poky/meta/recipes-devtools/binutils/binutils-2.36.inc b/poky/meta/recipes-devtools/binutils/binutils-2.37.inc
similarity index 85%
rename from poky/meta/recipes-devtools/binutils/binutils-2.36.inc
rename to poky/meta/recipes-devtools/binutils/binutils-2.37.inc
index d54e2a3..4218c0a 100644
--- a/poky/meta/recipes-devtools/binutils/binutils-2.36.inc
+++ b/poky/meta/recipes-devtools/binutils/binutils-2.37.inc
@@ -12,13 +12,13 @@
 
 # When upgrading to 2.37, please make sure there is no trailing .0, so
 # that upstream version check can work correctly.
-PV = "2.36.1"
-CVE_VERSION = "2.36.1"
-SRCBRANCH ?= "binutils-2_36-branch"
+PV = "2.37"
+CVE_VERSION = "2.37"
+SRCBRANCH ?= "binutils-2_37-branch"
 
 UPSTREAM_CHECK_GITTAGREGEX = "binutils-(?P<pver>\d+_(\d_?)*)"
 
-SRCREV ?= "7651a4871c225925ffdfda0a8c91a6ed370cd9a1"
+SRCREV ?= "87d4632d36323091e731eb07b8aa65f90293da66"
 BINUTILS_GIT_URI ?= "git://sourceware.org/git/binutils-gdb.git;branch=${SRCBRANCH};protocol=git"
 SRC_URI = "\
      ${BINUTILS_GIT_URI} \
@@ -35,8 +35,5 @@
      file://0014-Fix-rpath-in-libtool-when-sysroot-is-enabled.patch \
      file://0015-sync-with-OE-libtool-changes.patch \
      file://0016-Check-for-clang-before-checking-gcc-version.patch \
-     file://0017-Add-support-for-the-DW_FORM_strx-forms-to-the-BFD-li.patch \
-     file://0018-Add-DWARF-5-support-in-gold.patch \
-     file://CVE-2021-20197.patch \
 "
 S  = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-devtools/binutils/binutils-cross-canadian.inc b/poky/meta/recipes-devtools/binutils/binutils-cross-canadian.inc
index e98f31f..f44f466 100644
--- a/poky/meta/recipes-devtools/binutils/binutils-cross-canadian.inc
+++ b/poky/meta/recipes-devtools/binutils/binutils-cross-canadian.inc
@@ -13,7 +13,7 @@
 # e.g. we switch between different machines with different tunes.
 EXTRA_OECONF[vardepsexclude] = "TUNE_PKGARCH"
 
-LDGOLD_sdkmingw32 = ""
+LDGOLD:sdkmingw32 = ""
 
 do_install () {
 	autotools_do_install
diff --git a/poky/meta/recipes-devtools/binutils/binutils-cross-canadian_2.36.bb b/poky/meta/recipes-devtools/binutils/binutils-cross-canadian_2.37.bb
similarity index 100%
rename from poky/meta/recipes-devtools/binutils/binutils-cross-canadian_2.36.bb
rename to poky/meta/recipes-devtools/binutils/binutils-cross-canadian_2.37.bb
diff --git a/poky/meta/recipes-devtools/binutils/binutils-cross-testsuite_2.36.bb b/poky/meta/recipes-devtools/binutils/binutils-cross-testsuite_2.37.bb
similarity index 93%
rename from poky/meta/recipes-devtools/binutils/binutils-cross-testsuite_2.36.bb
rename to poky/meta/recipes-devtools/binutils/binutils-cross-testsuite_2.37.bb
index 07a8e7c..ca99e91 100644
--- a/poky/meta/recipes-devtools/binutils/binutils-cross-testsuite_2.36.bb
+++ b/poky/meta/recipes-devtools/binutils/binutils-cross-testsuite_2.37.bb
@@ -15,9 +15,6 @@
 do_configure() {
     # create config.h, oe enables initfini-array by default
     echo "#define HAVE_INITFINI_ARRAY" > ${B}/ld/config.h
-    # use the bfd_stdint.h from binutils-native, this is the same of the one
-    # generated by binutils-cross
-    cp ${RECIPE_SYSROOT_NATIVE}/usr/include/bfd_stdint.h ${B}/bfd/
 }
 
 # target depends
@@ -82,4 +79,3 @@
     done
 }
 addtask check after do_configure
-
diff --git a/poky/meta/recipes-devtools/binutils/binutils-cross_2.36.bb b/poky/meta/recipes-devtools/binutils/binutils-cross_2.37.bb
similarity index 100%
rename from poky/meta/recipes-devtools/binutils/binutils-cross_2.36.bb
rename to poky/meta/recipes-devtools/binutils/binutils-cross_2.37.bb
diff --git a/poky/meta/recipes-devtools/binutils/binutils-crosssdk_2.36.bb b/poky/meta/recipes-devtools/binutils/binutils-crosssdk_2.37.bb
similarity index 92%
rename from poky/meta/recipes-devtools/binutils/binutils-crosssdk_2.36.bb
rename to poky/meta/recipes-devtools/binutils/binutils-crosssdk_2.37.bb
index 37f4d6d..5bd036f 100644
--- a/poky/meta/recipes-devtools/binutils/binutils-crosssdk_2.36.bb
+++ b/poky/meta/recipes-devtools/binutils/binutils-crosssdk_2.37.bb
@@ -8,6 +8,6 @@
 
 SRC_URI += "file://0001-binutils-crosssdk-Generate-relocatable-SDKs.patch"
 
-do_configure_prepend () {
+do_configure:prepend () {
 	sed -i 's#/usr/local/lib /lib /usr/lib#${SDKPATHNATIVE}/lib ${SDKPATHNATIVE}/usr/lib /usr/local/lib /lib /usr/lib#' ${S}/ld/configure.tgt
 }
diff --git a/poky/meta/recipes-devtools/binutils/binutils.inc b/poky/meta/recipes-devtools/binutils/binutils.inc
index 8189196..7d5149f 100644
--- a/poky/meta/recipes-devtools/binutils/binutils.inc
+++ b/poky/meta/recipes-devtools/binutils/binutils.inc
@@ -15,7 +15,7 @@
 
 inherit autotools gettext multilib_header texinfo
 
-FILES_${PN} = " \
+FILES:${PN} = " \
 	${bindir}/${TARGET_PREFIX}* \
 	${libdir}/lib*.so.* \
 	${libdir}/bfd-plugins/lib*.so \
@@ -23,9 +23,9 @@
 	${prefix}/${TARGET_SYS}/bin/* \
         ${bindir}/embedspu"
 
-RPROVIDES_${PN} += "${PN}-symlinks"
+RPROVIDES:${PN} += "${PN}-symlinks"
 
-FILES_${PN}-dev = " \
+FILES:${PN}-dev = " \
 	${includedir} \
 	${libdir}/*.la \
 	${libdir}/libbfd.so \
@@ -37,9 +37,9 @@
 # list and reuse it.
 
 LDGOLD_ALTS ?= "ld.gold dwp"
-LDGOLD_ALTS_riscv64 = ""
-LDGOLD_ALTS_riscv32 = ""
-LDGOLD_ALTS_libc-glibc_mipsarch = ""
+LDGOLD_ALTS:riscv64 = ""
+LDGOLD_ALTS:riscv32 = ""
+LDGOLD_ALTS:libc-glibc:mipsarch = ""
 
 USE_ALTERNATIVES_FOR = " \
 	addr2line \
@@ -61,7 +61,7 @@
 	strip \
 "
 
-python do_package_prepend() {
+python do_package:prepend() {
     make_alts = d.getVar("USE_ALTERNATIVES_FOR") or ""
     prefix = d.getVar("TARGET_PREFIX")
     bindir = d.getVar("bindir")
@@ -86,12 +86,12 @@
                 ${@bb.utils.contains('DISTRO_FEATURES', 'multiarch', '--enable-64-bit-bfd', '', d)}"
 
 EXTRA_TARGETS = ""
-EXTRA_TARGETS_x86-64 = " --enable-targets=x86_64-pe,x86_64-pep "
-EXTRA_TARGETS_class-native = ""
+EXTRA_TARGETS:x86-64 = " --enable-targets=x86_64-pe,x86_64-pep "
+EXTRA_TARGETS:class-native = ""
 
-LDGOLD_class-native = ""
-LDGOLD_class-crosssdk = ""
-LDGOLD_libc-glibc_mipsarch = ""
+LDGOLD:class-native = ""
+LDGOLD:class-crosssdk = ""
+LDGOLD:libc-glibc:mipsarch = ""
 LDGOLD ?= "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', '--enable-gold=default --enable-threads', '--enable-gold --enable-ld=default --enable-threads', d)}"
 
 
@@ -170,15 +170,13 @@
 	done
 
 	oe_multilib_header bfd.h
-        # bfd_stdint.h encodes the compiler name in the header
-        sed -i ${D}${includedir}/bfd_stdint.h -e "s,${TARGET_PREFIX},,"
 }
 
 inherit update-alternatives
 
 ALTERNATIVE_PRIORITY = "100"
 
-ALTERNATIVE_${PN}_class-target = "${USE_ALTERNATIVES_FOR}"
+ALTERNATIVE:${PN}:class-target = "${USE_ALTERNATIVES_FOR}"
 
 python () {
     if bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', True, False, d) and bb.utils.contains_any('TARGET_ARCH', 'riscv32 riscv64', True, False, d):
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0001-binutils-crosssdk-Generate-relocatable-SDKs.patch b/poky/meta/recipes-devtools/binutils/binutils/0001-binutils-crosssdk-Generate-relocatable-SDKs.patch
index 49dacfe..53e30a0 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0001-binutils-crosssdk-Generate-relocatable-SDKs.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0001-binutils-crosssdk-Generate-relocatable-SDKs.patch
@@ -1,4 +1,4 @@
-From 3b278a56a0e98d50ec62735598ee5f4b1834e8b3 Mon Sep 17 00:00:00 2001
+From 257ad1ce148417e1cefe2332d8acc5c8216c2522 Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Mon, 2 Mar 2015 01:58:54 +0000
 Subject: [PATCH] binutils-crosssdk: Generate relocatable SDKs
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0002-binutils-cross-Do-not-generate-linker-script-directo.patch b/poky/meta/recipes-devtools/binutils/binutils/0002-binutils-cross-Do-not-generate-linker-script-directo.patch
index d079474..a6ca413 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0002-binutils-cross-Do-not-generate-linker-script-directo.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0002-binutils-cross-Do-not-generate-linker-script-directo.patch
@@ -1,4 +1,4 @@
-From cf4c8a97b7dc1fe36a7d5dabed417fe18b15ad6b Mon Sep 17 00:00:00 2001
+From 6e93d0328f499569db7ce6396f94f304ce340df8 Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Mon, 6 Mar 2017 23:37:05 -0800
 Subject: [PATCH] binutils-cross: Do not generate linker script directories
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0003-binutils-nativesdk-Search-for-alternative-ld.so.conf.patch b/poky/meta/recipes-devtools/binutils/binutils/0003-binutils-nativesdk-Search-for-alternative-ld.so.conf.patch
index cc37d30..3c4f706 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0003-binutils-nativesdk-Search-for-alternative-ld.so.conf.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0003-binutils-nativesdk-Search-for-alternative-ld.so.conf.patch
@@ -1,4 +1,4 @@
-From 9701cab0fdf6a0c011978ae140c4c12a962956f6 Mon Sep 17 00:00:00 2001
+From d49016d3faf684319bf3ac37450558920d70be03 Mon Sep 17 00:00:00 2001
 From: Richard Purdie <richard.purdie@linuxfoundation.org>
 Date: Wed, 19 Feb 2020 09:51:16 -0800
 Subject: [PATCH] binutils-nativesdk: Search for alternative ld.so.conf in SDK
@@ -29,7 +29,7 @@
  5 files changed, 7 insertions(+), 3 deletions(-)
 
 diff --git a/ld/Makefile.am b/ld/Makefile.am
-index 2c9a487335c..3b01357b651 100644
+index f8e99325361..fd196541f59 100644
 --- a/ld/Makefile.am
 +++ b/ld/Makefile.am
 @@ -42,7 +42,8 @@ ZLIBINC = @zlibinc@
@@ -43,10 +43,10 @@
  NO_WERROR = @NO_WERROR@
  AM_CFLAGS = $(WARN_CFLAGS) $(ELF_CLFAGS)
 diff --git a/ld/Makefile.in b/ld/Makefile.in
-index b41941c89e2..a6382bf2a45 100644
+index ef2e99e08da..cb8f5bfb70e 100644
 --- a/ld/Makefile.in
 +++ b/ld/Makefile.in
-@@ -554,7 +554,8 @@ ZLIB = @zlibdir@ -lz
+@@ -555,7 +555,8 @@ ZLIB = @zlibdir@ -lz
  ZLIBINC = @zlibinc@
  ELF_CLFAGS = -DELF_LIST_OPTIONS=@elf_list_options@ \
  	   -DELF_SHLIB_LIST_OPTIONS=@elf_shlib_list_options@ \
@@ -57,7 +57,7 @@
  AM_CFLAGS = $(WARN_CFLAGS) $(ELF_CLFAGS)
  
 diff --git a/ld/ldelf.c b/ld/ldelf.c
-index f7407ab55a7..b25781cc0c4 100644
+index 21e655bb55c..d1615003ede 100644
 --- a/ld/ldelf.c
 +++ b/ld/ldelf.c
 @@ -911,7 +911,7 @@ ldelf_check_ld_so_conf (const struct bfd_link_needed_list *l, int force,
@@ -70,7 +70,7 @@
        if (!ldelf_parse_ld_so_conf (&info, tmppath))
  	{
 diff --git a/ld/ldmain.c b/ld/ldmain.c
-index 863df0293ea..080b1c4c6c2 100644
+index 42660eb9a3c..5a4a4d5da3d 100644
 --- a/ld/ldmain.c
 +++ b/ld/ldmain.c
 @@ -70,6 +70,7 @@ char *program_name;
@@ -82,7 +82,7 @@
  /* The canonical representation of ld_sysroot.  */
  char *ld_canon_sysroot;
 diff --git a/ld/ldmain.h b/ld/ldmain.h
-index 38e63922d31..0966914938c 100644
+index 39d08a6c378..4c3519e7970 100644
 --- a/ld/ldmain.h
 +++ b/ld/ldmain.h
 @@ -23,6 +23,7 @@
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0004-configure-widen-the-regexp-for-SH-architectures.patch b/poky/meta/recipes-devtools/binutils/binutils/0004-configure-widen-the-regexp-for-SH-architectures.patch
index 1cd459a..f476ff2 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0004-configure-widen-the-regexp-for-SH-architectures.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0004-configure-widen-the-regexp-for-SH-architectures.patch
@@ -1,4 +1,4 @@
-From 7e7512c82402363688cca6f1febea2c01cb03409 Mon Sep 17 00:00:00 2001
+From b8d43b6b8d98e176346871c92935458b06598c5b Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Mon, 2 Mar 2015 01:07:33 +0000
 Subject: [PATCH] configure: widen the regexp for SH architectures
@@ -14,10 +14,10 @@
  2 files changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/configure b/configure
-index 68779feb42b..7b369071141 100755
+index 3dd206525a7..e8ba1a1d3de 100755
 --- a/configure
 +++ b/configure
-@@ -3887,7 +3887,7 @@ case "${target}" in
+@@ -3892,7 +3892,7 @@ case "${target}" in
    nvptx*-*-*)
      noconfigdirs="$noconfigdirs target-libssp target-libstdc++-v3 target-libobjc"
      ;;
@@ -27,10 +27,10 @@
        sh*-*-elf)
           ;;
 diff --git a/configure.ac b/configure.ac
-index d16a2757689..92f01fb3ed7 100644
+index 797a624621e..3a8a3ae1f3b 100644
 --- a/configure.ac
 +++ b/configure.ac
-@@ -1177,7 +1177,7 @@ case "${target}" in
+@@ -1175,7 +1175,7 @@ case "${target}" in
    nvptx*-*-*)
      noconfigdirs="$noconfigdirs target-libssp target-libstdc++-v3 target-libobjc"
      ;;
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0005-Point-scripts-location-to-libdir.patch b/poky/meta/recipes-devtools/binutils/binutils/0005-Point-scripts-location-to-libdir.patch
index dde0cb5..7cd4a99 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0005-Point-scripts-location-to-libdir.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0005-Point-scripts-location-to-libdir.patch
@@ -1,4 +1,4 @@
-From 6a67d277941228d997b527990960413f8444fb81 Mon Sep 17 00:00:00 2001
+From 1a9fcaae50e63b993019bd4dc00219e43421efdc Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Mon, 2 Mar 2015 01:09:58 +0000
 Subject: [PATCH] Point scripts location to libdir
@@ -12,7 +12,7 @@
  2 files changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/ld/Makefile.am b/ld/Makefile.am
-index 3b01357b651..b7a1f7491b0 100644
+index fd196541f59..d94fa7e64e1 100644
 --- a/ld/Makefile.am
 +++ b/ld/Makefile.am
 @@ -51,7 +51,7 @@ AM_CFLAGS = $(WARN_CFLAGS) $(ELF_CLFAGS)
@@ -25,10 +25,10 @@
  EMUL = @EMUL@
  EMULATION_OFILES = @EMULATION_OFILES@
 diff --git a/ld/Makefile.in b/ld/Makefile.in
-index a6382bf2a45..5ee3a4971be 100644
+index cb8f5bfb70e..9a58879c5ca 100644
 --- a/ld/Makefile.in
 +++ b/ld/Makefile.in
-@@ -562,7 +562,7 @@ AM_CFLAGS = $(WARN_CFLAGS) $(ELF_CLFAGS)
+@@ -563,7 +563,7 @@ AM_CFLAGS = $(WARN_CFLAGS) $(ELF_CLFAGS)
  # We put the scripts in the directory $(scriptdir)/ldscripts.
  # We can't put the scripts in $(datadir) because the SEARCH_DIR
  # directives need to be different for native and cross linkers.
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0006-Only-generate-an-RPATH-entry-if-LD_RUN_PATH-is-not-e.patch b/poky/meta/recipes-devtools/binutils/binutils/0006-Only-generate-an-RPATH-entry-if-LD_RUN_PATH-is-not-e.patch
index caa5f0b..d6b04fd 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0006-Only-generate-an-RPATH-entry-if-LD_RUN_PATH-is-not-e.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0006-Only-generate-an-RPATH-entry-if-LD_RUN_PATH-is-not-e.patch
@@ -1,4 +1,4 @@
-From 8ad249270414a23a3e65c74fd67a8e4adaebec78 Mon Sep 17 00:00:00 2001
+From 29517900352336708495d41902b5b7e8cc9a401a Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Mon, 2 Mar 2015 01:27:17 +0000
 Subject: [PATCH] Only generate an RPATH entry if LD_RUN_PATH is not empty
@@ -14,10 +14,10 @@
  1 file changed, 4 insertions(+)
 
 diff --git a/ld/ldelf.c b/ld/ldelf.c
-index b25781cc0c4..77d7fb8ff03 100644
+index d1615003ede..6a894285b11 100644
 --- a/ld/ldelf.c
 +++ b/ld/ldelf.c
-@@ -1248,6 +1248,8 @@ ldelf_after_open (int use_libpath, int native, int is_linux, int is_freebsd,
+@@ -1250,6 +1250,8 @@ ldelf_after_open (int use_libpath, int native, int is_linux, int is_freebsd,
  		  && command_line.rpath == NULL)
  		{
  		  path = (const char *) getenv ("LD_RUN_PATH");
@@ -26,7 +26,7 @@
  		  if (path
  		      && ldelf_search_needed (path, &n, force,
  					      is_linux, elfsize))
-@@ -1608,6 +1610,8 @@ ldelf_before_allocation (char *audit, char *depaudit,
+@@ -1610,6 +1612,8 @@ ldelf_before_allocation (char *audit, char *depaudit,
    rpath = command_line.rpath;
    if (rpath == NULL)
      rpath = (const char *) getenv ("LD_RUN_PATH");
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0007-don-t-let-the-distro-compiler-point-to-the-wrong-ins.patch b/poky/meta/recipes-devtools/binutils/binutils/0007-don-t-let-the-distro-compiler-point-to-the-wrong-ins.patch
index b13a35e..39cef70 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0007-don-t-let-the-distro-compiler-point-to-the-wrong-ins.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0007-don-t-let-the-distro-compiler-point-to-the-wrong-ins.patch
@@ -1,4 +1,4 @@
-From 091870218f192a5698c4420adf938e7178553c07 Mon Sep 17 00:00:00 2001
+From 37581c8ce9d98a1183706e12a2c9a73f7f40462d Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Mon, 2 Mar 2015 01:39:01 +0000
 Subject: [PATCH] don't let the distro compiler point to the wrong installation
@@ -17,7 +17,7 @@
  1 file changed, 2 insertions(+), 1 deletion(-)
 
 diff --git a/libiberty/Makefile.in b/libiberty/Makefile.in
-index 788590957e1..1bca4aafeb7 100644
+index 4f1213b983b..2ba18b75cac 100644
 --- a/libiberty/Makefile.in
 +++ b/libiberty/Makefile.in
 @@ -367,7 +367,8 @@ install-strip: install
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0008-warn-for-uses-of-system-directories-when-cross-linki.patch b/poky/meta/recipes-devtools/binutils/binutils/0008-warn-for-uses-of-system-directories-when-cross-linki.patch
index 5c148ea..c724dfd 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0008-warn-for-uses-of-system-directories-when-cross-linki.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0008-warn-for-uses-of-system-directories-when-cross-linki.patch
@@ -1,4 +1,4 @@
-From bb48edf1a87bbc711e8978dd1e9112fe953dc1bf Mon Sep 17 00:00:00 2001
+From 99e1565b9d2b929d4ee4e9da6f63766b22b23fc3 Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Fri, 15 Jan 2016 06:31:09 +0000
 Subject: [PATCH] warn for uses of system directories when cross linking
@@ -62,11 +62,9 @@
  ld/lexsup.c     | 16 ++++++++++++++++
  9 files changed, 86 insertions(+)
 
-diff --git a/ld/config.in b/ld/config.in
-index 7b60d778587..37b8e9b6f6c 100644
 --- a/ld/config.in
 +++ b/ld/config.in
-@@ -40,6 +40,9 @@
+@@ -43,6 +43,9 @@
     language is requested. */
  #undef ENABLE_NLS
  
@@ -76,11 +74,9 @@
  /* Additional extension a shared object might have. */
  #undef EXTRA_SHLIB_EXTENSION
  
-diff --git a/ld/configure b/ld/configure
-index b0969791959..50bb04ce6a8 100755
 --- a/ld/configure
 +++ b/ld/configure
-@@ -828,6 +828,7 @@ with_lib_path
+@@ -829,6 +829,7 @@ with_lib_path
  enable_targets
  enable_64_bit_bfd
  with_sysroot
@@ -88,8 +84,8 @@
  enable_gold
  enable_got
  enable_compressed_debug_sections
-@@ -1496,6 +1497,8 @@ Optional Features:
-   --disable-largefile     omit support for large files
+@@ -1498,6 +1499,8 @@ Optional Features:
+   --enable-checking       enable run-time checks
    --enable-targets        alternative target configurations
    --enable-64-bit-bfd     64-bit support (on hosts with narrower word sizes)
 +  --enable-poison-system-directories
@@ -97,7 +93,7 @@
    --enable-gold[=ARG]     build gold [ARG={default,yes,no}]
    --enable-got=<type>     GOT handling scheme (target, single, negative,
                            multigot)
-@@ -15820,6 +15823,19 @@ fi
+@@ -15215,6 +15218,19 @@ fi
  
  
  
@@ -117,11 +113,9 @@
  # Check whether --enable-gold was given.
  if test "${enable_gold+set}" = set; then :
    enableval=$enable_gold; case "${enableval}" in
-diff --git a/ld/configure.ac b/ld/configure.ac
-index c9c69ab9245..59dab0a6ac4 100644
 --- a/ld/configure.ac
 +++ b/ld/configure.ac
-@@ -94,6 +94,16 @@ AC_SUBST(use_sysroot)
+@@ -106,6 +106,16 @@ AC_SUBST(use_sysroot)
  AC_SUBST(TARGET_SYSTEM_ROOT)
  AC_SUBST(TARGET_SYSTEM_ROOT_DEFINE)
  
@@ -138,30 +132,26 @@
  dnl Use --enable-gold to decide if this linker should be the default.
  dnl "install_as_default" is set to false if gold is the default linker.
  dnl "installed_linker" is the installed BFD linker name.
-diff --git a/ld/ld.h b/ld/ld.h
-index 93f5af92c7d..ff7f71a7b66 100644
 --- a/ld/ld.h
 +++ b/ld/ld.h
-@@ -166,6 +166,14 @@ typedef struct
+@@ -162,6 +162,14 @@ typedef struct
       in the linker script.  */
-   bfd_boolean force_group_allocation;
+   bool force_group_allocation;
  
 +  /* If TRUE (the default) warn for uses of system directories when
 +     cross linking.  */
-+  bfd_boolean poison_system_directories;
++  bool poison_system_directories;
 +
 +  /* If TRUE (default FALSE) give an error for uses of system
 +     directories when cross linking instead of a warning.  */
-+  bfd_boolean error_poison_system_directories;
++  bool error_poison_system_directories;
 +
    /* Big or little endian as set on command line.  */
    enum endian_enum endian;
  
-diff --git a/ld/ld.texi b/ld/ld.texi
-index 7a602b9c6ab..cccbfbab3bb 100644
 --- a/ld/ld.texi
 +++ b/ld/ld.texi
-@@ -2810,6 +2810,18 @@ string identifying the original linked file does not change.
+@@ -2863,6 +2863,18 @@ string identifying the original linked f
  
  Passing @code{none} for @var{style} disables the setting from any
  @code{--build-id} options earlier on the command line.
@@ -180,11 +170,9 @@
  @end table
  
  @c man end
-diff --git a/ld/ldfile.c b/ld/ldfile.c
-index 81cb86d51e2..cd5c2752679 100644
 --- a/ld/ldfile.c
 +++ b/ld/ldfile.c
-@@ -117,6 +117,23 @@ ldfile_add_library_path (const char *name, bfd_boolean cmdline)
+@@ -117,6 +117,23 @@ ldfile_add_library_path (const char *nam
      new_dirs->name = concat (ld_sysroot, name + strlen ("$SYSROOT"), (const char *) NULL);
    else
      new_dirs->name = xstrdup (name);
@@ -208,11 +196,9 @@
  }
  
  /* Try to open a BFD for a lang_input_statement.  */
-diff --git a/ld/ldlex.h b/ld/ldlex.h
-index b0101028321..77f5accb5d9 100644
 --- a/ld/ldlex.h
 +++ b/ld/ldlex.h
-@@ -161,6 +161,8 @@ enum option_values
+@@ -163,6 +163,8 @@ enum option_values
    OPTION_CTF_VARIABLES,
    OPTION_NO_CTF_VARIABLES,
    OPTION_CTF_SHARE_TYPES,
@@ -221,24 +207,38 @@
  };
  
  /* The initial parser states.  */
-diff --git a/ld/ldmain.c b/ld/ldmain.c
-index 080b1c4c6c2..78d8a2df278 100644
 --- a/ld/ldmain.c
 +++ b/ld/ldmain.c
-@@ -324,6 +324,8 @@ main (int argc, char **argv)
-   command_line.warn_mismatch = TRUE;
-   command_line.warn_search_mismatch = TRUE;
+@@ -321,6 +321,8 @@ main (int argc, char **argv)
+   command_line.warn_mismatch = true;
+   command_line.warn_search_mismatch = true;
    command_line.check_section_addresses = -1;
-+  command_line.poison_system_directories = TRUE;
-+  command_line.error_poison_system_directories = FALSE;
++  command_line.poison_system_directories = true;
++  command_line.error_poison_system_directories = false;
  
    /* We initialize DEMANGLING based on the environment variable
       COLLECT_NO_DEMANGLE.  The gcc collect2 program will demangle the
-diff --git a/ld/lexsup.c b/ld/lexsup.c
-index f005a58a045..5eb8439fef7 100644
+@@ -1444,7 +1446,7 @@ undefined_symbol (struct bfd_link_info *
+       argv[1] = "undefined-symbol";
+       argv[2] = (char *) name;
+       argv[3] = NULL;
+-      
++
+       if (verbose)
+ 	einfo (_("%P: About to run error handling script '%s' with arguments: '%s' '%s'\n"),
+ 	       argv[0], argv[1], argv[2]);
+@@ -1465,7 +1467,7 @@ undefined_symbol (struct bfd_link_info *
+ 	 carry on to issue the normal error message.  */
+     }
+ #endif /* SUPPORT_ERROR_HANDLING_SCRIPT */
+-  
++
+   if (section != NULL)
+     {
+       if (error_count < MAX_ERRORS_IN_A_ROW)
 --- a/ld/lexsup.c
 +++ b/ld/lexsup.c
-@@ -591,6 +591,14 @@ static const struct ld_option ld_options[] =
+@@ -595,6 +595,14 @@ static const struct ld_option ld_options
  		   "                                <method> is: share-unconflicted (default),\n"
  		   "                                             share-duplicated"),
      TWO_DASHES },
@@ -253,16 +253,16 @@
  };
  
  #define OPTION_COUNT ARRAY_SIZE (ld_options)
-@@ -1676,6 +1684,14 @@ parse_args (unsigned argc, char **argv)
- 	  config.print_map_discarded = TRUE;
+@@ -1686,6 +1694,14 @@ parse_args (unsigned argc, char **argv)
+ 	  config.print_map_discarded = true;
  	  break;
  
 +	case OPTION_NO_POISON_SYSTEM_DIRECTORIES:
-+	  command_line.poison_system_directories = FALSE;
++	  command_line.poison_system_directories = false;
 +	  break;
 +
 +	case OPTION_ERROR_POISON_SYSTEM_DIRECTORIES:
-+	  command_line.error_poison_system_directories = TRUE;
++	  command_line.error_poison_system_directories = true;
 +	  break;
 +
  	case OPTION_DEPENDENCY_FILE:
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0009-Change-default-emulation-for-mips64-linux.patch b/poky/meta/recipes-devtools/binutils/binutils/0009-Change-default-emulation-for-mips64-linux.patch
index b8a1939..fab92d5 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0009-Change-default-emulation-for-mips64-linux.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0009-Change-default-emulation-for-mips64-linux.patch
@@ -1,4 +1,4 @@
-From 5bd94030de598d3a13091dafaed3b956e0ab708f Mon Sep 17 00:00:00 2001
+From fb6d52dda9c230baf869ed5f981581a7b5094b70 Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Mon, 2 Mar 2015 01:44:14 +0000
 Subject: [PATCH] Change default emulation for mips64*-*-linux
@@ -14,10 +14,10 @@
  2 files changed, 8 insertions(+), 8 deletions(-)
 
 diff --git a/bfd/config.bfd b/bfd/config.bfd
-index e7b55b0dd78..2caf492e172 100644
+index 30087e3b8f8..1896e11790c 100644
 --- a/bfd/config.bfd
 +++ b/bfd/config.bfd
-@@ -896,12 +896,12 @@ case "${targ}" in
+@@ -891,12 +891,12 @@ case "${targ}" in
      targ_selvecs="mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec mips_ecoff_be_vec mips_ecoff_le_vec"
      ;;
    mips64*el-*-linux*)
@@ -35,10 +35,10 @@
    mips*el-*-linux*)
      targ_defvec=mips_elf32_trad_le_vec
 diff --git a/ld/configure.tgt b/ld/configure.tgt
-index 0c780b24d57..47431770a17 100644
+index 6205d7c9872..c08533658e5 100644
 --- a/ld/configure.tgt
 +++ b/ld/configure.tgt
-@@ -531,12 +531,12 @@ mips*-*-vxworks*)	targ_emul=elf32ebmipvxworks
+@@ -530,12 +530,12 @@ mips*-*-vxworks*)	targ_emul=elf32ebmipvxworks
  			;;
  mips*-*-windiss)	targ_emul=elf32mipswindiss
  			;;
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0010-Add-support-for-Netlogic-XLP.patch b/poky/meta/recipes-devtools/binutils/binutils/0010-Add-support-for-Netlogic-XLP.patch
index fe2d02f..b2f7448 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0010-Add-support-for-Netlogic-XLP.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0010-Add-support-for-Netlogic-XLP.patch
@@ -1,4 +1,4 @@
-From c64a5ca02a55b748311032e2c7d9c4f87bd74c63 Mon Sep 17 00:00:00 2001
+From 21920b7a3d10a7dae4c1f18a4bb185de78048e3f Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Sun, 14 Feb 2016 17:06:19 +0000
 Subject: [PATCH] Add support for Netlogic XLP
@@ -28,14 +28,14 @@
  gas/configure         |  3 +++
  gas/configure.ac      |  3 +++
  include/elf/mips.h    |  1 +
- include/opcode/mips.h |  6 ++++++
+ include/opcode/mips.h |  8 +++++++-
  ld/configure.tgt      |  3 +++
  opcodes/mips-dis.c    | 12 +++++-------
  opcodes/mips-opc.c    | 31 ++++++++++++++++++++-----------
- 15 files changed, 65 insertions(+), 21 deletions(-)
+ 15 files changed, 66 insertions(+), 22 deletions(-)
 
 diff --git a/bfd/aoutx.h b/bfd/aoutx.h
-index 8025b8c5241..cdcb7876896 100644
+index 17560bd8f54..10b1cad74e6 100644
 --- a/bfd/aoutx.h
 +++ b/bfd/aoutx.h
 @@ -810,6 +810,7 @@ NAME (aout, machine_type) (enum bfd_architecture arch,
@@ -47,7 +47,7 @@
  	  arch_flags = M_MIPS2;
  	  break;
 diff --git a/bfd/archures.c b/bfd/archures.c
-index 8c1d32ca930..b4b2927ebc0 100644
+index 390691bfba1..b0b7a5fa7a0 100644
 --- a/bfd/archures.c
 +++ b/bfd/archures.c
 @@ -185,6 +185,7 @@ DESCRIPTION
@@ -59,10 +59,10 @@
  .#define bfd_mach_mipsisa32r2		33
  .#define bfd_mach_mipsisa32r3		34
 diff --git a/bfd/bfd-in2.h b/bfd/bfd-in2.h
-index 7eff85b7eaa..6c9eb12865e 100644
+index 57b3c453649..a00b0d44359 100644
 --- a/bfd/bfd-in2.h
 +++ b/bfd/bfd-in2.h
-@@ -1590,6 +1590,7 @@ enum bfd_architecture
+@@ -1562,6 +1562,7 @@ enum bfd_architecture
  #define bfd_mach_mips_octeon3          6503
  #define bfd_mach_mips_xlr              887682   /* decimal 'XLR'.  */
  #define bfd_mach_mips_interaptiv_mr2   736550   /* decimal 'IA2'.  */
@@ -71,10 +71,10 @@
  #define bfd_mach_mipsisa32r2           33
  #define bfd_mach_mipsisa32r3           34
 diff --git a/bfd/config.bfd b/bfd/config.bfd
-index 2caf492e172..e75417da4d8 100644
+index 1896e11790c..8270fd2708d 100644
 --- a/bfd/config.bfd
 +++ b/bfd/config.bfd
-@@ -879,6 +879,11 @@ case "${targ}" in
+@@ -874,6 +874,11 @@ case "${targ}" in
      targ_defvec=mips_elf32_le_vec
      targ_selvecs="mips_elf32_be_vec mips_elf64_be_vec mips_elf64_le_vec"
      ;;
@@ -87,7 +87,7 @@
      targ_defvec=mips_elf32_be_vec
      targ_selvecs="mips_elf32_le_vec mips_elf64_be_vec mips_elf64_le_vec"
 diff --git a/bfd/cpu-mips.c b/bfd/cpu-mips.c
-index 5a944ceee81..c57d12ba3dd 100644
+index 76b507e3c77..c1563cf4319 100644
 --- a/bfd/cpu-mips.c
 +++ b/bfd/cpu-mips.c
 @@ -108,7 +108,8 @@ enum
@@ -101,17 +101,17 @@
  
  #define NN(index) (&arch_info_struct[(index) + 1])
 @@ -163,7 +164,8 @@ static const bfd_arch_info_type arch_info_struct[] =
-   N (64, 64, bfd_mach_mips_xlr, "mips:xlr",	   FALSE, NN(I_xlr)),
-   N (32, 32, bfd_mach_mips_interaptiv_mr2, "mips:interaptiv-mr2", FALSE,
+   N (64, 64, bfd_mach_mips_xlr, "mips:xlr",	   false, NN(I_xlr)),
+   N (32, 32, bfd_mach_mips_interaptiv_mr2, "mips:interaptiv-mr2", false,
       NN(I_interaptiv_mr2)),
--  N (64, 64, bfd_mach_mips_micromips, "mips:micromips", FALSE, NULL)
-+  N (64, 64, bfd_mach_mips_micromips, "mips:micromips", FALSE, NN(I_micromips)),
-+  N (64, 64, bfd_mach_mips_xlp, "mips:xlp", FALSE, NULL)
+-  N (64, 64, bfd_mach_mips_micromips, "mips:micromips", false, NULL)
++  N (64, 64, bfd_mach_mips_micromips, "mips:micromips", false, NN(I_micromips)),
++  N (64, 64, bfd_mach_mips_xlp, "mips:xlp", false, NULL)
  };
  
  /* The default architecture is mips:3000, but with a machine number of
 diff --git a/bfd/elfxx-mips.c b/bfd/elfxx-mips.c
-index 3cbb3cf9495..0c6cd47b40c 100644
+index e4827fd17de..fa8c2512837 100644
 --- a/bfd/elfxx-mips.c
 +++ b/bfd/elfxx-mips.c
 @@ -6980,6 +6980,9 @@ _bfd_elf_mips_mach (flagword flags)
@@ -124,7 +124,7 @@
      default:
        switch (flags & EF_MIPS_ARCH)
  	{
-@@ -12335,6 +12338,10 @@ mips_set_isa_flags (bfd *abfd)
+@@ -12339,6 +12342,10 @@ mips_set_isa_flags (bfd *abfd)
        val = E_MIPS_ARCH_64R2 | E_MIPS_MACH_OCTEON2;
        break;
  
@@ -135,7 +135,7 @@
      case bfd_mach_mipsisa32:
        val = E_MIPS_ARCH_32;
        break;
-@@ -14352,6 +14359,7 @@ static const struct mips_mach_extension mips_mach_extensions[] =
+@@ -14428,6 +14435,7 @@ static const struct mips_mach_extension mips_mach_extensions[] =
    { bfd_mach_mips_gs264e, bfd_mach_mips_gs464e },
    { bfd_mach_mips_gs464e, bfd_mach_mips_gs464 },
    { bfd_mach_mips_gs464, bfd_mach_mipsisa64r2 },
@@ -144,10 +144,10 @@
    /* MIPS64 extensions.  */
    { bfd_mach_mipsisa64r2, bfd_mach_mipsisa64 },
 diff --git a/binutils/readelf.c b/binutils/readelf.c
-index ad16b4571c9..4bf2b732502 100644
+index a6073f7ec80..2f2448b5eba 100644
 --- a/binutils/readelf.c
 +++ b/binutils/readelf.c
-@@ -3502,6 +3502,7 @@ get_machine_flags (Filedata * filedata, unsigned e_flags, unsigned e_machine)
+@@ -3613,6 +3613,7 @@ get_machine_flags (Filedata * filedata, unsigned e_flags, unsigned e_machine)
  	    case E_MIPS_MACH_OCTEON3: strcat (buf, ", octeon3"); break;
  	    case E_MIPS_MACH_XLR:  strcat (buf, ", xlr"); break;
  	    case E_MIPS_MACH_IAMR2:  strcat (buf, ", interaptiv-mr2"); break;
@@ -156,10 +156,10 @@
  	    /* We simply ignore the field in this case to avoid confusion:
  	       MIPS ELF does not specify EF_MIPS_MACH, it is a GNU
 diff --git a/gas/config/tc-mips.c b/gas/config/tc-mips.c
-index 538b69710f5..b021b64f14b 100644
+index 0201f816814..a3cfcdbe982 100644
 --- a/gas/config/tc-mips.c
 +++ b/gas/config/tc-mips.c
-@@ -568,6 +568,7 @@ static int mips_32bitmode = 0;
+@@ -570,6 +570,7 @@ static int mips_32bitmode = 0;
     || mips_opts.arch == CPU_RM7000                    \
     || mips_opts.arch == CPU_VR5500                    \
     || mips_opts.micromips                             \
@@ -167,7 +167,7 @@
     )
  
  /* Whether the processor uses hardware interlocks to protect reads
-@@ -597,6 +598,7 @@ static int mips_32bitmode = 0;
+@@ -599,6 +600,7 @@ static int mips_32bitmode = 0;
      && mips_opts.isa != ISA_MIPS3)                    \
     || mips_opts.arch == CPU_R4300                     \
     || mips_opts.micromips                             \
@@ -175,7 +175,7 @@
     )
  
  /* Whether the processor uses hardware interlocks to protect reads
-@@ -20156,7 +20158,7 @@ static const struct mips_cpu_info mips_cpu_info_table[] =
+@@ -20157,7 +20159,7 @@ static const struct mips_cpu_info mips_cpu_info_table[] =
    /* Broadcom XLP.
       XLP is mostly like XLR, with the prominent exception that it is
       MIPS64R2 rather than MIPS64.  */
@@ -185,10 +185,10 @@
    /* MIPS 64 Release 6.  */
    { "i6400",	      0, ASE_VIRT | ASE_MSA,	ISA_MIPS64R6, CPU_MIPS64R6},
 diff --git a/gas/configure b/gas/configure
-index d03432c6dc6..d5ae54925e9 100755
+index 110d707f079..789d1b38b33 100755
 --- a/gas/configure
 +++ b/gas/configure
-@@ -12761,6 +12761,9 @@ _ACEOF
+@@ -12083,6 +12083,9 @@ _ACEOF
  	  mipsisa64r6 | mipsisa64r6el)
  	    mips_cpu=mips64r6
  	    ;;
@@ -199,10 +199,10 @@
  	    mips_cpu=r3900
  	    ;;
 diff --git a/gas/configure.ac b/gas/configure.ac
-index 82706561886..f1c27bf2878 100644
+index 78efba88e23..c1b4ef6b3b0 100644
 --- a/gas/configure.ac
 +++ b/gas/configure.ac
-@@ -332,6 +332,9 @@ changequote([,])dnl
+@@ -331,6 +331,9 @@ changequote([,])dnl
  	  mipsisa64r6 | mipsisa64r6el)
  	    mips_cpu=mips64r6
  	    ;;
@@ -225,10 +225,19 @@
  #define E_MIPS_MACH_OCTEON3	0x008e0000
  #define E_MIPS_MACH_5400	0x00910000
 diff --git a/include/opcode/mips.h b/include/opcode/mips.h
-index d1b4a2574ac..879c68fcfd4 100644
+index 9add3c9d5bf..a99c53f652f 100644
 --- a/include/opcode/mips.h
 +++ b/include/opcode/mips.h
-@@ -1260,6 +1260,8 @@ static const unsigned int mips_isa_table[] = {
+@@ -1157,7 +1157,7 @@ mips_opcode_32bit_p (const struct mips_opcode *mo)
+ #define INSN_ISA32R3              8
+ #define INSN_ISA32R5              9
+ #define INSN_ISA32R6              10
+-#define INSN_ISA64                11 
++#define INSN_ISA64                11
+ #define INSN_ISA64R2              12
+ #define INSN_ISA64R3              13
+ #define INSN_ISA64R5              14
+@@ -1265,6 +1265,8 @@ static const unsigned int mips_isa_table[] = {
  #define INSN_XLR                 0x00000020
  /* Imagination interAptiv MR2.  */
  #define INSN_INTERAPTIV_MR2	  0x04000000
@@ -237,7 +246,7 @@
  
  /* DSP ASE */
  #define ASE_DSP			0x00000001
-@@ -1384,6 +1386,7 @@ static const unsigned int mips_isa_table[] = {
+@@ -1389,6 +1391,7 @@ static const unsigned int mips_isa_table[] = {
  #define CPU_OCTEON3	6503
  #define CPU_XLR     	887682   	/* decimal 'XLR'   */
  #define CPU_INTERAPTIV_MR2 736550	/* decimal 'IA2'  */
@@ -245,21 +254,21 @@
  
  /* Return true if the given CPU is included in INSN_* mask MASK.  */
  
-@@ -1461,6 +1464,9 @@ cpu_is_member (int cpu, unsigned int mask)
-       return ((mask & INSN_ISA_MASK) == INSN_ISA32R6)
- 	     || ((mask & INSN_ISA_MASK) == INSN_ISA64R6);
+@@ -1459,6 +1462,9 @@ cpu_is_member (int cpu, unsigned int mask)
+     case CPU_INTERAPTIV_MR2:
+       return (mask & INSN_INTERAPTIV_MR2) != 0;
  
 +    case CPU_XLP:
 +      return (mask & INSN_XLP) != 0;
 +
      default:
-       return FALSE;
+       return false;
      }
 diff --git a/ld/configure.tgt b/ld/configure.tgt
-index 47431770a17..f714744eab3 100644
+index c08533658e5..7abf32215c2 100644
 --- a/ld/configure.tgt
 +++ b/ld/configure.tgt
-@@ -510,6 +510,9 @@ mips*-sde-elf* | mips*-mti-elf* | mips*-img-elf*)
+@@ -509,6 +509,9 @@ mips*-sde-elf* | mips*-mti-elf* | mips*-img-elf*)
  			targ_emul=elf32btsmip
  			targ_extra_emuls="elf32ltsmip elf32btsmipn32 elf64btsmip elf32ltsmipn32 elf64ltsmip"
  			;;
@@ -270,10 +279,10 @@
  			targ_extra_emuls="elf32lr5900"
  			targ_extra_libpath=$targ_extra_emuls
 diff --git a/opcodes/mips-dis.c b/opcodes/mips-dis.c
-index 317ced51204..6869f890656 100644
+index 591caf11e28..00120afed47 100644
 --- a/opcodes/mips-dis.c
 +++ b/opcodes/mips-dis.c
-@@ -674,13 +674,11 @@ const struct mips_arch_choice mips_arch_choices[] =
+@@ -698,13 +698,11 @@ const struct mips_arch_choice mips_arch_choices[] =
      mips_cp0sel_names_xlr, ARRAY_SIZE (mips_cp0sel_names_xlr),
      mips_cp1_names_mips3264, mips_hwr_names_numeric },
  
@@ -293,10 +302,10 @@
    /* This entry, mips16, is here only for ISA/processor selection; do
       not print its name.  */
 diff --git a/opcodes/mips-opc.c b/opcodes/mips-opc.c
-index b45eb40bf69..2f4eb5c0354 100644
+index db72c039bfd..ff2fa614de1 100644
 --- a/opcodes/mips-opc.c
 +++ b/opcodes/mips-opc.c
-@@ -328,6 +328,7 @@ decode_mips_operand (const char *p)
+@@ -329,6 +329,7 @@ decode_mips_operand (const char *p)
  #define IOCT3	INSN_OCTEON3
  #define XLR     INSN_XLR
  #define IAMR2	INSN_INTERAPTIV_MR2
@@ -304,15 +313,15 @@
  #define IVIRT	ASE_VIRT
  #define IVIRT64	ASE_VIRT64
  
-@@ -990,6 +991,7 @@ const struct mips_opcode mips_builtin_opcodes[] =
+@@ -991,6 +992,7 @@ const struct mips_opcode mips_builtin_opcodes[] =
  {"clo",			"U,s",		0x70000021, 0xfc0007ff, WR_1|RD_2,		0,		I32|N55,	0,	I37 },
  {"clz",			"d,s",		0x00000050, 0xfc1f07ff, WR_1|RD_2,		0,		I37,		0,	0 },
  {"clz",			"U,s",		0x70000020, 0xfc0007ff, WR_1|RD_2,		0,		I32|N55,	0,	I37 },
 +{"crc",			"d,s,t",	0x7000001c, 0xfc0007ff,	WR_1|RD_2|RD_3,	0,		XLP, 		0,	0 },
  /* ctc0 is at the bottom of the table.  */
- {"ctc1",		"t,G",		0x44c00000, 0xffe007ff,	RD_1|WR_CC|CM,		0,		I1,		0,	0 },
+ {"ctc1",		"t,g",		0x44c00000, 0xffe007ff,	RD_1|WR_CC|CM,		0,		I1,		0,	0 },
  {"ctc1",		"t,S",		0x44c00000, 0xffe007ff,	RD_1|WR_CC|CM,		0,		I1,		0,	0 },
-@@ -1022,12 +1024,13 @@ const struct mips_opcode mips_builtin_opcodes[] =
+@@ -1023,12 +1025,13 @@ const struct mips_opcode mips_builtin_opcodes[] =
  {"daddiu",		"t,r,j",	0x64000000, 0xfc000000, WR_1|RD_2,		0,		I3,		0,	0 },
  {"daddu",		"d,v,t",	0x0000002d, 0xfc0007ff, WR_1|RD_2|RD_3,		0,		I3,		0,	0 },
  {"daddu",		"t,r,I",	0,    (int) M_DADDU_I,	INSN_MACRO,		0,		I3,		0,	0 },
@@ -327,7 +336,7 @@
  /* dctr and dctw are used on the r5000.  */
  {"dctr",		"o(b)",	 	0xbc050000, 0xfc1f0000, RD_2,			0,		I3,		0,	0 },
  {"dctw",		"o(b)",		0xbc090000, 0xfc1f0000, RD_2,			0,		I3,		0,	0 },
-@@ -1099,6 +1102,7 @@ const struct mips_opcode mips_builtin_opcodes[] =
+@@ -1100,6 +1103,7 @@ const struct mips_opcode mips_builtin_opcodes[] =
  {"dmfc0",		"t,G,H",	0x40200000, 0xffe007f8,	WR_1|RD_C0|LC,		0,		I64,		0,	0 },
  {"dmfgc0",		"t,G",		0x40600100, 0xffe007ff, WR_1|RD_C0|LC,		0,		0,		IVIRT64, 0 },
  {"dmfgc0",		"t,G,H",	0x40600100, 0xffe007f8, WR_1|RD_C0|LC,		0,		0,		IVIRT64, 0 },
@@ -335,16 +344,16 @@
  {"dmt",			"",		0x41600bc1, 0xffffffff, TRAP,			0,		0,		MT32,	0 },
  {"dmt",			"t",		0x41600bc1, 0xffe0ffff, WR_1|TRAP,		0,		0,		MT32,	0 },
  {"dmtc0",		"t,G",		0x40a00000, 0xffe007ff,	RD_1|WR_C0|WR_CC|CM,	0,		I3,		0,	EE },
-@@ -1114,6 +1118,8 @@ const struct mips_opcode mips_builtin_opcodes[] =
- /* dmfc3 is at the bottom of the table.  */
- /* dmtc3 is at the bottom of the table.  */
+@@ -1113,6 +1117,8 @@ const struct mips_opcode mips_builtin_opcodes[] =
+ /* dmfc2 is at the bottom of the table.  */
+ /* dmtc2 is at the bottom of the table.  */
  {"dmuh",		"d,s,t",	0x000000dc, 0xfc0007ff, WR_1|RD_2|RD_3,		0,		I69,		0,	0 },
 +{"dmtur",		"t,d",		0x7000001f, 0xffe007ff,	RD_1,			0,		XLP,		0,	0 },
 +{"dmul",		"d,s,t",	0x70000006, 0xfc0007ff,	WR_1|RD_2|RD_3,		0,		XLP,		0,	0 },
  {"dmul",		"d,s,t",	0x0000009c, 0xfc0007ff, WR_1|RD_2|RD_3,		0,		I69,		0,	0 },
  {"dmul",		"d,v,t",	0x70000003, 0xfc0007ff, WR_1|RD_2|RD_3|WR_HILO,	0,		IOCT,		0,	0 },
  {"dmul",		"d,v,t",	0,    (int) M_DMUL,	INSN_MACRO,		0,		I3,		0,	M32|I69 },
-@@ -1267,9 +1273,9 @@ const struct mips_opcode mips_builtin_opcodes[] =
+@@ -1266,9 +1272,9 @@ const struct mips_opcode mips_builtin_opcodes[] =
  {"ld",			"s,-b(+R)",	0xec180000, 0xfc1c0000, WR_1,			RD_pc,		I69,		0,	0 },
  {"ld",			"t,A(b)",	0,    (int) M_LD_AB,	INSN_MACRO,		0,		I1,		0,	0 },
  {"ld",			"t,o(b)",	0xdc000000, 0xfc000000, WR_1|RD_3|LM,		0,		I3,		0,	0 },
@@ -357,7 +366,7 @@
  {"ldc1",		"T,o(b)",	0xd4000000, 0xfc000000, WR_1|RD_3|CLD|FP_D,	0,		I2,		0,	SF },
  {"ldc1",		"E,o(b)",	0xd4000000, 0xfc000000, WR_1|RD_3|CLD|FP_D,	0,		I2,		0,	SF },
  {"ldc1",		"T,A(b)",	0,    (int) M_LDC1_AB,	INSN_MACRO,		INSN2_M_FP_D,	I2,		0,	SF },
-@@ -1438,7 +1444,7 @@ const struct mips_opcode mips_builtin_opcodes[] =
+@@ -1437,7 +1443,7 @@ const struct mips_opcode mips_builtin_opcodes[] =
  {"mflo",		"d,9",		0x00000012, 0xff9f07ff, WR_1|RD_LO,		0,		0,		D32,	0 },
  {"mflo1",		"d",		0x70000012, 0xffff07ff,	WR_1|RD_LO,		0,		EE,		0,	0 },
  {"mflhxu",		"d",		0x00000052, 0xffff07ff,	WR_1|MOD_HILO,		0,		0,		SMT,	0 },
@@ -366,7 +375,7 @@
  {"mfsa",		"d",		0x00000028, 0xffff07ff,	WR_1,			0,		EE,		0,	0 },
  {"min.ob",		"X,Y,Q",	0x78000006, 0xfc20003f,	WR_1|RD_2|RD_3|FP_D,	0,		SB1,		MX,	0 },
  {"min.ob",		"D,S,Q",	0x48000006, 0xfc20003f,	WR_1|RD_2|RD_3|FP_D,	0,		N54,		0,	0 },
-@@ -1483,10 +1489,13 @@ const struct mips_opcode mips_builtin_opcodes[] =
+@@ -1482,10 +1488,13 @@ const struct mips_opcode mips_builtin_opcodes[] =
  /* move is at the top of the table.  */
  {"msgn.qh",		"X,Y,Q",	0x78200000, 0xfc20003f,	WR_1|RD_2|RD_3|FP_D,	0,		0,		MX,	0 },
  {"msgsnd",		"t",		0,    (int) M_MSGSND,	INSN_MACRO,		0,		XLR,		0,	0 },
@@ -382,7 +391,7 @@
  {"msub.d",		"D,R,S,T",	0x4c000029, 0xfc00003f, WR_1|RD_2|RD_3|RD_4|FP_D, 0,		I4_33,		0,	I37 },
  {"msub.d",		"D,S,T",	0x46200019, 0xffe0003f,	WR_1|RD_2|RD_3|FP_D,	0,		IL2E,		0,	0 },
  {"msub.d",		"D,S,T",	0x72200019, 0xffe0003f,	WR_1|RD_2|RD_3|FP_D,	0,		IL2F,		0,	0 },
-@@ -1536,7 +1545,7 @@ const struct mips_opcode mips_builtin_opcodes[] =
+@@ -1535,7 +1544,7 @@ const struct mips_opcode mips_builtin_opcodes[] =
  {"mtlo",		"s,7",		0x00000013, 0xfc1fe7ff, RD_1|WR_LO,		0,		0,		D32,	0 },
  {"mtlo1",		"s",		0x70000013, 0xfc1fffff,	RD_1|WR_LO,		0,		EE,		0,	0 },
  {"mtlhx",		"s",		0x00000053, 0xfc1fffff,	RD_1|MOD_HILO,		0,		0,		SMT,	0 },
@@ -391,7 +400,7 @@
  {"mtm0",		"s",		0x70000008, 0xfc1fffff, RD_1,			0,		IOCT,		0,	0 },
  {"mtm0",    		"s,t",		0x70000008, 0xfc00ffff, RD_1|RD_2,		0,		IOCT3,		0,	0 },
  {"mtm1",		"s",		0x7000000c, 0xfc1fffff, RD_1,			0,		IOCT,		0,	0 },
-@@ -1978,9 +1987,9 @@ const struct mips_opcode mips_builtin_opcodes[] =
+@@ -1977,9 +1986,9 @@ const struct mips_opcode mips_builtin_opcodes[] =
  {"suxc1",		"S,t(b)",	0x4c00000d, 0xfc0007ff, RD_1|RD_2|RD_3|SM|FP_D,	0,		I5_33|N55,	0,	I37},
  {"sw",			"t,o(b)",	0xac000000, 0xfc000000,	RD_1|RD_3|SM,		0,		I1,		0,	0 },
  {"sw",			"t,A(b)",	0,    (int) M_SW_AB,	INSN_MACRO,		0,		I1,		0,	0 },
@@ -401,6 +410,6 @@
 +{"swapw",		"t,b",		0x70000014, 0xfc00ffff, MOD_1|RD_2|SM,		0,		XLR|XLP,	0,	0 },
 +{"swapwu",		"t,b",		0x70000015, 0xfc00ffff, MOD_1|RD_2|SM,		0,		XLR|XLP,	0,	0 },
 +{"swapd",		"t,b",		0x70000016, 0xfc00ffff, MOD_1|RD_2|SM,		0,		XLR|XLP,	0,	0 },
- {"swc0",		"E,o(b)",	0xe0000000, 0xfc000000,	RD_3|RD_C0|SM,		0,		I1,		0,	IOCT|IOCTP|IOCT2|I37 },
- {"swc0",		"E,A(b)",	0,    (int) M_SWC0_AB,	INSN_MACRO,		0,		I1,		0,	IOCT|IOCTP|IOCT2|I37 },
+ {"swc0",		"E,o(b)",	0xe0000000, 0xfc000000,	RD_3|RD_C0|SM,		0,		I1,		0,	I2 },
+ {"swc0",		"E,A(b)",	0,    (int) M_SWC0_AB,	INSN_MACRO,		0,		I1,		0,	I2 },
  {"swc1",		"T,o(b)",	0xe4000000, 0xfc000000,	RD_1|RD_3|SM|FP_S,	0,		I1,		0,	0 },
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0011-fix-the-incorrect-assembling-for-ppc-wait-mnemonic.patch b/poky/meta/recipes-devtools/binutils/binutils/0011-fix-the-incorrect-assembling-for-ppc-wait-mnemonic.patch
index 1041b73..389232c 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0011-fix-the-incorrect-assembling-for-ppc-wait-mnemonic.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0011-fix-the-incorrect-assembling-for-ppc-wait-mnemonic.patch
@@ -1,4 +1,4 @@
-From 7f4938d062146e40b4e6d427a5eca6cc6acaaeee Mon Sep 17 00:00:00 2001
+From b77c5a67d4ac2513d0b4bab5e4dd1c33b339689b Mon Sep 17 00:00:00 2001
 From: Zhenhua Luo <zhenhua.luo@nxp.com>
 Date: Sat, 11 Jun 2016 22:08:29 -0500
 Subject: [PATCH] fix the incorrect assembling for ppc wait mnemonic
@@ -11,22 +11,22 @@
  1 file changed, 1 insertion(+), 3 deletions(-)
 
 diff --git a/opcodes/ppc-opc.c b/opcodes/ppc-opc.c
-index bbbadffad8f..72092355e12 100644
+index 13d8b6c3c07..cd979f9c80c 100644
 --- a/opcodes/ppc-opc.c
 +++ b/opcodes/ppc-opc.c
-@@ -6302,8 +6302,6 @@ const struct powerpc_opcode powerpc_opcodes[] = {
+@@ -6378,8 +6378,6 @@ const struct powerpc_opcode powerpc_opcodes[] = {
  {"waitasec",	X(31,30),      XRTRARB_MASK, POWER8,	POWER9,		{0}},
- {"waitrsv",	XWCPL(31,30,1,0),0xffffffff, POWER10,	0,		{0}},
- {"pause_short",	XWCPL(31,30,2,0),0xffffffff, POWER10,	0,		{0}},
+ {"waitrsv",	XWCPL(31,30,1,0),0xffffffff, POWER10,	EXT,		{0}},
+ {"pause_short",	XWCPL(31,30,2,0),0xffffffff, POWER10,	EXT,		{0}},
 -{"wait",	X(31,30),	XWCPL_MASK,  POWER10,	0,		{WC, PL}},
 -{"wait",	X(31,30),	XWC_MASK,    POWER9,	POWER10,	{WC}},
  
  {"lwepx",	X(31,31),	X_MASK,	  E500MC|PPCA2, 0,		{RT, RA0, RB}},
  
-@@ -6363,7 +6361,7 @@ const struct powerpc_opcode powerpc_opcodes[] = {
+@@ -6433,7 +6431,7 @@ const struct powerpc_opcode powerpc_opcodes[] = {
  
- {"waitrsv",	X(31,62)|(1<<21), 0xffffffff, E500MC|PPCA2, 0,		{0}},
- {"waitimpl",	X(31,62)|(2<<21), 0xffffffff, E500MC|PPCA2, 0,		{0}},
+ {"waitrsv",	X(31,62)|(1<<21), 0xffffffff, E500MC|PPCA2, EXT,	{0}},
+ {"waitimpl",	X(31,62)|(2<<21), 0xffffffff, E500MC|PPCA2, EXT,	{0}},
 -{"wait",	X(31,62),	XWC_MASK,    E500MC|PPCA2, 0,		{WC}},
 +{"wait",	X(31,62),	XWC_MASK,    E500MC|PPCA2|POWER9|POWER10, 0,	{WC}},
  
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0012-Detect-64-bit-MIPS-targets.patch b/poky/meta/recipes-devtools/binutils/binutils/0012-Detect-64-bit-MIPS-targets.patch
index 659ae79..04f81c6 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0012-Detect-64-bit-MIPS-targets.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0012-Detect-64-bit-MIPS-targets.patch
@@ -1,4 +1,4 @@
-From bb229568e505f2276ca58b72fef6781034fa839f Mon Sep 17 00:00:00 2001
+From 02374940dd34fddd2b04624af3f23e01f9cb81cd Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Fri, 31 Mar 2017 11:42:03 -0700
 Subject: [PATCH] Detect 64-bit MIPS targets
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0013-Use-libtool-2.4.patch b/poky/meta/recipes-devtools/binutils/binutils/0013-Use-libtool-2.4.patch
index d406769..a75e721 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0013-Use-libtool-2.4.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0013-Use-libtool-2.4.patch
@@ -1,4 +1,4 @@
-From a1031fca1b6c1348c078bb8a9df6e7d29148dae1 Mon Sep 17 00:00:00 2001
+From fd34d57c9e2a0bff1283a6707062ed4a42476b10 Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Sun, 14 Feb 2016 17:04:07 +0000
 Subject: [PATCH] Use libtool 2.4
@@ -9,24 +9,24 @@
 
 Signed-off-by: Khem Raj <raj.khem@gmail.com>
 ---
- bfd/configure      | 1322 +++++++++++++++-----
+ bfd/configure      | 1340 +++++++++++++++-----
  bfd/configure.ac   |    2 +-
- binutils/configure | 1320 +++++++++++++++-----
- gas/configure      | 1320 +++++++++++++++-----
- gprof/configure    | 1320 +++++++++++++++-----
- ld/configure       | 1695 ++++++++++++++++++-------
- libctf/configure   | 1319 +++++++++++++++-----
- libtool.m4         | 1080 +++++++++++-----
+ binutils/configure | 1338 +++++++++++++++-----
+ gas/configure      | 1338 +++++++++++++++-----
+ gprof/configure    | 1338 +++++++++++++++-----
+ ld/configure       | 1713 +++++++++++++++++++-------
+ libctf/configure   | 1337 +++++++++++++++-----
+ libtool.m4         | 1100 +++++++++++------
  ltmain.sh          | 2925 +++++++++++++++++++++++++++++---------------
  ltoptions.m4       |    2 +-
  ltversion.m4       |   12 +-
  lt~obsolete.m4     |    2 +-
- opcodes/configure  | 1320 +++++++++++++++-----
- zlib/configure     | 1320 +++++++++++++++-----
- 14 files changed, 10931 insertions(+), 4028 deletions(-)
+ opcodes/configure  | 1338 +++++++++++++++-----
+ zlib/configure     | 1338 +++++++++++++++-----
+ 14 files changed, 10995 insertions(+), 4128 deletions(-)
 
 diff --git a/bfd/configure b/bfd/configure
-index b3665c68c13..376b951d496 100755
+index daa51244369..79d0c4b4623 100755
 --- a/bfd/configure
 +++ b/bfd/configure
 @@ -705,6 +705,9 @@ OTOOL
@@ -47,7 +47,7 @@
  enable_libtool_lock
  enable_plugins
  enable_largefile
-@@ -1505,6 +1509,8 @@ Optional Packages:
+@@ -1507,6 +1511,8 @@ Optional Packages:
    --with-pic              try to use only PIC/non-PIC objects [default=use
                            both]
    --with-gnu-ld           assume the C compiler uses GNU ld [default=no]
@@ -56,7 +56,7 @@
    --with-mmap             try using mmap for BFD input files if available
    --with-separate-debug-dir=DIR
                            Look for global separate debug info in DIR
-@@ -5694,8 +5700,8 @@ esac
+@@ -4988,8 +4994,8 @@ esac
  
  
  
@@ -67,7 +67,7 @@
  
  
  
-@@ -5735,7 +5741,7 @@ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
+@@ -5029,7 +5035,7 @@ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
  { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5
  $as_echo_n "checking how to print strings... " >&6; }
  # Test print first, because it will be a builtin if present.
@@ -76,7 +76,7 @@
     test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
    ECHO='print -r --'
  elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
-@@ -6421,8 +6427,8 @@ $as_echo_n "checking whether the shell understands some XSI constructs... " >&6;
+@@ -5715,8 +5721,8 @@ $as_echo_n "checking whether the shell understands some XSI constructs... " >&6;
  # Try some XSI features
  xsi_shell=no
  ( _lt_dummy="a/b/c"
@@ -87,7 +87,7 @@
      && eval 'test $(( 1 + 1 )) -eq 2 \
      && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
    && xsi_shell=yes
-@@ -6471,6 +6477,80 @@ esac
+@@ -5765,6 +5771,80 @@ esac
  
  
  
@@ -168,7 +168,7 @@
  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5
  $as_echo_n "checking for $LD option to reload object files... " >&6; }
  if ${lt_cv_ld_reload_flag+:} false; then :
-@@ -6487,6 +6567,11 @@ case $reload_flag in
+@@ -5781,6 +5861,11 @@ case $reload_flag in
  esac
  reload_cmds='$LD$reload_flag -o $output$reload_objs'
  case $host_os in
@@ -180,7 +180,7 @@
    darwin*)
      if test "$GCC" = yes; then
        reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
-@@ -6655,7 +6740,8 @@ mingw* | pw32*)
+@@ -5949,7 +6034,8 @@ mingw* | pw32*)
      lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
      lt_cv_file_magic_cmd='func_win32_libid'
    else
@@ -190,7 +190,7 @@
      lt_cv_file_magic_cmd='$OBJDUMP -f'
    fi
    ;;
-@@ -6809,6 +6895,21 @@ esac
+@@ -6103,6 +6189,21 @@ esac
  fi
  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5
  $as_echo "$lt_cv_deplibs_check_method" >&6; }
@@ -212,7 +212,7 @@
  file_magic_cmd=$lt_cv_file_magic_cmd
  deplibs_check_method=$lt_cv_deplibs_check_method
  test -z "$deplibs_check_method" && deplibs_check_method=unknown
-@@ -6822,11 +6923,164 @@ test -z "$deplibs_check_method" && deplibs_check_method=unknown
+@@ -6118,6 +6219,157 @@ test -z "$deplibs_check_method" && deplibs_check_method=unknown
  
  
  
@@ -226,11 +226,7 @@
 +
 +
 +
- 
- 
- if test -n "$ac_tool_prefix"; then
--  # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
--set dummy ${ac_tool_prefix}ar; ac_word=$2
++if test -n "$ac_tool_prefix"; then
 +  # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
 +set dummy ${ac_tool_prefix}dlltool; ac_word=$2
 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
@@ -371,7 +367,15 @@
 +
 +
 +
-+if test -n "$ac_tool_prefix"; then
+ plugin_option=
+ plugin_names="liblto_plugin.so liblto_plugin-0.dll cyglto_plugin-0.dll"
+ for plugin in $plugin_names; do
+@@ -6132,8 +6384,10 @@ for plugin in $plugin_names; do
+ done
+ 
+ if test -n "$ac_tool_prefix"; then
+-  # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
+-set dummy ${ac_tool_prefix}ar; ac_word=$2
 +  for ac_prog in ar
 +  do
 +    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
@@ -379,7 +383,7 @@
  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
  $as_echo_n "checking for $ac_word... " >&6; }
  if ${ac_cv_prog_AR+:} false; then :
-@@ -6842,7 +7096,7 @@ do
+@@ -6149,7 +6403,7 @@ do
    test -z "$as_dir" && as_dir=.
      for ac_exec_ext in '' $ac_executable_extensions; do
    if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
@@ -388,7 +392,7 @@
      $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
      break 2
    fi
-@@ -6862,11 +7116,15 @@ $as_echo "no" >&6; }
+@@ -6169,11 +6423,15 @@ $as_echo "no" >&6; }
  fi
  
  
@@ -407,7 +411,7 @@
  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
  $as_echo_n "checking for $ac_word... " >&6; }
  if ${ac_cv_prog_ac_ct_AR+:} false; then :
-@@ -6882,7 +7140,7 @@ do
+@@ -6189,7 +6447,7 @@ do
    test -z "$as_dir" && as_dir=.
      for ac_exec_ext in '' $ac_executable_extensions; do
    if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
@@ -416,7 +420,7 @@
      $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
      break 2
    fi
-@@ -6901,6 +7159,10 @@ else
+@@ -6208,6 +6466,10 @@ else
  $as_echo "no" >&6; }
  fi
  
@@ -427,7 +431,7 @@
    if test "x$ac_ct_AR" = x; then
      AR="false"
    else
-@@ -6912,16 +7174,72 @@ ac_tool_warned=yes ;;
+@@ -6219,25 +6481,20 @@ ac_tool_warned=yes ;;
  esac
      AR=$ac_ct_AR
    fi
@@ -436,20 +440,37 @@
  fi
  
 -test -z "$AR" && AR=ar
+-if test -n "$plugin_option"; then
+-  if $AR --help 2>&1 | grep -q "\--plugin"; then
+-    touch conftest.c
+-    $AR $plugin_option rc conftest.a conftest.c
+-    if test "$?" != 0; then
+-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Failed: $AR $plugin_option rc" >&5
++  touch conftest.c
++  $AR $plugin_option rc conftest.a conftest.c
++  if test "$?" != 0; then
++    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Failed: $AR $plugin_option rc" >&5
+ $as_echo "$as_me: WARNING: Failed: $AR $plugin_option rc" >&2;}
+-    else
+-      AR="$AR $plugin_option"
+-    fi
+-    rm -f conftest.*
++  else
++    AR="$AR $plugin_option"
+   fi
+-fi
 -test -z "$AR_FLAGS" && AR_FLAGS=cru
++  rm -f conftest.*
 +: ${AR=ar}
 +: ${AR_FLAGS=cru}
 +
-+
-+
-+
-+
-+
-+
-+
-+
-+
-+
+ 
+ 
+ 
+@@ -6248,6 +6505,63 @@ test -z "$AR_FLAGS" && AR_FLAGS=cru
+ 
+ 
+ 
 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5
 +$as_echo_n "checking for archiver @FILE support... " >&6; }
 +if ${lt_cv_ar_at_file+:} false; then :
@@ -462,7 +483,7 @@
 +int
 +main ()
 +{
- 
++
 +  ;
 +  return 0;
 +}
@@ -488,23 +509,29 @@
 +        fi
 +      fi
 +      rm -f conftest.* libconftest.a
- 
++
 +fi
 +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- 
++
 +fi
 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5
 +$as_echo "$lt_cv_ar_at_file" >&6; }
- 
++
 +if test "x$lt_cv_ar_at_file" = xno; then
 +  archiver_list_spec=
 +else
 +  archiver_list_spec=$lt_cv_ar_at_file
 +fi
++
++
++
++
++
++
  
- 
- 
-@@ -7263,8 +7581,8 @@ esac
+ if test -n "$ac_tool_prefix"; then
+   # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
+@@ -6588,8 +6902,8 @@ esac
  lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
  
  # Transform an extracted symbol line into symbol name and symbol address
@@ -515,7 +542,7 @@
  
  # Handle CRLF in mingw tool chain
  opt_cr=
-@@ -7300,6 +7618,7 @@ for ac_symprfx in "" "_"; do
+@@ -6625,6 +6939,7 @@ for ac_symprfx in "" "_"; do
    else
      lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[	 ]\($symcode$symcode*\)[	 ][	 ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
    fi
@@ -523,7 +550,7 @@
  
    # Check to see that the pipe works correctly.
    pipe_works=no
-@@ -7341,6 +7660,18 @@ _LT_EOF
+@@ -6666,6 +6981,18 @@ _LT_EOF
        if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
  	if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
  	  cat <<_LT_EOF > conftest.$ac_ext
@@ -542,7 +569,7 @@
  #ifdef __cplusplus
  extern "C" {
  #endif
-@@ -7352,7 +7683,7 @@ _LT_EOF
+@@ -6677,7 +7004,7 @@ _LT_EOF
  	  cat <<_LT_EOF >> conftest.$ac_ext
  
  /* The mapping between symbol names and symbols.  */
@@ -551,7 +578,7 @@
    const char *name;
    void       *address;
  }
-@@ -7378,8 +7709,8 @@ static const void *lt_preloaded_setup() {
+@@ -6703,8 +7030,8 @@ static const void *lt_preloaded_setup() {
  _LT_EOF
  	  # Now try linking the two files.
  	  mv conftest.$ac_objext conftstm.$ac_objext
@@ -562,7 +589,7 @@
  	  LIBS="conftstm.$ac_objext"
  	  CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag"
  	  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
-@@ -7389,8 +7720,8 @@ _LT_EOF
+@@ -6714,8 +7041,8 @@ _LT_EOF
    test $ac_status = 0; } && test -s conftest${ac_exeext}; then
  	    pipe_works=yes
  	  fi
@@ -573,7 +600,7 @@
  	else
  	  echo "cannot find nm_test_func in $nlist" >&5
  	fi
-@@ -7427,6 +7758,16 @@ else
+@@ -6752,6 +7079,14 @@ else
  $as_echo "ok" >&6; }
  fi
  
@@ -585,12 +612,10 @@
 +fi
 +
 +
-+
-+
  
  
  
-@@ -7443,6 +7784,45 @@ fi
+@@ -6770,6 +7105,47 @@ fi
  
  
  
@@ -633,10 +658,12 @@
 +
 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${lt_sysroot:-no}" >&5
 +$as_echo "${lt_sysroot:-no}" >&6; }
++
++
  
  
  
-@@ -7654,6 +8034,123 @@ esac
+@@ -6979,6 +7355,123 @@ esac
  
  need_locks="$enable_libtool_lock"
  
@@ -760,7 +787,7 @@
  
    case $host_os in
      rhapsody* | darwin*)
-@@ -8217,6 +8714,8 @@ _LT_EOF
+@@ -7542,6 +8035,8 @@ _LT_EOF
        $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5
        echo "$AR cru libconftest.a conftest.o" >&5
        $AR cru libconftest.a conftest.o 2>&5
@@ -769,7 +796,7 @@
        cat > conftest.c << _LT_EOF
  int main() { return 0;}
  _LT_EOF
-@@ -8381,7 +8880,8 @@ fi
+@@ -7706,7 +8201,8 @@ fi
  LIBTOOL_DEPS="$ltmain"
  
  # Always use our own libtool.
@@ -779,7 +806,7 @@
  
  
  
-@@ -8470,7 +8970,7 @@ aix3*)
+@@ -7795,7 +8291,7 @@ aix3*)
  esac
  
  # Global variables:
@@ -788,7 +815,7 @@
  can_build_shared=yes
  
  # All known linkers require a `.a' archive for static linking (except MSVC,
-@@ -8768,8 +9268,6 @@ fi
+@@ -8093,8 +8589,6 @@ fi
  lt_prog_compiler_pic=
  lt_prog_compiler_static=
  
@@ -797,7 +824,7 @@
  
    if test "$GCC" = yes; then
      lt_prog_compiler_wl='-Wl,'
-@@ -8935,6 +9433,12 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -8260,6 +8754,12 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
  	lt_prog_compiler_pic='--shared'
  	lt_prog_compiler_static='--static'
  	;;
@@ -810,7 +837,7 @@
        pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
          # Portland Group compilers (*not* the Pentium gcc compiler,
  	# which looks to be a dead project)
-@@ -8997,7 +9501,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -8322,7 +8822,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
        lt_prog_compiler_pic='-KPIC'
        lt_prog_compiler_static='-Bstatic'
        case $cc_basename in
@@ -819,7 +846,7 @@
  	lt_prog_compiler_wl='-Qoption ld ';;
        *)
  	lt_prog_compiler_wl='-Wl,';;
-@@ -9054,13 +9558,17 @@ case $host_os in
+@@ -8379,13 +8879,17 @@ case $host_os in
      lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC"
      ;;
  esac
@@ -843,7 +870,7 @@
  
  #
  # Check to make sure the PIC flag actually works.
-@@ -9121,6 +9629,11 @@ fi
+@@ -8446,6 +8950,11 @@ fi
  
  
  
@@ -855,7 +882,7 @@
  #
  # Check to make sure the static flag actually works.
  #
-@@ -9471,7 +9984,8 @@ _LT_EOF
+@@ -8796,7 +9305,8 @@ _LT_EOF
        allow_undefined_flag=unsupported
        always_export_symbols=no
        enable_shared_with_static_runtimes=yes
@@ -865,7 +892,7 @@
  
        if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
          archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
-@@ -9570,12 +10084,12 @@ _LT_EOF
+@@ -8895,12 +9405,12 @@ _LT_EOF
  	  whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'
  	  hardcode_libdir_flag_spec=
  	  hardcode_libdir_flag_spec_ld='-rpath $libdir'
@@ -880,7 +907,7 @@
  	  fi
  	  ;;
  	esac
-@@ -9589,8 +10103,8 @@ _LT_EOF
+@@ -8914,8 +9424,8 @@ _LT_EOF
  	archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
  	wlarc=
        else
@@ -891,7 +918,7 @@
        fi
        ;;
  
-@@ -9608,8 +10122,8 @@ _LT_EOF
+@@ -8933,8 +9443,8 @@ _LT_EOF
  
  _LT_EOF
        elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
@@ -902,7 +929,7 @@
        else
  	ld_shlibs=no
        fi
-@@ -9655,8 +10169,8 @@ _LT_EOF
+@@ -8980,8 +9490,8 @@ _LT_EOF
  
      *)
        if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
@@ -913,7 +940,7 @@
        else
  	ld_shlibs=no
        fi
-@@ -9786,7 +10300,13 @@ _LT_EOF
+@@ -9111,7 +9621,13 @@ _LT_EOF
  	allow_undefined_flag='-berok'
          # Determine the default libpath from the value encoded in an
          # empty executable.
@@ -928,7 +955,7 @@
  /* end confdefs.h.  */
  
  int
-@@ -9799,22 +10319,29 @@ main ()
+@@ -9124,22 +9640,29 @@ main ()
  _ACEOF
  if ac_fn_c_try_link "$LINENO"; then :
  
@@ -971,7 +998,7 @@
  
          hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
          archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
-@@ -9826,7 +10353,13 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9151,7 +9674,13 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  	else
  	 # Determine the default libpath from the value encoded in an
  	 # empty executable.
@@ -986,7 +1013,7 @@
  /* end confdefs.h.  */
  
  int
-@@ -9839,22 +10372,29 @@ main ()
+@@ -9164,22 +9693,29 @@ main ()
  _ACEOF
  if ac_fn_c_try_link "$LINENO"; then :
  
@@ -1029,7 +1056,7 @@
  
  	 hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
  	  # Warning - without using the other run time loading flags,
-@@ -9899,20 +10439,63 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9224,20 +9760,63 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
        # Microsoft Visual C++.
        # hardcode_libdir_flag_spec is actually meaningless, as there is
        # no search path for DLLs.
@@ -1107,7 +1134,7 @@
        ;;
  
      darwin* | rhapsody*)
-@@ -9973,7 +10556,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9298,7 +9877,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  
      # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
      freebsd* | dragonfly*)
@@ -1116,7 +1143,7 @@
        hardcode_libdir_flag_spec='-R$libdir'
        hardcode_direct=yes
        hardcode_shlibpath_var=no
-@@ -9981,7 +10564,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9306,7 +9885,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  
      hpux9*)
        if test "$GCC" = yes; then
@@ -1125,7 +1152,7 @@
        else
  	archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
        fi
-@@ -9997,7 +10580,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9322,7 +9901,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  
      hpux10*)
        if test "$GCC" = yes && test "$with_gnu_ld" = no; then
@@ -1134,7 +1161,7 @@
        else
  	archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
        fi
-@@ -10021,10 +10604,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9346,10 +9925,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  	  archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
  	  ;;
  	ia64*)
@@ -1147,7 +1174,7 @@
  	  ;;
  	esac
        else
-@@ -10103,23 +10686,36 @@ fi
+@@ -9428,23 +10007,36 @@ fi
  
      irix5* | irix6* | nonstopux*)
        if test "$GCC" = yes; then
@@ -1192,7 +1219,7 @@
        else
  	archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
  	archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
-@@ -10204,7 +10800,7 @@ rm -f core conftest.err conftest.$ac_objext \
+@@ -9529,7 +10121,7 @@ rm -f core conftest.err conftest.$ac_objext \
      osf4* | osf5*)	# as osf3* with the addition of -msym flag
        if test "$GCC" = yes; then
  	allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
@@ -1201,7 +1228,7 @@
  	hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
        else
  	allow_undefined_flag=' -expect_unresolved \*'
-@@ -10223,9 +10819,9 @@ rm -f core conftest.err conftest.$ac_objext \
+@@ -9548,9 +10140,9 @@ rm -f core conftest.err conftest.$ac_objext \
        no_undefined_flag=' -z defs'
        if test "$GCC" = yes; then
  	wlarc='${wl}'
@@ -1213,7 +1240,7 @@
        else
  	case `$CC -V 2>&1` in
  	*"Compilers 5.0"*)
-@@ -10801,8 +11397,9 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -10126,8 +10718,9 @@ cygwin* | mingw* | pw32* | cegcc*)
    need_version=no
    need_lib_prefix=no
  
@@ -1225,7 +1252,7 @@
      library_names_spec='$libname.dll.a'
      # DLL is installed to $(libdir)/../bin by postinstall_cmds
      postinstall_cmds='base_file=`basename \${file}`~
-@@ -10835,13 +11432,71 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -10160,13 +10753,71 @@ cygwin* | mingw* | pw32* | cegcc*)
        library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
        ;;
      esac
@@ -1298,7 +1325,7 @@
    # FIXME: first we should search . and the directory the executable is in
    shlibpath_var=PATH
    ;;
-@@ -10923,7 +11578,7 @@ haiku*)
+@@ -10248,7 +10899,7 @@ haiku*)
    soname_spec='${libname}${release}${shared_ext}$major'
    shlibpath_var=LIBRARY_PATH
    shlibpath_overrides_runpath=yes
@@ -1307,16 +1334,16 @@
    hardcode_into_libs=yes
    ;;
  
-@@ -11719,7 +12374,7 @@ else
+@@ -11044,7 +11695,7 @@ else
    lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
    lt_status=$lt_dlunknown
    cat > conftest.$ac_ext <<_LT_EOF
--#line 11722 "configure"
+-#line 11047 "configure"
 +#line $LINENO "configure"
  #include "confdefs.h"
  
  #if HAVE_DLFCN_H
-@@ -11763,10 +12418,10 @@ else
+@@ -11088,10 +11739,10 @@ else
  /* When -fvisbility=hidden is used, assume the code has been annotated
     correspondingly for the symbols needed.  */
  #if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
@@ -1329,16 +1356,16 @@
  int main ()
  {
    void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-@@ -11825,7 +12480,7 @@ else
+@@ -11150,7 +11801,7 @@ else
    lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
    lt_status=$lt_dlunknown
    cat > conftest.$ac_ext <<_LT_EOF
--#line 11828 "configure"
+-#line 11153 "configure"
 +#line $LINENO "configure"
  #include "confdefs.h"
  
  #if HAVE_DLFCN_H
-@@ -11869,10 +12524,10 @@ else
+@@ -11194,10 +11845,10 @@ else
  /* When -fvisbility=hidden is used, assume the code has been annotated
     correspondingly for the symbols needed.  */
  #if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
@@ -1351,16 +1378,16 @@
  int main ()
  {
    void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-@@ -14599,7 +15254,7 @@ SHARED_LDFLAGS=
+@@ -13114,7 +13765,7 @@ SHARED_LDFLAGS=
  if test "$enable_shared" = "yes"; then
    x=`sed -n -e 's/^[ 	]*PICFLAG[ 	]*=[ 	]*//p' < ../libiberty/Makefile | sed -n '$p'`
    if test -n "$x"; then
 -    SHARED_LIBADD="-L`pwd`/../libiberty/pic -liberty"
 +    SHARED_LIBADD="`pwd`/../libiberty/pic/libiberty.a"
    fi
+ fi
  
-   case "${host}" in
-@@ -17199,13 +17854,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'
+@@ -15762,13 +16413,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'
  lt_unset='`$ECHO "$lt_unset" | $SED "$delay_single_quote_subst"`'
  lt_SP2NL='`$ECHO "$lt_SP2NL" | $SED "$delay_single_quote_subst"`'
  lt_NL2SP='`$ECHO "$lt_NL2SP" | $SED "$delay_single_quote_subst"`'
@@ -1381,7 +1408,7 @@
  STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`'
  RANLIB='`$ECHO "$RANLIB" | $SED "$delay_single_quote_subst"`'
  old_postinstall_cmds='`$ECHO "$old_postinstall_cmds" | $SED "$delay_single_quote_subst"`'
-@@ -17220,14 +17882,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$de
+@@ -15783,14 +16441,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$de
  lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`'
  lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`'
  lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`'
@@ -1400,7 +1427,7 @@
  DSYMUTIL='`$ECHO "$DSYMUTIL" | $SED "$delay_single_quote_subst"`'
  NMEDIT='`$ECHO "$NMEDIT" | $SED "$delay_single_quote_subst"`'
  LIPO='`$ECHO "$LIPO" | $SED "$delay_single_quote_subst"`'
-@@ -17260,12 +17925,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_q
+@@ -15823,12 +16484,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_q
  hardcode_automatic='`$ECHO "$hardcode_automatic" | $SED "$delay_single_quote_subst"`'
  inherit_rpath='`$ECHO "$inherit_rpath" | $SED "$delay_single_quote_subst"`'
  link_all_deplibs='`$ECHO "$link_all_deplibs" | $SED "$delay_single_quote_subst"`'
@@ -1414,7 +1441,7 @@
  file_list_spec='`$ECHO "$file_list_spec" | $SED "$delay_single_quote_subst"`'
  variables_saved_for_relink='`$ECHO "$variables_saved_for_relink" | $SED "$delay_single_quote_subst"`'
  need_lib_prefix='`$ECHO "$need_lib_prefix" | $SED "$delay_single_quote_subst"`'
-@@ -17320,8 +17985,13 @@ reload_flag \
+@@ -15883,8 +16544,13 @@ reload_flag \
  OBJDUMP \
  deplibs_check_method \
  file_magic_cmd \
@@ -1428,7 +1455,7 @@
  STRIP \
  RANLIB \
  CC \
-@@ -17331,12 +18001,14 @@ lt_cv_sys_global_symbol_pipe \
+@@ -15894,12 +16560,14 @@ lt_cv_sys_global_symbol_pipe \
  lt_cv_sys_global_symbol_to_cdecl \
  lt_cv_sys_global_symbol_to_c_name_address \
  lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \
@@ -1444,7 +1471,7 @@
  DSYMUTIL \
  NMEDIT \
  LIPO \
-@@ -17352,7 +18024,6 @@ no_undefined_flag \
+@@ -15915,7 +16583,6 @@ no_undefined_flag \
  hardcode_libdir_flag_spec \
  hardcode_libdir_flag_spec_ld \
  hardcode_libdir_separator \
@@ -1452,7 +1479,7 @@
  exclude_expsyms \
  include_expsyms \
  file_list_spec \
-@@ -17388,6 +18059,7 @@ module_cmds \
+@@ -15951,6 +16618,7 @@ module_cmds \
  module_expsym_cmds \
  export_symbols_cmds \
  prelink_cmds \
@@ -1460,7 +1487,7 @@
  postinstall_cmds \
  postuninstall_cmds \
  finish_cmds \
-@@ -18176,7 +18848,8 @@ $as_echo X"$file" |
+@@ -16720,7 +17388,8 @@ $as_echo X"$file" |
  # NOTE: Changes made to this file will be lost: look at ltmain.sh.
  #
  #   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
@@ -1470,7 +1497,7 @@
  #   Written by Gordon Matzigkeit, 1996
  #
  #   This file is part of GNU Libtool.
-@@ -18279,19 +18952,42 @@ SP2NL=$lt_lt_SP2NL
+@@ -16823,19 +17492,42 @@ SP2NL=$lt_lt_SP2NL
  # turn newlines into spaces.
  NL2SP=$lt_lt_NL2SP
  
@@ -1514,7 +1541,7 @@
  # A symbol stripping program.
  STRIP=$lt_STRIP
  
-@@ -18321,6 +19017,12 @@ global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
+@@ -16865,6 +17557,12 @@ global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
  # Transform the output of nm in a C name address pair when lib prefix is needed.
  global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
  
@@ -1527,7 +1554,7 @@
  # The name of the directory that contains temporary libtool files.
  objdir=$objdir
  
-@@ -18330,6 +19032,9 @@ MAGIC_CMD=$MAGIC_CMD
+@@ -16874,6 +17572,9 @@ MAGIC_CMD=$MAGIC_CMD
  # Must we lock files when doing compilation?
  need_locks=$lt_need_locks
  
@@ -1537,7 +1564,7 @@
  # Tool to manipulate archived DWARF debug symbol files on Mac OS X.
  DSYMUTIL=$lt_DSYMUTIL
  
-@@ -18444,12 +19149,12 @@ with_gcc=$GCC
+@@ -16988,12 +17689,12 @@ with_gcc=$GCC
  # Compiler flag to turn off builtin functions.
  no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag
  
@@ -1553,7 +1580,7 @@
  # Compiler flag to prevent dynamic linking.
  link_static_flag=$lt_lt_prog_compiler_static
  
-@@ -18536,9 +19241,6 @@ inherit_rpath=$inherit_rpath
+@@ -17080,9 +17781,6 @@ inherit_rpath=$inherit_rpath
  # Whether libtool must link a program against all its dependency libraries.
  link_all_deplibs=$link_all_deplibs
  
@@ -1563,7 +1590,7 @@
  # Set to "yes" if exported symbols are required.
  always_export_symbols=$always_export_symbols
  
-@@ -18554,6 +19256,9 @@ include_expsyms=$lt_include_expsyms
+@@ -17098,6 +17796,9 @@ include_expsyms=$lt_include_expsyms
  # Commands necessary for linking programs (against libraries) with templates.
  prelink_cmds=$lt_prelink_cmds
  
@@ -1573,7 +1600,7 @@
  # Specify filename containing input files.
  file_list_spec=$lt_file_list_spec
  
-@@ -18586,210 +19291,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
+@@ -17130,210 +17831,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
    # if finds mixed CR/LF and LF-only lines.  Since sed operates in
    # text mode, it properly converts lines to CR/LF.  This bash problem
    # is reportedly fixed, but why not run on old versions too?
@@ -1948,23 +1975,23 @@
    chmod +x "$ofile"
  
 diff --git a/bfd/configure.ac b/bfd/configure.ac
-index 0797a08ff37..133d714cf18 100644
+index 07a75ed1626..288374c504c 100644
 --- a/bfd/configure.ac
 +++ b/bfd/configure.ac
-@@ -315,7 +315,7 @@ changequote(,)dnl
+@@ -304,7 +304,7 @@ changequote(,)dnl
    x=`sed -n -e 's/^[ 	]*PICFLAG[ 	]*=[ 	]*//p' < ../libiberty/Makefile | sed -n '$p'`
  changequote([,])dnl
    if test -n "$x"; then
 -    SHARED_LIBADD="-L`pwd`/../libiberty/pic -liberty"
 +    SHARED_LIBADD="`pwd`/../libiberty/pic/libiberty.a"
    fi
+ fi
  
-   case "${host}" in
 diff --git a/binutils/configure b/binutils/configure
-index 83b4b0172db..2154238189e 100755
+index bf6461dab1e..8e6f6d30b4d 100755
 --- a/binutils/configure
 +++ b/binutils/configure
-@@ -697,8 +697,11 @@ OTOOL
+@@ -696,8 +696,11 @@ OTOOL
  LIPO
  NMEDIT
  DSYMUTIL
@@ -1976,7 +2003,7 @@
  OBJDUMP
  LN_S
  NM
-@@ -815,6 +818,7 @@ enable_static
+@@ -814,6 +817,7 @@ enable_static
  with_pic
  enable_fast_install
  with_gnu_ld
@@ -1984,7 +2011,7 @@
  enable_libtool_lock
  enable_plugins
  enable_largefile
-@@ -1504,6 +1508,8 @@ Optional Packages:
+@@ -1509,6 +1513,8 @@ Optional Packages:
    --with-pic              try to use only PIC/non-PIC objects [default=use
                            both]
    --with-gnu-ld           assume the C compiler uses GNU ld [default=no]
@@ -1993,7 +2020,7 @@
    --with-debuginfod       Enable debuginfo lookups with debuginfod
                            (auto/yes/no)
    --with-system-zlib      use installed libz
-@@ -5490,8 +5496,8 @@ esac
+@@ -4844,8 +4850,8 @@ esac
  
  
  
@@ -2004,7 +2031,7 @@
  
  
  
-@@ -5531,7 +5537,7 @@ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
+@@ -4885,7 +4891,7 @@ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
  { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5
  $as_echo_n "checking how to print strings... " >&6; }
  # Test print first, because it will be a builtin if present.
@@ -2013,7 +2040,7 @@
     test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
    ECHO='print -r --'
  elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
-@@ -6217,8 +6223,8 @@ $as_echo_n "checking whether the shell understands some XSI constructs... " >&6;
+@@ -5571,8 +5577,8 @@ $as_echo_n "checking whether the shell understands some XSI constructs... " >&6;
  # Try some XSI features
  xsi_shell=no
  ( _lt_dummy="a/b/c"
@@ -2024,7 +2051,7 @@
      && eval 'test $(( 1 + 1 )) -eq 2 \
      && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
    && xsi_shell=yes
-@@ -6267,6 +6273,80 @@ esac
+@@ -5621,6 +5627,80 @@ esac
  
  
  
@@ -2105,7 +2132,7 @@
  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5
  $as_echo_n "checking for $LD option to reload object files... " >&6; }
  if ${lt_cv_ld_reload_flag+:} false; then :
-@@ -6283,6 +6363,11 @@ case $reload_flag in
+@@ -5637,6 +5717,11 @@ case $reload_flag in
  esac
  reload_cmds='$LD$reload_flag -o $output$reload_objs'
  case $host_os in
@@ -2117,7 +2144,7 @@
    darwin*)
      if test "$GCC" = yes; then
        reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
-@@ -6451,7 +6536,8 @@ mingw* | pw32*)
+@@ -5805,7 +5890,8 @@ mingw* | pw32*)
      lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
      lt_cv_file_magic_cmd='func_win32_libid'
    else
@@ -2127,7 +2154,7 @@
      lt_cv_file_magic_cmd='$OBJDUMP -f'
    fi
    ;;
-@@ -6605,6 +6691,21 @@ esac
+@@ -5959,6 +6045,21 @@ esac
  fi
  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5
  $as_echo "$lt_cv_deplibs_check_method" >&6; }
@@ -2149,7 +2176,7 @@
  file_magic_cmd=$lt_cv_file_magic_cmd
  deplibs_check_method=$lt_cv_deplibs_check_method
  test -z "$deplibs_check_method" && deplibs_check_method=unknown
-@@ -6620,9 +6721,162 @@ test -z "$deplibs_check_method" && deplibs_check_method=unknown
+@@ -5974,6 +6075,157 @@ test -z "$deplibs_check_method" && deplibs_check_method=unknown
  
  
  
@@ -2304,6 +2331,12 @@
 +
 +
 +
+ plugin_option=
+ plugin_names="liblto_plugin.so liblto_plugin-0.dll cyglto_plugin-0.dll"
+ for plugin in $plugin_names; do
+@@ -5988,8 +6240,10 @@ for plugin in $plugin_names; do
+ done
+ 
  if test -n "$ac_tool_prefix"; then
 -  # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
 -set dummy ${ac_tool_prefix}ar; ac_word=$2
@@ -2314,7 +2347,7 @@
  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
  $as_echo_n "checking for $ac_word... " >&6; }
  if ${ac_cv_prog_AR+:} false; then :
-@@ -6638,7 +6892,7 @@ do
+@@ -6005,7 +6259,7 @@ do
    test -z "$as_dir" && as_dir=.
      for ac_exec_ext in '' $ac_executable_extensions; do
    if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
@@ -2323,7 +2356,7 @@
      $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
      break 2
    fi
-@@ -6658,11 +6912,15 @@ $as_echo "no" >&6; }
+@@ -6025,11 +6279,15 @@ $as_echo "no" >&6; }
  fi
  
  
@@ -2342,7 +2375,7 @@
  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
  $as_echo_n "checking for $ac_word... " >&6; }
  if ${ac_cv_prog_ac_ct_AR+:} false; then :
-@@ -6678,7 +6936,7 @@ do
+@@ -6045,7 +6303,7 @@ do
    test -z "$as_dir" && as_dir=.
      for ac_exec_ext in '' $ac_executable_extensions; do
    if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
@@ -2351,7 +2384,7 @@
      $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
      break 2
    fi
-@@ -6697,6 +6955,10 @@ else
+@@ -6064,6 +6322,10 @@ else
  $as_echo "no" >&6; }
  fi
  
@@ -2362,7 +2395,7 @@
    if test "x$ac_ct_AR" = x; then
      AR="false"
    else
-@@ -6708,12 +6970,10 @@ ac_tool_warned=yes ;;
+@@ -6075,29 +6337,81 @@ ac_tool_warned=yes ;;
  esac
      AR=$ac_ct_AR
    fi
@@ -2371,16 +2404,40 @@
  fi
  
 -test -z "$AR" && AR=ar
+-if test -n "$plugin_option"; then
+-  if $AR --help 2>&1 | grep -q "\--plugin"; then
+-    touch conftest.c
+-    $AR $plugin_option rc conftest.a conftest.c
+-    if test "$?" != 0; then
+-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Failed: $AR $plugin_option rc" >&5
++  touch conftest.c
++  $AR $plugin_option rc conftest.a conftest.c
++  if test "$?" != 0; then
++    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Failed: $AR $plugin_option rc" >&5
+ $as_echo "$as_me: WARNING: Failed: $AR $plugin_option rc" >&2;}
+-    else
+-      AR="$AR $plugin_option"
+-    fi
+-    rm -f conftest.*
++  else
++    AR="$AR $plugin_option"
+   fi
+-fi
 -test -z "$AR_FLAGS" && AR_FLAGS=cru
++  rm -f conftest.*
 +: ${AR=ar}
 +: ${AR_FLAGS=cru}
- 
- 
- 
-@@ -6725,6 +6985,64 @@ test -z "$AR_FLAGS" && AR_FLAGS=cru
- 
- 
- 
++
++
++
++
++
++
++
++
++
++
++
 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5
 +$as_echo_n "checking for archiver @FILE support... " >&6; }
 +if ${lt_cv_ar_at_file+:} false; then :
@@ -2393,7 +2450,7 @@
 +int
 +main ()
 +{
-+
+ 
 +  ;
 +  return 0;
 +}
@@ -2419,30 +2476,23 @@
 +        fi
 +      fi
 +      rm -f conftest.* libconftest.a
-+
+ 
 +fi
 +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-+
+ 
 +fi
 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5
 +$as_echo "$lt_cv_ar_at_file" >&6; }
-+
+ 
 +if test "x$lt_cv_ar_at_file" = xno; then
 +  archiver_list_spec=
 +else
 +  archiver_list_spec=$lt_cv_ar_at_file
 +fi
-+
-+
-+
-+
-+
-+
-+
- if test -n "$ac_tool_prefix"; then
-   # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
- set dummy ${ac_tool_prefix}strip; ac_word=$2
-@@ -7059,8 +7377,8 @@ esac
+ 
+ 
+ 
+@@ -6444,8 +6758,8 @@ esac
  lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
  
  # Transform an extracted symbol line into symbol name and symbol address
@@ -2453,7 +2503,7 @@
  
  # Handle CRLF in mingw tool chain
  opt_cr=
-@@ -7096,6 +7414,7 @@ for ac_symprfx in "" "_"; do
+@@ -6481,6 +6795,7 @@ for ac_symprfx in "" "_"; do
    else
      lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[	 ]\($symcode$symcode*\)[	 ][	 ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
    fi
@@ -2461,7 +2511,7 @@
  
    # Check to see that the pipe works correctly.
    pipe_works=no
-@@ -7137,6 +7456,18 @@ _LT_EOF
+@@ -6522,6 +6837,18 @@ _LT_EOF
        if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
  	if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
  	  cat <<_LT_EOF > conftest.$ac_ext
@@ -2480,7 +2530,7 @@
  #ifdef __cplusplus
  extern "C" {
  #endif
-@@ -7148,7 +7479,7 @@ _LT_EOF
+@@ -6533,7 +6860,7 @@ _LT_EOF
  	  cat <<_LT_EOF >> conftest.$ac_ext
  
  /* The mapping between symbol names and symbols.  */
@@ -2489,7 +2539,7 @@
    const char *name;
    void       *address;
  }
-@@ -7174,8 +7505,8 @@ static const void *lt_preloaded_setup() {
+@@ -6559,8 +6886,8 @@ static const void *lt_preloaded_setup() {
  _LT_EOF
  	  # Now try linking the two files.
  	  mv conftest.$ac_objext conftstm.$ac_objext
@@ -2500,7 +2550,7 @@
  	  LIBS="conftstm.$ac_objext"
  	  CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag"
  	  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
-@@ -7185,8 +7516,8 @@ _LT_EOF
+@@ -6570,8 +6897,8 @@ _LT_EOF
    test $ac_status = 0; } && test -s conftest${ac_exeext}; then
  	    pipe_works=yes
  	  fi
@@ -2511,7 +2561,7 @@
  	else
  	  echo "cannot find nm_test_func in $nlist" >&5
  	fi
-@@ -7223,6 +7554,21 @@ else
+@@ -6608,6 +6935,19 @@ else
  $as_echo "ok" >&6; }
  fi
  
@@ -2528,15 +2578,15 @@
 +
 +
 +
+ 
+ 
+ 
+@@ -6624,6 +6964,42 @@ fi
+ 
+ 
+ 
 +
 +
- 
- 
- 
-@@ -7239,6 +7585,40 @@ fi
- 
- 
- 
 +
 +
 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5
@@ -2574,7 +2624,7 @@
  
  
  
-@@ -7450,6 +7830,123 @@ esac
+@@ -6835,6 +7211,123 @@ esac
  
  need_locks="$enable_libtool_lock"
  
@@ -2698,7 +2748,7 @@
  
    case $host_os in
      rhapsody* | darwin*)
-@@ -8013,6 +8510,8 @@ _LT_EOF
+@@ -7398,6 +7891,8 @@ _LT_EOF
        $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5
        echo "$AR cru libconftest.a conftest.o" >&5
        $AR cru libconftest.a conftest.o 2>&5
@@ -2707,7 +2757,7 @@
        cat > conftest.c << _LT_EOF
  int main() { return 0;}
  _LT_EOF
-@@ -8208,7 +8707,8 @@ fi
+@@ -7593,7 +8088,8 @@ fi
  LIBTOOL_DEPS="$ltmain"
  
  # Always use our own libtool.
@@ -2717,7 +2767,7 @@
  
  
  
-@@ -8297,7 +8797,7 @@ aix3*)
+@@ -7682,7 +8178,7 @@ aix3*)
  esac
  
  # Global variables:
@@ -2726,7 +2776,7 @@
  can_build_shared=yes
  
  # All known linkers require a `.a' archive for static linking (except MSVC,
-@@ -8595,8 +9095,6 @@ fi
+@@ -7980,8 +8476,6 @@ fi
  lt_prog_compiler_pic=
  lt_prog_compiler_static=
  
@@ -2735,7 +2785,7 @@
  
    if test "$GCC" = yes; then
      lt_prog_compiler_wl='-Wl,'
-@@ -8762,6 +9260,12 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -8147,6 +8641,12 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
  	lt_prog_compiler_pic='--shared'
  	lt_prog_compiler_static='--static'
  	;;
@@ -2748,7 +2798,7 @@
        pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
          # Portland Group compilers (*not* the Pentium gcc compiler,
  	# which looks to be a dead project)
-@@ -8824,7 +9328,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -8209,7 +8709,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
        lt_prog_compiler_pic='-KPIC'
        lt_prog_compiler_static='-Bstatic'
        case $cc_basename in
@@ -2757,7 +2807,7 @@
  	lt_prog_compiler_wl='-Qoption ld ';;
        *)
  	lt_prog_compiler_wl='-Wl,';;
-@@ -8881,13 +9385,17 @@ case $host_os in
+@@ -8266,13 +8766,17 @@ case $host_os in
      lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC"
      ;;
  esac
@@ -2781,7 +2831,7 @@
  
  #
  # Check to make sure the PIC flag actually works.
-@@ -8948,6 +9456,11 @@ fi
+@@ -8333,6 +8837,11 @@ fi
  
  
  
@@ -2793,7 +2843,7 @@
  #
  # Check to make sure the static flag actually works.
  #
-@@ -9298,7 +9811,8 @@ _LT_EOF
+@@ -8683,7 +9192,8 @@ _LT_EOF
        allow_undefined_flag=unsupported
        always_export_symbols=no
        enable_shared_with_static_runtimes=yes
@@ -2803,7 +2853,7 @@
  
        if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
          archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
-@@ -9397,12 +9911,12 @@ _LT_EOF
+@@ -8782,12 +9292,12 @@ _LT_EOF
  	  whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'
  	  hardcode_libdir_flag_spec=
  	  hardcode_libdir_flag_spec_ld='-rpath $libdir'
@@ -2818,7 +2868,7 @@
  	  fi
  	  ;;
  	esac
-@@ -9416,8 +9930,8 @@ _LT_EOF
+@@ -8801,8 +9311,8 @@ _LT_EOF
  	archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
  	wlarc=
        else
@@ -2829,7 +2879,7 @@
        fi
        ;;
  
-@@ -9435,8 +9949,8 @@ _LT_EOF
+@@ -8820,8 +9330,8 @@ _LT_EOF
  
  _LT_EOF
        elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
@@ -2840,7 +2890,7 @@
        else
  	ld_shlibs=no
        fi
-@@ -9482,8 +9996,8 @@ _LT_EOF
+@@ -8867,8 +9377,8 @@ _LT_EOF
  
      *)
        if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
@@ -2851,7 +2901,7 @@
        else
  	ld_shlibs=no
        fi
-@@ -9613,7 +10127,13 @@ _LT_EOF
+@@ -8998,7 +9508,13 @@ _LT_EOF
  	allow_undefined_flag='-berok'
          # Determine the default libpath from the value encoded in an
          # empty executable.
@@ -2866,7 +2916,7 @@
  /* end confdefs.h.  */
  
  int
-@@ -9626,22 +10146,29 @@ main ()
+@@ -9011,22 +9527,29 @@ main ()
  _ACEOF
  if ac_fn_c_try_link "$LINENO"; then :
  
@@ -2909,7 +2959,7 @@
  
          hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
          archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
-@@ -9653,7 +10180,13 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9038,7 +9561,13 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  	else
  	 # Determine the default libpath from the value encoded in an
  	 # empty executable.
@@ -2924,7 +2974,7 @@
  /* end confdefs.h.  */
  
  int
-@@ -9666,22 +10199,29 @@ main ()
+@@ -9051,22 +9580,29 @@ main ()
  _ACEOF
  if ac_fn_c_try_link "$LINENO"; then :
  
@@ -2967,7 +3017,7 @@
  
  	 hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
  	  # Warning - without using the other run time loading flags,
-@@ -9726,20 +10266,63 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9111,20 +9647,63 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
        # Microsoft Visual C++.
        # hardcode_libdir_flag_spec is actually meaningless, as there is
        # no search path for DLLs.
@@ -3045,7 +3095,7 @@
        ;;
  
      darwin* | rhapsody*)
-@@ -9800,7 +10383,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9185,7 +9764,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  
      # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
      freebsd* | dragonfly*)
@@ -3054,7 +3104,7 @@
        hardcode_libdir_flag_spec='-R$libdir'
        hardcode_direct=yes
        hardcode_shlibpath_var=no
-@@ -9808,7 +10391,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9193,7 +9772,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  
      hpux9*)
        if test "$GCC" = yes; then
@@ -3063,7 +3113,7 @@
        else
  	archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
        fi
-@@ -9824,7 +10407,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9209,7 +9788,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  
      hpux10*)
        if test "$GCC" = yes && test "$with_gnu_ld" = no; then
@@ -3072,7 +3122,7 @@
        else
  	archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
        fi
-@@ -9848,10 +10431,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9233,10 +9812,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  	  archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
  	  ;;
  	ia64*)
@@ -3085,7 +3135,7 @@
  	  ;;
  	esac
        else
-@@ -9930,23 +10513,36 @@ fi
+@@ -9315,23 +9894,36 @@ fi
  
      irix5* | irix6* | nonstopux*)
        if test "$GCC" = yes; then
@@ -3130,7 +3180,7 @@
        else
  	archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
  	archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
-@@ -10031,7 +10627,7 @@ rm -f core conftest.err conftest.$ac_objext \
+@@ -9416,7 +10008,7 @@ rm -f core conftest.err conftest.$ac_objext \
      osf4* | osf5*)	# as osf3* with the addition of -msym flag
        if test "$GCC" = yes; then
  	allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
@@ -3139,7 +3189,7 @@
  	hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
        else
  	allow_undefined_flag=' -expect_unresolved \*'
-@@ -10050,9 +10646,9 @@ rm -f core conftest.err conftest.$ac_objext \
+@@ -9435,9 +10027,9 @@ rm -f core conftest.err conftest.$ac_objext \
        no_undefined_flag=' -z defs'
        if test "$GCC" = yes; then
  	wlarc='${wl}'
@@ -3151,7 +3201,7 @@
        else
  	case `$CC -V 2>&1` in
  	*"Compilers 5.0"*)
-@@ -10628,8 +11224,9 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -10013,8 +10605,9 @@ cygwin* | mingw* | pw32* | cegcc*)
    need_version=no
    need_lib_prefix=no
  
@@ -3163,7 +3213,7 @@
      library_names_spec='$libname.dll.a'
      # DLL is installed to $(libdir)/../bin by postinstall_cmds
      postinstall_cmds='base_file=`basename \${file}`~
-@@ -10662,13 +11259,71 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -10047,13 +10640,71 @@ cygwin* | mingw* | pw32* | cegcc*)
        library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
        ;;
      esac
@@ -3236,7 +3286,7 @@
    # FIXME: first we should search . and the directory the executable is in
    shlibpath_var=PATH
    ;;
-@@ -10750,7 +11405,7 @@ haiku*)
+@@ -10135,7 +10786,7 @@ haiku*)
    soname_spec='${libname}${release}${shared_ext}$major'
    shlibpath_var=LIBRARY_PATH
    shlibpath_overrides_runpath=yes
@@ -3245,16 +3295,16 @@
    hardcode_into_libs=yes
    ;;
  
-@@ -11546,7 +12201,7 @@ else
+@@ -10931,7 +11582,7 @@ else
    lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
    lt_status=$lt_dlunknown
    cat > conftest.$ac_ext <<_LT_EOF
--#line 11549 "configure"
+-#line 10934 "configure"
 +#line $LINENO "configure"
  #include "confdefs.h"
  
  #if HAVE_DLFCN_H
-@@ -11590,10 +12245,10 @@ else
+@@ -10975,10 +11626,10 @@ else
  /* When -fvisbility=hidden is used, assume the code has been annotated
     correspondingly for the symbols needed.  */
  #if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
@@ -3267,16 +3317,16 @@
  int main ()
  {
    void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-@@ -11652,7 +12307,7 @@ else
+@@ -11037,7 +11688,7 @@ else
    lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
    lt_status=$lt_dlunknown
    cat > conftest.$ac_ext <<_LT_EOF
--#line 11655 "configure"
+-#line 11040 "configure"
 +#line $LINENO "configure"
  #include "confdefs.h"
  
  #if HAVE_DLFCN_H
-@@ -11696,10 +12351,10 @@ else
+@@ -11081,10 +11732,10 @@ else
  /* When -fvisbility=hidden is used, assume the code has been annotated
     correspondingly for the symbols needed.  */
  #if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
@@ -3289,7 +3339,7 @@
  int main ()
  {
    void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-@@ -16308,13 +16963,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'
+@@ -15455,13 +16106,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'
  lt_unset='`$ECHO "$lt_unset" | $SED "$delay_single_quote_subst"`'
  lt_SP2NL='`$ECHO "$lt_SP2NL" | $SED "$delay_single_quote_subst"`'
  lt_NL2SP='`$ECHO "$lt_NL2SP" | $SED "$delay_single_quote_subst"`'
@@ -3310,7 +3360,7 @@
  STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`'
  RANLIB='`$ECHO "$RANLIB" | $SED "$delay_single_quote_subst"`'
  old_postinstall_cmds='`$ECHO "$old_postinstall_cmds" | $SED "$delay_single_quote_subst"`'
-@@ -16329,14 +16991,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$de
+@@ -15476,14 +16134,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$de
  lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`'
  lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`'
  lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`'
@@ -3329,7 +3379,7 @@
  DSYMUTIL='`$ECHO "$DSYMUTIL" | $SED "$delay_single_quote_subst"`'
  NMEDIT='`$ECHO "$NMEDIT" | $SED "$delay_single_quote_subst"`'
  LIPO='`$ECHO "$LIPO" | $SED "$delay_single_quote_subst"`'
-@@ -16369,12 +17034,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_q
+@@ -15516,12 +16177,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_q
  hardcode_automatic='`$ECHO "$hardcode_automatic" | $SED "$delay_single_quote_subst"`'
  inherit_rpath='`$ECHO "$inherit_rpath" | $SED "$delay_single_quote_subst"`'
  link_all_deplibs='`$ECHO "$link_all_deplibs" | $SED "$delay_single_quote_subst"`'
@@ -3343,7 +3393,7 @@
  file_list_spec='`$ECHO "$file_list_spec" | $SED "$delay_single_quote_subst"`'
  variables_saved_for_relink='`$ECHO "$variables_saved_for_relink" | $SED "$delay_single_quote_subst"`'
  need_lib_prefix='`$ECHO "$need_lib_prefix" | $SED "$delay_single_quote_subst"`'
-@@ -16429,8 +17094,13 @@ reload_flag \
+@@ -15576,8 +16237,13 @@ reload_flag \
  OBJDUMP \
  deplibs_check_method \
  file_magic_cmd \
@@ -3357,7 +3407,7 @@
  STRIP \
  RANLIB \
  CC \
-@@ -16440,12 +17110,14 @@ lt_cv_sys_global_symbol_pipe \
+@@ -15587,12 +16253,14 @@ lt_cv_sys_global_symbol_pipe \
  lt_cv_sys_global_symbol_to_cdecl \
  lt_cv_sys_global_symbol_to_c_name_address \
  lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \
@@ -3373,7 +3423,7 @@
  DSYMUTIL \
  NMEDIT \
  LIPO \
-@@ -16461,7 +17133,6 @@ no_undefined_flag \
+@@ -15608,7 +16276,6 @@ no_undefined_flag \
  hardcode_libdir_flag_spec \
  hardcode_libdir_flag_spec_ld \
  hardcode_libdir_separator \
@@ -3381,7 +3431,7 @@
  exclude_expsyms \
  include_expsyms \
  file_list_spec \
-@@ -16497,6 +17168,7 @@ module_cmds \
+@@ -15644,6 +16311,7 @@ module_cmds \
  module_expsym_cmds \
  export_symbols_cmds \
  prelink_cmds \
@@ -3389,7 +3439,7 @@
  postinstall_cmds \
  postuninstall_cmds \
  finish_cmds \
-@@ -17263,7 +17935,8 @@ $as_echo X"$file" |
+@@ -16410,7 +17078,8 @@ $as_echo X"$file" |
  # NOTE: Changes made to this file will be lost: look at ltmain.sh.
  #
  #   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
@@ -3399,7 +3449,7 @@
  #   Written by Gordon Matzigkeit, 1996
  #
  #   This file is part of GNU Libtool.
-@@ -17366,19 +18039,42 @@ SP2NL=$lt_lt_SP2NL
+@@ -16513,19 +17182,42 @@ SP2NL=$lt_lt_SP2NL
  # turn newlines into spaces.
  NL2SP=$lt_lt_NL2SP
  
@@ -3443,7 +3493,7 @@
  # A symbol stripping program.
  STRIP=$lt_STRIP
  
-@@ -17408,6 +18104,12 @@ global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
+@@ -16555,6 +17247,12 @@ global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
  # Transform the output of nm in a C name address pair when lib prefix is needed.
  global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
  
@@ -3456,7 +3506,7 @@
  # The name of the directory that contains temporary libtool files.
  objdir=$objdir
  
-@@ -17417,6 +18119,9 @@ MAGIC_CMD=$MAGIC_CMD
+@@ -16564,6 +17262,9 @@ MAGIC_CMD=$MAGIC_CMD
  # Must we lock files when doing compilation?
  need_locks=$lt_need_locks
  
@@ -3466,7 +3516,7 @@
  # Tool to manipulate archived DWARF debug symbol files on Mac OS X.
  DSYMUTIL=$lt_DSYMUTIL
  
-@@ -17531,12 +18236,12 @@ with_gcc=$GCC
+@@ -16678,12 +17379,12 @@ with_gcc=$GCC
  # Compiler flag to turn off builtin functions.
  no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag
  
@@ -3482,7 +3532,7 @@
  # Compiler flag to prevent dynamic linking.
  link_static_flag=$lt_lt_prog_compiler_static
  
-@@ -17623,9 +18328,6 @@ inherit_rpath=$inherit_rpath
+@@ -16770,9 +17471,6 @@ inherit_rpath=$inherit_rpath
  # Whether libtool must link a program against all its dependency libraries.
  link_all_deplibs=$link_all_deplibs
  
@@ -3492,7 +3542,7 @@
  # Set to "yes" if exported symbols are required.
  always_export_symbols=$always_export_symbols
  
-@@ -17641,6 +18343,9 @@ include_expsyms=$lt_include_expsyms
+@@ -16788,6 +17486,9 @@ include_expsyms=$lt_include_expsyms
  # Commands necessary for linking programs (against libraries) with templates.
  prelink_cmds=$lt_prelink_cmds
  
@@ -3502,7 +3552,7 @@
  # Specify filename containing input files.
  file_list_spec=$lt_file_list_spec
  
-@@ -17673,210 +18378,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
+@@ -16820,210 +17521,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
    # if finds mixed CR/LF and LF-only lines.  Since sed operates in
    # text mode, it properly converts lines to CR/LF.  This bash problem
    # is reportedly fixed, but why not run on old versions too?
@@ -3877,10 +3927,10 @@
    chmod +x "$ofile"
  
 diff --git a/gas/configure b/gas/configure
-index d5ae54925e9..3ff1148d9dd 100755
+index 789d1b38b33..7ac563a13ad 100755
 --- a/gas/configure
 +++ b/gas/configure
-@@ -682,8 +682,11 @@ OTOOL
+@@ -681,8 +681,11 @@ OTOOL
  LIPO
  NMEDIT
  DSYMUTIL
@@ -3892,7 +3942,7 @@
  OBJDUMP
  LN_S
  NM
-@@ -800,6 +803,7 @@ enable_static
+@@ -799,6 +802,7 @@ enable_static
  with_pic
  enable_fast_install
  with_gnu_ld
@@ -3900,7 +3950,7 @@
  enable_libtool_lock
  enable_plugins
  enable_largefile
-@@ -1491,6 +1495,8 @@ Optional Packages:
+@@ -1490,6 +1494,8 @@ Optional Packages:
    --with-pic              try to use only PIC/non-PIC objects [default=use
                            both]
    --with-gnu-ld           assume the C compiler uses GNU ld [default=no]
@@ -3909,7 +3959,7 @@
    --with-cpu=CPU          default cpu variant is CPU (currently only supported
                            on ARC)
    --with-system-zlib      use installed libz
-@@ -5278,8 +5284,8 @@ esac
+@@ -4569,8 +4575,8 @@ esac
  
  
  
@@ -3920,7 +3970,7 @@
  
  
  
-@@ -5319,7 +5325,7 @@ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
+@@ -4610,7 +4616,7 @@ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
  { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5
  $as_echo_n "checking how to print strings... " >&6; }
  # Test print first, because it will be a builtin if present.
@@ -3929,7 +3979,7 @@
     test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
    ECHO='print -r --'
  elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
-@@ -6005,8 +6011,8 @@ $as_echo_n "checking whether the shell understands some XSI constructs... " >&6;
+@@ -5296,8 +5302,8 @@ $as_echo_n "checking whether the shell understands some XSI constructs... " >&6;
  # Try some XSI features
  xsi_shell=no
  ( _lt_dummy="a/b/c"
@@ -3940,7 +3990,7 @@
      && eval 'test $(( 1 + 1 )) -eq 2 \
      && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
    && xsi_shell=yes
-@@ -6055,6 +6061,80 @@ esac
+@@ -5346,6 +5352,80 @@ esac
  
  
  
@@ -4021,7 +4071,7 @@
  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5
  $as_echo_n "checking for $LD option to reload object files... " >&6; }
  if ${lt_cv_ld_reload_flag+:} false; then :
-@@ -6071,6 +6151,11 @@ case $reload_flag in
+@@ -5362,6 +5442,11 @@ case $reload_flag in
  esac
  reload_cmds='$LD$reload_flag -o $output$reload_objs'
  case $host_os in
@@ -4033,7 +4083,7 @@
    darwin*)
      if test "$GCC" = yes; then
        reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
-@@ -6239,7 +6324,8 @@ mingw* | pw32*)
+@@ -5530,7 +5615,8 @@ mingw* | pw32*)
      lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
      lt_cv_file_magic_cmd='func_win32_libid'
    else
@@ -4043,7 +4093,7 @@
      lt_cv_file_magic_cmd='$OBJDUMP -f'
    fi
    ;;
-@@ -6393,6 +6479,21 @@ esac
+@@ -5684,6 +5770,21 @@ esac
  fi
  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5
  $as_echo "$lt_cv_deplibs_check_method" >&6; }
@@ -4065,7 +4115,7 @@
  file_magic_cmd=$lt_cv_file_magic_cmd
  deplibs_check_method=$lt_cv_deplibs_check_method
  test -z "$deplibs_check_method" && deplibs_check_method=unknown
-@@ -6408,9 +6509,162 @@ test -z "$deplibs_check_method" && deplibs_check_method=unknown
+@@ -5699,6 +5800,157 @@ test -z "$deplibs_check_method" && deplibs_check_method=unknown
  
  
  
@@ -4220,6 +4270,12 @@
 +
 +
 +
+ plugin_option=
+ plugin_names="liblto_plugin.so liblto_plugin-0.dll cyglto_plugin-0.dll"
+ for plugin in $plugin_names; do
+@@ -5713,8 +5965,10 @@ for plugin in $plugin_names; do
+ done
+ 
  if test -n "$ac_tool_prefix"; then
 -  # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
 -set dummy ${ac_tool_prefix}ar; ac_word=$2
@@ -4230,7 +4286,7 @@
  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
  $as_echo_n "checking for $ac_word... " >&6; }
  if ${ac_cv_prog_AR+:} false; then :
-@@ -6426,7 +6680,7 @@ do
+@@ -5730,7 +5984,7 @@ do
    test -z "$as_dir" && as_dir=.
      for ac_exec_ext in '' $ac_executable_extensions; do
    if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
@@ -4239,7 +4295,7 @@
      $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
      break 2
    fi
-@@ -6446,11 +6700,15 @@ $as_echo "no" >&6; }
+@@ -5750,11 +6004,15 @@ $as_echo "no" >&6; }
  fi
  
  
@@ -4258,7 +4314,7 @@
  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
  $as_echo_n "checking for $ac_word... " >&6; }
  if ${ac_cv_prog_ac_ct_AR+:} false; then :
-@@ -6466,7 +6724,7 @@ do
+@@ -5770,7 +6028,7 @@ do
    test -z "$as_dir" && as_dir=.
      for ac_exec_ext in '' $ac_executable_extensions; do
    if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
@@ -4267,7 +4323,7 @@
      $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
      break 2
    fi
-@@ -6485,6 +6743,10 @@ else
+@@ -5789,6 +6047,10 @@ else
  $as_echo "no" >&6; }
  fi
  
@@ -4278,7 +4334,7 @@
    if test "x$ac_ct_AR" = x; then
      AR="false"
    else
-@@ -6496,12 +6758,10 @@ ac_tool_warned=yes ;;
+@@ -5800,29 +6062,81 @@ ac_tool_warned=yes ;;
  esac
      AR=$ac_ct_AR
    fi
@@ -4287,16 +4343,40 @@
  fi
  
 -test -z "$AR" && AR=ar
+-if test -n "$plugin_option"; then
+-  if $AR --help 2>&1 | grep -q "\--plugin"; then
+-    touch conftest.c
+-    $AR $plugin_option rc conftest.a conftest.c
+-    if test "$?" != 0; then
+-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Failed: $AR $plugin_option rc" >&5
++  touch conftest.c
++  $AR $plugin_option rc conftest.a conftest.c
++  if test "$?" != 0; then
++    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Failed: $AR $plugin_option rc" >&5
+ $as_echo "$as_me: WARNING: Failed: $AR $plugin_option rc" >&2;}
+-    else
+-      AR="$AR $plugin_option"
+-    fi
+-    rm -f conftest.*
++  else
++    AR="$AR $plugin_option"
+   fi
+-fi
 -test -z "$AR_FLAGS" && AR_FLAGS=cru
++  rm -f conftest.*
 +: ${AR=ar}
 +: ${AR_FLAGS=cru}
- 
- 
- 
-@@ -6513,6 +6773,64 @@ test -z "$AR_FLAGS" && AR_FLAGS=cru
- 
- 
- 
++
++
++
++
++
++
++
++
++
++
++
 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5
 +$as_echo_n "checking for archiver @FILE support... " >&6; }
 +if ${lt_cv_ar_at_file+:} false; then :
@@ -4309,7 +4389,7 @@
 +int
 +main ()
 +{
-+
+ 
 +  ;
 +  return 0;
 +}
@@ -4335,30 +4415,23 @@
 +        fi
 +      fi
 +      rm -f conftest.* libconftest.a
-+
+ 
 +fi
 +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-+
+ 
 +fi
 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5
 +$as_echo "$lt_cv_ar_at_file" >&6; }
-+
+ 
 +if test "x$lt_cv_ar_at_file" = xno; then
 +  archiver_list_spec=
 +else
 +  archiver_list_spec=$lt_cv_ar_at_file
 +fi
-+
-+
-+
-+
-+
-+
-+
- if test -n "$ac_tool_prefix"; then
-   # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
- set dummy ${ac_tool_prefix}strip; ac_word=$2
-@@ -6847,8 +7165,8 @@ esac
+ 
+ 
+ 
+@@ -6169,8 +6483,8 @@ esac
  lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
  
  # Transform an extracted symbol line into symbol name and symbol address
@@ -4369,7 +4442,7 @@
  
  # Handle CRLF in mingw tool chain
  opt_cr=
-@@ -6884,6 +7202,7 @@ for ac_symprfx in "" "_"; do
+@@ -6206,6 +6520,7 @@ for ac_symprfx in "" "_"; do
    else
      lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[	 ]\($symcode$symcode*\)[	 ][	 ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
    fi
@@ -4377,7 +4450,7 @@
  
    # Check to see that the pipe works correctly.
    pipe_works=no
-@@ -6925,6 +7244,18 @@ _LT_EOF
+@@ -6247,6 +6562,18 @@ _LT_EOF
        if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
  	if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
  	  cat <<_LT_EOF > conftest.$ac_ext
@@ -4396,7 +4469,7 @@
  #ifdef __cplusplus
  extern "C" {
  #endif
-@@ -6936,7 +7267,7 @@ _LT_EOF
+@@ -6258,7 +6585,7 @@ _LT_EOF
  	  cat <<_LT_EOF >> conftest.$ac_ext
  
  /* The mapping between symbol names and symbols.  */
@@ -4405,7 +4478,7 @@
    const char *name;
    void       *address;
  }
-@@ -6962,8 +7293,8 @@ static const void *lt_preloaded_setup() {
+@@ -6284,8 +6611,8 @@ static const void *lt_preloaded_setup() {
  _LT_EOF
  	  # Now try linking the two files.
  	  mv conftest.$ac_objext conftstm.$ac_objext
@@ -4416,7 +4489,7 @@
  	  LIBS="conftstm.$ac_objext"
  	  CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag"
  	  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
-@@ -6973,8 +7304,8 @@ _LT_EOF
+@@ -6295,8 +6622,8 @@ _LT_EOF
    test $ac_status = 0; } && test -s conftest${ac_exeext}; then
  	    pipe_works=yes
  	  fi
@@ -4427,7 +4500,7 @@
  	else
  	  echo "cannot find nm_test_func in $nlist" >&5
  	fi
-@@ -7011,6 +7342,21 @@ else
+@@ -6333,6 +6660,19 @@ else
  $as_echo "ok" >&6; }
  fi
  
@@ -4444,15 +4517,15 @@
 +
 +
 +
+ 
+ 
+ 
+@@ -6349,6 +6689,42 @@ fi
+ 
+ 
+ 
 +
 +
- 
- 
- 
-@@ -7027,6 +7373,40 @@ fi
- 
- 
- 
 +
 +
 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5
@@ -4490,7 +4563,7 @@
  
  
  
-@@ -7238,6 +7618,123 @@ esac
+@@ -6560,6 +6936,123 @@ esac
  
  need_locks="$enable_libtool_lock"
  
@@ -4614,7 +4687,7 @@
  
    case $host_os in
      rhapsody* | darwin*)
-@@ -7801,6 +8298,8 @@ _LT_EOF
+@@ -7123,6 +7616,8 @@ _LT_EOF
        $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5
        echo "$AR cru libconftest.a conftest.o" >&5
        $AR cru libconftest.a conftest.o 2>&5
@@ -4623,7 +4696,7 @@
        cat > conftest.c << _LT_EOF
  int main() { return 0;}
  _LT_EOF
-@@ -7996,7 +8495,8 @@ fi
+@@ -7318,7 +7813,8 @@ fi
  LIBTOOL_DEPS="$ltmain"
  
  # Always use our own libtool.
@@ -4633,7 +4706,7 @@
  
  
  
-@@ -8085,7 +8585,7 @@ aix3*)
+@@ -7407,7 +7903,7 @@ aix3*)
  esac
  
  # Global variables:
@@ -4642,7 +4715,7 @@
  can_build_shared=yes
  
  # All known linkers require a `.a' archive for static linking (except MSVC,
-@@ -8383,8 +8883,6 @@ fi
+@@ -7705,8 +8201,6 @@ fi
  lt_prog_compiler_pic=
  lt_prog_compiler_static=
  
@@ -4651,7 +4724,7 @@
  
    if test "$GCC" = yes; then
      lt_prog_compiler_wl='-Wl,'
-@@ -8550,6 +9048,12 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -7872,6 +8366,12 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
  	lt_prog_compiler_pic='--shared'
  	lt_prog_compiler_static='--static'
  	;;
@@ -4664,7 +4737,7 @@
        pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
          # Portland Group compilers (*not* the Pentium gcc compiler,
  	# which looks to be a dead project)
-@@ -8612,7 +9116,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -7934,7 +8434,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
        lt_prog_compiler_pic='-KPIC'
        lt_prog_compiler_static='-Bstatic'
        case $cc_basename in
@@ -4673,7 +4746,7 @@
  	lt_prog_compiler_wl='-Qoption ld ';;
        *)
  	lt_prog_compiler_wl='-Wl,';;
-@@ -8669,13 +9173,17 @@ case $host_os in
+@@ -7991,13 +8491,17 @@ case $host_os in
      lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC"
      ;;
  esac
@@ -4697,7 +4770,7 @@
  
  #
  # Check to make sure the PIC flag actually works.
-@@ -8736,6 +9244,11 @@ fi
+@@ -8058,6 +8562,11 @@ fi
  
  
  
@@ -4709,7 +4782,7 @@
  #
  # Check to make sure the static flag actually works.
  #
-@@ -9086,7 +9599,8 @@ _LT_EOF
+@@ -8408,7 +8917,8 @@ _LT_EOF
        allow_undefined_flag=unsupported
        always_export_symbols=no
        enable_shared_with_static_runtimes=yes
@@ -4719,7 +4792,7 @@
  
        if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
          archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
-@@ -9185,12 +9699,12 @@ _LT_EOF
+@@ -8507,12 +9017,12 @@ _LT_EOF
  	  whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'
  	  hardcode_libdir_flag_spec=
  	  hardcode_libdir_flag_spec_ld='-rpath $libdir'
@@ -4734,7 +4807,7 @@
  	  fi
  	  ;;
  	esac
-@@ -9204,8 +9718,8 @@ _LT_EOF
+@@ -8526,8 +9036,8 @@ _LT_EOF
  	archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
  	wlarc=
        else
@@ -4745,7 +4818,7 @@
        fi
        ;;
  
-@@ -9223,8 +9737,8 @@ _LT_EOF
+@@ -8545,8 +9055,8 @@ _LT_EOF
  
  _LT_EOF
        elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
@@ -4756,7 +4829,7 @@
        else
  	ld_shlibs=no
        fi
-@@ -9270,8 +9784,8 @@ _LT_EOF
+@@ -8592,8 +9102,8 @@ _LT_EOF
  
      *)
        if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
@@ -4767,7 +4840,7 @@
        else
  	ld_shlibs=no
        fi
-@@ -9401,7 +9915,13 @@ _LT_EOF
+@@ -8723,7 +9233,13 @@ _LT_EOF
  	allow_undefined_flag='-berok'
          # Determine the default libpath from the value encoded in an
          # empty executable.
@@ -4782,7 +4855,7 @@
  /* end confdefs.h.  */
  
  int
-@@ -9414,22 +9934,29 @@ main ()
+@@ -8736,22 +9252,29 @@ main ()
  _ACEOF
  if ac_fn_c_try_link "$LINENO"; then :
  
@@ -4825,7 +4898,7 @@
  
          hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
          archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
-@@ -9441,7 +9968,13 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -8763,7 +9286,13 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  	else
  	 # Determine the default libpath from the value encoded in an
  	 # empty executable.
@@ -4840,7 +4913,7 @@
  /* end confdefs.h.  */
  
  int
-@@ -9454,22 +9987,29 @@ main ()
+@@ -8776,22 +9305,29 @@ main ()
  _ACEOF
  if ac_fn_c_try_link "$LINENO"; then :
  
@@ -4883,7 +4956,7 @@
  
  	 hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
  	  # Warning - without using the other run time loading flags,
-@@ -9514,20 +10054,63 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -8836,20 +9372,63 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
        # Microsoft Visual C++.
        # hardcode_libdir_flag_spec is actually meaningless, as there is
        # no search path for DLLs.
@@ -4961,7 +5034,7 @@
        ;;
  
      darwin* | rhapsody*)
-@@ -9588,7 +10171,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -8910,7 +9489,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  
      # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
      freebsd* | dragonfly*)
@@ -4970,7 +5043,7 @@
        hardcode_libdir_flag_spec='-R$libdir'
        hardcode_direct=yes
        hardcode_shlibpath_var=no
-@@ -9596,7 +10179,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -8918,7 +9497,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  
      hpux9*)
        if test "$GCC" = yes; then
@@ -4979,7 +5052,7 @@
        else
  	archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
        fi
-@@ -9612,7 +10195,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -8934,7 +9513,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  
      hpux10*)
        if test "$GCC" = yes && test "$with_gnu_ld" = no; then
@@ -4988,7 +5061,7 @@
        else
  	archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
        fi
-@@ -9636,10 +10219,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -8958,10 +9537,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  	  archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
  	  ;;
  	ia64*)
@@ -5001,7 +5074,7 @@
  	  ;;
  	esac
        else
-@@ -9718,23 +10301,36 @@ fi
+@@ -9040,23 +9619,36 @@ fi
  
      irix5* | irix6* | nonstopux*)
        if test "$GCC" = yes; then
@@ -5046,7 +5119,7 @@
        else
  	archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
  	archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
-@@ -9819,7 +10415,7 @@ rm -f core conftest.err conftest.$ac_objext \
+@@ -9141,7 +9733,7 @@ rm -f core conftest.err conftest.$ac_objext \
      osf4* | osf5*)	# as osf3* with the addition of -msym flag
        if test "$GCC" = yes; then
  	allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
@@ -5055,7 +5128,7 @@
  	hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
        else
  	allow_undefined_flag=' -expect_unresolved \*'
-@@ -9838,9 +10434,9 @@ rm -f core conftest.err conftest.$ac_objext \
+@@ -9160,9 +9752,9 @@ rm -f core conftest.err conftest.$ac_objext \
        no_undefined_flag=' -z defs'
        if test "$GCC" = yes; then
  	wlarc='${wl}'
@@ -5067,7 +5140,7 @@
        else
  	case `$CC -V 2>&1` in
  	*"Compilers 5.0"*)
-@@ -10416,8 +11012,9 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -9738,8 +10330,9 @@ cygwin* | mingw* | pw32* | cegcc*)
    need_version=no
    need_lib_prefix=no
  
@@ -5079,7 +5152,7 @@
      library_names_spec='$libname.dll.a'
      # DLL is installed to $(libdir)/../bin by postinstall_cmds
      postinstall_cmds='base_file=`basename \${file}`~
-@@ -10450,13 +11047,71 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -9772,13 +10365,71 @@ cygwin* | mingw* | pw32* | cegcc*)
        library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
        ;;
      esac
@@ -5152,7 +5225,7 @@
    # FIXME: first we should search . and the directory the executable is in
    shlibpath_var=PATH
    ;;
-@@ -10538,7 +11193,7 @@ haiku*)
+@@ -9860,7 +10511,7 @@ haiku*)
    soname_spec='${libname}${release}${shared_ext}$major'
    shlibpath_var=LIBRARY_PATH
    shlibpath_overrides_runpath=yes
@@ -5161,16 +5234,16 @@
    hardcode_into_libs=yes
    ;;
  
-@@ -11334,7 +11989,7 @@ else
+@@ -10656,7 +11307,7 @@ else
    lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
    lt_status=$lt_dlunknown
    cat > conftest.$ac_ext <<_LT_EOF
--#line 11337 "configure"
+-#line 10659 "configure"
 +#line $LINENO "configure"
  #include "confdefs.h"
  
  #if HAVE_DLFCN_H
-@@ -11378,10 +12033,10 @@ else
+@@ -10700,10 +11351,10 @@ else
  /* When -fvisbility=hidden is used, assume the code has been annotated
     correspondingly for the symbols needed.  */
  #if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
@@ -5183,16 +5256,16 @@
  int main ()
  {
    void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-@@ -11440,7 +12095,7 @@ else
+@@ -10762,7 +11413,7 @@ else
    lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
    lt_status=$lt_dlunknown
    cat > conftest.$ac_ext <<_LT_EOF
--#line 11443 "configure"
+-#line 10765 "configure"
 +#line $LINENO "configure"
  #include "confdefs.h"
  
  #if HAVE_DLFCN_H
-@@ -11484,10 +12139,10 @@ else
+@@ -10806,10 +11457,10 @@ else
  /* When -fvisbility=hidden is used, assume the code has been annotated
     correspondingly for the symbols needed.  */
  #if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
@@ -5205,7 +5278,7 @@
  int main ()
  {
    void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-@@ -16020,13 +16675,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'
+@@ -14785,13 +15436,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'
  lt_unset='`$ECHO "$lt_unset" | $SED "$delay_single_quote_subst"`'
  lt_SP2NL='`$ECHO "$lt_SP2NL" | $SED "$delay_single_quote_subst"`'
  lt_NL2SP='`$ECHO "$lt_NL2SP" | $SED "$delay_single_quote_subst"`'
@@ -5226,7 +5299,7 @@
  STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`'
  RANLIB='`$ECHO "$RANLIB" | $SED "$delay_single_quote_subst"`'
  old_postinstall_cmds='`$ECHO "$old_postinstall_cmds" | $SED "$delay_single_quote_subst"`'
-@@ -16041,14 +16703,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$de
+@@ -14806,14 +15464,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$de
  lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`'
  lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`'
  lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`'
@@ -5245,7 +5318,7 @@
  DSYMUTIL='`$ECHO "$DSYMUTIL" | $SED "$delay_single_quote_subst"`'
  NMEDIT='`$ECHO "$NMEDIT" | $SED "$delay_single_quote_subst"`'
  LIPO='`$ECHO "$LIPO" | $SED "$delay_single_quote_subst"`'
-@@ -16081,12 +16746,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_q
+@@ -14846,12 +15507,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_q
  hardcode_automatic='`$ECHO "$hardcode_automatic" | $SED "$delay_single_quote_subst"`'
  inherit_rpath='`$ECHO "$inherit_rpath" | $SED "$delay_single_quote_subst"`'
  link_all_deplibs='`$ECHO "$link_all_deplibs" | $SED "$delay_single_quote_subst"`'
@@ -5259,7 +5332,7 @@
  file_list_spec='`$ECHO "$file_list_spec" | $SED "$delay_single_quote_subst"`'
  variables_saved_for_relink='`$ECHO "$variables_saved_for_relink" | $SED "$delay_single_quote_subst"`'
  need_lib_prefix='`$ECHO "$need_lib_prefix" | $SED "$delay_single_quote_subst"`'
-@@ -16141,8 +16806,13 @@ reload_flag \
+@@ -14906,8 +15567,13 @@ reload_flag \
  OBJDUMP \
  deplibs_check_method \
  file_magic_cmd \
@@ -5273,7 +5346,7 @@
  STRIP \
  RANLIB \
  CC \
-@@ -16152,12 +16822,14 @@ lt_cv_sys_global_symbol_pipe \
+@@ -14917,12 +15583,14 @@ lt_cv_sys_global_symbol_pipe \
  lt_cv_sys_global_symbol_to_cdecl \
  lt_cv_sys_global_symbol_to_c_name_address \
  lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \
@@ -5289,7 +5362,7 @@
  DSYMUTIL \
  NMEDIT \
  LIPO \
-@@ -16173,7 +16845,6 @@ no_undefined_flag \
+@@ -14938,7 +15606,6 @@ no_undefined_flag \
  hardcode_libdir_flag_spec \
  hardcode_libdir_flag_spec_ld \
  hardcode_libdir_separator \
@@ -5297,7 +5370,7 @@
  exclude_expsyms \
  include_expsyms \
  file_list_spec \
-@@ -16209,6 +16880,7 @@ module_cmds \
+@@ -14974,6 +15641,7 @@ module_cmds \
  module_expsym_cmds \
  export_symbols_cmds \
  prelink_cmds \
@@ -5305,7 +5378,7 @@
  postinstall_cmds \
  postuninstall_cmds \
  finish_cmds \
-@@ -16982,7 +17654,8 @@ $as_echo X"$file" |
+@@ -15747,7 +16415,8 @@ $as_echo X"$file" |
  # NOTE: Changes made to this file will be lost: look at ltmain.sh.
  #
  #   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
@@ -5315,7 +5388,7 @@
  #   Written by Gordon Matzigkeit, 1996
  #
  #   This file is part of GNU Libtool.
-@@ -17085,19 +17758,42 @@ SP2NL=$lt_lt_SP2NL
+@@ -15850,19 +16519,42 @@ SP2NL=$lt_lt_SP2NL
  # turn newlines into spaces.
  NL2SP=$lt_lt_NL2SP
  
@@ -5359,7 +5432,7 @@
  # A symbol stripping program.
  STRIP=$lt_STRIP
  
-@@ -17127,6 +17823,12 @@ global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
+@@ -15892,6 +16584,12 @@ global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
  # Transform the output of nm in a C name address pair when lib prefix is needed.
  global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
  
@@ -5372,7 +5445,7 @@
  # The name of the directory that contains temporary libtool files.
  objdir=$objdir
  
-@@ -17136,6 +17838,9 @@ MAGIC_CMD=$MAGIC_CMD
+@@ -15901,6 +16599,9 @@ MAGIC_CMD=$MAGIC_CMD
  # Must we lock files when doing compilation?
  need_locks=$lt_need_locks
  
@@ -5382,7 +5455,7 @@
  # Tool to manipulate archived DWARF debug symbol files on Mac OS X.
  DSYMUTIL=$lt_DSYMUTIL
  
-@@ -17250,12 +17955,12 @@ with_gcc=$GCC
+@@ -16015,12 +16716,12 @@ with_gcc=$GCC
  # Compiler flag to turn off builtin functions.
  no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag
  
@@ -5398,7 +5471,7 @@
  # Compiler flag to prevent dynamic linking.
  link_static_flag=$lt_lt_prog_compiler_static
  
-@@ -17342,9 +18047,6 @@ inherit_rpath=$inherit_rpath
+@@ -16107,9 +16808,6 @@ inherit_rpath=$inherit_rpath
  # Whether libtool must link a program against all its dependency libraries.
  link_all_deplibs=$link_all_deplibs
  
@@ -5408,7 +5481,7 @@
  # Set to "yes" if exported symbols are required.
  always_export_symbols=$always_export_symbols
  
-@@ -17360,6 +18062,9 @@ include_expsyms=$lt_include_expsyms
+@@ -16125,6 +16823,9 @@ include_expsyms=$lt_include_expsyms
  # Commands necessary for linking programs (against libraries) with templates.
  prelink_cmds=$lt_prelink_cmds
  
@@ -5418,7 +5491,7 @@
  # Specify filename containing input files.
  file_list_spec=$lt_file_list_spec
  
-@@ -17392,210 +18097,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
+@@ -16157,210 +16858,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
    # if finds mixed CR/LF and LF-only lines.  Since sed operates in
    # text mode, it properly converts lines to CR/LF.  This bash problem
    # is reportedly fixed, but why not run on old versions too?
@@ -5793,7 +5866,7 @@
    chmod +x "$ofile"
  
 diff --git a/gprof/configure b/gprof/configure
-index b12ec2e472f..57986ca995a 100755
+index 5703bba4462..e1ac86ec797 100755
 --- a/gprof/configure
 +++ b/gprof/configure
 @@ -663,8 +663,11 @@ OTOOL
@@ -5825,7 +5898,7 @@
  
  Some influential environment variables:
    CC          C compiler command
-@@ -5125,8 +5131,8 @@ esac
+@@ -4471,8 +4477,8 @@ esac
  
  
  
@@ -5836,7 +5909,7 @@
  
  
  
-@@ -5166,7 +5172,7 @@ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
+@@ -4512,7 +4518,7 @@ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
  { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5
  $as_echo_n "checking how to print strings... " >&6; }
  # Test print first, because it will be a builtin if present.
@@ -5845,7 +5918,7 @@
     test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
    ECHO='print -r --'
  elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
-@@ -5852,8 +5858,8 @@ $as_echo_n "checking whether the shell understands some XSI constructs... " >&6;
+@@ -5198,8 +5204,8 @@ $as_echo_n "checking whether the shell understands some XSI constructs... " >&6;
  # Try some XSI features
  xsi_shell=no
  ( _lt_dummy="a/b/c"
@@ -5856,7 +5929,7 @@
      && eval 'test $(( 1 + 1 )) -eq 2 \
      && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
    && xsi_shell=yes
-@@ -5902,6 +5908,80 @@ esac
+@@ -5248,6 +5254,80 @@ esac
  
  
  
@@ -5937,7 +6010,7 @@
  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5
  $as_echo_n "checking for $LD option to reload object files... " >&6; }
  if ${lt_cv_ld_reload_flag+:} false; then :
-@@ -5918,6 +5998,11 @@ case $reload_flag in
+@@ -5264,6 +5344,11 @@ case $reload_flag in
  esac
  reload_cmds='$LD$reload_flag -o $output$reload_objs'
  case $host_os in
@@ -5949,7 +6022,7 @@
    darwin*)
      if test "$GCC" = yes; then
        reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
-@@ -6086,7 +6171,8 @@ mingw* | pw32*)
+@@ -5432,7 +5517,8 @@ mingw* | pw32*)
      lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
      lt_cv_file_magic_cmd='func_win32_libid'
    else
@@ -5959,7 +6032,7 @@
      lt_cv_file_magic_cmd='$OBJDUMP -f'
    fi
    ;;
-@@ -6240,6 +6326,21 @@ esac
+@@ -5586,6 +5672,21 @@ esac
  fi
  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5
  $as_echo "$lt_cv_deplibs_check_method" >&6; }
@@ -5981,7 +6054,7 @@
  file_magic_cmd=$lt_cv_file_magic_cmd
  deplibs_check_method=$lt_cv_deplibs_check_method
  test -z "$deplibs_check_method" && deplibs_check_method=unknown
-@@ -6253,11 +6354,164 @@ test -z "$deplibs_check_method" && deplibs_check_method=unknown
+@@ -5601,6 +5702,157 @@ test -z "$deplibs_check_method" && deplibs_check_method=unknown
  
  
  
@@ -5995,11 +6068,7 @@
 +
 +
 +
- 
- 
- if test -n "$ac_tool_prefix"; then
--  # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
--set dummy ${ac_tool_prefix}ar; ac_word=$2
++if test -n "$ac_tool_prefix"; then
 +  # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
 +set dummy ${ac_tool_prefix}dlltool; ac_word=$2
 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
@@ -6140,7 +6209,15 @@
 +
 +
 +
-+if test -n "$ac_tool_prefix"; then
+ plugin_option=
+ plugin_names="liblto_plugin.so liblto_plugin-0.dll cyglto_plugin-0.dll"
+ for plugin in $plugin_names; do
+@@ -5615,8 +5867,10 @@ for plugin in $plugin_names; do
+ done
+ 
+ if test -n "$ac_tool_prefix"; then
+-  # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
+-set dummy ${ac_tool_prefix}ar; ac_word=$2
 +  for ac_prog in ar
 +  do
 +    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
@@ -6148,7 +6225,7 @@
  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
  $as_echo_n "checking for $ac_word... " >&6; }
  if ${ac_cv_prog_AR+:} false; then :
-@@ -6273,7 +6527,7 @@ do
+@@ -5632,7 +5886,7 @@ do
    test -z "$as_dir" && as_dir=.
      for ac_exec_ext in '' $ac_executable_extensions; do
    if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
@@ -6157,7 +6234,7 @@
      $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
      break 2
    fi
-@@ -6293,11 +6547,15 @@ $as_echo "no" >&6; }
+@@ -5652,11 +5906,15 @@ $as_echo "no" >&6; }
  fi
  
  
@@ -6176,7 +6253,7 @@
  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
  $as_echo_n "checking for $ac_word... " >&6; }
  if ${ac_cv_prog_ac_ct_AR+:} false; then :
-@@ -6313,7 +6571,7 @@ do
+@@ -5672,7 +5930,7 @@ do
    test -z "$as_dir" && as_dir=.
      for ac_exec_ext in '' $ac_executable_extensions; do
    if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
@@ -6185,7 +6262,7 @@
      $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
      break 2
    fi
-@@ -6332,6 +6590,10 @@ else
+@@ -5691,6 +5949,10 @@ else
  $as_echo "no" >&6; }
  fi
  
@@ -6196,7 +6273,7 @@
    if test "x$ac_ct_AR" = x; then
      AR="false"
    else
-@@ -6343,16 +6605,72 @@ ac_tool_warned=yes ;;
+@@ -5702,25 +5964,19 @@ ac_tool_warned=yes ;;
  esac
      AR=$ac_ct_AR
    fi
@@ -6205,20 +6282,36 @@
  fi
  
 -test -z "$AR" && AR=ar
+-if test -n "$plugin_option"; then
+-  if $AR --help 2>&1 | grep -q "\--plugin"; then
+-    touch conftest.c
+-    $AR $plugin_option rc conftest.a conftest.c
+-    if test "$?" != 0; then
+-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Failed: $AR $plugin_option rc" >&5
++  touch conftest.c
++  $AR $plugin_option rc conftest.a conftest.c
++  if test "$?" != 0; then
++    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Failed: $AR $plugin_option rc" >&5
+ $as_echo "$as_me: WARNING: Failed: $AR $plugin_option rc" >&2;}
+-    else
+-      AR="$AR $plugin_option"
+-    fi
+-    rm -f conftest.*
++  else
++    AR="$AR $plugin_option"
+   fi
+-fi
 -test -z "$AR_FLAGS" && AR_FLAGS=cru
++  rm -f conftest.*
 +: ${AR=ar}
 +: ${AR_FLAGS=cru}
-+
-+
-+
-+
-+
-+
-+
-+
-+
-+
-+
+ 
+ 
+ 
+@@ -5732,6 +5988,64 @@ test -z "$AR_FLAGS" && AR_FLAGS=cru
+ 
+ 
+ 
 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5
 +$as_echo_n "checking for archiver @FILE support... " >&6; }
 +if ${lt_cv_ar_at_file+:} false; then :
@@ -6231,7 +6324,7 @@
 +int
 +main ()
 +{
- 
++
 +  ;
 +  return 0;
 +}
@@ -6257,23 +6350,30 @@
 +        fi
 +      fi
 +      rm -f conftest.* libconftest.a
- 
++
 +fi
 +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- 
++
 +fi
 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5
 +$as_echo "$lt_cv_ar_at_file" >&6; }
- 
++
 +if test "x$lt_cv_ar_at_file" = xno; then
 +  archiver_list_spec=
 +else
 +  archiver_list_spec=$lt_cv_ar_at_file
 +fi
- 
- 
- 
-@@ -6694,8 +7012,8 @@ esac
++
++
++
++
++
++
++
+ if test -n "$ac_tool_prefix"; then
+   # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
+ set dummy ${ac_tool_prefix}strip; ac_word=$2
+@@ -6071,8 +6385,8 @@ esac
  lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
  
  # Transform an extracted symbol line into symbol name and symbol address
@@ -6284,7 +6384,7 @@
  
  # Handle CRLF in mingw tool chain
  opt_cr=
-@@ -6731,6 +7049,7 @@ for ac_symprfx in "" "_"; do
+@@ -6108,6 +6422,7 @@ for ac_symprfx in "" "_"; do
    else
      lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[	 ]\($symcode$symcode*\)[	 ][	 ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
    fi
@@ -6292,7 +6392,7 @@
  
    # Check to see that the pipe works correctly.
    pipe_works=no
-@@ -6772,6 +7091,18 @@ _LT_EOF
+@@ -6149,6 +6464,18 @@ _LT_EOF
        if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
  	if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
  	  cat <<_LT_EOF > conftest.$ac_ext
@@ -6311,7 +6411,7 @@
  #ifdef __cplusplus
  extern "C" {
  #endif
-@@ -6783,7 +7114,7 @@ _LT_EOF
+@@ -6160,7 +6487,7 @@ _LT_EOF
  	  cat <<_LT_EOF >> conftest.$ac_ext
  
  /* The mapping between symbol names and symbols.  */
@@ -6320,7 +6420,7 @@
    const char *name;
    void       *address;
  }
-@@ -6809,8 +7140,8 @@ static const void *lt_preloaded_setup() {
+@@ -6186,8 +6513,8 @@ static const void *lt_preloaded_setup() {
  _LT_EOF
  	  # Now try linking the two files.
  	  mv conftest.$ac_objext conftstm.$ac_objext
@@ -6331,7 +6431,7 @@
  	  LIBS="conftstm.$ac_objext"
  	  CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag"
  	  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
-@@ -6820,8 +7151,8 @@ _LT_EOF
+@@ -6197,8 +6524,8 @@ _LT_EOF
    test $ac_status = 0; } && test -s conftest${ac_exeext}; then
  	    pipe_works=yes
  	  fi
@@ -6342,7 +6442,7 @@
  	else
  	  echo "cannot find nm_test_func in $nlist" >&5
  	fi
-@@ -6858,6 +7189,20 @@ else
+@@ -6235,6 +6562,18 @@ else
  $as_echo "ok" >&6; }
  fi
  
@@ -6358,15 +6458,15 @@
 +
 +
 +
+ 
+ 
+ 
+@@ -6251,6 +6590,43 @@ fi
+ 
+ 
+ 
 +
 +
- 
- 
- 
-@@ -6874,6 +7219,41 @@ fi
- 
- 
- 
 +
 +
 +
@@ -6405,7 +6505,7 @@
  
  
  
-@@ -7085,6 +7465,123 @@ esac
+@@ -6462,6 +6838,123 @@ esac
  
  need_locks="$enable_libtool_lock"
  
@@ -6529,7 +6629,7 @@
  
    case $host_os in
      rhapsody* | darwin*)
-@@ -7648,6 +8145,8 @@ _LT_EOF
+@@ -7025,6 +7518,8 @@ _LT_EOF
        $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5
        echo "$AR cru libconftest.a conftest.o" >&5
        $AR cru libconftest.a conftest.o 2>&5
@@ -6538,7 +6638,7 @@
        cat > conftest.c << _LT_EOF
  int main() { return 0;}
  _LT_EOF
-@@ -7843,7 +8342,8 @@ fi
+@@ -7220,7 +7715,8 @@ fi
  LIBTOOL_DEPS="$ltmain"
  
  # Always use our own libtool.
@@ -6548,7 +6648,7 @@
  
  
  
-@@ -7932,7 +8432,7 @@ aix3*)
+@@ -7309,7 +7805,7 @@ aix3*)
  esac
  
  # Global variables:
@@ -6557,7 +6657,7 @@
  can_build_shared=yes
  
  # All known linkers require a `.a' archive for static linking (except MSVC,
-@@ -8230,8 +8730,6 @@ fi
+@@ -7607,8 +8103,6 @@ fi
  lt_prog_compiler_pic=
  lt_prog_compiler_static=
  
@@ -6566,7 +6666,7 @@
  
    if test "$GCC" = yes; then
      lt_prog_compiler_wl='-Wl,'
-@@ -8397,6 +8895,12 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -7774,6 +8268,12 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
  	lt_prog_compiler_pic='--shared'
  	lt_prog_compiler_static='--static'
  	;;
@@ -6579,7 +6679,7 @@
        pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
          # Portland Group compilers (*not* the Pentium gcc compiler,
  	# which looks to be a dead project)
-@@ -8459,7 +8963,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -7836,7 +8336,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
        lt_prog_compiler_pic='-KPIC'
        lt_prog_compiler_static='-Bstatic'
        case $cc_basename in
@@ -6588,7 +6688,7 @@
  	lt_prog_compiler_wl='-Qoption ld ';;
        *)
  	lt_prog_compiler_wl='-Wl,';;
-@@ -8516,13 +9020,17 @@ case $host_os in
+@@ -7893,13 +8393,17 @@ case $host_os in
      lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC"
      ;;
  esac
@@ -6612,7 +6712,7 @@
  
  #
  # Check to make sure the PIC flag actually works.
-@@ -8583,6 +9091,11 @@ fi
+@@ -7960,6 +8464,11 @@ fi
  
  
  
@@ -6624,7 +6724,7 @@
  #
  # Check to make sure the static flag actually works.
  #
-@@ -8933,7 +9446,8 @@ _LT_EOF
+@@ -8310,7 +8819,8 @@ _LT_EOF
        allow_undefined_flag=unsupported
        always_export_symbols=no
        enable_shared_with_static_runtimes=yes
@@ -6634,7 +6734,7 @@
  
        if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
          archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
-@@ -9032,12 +9546,12 @@ _LT_EOF
+@@ -8409,12 +8919,12 @@ _LT_EOF
  	  whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'
  	  hardcode_libdir_flag_spec=
  	  hardcode_libdir_flag_spec_ld='-rpath $libdir'
@@ -6649,7 +6749,7 @@
  	  fi
  	  ;;
  	esac
-@@ -9051,8 +9565,8 @@ _LT_EOF
+@@ -8428,8 +8938,8 @@ _LT_EOF
  	archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
  	wlarc=
        else
@@ -6660,7 +6760,7 @@
        fi
        ;;
  
-@@ -9070,8 +9584,8 @@ _LT_EOF
+@@ -8447,8 +8957,8 @@ _LT_EOF
  
  _LT_EOF
        elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
@@ -6671,7 +6771,7 @@
        else
  	ld_shlibs=no
        fi
-@@ -9117,8 +9631,8 @@ _LT_EOF
+@@ -8494,8 +9004,8 @@ _LT_EOF
  
      *)
        if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
@@ -6682,7 +6782,7 @@
        else
  	ld_shlibs=no
        fi
-@@ -9248,7 +9762,13 @@ _LT_EOF
+@@ -8625,7 +9135,13 @@ _LT_EOF
  	allow_undefined_flag='-berok'
          # Determine the default libpath from the value encoded in an
          # empty executable.
@@ -6697,7 +6797,7 @@
  /* end confdefs.h.  */
  
  int
-@@ -9261,22 +9781,29 @@ main ()
+@@ -8638,22 +9154,29 @@ main ()
  _ACEOF
  if ac_fn_c_try_link "$LINENO"; then :
  
@@ -6740,7 +6840,7 @@
  
          hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
          archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
-@@ -9288,7 +9815,13 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -8665,7 +9188,13 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  	else
  	 # Determine the default libpath from the value encoded in an
  	 # empty executable.
@@ -6755,7 +6855,7 @@
  /* end confdefs.h.  */
  
  int
-@@ -9301,22 +9834,29 @@ main ()
+@@ -8678,22 +9207,29 @@ main ()
  _ACEOF
  if ac_fn_c_try_link "$LINENO"; then :
  
@@ -6798,7 +6898,7 @@
  
  	 hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
  	  # Warning - without using the other run time loading flags,
-@@ -9361,20 +9901,63 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -8738,20 +9274,63 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
        # Microsoft Visual C++.
        # hardcode_libdir_flag_spec is actually meaningless, as there is
        # no search path for DLLs.
@@ -6876,7 +6976,7 @@
        ;;
  
      darwin* | rhapsody*)
-@@ -9435,7 +10018,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -8812,7 +9391,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  
      # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
      freebsd* | dragonfly*)
@@ -6885,7 +6985,7 @@
        hardcode_libdir_flag_spec='-R$libdir'
        hardcode_direct=yes
        hardcode_shlibpath_var=no
-@@ -9443,7 +10026,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -8820,7 +9399,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  
      hpux9*)
        if test "$GCC" = yes; then
@@ -6894,7 +6994,7 @@
        else
  	archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
        fi
-@@ -9459,7 +10042,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -8836,7 +9415,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  
      hpux10*)
        if test "$GCC" = yes && test "$with_gnu_ld" = no; then
@@ -6903,7 +7003,7 @@
        else
  	archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
        fi
-@@ -9483,10 +10066,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -8860,10 +9439,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  	  archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
  	  ;;
  	ia64*)
@@ -6916,7 +7016,7 @@
  	  ;;
  	esac
        else
-@@ -9565,23 +10148,36 @@ fi
+@@ -8942,23 +9521,36 @@ fi
  
      irix5* | irix6* | nonstopux*)
        if test "$GCC" = yes; then
@@ -6961,7 +7061,7 @@
        else
  	archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
  	archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
-@@ -9666,7 +10262,7 @@ rm -f core conftest.err conftest.$ac_objext \
+@@ -9043,7 +9635,7 @@ rm -f core conftest.err conftest.$ac_objext \
      osf4* | osf5*)	# as osf3* with the addition of -msym flag
        if test "$GCC" = yes; then
  	allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
@@ -6970,7 +7070,7 @@
  	hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
        else
  	allow_undefined_flag=' -expect_unresolved \*'
-@@ -9685,9 +10281,9 @@ rm -f core conftest.err conftest.$ac_objext \
+@@ -9062,9 +9654,9 @@ rm -f core conftest.err conftest.$ac_objext \
        no_undefined_flag=' -z defs'
        if test "$GCC" = yes; then
  	wlarc='${wl}'
@@ -6982,7 +7082,7 @@
        else
  	case `$CC -V 2>&1` in
  	*"Compilers 5.0"*)
-@@ -10263,8 +10859,9 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -9640,8 +10232,9 @@ cygwin* | mingw* | pw32* | cegcc*)
    need_version=no
    need_lib_prefix=no
  
@@ -6994,7 +7094,7 @@
      library_names_spec='$libname.dll.a'
      # DLL is installed to $(libdir)/../bin by postinstall_cmds
      postinstall_cmds='base_file=`basename \${file}`~
-@@ -10297,13 +10894,71 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -9674,13 +10267,71 @@ cygwin* | mingw* | pw32* | cegcc*)
        library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
        ;;
      esac
@@ -7067,7 +7167,7 @@
    # FIXME: first we should search . and the directory the executable is in
    shlibpath_var=PATH
    ;;
-@@ -10385,7 +11040,7 @@ haiku*)
+@@ -9762,7 +10413,7 @@ haiku*)
    soname_spec='${libname}${release}${shared_ext}$major'
    shlibpath_var=LIBRARY_PATH
    shlibpath_overrides_runpath=yes
@@ -7076,16 +7176,16 @@
    hardcode_into_libs=yes
    ;;
  
-@@ -11181,7 +11836,7 @@ else
+@@ -10558,7 +11209,7 @@ else
    lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
    lt_status=$lt_dlunknown
    cat > conftest.$ac_ext <<_LT_EOF
--#line 11184 "configure"
+-#line 10561 "configure"
 +#line $LINENO "configure"
  #include "confdefs.h"
  
  #if HAVE_DLFCN_H
-@@ -11225,10 +11880,10 @@ else
+@@ -10602,10 +11253,10 @@ else
  /* When -fvisbility=hidden is used, assume the code has been annotated
     correspondingly for the symbols needed.  */
  #if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
@@ -7098,16 +7198,16 @@
  int main ()
  {
    void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-@@ -11287,7 +11942,7 @@ else
+@@ -10664,7 +11315,7 @@ else
    lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
    lt_status=$lt_dlunknown
    cat > conftest.$ac_ext <<_LT_EOF
--#line 11290 "configure"
+-#line 10667 "configure"
 +#line $LINENO "configure"
  #include "confdefs.h"
  
  #if HAVE_DLFCN_H
-@@ -11331,10 +11986,10 @@ else
+@@ -10708,10 +11359,10 @@ else
  /* When -fvisbility=hidden is used, assume the code has been annotated
     correspondingly for the symbols needed.  */
  #if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
@@ -7120,7 +7220,7 @@
  int main ()
  {
    void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-@@ -13341,13 +13996,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'
+@@ -12731,13 +13382,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'
  lt_unset='`$ECHO "$lt_unset" | $SED "$delay_single_quote_subst"`'
  lt_SP2NL='`$ECHO "$lt_SP2NL" | $SED "$delay_single_quote_subst"`'
  lt_NL2SP='`$ECHO "$lt_NL2SP" | $SED "$delay_single_quote_subst"`'
@@ -7141,7 +7241,7 @@
  STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`'
  RANLIB='`$ECHO "$RANLIB" | $SED "$delay_single_quote_subst"`'
  old_postinstall_cmds='`$ECHO "$old_postinstall_cmds" | $SED "$delay_single_quote_subst"`'
-@@ -13362,14 +14024,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$de
+@@ -12752,14 +13410,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$de
  lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`'
  lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`'
  lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`'
@@ -7160,7 +7260,7 @@
  DSYMUTIL='`$ECHO "$DSYMUTIL" | $SED "$delay_single_quote_subst"`'
  NMEDIT='`$ECHO "$NMEDIT" | $SED "$delay_single_quote_subst"`'
  LIPO='`$ECHO "$LIPO" | $SED "$delay_single_quote_subst"`'
-@@ -13402,12 +14067,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_q
+@@ -12792,12 +13453,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_q
  hardcode_automatic='`$ECHO "$hardcode_automatic" | $SED "$delay_single_quote_subst"`'
  inherit_rpath='`$ECHO "$inherit_rpath" | $SED "$delay_single_quote_subst"`'
  link_all_deplibs='`$ECHO "$link_all_deplibs" | $SED "$delay_single_quote_subst"`'
@@ -7174,7 +7274,7 @@
  file_list_spec='`$ECHO "$file_list_spec" | $SED "$delay_single_quote_subst"`'
  variables_saved_for_relink='`$ECHO "$variables_saved_for_relink" | $SED "$delay_single_quote_subst"`'
  need_lib_prefix='`$ECHO "$need_lib_prefix" | $SED "$delay_single_quote_subst"`'
-@@ -13462,8 +14127,13 @@ reload_flag \
+@@ -12852,8 +13513,13 @@ reload_flag \
  OBJDUMP \
  deplibs_check_method \
  file_magic_cmd \
@@ -7188,7 +7288,7 @@
  STRIP \
  RANLIB \
  CC \
-@@ -13473,12 +14143,14 @@ lt_cv_sys_global_symbol_pipe \
+@@ -12863,12 +13529,14 @@ lt_cv_sys_global_symbol_pipe \
  lt_cv_sys_global_symbol_to_cdecl \
  lt_cv_sys_global_symbol_to_c_name_address \
  lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \
@@ -7204,7 +7304,7 @@
  DSYMUTIL \
  NMEDIT \
  LIPO \
-@@ -13494,7 +14166,6 @@ no_undefined_flag \
+@@ -12884,7 +13552,6 @@ no_undefined_flag \
  hardcode_libdir_flag_spec \
  hardcode_libdir_flag_spec_ld \
  hardcode_libdir_separator \
@@ -7212,7 +7312,7 @@
  exclude_expsyms \
  include_expsyms \
  file_list_spec \
-@@ -13530,6 +14201,7 @@ module_cmds \
+@@ -12920,6 +13587,7 @@ module_cmds \
  module_expsym_cmds \
  export_symbols_cmds \
  prelink_cmds \
@@ -7220,7 +7320,7 @@
  postinstall_cmds \
  postuninstall_cmds \
  finish_cmds \
-@@ -14295,7 +14967,8 @@ $as_echo X"$file" |
+@@ -13685,7 +14353,8 @@ $as_echo X"$file" |
  # NOTE: Changes made to this file will be lost: look at ltmain.sh.
  #
  #   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
@@ -7230,7 +7330,7 @@
  #   Written by Gordon Matzigkeit, 1996
  #
  #   This file is part of GNU Libtool.
-@@ -14398,19 +15071,42 @@ SP2NL=$lt_lt_SP2NL
+@@ -13788,19 +14457,42 @@ SP2NL=$lt_lt_SP2NL
  # turn newlines into spaces.
  NL2SP=$lt_lt_NL2SP
  
@@ -7274,7 +7374,7 @@
  # A symbol stripping program.
  STRIP=$lt_STRIP
  
-@@ -14440,6 +15136,12 @@ global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
+@@ -13830,6 +14522,12 @@ global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
  # Transform the output of nm in a C name address pair when lib prefix is needed.
  global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
  
@@ -7287,7 +7387,7 @@
  # The name of the directory that contains temporary libtool files.
  objdir=$objdir
  
-@@ -14449,6 +15151,9 @@ MAGIC_CMD=$MAGIC_CMD
+@@ -13839,6 +14537,9 @@ MAGIC_CMD=$MAGIC_CMD
  # Must we lock files when doing compilation?
  need_locks=$lt_need_locks
  
@@ -7297,7 +7397,7 @@
  # Tool to manipulate archived DWARF debug symbol files on Mac OS X.
  DSYMUTIL=$lt_DSYMUTIL
  
-@@ -14563,12 +15268,12 @@ with_gcc=$GCC
+@@ -13953,12 +14654,12 @@ with_gcc=$GCC
  # Compiler flag to turn off builtin functions.
  no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag
  
@@ -7313,7 +7413,7 @@
  # Compiler flag to prevent dynamic linking.
  link_static_flag=$lt_lt_prog_compiler_static
  
-@@ -14655,9 +15360,6 @@ inherit_rpath=$inherit_rpath
+@@ -14045,9 +14746,6 @@ inherit_rpath=$inherit_rpath
  # Whether libtool must link a program against all its dependency libraries.
  link_all_deplibs=$link_all_deplibs
  
@@ -7323,7 +7423,7 @@
  # Set to "yes" if exported symbols are required.
  always_export_symbols=$always_export_symbols
  
-@@ -14673,6 +15375,9 @@ include_expsyms=$lt_include_expsyms
+@@ -14063,6 +14761,9 @@ include_expsyms=$lt_include_expsyms
  # Commands necessary for linking programs (against libraries) with templates.
  prelink_cmds=$lt_prelink_cmds
  
@@ -7333,7 +7433,7 @@
  # Specify filename containing input files.
  file_list_spec=$lt_file_list_spec
  
-@@ -14705,210 +15410,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
+@@ -14095,210 +14796,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
    # if finds mixed CR/LF and LF-only lines.  Since sed operates in
    # text mode, it properly converts lines to CR/LF.  This bash problem
    # is reportedly fixed, but why not run on old versions too?
@@ -7708,7 +7808,7 @@
    chmod +x "$ofile"
  
 diff --git a/ld/configure b/ld/configure
-index 8355c433c76..a49ab3d1f09 100755
+index 2aeb3317b65..5ef46d31558 100755
 --- a/ld/configure
 +++ b/ld/configure
 @@ -693,8 +693,11 @@ OTOOL
@@ -7731,7 +7831,7 @@
  enable_libtool_lock
  enable_plugins
  enable_largefile
-@@ -1526,6 +1530,8 @@ Optional Packages:
+@@ -1528,6 +1532,8 @@ Optional Packages:
    --with-pic              try to use only PIC/non-PIC objects [default=use
                            both]
    --with-gnu-ld           assume the C compiler uses GNU ld [default=no]
@@ -7740,7 +7840,7 @@
    --with-lib-path=dir1:dir2...  set default LIB_PATH
    --with-sysroot=DIR Search for usr/lib et al within DIR.
    --with-system-zlib      use installed libz
-@@ -5979,8 +5985,8 @@ esac
+@@ -5327,8 +5333,8 @@ esac
  
  
  
@@ -7751,7 +7851,7 @@
  
  
  
-@@ -6020,7 +6026,7 @@ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
+@@ -5368,7 +5374,7 @@ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
  { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5
  $as_echo_n "checking how to print strings... " >&6; }
  # Test print first, because it will be a builtin if present.
@@ -7760,7 +7860,7 @@
     test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
    ECHO='print -r --'
  elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
-@@ -6706,8 +6712,8 @@ $as_echo_n "checking whether the shell understands some XSI constructs... " >&6;
+@@ -6054,8 +6060,8 @@ $as_echo_n "checking whether the shell understands some XSI constructs... " >&6;
  # Try some XSI features
  xsi_shell=no
  ( _lt_dummy="a/b/c"
@@ -7771,7 +7871,7 @@
      && eval 'test $(( 1 + 1 )) -eq 2 \
      && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
    && xsi_shell=yes
-@@ -6756,6 +6762,80 @@ esac
+@@ -6104,6 +6110,80 @@ esac
  
  
  
@@ -7852,7 +7952,7 @@
  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5
  $as_echo_n "checking for $LD option to reload object files... " >&6; }
  if ${lt_cv_ld_reload_flag+:} false; then :
-@@ -6772,6 +6852,11 @@ case $reload_flag in
+@@ -6120,6 +6200,11 @@ case $reload_flag in
  esac
  reload_cmds='$LD$reload_flag -o $output$reload_objs'
  case $host_os in
@@ -7864,7 +7964,7 @@
    darwin*)
      if test "$GCC" = yes; then
        reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
-@@ -6940,7 +7025,8 @@ mingw* | pw32*)
+@@ -6288,7 +6373,8 @@ mingw* | pw32*)
      lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
      lt_cv_file_magic_cmd='func_win32_libid'
    else
@@ -7874,7 +7974,7 @@
      lt_cv_file_magic_cmd='$OBJDUMP -f'
    fi
    ;;
-@@ -7094,6 +7180,21 @@ esac
+@@ -6442,6 +6528,21 @@ esac
  fi
  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5
  $as_echo "$lt_cv_deplibs_check_method" >&6; }
@@ -7896,7 +7996,7 @@
  file_magic_cmd=$lt_cv_file_magic_cmd
  deplibs_check_method=$lt_cv_deplibs_check_method
  test -z "$deplibs_check_method" && deplibs_check_method=unknown
-@@ -7109,9 +7210,162 @@ test -z "$deplibs_check_method" && deplibs_check_method=unknown
+@@ -6457,6 +6558,157 @@ test -z "$deplibs_check_method" && deplibs_check_method=unknown
  
  
  
@@ -8051,6 +8151,12 @@
 +
 +
 +
+ plugin_option=
+ plugin_names="liblto_plugin.so liblto_plugin-0.dll cyglto_plugin-0.dll"
+ for plugin in $plugin_names; do
+@@ -6471,8 +6723,10 @@ for plugin in $plugin_names; do
+ done
+ 
  if test -n "$ac_tool_prefix"; then
 -  # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
 -set dummy ${ac_tool_prefix}ar; ac_word=$2
@@ -8061,7 +8167,7 @@
  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
  $as_echo_n "checking for $ac_word... " >&6; }
  if ${ac_cv_prog_AR+:} false; then :
-@@ -7127,7 +7381,7 @@ do
+@@ -6488,7 +6742,7 @@ do
    test -z "$as_dir" && as_dir=.
      for ac_exec_ext in '' $ac_executable_extensions; do
    if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
@@ -8070,7 +8176,7 @@
      $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
      break 2
    fi
-@@ -7147,11 +7401,15 @@ $as_echo "no" >&6; }
+@@ -6508,11 +6762,15 @@ $as_echo "no" >&6; }
  fi
  
  
@@ -8089,7 +8195,7 @@
  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
  $as_echo_n "checking for $ac_word... " >&6; }
  if ${ac_cv_prog_ac_ct_AR+:} false; then :
-@@ -7167,7 +7425,7 @@ do
+@@ -6528,7 +6786,7 @@ do
    test -z "$as_dir" && as_dir=.
      for ac_exec_ext in '' $ac_executable_extensions; do
    if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
@@ -8098,7 +8204,7 @@
      $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
      break 2
    fi
-@@ -7186,6 +7444,10 @@ else
+@@ -6547,6 +6805,10 @@ else
  $as_echo "no" >&6; }
  fi
  
@@ -8109,7 +8215,7 @@
    if test "x$ac_ct_AR" = x; then
      AR="false"
    else
-@@ -7197,12 +7459,12 @@ ac_tool_warned=yes ;;
+@@ -6558,25 +6820,19 @@ ac_tool_warned=yes ;;
  esac
      AR=$ac_ct_AR
    fi
@@ -8118,15 +8224,33 @@
  fi
  
 -test -z "$AR" && AR=ar
+-if test -n "$plugin_option"; then
+-  if $AR --help 2>&1 | grep -q "\--plugin"; then
+-    touch conftest.c
+-    $AR $plugin_option rc conftest.a conftest.c
+-    if test "$?" != 0; then
+-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Failed: $AR $plugin_option rc" >&5
++  touch conftest.c
++  $AR $plugin_option rc conftest.a conftest.c
++  if test "$?" != 0; then
++    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Failed: $AR $plugin_option rc" >&5
+ $as_echo "$as_me: WARNING: Failed: $AR $plugin_option rc" >&2;}
+-    else
+-      AR="$AR $plugin_option"
+-    fi
+-    rm -f conftest.*
++  else
++    AR="$AR $plugin_option"
+   fi
+-fi
 -test -z "$AR_FLAGS" && AR_FLAGS=cru
++  rm -f conftest.*
 +: ${AR=ar}
 +: ${AR_FLAGS=cru}
-+
-+
  
  
  
-@@ -7212,6 +7474,62 @@ test -z "$AR_FLAGS" && AR_FLAGS=cru
+@@ -6588,6 +6844,64 @@ test -z "$AR_FLAGS" && AR_FLAGS=cru
  
  
  
@@ -8186,10 +8310,12 @@
 +
 +
 +
- 
- 
++
++
  if test -n "$ac_tool_prefix"; then
-@@ -7548,8 +7866,8 @@ esac
+   # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
+ set dummy ${ac_tool_prefix}strip; ac_word=$2
+@@ -6927,8 +7241,8 @@ esac
  lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
  
  # Transform an extracted symbol line into symbol name and symbol address
@@ -8200,7 +8326,7 @@
  
  # Handle CRLF in mingw tool chain
  opt_cr=
-@@ -7585,6 +7903,7 @@ for ac_symprfx in "" "_"; do
+@@ -6964,6 +7278,7 @@ for ac_symprfx in "" "_"; do
    else
      lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[	 ]\($symcode$symcode*\)[	 ][	 ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
    fi
@@ -8208,7 +8334,7 @@
  
    # Check to see that the pipe works correctly.
    pipe_works=no
-@@ -7626,6 +7945,18 @@ _LT_EOF
+@@ -7005,6 +7320,18 @@ _LT_EOF
        if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
  	if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
  	  cat <<_LT_EOF > conftest.$ac_ext
@@ -8227,7 +8353,7 @@
  #ifdef __cplusplus
  extern "C" {
  #endif
-@@ -7637,7 +7968,7 @@ _LT_EOF
+@@ -7016,7 +7343,7 @@ _LT_EOF
  	  cat <<_LT_EOF >> conftest.$ac_ext
  
  /* The mapping between symbol names and symbols.  */
@@ -8236,7 +8362,7 @@
    const char *name;
    void       *address;
  }
-@@ -7663,8 +7994,8 @@ static const void *lt_preloaded_setup() {
+@@ -7042,8 +7369,8 @@ static const void *lt_preloaded_setup() {
  _LT_EOF
  	  # Now try linking the two files.
  	  mv conftest.$ac_objext conftstm.$ac_objext
@@ -8247,7 +8373,7 @@
  	  LIBS="conftstm.$ac_objext"
  	  CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag"
  	  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
-@@ -7674,8 +8005,8 @@ _LT_EOF
+@@ -7053,8 +7380,8 @@ _LT_EOF
    test $ac_status = 0; } && test -s conftest${ac_exeext}; then
  	    pipe_works=yes
  	  fi
@@ -8258,7 +8384,7 @@
  	else
  	  echo "cannot find nm_test_func in $nlist" >&5
  	fi
-@@ -7712,6 +8043,19 @@ else
+@@ -7091,6 +7418,17 @@ else
  $as_echo "ok" >&6; }
  fi
  
@@ -8273,15 +8399,15 @@
 +
 +
 +
+ 
+ 
+ 
+@@ -7107,6 +7445,44 @@ fi
+ 
+ 
+ 
 +
 +
- 
- 
- 
-@@ -7728,6 +8072,42 @@ fi
- 
- 
- 
 +
 +
 +
@@ -8321,7 +8447,7 @@
  
  
  
-@@ -7939,6 +8319,123 @@ esac
+@@ -7318,6 +7694,123 @@ esac
  
  need_locks="$enable_libtool_lock"
  
@@ -8445,7 +8571,7 @@
  
    case $host_os in
      rhapsody* | darwin*)
-@@ -8502,6 +8999,8 @@ _LT_EOF
+@@ -7881,6 +8374,8 @@ _LT_EOF
        $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5
        echo "$AR cru libconftest.a conftest.o" >&5
        $AR cru libconftest.a conftest.o 2>&5
@@ -8454,7 +8580,7 @@
        cat > conftest.c << _LT_EOF
  int main() { return 0;}
  _LT_EOF
-@@ -8570,6 +9069,16 @@ done
+@@ -7949,6 +8444,16 @@ done
  
  
  
@@ -8471,7 +8597,7 @@
  
  
  # Set options
-@@ -8698,7 +9207,8 @@ fi
+@@ -8077,7 +8582,8 @@ fi
  LIBTOOL_DEPS="$ltmain"
  
  # Always use our own libtool.
@@ -8481,7 +8607,7 @@
  
  
  
-@@ -8787,7 +9297,7 @@ aix3*)
+@@ -8166,7 +8672,7 @@ aix3*)
  esac
  
  # Global variables:
@@ -8490,7 +8616,7 @@
  can_build_shared=yes
  
  # All known linkers require a `.a' archive for static linking (except MSVC,
-@@ -9085,8 +9595,6 @@ fi
+@@ -8464,8 +8970,6 @@ fi
  lt_prog_compiler_pic=
  lt_prog_compiler_static=
  
@@ -8499,7 +8625,7 @@
  
    if test "$GCC" = yes; then
      lt_prog_compiler_wl='-Wl,'
-@@ -9252,6 +9760,12 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -8631,6 +9135,12 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
  	lt_prog_compiler_pic='--shared'
  	lt_prog_compiler_static='--static'
  	;;
@@ -8512,7 +8638,7 @@
        pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
          # Portland Group compilers (*not* the Pentium gcc compiler,
  	# which looks to be a dead project)
-@@ -9314,7 +9828,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -8693,7 +9203,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
        lt_prog_compiler_pic='-KPIC'
        lt_prog_compiler_static='-Bstatic'
        case $cc_basename in
@@ -8521,7 +8647,7 @@
  	lt_prog_compiler_wl='-Qoption ld ';;
        *)
  	lt_prog_compiler_wl='-Wl,';;
-@@ -9371,13 +9885,17 @@ case $host_os in
+@@ -8750,13 +9260,17 @@ case $host_os in
      lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC"
      ;;
  esac
@@ -8545,7 +8671,7 @@
  
  #
  # Check to make sure the PIC flag actually works.
-@@ -9438,6 +9956,11 @@ fi
+@@ -8817,6 +9331,11 @@ fi
  
  
  
@@ -8557,7 +8683,7 @@
  #
  # Check to make sure the static flag actually works.
  #
-@@ -9788,7 +10311,8 @@ _LT_EOF
+@@ -9167,7 +9686,8 @@ _LT_EOF
        allow_undefined_flag=unsupported
        always_export_symbols=no
        enable_shared_with_static_runtimes=yes
@@ -8567,7 +8693,7 @@
  
        if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
          archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
-@@ -9887,12 +10411,12 @@ _LT_EOF
+@@ -9266,12 +9786,12 @@ _LT_EOF
  	  whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'
  	  hardcode_libdir_flag_spec=
  	  hardcode_libdir_flag_spec_ld='-rpath $libdir'
@@ -8582,7 +8708,7 @@
  	  fi
  	  ;;
  	esac
-@@ -9906,8 +10430,8 @@ _LT_EOF
+@@ -9285,8 +9805,8 @@ _LT_EOF
  	archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
  	wlarc=
        else
@@ -8593,7 +8719,7 @@
        fi
        ;;
  
-@@ -9925,8 +10449,8 @@ _LT_EOF
+@@ -9304,8 +9824,8 @@ _LT_EOF
  
  _LT_EOF
        elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
@@ -8604,7 +8730,7 @@
        else
  	ld_shlibs=no
        fi
-@@ -9972,8 +10496,8 @@ _LT_EOF
+@@ -9351,8 +9871,8 @@ _LT_EOF
  
      *)
        if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
@@ -8615,7 +8741,7 @@
        else
  	ld_shlibs=no
        fi
-@@ -10103,7 +10627,13 @@ _LT_EOF
+@@ -9482,7 +10002,13 @@ _LT_EOF
  	allow_undefined_flag='-berok'
          # Determine the default libpath from the value encoded in an
          # empty executable.
@@ -8630,7 +8756,7 @@
  /* end confdefs.h.  */
  
  int
-@@ -10116,22 +10646,29 @@ main ()
+@@ -9495,22 +10021,29 @@ main ()
  _ACEOF
  if ac_fn_c_try_link "$LINENO"; then :
  
@@ -8673,7 +8799,7 @@
  
          hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
          archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
-@@ -10143,7 +10680,13 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9522,7 +10055,13 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  	else
  	 # Determine the default libpath from the value encoded in an
  	 # empty executable.
@@ -8688,7 +8814,7 @@
  /* end confdefs.h.  */
  
  int
-@@ -10156,22 +10699,29 @@ main ()
+@@ -9535,22 +10074,29 @@ main ()
  _ACEOF
  if ac_fn_c_try_link "$LINENO"; then :
  
@@ -8731,7 +8857,7 @@
  
  	 hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
  	  # Warning - without using the other run time loading flags,
-@@ -10215,21 +10765,64 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9594,21 +10140,64 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
        # When not using gcc, we currently assume that we are using
        # Microsoft Visual C++.
        # hardcode_libdir_flag_spec is actually meaningless, as there is
@@ -8811,7 +8937,7 @@
        ;;
  
      darwin* | rhapsody*)
-@@ -10290,7 +10883,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9669,7 +10258,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  
      # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
      freebsd* | dragonfly*)
@@ -8820,7 +8946,7 @@
        hardcode_libdir_flag_spec='-R$libdir'
        hardcode_direct=yes
        hardcode_shlibpath_var=no
-@@ -10298,7 +10891,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9677,7 +10266,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  
      hpux9*)
        if test "$GCC" = yes; then
@@ -8829,7 +8955,7 @@
        else
  	archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
        fi
-@@ -10314,7 +10907,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9693,7 +10282,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  
      hpux10*)
        if test "$GCC" = yes && test "$with_gnu_ld" = no; then
@@ -8838,7 +8964,7 @@
        else
  	archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
        fi
-@@ -10338,10 +10931,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9717,10 +10306,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  	  archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
  	  ;;
  	ia64*)
@@ -8851,7 +8977,7 @@
  	  ;;
  	esac
        else
-@@ -10420,23 +11013,36 @@ fi
+@@ -9799,23 +10388,36 @@ fi
  
      irix5* | irix6* | nonstopux*)
        if test "$GCC" = yes; then
@@ -8896,7 +9022,7 @@
        else
  	archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
  	archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
-@@ -10521,7 +11127,7 @@ rm -f core conftest.err conftest.$ac_objext \
+@@ -9900,7 +10502,7 @@ rm -f core conftest.err conftest.$ac_objext \
      osf4* | osf5*)	# as osf3* with the addition of -msym flag
        if test "$GCC" = yes; then
  	allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
@@ -8905,7 +9031,7 @@
  	hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
        else
  	allow_undefined_flag=' -expect_unresolved \*'
-@@ -10540,9 +11146,9 @@ rm -f core conftest.err conftest.$ac_objext \
+@@ -9919,9 +10521,9 @@ rm -f core conftest.err conftest.$ac_objext \
        no_undefined_flag=' -z defs'
        if test "$GCC" = yes; then
  	wlarc='${wl}'
@@ -8917,7 +9043,7 @@
        else
  	case `$CC -V 2>&1` in
  	*"Compilers 5.0"*)
-@@ -11118,8 +11724,9 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -10497,8 +11099,9 @@ cygwin* | mingw* | pw32* | cegcc*)
    need_version=no
    need_lib_prefix=no
  
@@ -8929,7 +9055,7 @@
      library_names_spec='$libname.dll.a'
      # DLL is installed to $(libdir)/../bin by postinstall_cmds
      postinstall_cmds='base_file=`basename \${file}`~
-@@ -11152,13 +11759,71 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -10531,13 +11134,71 @@ cygwin* | mingw* | pw32* | cegcc*)
        library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
        ;;
      esac
@@ -9002,7 +9128,7 @@
    # FIXME: first we should search . and the directory the executable is in
    shlibpath_var=PATH
    ;;
-@@ -11240,7 +11905,7 @@ haiku*)
+@@ -10619,7 +11280,7 @@ haiku*)
    soname_spec='${libname}${release}${shared_ext}$major'
    shlibpath_var=LIBRARY_PATH
    shlibpath_overrides_runpath=yes
@@ -9011,16 +9137,16 @@
    hardcode_into_libs=yes
    ;;
  
-@@ -12036,7 +12701,7 @@ else
+@@ -11415,7 +12076,7 @@ else
    lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
    lt_status=$lt_dlunknown
    cat > conftest.$ac_ext <<_LT_EOF
--#line 12036 "configure"
+-#line 11415 "configure"
 +#line $LINENO "configure"
  #include "confdefs.h"
  
  #if HAVE_DLFCN_H
-@@ -12080,10 +12745,10 @@ else
+@@ -11459,10 +12120,10 @@ else
  /* When -fvisbility=hidden is used, assume the code has been annotated
     correspondingly for the symbols needed.  */
  #if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
@@ -9033,16 +9159,16 @@
  int main ()
  {
    void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-@@ -12142,7 +12807,7 @@ else
+@@ -11521,7 +12182,7 @@ else
    lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
    lt_status=$lt_dlunknown
    cat > conftest.$ac_ext <<_LT_EOF
--#line 12142 "configure"
+-#line 11521 "configure"
 +#line $LINENO "configure"
  #include "confdefs.h"
  
  #if HAVE_DLFCN_H
-@@ -12186,10 +12851,10 @@ else
+@@ -11565,10 +12226,10 @@ else
  /* When -fvisbility=hidden is used, assume the code has been annotated
     correspondingly for the symbols needed.  */
  #if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
@@ -9055,7 +9181,7 @@
  int main ()
  {
    void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-@@ -12581,6 +13246,7 @@ $RM -r conftest*
+@@ -11960,6 +12621,7 @@ $RM -r conftest*
  
    # Allow CC to be a program name with arguments.
    lt_save_CC=$CC
@@ -9063,7 +9189,7 @@
    lt_save_LD=$LD
    lt_save_GCC=$GCC
    GCC=$GXX
-@@ -12598,6 +13264,7 @@ $RM -r conftest*
+@@ -11977,6 +12639,7 @@ $RM -r conftest*
    fi
    test -z "${LDCXX+set}" || LD=$LDCXX
    CC=${CXX-"c++"}
@@ -9071,7 +9197,7 @@
    compiler=$CC
    compiler_CXX=$CC
    for cc_temp in $compiler""; do
-@@ -12880,7 +13547,13 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie
+@@ -12259,7 +12922,13 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie
            allow_undefined_flag_CXX='-berok'
            # Determine the default libpath from the value encoded in an empty
            # executable.
@@ -9086,7 +9212,7 @@
  /* end confdefs.h.  */
  
  int
-@@ -12893,22 +13566,29 @@ main ()
+@@ -12272,22 +12941,29 @@ main ()
  _ACEOF
  if ac_fn_cxx_try_link "$LINENO"; then :
  
@@ -9129,7 +9255,7 @@
  
            hardcode_libdir_flag_spec_CXX='${wl}-blibpath:$libdir:'"$aix_libpath"
  
-@@ -12921,7 +13601,13 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -12300,7 +12976,13 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
            else
  	    # Determine the default libpath from the value encoded in an
  	    # empty executable.
@@ -9144,7 +9270,7 @@
  /* end confdefs.h.  */
  
  int
-@@ -12934,22 +13620,29 @@ main ()
+@@ -12313,22 +12995,29 @@ main ()
  _ACEOF
  if ac_fn_cxx_try_link "$LINENO"; then :
  
@@ -9187,7 +9313,7 @@
  
  	    hardcode_libdir_flag_spec_CXX='${wl}-blibpath:$libdir:'"$aix_libpath"
  	    # Warning - without using the other run time loading flags,
-@@ -12992,29 +13685,75 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -12371,29 +13060,75 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
          ;;
  
        cygwin* | mingw* | pw32* | cegcc*)
@@ -9286,7 +9412,7 @@
        darwin* | rhapsody*)
  
  
-@@ -13120,7 +13859,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -12499,7 +13234,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
              ;;
            *)
              if test "$GXX" = yes; then
@@ -9295,7 +9421,7 @@
              else
                # FIXME: insert proper C++ library support
                ld_shlibs_CXX=no
-@@ -13191,10 +13930,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -12570,10 +13305,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  	            archive_cmds_CXX='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
  	            ;;
  	          ia64*)
@@ -9308,7 +9434,7 @@
  	            ;;
  	        esac
  	      fi
-@@ -13235,9 +13974,9 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -12614,9 +13349,9 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
            *)
  	    if test "$GXX" = yes; then
  	      if test "$with_gnu_ld" = no; then
@@ -9320,7 +9446,7 @@
  	      fi
  	    fi
  	    link_all_deplibs_CXX=yes
-@@ -13307,20 +14046,20 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -12686,20 +13421,20 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  	      prelink_cmds_CXX='tpldir=Template.dir~
  		rm -rf $tpldir~
  		$CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
@@ -9345,7 +9471,7 @@
  	      ;;
  	    *) # Version 6 and above use weak symbols
  	      archive_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
-@@ -13515,7 +14254,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -12894,7 +13629,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  	          archive_cmds_CXX='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
  		  ;;
  	        *)
@@ -9354,7 +9480,7 @@
  		  ;;
  	      esac
  
-@@ -13561,7 +14300,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -12940,7 +13675,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  
        solaris*)
          case $cc_basename in
@@ -9363,7 +9489,7 @@
  	    # Sun C++ 4.2, 5.x and Centerline C++
              archive_cmds_need_lc_CXX=yes
  	    no_undefined_flag_CXX=' -zdefs'
-@@ -13602,9 +14341,9 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -12981,9 +13716,9 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  	    if test "$GXX" = yes && test "$with_gnu_ld" = no; then
  	      no_undefined_flag_CXX=' ${wl}-z ${wl}defs'
  	      if $CC --version | $GREP -v '^2\.7' > /dev/null; then
@@ -9375,7 +9501,7 @@
  
  	        # Commands to make compiler produce verbose output that lists
  	        # what "hidden" libraries, object files and flags are used when
-@@ -13739,6 +14478,13 @@ private:
+@@ -13118,6 +13853,13 @@ private:
  };
  _LT_EOF
  
@@ -9389,7 +9515,7 @@
  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
    (eval $ac_compile) 2>&5
    ac_status=$?
-@@ -13752,7 +14498,7 @@ if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
+@@ -13131,7 +13873,7 @@ if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
    pre_test_object_deps_done=no
  
    for p in `eval "$output_verbose_link_cmd"`; do
@@ -9398,7 +9524,7 @@
  
      -L* | -R* | -l*)
         # Some compilers place space between "-{L,R}" and the path.
-@@ -13761,13 +14507,22 @@ if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
+@@ -13140,13 +13882,22 @@ if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
            test $p = "-R"; then
  	 prev=$p
  	 continue
@@ -9425,7 +9551,7 @@
  	   # Internal compiler library paths should come after those
  	   # provided the user.  The postdeps already come after the
  	   # user supplied libs so there is no need to process them.
-@@ -13787,8 +14542,10 @@ if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
+@@ -13166,8 +13917,10 @@ if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
  	   postdeps_CXX="${postdeps_CXX} ${prev}${p}"
  	 fi
         fi
@@ -9436,7 +9562,7 @@
      *.$objext)
         # This assumes that the test object file only shows up
         # once in the compiler output.
-@@ -13824,6 +14581,7 @@ else
+@@ -13203,6 +13956,7 @@ else
  fi
  
  $RM -f confest.$objext
@@ -9444,7 +9570,7 @@
  
  # PORTME: override above test on systems where it is broken
  case $host_os in
-@@ -13859,7 +14617,7 @@ linux*)
+@@ -13238,7 +13992,7 @@ linux*)
  
  solaris*)
    case $cc_basename in
@@ -9453,7 +9579,7 @@
      # The more standards-conforming stlport4 library is
      # incompatible with the Cstd library. Avoid specifying
      # it if it's in CXXFLAGS. Ignore libCrun as
-@@ -13924,8 +14682,6 @@ fi
+@@ -13303,8 +14057,6 @@ fi
  lt_prog_compiler_pic_CXX=
  lt_prog_compiler_static_CXX=
  
@@ -9462,7 +9588,7 @@
  
    # C++ specific cases for pic, static, wl, etc.
    if test "$GXX" = yes; then
-@@ -14030,6 +14786,11 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -13409,6 +14161,11 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
  	  ;;
  	esac
  	;;
@@ -9474,7 +9600,7 @@
        dgux*)
  	case $cc_basename in
  	  ec++*)
-@@ -14182,7 +14943,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -13561,7 +14318,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
  	;;
        solaris*)
  	case $cc_basename in
@@ -9483,7 +9609,7 @@
  	    # Sun C++ 4.2, 5.x and Centerline C++
  	    lt_prog_compiler_pic_CXX='-KPIC'
  	    lt_prog_compiler_static_CXX='-Bstatic'
-@@ -14247,10 +15008,17 @@ case $host_os in
+@@ -13626,10 +14383,17 @@ case $host_os in
      lt_prog_compiler_pic_CXX="$lt_prog_compiler_pic_CXX -DPIC"
      ;;
  esac
@@ -9504,7 +9630,7 @@
  
  #
  # Check to make sure the PIC flag actually works.
-@@ -14308,6 +15076,8 @@ fi
+@@ -13687,6 +14451,8 @@ fi
  
  
  
@@ -9513,7 +9639,7 @@
  #
  # Check to make sure the static flag actually works.
  #
-@@ -14485,6 +15255,7 @@ fi
+@@ -13864,6 +14630,7 @@ fi
  $as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }
  
    export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
@@ -9521,7 +9647,7 @@
    case $host_os in
    aix[4-9]*)
      # If we're using GNU nm, then we don't want the "-C" option.
-@@ -14499,15 +15270,20 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie
+@@ -13878,15 +14645,20 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie
      ;;
    pw32*)
      export_symbols_cmds_CXX="$ltdll_cmds"
@@ -9547,7 +9673,7 @@
  
  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_CXX" >&5
  $as_echo "$ld_shlibs_CXX" >&6; }
-@@ -14770,8 +15546,9 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -14149,8 +14921,9 @@ cygwin* | mingw* | pw32* | cegcc*)
    need_version=no
    need_lib_prefix=no
  
@@ -9559,7 +9685,7 @@
      library_names_spec='$libname.dll.a'
      # DLL is installed to $(libdir)/../bin by postinstall_cmds
      postinstall_cmds='base_file=`basename \${file}`~
-@@ -14803,13 +15580,71 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -14182,13 +14955,71 @@ cygwin* | mingw* | pw32* | cegcc*)
        library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
        ;;
      esac
@@ -9632,7 +9758,7 @@
    # FIXME: first we should search . and the directory the executable is in
    shlibpath_var=PATH
    ;;
-@@ -14890,7 +15725,7 @@ haiku*)
+@@ -14269,7 +15100,7 @@ haiku*)
    soname_spec='${libname}${release}${shared_ext}$major'
    shlibpath_var=LIBRARY_PATH
    shlibpath_overrides_runpath=yes
@@ -9641,7 +9767,7 @@
    hardcode_into_libs=yes
    ;;
  
-@@ -15349,6 +16184,7 @@ fi
+@@ -14728,6 +15559,7 @@ fi
    fi # test -n "$compiler"
  
    CC=$lt_save_CC
@@ -9649,7 +9775,7 @@
    LDCXX=$LD
    LD=$lt_save_LD
    GCC=$lt_save_GCC
-@@ -18612,13 +19448,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'
+@@ -17770,13 +18602,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'
  lt_unset='`$ECHO "$lt_unset" | $SED "$delay_single_quote_subst"`'
  lt_SP2NL='`$ECHO "$lt_SP2NL" | $SED "$delay_single_quote_subst"`'
  lt_NL2SP='`$ECHO "$lt_NL2SP" | $SED "$delay_single_quote_subst"`'
@@ -9670,7 +9796,7 @@
  STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`'
  RANLIB='`$ECHO "$RANLIB" | $SED "$delay_single_quote_subst"`'
  old_postinstall_cmds='`$ECHO "$old_postinstall_cmds" | $SED "$delay_single_quote_subst"`'
-@@ -18633,14 +19476,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$de
+@@ -17791,14 +18630,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$de
  lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`'
  lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`'
  lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`'
@@ -9689,7 +9815,7 @@
  DSYMUTIL='`$ECHO "$DSYMUTIL" | $SED "$delay_single_quote_subst"`'
  NMEDIT='`$ECHO "$NMEDIT" | $SED "$delay_single_quote_subst"`'
  LIPO='`$ECHO "$LIPO" | $SED "$delay_single_quote_subst"`'
-@@ -18673,12 +19519,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_q
+@@ -17831,12 +18673,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_q
  hardcode_automatic='`$ECHO "$hardcode_automatic" | $SED "$delay_single_quote_subst"`'
  inherit_rpath='`$ECHO "$inherit_rpath" | $SED "$delay_single_quote_subst"`'
  link_all_deplibs='`$ECHO "$link_all_deplibs" | $SED "$delay_single_quote_subst"`'
@@ -9703,7 +9829,7 @@
  file_list_spec='`$ECHO "$file_list_spec" | $SED "$delay_single_quote_subst"`'
  variables_saved_for_relink='`$ECHO "$variables_saved_for_relink" | $SED "$delay_single_quote_subst"`'
  need_lib_prefix='`$ECHO "$need_lib_prefix" | $SED "$delay_single_quote_subst"`'
-@@ -18717,8 +19563,8 @@ old_archive_cmds_CXX='`$ECHO "$old_archive_cmds_CXX" | $SED "$delay_single_quote
+@@ -17875,8 +18717,8 @@ old_archive_cmds_CXX='`$ECHO "$old_archive_cmds_CXX" | $SED "$delay_single_quote
  compiler_CXX='`$ECHO "$compiler_CXX" | $SED "$delay_single_quote_subst"`'
  GCC_CXX='`$ECHO "$GCC_CXX" | $SED "$delay_single_quote_subst"`'
  lt_prog_compiler_no_builtin_flag_CXX='`$ECHO "$lt_prog_compiler_no_builtin_flag_CXX" | $SED "$delay_single_quote_subst"`'
@@ -9713,7 +9839,7 @@
  lt_prog_compiler_static_CXX='`$ECHO "$lt_prog_compiler_static_CXX" | $SED "$delay_single_quote_subst"`'
  lt_cv_prog_compiler_c_o_CXX='`$ECHO "$lt_cv_prog_compiler_c_o_CXX" | $SED "$delay_single_quote_subst"`'
  archive_cmds_need_lc_CXX='`$ECHO "$archive_cmds_need_lc_CXX" | $SED "$delay_single_quote_subst"`'
-@@ -18745,12 +19591,12 @@ hardcode_shlibpath_var_CXX='`$ECHO "$hardcode_shlibpath_var_CXX" | $SED "$delay_
+@@ -17903,12 +18745,12 @@ hardcode_shlibpath_var_CXX='`$ECHO "$hardcode_shlibpath_var_CXX" | $SED "$delay_
  hardcode_automatic_CXX='`$ECHO "$hardcode_automatic_CXX" | $SED "$delay_single_quote_subst"`'
  inherit_rpath_CXX='`$ECHO "$inherit_rpath_CXX" | $SED "$delay_single_quote_subst"`'
  link_all_deplibs_CXX='`$ECHO "$link_all_deplibs_CXX" | $SED "$delay_single_quote_subst"`'
@@ -9727,7 +9853,7 @@
  file_list_spec_CXX='`$ECHO "$file_list_spec_CXX" | $SED "$delay_single_quote_subst"`'
  hardcode_action_CXX='`$ECHO "$hardcode_action_CXX" | $SED "$delay_single_quote_subst"`'
  compiler_lib_search_dirs_CXX='`$ECHO "$compiler_lib_search_dirs_CXX" | $SED "$delay_single_quote_subst"`'
-@@ -18788,8 +19634,13 @@ reload_flag \
+@@ -17946,8 +18788,13 @@ reload_flag \
  OBJDUMP \
  deplibs_check_method \
  file_magic_cmd \
@@ -9741,7 +9867,7 @@
  STRIP \
  RANLIB \
  CC \
-@@ -18799,12 +19650,14 @@ lt_cv_sys_global_symbol_pipe \
+@@ -17957,12 +18804,14 @@ lt_cv_sys_global_symbol_pipe \
  lt_cv_sys_global_symbol_to_cdecl \
  lt_cv_sys_global_symbol_to_c_name_address \
  lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \
@@ -9757,7 +9883,7 @@
  DSYMUTIL \
  NMEDIT \
  LIPO \
-@@ -18820,7 +19673,6 @@ no_undefined_flag \
+@@ -17978,7 +18827,6 @@ no_undefined_flag \
  hardcode_libdir_flag_spec \
  hardcode_libdir_flag_spec_ld \
  hardcode_libdir_separator \
@@ -9765,7 +9891,7 @@
  exclude_expsyms \
  include_expsyms \
  file_list_spec \
-@@ -18842,8 +19694,8 @@ LD_CXX \
+@@ -18000,8 +18848,8 @@ LD_CXX \
  reload_flag_CXX \
  compiler_CXX \
  lt_prog_compiler_no_builtin_flag_CXX \
@@ -9775,7 +9901,7 @@
  lt_prog_compiler_static_CXX \
  lt_cv_prog_compiler_c_o_CXX \
  export_dynamic_flag_spec_CXX \
-@@ -18855,7 +19707,6 @@ no_undefined_flag_CXX \
+@@ -18013,7 +18861,6 @@ no_undefined_flag_CXX \
  hardcode_libdir_flag_spec_CXX \
  hardcode_libdir_flag_spec_ld_CXX \
  hardcode_libdir_separator_CXX \
@@ -9783,7 +9909,7 @@
  exclude_expsyms_CXX \
  include_expsyms_CXX \
  file_list_spec_CXX \
-@@ -18889,6 +19740,7 @@ module_cmds \
+@@ -18047,6 +18894,7 @@ module_cmds \
  module_expsym_cmds \
  export_symbols_cmds \
  prelink_cmds \
@@ -9791,7 +9917,7 @@
  postinstall_cmds \
  postuninstall_cmds \
  finish_cmds \
-@@ -18903,7 +19755,8 @@ archive_expsym_cmds_CXX \
+@@ -18061,7 +18909,8 @@ archive_expsym_cmds_CXX \
  module_cmds_CXX \
  module_expsym_cmds_CXX \
  export_symbols_cmds_CXX \
@@ -9801,7 +9927,7 @@
      case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
      *[\\\\\\\`\\"\\\$]*)
        eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
-@@ -19668,7 +20521,8 @@ $as_echo X"$file" |
+@@ -18826,7 +19675,8 @@ $as_echo X"$file" |
  # NOTE: Changes made to this file will be lost: look at ltmain.sh.
  #
  #   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
@@ -9811,7 +9937,7 @@
  #   Written by Gordon Matzigkeit, 1996
  #
  #   This file is part of GNU Libtool.
-@@ -19771,19 +20625,42 @@ SP2NL=$lt_lt_SP2NL
+@@ -18929,19 +19779,42 @@ SP2NL=$lt_lt_SP2NL
  # turn newlines into spaces.
  NL2SP=$lt_lt_NL2SP
  
@@ -9855,7 +9981,7 @@
  # A symbol stripping program.
  STRIP=$lt_STRIP
  
-@@ -19813,6 +20690,12 @@ global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
+@@ -18971,6 +19844,12 @@ global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
  # Transform the output of nm in a C name address pair when lib prefix is needed.
  global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
  
@@ -9868,7 +9994,7 @@
  # The name of the directory that contains temporary libtool files.
  objdir=$objdir
  
-@@ -19822,6 +20705,9 @@ MAGIC_CMD=$MAGIC_CMD
+@@ -18980,6 +19859,9 @@ MAGIC_CMD=$MAGIC_CMD
  # Must we lock files when doing compilation?
  need_locks=$lt_need_locks
  
@@ -9878,7 +10004,7 @@
  # Tool to manipulate archived DWARF debug symbol files on Mac OS X.
  DSYMUTIL=$lt_DSYMUTIL
  
-@@ -19936,12 +20822,12 @@ with_gcc=$GCC
+@@ -19094,12 +19976,12 @@ with_gcc=$GCC
  # Compiler flag to turn off builtin functions.
  no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag
  
@@ -9894,7 +10020,7 @@
  # Compiler flag to prevent dynamic linking.
  link_static_flag=$lt_lt_prog_compiler_static
  
-@@ -20028,9 +20914,6 @@ inherit_rpath=$inherit_rpath
+@@ -19186,9 +20068,6 @@ inherit_rpath=$inherit_rpath
  # Whether libtool must link a program against all its dependency libraries.
  link_all_deplibs=$link_all_deplibs
  
@@ -9904,7 +10030,7 @@
  # Set to "yes" if exported symbols are required.
  always_export_symbols=$always_export_symbols
  
-@@ -20046,6 +20929,9 @@ include_expsyms=$lt_include_expsyms
+@@ -19204,6 +20083,9 @@ include_expsyms=$lt_include_expsyms
  # Commands necessary for linking programs (against libraries) with templates.
  prelink_cmds=$lt_prelink_cmds
  
@@ -9914,7 +10040,7 @@
  # Specify filename containing input files.
  file_list_spec=$lt_file_list_spec
  
-@@ -20092,210 +20978,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
+@@ -19250,210 +20132,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
    # if finds mixed CR/LF and LF-only lines.  Since sed operates in
    # text mode, it properly converts lines to CR/LF.  This bash problem
    # is reportedly fixed, but why not run on old versions too?
@@ -10288,7 +10414,7 @@
      (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
    chmod +x "$ofile"
  
-@@ -20323,12 +21168,12 @@ with_gcc=$GCC_CXX
+@@ -19481,12 +20322,12 @@ with_gcc=$GCC_CXX
  # Compiler flag to turn off builtin functions.
  no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag_CXX
  
@@ -10304,7 +10430,7 @@
  # Compiler flag to prevent dynamic linking.
  link_static_flag=$lt_lt_prog_compiler_static_CXX
  
-@@ -20415,9 +21260,6 @@ inherit_rpath=$inherit_rpath_CXX
+@@ -19573,9 +20414,6 @@ inherit_rpath=$inherit_rpath_CXX
  # Whether libtool must link a program against all its dependency libraries.
  link_all_deplibs=$link_all_deplibs_CXX
  
@@ -10314,7 +10440,7 @@
  # Set to "yes" if exported symbols are required.
  always_export_symbols=$always_export_symbols_CXX
  
-@@ -20433,6 +21275,9 @@ include_expsyms=$lt_include_expsyms_CXX
+@@ -19591,6 +20429,9 @@ include_expsyms=$lt_include_expsyms_CXX
  # Commands necessary for linking programs (against libraries) with templates.
  prelink_cmds=$lt_prelink_cmds_CXX
  
@@ -10325,10 +10451,10 @@
  file_list_spec=$lt_file_list_spec_CXX
  
 diff --git a/libctf/configure b/libctf/configure
-index 6b294bfebfb..52a025bb848 100755
+index 82bcf13a606..a7fb723a145 100755
 --- a/libctf/configure
 +++ b/libctf/configure
-@@ -663,6 +663,8 @@ OTOOL
+@@ -666,6 +666,8 @@ OTOOL
  LIPO
  NMEDIT
  DSYMUTIL
@@ -10337,7 +10463,7 @@
  OBJDUMP
  LN_S
  NM
-@@ -790,6 +792,7 @@ enable_static
+@@ -797,6 +799,7 @@ enable_static
  with_pic
  enable_fast_install
  with_gnu_ld
@@ -10345,7 +10471,7 @@
  enable_libtool_lock
  enable_largefile
  enable_werror_always
-@@ -1452,6 +1455,8 @@ Optional Packages:
+@@ -1460,6 +1463,8 @@ Optional Packages:
    --with-pic              try to use only PIC/non-PIC objects [default=use
                            both]
    --with-gnu-ld           assume the C compiler uses GNU ld [default=no]
@@ -10354,7 +10480,7 @@
    --with-system-zlib      use installed libz
  
  Some influential environment variables:
-@@ -5411,8 +5416,8 @@ esac
+@@ -5529,8 +5534,8 @@ esac
  
  
  
@@ -10365,7 +10491,7 @@
  
  
  
-@@ -5523,7 +5528,7 @@ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
+@@ -5570,7 +5575,7 @@ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
  { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5
  $as_echo_n "checking how to print strings... " >&6; }
  # Test print first, because it will be a builtin if present.
@@ -10374,7 +10500,7 @@
     test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
    ECHO='print -r --'
  elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
-@@ -6209,8 +6214,8 @@ $as_echo_n "checking whether the shell understands some XSI constructs... " >&6;
+@@ -6256,8 +6261,8 @@ $as_echo_n "checking whether the shell understands some XSI constructs... " >&6;
  # Try some XSI features
  xsi_shell=no
  ( _lt_dummy="a/b/c"
@@ -10385,7 +10511,7 @@
      && eval 'test $(( 1 + 1 )) -eq 2 \
      && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
    && xsi_shell=yes
-@@ -6259,6 +6264,80 @@ esac
+@@ -6306,6 +6311,80 @@ esac
  
  
  
@@ -10466,7 +10592,7 @@
  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5
  $as_echo_n "checking for $LD option to reload object files... " >&6; }
  if ${lt_cv_ld_reload_flag+:} false; then :
-@@ -6275,6 +6354,11 @@ case $reload_flag in
+@@ -6322,6 +6401,11 @@ case $reload_flag in
  esac
  reload_cmds='$LD$reload_flag -o $output$reload_objs'
  case $host_os in
@@ -10478,7 +10604,7 @@
    darwin*)
      if test "$GCC" = yes; then
        reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
-@@ -6443,7 +6527,8 @@ mingw* | pw32*)
+@@ -6490,7 +6574,8 @@ mingw* | pw32*)
      lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
      lt_cv_file_magic_cmd='func_win32_libid'
    else
@@ -10488,7 +10614,7 @@
      lt_cv_file_magic_cmd='$OBJDUMP -f'
    fi
    ;;
-@@ -6597,6 +6682,21 @@ esac
+@@ -6644,6 +6729,21 @@ esac
  fi
  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5
  $as_echo "$lt_cv_deplibs_check_method" >&6; }
@@ -10510,7 +10636,7 @@
  file_magic_cmd=$lt_cv_file_magic_cmd
  deplibs_check_method=$lt_cv_deplibs_check_method
  test -z "$deplibs_check_method" && deplibs_check_method=unknown
-@@ -6612,9 +6712,162 @@ test -z "$deplibs_check_method" && deplibs_check_method=unknown
+@@ -6659,6 +6759,157 @@ test -z "$deplibs_check_method" && deplibs_check_method=unknown
  
  
  
@@ -10665,6 +10791,12 @@
 +
 +
 +
+ plugin_option=
+ plugin_names="liblto_plugin.so liblto_plugin-0.dll cyglto_plugin-0.dll"
+ for plugin in $plugin_names; do
+@@ -6673,8 +6924,10 @@ for plugin in $plugin_names; do
+ done
+ 
  if test -n "$ac_tool_prefix"; then
 -  # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
 -set dummy ${ac_tool_prefix}ar; ac_word=$2
@@ -10675,7 +10807,7 @@
  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
  $as_echo_n "checking for $ac_word... " >&6; }
  if ${ac_cv_prog_AR+:} false; then :
-@@ -6630,7 +6883,7 @@ do
+@@ -6690,7 +6943,7 @@ do
    test -z "$as_dir" && as_dir=.
      for ac_exec_ext in '' $ac_executable_extensions; do
    if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
@@ -10684,7 +10816,7 @@
      $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
      break 2
    fi
-@@ -6650,11 +6903,15 @@ $as_echo "no" >&6; }
+@@ -6710,11 +6963,15 @@ $as_echo "no" >&6; }
  fi
  
  
@@ -10703,7 +10835,7 @@
  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
  $as_echo_n "checking for $ac_word... " >&6; }
  if ${ac_cv_prog_ac_ct_AR+:} false; then :
-@@ -6670,7 +6927,7 @@ do
+@@ -6730,7 +6987,7 @@ do
    test -z "$as_dir" && as_dir=.
      for ac_exec_ext in '' $ac_executable_extensions; do
    if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
@@ -10712,7 +10844,7 @@
      $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
      break 2
    fi
-@@ -6689,6 +6946,10 @@ else
+@@ -6749,6 +7006,10 @@ else
  $as_echo "no" >&6; }
  fi
  
@@ -10723,7 +10855,7 @@
    if test "x$ac_ct_AR" = x; then
      AR="false"
    else
-@@ -6700,16 +6961,72 @@ ac_tool_warned=yes ;;
+@@ -6760,25 +7021,19 @@ ac_tool_warned=yes ;;
  esac
      AR=$ac_ct_AR
    fi
@@ -10732,20 +10864,36 @@
  fi
  
 -test -z "$AR" && AR=ar
+-if test -n "$plugin_option"; then
+-  if $AR --help 2>&1 | grep -q "\--plugin"; then
+-    touch conftest.c
+-    $AR $plugin_option rc conftest.a conftest.c
+-    if test "$?" != 0; then
+-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Failed: $AR $plugin_option rc" >&5
++  touch conftest.c
++  $AR $plugin_option rc conftest.a conftest.c
++  if test "$?" != 0; then
++    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Failed: $AR $plugin_option rc" >&5
+ $as_echo "$as_me: WARNING: Failed: $AR $plugin_option rc" >&2;}
+-    else
+-      AR="$AR $plugin_option"
+-    fi
+-    rm -f conftest.*
++  else
++    AR="$AR $plugin_option"
+   fi
+-fi
 -test -z "$AR_FLAGS" && AR_FLAGS=cru
++  rm -f conftest.*
 +: ${AR=ar}
 +: ${AR_FLAGS=cru}
-+
-+
-+
-+
-+
-+
-+
-+
-+
-+
-+
+ 
+ 
+ 
+@@ -6790,6 +7045,64 @@ test -z "$AR_FLAGS" && AR_FLAGS=cru
+ 
+ 
+ 
 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5
 +$as_echo_n "checking for archiver @FILE support... " >&6; }
 +if ${lt_cv_ar_at_file+:} false; then :
@@ -10758,7 +10906,7 @@
 +int
 +main ()
 +{
- 
++
 +  ;
 +  return 0;
 +}
@@ -10784,23 +10932,30 @@
 +        fi
 +      fi
 +      rm -f conftest.* libconftest.a
- 
++
 +fi
 +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- 
++
 +fi
 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5
 +$as_echo "$lt_cv_ar_at_file" >&6; }
- 
++
 +if test "x$lt_cv_ar_at_file" = xno; then
 +  archiver_list_spec=
 +else
 +  archiver_list_spec=$lt_cv_ar_at_file
 +fi
- 
- 
- 
-@@ -7051,8 +7368,8 @@ esac
++
++
++
++
++
++
++
+ if test -n "$ac_tool_prefix"; then
+   # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
+ set dummy ${ac_tool_prefix}strip; ac_word=$2
+@@ -7129,8 +7442,8 @@ esac
  lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
  
  # Transform an extracted symbol line into symbol name and symbol address
@@ -10811,7 +10966,7 @@
  
  # Handle CRLF in mingw tool chain
  opt_cr=
-@@ -7088,6 +7405,7 @@ for ac_symprfx in "" "_"; do
+@@ -7166,6 +7479,7 @@ for ac_symprfx in "" "_"; do
    else
      lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[	 ]\($symcode$symcode*\)[	 ][	 ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
    fi
@@ -10819,7 +10974,7 @@
  
    # Check to see that the pipe works correctly.
    pipe_works=no
-@@ -7129,6 +7447,18 @@ _LT_EOF
+@@ -7207,6 +7521,18 @@ _LT_EOF
        if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
  	if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
  	  cat <<_LT_EOF > conftest.$ac_ext
@@ -10838,7 +10993,7 @@
  #ifdef __cplusplus
  extern "C" {
  #endif
-@@ -7140,7 +7470,7 @@ _LT_EOF
+@@ -7218,7 +7544,7 @@ _LT_EOF
  	  cat <<_LT_EOF >> conftest.$ac_ext
  
  /* The mapping between symbol names and symbols.  */
@@ -10847,7 +11002,7 @@
    const char *name;
    void       *address;
  }
-@@ -7166,8 +7496,8 @@ static const void *lt_preloaded_setup() {
+@@ -7244,8 +7570,8 @@ static const void *lt_preloaded_setup() {
  _LT_EOF
  	  # Now try linking the two files.
  	  mv conftest.$ac_objext conftstm.$ac_objext
@@ -10858,7 +11013,7 @@
  	  LIBS="conftstm.$ac_objext"
  	  CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag"
  	  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
-@@ -7177,8 +7507,8 @@ _LT_EOF
+@@ -7255,8 +7581,8 @@ _LT_EOF
    test $ac_status = 0; } && test -s conftest${ac_exeext}; then
  	    pipe_works=yes
  	  fi
@@ -10869,7 +11024,7 @@
  	else
  	  echo "cannot find nm_test_func in $nlist" >&5
  	fi
-@@ -7215,6 +7545,16 @@ else
+@@ -7293,6 +7619,14 @@ else
  $as_echo "ok" >&6; }
  fi
  
@@ -10881,12 +11036,10 @@
 +fi
 +
 +
-+
-+
  
  
  
-@@ -7231,6 +7571,45 @@ fi
+@@ -7311,6 +7645,47 @@ fi
  
  
  
@@ -10929,10 +11082,12 @@
 +
 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${lt_sysroot:-no}" >&5
 +$as_echo "${lt_sysroot:-no}" >&6; }
++
++
  
  
  
-@@ -7442,6 +7821,123 @@ esac
+@@ -7520,6 +7895,123 @@ esac
  
  need_locks="$enable_libtool_lock"
  
@@ -11056,7 +11211,7 @@
  
    case $host_os in
      rhapsody* | darwin*)
-@@ -8005,6 +8501,8 @@ _LT_EOF
+@@ -8083,6 +8575,8 @@ _LT_EOF
        $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5
        echo "$AR cru libconftest.a conftest.o" >&5
        $AR cru libconftest.a conftest.o 2>&5
@@ -11065,7 +11220,7 @@
        cat > conftest.c << _LT_EOF
  int main() { return 0;}
  _LT_EOF
-@@ -8170,7 +8668,8 @@ fi
+@@ -8248,7 +8742,8 @@ fi
  LIBTOOL_DEPS="$ltmain"
  
  # Always use our own libtool.
@@ -11075,7 +11230,7 @@
  
  
  
-@@ -8259,7 +8758,7 @@ aix3*)
+@@ -8337,7 +8832,7 @@ aix3*)
  esac
  
  # Global variables:
@@ -11084,7 +11239,7 @@
  can_build_shared=yes
  
  # All known linkers require a `.a' archive for static linking (except MSVC,
-@@ -8557,8 +9056,6 @@ fi
+@@ -8635,8 +9130,6 @@ fi
  lt_prog_compiler_pic=
  lt_prog_compiler_static=
  
@@ -11093,7 +11248,7 @@
  
    if test "$GCC" = yes; then
      lt_prog_compiler_wl='-Wl,'
-@@ -8724,6 +9221,12 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -8802,6 +9295,12 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
  	lt_prog_compiler_pic='--shared'
  	lt_prog_compiler_static='--static'
  	;;
@@ -11106,7 +11261,7 @@
        pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
          # Portland Group compilers (*not* the Pentium gcc compiler,
  	# which looks to be a dead project)
-@@ -8786,7 +9289,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -8864,7 +9363,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
        lt_prog_compiler_pic='-KPIC'
        lt_prog_compiler_static='-Bstatic'
        case $cc_basename in
@@ -11115,7 +11270,7 @@
  	lt_prog_compiler_wl='-Qoption ld ';;
        *)
  	lt_prog_compiler_wl='-Wl,';;
-@@ -8843,13 +9346,17 @@ case $host_os in
+@@ -8921,13 +9420,17 @@ case $host_os in
      lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC"
      ;;
  esac
@@ -11139,7 +11294,7 @@
  
  #
  # Check to make sure the PIC flag actually works.
-@@ -8910,6 +9417,11 @@ fi
+@@ -8988,6 +9491,11 @@ fi
  
  
  
@@ -11151,7 +11306,7 @@
  #
  # Check to make sure the static flag actually works.
  #
-@@ -9260,7 +9772,8 @@ _LT_EOF
+@@ -9338,7 +9846,8 @@ _LT_EOF
        allow_undefined_flag=unsupported
        always_export_symbols=no
        enable_shared_with_static_runtimes=yes
@@ -11161,7 +11316,7 @@
  
        if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
          archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
-@@ -9359,12 +9872,12 @@ _LT_EOF
+@@ -9437,12 +9946,12 @@ _LT_EOF
  	  whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'
  	  hardcode_libdir_flag_spec=
  	  hardcode_libdir_flag_spec_ld='-rpath $libdir'
@@ -11176,7 +11331,7 @@
  	  fi
  	  ;;
  	esac
-@@ -9378,8 +9891,8 @@ _LT_EOF
+@@ -9456,8 +9965,8 @@ _LT_EOF
  	archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
  	wlarc=
        else
@@ -11187,7 +11342,7 @@
        fi
        ;;
  
-@@ -9397,8 +9910,8 @@ _LT_EOF
+@@ -9475,8 +9984,8 @@ _LT_EOF
  
  _LT_EOF
        elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
@@ -11198,7 +11353,7 @@
        else
  	ld_shlibs=no
        fi
-@@ -9444,8 +9957,8 @@ _LT_EOF
+@@ -9522,8 +10031,8 @@ _LT_EOF
  
      *)
        if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
@@ -11209,7 +11364,7 @@
        else
  	ld_shlibs=no
        fi
-@@ -9575,7 +10088,13 @@ _LT_EOF
+@@ -9653,7 +10162,13 @@ _LT_EOF
  	allow_undefined_flag='-berok'
          # Determine the default libpath from the value encoded in an
          # empty executable.
@@ -11224,7 +11379,7 @@
  /* end confdefs.h.  */
  
  int
-@@ -9588,22 +10107,29 @@ main ()
+@@ -9666,22 +10181,29 @@ main ()
  _ACEOF
  if ac_fn_c_try_link "$LINENO"; then :
  
@@ -11267,7 +11422,7 @@
  
          hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
          archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
-@@ -9615,7 +10141,13 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9693,7 +10215,13 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  	else
  	 # Determine the default libpath from the value encoded in an
  	 # empty executable.
@@ -11282,7 +11437,7 @@
  /* end confdefs.h.  */
  
  int
-@@ -9628,22 +10160,29 @@ main ()
+@@ -9706,22 +10234,29 @@ main ()
  _ACEOF
  if ac_fn_c_try_link "$LINENO"; then :
  
@@ -11325,7 +11480,7 @@
  
  	 hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
  	  # Warning - without using the other run time loading flags,
-@@ -9688,20 +10227,63 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9766,20 +10301,63 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
        # Microsoft Visual C++.
        # hardcode_libdir_flag_spec is actually meaningless, as there is
        # no search path for DLLs.
@@ -11403,7 +11558,7 @@
        ;;
  
      darwin* | rhapsody*)
-@@ -9762,7 +10344,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9840,7 +10418,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  
      # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
      freebsd* | dragonfly*)
@@ -11412,7 +11567,7 @@
        hardcode_libdir_flag_spec='-R$libdir'
        hardcode_direct=yes
        hardcode_shlibpath_var=no
-@@ -9770,7 +10352,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9848,7 +10426,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  
      hpux9*)
        if test "$GCC" = yes; then
@@ -11421,7 +11576,7 @@
        else
  	archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
        fi
-@@ -9786,7 +10368,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9864,7 +10442,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  
      hpux10*)
        if test "$GCC" = yes && test "$with_gnu_ld" = no; then
@@ -11430,7 +11585,7 @@
        else
  	archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
        fi
-@@ -9810,10 +10392,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9888,10 +10466,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  	  archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
  	  ;;
  	ia64*)
@@ -11443,7 +11598,7 @@
  	  ;;
  	esac
        else
-@@ -9892,23 +10474,36 @@ fi
+@@ -9970,23 +10548,36 @@ fi
  
      irix5* | irix6* | nonstopux*)
        if test "$GCC" = yes; then
@@ -11488,7 +11643,7 @@
        else
  	archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
  	archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
-@@ -9993,7 +10588,7 @@ rm -f core conftest.err conftest.$ac_objext \
+@@ -10071,7 +10662,7 @@ rm -f core conftest.err conftest.$ac_objext \
      osf4* | osf5*)	# as osf3* with the addition of -msym flag
        if test "$GCC" = yes; then
  	allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
@@ -11497,7 +11652,7 @@
  	hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
        else
  	allow_undefined_flag=' -expect_unresolved \*'
-@@ -10012,9 +10607,9 @@ rm -f core conftest.err conftest.$ac_objext \
+@@ -10090,9 +10681,9 @@ rm -f core conftest.err conftest.$ac_objext \
        no_undefined_flag=' -z defs'
        if test "$GCC" = yes; then
  	wlarc='${wl}'
@@ -11509,7 +11664,7 @@
        else
  	case `$CC -V 2>&1` in
  	*"Compilers 5.0"*)
-@@ -10590,8 +11185,9 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -10668,8 +11259,9 @@ cygwin* | mingw* | pw32* | cegcc*)
    need_version=no
    need_lib_prefix=no
  
@@ -11521,7 +11676,7 @@
      library_names_spec='$libname.dll.a'
      # DLL is installed to $(libdir)/../bin by postinstall_cmds
      postinstall_cmds='base_file=`basename \${file}`~
-@@ -10624,13 +11220,71 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -10702,13 +11294,71 @@ cygwin* | mingw* | pw32* | cegcc*)
        library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
        ;;
      esac
@@ -11594,7 +11749,7 @@
    # FIXME: first we should search . and the directory the executable is in
    shlibpath_var=PATH
    ;;
-@@ -10712,7 +11366,7 @@ haiku*)
+@@ -10790,7 +11440,7 @@ haiku*)
    soname_spec='${libname}${release}${shared_ext}$major'
    shlibpath_var=LIBRARY_PATH
    shlibpath_overrides_runpath=yes
@@ -11603,16 +11758,16 @@
    hardcode_into_libs=yes
    ;;
  
-@@ -11508,7 +12162,7 @@ else
+@@ -11586,7 +12236,7 @@ else
    lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
    lt_status=$lt_dlunknown
    cat > conftest.$ac_ext <<_LT_EOF
--#line 11511 "configure"
+-#line 11589 "configure"
 +#line $LINENO "configure"
  #include "confdefs.h"
  
  #if HAVE_DLFCN_H
-@@ -11552,10 +12206,10 @@ else
+@@ -11630,10 +12280,10 @@ else
  /* When -fvisbility=hidden is used, assume the code has been annotated
     correspondingly for the symbols needed.  */
  #if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
@@ -11625,16 +11780,16 @@
  int main ()
  {
    void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-@@ -11614,7 +12268,7 @@ else
+@@ -11692,7 +12342,7 @@ else
    lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
    lt_status=$lt_dlunknown
    cat > conftest.$ac_ext <<_LT_EOF
--#line 11617 "configure"
+-#line 11695 "configure"
 +#line $LINENO "configure"
  #include "confdefs.h"
  
  #if HAVE_DLFCN_H
-@@ -11658,10 +12312,10 @@ else
+@@ -11736,10 +12386,10 @@ else
  /* When -fvisbility=hidden is used, assume the code has been annotated
     correspondingly for the symbols needed.  */
  #if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
@@ -11647,7 +11802,7 @@
  int main ()
  {
    void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-@@ -14136,13 +14790,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'
+@@ -14286,13 +14936,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'
  lt_unset='`$ECHO "$lt_unset" | $SED "$delay_single_quote_subst"`'
  lt_SP2NL='`$ECHO "$lt_SP2NL" | $SED "$delay_single_quote_subst"`'
  lt_NL2SP='`$ECHO "$lt_NL2SP" | $SED "$delay_single_quote_subst"`'
@@ -11668,7 +11823,7 @@
  STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`'
  RANLIB='`$ECHO "$RANLIB" | $SED "$delay_single_quote_subst"`'
  old_postinstall_cmds='`$ECHO "$old_postinstall_cmds" | $SED "$delay_single_quote_subst"`'
-@@ -14157,14 +14818,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$de
+@@ -14307,14 +14964,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$de
  lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`'
  lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`'
  lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`'
@@ -11687,7 +11842,7 @@
  DSYMUTIL='`$ECHO "$DSYMUTIL" | $SED "$delay_single_quote_subst"`'
  NMEDIT='`$ECHO "$NMEDIT" | $SED "$delay_single_quote_subst"`'
  LIPO='`$ECHO "$LIPO" | $SED "$delay_single_quote_subst"`'
-@@ -14197,12 +14861,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_q
+@@ -14347,12 +15007,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_q
  hardcode_automatic='`$ECHO "$hardcode_automatic" | $SED "$delay_single_quote_subst"`'
  inherit_rpath='`$ECHO "$inherit_rpath" | $SED "$delay_single_quote_subst"`'
  link_all_deplibs='`$ECHO "$link_all_deplibs" | $SED "$delay_single_quote_subst"`'
@@ -11701,7 +11856,7 @@
  file_list_spec='`$ECHO "$file_list_spec" | $SED "$delay_single_quote_subst"`'
  variables_saved_for_relink='`$ECHO "$variables_saved_for_relink" | $SED "$delay_single_quote_subst"`'
  need_lib_prefix='`$ECHO "$need_lib_prefix" | $SED "$delay_single_quote_subst"`'
-@@ -14257,8 +14921,13 @@ reload_flag \
+@@ -14407,8 +15067,13 @@ reload_flag \
  OBJDUMP \
  deplibs_check_method \
  file_magic_cmd \
@@ -11715,7 +11870,7 @@
  STRIP \
  RANLIB \
  CC \
-@@ -14268,12 +14937,14 @@ lt_cv_sys_global_symbol_pipe \
+@@ -14418,12 +15083,14 @@ lt_cv_sys_global_symbol_pipe \
  lt_cv_sys_global_symbol_to_cdecl \
  lt_cv_sys_global_symbol_to_c_name_address \
  lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \
@@ -11731,7 +11886,7 @@
  DSYMUTIL \
  NMEDIT \
  LIPO \
-@@ -14289,7 +14960,6 @@ no_undefined_flag \
+@@ -14439,7 +15106,6 @@ no_undefined_flag \
  hardcode_libdir_flag_spec \
  hardcode_libdir_flag_spec_ld \
  hardcode_libdir_separator \
@@ -11739,7 +11894,7 @@
  exclude_expsyms \
  include_expsyms \
  file_list_spec \
-@@ -14325,6 +14995,7 @@ module_cmds \
+@@ -14475,6 +15141,7 @@ module_cmds \
  module_expsym_cmds \
  export_symbols_cmds \
  prelink_cmds \
@@ -11747,7 +11902,7 @@
  postinstall_cmds \
  postuninstall_cmds \
  finish_cmds \
-@@ -15081,7 +15752,8 @@ $as_echo X"$file" |
+@@ -15231,7 +15898,8 @@ $as_echo X"$file" |
  # NOTE: Changes made to this file will be lost: look at ltmain.sh.
  #
  #   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
@@ -11757,7 +11912,7 @@
  #   Written by Gordon Matzigkeit, 1996
  #
  #   This file is part of GNU Libtool.
-@@ -15184,19 +15856,42 @@ SP2NL=$lt_lt_SP2NL
+@@ -15334,19 +16002,42 @@ SP2NL=$lt_lt_SP2NL
  # turn newlines into spaces.
  NL2SP=$lt_lt_NL2SP
  
@@ -11801,7 +11956,7 @@
  # A symbol stripping program.
  STRIP=$lt_STRIP
  
-@@ -15226,6 +15921,12 @@ global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
+@@ -15376,6 +16067,12 @@ global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
  # Transform the output of nm in a C name address pair when lib prefix is needed.
  global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
  
@@ -11814,7 +11969,7 @@
  # The name of the directory that contains temporary libtool files.
  objdir=$objdir
  
-@@ -15235,6 +15936,9 @@ MAGIC_CMD=$MAGIC_CMD
+@@ -15385,6 +16082,9 @@ MAGIC_CMD=$MAGIC_CMD
  # Must we lock files when doing compilation?
  need_locks=$lt_need_locks
  
@@ -11824,7 +11979,7 @@
  # Tool to manipulate archived DWARF debug symbol files on Mac OS X.
  DSYMUTIL=$lt_DSYMUTIL
  
-@@ -15349,12 +16053,12 @@ with_gcc=$GCC
+@@ -15499,12 +16199,12 @@ with_gcc=$GCC
  # Compiler flag to turn off builtin functions.
  no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag
  
@@ -11840,7 +11995,7 @@
  # Compiler flag to prevent dynamic linking.
  link_static_flag=$lt_lt_prog_compiler_static
  
-@@ -15441,9 +16145,6 @@ inherit_rpath=$inherit_rpath
+@@ -15591,9 +16291,6 @@ inherit_rpath=$inherit_rpath
  # Whether libtool must link a program against all its dependency libraries.
  link_all_deplibs=$link_all_deplibs
  
@@ -11850,7 +12005,7 @@
  # Set to "yes" if exported symbols are required.
  always_export_symbols=$always_export_symbols
  
-@@ -15459,6 +16160,9 @@ include_expsyms=$lt_include_expsyms
+@@ -15609,6 +16306,9 @@ include_expsyms=$lt_include_expsyms
  # Commands necessary for linking programs (against libraries) with templates.
  prelink_cmds=$lt_prelink_cmds
  
@@ -11860,7 +12015,7 @@
  # Specify filename containing input files.
  file_list_spec=$lt_file_list_spec
  
-@@ -15491,210 +16195,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
+@@ -15641,210 +16341,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
    # if finds mixed CR/LF and LF-only lines.  Since sed operates in
    # text mode, it properly converts lines to CR/LF.  This bash problem
    # is reportedly fixed, but why not run on old versions too?
@@ -12235,7 +12390,7 @@
    chmod +x "$ofile"
  
 diff --git a/libtool.m4 b/libtool.m4
-index e993b621ac2..7715af647f4 100644
+index 9a13f3b117a..5be47564443 100644
 --- a/libtool.m4
 +++ b/libtool.m4
 @@ -1,7 +1,8 @@
@@ -12445,7 +12600,7 @@
  # _LT_ENABLE_LOCK
  # ---------------
  m4_defun([_LT_ENABLE_LOCK],
-@@ -1320,14 +1369,47 @@ need_locks="$enable_libtool_lock"
+@@ -1320,6 +1369,51 @@ need_locks="$enable_libtool_lock"
  ])# _LT_ENABLE_LOCK
  
  
@@ -12453,6 +12608,14 @@
 +# -----------
 +m4_defun([_LT_PROG_AR],
 +[AC_CHECK_TOOLS(AR, [ar], false)
++  touch conftest.c
++  $AR $plugin_option rc conftest.a conftest.c
++  if test "$?" != 0; then
++    AC_MSG_WARN([Failed: $AR $plugin_option rc])
++  else
++    AR="$AR $plugin_option"
++  fi
++  rm -f conftest.*
 +: ${AR=ar}
 +: ${AR_FLAGS=cru}
 +_LT_DECL([], [AR], [1], [The archiver])
@@ -12489,16 +12652,32 @@
  # _LT_CMD_OLD_ARCHIVE
  # -------------------
  m4_defun([_LT_CMD_OLD_ARCHIVE],
--[AC_CHECK_TOOL(AR, ar, false)
+@@ -1336,23 +1430,7 @@ for plugin in $plugin_names; do
+   fi
+ done
+ 
+-AC_CHECK_TOOL(AR, ar, false)
 -test -z "$AR" && AR=ar
+-if test -n "$plugin_option"; then
+-  if $AR --help 2>&1 | grep -q "\--plugin"; then
+-    touch conftest.c
+-    $AR $plugin_option rc conftest.a conftest.c
+-    if test "$?" != 0; then
+-      AC_MSG_WARN([Failed: $AR $plugin_option rc])
+-    else
+-      AR="$AR $plugin_option"
+-    fi
+-    rm -f conftest.*
+-  fi
+-fi
 -test -z "$AR_FLAGS" && AR_FLAGS=cru
 -_LT_DECL([], [AR], [1], [The archiver])
 -_LT_DECL([], [AR_FLAGS], [1])
-+[_LT_PROG_AR
++_LT_PROG_AR
  
  AC_CHECK_TOOL(STRIP, strip, :)
  test -z "$STRIP" && STRIP=:
-@@ -1623,7 +1705,7 @@ else
+@@ -1653,7 +1731,7 @@ else
    lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
    lt_status=$lt_dlunknown
    cat > conftest.$ac_ext <<_LT_EOF
@@ -12507,7 +12686,7 @@
  #include "confdefs.h"
  
  #if HAVE_DLFCN_H
-@@ -1667,10 +1749,10 @@ else
+@@ -1697,10 +1775,10 @@ else
  /* When -fvisbility=hidden is used, assume the code has been annotated
     correspondingly for the symbols needed.  */
  #if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
@@ -12520,7 +12699,7 @@
  int main ()
  {
    void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-@@ -2210,8 +2292,9 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -2240,8 +2318,9 @@ cygwin* | mingw* | pw32* | cegcc*)
    need_version=no
    need_lib_prefix=no
  
@@ -12532,7 +12711,7 @@
      library_names_spec='$libname.dll.a'
      # DLL is installed to $(libdir)/../bin by postinstall_cmds
      postinstall_cmds='base_file=`basename \${file}`~
-@@ -2244,13 +2327,71 @@ m4_if([$1], [],[
+@@ -2274,13 +2353,71 @@ m4_if([$1], [],[
        library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
        ;;
      esac
@@ -12605,7 +12784,7 @@
    # FIXME: first we should search . and the directory the executable is in
    shlibpath_var=PATH
    ;;
-@@ -2332,7 +2473,7 @@ haiku*)
+@@ -2362,7 +2499,7 @@ haiku*)
    soname_spec='${libname}${release}${shared_ext}$major'
    shlibpath_var=LIBRARY_PATH
    shlibpath_overrides_runpath=yes
@@ -12614,7 +12793,7 @@
    hardcode_into_libs=yes
    ;;
  
-@@ -2940,6 +3081,11 @@ case $reload_flag in
+@@ -2970,6 +3107,11 @@ case $reload_flag in
  esac
  reload_cmds='$LD$reload_flag -o $output$reload_objs'
  case $host_os in
@@ -12626,7 +12805,7 @@
    darwin*)
      if test "$GCC" = yes; then
        reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
-@@ -3006,7 +3152,8 @@ mingw* | pw32*)
+@@ -3036,7 +3178,8 @@ mingw* | pw32*)
      lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
      lt_cv_file_magic_cmd='func_win32_libid'
    else
@@ -12636,7 +12815,7 @@
      lt_cv_file_magic_cmd='$OBJDUMP -f'
    fi
    ;;
-@@ -3157,6 +3304,21 @@ tpf*)
+@@ -3187,6 +3330,21 @@ tpf*)
    ;;
  esac
  ])
@@ -12658,7 +12837,7 @@
  file_magic_cmd=$lt_cv_file_magic_cmd
  deplibs_check_method=$lt_cv_deplibs_check_method
  test -z "$deplibs_check_method" && deplibs_check_method=unknown
-@@ -3164,7 +3326,11 @@ test -z "$deplibs_check_method" && deplibs_check_method=unknown
+@@ -3194,7 +3352,11 @@ test -z "$deplibs_check_method" && deplibs_check_method=unknown
  _LT_DECL([], [deplibs_check_method], [1],
      [Method to check whether dependent libraries are shared objects])
  _LT_DECL([], [file_magic_cmd], [1],
@@ -12671,7 +12850,7 @@
  ])# _LT_CHECK_MAGIC_METHOD
  
  
-@@ -3267,6 +3433,67 @@ dnl aclocal-1.4 backwards compatibility:
+@@ -3297,6 +3459,67 @@ dnl aclocal-1.4 backwards compatibility:
  dnl AC_DEFUN([AM_PROG_NM], [])
  dnl AC_DEFUN([AC_PROG_NM], [])
  
@@ -12739,7 +12918,7 @@
  
  # LT_LIB_M
  # --------
-@@ -3393,8 +3620,8 @@ esac
+@@ -3423,8 +3646,8 @@ esac
  lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
  
  # Transform an extracted symbol line into symbol name and symbol address
@@ -12750,7 +12929,7 @@
  
  # Handle CRLF in mingw tool chain
  opt_cr=
-@@ -3430,6 +3657,7 @@ for ac_symprfx in "" "_"; do
+@@ -3460,6 +3683,7 @@ for ac_symprfx in "" "_"; do
    else
      lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[	 ]]\($symcode$symcode*\)[[	 ]][[	 ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
    fi
@@ -12758,7 +12937,7 @@
  
    # Check to see that the pipe works correctly.
    pipe_works=no
-@@ -3463,6 +3691,18 @@ _LT_EOF
+@@ -3493,6 +3717,18 @@ _LT_EOF
        if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
  	if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
  	  cat <<_LT_EOF > conftest.$ac_ext
@@ -12777,7 +12956,7 @@
  #ifdef __cplusplus
  extern "C" {
  #endif
-@@ -3474,7 +3714,7 @@ _LT_EOF
+@@ -3504,7 +3740,7 @@ _LT_EOF
  	  cat <<_LT_EOF >> conftest.$ac_ext
  
  /* The mapping between symbol names and symbols.  */
@@ -12786,7 +12965,7 @@
    const char *name;
    void       *address;
  }
-@@ -3500,15 +3740,15 @@ static const void *lt_preloaded_setup() {
+@@ -3530,15 +3766,15 @@ static const void *lt_preloaded_setup() {
  _LT_EOF
  	  # Now try linking the two files.
  	  mv conftest.$ac_objext conftstm.$ac_objext
@@ -12806,7 +12985,7 @@
  	else
  	  echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
  	fi
-@@ -3541,6 +3781,13 @@ else
+@@ -3571,6 +3807,13 @@ else
    AC_MSG_RESULT(ok)
  fi
  
@@ -12820,7 +12999,7 @@
  _LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
      [Take the output of nm and produce a listing of raw symbols and C names])
  _LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1],
-@@ -3551,6 +3798,8 @@ _LT_DECL([global_symbol_to_c_name_address],
+@@ -3581,6 +3824,8 @@ _LT_DECL([global_symbol_to_c_name_address],
  _LT_DECL([global_symbol_to_c_name_address_lib_prefix],
      [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
      [Transform the output of nm in a C name address pair when lib prefix is needed])
@@ -12829,7 +13008,7 @@
  ]) # _LT_CMD_GLOBAL_SYMBOLS
  
  
-@@ -3562,7 +3811,6 @@ _LT_TAGVAR(lt_prog_compiler_wl, $1)=
+@@ -3592,7 +3837,6 @@ _LT_TAGVAR(lt_prog_compiler_wl, $1)=
  _LT_TAGVAR(lt_prog_compiler_pic, $1)=
  _LT_TAGVAR(lt_prog_compiler_static, $1)=
  
@@ -12837,7 +13016,7 @@
  m4_if([$1], [CXX], [
    # C++ specific cases for pic, static, wl, etc.
    if test "$GXX" = yes; then
-@@ -3668,6 +3916,12 @@ m4_if([$1], [CXX], [
+@@ -3698,6 +3942,12 @@ m4_if([$1], [CXX], [
  	  ;;
  	esac
  	;;
@@ -12850,7 +13029,7 @@
        dgux*)
  	case $cc_basename in
  	  ec++*)
-@@ -3820,7 +4074,7 @@ m4_if([$1], [CXX], [
+@@ -3850,7 +4100,7 @@ m4_if([$1], [CXX], [
  	;;
        solaris*)
  	case $cc_basename in
@@ -12859,7 +13038,7 @@
  	    # Sun C++ 4.2, 5.x and Centerline C++
  	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
  	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
-@@ -4043,6 +4297,12 @@ m4_if([$1], [CXX], [
+@@ -4073,6 +4323,12 @@ m4_if([$1], [CXX], [
  	_LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared'
  	_LT_TAGVAR(lt_prog_compiler_static, $1)='--static'
  	;;
@@ -12872,7 +13051,7 @@
        pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
          # Portland Group compilers (*not* the Pentium gcc compiler,
  	# which looks to be a dead project)
-@@ -4105,7 +4365,7 @@ m4_if([$1], [CXX], [
+@@ -4135,7 +4391,7 @@ m4_if([$1], [CXX], [
        _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
        _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
        case $cc_basename in
@@ -12881,7 +13060,7 @@
  	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';;
        *)
  	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';;
-@@ -4162,9 +4422,11 @@ case $host_os in
+@@ -4192,9 +4448,11 @@ case $host_os in
      _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])"
      ;;
  esac
@@ -12896,7 +13075,7 @@
  
  #
  # Check to make sure the PIC flag actually works.
-@@ -4183,6 +4445,8 @@ fi
+@@ -4213,6 +4471,8 @@ fi
  _LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1],
  	[Additional compiler flags for building library objects])
  
@@ -12905,7 +13084,7 @@
  #
  # Check to make sure the static flag actually works.
  #
-@@ -4203,6 +4467,7 @@ _LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1],
+@@ -4233,6 +4493,7 @@ _LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1],
  m4_defun([_LT_LINKER_SHLIBS],
  [AC_REQUIRE([LT_PATH_LD])dnl
  AC_REQUIRE([LT_PATH_NM])dnl
@@ -12913,7 +13092,7 @@
  m4_require([_LT_FILEUTILS_DEFAULTS])dnl
  m4_require([_LT_DECL_EGREP])dnl
  m4_require([_LT_DECL_SED])dnl
-@@ -4211,6 +4476,7 @@ m4_require([_LT_TAG_COMPILER])dnl
+@@ -4241,6 +4502,7 @@ m4_require([_LT_TAG_COMPILER])dnl
  AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
  m4_if([$1], [CXX], [
    _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
@@ -12921,7 +13100,7 @@
    case $host_os in
    aix[[4-9]]*)
      # If we're using GNU nm, then we don't want the "-C" option.
-@@ -4225,15 +4491,20 @@ m4_if([$1], [CXX], [
+@@ -4255,15 +4517,20 @@ m4_if([$1], [CXX], [
      ;;
    pw32*)
      _LT_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds"
@@ -12947,7 +13126,7 @@
  ], [
    runpath_var=
    _LT_TAGVAR(allow_undefined_flag, $1)=
-@@ -4401,7 +4672,8 @@ _LT_EOF
+@@ -4431,7 +4698,8 @@ _LT_EOF
        _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
        _LT_TAGVAR(always_export_symbols, $1)=no
        _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
@@ -12957,7 +13136,7 @@
  
        if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
          _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
-@@ -4500,12 +4772,12 @@ _LT_EOF
+@@ -4530,12 +4798,12 @@ _LT_EOF
  	  _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive'
  	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
  	  _LT_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='-rpath $libdir'
@@ -12972,7 +13151,7 @@
  	  fi
  	  ;;
  	esac
-@@ -4519,8 +4791,8 @@ _LT_EOF
+@@ -4549,8 +4817,8 @@ _LT_EOF
  	_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
  	wlarc=
        else
@@ -12983,7 +13162,7 @@
        fi
        ;;
  
-@@ -4538,8 +4810,8 @@ _LT_EOF
+@@ -4568,8 +4836,8 @@ _LT_EOF
  
  _LT_EOF
        elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
@@ -12994,7 +13173,7 @@
        else
  	_LT_TAGVAR(ld_shlibs, $1)=no
        fi
-@@ -4585,8 +4857,8 @@ _LT_EOF
+@@ -4615,8 +4883,8 @@ _LT_EOF
  
      *)
        if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
@@ -13005,7 +13184,7 @@
        else
  	_LT_TAGVAR(ld_shlibs, $1)=no
        fi
-@@ -4716,7 +4988,7 @@ _LT_EOF
+@@ -4746,7 +5014,7 @@ _LT_EOF
  	_LT_TAGVAR(allow_undefined_flag, $1)='-berok'
          # Determine the default libpath from the value encoded in an
          # empty executable.
@@ -13014,7 +13193,7 @@
          _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
          _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
        else
-@@ -4727,7 +4999,7 @@ _LT_EOF
+@@ -4757,7 +5025,7 @@ _LT_EOF
  	else
  	 # Determine the default libpath from the value encoded in an
  	 # empty executable.
@@ -13023,7 +13202,7 @@
  	 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
  	  # Warning - without using the other run time loading flags,
  	  # -berok will link without error, but may produce a broken library.
-@@ -4771,20 +5043,63 @@ _LT_EOF
+@@ -4801,20 +5069,63 @@ _LT_EOF
        # Microsoft Visual C++.
        # hardcode_libdir_flag_spec is actually meaningless, as there is
        # no search path for DLLs.
@@ -13101,7 +13280,7 @@
        ;;
  
      darwin* | rhapsody*)
-@@ -4818,7 +5133,7 @@ _LT_EOF
+@@ -4848,7 +5159,7 @@ _LT_EOF
  
      # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
      freebsd* | dragonfly*)
@@ -13110,7 +13289,7 @@
        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
        _LT_TAGVAR(hardcode_direct, $1)=yes
        _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-@@ -4826,7 +5141,7 @@ _LT_EOF
+@@ -4856,7 +5167,7 @@ _LT_EOF
  
      hpux9*)
        if test "$GCC" = yes; then
@@ -13119,7 +13298,7 @@
        else
  	_LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
        fi
-@@ -4842,7 +5157,7 @@ _LT_EOF
+@@ -4872,7 +5183,7 @@ _LT_EOF
  
      hpux10*)
        if test "$GCC" = yes && test "$with_gnu_ld" = no; then
@@ -13128,7 +13307,7 @@
        else
  	_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
        fi
-@@ -4866,10 +5181,10 @@ _LT_EOF
+@@ -4896,10 +5207,10 @@ _LT_EOF
  	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
  	  ;;
  	ia64*)
@@ -13141,7 +13320,7 @@
  	  ;;
  	esac
        else
-@@ -4916,16 +5231,31 @@ _LT_EOF
+@@ -4946,16 +5257,31 @@ _LT_EOF
  
      irix5* | irix6* | nonstopux*)
        if test "$GCC" = yes; then
@@ -13180,7 +13359,7 @@
        else
  	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
  	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
-@@ -5010,7 +5340,7 @@ _LT_EOF
+@@ -5040,7 +5366,7 @@ _LT_EOF
      osf4* | osf5*)	# as osf3* with the addition of -msym flag
        if test "$GCC" = yes; then
  	_LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
@@ -13189,7 +13368,7 @@
  	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
        else
  	_LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
-@@ -5029,9 +5359,9 @@ _LT_EOF
+@@ -5059,9 +5385,9 @@ _LT_EOF
        _LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
        if test "$GCC" = yes; then
  	wlarc='${wl}'
@@ -13201,7 +13380,7 @@
        else
  	case `$CC -V 2>&1` in
  	*"Compilers 5.0"*)
-@@ -5303,8 +5633,6 @@ _LT_TAGDECL([], [inherit_rpath], [0],
+@@ -5333,8 +5659,6 @@ _LT_TAGDECL([], [inherit_rpath], [0],
      to runtime path list])
  _LT_TAGDECL([], [link_all_deplibs], [0],
      [Whether libtool must link a program against all its dependency libraries])
@@ -13210,7 +13389,7 @@
  _LT_TAGDECL([], [always_export_symbols], [0],
      [Set to "yes" if exported symbols are required])
  _LT_TAGDECL([], [export_symbols_cmds], [2],
-@@ -5315,6 +5643,8 @@ _LT_TAGDECL([], [include_expsyms], [1],
+@@ -5345,6 +5669,8 @@ _LT_TAGDECL([], [include_expsyms], [1],
      [Symbols that must always be exported])
  _LT_TAGDECL([], [prelink_cmds], [2],
      [Commands necessary for linking programs (against libraries) with templates])
@@ -13219,7 +13398,7 @@
  _LT_TAGDECL([], [file_list_spec], [1],
      [Specify filename containing input files])
  dnl FIXME: Not yet implemented
-@@ -5416,6 +5746,7 @@ CC="$lt_save_CC"
+@@ -5446,6 +5772,7 @@ CC="$lt_save_CC"
  m4_defun([_LT_LANG_CXX_CONFIG],
  [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
  m4_require([_LT_DECL_EGREP])dnl
@@ -13227,7 +13406,7 @@
  if test -n "$CXX" && ( test "X$CXX" != "Xno" &&
      ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) ||
      (test "X$CXX" != "Xg++"))) ; then
-@@ -5477,6 +5808,7 @@ if test "$_lt_caught_CXX_error" != yes; then
+@@ -5507,6 +5834,7 @@ if test "$_lt_caught_CXX_error" != yes; then
  
    # Allow CC to be a program name with arguments.
    lt_save_CC=$CC
@@ -13235,7 +13414,7 @@
    lt_save_LD=$LD
    lt_save_GCC=$GCC
    GCC=$GXX
-@@ -5494,6 +5826,7 @@ if test "$_lt_caught_CXX_error" != yes; then
+@@ -5524,6 +5852,7 @@ if test "$_lt_caught_CXX_error" != yes; then
    fi
    test -z "${LDCXX+set}" || LD=$LDCXX
    CC=${CXX-"c++"}
@@ -13243,7 +13422,7 @@
    compiler=$CC
    _LT_TAGVAR(compiler, $1)=$CC
    _LT_CC_BASENAME([$compiler])
-@@ -5657,7 +5990,7 @@ if test "$_lt_caught_CXX_error" != yes; then
+@@ -5687,7 +6016,7 @@ if test "$_lt_caught_CXX_error" != yes; then
            _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
            # Determine the default libpath from the value encoded in an empty
            # executable.
@@ -13252,7 +13431,7 @@
            _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
  
            _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
-@@ -5669,7 +6002,7 @@ if test "$_lt_caught_CXX_error" != yes; then
+@@ -5699,7 +6028,7 @@ if test "$_lt_caught_CXX_error" != yes; then
            else
  	    # Determine the default libpath from the value encoded in an
  	    # empty executable.
@@ -13261,7 +13440,7 @@
  	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
  	    # Warning - without using the other run time loading flags,
  	    # -berok will link without error, but may produce a broken library.
-@@ -5711,29 +6044,75 @@ if test "$_lt_caught_CXX_error" != yes; then
+@@ -5741,29 +6070,75 @@ if test "$_lt_caught_CXX_error" != yes; then
          ;;
  
        cygwin* | mingw* | pw32* | cegcc*)
@@ -13360,7 +13539,7 @@
        darwin* | rhapsody*)
          _LT_DARWIN_LINKER_FEATURES($1)
  	;;
-@@ -5808,7 +6187,7 @@ if test "$_lt_caught_CXX_error" != yes; then
+@@ -5838,7 +6213,7 @@ if test "$_lt_caught_CXX_error" != yes; then
              ;;
            *)
              if test "$GXX" = yes; then
@@ -13369,7 +13548,7 @@
              else
                # FIXME: insert proper C++ library support
                _LT_TAGVAR(ld_shlibs, $1)=no
-@@ -5879,10 +6258,10 @@ if test "$_lt_caught_CXX_error" != yes; then
+@@ -5909,10 +6284,10 @@ if test "$_lt_caught_CXX_error" != yes; then
  	            _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
  	            ;;
  	          ia64*)
@@ -13382,7 +13561,7 @@
  	            ;;
  	        esac
  	      fi
-@@ -5923,9 +6302,9 @@ if test "$_lt_caught_CXX_error" != yes; then
+@@ -5953,9 +6328,9 @@ if test "$_lt_caught_CXX_error" != yes; then
            *)
  	    if test "$GXX" = yes; then
  	      if test "$with_gnu_ld" = no; then
@@ -13394,7 +13573,7 @@
  	      fi
  	    fi
  	    _LT_TAGVAR(link_all_deplibs, $1)=yes
-@@ -5995,20 +6374,20 @@ if test "$_lt_caught_CXX_error" != yes; then
+@@ -6025,20 +6400,20 @@ if test "$_lt_caught_CXX_error" != yes; then
  	      _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
  		rm -rf $tpldir~
  		$CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
@@ -13419,7 +13598,7 @@
  	      ;;
  	    *) # Version 6 and above use weak symbols
  	      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
-@@ -6203,7 +6582,7 @@ if test "$_lt_caught_CXX_error" != yes; then
+@@ -6233,7 +6608,7 @@ if test "$_lt_caught_CXX_error" != yes; then
  	          _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
  		  ;;
  	        *)
@@ -13428,7 +13607,7 @@
  		  ;;
  	      esac
  
-@@ -6249,7 +6628,7 @@ if test "$_lt_caught_CXX_error" != yes; then
+@@ -6279,7 +6654,7 @@ if test "$_lt_caught_CXX_error" != yes; then
  
        solaris*)
          case $cc_basename in
@@ -13437,7 +13616,7 @@
  	    # Sun C++ 4.2, 5.x and Centerline C++
              _LT_TAGVAR(archive_cmds_need_lc,$1)=yes
  	    _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
-@@ -6290,9 +6669,9 @@ if test "$_lt_caught_CXX_error" != yes; then
+@@ -6320,9 +6695,9 @@ if test "$_lt_caught_CXX_error" != yes; then
  	    if test "$GXX" = yes && test "$with_gnu_ld" = no; then
  	      _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs'
  	      if $CC --version | $GREP -v '^2\.7' > /dev/null; then
@@ -13449,7 +13628,7 @@
  
  	        # Commands to make compiler produce verbose output that lists
  	        # what "hidden" libraries, object files and flags are used when
-@@ -6421,6 +6800,7 @@ if test "$_lt_caught_CXX_error" != yes; then
+@@ -6451,6 +6826,7 @@ if test "$_lt_caught_CXX_error" != yes; then
    fi # test -n "$compiler"
  
    CC=$lt_save_CC
@@ -13457,7 +13636,7 @@
    LDCXX=$LD
    LD=$lt_save_LD
    GCC=$lt_save_GCC
-@@ -6435,6 +6815,29 @@ AC_LANG_POP
+@@ -6465,6 +6841,29 @@ AC_LANG_POP
  ])# _LT_LANG_CXX_CONFIG
  
  
@@ -13487,7 +13666,7 @@
  # _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
  # ---------------------------------
  # Figure out "hidden" library dependencies from verbose
-@@ -6443,6 +6846,7 @@ AC_LANG_POP
+@@ -6473,6 +6872,7 @@ AC_LANG_POP
  # objects, libraries and library flags.
  m4_defun([_LT_SYS_HIDDEN_LIBDEPS],
  [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
@@ -13495,7 +13674,7 @@
  # Dependencies to place before and after the object being linked:
  _LT_TAGVAR(predep_objects, $1)=
  _LT_TAGVAR(postdep_objects, $1)=
-@@ -6493,6 +6897,13 @@ public class foo {
+@@ -6523,6 +6923,13 @@ public class foo {
  };
  _LT_EOF
  ])
@@ -13509,7 +13688,7 @@
  dnl Parse the compiler output and extract the necessary
  dnl objects, libraries and library flags.
  if AC_TRY_EVAL(ac_compile); then
-@@ -6504,7 +6915,7 @@ if AC_TRY_EVAL(ac_compile); then
+@@ -6534,7 +6941,7 @@ if AC_TRY_EVAL(ac_compile); then
    pre_test_object_deps_done=no
  
    for p in `eval "$output_verbose_link_cmd"`; do
@@ -13518,7 +13697,7 @@
  
      -L* | -R* | -l*)
         # Some compilers place space between "-{L,R}" and the path.
-@@ -6513,13 +6924,22 @@ if AC_TRY_EVAL(ac_compile); then
+@@ -6543,13 +6950,22 @@ if AC_TRY_EVAL(ac_compile); then
            test $p = "-R"; then
  	 prev=$p
  	 continue
@@ -13545,7 +13724,7 @@
  	   # Internal compiler library paths should come after those
  	   # provided the user.  The postdeps already come after the
  	   # user supplied libs so there is no need to process them.
-@@ -6539,8 +6959,10 @@ if AC_TRY_EVAL(ac_compile); then
+@@ -6569,8 +6985,10 @@ if AC_TRY_EVAL(ac_compile); then
  	   _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} ${prev}${p}"
  	 fi
         fi
@@ -13556,7 +13735,7 @@
      *.$objext)
         # This assumes that the test object file only shows up
         # once in the compiler output.
-@@ -6576,6 +6998,7 @@ else
+@@ -6606,6 +7024,7 @@ else
  fi
  
  $RM -f confest.$objext
@@ -13564,7 +13743,7 @@
  
  # PORTME: override above test on systems where it is broken
  m4_if([$1], [CXX],
-@@ -6612,7 +7035,7 @@ linux*)
+@@ -6642,7 +7061,7 @@ linux*)
  
  solaris*)
    case $cc_basename in
@@ -13573,7 +13752,7 @@
      # The more standards-conforming stlport4 library is
      # incompatible with the Cstd library. Avoid specifying
      # it if it's in CXXFLAGS. Ignore libCrun as
-@@ -6725,7 +7148,9 @@ if test "$_lt_disable_F77" != yes; then
+@@ -6755,7 +7174,9 @@ if test "$_lt_disable_F77" != yes; then
    # Allow CC to be a program name with arguments.
    lt_save_CC="$CC"
    lt_save_GCC=$GCC
@@ -13583,7 +13762,7 @@
    compiler=$CC
    _LT_TAGVAR(compiler, $1)=$CC
    _LT_CC_BASENAME([$compiler])
-@@ -6779,6 +7204,7 @@ if test "$_lt_disable_F77" != yes; then
+@@ -6809,6 +7230,7 @@ if test "$_lt_disable_F77" != yes; then
  
    GCC=$lt_save_GCC
    CC="$lt_save_CC"
@@ -13591,7 +13770,7 @@
  fi # test "$_lt_disable_F77" != yes
  
  AC_LANG_POP
-@@ -6855,7 +7281,9 @@ if test "$_lt_disable_FC" != yes; then
+@@ -6885,7 +7307,9 @@ if test "$_lt_disable_FC" != yes; then
    # Allow CC to be a program name with arguments.
    lt_save_CC="$CC"
    lt_save_GCC=$GCC
@@ -13601,7 +13780,7 @@
    compiler=$CC
    GCC=$ac_cv_fc_compiler_gnu
  
-@@ -6911,7 +7339,8 @@ if test "$_lt_disable_FC" != yes; then
+@@ -6941,7 +7365,8 @@ if test "$_lt_disable_FC" != yes; then
    fi # test -n "$compiler"
  
    GCC=$lt_save_GCC
@@ -13611,7 +13790,7 @@
  fi # test "$_lt_disable_FC" != yes
  
  AC_LANG_POP
-@@ -6948,10 +7377,12 @@ _LT_COMPILER_BOILERPLATE
+@@ -6978,10 +7403,12 @@ _LT_COMPILER_BOILERPLATE
  _LT_LINKER_BOILERPLATE
  
  # Allow CC to be a program name with arguments.
@@ -13625,7 +13804,7 @@
  compiler=$CC
  _LT_TAGVAR(compiler, $1)=$CC
  _LT_TAGVAR(LD, $1)="$LD"
-@@ -6982,7 +7413,8 @@ fi
+@@ -7012,7 +7439,8 @@ fi
  AC_LANG_RESTORE
  
  GCC=$lt_save_GCC
@@ -13635,7 +13814,7 @@
  ])# _LT_LANG_GCJ_CONFIG
  
  
-@@ -7017,9 +7449,11 @@ _LT_LINKER_BOILERPLATE
+@@ -7047,9 +7475,11 @@ _LT_LINKER_BOILERPLATE
  
  # Allow CC to be a program name with arguments.
  lt_save_CC="$CC"
@@ -13647,7 +13826,7 @@
  compiler=$CC
  _LT_TAGVAR(compiler, $1)=$CC
  _LT_CC_BASENAME([$compiler])
-@@ -7032,7 +7466,8 @@ fi
+@@ -7062,7 +7492,8 @@ fi
  
  GCC=$lt_save_GCC
  AC_LANG_RESTORE
@@ -13657,7 +13836,7 @@
  ])# _LT_LANG_RC_CONFIG
  
  
-@@ -7091,6 +7526,15 @@ _LT_DECL([], [OBJDUMP], [1], [An object symbol dumper])
+@@ -7121,6 +7552,15 @@ _LT_DECL([], [OBJDUMP], [1], [An object symbol dumper])
  AC_SUBST([OBJDUMP])
  ])
  
@@ -13673,7 +13852,7 @@
  
  # _LT_DECL_SED
  # ------------
-@@ -7184,8 +7628,8 @@ m4_defun([_LT_CHECK_SHELL_FEATURES],
+@@ -7214,8 +7654,8 @@ m4_defun([_LT_CHECK_SHELL_FEATURES],
  # Try some XSI features
  xsi_shell=no
  ( _lt_dummy="a/b/c"
@@ -13684,7 +13863,7 @@
      && eval 'test $(( 1 + 1 )) -eq 2 \
      && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
    && xsi_shell=yes
-@@ -7224,206 +7668,162 @@ _LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
+@@ -7254,206 +7694,162 @@ _LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
  ])# _LT_CHECK_SHELL_FEATURES
  
  
@@ -19318,7 +19497,7 @@
  # These exist entirely to fool aclocal when bootstrapping libtool.
  #
 diff --git a/opcodes/configure b/opcodes/configure
-index dca94db9c3f..26dcc4b82dd 100755
+index 3513e408ce1..133948631e9 100755
 --- a/opcodes/configure
 +++ b/opcodes/configure
 @@ -680,6 +680,9 @@ OTOOL
@@ -19337,9 +19516,9 @@
  with_gnu_ld
 +with_libtool_sysroot
  enable_libtool_lock
+ enable_checking
  enable_targets
- enable_werror
-@@ -1462,6 +1466,8 @@ Optional Packages:
+@@ -1464,6 +1468,8 @@ Optional Packages:
    --with-pic              try to use only PIC/non-PIC objects [default=use
                            both]
    --with-gnu-ld           assume the C compiler uses GNU ld [default=no]
@@ -19348,7 +19527,7 @@
  
  Some influential environment variables:
    CC          C compiler command
-@@ -5403,8 +5409,8 @@ esac
+@@ -4751,8 +4757,8 @@ esac
  
  
  
@@ -19359,7 +19538,7 @@
  
  
  
-@@ -5444,7 +5450,7 @@ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
+@@ -4792,7 +4798,7 @@ ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
  { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5
  $as_echo_n "checking how to print strings... " >&6; }
  # Test print first, because it will be a builtin if present.
@@ -19368,7 +19547,7 @@
     test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
    ECHO='print -r --'
  elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
-@@ -6130,8 +6136,8 @@ $as_echo_n "checking whether the shell understands some XSI constructs... " >&6;
+@@ -5478,8 +5484,8 @@ $as_echo_n "checking whether the shell understands some XSI constructs... " >&6;
  # Try some XSI features
  xsi_shell=no
  ( _lt_dummy="a/b/c"
@@ -19379,7 +19558,7 @@
      && eval 'test $(( 1 + 1 )) -eq 2 \
      && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
    && xsi_shell=yes
-@@ -6180,6 +6186,80 @@ esac
+@@ -5528,6 +5534,80 @@ esac
  
  
  
@@ -19460,7 +19639,7 @@
  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5
  $as_echo_n "checking for $LD option to reload object files... " >&6; }
  if ${lt_cv_ld_reload_flag+:} false; then :
-@@ -6196,6 +6276,11 @@ case $reload_flag in
+@@ -5544,6 +5624,11 @@ case $reload_flag in
  esac
  reload_cmds='$LD$reload_flag -o $output$reload_objs'
  case $host_os in
@@ -19472,7 +19651,7 @@
    darwin*)
      if test "$GCC" = yes; then
        reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
-@@ -6364,7 +6449,8 @@ mingw* | pw32*)
+@@ -5712,7 +5797,8 @@ mingw* | pw32*)
      lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
      lt_cv_file_magic_cmd='func_win32_libid'
    else
@@ -19482,7 +19661,7 @@
      lt_cv_file_magic_cmd='$OBJDUMP -f'
    fi
    ;;
-@@ -6518,6 +6604,21 @@ esac
+@@ -5866,6 +5952,21 @@ esac
  fi
  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5
  $as_echo "$lt_cv_deplibs_check_method" >&6; }
@@ -19504,7 +19683,7 @@
  file_magic_cmd=$lt_cv_file_magic_cmd
  deplibs_check_method=$lt_cv_deplibs_check_method
  test -z "$deplibs_check_method" && deplibs_check_method=unknown
-@@ -6531,11 +6632,164 @@ test -z "$deplibs_check_method" && deplibs_check_method=unknown
+@@ -5881,6 +5982,157 @@ test -z "$deplibs_check_method" && deplibs_check_method=unknown
  
  
  
@@ -19518,11 +19697,7 @@
 +
 +
 +
- 
- 
- if test -n "$ac_tool_prefix"; then
--  # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
--set dummy ${ac_tool_prefix}ar; ac_word=$2
++if test -n "$ac_tool_prefix"; then
 +  # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
 +set dummy ${ac_tool_prefix}dlltool; ac_word=$2
 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
@@ -19663,7 +19838,15 @@
 +
 +
 +
-+if test -n "$ac_tool_prefix"; then
+ plugin_option=
+ plugin_names="liblto_plugin.so liblto_plugin-0.dll cyglto_plugin-0.dll"
+ for plugin in $plugin_names; do
+@@ -5895,8 +6147,10 @@ for plugin in $plugin_names; do
+ done
+ 
+ if test -n "$ac_tool_prefix"; then
+-  # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
+-set dummy ${ac_tool_prefix}ar; ac_word=$2
 +  for ac_prog in ar
 +  do
 +    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
@@ -19671,7 +19854,7 @@
  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
  $as_echo_n "checking for $ac_word... " >&6; }
  if ${ac_cv_prog_AR+:} false; then :
-@@ -6551,7 +6805,7 @@ do
+@@ -5912,7 +6166,7 @@ do
    test -z "$as_dir" && as_dir=.
      for ac_exec_ext in '' $ac_executable_extensions; do
    if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
@@ -19680,7 +19863,7 @@
      $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
      break 2
    fi
-@@ -6571,11 +6825,15 @@ $as_echo "no" >&6; }
+@@ -5932,11 +6186,15 @@ $as_echo "no" >&6; }
  fi
  
  
@@ -19699,7 +19882,7 @@
  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
  $as_echo_n "checking for $ac_word... " >&6; }
  if ${ac_cv_prog_ac_ct_AR+:} false; then :
-@@ -6591,7 +6849,7 @@ do
+@@ -5952,7 +6210,7 @@ do
    test -z "$as_dir" && as_dir=.
      for ac_exec_ext in '' $ac_executable_extensions; do
    if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
@@ -19708,7 +19891,7 @@
      $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
      break 2
    fi
-@@ -6610,6 +6868,10 @@ else
+@@ -5971,6 +6229,10 @@ else
  $as_echo "no" >&6; }
  fi
  
@@ -19719,7 +19902,7 @@
    if test "x$ac_ct_AR" = x; then
      AR="false"
    else
-@@ -6621,16 +6883,72 @@ ac_tool_warned=yes ;;
+@@ -5982,25 +6244,20 @@ ac_tool_warned=yes ;;
  esac
      AR=$ac_ct_AR
    fi
@@ -19728,20 +19911,37 @@
  fi
  
 -test -z "$AR" && AR=ar
+-if test -n "$plugin_option"; then
+-  if $AR --help 2>&1 | grep -q "\--plugin"; then
+-    touch conftest.c
+-    $AR $plugin_option rc conftest.a conftest.c
+-    if test "$?" != 0; then
+-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Failed: $AR $plugin_option rc" >&5
++  touch conftest.c
++  $AR $plugin_option rc conftest.a conftest.c
++  if test "$?" != 0; then
++    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Failed: $AR $plugin_option rc" >&5
+ $as_echo "$as_me: WARNING: Failed: $AR $plugin_option rc" >&2;}
+-    else
+-      AR="$AR $plugin_option"
+-    fi
+-    rm -f conftest.*
++  else
++    AR="$AR $plugin_option"
+   fi
+-fi
 -test -z "$AR_FLAGS" && AR_FLAGS=cru
++  rm -f conftest.*
 +: ${AR=ar}
 +: ${AR_FLAGS=cru}
 +
-+
-+
-+
-+
-+
-+
-+
-+
-+
-+
+ 
+ 
+ 
+@@ -6011,6 +6268,63 @@ test -z "$AR_FLAGS" && AR_FLAGS=cru
+ 
+ 
+ 
 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5
 +$as_echo_n "checking for archiver @FILE support... " >&6; }
 +if ${lt_cv_ar_at_file+:} false; then :
@@ -19754,7 +19954,7 @@
 +int
 +main ()
 +{
- 
++
 +  ;
 +  return 0;
 +}
@@ -19780,23 +19980,29 @@
 +        fi
 +      fi
 +      rm -f conftest.* libconftest.a
- 
++
 +fi
 +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- 
++
 +fi
 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5
 +$as_echo "$lt_cv_ar_at_file" >&6; }
- 
++
 +if test "x$lt_cv_ar_at_file" = xno; then
 +  archiver_list_spec=
 +else
 +  archiver_list_spec=$lt_cv_ar_at_file
 +fi
++
++
++
++
++
++
  
- 
- 
-@@ -6972,8 +7290,8 @@ esac
+ if test -n "$ac_tool_prefix"; then
+   # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
+@@ -6351,8 +6665,8 @@ esac
  lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
  
  # Transform an extracted symbol line into symbol name and symbol address
@@ -19807,7 +20013,7 @@
  
  # Handle CRLF in mingw tool chain
  opt_cr=
-@@ -7009,6 +7327,7 @@ for ac_symprfx in "" "_"; do
+@@ -6388,6 +6702,7 @@ for ac_symprfx in "" "_"; do
    else
      lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[	 ]\($symcode$symcode*\)[	 ][	 ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
    fi
@@ -19815,7 +20021,7 @@
  
    # Check to see that the pipe works correctly.
    pipe_works=no
-@@ -7050,6 +7369,18 @@ _LT_EOF
+@@ -6429,6 +6744,18 @@ _LT_EOF
        if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
  	if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
  	  cat <<_LT_EOF > conftest.$ac_ext
@@ -19834,7 +20040,7 @@
  #ifdef __cplusplus
  extern "C" {
  #endif
-@@ -7061,7 +7392,7 @@ _LT_EOF
+@@ -6440,7 +6767,7 @@ _LT_EOF
  	  cat <<_LT_EOF >> conftest.$ac_ext
  
  /* The mapping between symbol names and symbols.  */
@@ -19843,7 +20049,7 @@
    const char *name;
    void       *address;
  }
-@@ -7087,8 +7418,8 @@ static const void *lt_preloaded_setup() {
+@@ -6466,8 +6793,8 @@ static const void *lt_preloaded_setup() {
  _LT_EOF
  	  # Now try linking the two files.
  	  mv conftest.$ac_objext conftstm.$ac_objext
@@ -19854,7 +20060,7 @@
  	  LIBS="conftstm.$ac_objext"
  	  CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag"
  	  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
-@@ -7098,8 +7429,8 @@ _LT_EOF
+@@ -6477,8 +6804,8 @@ _LT_EOF
    test $ac_status = 0; } && test -s conftest${ac_exeext}; then
  	    pipe_works=yes
  	  fi
@@ -19865,7 +20071,7 @@
  	else
  	  echo "cannot find nm_test_func in $nlist" >&5
  	fi
-@@ -7136,6 +7467,16 @@ else
+@@ -6515,6 +6842,14 @@ else
  $as_echo "ok" >&6; }
  fi
  
@@ -19877,12 +20083,10 @@
 +fi
 +
 +
-+
-+
  
  
  
-@@ -7152,6 +7493,45 @@ fi
+@@ -6533,6 +6868,47 @@ fi
  
  
  
@@ -19925,10 +20129,12 @@
 +
 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${lt_sysroot:-no}" >&5
 +$as_echo "${lt_sysroot:-no}" >&6; }
++
++
  
  
  
-@@ -7363,6 +7743,123 @@ esac
+@@ -6742,6 +7118,123 @@ esac
  
  need_locks="$enable_libtool_lock"
  
@@ -20052,7 +20258,7 @@
  
    case $host_os in
      rhapsody* | darwin*)
-@@ -7926,6 +8423,8 @@ _LT_EOF
+@@ -7305,6 +7798,8 @@ _LT_EOF
        $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5
        echo "$AR cru libconftest.a conftest.o" >&5
        $AR cru libconftest.a conftest.o 2>&5
@@ -20061,7 +20267,7 @@
        cat > conftest.c << _LT_EOF
  int main() { return 0;}
  _LT_EOF
-@@ -8091,7 +8590,8 @@ fi
+@@ -7470,7 +7965,8 @@ fi
  LIBTOOL_DEPS="$ltmain"
  
  # Always use our own libtool.
@@ -20071,7 +20277,7 @@
  
  
  
-@@ -8180,7 +8680,7 @@ aix3*)
+@@ -7559,7 +8055,7 @@ aix3*)
  esac
  
  # Global variables:
@@ -20080,7 +20286,7 @@
  can_build_shared=yes
  
  # All known linkers require a `.a' archive for static linking (except MSVC,
-@@ -8478,8 +8978,6 @@ fi
+@@ -7857,8 +8353,6 @@ fi
  lt_prog_compiler_pic=
  lt_prog_compiler_static=
  
@@ -20089,7 +20295,7 @@
  
    if test "$GCC" = yes; then
      lt_prog_compiler_wl='-Wl,'
-@@ -8645,6 +9143,12 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -8024,6 +8518,12 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
  	lt_prog_compiler_pic='--shared'
  	lt_prog_compiler_static='--static'
  	;;
@@ -20102,7 +20308,7 @@
        pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
          # Portland Group compilers (*not* the Pentium gcc compiler,
  	# which looks to be a dead project)
-@@ -8707,7 +9211,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -8086,7 +8586,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
        lt_prog_compiler_pic='-KPIC'
        lt_prog_compiler_static='-Bstatic'
        case $cc_basename in
@@ -20111,7 +20317,7 @@
  	lt_prog_compiler_wl='-Qoption ld ';;
        *)
  	lt_prog_compiler_wl='-Wl,';;
-@@ -8764,13 +9268,17 @@ case $host_os in
+@@ -8143,13 +8643,17 @@ case $host_os in
      lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC"
      ;;
  esac
@@ -20135,7 +20341,7 @@
  
  #
  # Check to make sure the PIC flag actually works.
-@@ -8831,6 +9339,11 @@ fi
+@@ -8210,6 +8714,11 @@ fi
  
  
  
@@ -20147,7 +20353,7 @@
  #
  # Check to make sure the static flag actually works.
  #
-@@ -9181,7 +9694,8 @@ _LT_EOF
+@@ -8560,7 +9069,8 @@ _LT_EOF
        allow_undefined_flag=unsupported
        always_export_symbols=no
        enable_shared_with_static_runtimes=yes
@@ -20157,7 +20363,7 @@
  
        if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
          archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
-@@ -9280,12 +9794,12 @@ _LT_EOF
+@@ -8659,12 +9169,12 @@ _LT_EOF
  	  whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'
  	  hardcode_libdir_flag_spec=
  	  hardcode_libdir_flag_spec_ld='-rpath $libdir'
@@ -20172,7 +20378,7 @@
  	  fi
  	  ;;
  	esac
-@@ -9299,8 +9813,8 @@ _LT_EOF
+@@ -8678,8 +9188,8 @@ _LT_EOF
  	archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
  	wlarc=
        else
@@ -20183,7 +20389,7 @@
        fi
        ;;
  
-@@ -9318,8 +9832,8 @@ _LT_EOF
+@@ -8697,8 +9207,8 @@ _LT_EOF
  
  _LT_EOF
        elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
@@ -20194,7 +20400,7 @@
        else
  	ld_shlibs=no
        fi
-@@ -9365,8 +9879,8 @@ _LT_EOF
+@@ -8744,8 +9254,8 @@ _LT_EOF
  
      *)
        if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
@@ -20205,7 +20411,7 @@
        else
  	ld_shlibs=no
        fi
-@@ -9496,7 +10010,13 @@ _LT_EOF
+@@ -8875,7 +9385,13 @@ _LT_EOF
  	allow_undefined_flag='-berok'
          # Determine the default libpath from the value encoded in an
          # empty executable.
@@ -20220,7 +20426,7 @@
  /* end confdefs.h.  */
  
  int
-@@ -9509,22 +10029,29 @@ main ()
+@@ -8888,22 +9404,29 @@ main ()
  _ACEOF
  if ac_fn_c_try_link "$LINENO"; then :
  
@@ -20263,7 +20469,7 @@
  
          hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
          archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
-@@ -9536,7 +10063,13 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -8915,7 +9438,13 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  	else
  	 # Determine the default libpath from the value encoded in an
  	 # empty executable.
@@ -20278,7 +20484,7 @@
  /* end confdefs.h.  */
  
  int
-@@ -9549,22 +10082,29 @@ main ()
+@@ -8928,22 +9457,29 @@ main ()
  _ACEOF
  if ac_fn_c_try_link "$LINENO"; then :
  
@@ -20321,7 +20527,7 @@
  
  	 hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
  	  # Warning - without using the other run time loading flags,
-@@ -9609,20 +10149,63 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -8988,20 +9524,63 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
        # Microsoft Visual C++.
        # hardcode_libdir_flag_spec is actually meaningless, as there is
        # no search path for DLLs.
@@ -20399,7 +20605,7 @@
        ;;
  
      darwin* | rhapsody*)
-@@ -9683,7 +10266,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9062,7 +9641,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  
      # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
      freebsd* | dragonfly*)
@@ -20408,7 +20614,7 @@
        hardcode_libdir_flag_spec='-R$libdir'
        hardcode_direct=yes
        hardcode_shlibpath_var=no
-@@ -9691,7 +10274,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9070,7 +9649,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  
      hpux9*)
        if test "$GCC" = yes; then
@@ -20417,7 +20623,7 @@
        else
  	archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
        fi
-@@ -9707,7 +10290,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9086,7 +9665,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  
      hpux10*)
        if test "$GCC" = yes && test "$with_gnu_ld" = no; then
@@ -20426,7 +20632,7 @@
        else
  	archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
        fi
-@@ -9731,10 +10314,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -9110,10 +9689,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  	  archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
  	  ;;
  	ia64*)
@@ -20439,7 +20645,7 @@
  	  ;;
  	esac
        else
-@@ -9813,23 +10396,36 @@ fi
+@@ -9192,23 +9771,36 @@ fi
  
      irix5* | irix6* | nonstopux*)
        if test "$GCC" = yes; then
@@ -20484,7 +20690,7 @@
        else
  	archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
  	archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
-@@ -9914,7 +10510,7 @@ rm -f core conftest.err conftest.$ac_objext \
+@@ -9293,7 +9885,7 @@ rm -f core conftest.err conftest.$ac_objext \
      osf4* | osf5*)	# as osf3* with the addition of -msym flag
        if test "$GCC" = yes; then
  	allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
@@ -20493,7 +20699,7 @@
  	hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
        else
  	allow_undefined_flag=' -expect_unresolved \*'
-@@ -9933,9 +10529,9 @@ rm -f core conftest.err conftest.$ac_objext \
+@@ -9312,9 +9904,9 @@ rm -f core conftest.err conftest.$ac_objext \
        no_undefined_flag=' -z defs'
        if test "$GCC" = yes; then
  	wlarc='${wl}'
@@ -20505,7 +20711,7 @@
        else
  	case `$CC -V 2>&1` in
  	*"Compilers 5.0"*)
-@@ -10511,8 +11107,9 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -9890,8 +10482,9 @@ cygwin* | mingw* | pw32* | cegcc*)
    need_version=no
    need_lib_prefix=no
  
@@ -20517,7 +20723,7 @@
      library_names_spec='$libname.dll.a'
      # DLL is installed to $(libdir)/../bin by postinstall_cmds
      postinstall_cmds='base_file=`basename \${file}`~
-@@ -10545,13 +11142,71 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -9924,13 +10517,71 @@ cygwin* | mingw* | pw32* | cegcc*)
        library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
        ;;
      esac
@@ -20590,7 +20796,7 @@
    # FIXME: first we should search . and the directory the executable is in
    shlibpath_var=PATH
    ;;
-@@ -10633,7 +11288,7 @@ haiku*)
+@@ -10012,7 +10663,7 @@ haiku*)
    soname_spec='${libname}${release}${shared_ext}$major'
    shlibpath_var=LIBRARY_PATH
    shlibpath_overrides_runpath=yes
@@ -20599,16 +20805,16 @@
    hardcode_into_libs=yes
    ;;
  
-@@ -11429,7 +12084,7 @@ else
+@@ -10808,7 +11459,7 @@ else
    lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
    lt_status=$lt_dlunknown
    cat > conftest.$ac_ext <<_LT_EOF
--#line 11432 "configure"
+-#line 10811 "configure"
 +#line $LINENO "configure"
  #include "confdefs.h"
  
  #if HAVE_DLFCN_H
-@@ -11473,10 +12128,10 @@ else
+@@ -10852,10 +11503,10 @@ else
  /* When -fvisbility=hidden is used, assume the code has been annotated
     correspondingly for the symbols needed.  */
  #if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
@@ -20621,16 +20827,16 @@
  int main ()
  {
    void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-@@ -11535,7 +12190,7 @@ else
+@@ -10914,7 +11565,7 @@ else
    lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
    lt_status=$lt_dlunknown
    cat > conftest.$ac_ext <<_LT_EOF
--#line 11538 "configure"
+-#line 10917 "configure"
 +#line $LINENO "configure"
  #include "confdefs.h"
  
  #if HAVE_DLFCN_H
-@@ -11579,10 +12234,10 @@ else
+@@ -10958,10 +11609,10 @@ else
  /* When -fvisbility=hidden is used, assume the code has been annotated
     correspondingly for the symbols needed.  */
  #if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
@@ -20643,7 +20849,7 @@
  int main ()
  {
    void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-@@ -13746,13 +14401,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'
+@@ -13101,13 +13752,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'
  lt_unset='`$ECHO "$lt_unset" | $SED "$delay_single_quote_subst"`'
  lt_SP2NL='`$ECHO "$lt_SP2NL" | $SED "$delay_single_quote_subst"`'
  lt_NL2SP='`$ECHO "$lt_NL2SP" | $SED "$delay_single_quote_subst"`'
@@ -20664,7 +20870,7 @@
  STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`'
  RANLIB='`$ECHO "$RANLIB" | $SED "$delay_single_quote_subst"`'
  old_postinstall_cmds='`$ECHO "$old_postinstall_cmds" | $SED "$delay_single_quote_subst"`'
-@@ -13767,14 +14429,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$de
+@@ -13122,14 +13780,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$de
  lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`'
  lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`'
  lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`'
@@ -20683,7 +20889,7 @@
  DSYMUTIL='`$ECHO "$DSYMUTIL" | $SED "$delay_single_quote_subst"`'
  NMEDIT='`$ECHO "$NMEDIT" | $SED "$delay_single_quote_subst"`'
  LIPO='`$ECHO "$LIPO" | $SED "$delay_single_quote_subst"`'
-@@ -13807,12 +14472,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_q
+@@ -13162,12 +13823,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_q
  hardcode_automatic='`$ECHO "$hardcode_automatic" | $SED "$delay_single_quote_subst"`'
  inherit_rpath='`$ECHO "$inherit_rpath" | $SED "$delay_single_quote_subst"`'
  link_all_deplibs='`$ECHO "$link_all_deplibs" | $SED "$delay_single_quote_subst"`'
@@ -20697,7 +20903,7 @@
  file_list_spec='`$ECHO "$file_list_spec" | $SED "$delay_single_quote_subst"`'
  variables_saved_for_relink='`$ECHO "$variables_saved_for_relink" | $SED "$delay_single_quote_subst"`'
  need_lib_prefix='`$ECHO "$need_lib_prefix" | $SED "$delay_single_quote_subst"`'
-@@ -13867,8 +14532,13 @@ reload_flag \
+@@ -13222,8 +13883,13 @@ reload_flag \
  OBJDUMP \
  deplibs_check_method \
  file_magic_cmd \
@@ -20711,7 +20917,7 @@
  STRIP \
  RANLIB \
  CC \
-@@ -13878,12 +14548,14 @@ lt_cv_sys_global_symbol_pipe \
+@@ -13233,12 +13899,14 @@ lt_cv_sys_global_symbol_pipe \
  lt_cv_sys_global_symbol_to_cdecl \
  lt_cv_sys_global_symbol_to_c_name_address \
  lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \
@@ -20727,7 +20933,7 @@
  DSYMUTIL \
  NMEDIT \
  LIPO \
-@@ -13899,7 +14571,6 @@ no_undefined_flag \
+@@ -13254,7 +13922,6 @@ no_undefined_flag \
  hardcode_libdir_flag_spec \
  hardcode_libdir_flag_spec_ld \
  hardcode_libdir_separator \
@@ -20735,7 +20941,7 @@
  exclude_expsyms \
  include_expsyms \
  file_list_spec \
-@@ -13935,6 +14606,7 @@ module_cmds \
+@@ -13290,6 +13957,7 @@ module_cmds \
  module_expsym_cmds \
  export_symbols_cmds \
  prelink_cmds \
@@ -20743,7 +20949,7 @@
  postinstall_cmds \
  postuninstall_cmds \
  finish_cmds \
-@@ -14700,7 +15372,8 @@ $as_echo X"$file" |
+@@ -14055,7 +14723,8 @@ $as_echo X"$file" |
  # NOTE: Changes made to this file will be lost: look at ltmain.sh.
  #
  #   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
@@ -20753,7 +20959,7 @@
  #   Written by Gordon Matzigkeit, 1996
  #
  #   This file is part of GNU Libtool.
-@@ -14803,19 +15476,42 @@ SP2NL=$lt_lt_SP2NL
+@@ -14158,19 +14827,42 @@ SP2NL=$lt_lt_SP2NL
  # turn newlines into spaces.
  NL2SP=$lt_lt_NL2SP
  
@@ -20797,7 +21003,7 @@
  # A symbol stripping program.
  STRIP=$lt_STRIP
  
-@@ -14845,6 +15541,12 @@ global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
+@@ -14200,6 +14892,12 @@ global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
  # Transform the output of nm in a C name address pair when lib prefix is needed.
  global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
  
@@ -20810,7 +21016,7 @@
  # The name of the directory that contains temporary libtool files.
  objdir=$objdir
  
-@@ -14854,6 +15556,9 @@ MAGIC_CMD=$MAGIC_CMD
+@@ -14209,6 +14907,9 @@ MAGIC_CMD=$MAGIC_CMD
  # Must we lock files when doing compilation?
  need_locks=$lt_need_locks
  
@@ -20820,7 +21026,7 @@
  # Tool to manipulate archived DWARF debug symbol files on Mac OS X.
  DSYMUTIL=$lt_DSYMUTIL
  
-@@ -14968,12 +15673,12 @@ with_gcc=$GCC
+@@ -14323,12 +15024,12 @@ with_gcc=$GCC
  # Compiler flag to turn off builtin functions.
  no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag
  
@@ -20836,7 +21042,7 @@
  # Compiler flag to prevent dynamic linking.
  link_static_flag=$lt_lt_prog_compiler_static
  
-@@ -15060,9 +15765,6 @@ inherit_rpath=$inherit_rpath
+@@ -14415,9 +15116,6 @@ inherit_rpath=$inherit_rpath
  # Whether libtool must link a program against all its dependency libraries.
  link_all_deplibs=$link_all_deplibs
  
@@ -20846,7 +21052,7 @@
  # Set to "yes" if exported symbols are required.
  always_export_symbols=$always_export_symbols
  
-@@ -15078,6 +15780,9 @@ include_expsyms=$lt_include_expsyms
+@@ -14433,6 +15131,9 @@ include_expsyms=$lt_include_expsyms
  # Commands necessary for linking programs (against libraries) with templates.
  prelink_cmds=$lt_prelink_cmds
  
@@ -20856,7 +21062,7 @@
  # Specify filename containing input files.
  file_list_spec=$lt_file_list_spec
  
-@@ -15110,210 +15815,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
+@@ -14465,210 +15166,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
    # if finds mixed CR/LF and LF-only lines.  Since sed operates in
    # text mode, it properly converts lines to CR/LF.  This bash problem
    # is reportedly fixed, but why not run on old versions too?
@@ -21231,7 +21437,7 @@
    chmod +x "$ofile"
  
 diff --git a/zlib/configure b/zlib/configure
-index b124acf9259..e4075ef3a2c 100755
+index 695819cd54b..14b5f28013a 100755
 --- a/zlib/configure
 +++ b/zlib/configure
 @@ -646,8 +646,11 @@ OTOOL
@@ -21419,7 +21625,7 @@
  file_magic_cmd=$lt_cv_file_magic_cmd
  deplibs_check_method=$lt_cv_deplibs_check_method
  test -z "$deplibs_check_method" && deplibs_check_method=unknown
-@@ -5405,11 +5506,165 @@ test -z "$deplibs_check_method" && deplibs_check_method=unknown
+@@ -5407,6 +5508,158 @@ test -z "$deplibs_check_method" && deplibs_check_method=unknown
  
  
  
@@ -21433,11 +21639,7 @@
 +
 +
 +
- 
- 
- if test -n "$ac_tool_prefix"; then
--  # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
--set dummy ${ac_tool_prefix}ar; ac_word=$2
++if test -n "$ac_tool_prefix"; then
 +  # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
 +set dummy ${ac_tool_prefix}dlltool; ac_word=$2
 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
@@ -21579,7 +21781,15 @@
 +
 +
 +
-+if test -n "$ac_tool_prefix"; then
+ plugin_option=
+ plugin_names="liblto_plugin.so liblto_plugin-0.dll cyglto_plugin-0.dll"
+ for plugin in $plugin_names; do
+@@ -5421,8 +5674,10 @@ for plugin in $plugin_names; do
+ done
+ 
+ if test -n "$ac_tool_prefix"; then
+-  # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
+-set dummy ${ac_tool_prefix}ar; ac_word=$2
 +  for ac_prog in ar
 +  do
 +    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
@@ -21587,7 +21797,7 @@
  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
  $as_echo_n "checking for $ac_word... " >&6; }
  if ${ac_cv_prog_AR+:} false; then :
-@@ -5425,7 +5680,7 @@ do
+@@ -5438,7 +5693,7 @@ do
    test -z "$as_dir" && as_dir=.
      for ac_exec_ext in '' $ac_executable_extensions; do
    if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
@@ -21596,7 +21806,7 @@
      $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
      break 2
    fi
-@@ -5445,11 +5700,15 @@ $as_echo "no" >&6; }
+@@ -5458,11 +5713,15 @@ $as_echo "no" >&6; }
  fi
  
  
@@ -21615,7 +21825,7 @@
  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
  $as_echo_n "checking for $ac_word... " >&6; }
  if ${ac_cv_prog_ac_ct_AR+:} false; then :
-@@ -5465,7 +5724,7 @@ do
+@@ -5478,7 +5737,7 @@ do
    test -z "$as_dir" && as_dir=.
      for ac_exec_ext in '' $ac_executable_extensions; do
    if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
@@ -21624,7 +21834,7 @@
      $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
      break 2
    fi
-@@ -5484,6 +5743,10 @@ else
+@@ -5497,6 +5756,10 @@ else
  $as_echo "no" >&6; }
  fi
  
@@ -21635,7 +21845,7 @@
    if test "x$ac_ct_AR" = x; then
      AR="false"
    else
-@@ -5495,16 +5758,72 @@ ac_tool_warned=yes ;;
+@@ -5508,25 +5771,19 @@ ac_tool_warned=yes ;;
  esac
      AR=$ac_ct_AR
    fi
@@ -21644,20 +21854,36 @@
  fi
  
 -test -z "$AR" && AR=ar
+-if test -n "$plugin_option"; then
+-  if $AR --help 2>&1 | grep -q "\--plugin"; then
+-    touch conftest.c
+-    $AR $plugin_option rc conftest.a conftest.c
+-    if test "$?" != 0; then
+-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Failed: $AR $plugin_option rc" >&5
++  touch conftest.c
++  $AR $plugin_option rc conftest.a conftest.c
++  if test "$?" != 0; then
++    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Failed: $AR $plugin_option rc" >&5
+ $as_echo "$as_me: WARNING: Failed: $AR $plugin_option rc" >&2;}
+-    else
+-      AR="$AR $plugin_option"
+-    fi
+-    rm -f conftest.*
++  else
++    AR="$AR $plugin_option"
+   fi
+-fi
 -test -z "$AR_FLAGS" && AR_FLAGS=cru
++  rm -f conftest.*
 +: ${AR=ar}
 +: ${AR_FLAGS=cru}
-+
-+
-+
-+
-+
-+
-+
-+
-+
-+
-+
+ 
+ 
+ 
+@@ -5538,6 +5795,64 @@ test -z "$AR_FLAGS" && AR_FLAGS=cru
+ 
+ 
+ 
 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5
 +$as_echo_n "checking for archiver @FILE support... " >&6; }
 +if ${lt_cv_ar_at_file+:} false; then :
@@ -21670,7 +21896,7 @@
 +int
 +main ()
 +{
- 
++
 +  ;
 +  return 0;
 +}
@@ -21696,23 +21922,30 @@
 +        fi
 +      fi
 +      rm -f conftest.* libconftest.a
- 
++
 +fi
 +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- 
++
 +fi
 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5
 +$as_echo "$lt_cv_ar_at_file" >&6; }
- 
++
 +if test "x$lt_cv_ar_at_file" = xno; then
 +  archiver_list_spec=
 +else
 +  archiver_list_spec=$lt_cv_ar_at_file
 +fi
- 
- 
- 
-@@ -5846,8 +6165,8 @@ esac
++
++
++
++
++
++
++
+ if test -n "$ac_tool_prefix"; then
+   # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
+ set dummy ${ac_tool_prefix}strip; ac_word=$2
+@@ -5877,8 +6192,8 @@ esac
  lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
  
  # Transform an extracted symbol line into symbol name and symbol address
@@ -21723,7 +21956,7 @@
  
  # Handle CRLF in mingw tool chain
  opt_cr=
-@@ -5883,6 +6202,7 @@ for ac_symprfx in "" "_"; do
+@@ -5914,6 +6229,7 @@ for ac_symprfx in "" "_"; do
    else
      lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[	 ]\($symcode$symcode*\)[	 ][	 ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
    fi
@@ -21731,7 +21964,7 @@
  
    # Check to see that the pipe works correctly.
    pipe_works=no
-@@ -5924,6 +6244,18 @@ _LT_EOF
+@@ -5955,6 +6271,18 @@ _LT_EOF
        if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
  	if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
  	  cat <<_LT_EOF > conftest.$ac_ext
@@ -21750,7 +21983,7 @@
  #ifdef __cplusplus
  extern "C" {
  #endif
-@@ -5935,7 +6267,7 @@ _LT_EOF
+@@ -5966,7 +6294,7 @@ _LT_EOF
  	  cat <<_LT_EOF >> conftest.$ac_ext
  
  /* The mapping between symbol names and symbols.  */
@@ -21759,7 +21992,7 @@
    const char *name;
    void       *address;
  }
-@@ -5961,8 +6293,8 @@ static const void *lt_preloaded_setup() {
+@@ -5992,8 +6320,8 @@ static const void *lt_preloaded_setup() {
  _LT_EOF
  	  # Now try linking the two files.
  	  mv conftest.$ac_objext conftstm.$ac_objext
@@ -21770,7 +22003,7 @@
  	  LIBS="conftstm.$ac_objext"
  	  CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag"
  	  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
-@@ -5972,8 +6304,8 @@ _LT_EOF
+@@ -6003,8 +6331,8 @@ _LT_EOF
    test $ac_status = 0; } && test -s conftest${ac_exeext}; then
  	    pipe_works=yes
  	  fi
@@ -21781,7 +22014,7 @@
  	else
  	  echo "cannot find nm_test_func in $nlist" >&5
  	fi
-@@ -6010,6 +6342,19 @@ else
+@@ -6041,6 +6369,17 @@ else
  $as_echo "ok" >&6; }
  fi
  
@@ -21796,15 +22029,15 @@
 +
 +
 +
+ 
+ 
+ 
+@@ -6058,6 +6397,43 @@ fi
+ 
+ 
+ 
 +
 +
- 
- 
- 
-@@ -6027,6 +6372,41 @@ fi
- 
- 
- 
 +
 +
 +
@@ -21843,7 +22076,7 @@
  
  
  
-@@ -6241,6 +6621,123 @@ esac
+@@ -6272,6 +6648,123 @@ esac
  
  need_locks="$enable_libtool_lock"
  
@@ -21967,7 +22200,7 @@
  
    case $host_os in
      rhapsody* | darwin*)
-@@ -6807,6 +7304,8 @@ _LT_EOF
+@@ -6838,6 +7331,8 @@ _LT_EOF
        $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5
        echo "$AR cru libconftest.a conftest.o" >&5
        $AR cru libconftest.a conftest.o 2>&5
@@ -21976,7 +22209,7 @@
        cat > conftest.c << _LT_EOF
  int main() { return 0;}
  _LT_EOF
-@@ -7269,7 +7768,8 @@ fi
+@@ -7300,7 +7795,8 @@ fi
  LIBTOOL_DEPS="$ltmain"
  
  # Always use our own libtool.
@@ -21986,7 +22219,7 @@
  
  
  
-@@ -7358,7 +7858,7 @@ aix3*)
+@@ -7389,7 +7885,7 @@ aix3*)
  esac
  
  # Global variables:
@@ -21995,7 +22228,7 @@
  can_build_shared=yes
  
  # All known linkers require a `.a' archive for static linking (except MSVC,
-@@ -7656,8 +8156,6 @@ fi
+@@ -7687,8 +8183,6 @@ fi
  lt_prog_compiler_pic=
  lt_prog_compiler_static=
  
@@ -22004,7 +22237,7 @@
  
    if test "$GCC" = yes; then
      lt_prog_compiler_wl='-Wl,'
-@@ -7823,6 +8321,12 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -7854,6 +8348,12 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
  	lt_prog_compiler_pic='--shared'
  	lt_prog_compiler_static='--static'
  	;;
@@ -22017,7 +22250,7 @@
        pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
          # Portland Group compilers (*not* the Pentium gcc compiler,
  	# which looks to be a dead project)
-@@ -7885,7 +8389,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
+@@ -7916,7 +8416,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
        lt_prog_compiler_pic='-KPIC'
        lt_prog_compiler_static='-Bstatic'
        case $cc_basename in
@@ -22026,7 +22259,7 @@
  	lt_prog_compiler_wl='-Qoption ld ';;
        *)
  	lt_prog_compiler_wl='-Wl,';;
-@@ -7942,13 +8446,17 @@ case $host_os in
+@@ -7973,13 +8473,17 @@ case $host_os in
      lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC"
      ;;
  esac
@@ -22050,7 +22283,7 @@
  
  #
  # Check to make sure the PIC flag actually works.
-@@ -8009,6 +8517,11 @@ fi
+@@ -8040,6 +8544,11 @@ fi
  
  
  
@@ -22062,7 +22295,7 @@
  #
  # Check to make sure the static flag actually works.
  #
-@@ -8359,7 +8872,8 @@ _LT_EOF
+@@ -8390,7 +8899,8 @@ _LT_EOF
        allow_undefined_flag=unsupported
        always_export_symbols=no
        enable_shared_with_static_runtimes=yes
@@ -22072,7 +22305,7 @@
  
        if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
          archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
-@@ -8458,12 +8972,12 @@ _LT_EOF
+@@ -8489,12 +8999,12 @@ _LT_EOF
  	  whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'
  	  hardcode_libdir_flag_spec=
  	  hardcode_libdir_flag_spec_ld='-rpath $libdir'
@@ -22087,7 +22320,7 @@
  	  fi
  	  ;;
  	esac
-@@ -8477,8 +8991,8 @@ _LT_EOF
+@@ -8508,8 +9018,8 @@ _LT_EOF
  	archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
  	wlarc=
        else
@@ -22098,7 +22331,7 @@
        fi
        ;;
  
-@@ -8496,8 +9010,8 @@ _LT_EOF
+@@ -8527,8 +9037,8 @@ _LT_EOF
  
  _LT_EOF
        elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
@@ -22109,7 +22342,7 @@
        else
  	ld_shlibs=no
        fi
-@@ -8543,8 +9057,8 @@ _LT_EOF
+@@ -8574,8 +9084,8 @@ _LT_EOF
  
      *)
        if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
@@ -22120,7 +22353,7 @@
        else
  	ld_shlibs=no
        fi
-@@ -8674,7 +9188,13 @@ _LT_EOF
+@@ -8705,7 +9215,13 @@ _LT_EOF
  	allow_undefined_flag='-berok'
          # Determine the default libpath from the value encoded in an
          # empty executable.
@@ -22135,7 +22368,7 @@
    as_fn_error $? "Link tests are not allowed after GCC_NO_EXECUTABLES." "$LINENO" 5
  fi
  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-@@ -8690,22 +9210,29 @@ main ()
+@@ -8721,22 +9237,29 @@ main ()
  _ACEOF
  if ac_fn_c_try_link "$LINENO"; then :
  
@@ -22178,7 +22411,7 @@
  
          hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
          archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
-@@ -8717,7 +9244,13 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -8748,7 +9271,13 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  	else
  	 # Determine the default libpath from the value encoded in an
  	 # empty executable.
@@ -22193,7 +22426,7 @@
    as_fn_error $? "Link tests are not allowed after GCC_NO_EXECUTABLES." "$LINENO" 5
  fi
  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-@@ -8733,22 +9266,29 @@ main ()
+@@ -8764,22 +9293,29 @@ main ()
  _ACEOF
  if ac_fn_c_try_link "$LINENO"; then :
  
@@ -22236,7 +22469,7 @@
  
  	 hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
  	  # Warning - without using the other run time loading flags,
-@@ -8793,20 +9333,63 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -8824,20 +9360,63 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
        # Microsoft Visual C++.
        # hardcode_libdir_flag_spec is actually meaningless, as there is
        # no search path for DLLs.
@@ -22314,7 +22547,7 @@
        ;;
  
      darwin* | rhapsody*)
-@@ -8867,7 +9450,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -8898,7 +9477,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  
      # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
      freebsd* | dragonfly*)
@@ -22323,7 +22556,7 @@
        hardcode_libdir_flag_spec='-R$libdir'
        hardcode_direct=yes
        hardcode_shlibpath_var=no
-@@ -8875,7 +9458,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -8906,7 +9485,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  
      hpux9*)
        if test "$GCC" = yes; then
@@ -22332,7 +22565,7 @@
        else
  	archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
        fi
-@@ -8891,7 +9474,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -8922,7 +9501,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  
      hpux10*)
        if test "$GCC" = yes && test "$with_gnu_ld" = no; then
@@ -22341,7 +22574,7 @@
        else
  	archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
        fi
-@@ -8915,10 +9498,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
+@@ -8946,10 +9525,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
  	  archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
  	  ;;
  	ia64*)
@@ -22354,7 +22587,7 @@
  	  ;;
  	esac
        else
-@@ -8997,26 +9580,39 @@ fi
+@@ -9028,26 +9607,39 @@ fi
  
      irix5* | irix6* | nonstopux*)
        if test "$GCC" = yes; then
@@ -22402,7 +22635,7 @@
        else
  	archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
  	archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
-@@ -9101,7 +9697,7 @@ rm -f core conftest.err conftest.$ac_objext \
+@@ -9132,7 +9724,7 @@ rm -f core conftest.err conftest.$ac_objext \
      osf4* | osf5*)	# as osf3* with the addition of -msym flag
        if test "$GCC" = yes; then
  	allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
@@ -22411,7 +22644,7 @@
  	hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
        else
  	allow_undefined_flag=' -expect_unresolved \*'
-@@ -9120,9 +9716,9 @@ rm -f core conftest.err conftest.$ac_objext \
+@@ -9151,9 +9743,9 @@ rm -f core conftest.err conftest.$ac_objext \
        no_undefined_flag=' -z defs'
        if test "$GCC" = yes; then
  	wlarc='${wl}'
@@ -22423,7 +22656,7 @@
        else
  	case `$CC -V 2>&1` in
  	*"Compilers 5.0"*)
-@@ -9698,8 +10294,9 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -9729,8 +10321,9 @@ cygwin* | mingw* | pw32* | cegcc*)
    need_version=no
    need_lib_prefix=no
  
@@ -22435,7 +22668,7 @@
      library_names_spec='$libname.dll.a'
      # DLL is installed to $(libdir)/../bin by postinstall_cmds
      postinstall_cmds='base_file=`basename \${file}`~
-@@ -9732,13 +10329,71 @@ cygwin* | mingw* | pw32* | cegcc*)
+@@ -9763,13 +10356,71 @@ cygwin* | mingw* | pw32* | cegcc*)
        library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
        ;;
      esac
@@ -22508,7 +22741,7 @@
    # FIXME: first we should search . and the directory the executable is in
    shlibpath_var=PATH
    ;;
-@@ -9820,7 +10475,7 @@ haiku*)
+@@ -9851,7 +10502,7 @@ haiku*)
    soname_spec='${libname}${release}${shared_ext}$major'
    shlibpath_var=LIBRARY_PATH
    shlibpath_overrides_runpath=yes
@@ -22517,16 +22750,16 @@
    hardcode_into_libs=yes
    ;;
  
-@@ -10634,7 +11289,7 @@ else
+@@ -10665,7 +11316,7 @@ else
    lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
    lt_status=$lt_dlunknown
    cat > conftest.$ac_ext <<_LT_EOF
--#line 10637 "configure"
+-#line 10668 "configure"
 +#line $LINENO "configure"
  #include "confdefs.h"
  
  #if HAVE_DLFCN_H
-@@ -10678,10 +11333,10 @@ else
+@@ -10709,10 +11360,10 @@ else
  /* When -fvisbility=hidden is used, assume the code has been annotated
     correspondingly for the symbols needed.  */
  #if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
@@ -22539,16 +22772,16 @@
  int main ()
  {
    void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-@@ -10740,7 +11395,7 @@ else
+@@ -10771,7 +11422,7 @@ else
    lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
    lt_status=$lt_dlunknown
    cat > conftest.$ac_ext <<_LT_EOF
--#line 10743 "configure"
+-#line 10774 "configure"
 +#line $LINENO "configure"
  #include "confdefs.h"
  
  #if HAVE_DLFCN_H
-@@ -10784,10 +11439,10 @@ else
+@@ -10815,10 +11466,10 @@ else
  /* When -fvisbility=hidden is used, assume the code has been annotated
     correspondingly for the symbols needed.  */
  #if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
@@ -22561,7 +22794,7 @@
  int main ()
  {
    void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
-@@ -12257,13 +12912,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'
+@@ -12288,13 +12939,20 @@ exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'
  lt_unset='`$ECHO "$lt_unset" | $SED "$delay_single_quote_subst"`'
  lt_SP2NL='`$ECHO "$lt_SP2NL" | $SED "$delay_single_quote_subst"`'
  lt_NL2SP='`$ECHO "$lt_NL2SP" | $SED "$delay_single_quote_subst"`'
@@ -22582,7 +22815,7 @@
  STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`'
  RANLIB='`$ECHO "$RANLIB" | $SED "$delay_single_quote_subst"`'
  old_postinstall_cmds='`$ECHO "$old_postinstall_cmds" | $SED "$delay_single_quote_subst"`'
-@@ -12278,14 +12940,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$de
+@@ -12309,14 +12967,17 @@ lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$de
  lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`'
  lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`'
  lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`'
@@ -22601,7 +22834,7 @@
  DSYMUTIL='`$ECHO "$DSYMUTIL" | $SED "$delay_single_quote_subst"`'
  NMEDIT='`$ECHO "$NMEDIT" | $SED "$delay_single_quote_subst"`'
  LIPO='`$ECHO "$LIPO" | $SED "$delay_single_quote_subst"`'
-@@ -12318,12 +12983,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_q
+@@ -12349,12 +13010,12 @@ hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_q
  hardcode_automatic='`$ECHO "$hardcode_automatic" | $SED "$delay_single_quote_subst"`'
  inherit_rpath='`$ECHO "$inherit_rpath" | $SED "$delay_single_quote_subst"`'
  link_all_deplibs='`$ECHO "$link_all_deplibs" | $SED "$delay_single_quote_subst"`'
@@ -22615,7 +22848,7 @@
  file_list_spec='`$ECHO "$file_list_spec" | $SED "$delay_single_quote_subst"`'
  variables_saved_for_relink='`$ECHO "$variables_saved_for_relink" | $SED "$delay_single_quote_subst"`'
  need_lib_prefix='`$ECHO "$need_lib_prefix" | $SED "$delay_single_quote_subst"`'
-@@ -12378,8 +13043,13 @@ reload_flag \
+@@ -12409,8 +13070,13 @@ reload_flag \
  OBJDUMP \
  deplibs_check_method \
  file_magic_cmd \
@@ -22629,7 +22862,7 @@
  STRIP \
  RANLIB \
  CC \
-@@ -12389,12 +13059,14 @@ lt_cv_sys_global_symbol_pipe \
+@@ -12420,12 +13086,14 @@ lt_cv_sys_global_symbol_pipe \
  lt_cv_sys_global_symbol_to_cdecl \
  lt_cv_sys_global_symbol_to_c_name_address \
  lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \
@@ -22645,7 +22878,7 @@
  DSYMUTIL \
  NMEDIT \
  LIPO \
-@@ -12410,7 +13082,6 @@ no_undefined_flag \
+@@ -12441,7 +13109,6 @@ no_undefined_flag \
  hardcode_libdir_flag_spec \
  hardcode_libdir_flag_spec_ld \
  hardcode_libdir_separator \
@@ -22653,7 +22886,7 @@
  exclude_expsyms \
  include_expsyms \
  file_list_spec \
-@@ -12446,6 +13117,7 @@ module_cmds \
+@@ -12477,6 +13144,7 @@ module_cmds \
  module_expsym_cmds \
  export_symbols_cmds \
  prelink_cmds \
@@ -22661,7 +22894,7 @@
  postinstall_cmds \
  postuninstall_cmds \
  finish_cmds \
-@@ -13044,7 +13716,8 @@ $as_echo X"$file" |
+@@ -13075,7 +13743,8 @@ $as_echo X"$file" |
  # NOTE: Changes made to this file will be lost: look at ltmain.sh.
  #
  #   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
@@ -22671,7 +22904,7 @@
  #   Written by Gordon Matzigkeit, 1996
  #
  #   This file is part of GNU Libtool.
-@@ -13147,19 +13820,42 @@ SP2NL=$lt_lt_SP2NL
+@@ -13178,19 +13847,42 @@ SP2NL=$lt_lt_SP2NL
  # turn newlines into spaces.
  NL2SP=$lt_lt_NL2SP
  
@@ -22715,7 +22948,7 @@
  # A symbol stripping program.
  STRIP=$lt_STRIP
  
-@@ -13189,6 +13885,12 @@ global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
+@@ -13220,6 +13912,12 @@ global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
  # Transform the output of nm in a C name address pair when lib prefix is needed.
  global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
  
@@ -22728,7 +22961,7 @@
  # The name of the directory that contains temporary libtool files.
  objdir=$objdir
  
-@@ -13198,6 +13900,9 @@ MAGIC_CMD=$MAGIC_CMD
+@@ -13229,6 +13927,9 @@ MAGIC_CMD=$MAGIC_CMD
  # Must we lock files when doing compilation?
  need_locks=$lt_need_locks
  
@@ -22738,7 +22971,7 @@
  # Tool to manipulate archived DWARF debug symbol files on Mac OS X.
  DSYMUTIL=$lt_DSYMUTIL
  
-@@ -13312,12 +14017,12 @@ with_gcc=$GCC
+@@ -13343,12 +14044,12 @@ with_gcc=$GCC
  # Compiler flag to turn off builtin functions.
  no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag
  
@@ -22754,7 +22987,7 @@
  # Compiler flag to prevent dynamic linking.
  link_static_flag=$lt_lt_prog_compiler_static
  
-@@ -13404,9 +14109,6 @@ inherit_rpath=$inherit_rpath
+@@ -13435,9 +14136,6 @@ inherit_rpath=$inherit_rpath
  # Whether libtool must link a program against all its dependency libraries.
  link_all_deplibs=$link_all_deplibs
  
@@ -22764,7 +22997,7 @@
  # Set to "yes" if exported symbols are required.
  always_export_symbols=$always_export_symbols
  
-@@ -13422,6 +14124,9 @@ include_expsyms=$lt_include_expsyms
+@@ -13453,6 +14151,9 @@ include_expsyms=$lt_include_expsyms
  # Commands necessary for linking programs (against libraries) with templates.
  prelink_cmds=$lt_prelink_cmds
  
@@ -22774,7 +23007,7 @@
  # Specify filename containing input files.
  file_list_spec=$lt_file_list_spec
  
-@@ -13454,210 +14159,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
+@@ -13485,210 +14186,169 @@ ltmain="$ac_aux_dir/ltmain.sh"
    # if finds mixed CR/LF and LF-only lines.  Since sed operates in
    # text mode, it properly converts lines to CR/LF.  This bash problem
    # is reportedly fixed, but why not run on old versions too?
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0014-Fix-rpath-in-libtool-when-sysroot-is-enabled.patch b/poky/meta/recipes-devtools/binutils/binutils/0014-Fix-rpath-in-libtool-when-sysroot-is-enabled.patch
index c3a95e6..0e47905 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0014-Fix-rpath-in-libtool-when-sysroot-is-enabled.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0014-Fix-rpath-in-libtool-when-sysroot-is-enabled.patch
@@ -1,4 +1,4 @@
-From 0e026a8758a5416b548de21d5245477cf8e33ed2 Mon Sep 17 00:00:00 2001
+From ff256618bf85acca889920a1fb63ddea64cc98bc Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Mon, 2 Mar 2015 01:42:38 +0000
 Subject: [PATCH] Fix rpath in libtool when sysroot is enabled
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0015-sync-with-OE-libtool-changes.patch b/poky/meta/recipes-devtools/binutils/binutils/0015-sync-with-OE-libtool-changes.patch
index 824d9d4..6afd37a 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0015-sync-with-OE-libtool-changes.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0015-sync-with-OE-libtool-changes.patch
@@ -1,4 +1,4 @@
-From 9d41698ca97b2c5c20ac83147de1f02d385fa66f Mon Sep 17 00:00:00 2001
+From 4b612f902c596838ab260194f840a466f8291618 Mon Sep 17 00:00:00 2001
 From: Ross Burton <ross.burton@intel.com>
 Date: Mon, 6 Mar 2017 23:33:27 -0800
 Subject: [PATCH] sync with OE libtool changes
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0016-Check-for-clang-before-checking-gcc-version.patch b/poky/meta/recipes-devtools/binutils/binutils/0016-Check-for-clang-before-checking-gcc-version.patch
index 0602c80..135cd0f 100644
--- a/poky/meta/recipes-devtools/binutils/binutils/0016-Check-for-clang-before-checking-gcc-version.patch
+++ b/poky/meta/recipes-devtools/binutils/binutils/0016-Check-for-clang-before-checking-gcc-version.patch
@@ -1,4 +1,4 @@
-From 805e3ce0c20bee5049ff167ab6f620a230c6db51 Mon Sep 17 00:00:00 2001
+From 707a5d49ecaa4fd722176d764251360a44fc5655 Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Wed, 15 Apr 2020 14:17:20 -0700
 Subject: [PATCH] Check for clang before checking gcc version
@@ -18,10 +18,10 @@
  2 files changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/configure b/configure
-index 7b369071141..7da69e27ce9 100755
+index e8ba1a1d3de..e00d4764583 100755
 --- a/configure
 +++ b/configure
-@@ -5093,7 +5093,7 @@ ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
+@@ -5275,7 +5275,7 @@ ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
  /* end confdefs.h.  */
  
@@ -31,10 +31,10 @@
  #endif
  int main() {}
 diff --git a/configure.ac b/configure.ac
-index 92f01fb3ed7..e99d67ab86b 100644
+index 3a8a3ae1f3b..c7f08b802d0 100644
 --- a/configure.ac
 +++ b/configure.ac
-@@ -1311,7 +1311,7 @@ if test "$GCC" = yes; then
+@@ -1309,7 +1309,7 @@ if test "$GCC" = yes; then
    AC_MSG_CHECKING([whether g++ accepts -static-libstdc++ -static-libgcc])
    AC_LANG_PUSH(C++)
    AC_LINK_IFELSE([AC_LANG_SOURCE([
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0017-Add-support-for-the-DW_FORM_strx-forms-to-the-BFD-li.patch b/poky/meta/recipes-devtools/binutils/binutils/0017-Add-support-for-the-DW_FORM_strx-forms-to-the-BFD-li.patch
deleted file mode 100644
index b4880e0..0000000
--- a/poky/meta/recipes-devtools/binutils/binutils/0017-Add-support-for-the-DW_FORM_strx-forms-to-the-BFD-li.patch
+++ /dev/null
@@ -1,183 +0,0 @@
-From a50c11a7a47b26e6a3e095dfb72aa2e465919fb6 Mon Sep 17 00:00:00 2001
-From: Nick Clifton <nickc@redhat.com>
-Date: Fri, 5 Mar 2021 17:06:59 +0000
-Subject: [PATCH] Add support for the DW_FORM_strx* forms to the BFD library.
-
-	PR 27521
-	* dwarf2.c (is_str_attr): Add DW_FORM_strx* forms.
-	(read_indexed_string): Placeholder function.
-	(read_attribute_value): Handle DW_FORM_strx* and DW_FORM_addrx*
-	forms.
-
-Upstream-Status: Backport [https://sourceware.org/bugzilla/show_bug.cgi?id=27521]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- bfd/dwarf2.c | 105 ++++++++++++++++++++++++++++++++-------------------
- 1 file changed, 67 insertions(+), 38 deletions(-)
-
-diff --git a/bfd/dwarf2.c b/bfd/dwarf2.c
-index 5651696c0f7..5ffcd93f54c 100644
---- a/bfd/dwarf2.c
-+++ b/bfd/dwarf2.c
-@@ -1160,8 +1160,23 @@ read_abbrevs (bfd *abfd, bfd_uint64_t offset, struct dwarf2_debug *stash,
- static inline bfd_boolean
- is_str_attr (enum dwarf_form form)
- {
--  return (form == DW_FORM_string || form == DW_FORM_strp
--	  || form == DW_FORM_line_strp || form == DW_FORM_GNU_strp_alt);
-+  return (form == DW_FORM_string
-+	  || form == DW_FORM_strp
-+	  || form == DW_FORM_strx
-+	  || form == DW_FORM_strx1
-+	  || form == DW_FORM_strx2
-+	  || form == DW_FORM_strx3
-+	  || form == DW_FORM_strx4
-+	  || form == DW_FORM_line_strp
-+	  || form == DW_FORM_GNU_strp_alt);
-+}
-+
-+static const char *
-+read_indexed_string (bfd_uint64_t index ATTRIBUTE_UNUSED,
-+		     struct comp_unit * unit ATTRIBUTE_UNUSED)
-+{
-+  /* FIXME: Add support for indexed strings.  */
-+  return "<indexed strings not yet supported>";
- }
- 
- /* Read and fill in the value of attribute ATTR as described by FORM.
-@@ -1192,6 +1207,9 @@ read_attribute_value (struct attribute *  attr,
- 
-   switch (form)
-     {
-+    case DW_FORM_flag_present:
-+      attr->u.val = 1;
-+      break;
-     case DW_FORM_ref_addr:
-       /* DW_FORM_ref_addr is an address in DWARF2, and an offset in
- 	 DWARF3.  */
-@@ -1237,15 +1255,32 @@ read_attribute_value (struct attribute *  attr,
-       info_ptr = read_n_bytes (info_ptr, info_ptr_end, blk);
-       attr->u.blk = blk;
-       break;
-+    case DW_FORM_ref1:
-+    case DW_FORM_flag:
-+    case DW_FORM_data1:
-+    case DW_FORM_addrx1:
-+      attr->u.val = read_1_byte (abfd, info_ptr, info_ptr_end);
-+      info_ptr += 1;
-+      break;
-     case DW_FORM_data2:
-+    case DW_FORM_ref2:
-       attr->u.val = read_2_bytes (abfd, info_ptr, info_ptr_end);
-       info_ptr += 2;
-       break;
-+    case DW_FORM_addrx3:
-+      attr->u.val = read_4_bytes (abfd, info_ptr, info_ptr_end);
-+      attr->u.val &= 0xffffff;
-+      info_ptr += 3;
-+      break;
-+    case DW_FORM_ref4:
-     case DW_FORM_data4:
-+    case DW_FORM_addrx4:
-       attr->u.val = read_4_bytes (abfd, info_ptr, info_ptr_end);
-       info_ptr += 4;
-       break;
-     case DW_FORM_data8:
-+    case DW_FORM_ref8:
-+    case DW_FORM_ref_sig8:
-       attr->u.val = read_8_bytes (abfd, info_ptr, info_ptr_end);
-       info_ptr += 8;
-       break;
-@@ -1265,6 +1300,33 @@ read_attribute_value (struct attribute *  attr,
-       attr->u.str = read_alt_indirect_string (unit, info_ptr, info_ptr_end, &bytes_read);
-       info_ptr += bytes_read;
-       break;
-+    case DW_FORM_strx1:
-+      attr->u.val = read_1_byte (abfd, info_ptr, info_ptr_end);
-+      info_ptr += 1;
-+      attr->u.str = (char *) read_indexed_string (attr->u.val, unit);
-+      break;
-+    case DW_FORM_strx2:
-+      attr->u.val = read_2_bytes (abfd, info_ptr, info_ptr_end);
-+      info_ptr += 2;
-+      attr->u.str = (char *) read_indexed_string (attr->u.val, unit);
-+      break;
-+    case DW_FORM_strx3:
-+      attr->u.val = read_4_bytes (abfd, info_ptr, info_ptr_end);
-+      info_ptr += 3;
-+      attr->u.val &= 0xffffff;
-+      attr->u.str = (char *) read_indexed_string (attr->u.val, unit);
-+      break;
-+    case DW_FORM_strx4:
-+      attr->u.val = read_4_bytes (abfd, info_ptr, info_ptr_end);
-+      info_ptr += 4;
-+      attr->u.str = (char *) read_indexed_string (attr->u.val, unit);
-+      break;
-+    case DW_FORM_strx:
-+      attr->u.val = _bfd_safe_read_leb128 (abfd, info_ptr, &bytes_read,
-+					 FALSE, info_ptr_end);
-+      info_ptr += bytes_read;
-+      attr->u.str = (char *) read_indexed_string (attr->u.val, unit);
-+      break;
-     case DW_FORM_exprloc:
-     case DW_FORM_block:
-       amt = sizeof (struct dwarf_block);
-@@ -1287,48 +1349,14 @@ read_attribute_value (struct attribute *  attr,
-       info_ptr = read_n_bytes (info_ptr, info_ptr_end, blk);
-       attr->u.blk = blk;
-       break;
--    case DW_FORM_data1:
--      attr->u.val = read_1_byte (abfd, info_ptr, info_ptr_end);
--      info_ptr += 1;
--      break;
--    case DW_FORM_flag:
--      attr->u.val = read_1_byte (abfd, info_ptr, info_ptr_end);
--      info_ptr += 1;
--      break;
--    case DW_FORM_flag_present:
--      attr->u.val = 1;
--      break;
-     case DW_FORM_sdata:
-       attr->u.sval = _bfd_safe_read_leb128 (abfd, info_ptr, &bytes_read,
- 					    TRUE, info_ptr_end);
-       info_ptr += bytes_read;
-       break;
--    case DW_FORM_udata:
--      attr->u.val = _bfd_safe_read_leb128 (abfd, info_ptr, &bytes_read,
--					   FALSE, info_ptr_end);
--      info_ptr += bytes_read;
--      break;
--    case DW_FORM_ref1:
--      attr->u.val = read_1_byte (abfd, info_ptr, info_ptr_end);
--      info_ptr += 1;
--      break;
--    case DW_FORM_ref2:
--      attr->u.val = read_2_bytes (abfd, info_ptr, info_ptr_end);
--      info_ptr += 2;
--      break;
--    case DW_FORM_ref4:
--      attr->u.val = read_4_bytes (abfd, info_ptr, info_ptr_end);
--      info_ptr += 4;
--      break;
--    case DW_FORM_ref8:
--      attr->u.val = read_8_bytes (abfd, info_ptr, info_ptr_end);
--      info_ptr += 8;
--      break;
--    case DW_FORM_ref_sig8:
--      attr->u.val = read_8_bytes (abfd, info_ptr, info_ptr_end);
--      info_ptr += 8;
--      break;
-     case DW_FORM_ref_udata:
-+    case DW_FORM_udata:
-+    case DW_FORM_addrx:
-       attr->u.val = _bfd_safe_read_leb128 (abfd, info_ptr, &bytes_read,
- 					   FALSE, info_ptr_end);
-       info_ptr += bytes_read;
-@@ -1361,6 +1389,7 @@ read_attribute_value (struct attribute *  attr,
-       info_ptr = read_n_bytes (info_ptr, info_ptr_end, blk);
-       attr->u.blk = blk;
-       break;
-+
-     default:
-       _bfd_error_handler (_("DWARF error: invalid or unhandled FORM value: %#x"),
- 			  form);
diff --git a/poky/meta/recipes-devtools/binutils/binutils/0018-Add-DWARF-5-support-in-gold.patch b/poky/meta/recipes-devtools/binutils/binutils/0018-Add-DWARF-5-support-in-gold.patch
deleted file mode 100644
index 353b680..0000000
--- a/poky/meta/recipes-devtools/binutils/binutils/0018-Add-DWARF-5-support-in-gold.patch
+++ /dev/null
@@ -1,1374 +0,0 @@
-From 29dab7648672342418a9d32767e3b3182d9e6a30 Mon Sep 17 00:00:00 2001
-From: Cary Coutant <ccoutant@gmail.com>
-Date: Wed, 17 Mar 2021 21:31:15 -0700
-Subject: [PATCH] Add DWARF 5 support in gold.
-
-elfcpp/
-	PR gold/27246
-	* dwarf.h (enum DW_LNCT): Add line number table content type codes.
-	(enum DW_LINE_OPS): Reformat.
-	(enum DW_LINE_EXTENDED_OPS): Reformat.
-	(enum DW_CHILDREN): Reformat.
-	(enum DW_RLE): Add range list entry types.
-	(enum DW_SECT): Update values for DWARF 5.
-
-gold/
-	PR gold/27246
-	* dwarf_reader.cc (Dwarf_abbrev_table::do_get_abbrev): Handle
-	DW_FORM_implicit_const.
-	(Dwarf_ranges_table::read_ranges_table): Add version parameter;
-	Adjust all callers.  Look for .debug_rnglists section if DWARF 5.
-	(Dwarf_ranges_table::read_range_list_v5): New method.
-	(Dwarf_die::read_attributes): Handle new DWARF 5 DW_FORM codes.
-	(Dwarf_die::skip_attributes): Likewise.
-	(Dwarf_info_reader::do_parse): Support DWARF 5 unit header format.
-	(Dwarf_info_reader::read_3bytes_from_pointer): New method.
-	(Sized_dwarf_line_info::Sized_dwarf_line_info): Initialize
-	str_buffer_, str_buffer_start, reloc_map_, line_number_map_.
-	Look for .debug_line_str section.
-	(Sized_dwarf_line_info::read_header_prolog): Support DWARF 5 prolog.
-	(Sized_dwarf_line_info::read_header_tables): Rename to...
-	(Sized_dwarf_line_info::read_header_tables_v2): ... this.
-	(Sized_dwarf_line_info::read_header_tables_v5): New method.
-	(Sized_dwarf_line_info::process_one_opcode): Insert missing "this->".
-	Change advance_line to signed int64_t.
-	(Sized_dwarf_line_info::read_lines): Add endptr parameter; adjust
-	callers.  Insert missing "this->".
-	(Sized_dwarf_line_info::read_line_mappings): Support DWARF 5.
-	(Sized_dwarf_line_info::do_addr2line): Add debug code.
-	* dwarf_reader.h (Dwarf_abbrev_table::Attribute): Add implicit_const
-	field. Adjust constructor.
-	(Dwarf_abbrev_table::add_sttribute): Add implicit_const parameter.
-	(Dwarf_ranges_table::read_ranges_table): Add version parameter.
-	(Dwarf_ranges_table::read_range_list_v5): New method.
-	(Dwarf_die): Remove unused attr_off field.
-	(Dwarf_info_reader::Dwarf_info_reader): Initialize unit_type_ field.
-	(Dwarf_info_reader::is_type_unit): New method.
-	(Dwarf_info_reader::read_3bytes_from_pointer): New method.
-	(Dwarf_info_reader::read_range_list): Call read_range_list_v5 for
-	DWARF 5 range lists.
-	(Dwarf_info_reader::is_type_unit_): Remove.
-	(Dwarf_info_reader::unit_type_): New field.
-	(Sized_dwarf_line_info::~Sized_dwarf_line_info): Delete
-	str_buffer_start_.
-	(Sized_dwarf_line_info::read_header_tables): Rename to...
-	(Sized_dwarf_line_info::read_header_tables_v2): ... this.
-	(Sized_dwarf_line_info::read_header_tables_v5): New method.
-	(Sized_dwarf_line_info::read_lines): Add endptr parameter.
-	(Sized_dwarf_line_info::Dwarf_line_infoHeader): Add address_size field.
-	(Sized_dwarf_line_info::str_buffer_): New field.
-	(Sized_dwarf_line_info::str_buffer_end_): New field.
-	(Sized_dwarf_line_info::str_buffer_start_): New field.
-	(Sized_dwarf_line_info::end_of_header_length_): New field.
-	(Sized_dwarf_line_info::end_of_unit_): New field.
-
-Upstream-Status: Backport [5cde809b7b9 Add DWARF 5 support in gold.]
-
-Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
----
- elfcpp/dwarf.h       |  89 +++++--
- gold/dwarf_reader.cc | 591 +++++++++++++++++++++++++++++++++++++------
- gold/dwarf_reader.h  | 103 ++++++--
- 3 files changed, 654 insertions(+), 129 deletions(-)
-
-diff --git a/elfcpp/dwarf.h b/elfcpp/dwarf.h
-index e24347f8481..c9a9e02369c 100644
---- a/elfcpp/dwarf.h
-+++ b/elfcpp/dwarf.h
-@@ -152,35 +152,48 @@ enum DW_EH_PE
-   DW_EH_PE_indirect = 0x80
- };
- 
-+// Line number table content type codes.
-+
-+enum DW_LNCT
-+{
-+  DW_LNCT_path            = 0x1,
-+  DW_LNCT_directory_index = 0x2,
-+  DW_LNCT_timestamp       = 0x3,
-+  DW_LNCT_size            = 0x4,
-+  DW_LNCT_MD5             = 0x5,
-+  DW_LNCT_lo_user         = 0x2000,
-+  DW_LNCT_hi_user         = 0x3fff
-+};
-+
- // Line number opcodes.
- 
- enum DW_LINE_OPS
- {
--  DW_LNS_extended_op = 0,
--  DW_LNS_copy = 1,
--  DW_LNS_advance_pc = 2,
--  DW_LNS_advance_line = 3,
--  DW_LNS_set_file = 4,
--  DW_LNS_set_column = 5,
--  DW_LNS_negate_stmt = 6,
--  DW_LNS_set_basic_block = 7,
--  DW_LNS_const_add_pc = 8,
--  DW_LNS_fixed_advance_pc = 9,
-+  DW_LNS_extended_op        = 0x00,
-+  DW_LNS_copy               = 0x01,
-+  DW_LNS_advance_pc         = 0x02,
-+  DW_LNS_advance_line       = 0x03,
-+  DW_LNS_set_file           = 0x04,
-+  DW_LNS_set_column         = 0x05,
-+  DW_LNS_negate_stmt        = 0x06,
-+  DW_LNS_set_basic_block    = 0x07,
-+  DW_LNS_const_add_pc       = 0x08,
-+  DW_LNS_fixed_advance_pc   = 0x09,
-   // DWARF 3.
--  DW_LNS_set_prologue_end = 10,
--  DW_LNS_set_epilogue_begin = 11,
--  DW_LNS_set_isa = 12
-+  DW_LNS_set_prologue_end   = 0x0a,
-+  DW_LNS_set_epilogue_begin = 0x0b,
-+  DW_LNS_set_isa            = 0x0c
- };
- 
- // Line number extended opcodes.
- 
- enum DW_LINE_EXTENDED_OPS
- {
--  DW_LNE_end_sequence = 1,
--  DW_LNE_set_address = 2,
--  DW_LNE_define_file = 3,
-+  DW_LNE_end_sequence                = 0x01,
-+  DW_LNE_set_address                 = 0x02,
-+  DW_LNE_define_file                 = 0x03,
-   // DWARF4.
--  DW_LNE_set_discriminator = 4,
-+  DW_LNE_set_discriminator           = 0x04,
-   // HP extensions.
-   DW_LNE_HP_negate_is_UV_update      = 0x11,
-   DW_LNE_HP_push_context             = 0x12,
-@@ -191,13 +204,15 @@ enum DW_LINE_EXTENDED_OPS
-   DW_LNE_HP_negate_post_semantics    = 0x17,
-   DW_LNE_HP_negate_function_exit     = 0x18,
-   DW_LNE_HP_negate_front_end_logical = 0x19,
--  DW_LNE_HP_define_proc              = 0x20
-+  DW_LNE_HP_define_proc              = 0x20,
-+  DW_LNE_lo_user                     = 0x80,
-+  DW_LNE_hi_user                     = 0xff
- };
- 
- enum DW_CHILDREN
- {
--  DW_CHILDREN_no		     =0x00,
--  DW_CHILDREN_yes		     =0x01
-+  DW_CHILDREN_no  = 0,
-+  DW_CHILDREN_yes = 1
- };
- 
- // Source language names and codes.
-@@ -247,20 +262,38 @@ enum DW_LANG
-   DW_LANG_HP_Assembler = 0x8007
- };
- 
-+// Range list entry kinds in .debug_rnglists* section.
-+
-+enum DW_RLE
-+{
-+  DW_RLE_end_of_list   = 0x00,
-+  DW_RLE_base_addressx = 0x01,
-+  DW_RLE_startx_endx   = 0x02,
-+  DW_RLE_startx_length = 0x03,
-+  DW_RLE_offset_pair   = 0x04,
-+  DW_RLE_base_address  = 0x05,
-+  DW_RLE_start_end     = 0x06,
-+  DW_RLE_start_length  = 0x07
-+};
-+
- // DWARF section identifiers used in the package format.
- // Extensions for Fission.  See http://gcc.gnu.org/wiki/DebugFissionDWP.
-+// Added (with changes) in DWARF 5.
- 
- enum DW_SECT
- {
--  DW_SECT_INFO = 1,
--  DW_SECT_TYPES = 2,
--  DW_SECT_ABBREV = 3,
--  DW_SECT_LINE = 4,
--  DW_SECT_LOC = 5,
-+  DW_SECT_INFO        = 1,
-+  DW_SECT_ABBREV      = 3,
-+  DW_SECT_LINE        = 4,
-+  DW_SECT_LOCLISTS    = 5,
-   DW_SECT_STR_OFFSETS = 6,
--  DW_SECT_MACINFO = 7,
--  DW_SECT_MACRO = 8,
--  DW_SECT_MAX = DW_SECT_MACRO,
-+  DW_SECT_MACINFO     = 7,
-+  DW_SECT_RNGLISTS    = 8,
-+  DW_SECT_MAX = DW_SECT_RNGLISTS,
-+  // These were used only for the experimental Fission support in DWARF 4.
-+  DW_SECT_TYPES       = 2,
-+  DW_SECT_LOC         = 5,
-+  DW_SECT_MACRO       = 8
- };
- 
- } // End namespace elfcpp.
-diff --git a/gold/dwarf_reader.cc b/gold/dwarf_reader.cc
-index f0e6b89bde2..83a0114ed39 100644
---- a/gold/dwarf_reader.cc
-+++ b/gold/dwarf_reader.cc
-@@ -26,6 +26,7 @@
- #include <utility>
- #include <vector>
- 
-+#include "debug.h"
- #include "elfcpp_swap.h"
- #include "dwarf.h"
- #include "object.h"
-@@ -275,6 +276,14 @@ Dwarf_abbrev_table::do_get_abbrev(unsigned int code)
- 	  uint64_t form = read_unsigned_LEB_128(this->buffer_pos_, &len);
- 	  this->buffer_pos_ += len;
- 
-+	  // For DW_FORM_implicit_const, read the constant.
-+	  int64_t implicit_const = 0;
-+	  if (form == elfcpp::DW_FORM_implicit_const)
-+	    {
-+	      implicit_const = read_signed_LEB_128(this->buffer_pos_, &len);
-+	      this->buffer_pos_ += len;
-+	    }
-+
- 	  // A (0,0) pair terminates the list.
- 	  if (attr == 0 && form == 0)
- 	    break;
-@@ -282,7 +291,7 @@ Dwarf_abbrev_table::do_get_abbrev(unsigned int code)
- 	  if (attr == elfcpp::DW_AT_sibling)
- 	    entry->has_sibling_attribute = true;
- 
--	  entry->add_attribute(attr, form);
-+	  entry->add_attribute(attr, form, implicit_const);
- 	}
- 
-       this->store_abbrev(nextcode, entry);
-@@ -302,8 +311,16 @@ Dwarf_ranges_table::read_ranges_table(
-     Relobj* object,
-     const unsigned char* symtab,
-     off_t symtab_size,
--    unsigned int ranges_shndx)
-+    unsigned int ranges_shndx,
-+    unsigned int version)
- {
-+  const std::string section_name(version < 5
-+				 ? ".debug_ranges"
-+				 : ".debug_rnglists");
-+  const std::string compressed_section_name(version < 5
-+					    ? ".zdebug_ranges"
-+					    : ".zdebug_rnglists");
-+
-   // If we've already read this abbrev table, return immediately.
-   if (this->ranges_shndx_ > 0
-       && this->ranges_shndx_ == ranges_shndx)
-@@ -318,7 +335,7 @@ Dwarf_ranges_table::read_ranges_table(
-       for (unsigned int i = 1; i < object->shnum(); ++i)
- 	{
- 	  std::string name = object->section_name(i);
--	  if (name == ".debug_ranges" || name == ".zdebug_ranges")
-+	  if (name == section_name || name == compressed_section_name)
- 	    {
- 	      ranges_shndx = i;
- 	      this->output_section_offset_ = object->output_section_offset(i);
-@@ -393,7 +410,7 @@ Dwarf_ranges_table::read_range_list(
- {
-   Dwarf_range_list* ranges;
- 
--  if (!this->read_ranges_table(object, symtab, symtab_size, ranges_shndx))
-+  if (!this->read_ranges_table(object, symtab, symtab_size, ranges_shndx, 4))
-     return NULL;
- 
-   // Correct the offset.  For incremental update links, we have a
-@@ -459,6 +476,125 @@ Dwarf_ranges_table::read_range_list(
-   return ranges;
- }
- 
-+// Read a DWARF 5 range list from section RANGES_SHNDX at offset RANGES_OFFSET.
-+
-+Dwarf_range_list*
-+Dwarf_ranges_table::read_range_list_v5(
-+    Relobj* object,
-+    const unsigned char* symtab,
-+    off_t symtab_size,
-+    unsigned int addr_size,
-+    unsigned int ranges_shndx,
-+    off_t offset)
-+{
-+  Dwarf_range_list* ranges;
-+
-+  if (!this->read_ranges_table(object, symtab, symtab_size, ranges_shndx, 5))
-+    return NULL;
-+
-+  ranges = new Dwarf_range_list();
-+  off_t base = 0;
-+  unsigned int shndx0 = 0;
-+
-+  // Correct the offset.  For incremental update links, we have a
-+  // relocated offset that is relative to the output section, but
-+  // here we need an offset relative to the input section.
-+  offset -= this->output_section_offset_;
-+
-+  // Read the range list at OFFSET.
-+  const unsigned char* prle = this->ranges_buffer_ + offset;
-+  while (prle < this->ranges_buffer_end_)
-+    {
-+      off_t start;
-+      off_t end;
-+      unsigned int shndx1 = 0;
-+      unsigned int shndx2 = 0;
-+      size_t len;
-+
-+      // Read the entry type.
-+      unsigned int rle_type = *prle++;
-+      offset += 1;
-+
-+      if (rle_type == elfcpp::DW_RLE_end_of_list)
-+	break;
-+
-+      switch (rle_type)
-+	{
-+	  case elfcpp::DW_RLE_base_address:
-+	    if (addr_size == 4)
-+	      base = this->dwinfo_->read_from_pointer<32>(prle);
-+	    else
-+	      base = this->dwinfo_->read_from_pointer<64>(prle);
-+	    if (this->ranges_reloc_mapper_ != NULL)
-+		shndx0 = this->lookup_reloc(offset, &base);
-+	    prle += addr_size;
-+	    offset += addr_size;
-+	    break;
-+
-+	  case elfcpp::DW_RLE_offset_pair:
-+	    start = read_unsigned_LEB_128(prle, &len);
-+	    prle += len;
-+	    offset += len;
-+	    end = read_unsigned_LEB_128(prle, &len);
-+	    prle += len;
-+	    offset += len;
-+	    if (shndx0 == 0 || object->is_section_included(shndx0))
-+	      ranges->add(shndx0, base + start, base + end);
-+	    break;
-+
-+	  case elfcpp::DW_RLE_start_end:
-+	    if (addr_size == 4)
-+	      {
-+		start = this->dwinfo_->read_from_pointer<32>(prle);
-+		end = this->dwinfo_->read_from_pointer<32>(prle + 4);
-+	      }
-+	    else
-+	      {
-+		start = this->dwinfo_->read_from_pointer<64>(prle);
-+		end = this->dwinfo_->read_from_pointer<64>(prle + 8);
-+	      }
-+	    if (this->ranges_reloc_mapper_ != NULL)
-+	      {
-+		shndx1 = this->lookup_reloc(offset, &start);
-+		shndx2 = this->lookup_reloc(offset + addr_size, &end);
-+		if (shndx1 != shndx2)
-+		  gold_warning(_("%s: DWARF info may be corrupt; offsets in a "
-+				 "range list entry are in different sections"),
-+			       object->name().c_str());
-+	      }
-+	    prle += addr_size * 2;
-+	    offset += addr_size * 2;
-+	    if (shndx1 == 0 || object->is_section_included(shndx1))
-+	      ranges->add(shndx1, start, end);
-+	    break;
-+
-+	  case elfcpp::DW_RLE_start_length:
-+	    if (addr_size == 4)
-+	      start = this->dwinfo_->read_from_pointer<32>(prle);
-+	    else
-+	      start = this->dwinfo_->read_from_pointer<64>(prle);
-+	    if (this->ranges_reloc_mapper_ != NULL)
-+	      shndx1 = this->lookup_reloc(offset, &start);
-+	    prle += addr_size;
-+	    offset += addr_size;
-+	    end = start + read_unsigned_LEB_128(prle, &len);
-+	    prle += len;
-+	    offset += len;
-+	    if (shndx1 == 0 || object->is_section_included(shndx1))
-+	      ranges->add(shndx1, start, end);
-+	    break;
-+
-+	  default:
-+	    gold_warning(_("%s: DWARF range list contains "
-+			   "unsupported entry type (%d)"),
-+			 object->name().c_str(), rle_type);
-+	    break;
-+	}
-+    }
-+
-+  return ranges;
-+}
-+
- // Look for a relocation at offset OFF in the range table,
- // and return the section index and offset of the target.
- 
-@@ -709,7 +845,13 @@ Dwarf_die::read_attributes()
- 	  case elfcpp::DW_FORM_flag_present:
- 	    attr_value.val.intval = 1;
- 	    break;
-+	  case elfcpp::DW_FORM_implicit_const:
-+	    attr_value.val.intval =
-+		this->abbrev_code_->attributes[i].implicit_const;
-+	    break;
- 	  case elfcpp::DW_FORM_strp:
-+	  case elfcpp::DW_FORM_strp_sup:
-+	  case elfcpp::DW_FORM_line_strp:
- 	    {
- 	      off_t str_off;
- 	      if (this->dwinfo_->offset_size() == 4)
-@@ -722,6 +864,26 @@ Dwarf_die::read_attributes()
- 	      attr_value.val.refval = str_off;
- 	      break;
- 	    }
-+	  case elfcpp::DW_FORM_strx:
-+	  case elfcpp::DW_FORM_GNU_str_index:
-+	    attr_value.val.uintval = read_unsigned_LEB_128(pattr, &len);
-+	    pattr += len;
-+	    break;
-+	  case elfcpp::DW_FORM_strx1:
-+	    attr_value.val.uintval = *pattr++;
-+	    break;
-+	  case elfcpp::DW_FORM_strx2:
-+	    attr_value.val.uintval =
-+		this->dwinfo_->read_from_pointer<16>(&pattr);
-+	    break;
-+	  case elfcpp::DW_FORM_strx3:
-+	    attr_value.val.uintval =
-+		this->dwinfo_->read_3bytes_from_pointer(&pattr);
-+	    break;
-+	  case elfcpp::DW_FORM_strx4:
-+	    attr_value.val.uintval =
-+		this->dwinfo_->read_from_pointer<32>(&pattr);
-+	    break;
- 	  case elfcpp::DW_FORM_sec_offset:
- 	    {
- 	      off_t sec_off;
-@@ -747,7 +909,6 @@ Dwarf_die::read_attributes()
- 		  this->dwinfo_->lookup_reloc(attr_off, &sec_off);
- 	      attr_value.aux.shndx = shndx;
- 	      attr_value.val.refval = sec_off;
--	      ref_form = true;
- 	      break;
- 	    }
- 	  case elfcpp::DW_FORM_ref_addr:
-@@ -815,6 +976,7 @@ Dwarf_die::read_attributes()
- 	      break;
- 	    }
- 	  case elfcpp::DW_FORM_ref4:
-+	  case elfcpp::DW_FORM_ref_sup4:
- 	    {
- 	      off_t sec_off;
- 	      sec_off = this->dwinfo_->read_from_pointer<32>(&pattr);
-@@ -835,11 +997,20 @@ Dwarf_die::read_attributes()
- 	      attr_value.val.intval = sec_off;
- 	      break;
- 	    }
-+	  case elfcpp::DW_FORM_data16:
-+	    {
-+	      // For now, treat this as a 16-byte block.
-+	      attr_value.val.blockval = pattr;
-+	      attr_value.aux.blocklen = 16;
-+	      pattr += 16;
-+	      break;
-+	    }
- 	  case elfcpp::DW_FORM_ref_sig8:
- 	    attr_value.val.uintval =
- 		this->dwinfo_->read_from_pointer<64>(&pattr);
- 	    break;
- 	  case elfcpp::DW_FORM_ref8:
-+	  case elfcpp::DW_FORM_ref_sup8:
- 	    {
- 	      off_t sec_off;
- 	      sec_off = this->dwinfo_->read_from_pointer<64>(&pattr);
-@@ -856,11 +1027,29 @@ Dwarf_die::read_attributes()
- 	    pattr += len;
- 	    break;
- 	  case elfcpp::DW_FORM_udata:
-+	    attr_value.val.uintval = read_unsigned_LEB_128(pattr, &len);
-+	    pattr += len;
-+	    break;
-+	  case elfcpp::DW_FORM_addrx:
- 	  case elfcpp::DW_FORM_GNU_addr_index:
--	  case elfcpp::DW_FORM_GNU_str_index:
- 	    attr_value.val.uintval = read_unsigned_LEB_128(pattr, &len);
- 	    pattr += len;
- 	    break;
-+	  case elfcpp::DW_FORM_addrx1:
-+	    attr_value.val.uintval = *pattr++;
-+	    break;
-+	  case elfcpp::DW_FORM_addrx2:
-+	    attr_value.val.uintval =
-+		this->dwinfo_->read_from_pointer<16>(&pattr);
-+	    break;
-+	  case elfcpp::DW_FORM_addrx3:
-+	    attr_value.val.uintval =
-+		this->dwinfo_->read_3bytes_from_pointer(&pattr);
-+	    break;
-+	  case elfcpp::DW_FORM_addrx4:
-+	    attr_value.val.uintval =
-+		this->dwinfo_->read_from_pointer<32>(&pattr);
-+	    break;
- 	  case elfcpp::DW_FORM_sdata:
- 	    attr_value.val.intval = read_signed_LEB_128(pattr, &len);
- 	    pattr += len;
-@@ -870,6 +1059,11 @@ Dwarf_die::read_attributes()
- 	    len = strlen(attr_value.val.stringval);
- 	    pattr += len + 1;
- 	    break;
-+	  case elfcpp::DW_FORM_loclistx:
-+	  case elfcpp::DW_FORM_rnglistx:
-+	    attr_value.val.uintval = read_unsigned_LEB_128(pattr, &len);
-+	    pattr += len;
-+	    break;
- 	  default:
- 	    return false;
- 	}
-@@ -954,9 +1148,12 @@ Dwarf_die::skip_attributes()
-       switch(form)
- 	{
- 	  case elfcpp::DW_FORM_flag_present:
-+	  case elfcpp::DW_FORM_implicit_const:
- 	    break;
- 	  case elfcpp::DW_FORM_strp:
- 	  case elfcpp::DW_FORM_sec_offset:
-+	  case elfcpp::DW_FORM_strp_sup:
-+	  case elfcpp::DW_FORM_line_strp:
- 	    pattr += this->dwinfo_->offset_size();
- 	    break;
- 	  case elfcpp::DW_FORM_addr:
-@@ -993,23 +1190,42 @@ Dwarf_die::skip_attributes()
- 	  case elfcpp::DW_FORM_data1:
- 	  case elfcpp::DW_FORM_ref1:
- 	  case elfcpp::DW_FORM_flag:
-+	  case elfcpp::DW_FORM_strx1:
-+	  case elfcpp::DW_FORM_addrx1:
- 	    pattr += 1;
- 	    break;
- 	  case elfcpp::DW_FORM_data2:
- 	  case elfcpp::DW_FORM_ref2:
-+	  case elfcpp::DW_FORM_strx2:
-+	  case elfcpp::DW_FORM_addrx2:
- 	    pattr += 2;
- 	    break;
-+	  case elfcpp::DW_FORM_strx3:
-+	  case elfcpp::DW_FORM_addrx3:
-+	    pattr += 3;
-+	    break;
- 	  case elfcpp::DW_FORM_data4:
- 	  case elfcpp::DW_FORM_ref4:
-+	  case elfcpp::DW_FORM_ref_sup4:
-+	  case elfcpp::DW_FORM_strx4:
-+	  case elfcpp::DW_FORM_addrx4:
- 	    pattr += 4;
- 	    break;
- 	  case elfcpp::DW_FORM_data8:
- 	  case elfcpp::DW_FORM_ref8:
- 	  case elfcpp::DW_FORM_ref_sig8:
-+	  case elfcpp::DW_FORM_ref_sup8:
- 	    pattr += 8;
- 	    break;
-+	  case elfcpp::DW_FORM_data16:
-+	    pattr += 16;
-+	    break;
- 	  case elfcpp::DW_FORM_ref_udata:
- 	  case elfcpp::DW_FORM_udata:
-+	  case elfcpp::DW_FORM_addrx:
-+	  case elfcpp::DW_FORM_strx:
-+	  case elfcpp::DW_FORM_loclistx:
-+	  case elfcpp::DW_FORM_rnglistx:
- 	  case elfcpp::DW_FORM_GNU_addr_index:
- 	  case elfcpp::DW_FORM_GNU_str_index:
- 	    read_unsigned_LEB_128(pattr, &len);
-@@ -1313,6 +1529,13 @@ Dwarf_info_reader::do_parse()
- 	  elfcpp::Swap_unaligned<16, big_endian>::readval(pinfo);
-       pinfo += 2;
- 
-+      // DWARF 5: Read the unit type (1 byte) and address size (1 byte).
-+      if (this->cu_version_ >= 5)
-+	{
-+	  this->unit_type_ = *pinfo++;
-+	  this->address_size_ = *pinfo++;
-+	}
-+
-       // Read debug_abbrev_offset (4 or 8 bytes).
-       if (this->offset_size_ == 4)
- 	abbrev_offset = elfcpp::Swap_unaligned<32, big_endian>::readval(pinfo);
-@@ -1333,13 +1556,14 @@ Dwarf_info_reader::do_parse()
- 	}
-       pinfo += this->offset_size_;
- 
--      // Read address_size (1 byte).
--      this->address_size_ = *pinfo++;
-+      // DWARF 2-4: Read address_size (1 byte).
-+      if (this->cu_version_ < 5)
-+	this->address_size_ = *pinfo++;
- 
-       // For type units, read the two extra fields.
-       uint64_t signature = 0;
-       off_t type_offset = 0;
--      if (this->is_type_unit_)
-+      if (this->is_type_unit())
-         {
- 	  if (!this->check_buffer(pinfo + 8 + this->offset_size_))
- 	    break;
-@@ -1369,7 +1593,7 @@ Dwarf_info_reader::do_parse()
-       if (root_die.tag() != 0)
- 	{
- 	  // Visit the CU or TU.
--	  if (this->is_type_unit_)
-+	  if (this->is_type_unit())
- 	    this->visit_type_unit(section_offset + this->cu_offset_,
- 				  cu_end - cu_start, type_offset, signature,
- 				  &root_die);
-@@ -1460,6 +1684,19 @@ Dwarf_info_reader::read_from_pointer(const unsigned char** source)
-   return return_value;
- }
- 
-+// Read a 3-byte integer.  Update SOURCE after read.
-+inline typename elfcpp::Valtype_base<32>::Valtype
-+Dwarf_info_reader::read_3bytes_from_pointer(const unsigned char** source)
-+{
-+  typename elfcpp::Valtype_base<32>::Valtype return_value;
-+  if (this->object_->is_big_endian())
-+    return_value = ((*source)[0] << 16) | ((*source)[1] << 8) | (*source)[2];
-+  else
-+    return_value = ((*source)[2] << 16) | ((*source)[1] << 8) | (*source)[0];
-+  *source += 3;
-+  return return_value;
-+}
-+
- // Look for a relocation at offset ATTR_OFF in the dwarf info,
- // and return the section index and offset of the target.
- 
-@@ -1561,27 +1798,40 @@ Sized_dwarf_line_info<size, big_endian>::Sized_dwarf_line_info(
-     Object* object,
-     unsigned int read_shndx)
-   : data_valid_(false), buffer_(NULL), buffer_start_(NULL),
-+    str_buffer_(NULL), str_buffer_start_(NULL),
-     reloc_mapper_(NULL), symtab_buffer_(NULL), directories_(), files_(),
--    current_header_index_(-1)
-+    current_header_index_(-1), reloc_map_(), line_number_map_()
- {
--  unsigned int debug_shndx;
-+  unsigned int debug_line_shndx = 0;
-+  unsigned int debug_line_str_shndx = 0;
- 
--  for (debug_shndx = 1; debug_shndx < object->shnum(); ++debug_shndx)
-+  for (unsigned int i = 1; i < object->shnum(); ++i)
-     {
-+      section_size_type buffer_size;
-+      bool is_new = false;
-+
-       // FIXME: do this more efficiently: section_name() isn't super-fast
--      std::string name = object->section_name(debug_shndx);
-+      std::string name = object->section_name(i);
-       if (name == ".debug_line" || name == ".zdebug_line")
- 	{
--	  section_size_type buffer_size;
--	  bool is_new = false;
--	  this->buffer_ = object->decompressed_section_contents(debug_shndx,
--								&buffer_size,
--								&is_new);
-+	  this->buffer_ =
-+	      object->decompressed_section_contents(i, &buffer_size, &is_new);
- 	  if (is_new)
- 	    this->buffer_start_ = this->buffer_;
- 	  this->buffer_end_ = this->buffer_ + buffer_size;
--	  break;
-+	  debug_line_shndx = i;
-+	}
-+      else if (name == ".debug_line_str" || name == ".zdebug_line_str")
-+	{
-+	  this->str_buffer_ =
-+	      object->decompressed_section_contents(i, &buffer_size, &is_new);
-+	  if (is_new)
-+	    this->str_buffer_start_ = this->str_buffer_;
-+	  this->str_buffer_end_ = this->str_buffer_ + buffer_size;
-+	  debug_line_str_shndx = i;
- 	}
-+      if (debug_line_shndx > 0 && debug_line_str_shndx > 0)
-+        break;
-     }
-   if (this->buffer_ == NULL)
-     return;
-@@ -1594,7 +1844,7 @@ Sized_dwarf_line_info<size, big_endian>::Sized_dwarf_line_info(
-       unsigned int reloc_sh_type = object->section_type(i);
-       if ((reloc_sh_type == elfcpp::SHT_REL
- 	   || reloc_sh_type == elfcpp::SHT_RELA)
--	  && object->section_info(i) == debug_shndx)
-+	  && object->section_info(i) == debug_line_shndx)
- 	{
- 	  reloc_shndx = i;
- 	  this->track_relocs_type_ = reloc_sh_type;
-@@ -1640,65 +1890,80 @@ Sized_dwarf_line_info<size, big_endian>::read_header_prolog(
-   uint32_t initial_length = elfcpp::Swap_unaligned<32, big_endian>::readval(lineptr);
-   lineptr += 4;
- 
--  // In DWARF2/3, if the initial length is all 1 bits, then the offset
-+  // In DWARF, if the initial length is all 1 bits, then the offset
-   // size is 8 and we need to read the next 8 bytes for the real length.
-   if (initial_length == 0xffffffff)
-     {
--      header_.offset_size = 8;
-+      this->header_.offset_size = 8;
-       initial_length = elfcpp::Swap_unaligned<64, big_endian>::readval(lineptr);
-       lineptr += 8;
-     }
-   else
--    header_.offset_size = 4;
-+    this->header_.offset_size = 4;
- 
--  header_.total_length = initial_length;
-+  this->header_.total_length = initial_length;
- 
--  gold_assert(lineptr + header_.total_length <= buffer_end_);
-+  this->end_of_unit_ = lineptr + initial_length;
-+  gold_assert(this->end_of_unit_ <= buffer_end_);
- 
--  header_.version = elfcpp::Swap_unaligned<16, big_endian>::readval(lineptr);
-+  this->header_.version =
-+      elfcpp::Swap_unaligned<16, big_endian>::readval(lineptr);
-   lineptr += 2;
- 
--  // Skip address size and segment selector for DWARF5.
--  if (header_.version >= 5)
--    lineptr += 2;
-+  // We can only read versions 2-5 of the DWARF line number table.
-+  // For other versions, just skip the entire line number table.
-+  if (this->header_.version < 2 || this->header_.version > 5)
-+    return this->end_of_unit_;
- 
--  if (header_.offset_size == 4)
--    header_.prologue_length = elfcpp::Swap_unaligned<32, big_endian>::readval(lineptr);
-+  // DWARF 5 only: address size and segment selector.
-+  if (this->header_.version >= 5)
-+    {
-+      this->header_.address_size = *lineptr;
-+      // We ignore the segment selector.
-+      lineptr += 2;
-+    }
-+
-+  if (this->header_.offset_size == 4)
-+    this->header_.prologue_length =
-+	elfcpp::Swap_unaligned<32, big_endian>::readval(lineptr);
-   else
--    header_.prologue_length = elfcpp::Swap_unaligned<64, big_endian>::readval(lineptr);
--  lineptr += header_.offset_size;
-+    this->header_.prologue_length =
-+	elfcpp::Swap_unaligned<64, big_endian>::readval(lineptr);
-+  lineptr += this->header_.offset_size;
- 
--  header_.min_insn_length = *lineptr;
-+  this->end_of_header_length_ = lineptr;
-+
-+  this->header_.min_insn_length = *lineptr;
-   lineptr += 1;
- 
--  if (header_.version < 4)
--    header_.max_ops_per_insn = 1;
-+  if (this->header_.version < 4)
-+    this->header_.max_ops_per_insn = 1;
-   else
-     {
-       // DWARF 4 added the maximum_operations_per_instruction field.
--      header_.max_ops_per_insn = *lineptr;
-+      this->header_.max_ops_per_insn = *lineptr;
-       lineptr += 1;
-       // TODO: Add support for values other than 1.
--      gold_assert(header_.max_ops_per_insn == 1);
-+      gold_assert(this->header_.max_ops_per_insn == 1);
-     }
- 
--  header_.default_is_stmt = *lineptr;
-+  this->header_.default_is_stmt = *lineptr;
-   lineptr += 1;
- 
--  header_.line_base = *reinterpret_cast<const signed char*>(lineptr);
-+  this->header_.line_base = *reinterpret_cast<const signed char*>(lineptr);
-   lineptr += 1;
- 
--  header_.line_range = *lineptr;
-+  this->header_.line_range = *lineptr;
-   lineptr += 1;
- 
--  header_.opcode_base = *lineptr;
-+  this->header_.opcode_base = *lineptr;
-   lineptr += 1;
- 
--  header_.std_opcode_lengths.resize(header_.opcode_base + 1);
--  header_.std_opcode_lengths[0] = 0;
--  for (int i = 1; i < header_.opcode_base; i++)
-+  this->header_.std_opcode_lengths.resize(this->header_.opcode_base + 1);
-+  this->header_.std_opcode_lengths[0] = 0;
-+  for (int i = 1; i < this->header_.opcode_base; i++)
-     {
--      header_.std_opcode_lengths[i] = *lineptr;
-+      this->header_.std_opcode_lengths[i] = *lineptr;
-       lineptr += 1;
-     }
- 
-@@ -1707,10 +1972,11 @@ Sized_dwarf_line_info<size, big_endian>::read_header_prolog(
- 
- // The header for a debug_line section is mildly complicated, because
- // the line info is very tightly encoded.
-+// This routine is for DWARF versions 2, 3, and 4.
- 
- template<int size, bool big_endian>
- const unsigned char*
--Sized_dwarf_line_info<size, big_endian>::read_header_tables(
-+Sized_dwarf_line_info<size, big_endian>::read_header_tables_v2(
-     const unsigned char* lineptr)
- {
-   ++this->current_header_index_;
-@@ -1775,6 +2041,169 @@ Sized_dwarf_line_info<size, big_endian>::read_header_tables(
-   return lineptr;
- }
- 
-+// This routine is for DWARF version 5.
-+
-+template<int size, bool big_endian>
-+const unsigned char*
-+Sized_dwarf_line_info<size, big_endian>::read_header_tables_v5(
-+    const unsigned char* lineptr)
-+{
-+  size_t len;
-+
-+  ++this->current_header_index_;
-+
-+  gold_assert(static_cast<int>(this->directories_.size())
-+	      == this->current_header_index_);
-+  gold_assert(static_cast<int>(this->files_.size())
-+	      == this->current_header_index_);
-+
-+  // Read the directory list.
-+  unsigned int format_count = *lineptr;
-+  lineptr += 1;
-+
-+  unsigned int *types = new unsigned int[format_count];
-+  unsigned int *forms = new unsigned int[format_count];
-+
-+  for (unsigned int i = 0; i < format_count; i++)
-+    {
-+      types[i] = read_unsigned_LEB_128(lineptr, &len);
-+      lineptr += len;
-+      forms[i] = read_unsigned_LEB_128(lineptr, &len);
-+      lineptr += len;
-+    }
-+
-+  uint64_t entry_count = read_unsigned_LEB_128(lineptr, &len);
-+  lineptr += len;
-+  this->directories_.push_back(std::vector<std::string>(0));
-+  std::vector<std::string>& dir_list = this->directories_.back();
-+
-+  for (unsigned int j = 0; j < entry_count; j++)
-+    {
-+      std::string dirname;
-+
-+      for (unsigned int i = 0; i < format_count; i++)
-+       {
-+	 if (types[i] == elfcpp::DW_LNCT_path)
-+	   {
-+	     if (forms[i] == elfcpp::DW_FORM_string)
-+	       {
-+		 dirname = reinterpret_cast<const char*>(lineptr);
-+		 lineptr += dirname.size() + 1;
-+	       }
-+	     else if (forms[i] == elfcpp::DW_FORM_line_strp)
-+	       {
-+		 uint64_t offset;
-+		 if (this->header_.offset_size == 4)
-+		   offset =
-+		       elfcpp::Swap_unaligned<32, big_endian>::readval(lineptr);
-+		 else
-+		   offset =
-+		       elfcpp::Swap_unaligned<64, big_endian>::readval(lineptr);
-+		 typename Reloc_map::const_iterator it
-+		     = this->reloc_map_.find(lineptr - this->buffer_);
-+		 if (it != reloc_map_.end())
-+		   {
-+		     if (this->track_relocs_type_ == elfcpp::SHT_RELA)
-+		       offset = 0;
-+		     offset += it->second.second;
-+		   }
-+		 lineptr += this->header_.offset_size;
-+		 dirname = reinterpret_cast<const char*>(this->str_buffer_
-+							 + offset);
-+	       }
-+	     else
-+	       return lineptr;
-+	   }
-+	 else
-+	   return lineptr;
-+       }
-+      dir_list.push_back(dirname);
-+    }
-+
-+  delete[] types;
-+  delete[] forms;
-+
-+  // Read the filenames list.
-+  format_count = *lineptr;
-+  lineptr += 1;
-+
-+  types = new unsigned int[format_count];
-+  forms = new unsigned int[format_count];
-+
-+  for (unsigned int i = 0; i < format_count; i++)
-+    {
-+      types[i] = read_unsigned_LEB_128(lineptr, &len);
-+      lineptr += len;
-+      forms[i] = read_unsigned_LEB_128(lineptr, &len);
-+      lineptr += len;
-+    }
-+
-+  entry_count = read_unsigned_LEB_128(lineptr, &len);
-+  lineptr += len;
-+  this->files_.push_back(
-+      std::vector<std::pair<int, std::string> >(0));
-+  std::vector<std::pair<int, std::string> >& file_list = this->files_.back();
-+
-+  for (unsigned int j = 0; j < entry_count; j++)
-+    {
-+      const char* path = NULL;
-+      int dirindex = 0;
-+
-+      for (unsigned int i = 0; i < format_count; i++)
-+       {
-+	 if (types[i] == elfcpp::DW_LNCT_path)
-+	   {
-+	     if (forms[i] == elfcpp::DW_FORM_string)
-+	       {
-+		 path = reinterpret_cast<const char*>(lineptr);
-+		 lineptr += strlen(path) + 1;
-+	       }
-+	     else if (forms[i] == elfcpp::DW_FORM_line_strp)
-+	       {
-+		 uint64_t offset;
-+		 if (this->header_.offset_size == 4)
-+		   offset = elfcpp::Swap_unaligned<32, big_endian>::readval(lineptr);
-+		 else
-+		   offset = elfcpp::Swap_unaligned<64, big_endian>::readval(lineptr);
-+		 typename Reloc_map::const_iterator it
-+		     = this->reloc_map_.find(lineptr - this->buffer_);
-+		 if (it != reloc_map_.end())
-+		   {
-+		     if (this->track_relocs_type_ == elfcpp::SHT_RELA)
-+		       offset = 0;
-+		     offset += it->second.second;
-+		   }
-+		 lineptr += this->header_.offset_size;
-+		 path = reinterpret_cast<const char*>(this->str_buffer_
-+						      + offset);
-+	       }
-+	     else
-+	       return lineptr;
-+	   }
-+	 else if (types[i] == elfcpp::DW_LNCT_directory_index)
-+	   {
-+	     if (forms[i] == elfcpp::DW_FORM_udata)
-+	       {
-+		 dirindex = read_unsigned_LEB_128(lineptr, &len);
-+		 lineptr += len;
-+	       }
-+	     else
-+	       return lineptr;
-+	   }
-+	 else
-+	   return lineptr;
-+       }
-+      gold_debug(DEBUG_LOCATION, "File %3d: %s",
-+		 static_cast<int>(file_list.size()), path);
-+      file_list.push_back(std::make_pair(dirindex, path));
-+    }
-+
-+  delete[] types;
-+  delete[] forms;
-+
-+  return lineptr;
-+}
-+
- // Process a single opcode in the .debug.line structure.
- 
- template<int size, bool big_endian>
-@@ -1790,15 +2219,15 @@ Sized_dwarf_line_info<size, big_endian>::process_one_opcode(
- 
-   // If the opcode is great than the opcode_base, it is a special
-   // opcode. Most line programs consist mainly of special opcodes.
--  if (opcode >= header_.opcode_base)
-+  if (opcode >= this->header_.opcode_base)
-     {
--      opcode -= header_.opcode_base;
--      const int advance_address = ((opcode / header_.line_range)
--                                   * header_.min_insn_length);
-+      opcode -= this->header_.opcode_base;
-+      const int advance_address = ((opcode / this->header_.line_range)
-+                                   * this->header_.min_insn_length);
-       lsm->address += advance_address;
- 
--      const int advance_line = ((opcode % header_.line_range)
--                                + header_.line_base);
-+      const int advance_line = ((opcode % this->header_.line_range)
-+                                + this->header_.line_base);
-       lsm->line_num += advance_line;
-       lsm->basic_block = true;
-       *len = oplen;
-@@ -1818,13 +2247,13 @@ Sized_dwarf_line_info<size, big_endian>::process_one_opcode(
-         const uint64_t advance_address
-             = read_unsigned_LEB_128(start, &templen);
-         oplen += templen;
--        lsm->address += header_.min_insn_length * advance_address;
-+        lsm->address += this->header_.min_insn_length * advance_address;
-       }
-       break;
- 
-     case elfcpp::DW_LNS_advance_line:
-       {
--        const uint64_t advance_line = read_signed_LEB_128(start, &templen);
-+        const int64_t advance_line = read_signed_LEB_128(start, &templen);
-         oplen += templen;
-         lsm->line_num += advance_line;
-       }
-@@ -1865,9 +2294,9 @@ Sized_dwarf_line_info<size, big_endian>::process_one_opcode(
- 
-     case elfcpp::DW_LNS_const_add_pc:
-       {
--        const int advance_address = (header_.min_insn_length
--                                     * ((255 - header_.opcode_base)
--                                        / header_.line_range));
-+        const int advance_address = (this->header_.min_insn_length
-+                                     * ((255 - this->header_.opcode_base)
-+                                        / this->header_.line_range));
-         lsm->address += advance_address;
-       }
-       break;
-@@ -1950,7 +2379,7 @@ Sized_dwarf_line_info<size, big_endian>::process_one_opcode(
-     default:
-       {
-         // Ignore unknown opcode  silently
--        for (int i = 0; i < header_.std_opcode_lengths[opcode]; i++)
-+        for (int i = 0; i < this->header_.std_opcode_lengths[opcode]; i++)
-           {
-             size_t templen;
-             read_unsigned_LEB_128(start, &templen);
-@@ -1970,28 +2399,24 @@ Sized_dwarf_line_info<size, big_endian>::process_one_opcode(
- template<int size, bool big_endian>
- unsigned const char*
- Sized_dwarf_line_info<size, big_endian>::read_lines(unsigned const char* lineptr,
-+                                                    unsigned const char* endptr,
-                                                     unsigned int shndx)
- {
-   struct LineStateMachine lsm;
- 
--  // LENGTHSTART is the place the length field is based on.  It is the
--  // point in the header after the initial length field.
--  const unsigned char* lengthstart = buffer_;
--
--  // In 64 bit dwarf, the initial length is 12 bytes, because of the
--  // 0xffffffff at the start.
--  if (header_.offset_size == 8)
--    lengthstart += 12;
--  else
--    lengthstart += 4;
--
--  while (lineptr < lengthstart + header_.total_length)
-+  while (lineptr < endptr)
-     {
--      ResetLineStateMachine(&lsm, header_.default_is_stmt);
-+      ResetLineStateMachine(&lsm, this->header_.default_is_stmt);
-       while (!lsm.end_sequence)
-         {
-           size_t oplength;
-+
-+	  if (lineptr >= endptr)
-+	    break;
-+
-           bool add_line = this->process_one_opcode(lineptr, &lsm, &oplength);
-+          lineptr += oplength;
-+
-           if (add_line
-               && (shndx == -1U || lsm.shndx == -1U || shndx == lsm.shndx))
-             {
-@@ -2012,11 +2437,10 @@ Sized_dwarf_line_info<size, big_endian>::read_lines(unsigned const char* lineptr
- 		map.back().last_line_for_offset = false;
- 	      map.push_back(entry);
-             }
--          lineptr += oplength;
-         }
-     }
- 
--  return lengthstart + header_.total_length;
-+  return endptr;
- }
- 
- // Read the relocations into a Reloc_map.
-@@ -2057,9 +2481,17 @@ Sized_dwarf_line_info<size, big_endian>::read_line_mappings(unsigned int shndx)
-     {
-       const unsigned char* lineptr = this->buffer_;
-       lineptr = this->read_header_prolog(lineptr);
--      lineptr = this->read_header_tables(lineptr);
--      lineptr = this->read_lines(lineptr, shndx);
--      this->buffer_ = lineptr;
-+      if (this->header_.version >= 2 && this->header_.version <= 4)
-+	{
-+	  lineptr = this->read_header_tables_v2(lineptr);
-+	  lineptr = this->read_lines(lineptr, this->end_of_unit_, shndx);
-+	}
-+      else if (this->header_.version == 5)
-+	{
-+	  lineptr = this->read_header_tables_v5(lineptr);
-+	  lineptr = this->read_lines(lineptr, this->end_of_unit_, shndx);
-+	}
-+      this->buffer_ = this->end_of_unit_;
-     }
- 
-   // Sort the lines numbers, so addr2line can use binary search.
-@@ -2215,6 +2647,9 @@ Sized_dwarf_line_info<size, big_endian>::do_addr2line(
-     off_t offset,
-     std::vector<std::string>* other_lines)
- {
-+  gold_debug(DEBUG_LOCATION, "do_addr2line: shndx %u offset %08x",
-+	     shndx, static_cast<int>(offset));
-+
-   if (this->data_valid_ == false)
-     return "";
- 
-diff --git a/gold/dwarf_reader.h b/gold/dwarf_reader.h
-index 80b2231327c..921a1f7c876 100644
---- a/gold/dwarf_reader.h
-+++ b/gold/dwarf_reader.h
-@@ -173,11 +173,12 @@ class Dwarf_abbrev_table
-   // An attribute list entry.
-   struct Attribute
-   {
--    Attribute(unsigned int a, unsigned int f)
--      : attr(a), form(f)
-+    Attribute(unsigned int a, unsigned int f, int c)
-+      : attr(a), form(f), implicit_const(c)
-     { }
-     unsigned int attr;
-     unsigned int form;
-+    int implicit_const;
-   };
- 
-   // An abbrev code entry.
-@@ -190,9 +191,9 @@ class Dwarf_abbrev_table
-     }
- 
-     void
--    add_attribute(unsigned int attr, unsigned int form)
-+    add_attribute(unsigned int attr, unsigned int form, int implicit_const)
-     {
--      this->attributes.push_back(Attribute(attr, form));
-+      this->attributes.push_back(Attribute(attr, form, implicit_const));
-     }
- 
-     // The DWARF tag.
-@@ -349,14 +350,15 @@ class Dwarf_ranges_table
-       delete this->ranges_reloc_mapper_;
-   }
- 
--  // Read the ranges table from an object file.
-+  // Fetch the contents of the ranges table from an object file.
-   bool
-   read_ranges_table(Relobj* object,
- 		    const unsigned char* symtab,
- 		    off_t symtab_size,
--		    unsigned int ranges_shndx);
-+		    unsigned int ranges_shndx,
-+		    unsigned int version);
- 
--  // Read the range table from an object file.
-+  // Read the DWARF 2/3/4 range table.
-   Dwarf_range_list*
-   read_range_list(Relobj* object,
- 		  const unsigned char* symtab,
-@@ -365,6 +367,15 @@ class Dwarf_ranges_table
- 		  unsigned int ranges_shndx,
- 		  off_t ranges_offset);
- 
-+  // Read the DWARF 5 rnglists table.
-+  Dwarf_range_list*
-+  read_range_list_v5(Relobj* object,
-+		     const unsigned char* symtab,
-+		     off_t symtab_size,
-+		     unsigned int address_size,
-+		     unsigned int ranges_shndx,
-+		     off_t ranges_offset);
-+
-   // Look for a relocation at offset OFF in the range table,
-   // and return the section index and offset of the target.
-   unsigned int
-@@ -490,8 +501,6 @@ class Dwarf_die
-       unsigned int shndx;
-       // Block length for block forms.
-       unsigned int blocklen;
--      // Attribute offset for DW_FORM_strp.
--      unsigned int attr_off;
-     } aux;
-   };
- 
-@@ -684,6 +693,10 @@ class Dwarf_die
- // calls the various visit_xxx() methods for each header.  Clients
- // should derive a new class from this one and implement the
- // visit_compilation_unit() and visit_type_unit() functions.
-+// IS_TYPE_UNIT is true if we are reading from a .debug_types section,
-+// which is used only in DWARF 4. For DWARF 5, it will be false,
-+// and we will determine whether it's a type init when we parse the
-+// header.
- 
- class Dwarf_info_reader
- {
-@@ -695,7 +708,7 @@ class Dwarf_info_reader
- 		    unsigned int shndx,
- 		    unsigned int reloc_shndx,
- 		    unsigned int reloc_type)
--    : is_type_unit_(is_type_unit), object_(object), symtab_(symtab),
-+    : object_(object), symtab_(symtab),
-       symtab_size_(symtab_size), shndx_(shndx), reloc_shndx_(reloc_shndx),
-       reloc_type_(reloc_type), abbrev_shndx_(0), string_shndx_(0),
-       buffer_(NULL), buffer_end_(NULL), cu_offset_(0), cu_length_(0),
-@@ -703,7 +716,12 @@ class Dwarf_info_reader
-       abbrev_table_(), ranges_table_(this),
-       reloc_mapper_(NULL), string_buffer_(NULL), string_buffer_end_(NULL),
-       owns_string_buffer_(false), string_output_section_offset_(0)
--  { }
-+  {
-+    // For DWARF 4, we infer the unit type from the section name.
-+    // For DWARF 5, we will read this from the unit header.
-+    this->unit_type_ =
-+	(is_type_unit ? elfcpp::DW_UT_type : elfcpp::DW_UT_compile);
-+  }
- 
-   virtual
-   ~Dwarf_info_reader()
-@@ -714,6 +732,13 @@ class Dwarf_info_reader
-       delete[] this->string_buffer_;
-   }
- 
-+  bool
-+  is_type_unit() const
-+  {
-+    return (this->unit_type_ == elfcpp::DW_UT_type
-+	    || this->unit_type_ == elfcpp::DW_UT_split_type);
-+  }
-+
-   // Begin parsing the debug info.  This calls visit_compilation_unit()
-   // or visit_type_unit() for each compilation or type unit found in the
-   // section, and visit_die() for each top-level DIE.
-@@ -745,6 +770,9 @@ class Dwarf_info_reader
-   inline typename elfcpp::Valtype_base<valsize>::Valtype
-   read_from_pointer(const unsigned char** source);
- 
-+  inline typename elfcpp::Valtype_base<32>::Valtype
-+  read_3bytes_from_pointer(const unsigned char** source);
-+
-   // Look for a relocation at offset ATTR_OFF in the dwarf info,
-   // and return the section index and offset of the target.
-   unsigned int
-@@ -818,12 +846,20 @@ class Dwarf_info_reader
-   Dwarf_range_list*
-   read_range_list(unsigned int ranges_shndx, off_t ranges_offset)
-   {
--    return this->ranges_table_.read_range_list(this->object_,
--					       this->symtab_,
--					       this->symtab_size_,
--					       this->address_size_,
--					       ranges_shndx,
--					       ranges_offset);
-+    if (this->cu_version_ < 5)
-+      return this->ranges_table_.read_range_list(this->object_,
-+						 this->symtab_,
-+						 this->symtab_size_,
-+						 this->address_size_,
-+						 ranges_shndx,
-+						 ranges_offset);
-+    else
-+      return this->ranges_table_.read_range_list_v5(this->object_,
-+						    this->symtab_,
-+						    this->symtab_size_,
-+						    this->address_size_,
-+						    ranges_shndx,
-+						    ranges_offset);
-   }
- 
-   // Return the object.
-@@ -873,8 +909,8 @@ class Dwarf_info_reader
-   bool
-   do_read_string_table(unsigned int string_shndx);
- 
--  // True if this is a type unit; false for a compilation unit.
--  bool is_type_unit_;
-+  // The unit type (DW_UT_xxx).
-+  unsigned int unit_type_;
-   // The object containing the .debug_info or .debug_types input section.
-   Relobj* object_;
-   // The ELF symbol table.
-@@ -1008,6 +1044,8 @@ class Sized_dwarf_line_info : public Dwarf_line_info
-   {
-     if (this->buffer_start_ != NULL)
-       delete[] this->buffer_start_;
-+    if (this->str_buffer_start_ != NULL)
-+      delete[] this->str_buffer_start_;
-   }
- 
-  private:
-@@ -1030,19 +1068,23 @@ class Sized_dwarf_line_info : public Dwarf_line_info
-   void
-   read_relocs();
- 
--  // Reads the DWARF2/3 header for this line info.  Each takes as input
-+  // Reads the DWARF header for this line info.  Each takes as input
-   // a starting buffer position, and returns the ending position.
-   const unsigned char*
-   read_header_prolog(const unsigned char* lineptr);
- 
-   const unsigned char*
--  read_header_tables(const unsigned char* lineptr);
-+  read_header_tables_v2(const unsigned char* lineptr);
-+
-+  const unsigned char*
-+  read_header_tables_v5(const unsigned char* lineptr);
- 
--  // Reads the DWARF2/3 line information.  If shndx is non-negative,
-+  // Reads the DWARF line information.  If shndx is non-negative,
-   // discard all line information that doesn't pertain to the given
-   // section.
-   const unsigned char*
--  read_lines(const unsigned char* lineptr, unsigned int shndx);
-+  read_lines(const unsigned char* lineptr, const unsigned char* endptr,
-+	     unsigned int shndx);
- 
-   // Process a single line info opcode at START using the state
-   // machine at LSM.  Return true if we should define a line using the
-@@ -1069,6 +1111,7 @@ class Sized_dwarf_line_info : public Dwarf_line_info
-   {
-     off_t total_length;
-     int version;
-+    int address_size;
-     off_t prologue_length;
-     int min_insn_length; // insn stands for instruction
-     int max_ops_per_insn; // Added in DWARF-4.
-@@ -1089,6 +1132,20 @@ class Sized_dwarf_line_info : public Dwarf_line_info
-   // of the buffer.
-   const unsigned char* buffer_start_;
- 
-+  // str_buffer is the buffer for the line table strings.
-+  const unsigned char* str_buffer_;
-+  const unsigned char* str_buffer_end_;
-+  // If the buffer was allocated temporarily, and therefore must be
-+  // deallocated in the dtor, this contains a pointer to the start
-+  // of the buffer.
-+  const unsigned char* str_buffer_start_;
-+
-+  // Pointer to the end of the header_length field (aka prologue_length).
-+  const unsigned char* end_of_header_length_;
-+
-+  // Pointer to the end of the current compilation unit.
-+  const unsigned char* end_of_unit_;
-+
-   // This has relocations that point into buffer.
-   Sized_elf_reloc_mapper<size, big_endian>* reloc_mapper_;
-   // The type of the reloc section in track_relocs_--SHT_REL or SHT_RELA.
diff --git a/poky/meta/recipes-devtools/binutils/binutils/CVE-2021-20197.patch b/poky/meta/recipes-devtools/binutils/binutils/CVE-2021-20197.patch
deleted file mode 100644
index d6117b6..0000000
--- a/poky/meta/recipes-devtools/binutils/binutils/CVE-2021-20197.patch
+++ /dev/null
@@ -1,388 +0,0 @@
-From d3edaa91d4cf7202ec14342410194841e2f67f12 Mon Sep 17 00:00:00 2001
-From: Alan Modra <amodra@gmail.com>
-Date: Fri, 26 Feb 2021 11:30:32 +1030
-Subject: [PATCH] Reinstate various pieces backed out from smart_rename changes
-
-In the interests of a stable release various last minute smart_rename
-patches were backed out of the 2.36 branch.  The main reason to
-reinstate some of those backed out changes here is to make necessary
-followup fixes to commit 8e03235147a9 simple cherry-picks from
-mainline.  A secondary reason is that ar -M support isn't fixed for
-pr26945 without this patch.
-
-        PR 26945
-        * ar.c: Don't include libbfd.h.
-        (write_archive): Replace xmalloc+strcpy with xstrdup.
-        * arsup.c (temp_name, real_ofd): New static variables.
-        (ar_open): Use make_tempname and bfd_fdopenw.
-        (ar_save): Adjust to suit ar_open changes.
-        * objcopy.c: Don't include libbfd.h.
-        * rename.c: Rename and reorder variables.
-
-(cherry picked from commit 95b91a043aeaeb546d2fea556d84a2de1e917770)
-
-Upstream-Status: Backport [https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=d3edaa91d4cf7202ec14342410194841e2f67f12]
-CVE: CVE-2021-20197
-Signed-off-by: Vinay Kumar <vinay.m.engg@gmail.com>
----
- binutils/ar.c      |   6 +-
- binutils/arsup.c   |  37 ++++++++----
- binutils/bucomm.h  |   3 +-
- binutils/objcopy.c |   9 +--
- binutils/rename.c  | 148 +++++++++++----------------------------------
- 5 files changed, 67 insertions(+), 136 deletions(-)
-
-diff --git a/binutils/ar.c b/binutils/ar.c
-index 45a34e3a6cf..44df48c5c67 100644
---- a/binutils/ar.c
-+++ b/binutils/ar.c
-@@ -25,7 +25,6 @@
- 
- #include "sysdep.h"
- #include "bfd.h"
--#include "libbfd.h"
- #include "libiberty.h"
- #include "progress.h"
- #include "getopt.h"
-@@ -1255,8 +1254,7 @@ write_archive (bfd *iarch)
-   bfd *contents_head = iarch->archive_next;
-   int ofd = -1;
- 
--  old_name = (char *) xmalloc (strlen (bfd_get_filename (iarch)) + 1);
--  strcpy (old_name, bfd_get_filename (iarch));
-+  old_name = xstrdup (bfd_get_filename (iarch));
-   new_name = make_tempname (old_name, &ofd);
- 
-   if (new_name == NULL)
-@@ -1308,7 +1306,7 @@ write_archive (bfd *iarch)
-   /* We don't care if this fails; we might be creating the archive.  */
-   bfd_close (iarch);
- 
--  if (smart_rename (new_name, old_name, 0) != 0)
-+  if (smart_rename (new_name, old_name, NULL) != 0)
-     xexit (1);
-   free (old_name);
-   free (new_name);
-diff --git a/binutils/arsup.c b/binutils/arsup.c
-index 5403a0c5d74..f7ce8f0bc82 100644
---- a/binutils/arsup.c
-+++ b/binutils/arsup.c
-@@ -42,6 +42,8 @@ extern int deterministic;
- 
- static bfd *obfd;
- static char *real_name;
-+static char *temp_name;
-+static int real_ofd;
- static FILE *outfile;
- 
- static void
-@@ -149,27 +151,24 @@ maybequit (void)
- void
- ar_open (char *name, int t)
- {
--  char *tname;
--  const char *bname = lbasename (name);
--  real_name = name;
-+  real_name = xstrdup (name);
-+  temp_name = make_tempname (real_name, &real_ofd);
- 
--  /* Prepend tmp- to the beginning, to avoid file-name clashes after
--     truncation on filesystems with limited namespaces (DOS).  */
--  if (asprintf (&tname, "%.*stmp-%s", (int) (bname - name), name, bname) == -1)
-+  if (temp_name == NULL)
-     {
--      fprintf (stderr, _("%s: Can't allocate memory for temp name (%s)\n"),
-+      fprintf (stderr, _("%s: Can't open temporary file (%s)\n"),
- 	       program_name, strerror(errno));
-       maybequit ();
-       return;
-     }
- 
--  obfd = bfd_openw (tname, NULL);
-+  obfd = bfd_fdopenw (temp_name, NULL, real_ofd);
- 
-   if (!obfd)
-     {
-       fprintf (stderr,
- 	       _("%s: Can't open output archive %s\n"),
--	       program_name,  tname);
-+	       program_name, temp_name);
- 
-       maybequit ();
-     }
-@@ -344,16 +343,30 @@ ar_save (void)
-     }
-   else
-     {
--      char *ofilename = xstrdup (bfd_get_filename (obfd));
-+      struct stat target_stat;
- 
-       if (deterministic > 0)
-         obfd->flags |= BFD_DETERMINISTIC_OUTPUT;
- 
-       bfd_close (obfd);
- 
--      smart_rename (ofilename, real_name, 0);
-+      if (stat (real_name, &target_stat) != 0)
-+	{
-+	  /* The temp file created in ar_open has mode 0600 as per mkstemp.
-+	     Create the real empty output file here so smart_rename will
-+	     update the mode according to the process umask.  */
-+	  obfd = bfd_openw (real_name, NULL);
-+	  if (obfd != NULL)
-+	    {
-+	      bfd_set_format (obfd, bfd_archive);
-+	      bfd_close (obfd);
-+	    }
-+	}
-+
-+      smart_rename (temp_name, real_name, NULL);
-       obfd = 0;
--      free (ofilename);
-+      free (temp_name);
-+      free (real_name);
-     }
- }
- 
-diff --git a/binutils/bucomm.h b/binutils/bucomm.h
-index 91f6a5b228f..aa7e33d8cd1 100644
---- a/binutils/bucomm.h
-+++ b/binutils/bucomm.h
-@@ -71,7 +71,8 @@ extern void print_version (const char *);
- /* In rename.c.  */
- extern void set_times (const char *, const struct stat *);
- 
--extern int smart_rename (const char *, const char *, int);
-+extern int smart_rename (const char *, const char *, struct stat *);
-+
- 
- /* In libiberty.  */
- void *xmalloc (size_t);
-diff --git a/binutils/objcopy.c b/binutils/objcopy.c
-index eab3b6db585..73aa8bc2514 100644
---- a/binutils/objcopy.c
-+++ b/binutils/objcopy.c
-@@ -20,7 +20,6 @@
- 
- #include "sysdep.h"
- #include "bfd.h"
--#include "libbfd.h"
- #include "progress.h"
- #include "getopt.h"
- #include "libiberty.h"
-@@ -4861,12 +4860,10 @@ strip_main (int argc, char *argv[])
- 		 output_target, NULL);
-       if (status == 0)
- 	{
--	  if (preserve_dates)
--	    set_times (tmpname, &statbuf);
- 	  if (output_file != tmpname)
- 	    status = (smart_rename (tmpname,
- 				    output_file ? output_file : argv[i],
--				    preserve_dates) != 0);
-+				    preserve_dates ? &statbuf : NULL) != 0);
- 	  if (status == 0)
- 	    status = hold_status;
- 	}
-@@ -5931,11 +5928,9 @@ copy_main (int argc, char *argv[])
- 	     output_target, input_arch);
-   if (status == 0)
-     {
--      if (preserve_dates)
--	set_times (tmpname, &statbuf);
-       if (tmpname != output_filename)
- 	status = (smart_rename (tmpname, input_filename,
--				preserve_dates) != 0);
-+				preserve_dates ? &statbuf : NULL) != 0);
-     }
-   else
-     unlink_if_ordinary (tmpname);
-diff --git a/binutils/rename.c b/binutils/rename.c
-index 65ad5bf52c4..72a9323d72c 100644
---- a/binutils/rename.c
-+++ b/binutils/rename.c
-@@ -24,14 +24,9 @@
- 
- #ifdef HAVE_GOOD_UTIME_H
- #include <utime.h>
--#else /* ! HAVE_GOOD_UTIME_H */
--#ifdef HAVE_UTIMES
-+#elif defined HAVE_UTIMES
- #include <sys/time.h>
--#endif /* HAVE_UTIMES */
--#endif /* ! HAVE_GOOD_UTIME_H */
--
--#if ! defined (_WIN32) || defined (__CYGWIN32__)
--static int simple_copy (const char *, const char *);
-+#endif
- 
- /* The number of bytes to copy at once.  */
- #define COPY_BUF 8192
-@@ -82,7 +77,6 @@ simple_copy (const char *from, const char *to)
-     }
-   return 0;
- }
--#endif /* __CYGWIN32__ or not _WIN32 */
- 
- /* Set the times of the file DESTINATION to be the same as those in
-    STATBUF.  */
-@@ -91,122 +85,52 @@ void
- set_times (const char *destination, const struct stat *statbuf)
- {
-   int result;
--
--  {
- #ifdef HAVE_GOOD_UTIME_H
--    struct utimbuf tb;
--
--    tb.actime = statbuf->st_atime;
--    tb.modtime = statbuf->st_mtime;
--    result = utime (destination, &tb);
--#else /* ! HAVE_GOOD_UTIME_H */
--#ifndef HAVE_UTIMES
--    long tb[2];
--
--    tb[0] = statbuf->st_atime;
--    tb[1] = statbuf->st_mtime;
--    result = utime (destination, tb);
--#else /* HAVE_UTIMES */
--    struct timeval tv[2];
--
--    tv[0].tv_sec = statbuf->st_atime;
--    tv[0].tv_usec = 0;
--    tv[1].tv_sec = statbuf->st_mtime;
--    tv[1].tv_usec = 0;
--    result = utimes (destination, tv);
--#endif /* HAVE_UTIMES */
--#endif /* ! HAVE_GOOD_UTIME_H */
--  }
-+  struct utimbuf tb;
-+
-+  tb.actime = statbuf->st_atime;
-+  tb.modtime = statbuf->st_mtime;
-+  result = utime (destination, &tb);
-+#elif defined HAVE_UTIMES
-+  struct timeval tv[2];
-+
-+  tv[0].tv_sec = statbuf->st_atime;
-+  tv[0].tv_usec = 0;
-+  tv[1].tv_sec = statbuf->st_mtime;
-+  tv[1].tv_usec = 0;
-+  result = utimes (destination, tv);
-+#else
-+  long tb[2];
-+
-+  tb[0] = statbuf->st_atime;
-+  tb[1] = statbuf->st_mtime;
-+  result = utime (destination, tb);
-+#endif
- 
-   if (result != 0)
-     non_fatal (_("%s: cannot set time: %s"), destination, strerror (errno));
- }
- 
--#ifndef S_ISLNK
--#ifdef S_IFLNK
--#define S_ISLNK(m) (((m) & S_IFMT) == S_IFLNK)
--#else
--#define S_ISLNK(m) 0
--#define lstat stat
--#endif
--#endif
--
--/* Rename FROM to TO, copying if TO is a link.
--   Return 0 if ok, -1 if error.  */
-+/* Copy FROM to TO.  TARGET_STAT has the file status that, if non-NULL,
-+   is used to fix up timestamps.  Return 0 if ok, -1 if error.
-+   At one time this function renamed files, but file permissions are
-+   tricky to update given the number of different schemes used by
-+   various systems.  So now we just copy.  */
- 
- int
--smart_rename (const char *from, const char *to, int preserve_dates ATTRIBUTE_UNUSED)
-+smart_rename (const char *from, const char *to,
-+	      struct stat *target_stat)
- {
--  bfd_boolean exists;
--  struct stat s;
--  int ret = 0;
--
--  exists = lstat (to, &s) == 0;
--
--#if defined (_WIN32) && !defined (__CYGWIN32__)
--  /* Win32, unlike unix, will not erase `to' in `rename(from, to)' but
--     fail instead.  Also, chown is not present.  */
-+  int ret;
- 
--  if (exists)
--    remove (to);
--
--  ret = rename (from, to);
-+  ret = simple_copy (from, to);
-   if (ret != 0)
--    {
--      /* We have to clean up here.  */
--      non_fatal (_("unable to rename '%s'; reason: %s"), to, strerror (errno));
--      unlink (from);
--    }
--#else
--  /* Use rename only if TO is not a symbolic link and has
--     only one hard link, and we have permission to write to it.  */
--  if (! exists
--      || (!S_ISLNK (s.st_mode)
--	  && S_ISREG (s.st_mode)
--	  && (s.st_mode & S_IWUSR)
--	  && s.st_nlink == 1)
--      )
--    {
--      ret = rename (from, to);
--      if (ret == 0)
--	{
--	  if (exists)
--	    {
--	      /* Try to preserve the permission bits and ownership of
--		 TO.  First get the mode right except for the setuid
--		 bit.  Then change the ownership.  Then fix the setuid
--		 bit.  We do the chmod before the chown because if the
--		 chown succeeds, and we are a normal user, we won't be
--		 able to do the chmod afterward.  We don't bother to
--		 fix the setuid bit first because that might introduce
--		 a fleeting security problem, and because the chown
--		 will clear the setuid bit anyhow.  We only fix the
--		 setuid bit if the chown succeeds, because we don't
--		 want to introduce an unexpected setuid file owned by
--		 the user running objcopy.  */
--	      chmod (to, s.st_mode & 0777);
--	      if (chown (to, s.st_uid, s.st_gid) >= 0)
--		chmod (to, s.st_mode & 07777);
--	    }
--	}
--      else
--	{
--	  /* We have to clean up here.  */
--	  non_fatal (_("unable to rename '%s'; reason: %s"), to, strerror (errno));
--	  unlink (from);
--	}
--    }
--  else
--    {
--      ret = simple_copy (from, to);
--      if (ret != 0)
--	non_fatal (_("unable to copy file '%s'; reason: %s"), to, strerror (errno));
-+    non_fatal (_("unable to copy file '%s'; reason: %s"),
-+	       to, strerror (errno));
- 
--      if (preserve_dates)
--	set_times (to, &s);
--      unlink (from);
--    }
--#endif /* _WIN32 && !__CYGWIN32__ */
-+  if (target_stat != NULL)
-+    set_times (to, target_stat);
-+  unlink (from);
- 
-   return ret;
- }
--- 
-2.17.1
-
diff --git a/poky/meta/recipes-devtools/binutils/binutils_2.36.bb b/poky/meta/recipes-devtools/binutils/binutils_2.37.bb
similarity index 78%
rename from poky/meta/recipes-devtools/binutils/binutils_2.36.bb
rename to poky/meta/recipes-devtools/binutils/binutils_2.37.bb
index ee9617d..ff93770 100644
--- a/poky/meta/recipes-devtools/binutils/binutils_2.36.bb
+++ b/poky/meta/recipes-devtools/binutils/binutils_2.37.bb
@@ -10,11 +10,11 @@
                 --with-system-zlib \
                 "
 
-EXTRA_OEMAKE_append_libc-musl = "\
+EXTRA_OEMAKE:append:libc-musl = "\
                                  gt_cv_func_gnugettext1_libc=yes \
                                  gt_cv_func_gnugettext2_libc=yes \
                                 "
-EXTRA_OECONF_class-native = "--enable-targets=all \
+EXTRA_OECONF:class-native = "--enable-targets=all \
                              --enable-64-bit-bfd \
                              --enable-install-libiberty \
                              --enable-install-libbfd \
@@ -29,10 +29,10 @@
 PACKAGECONFIG[debuginfod] = "--with-debuginfod, --without-debuginfod, elfutils"
 # gcc9.0 end up mis-compiling libbfd.so with O2 which then crashes on target
 # So remove -O2 and use -Os as workaround
-SELECTED_OPTIMIZATION_remove_mipsarch = "-O2"
-SELECTED_OPTIMIZATION_append_mipsarch = " -Os"
+SELECTED_OPTIMIZATION:remove:mipsarch = "-O2"
+SELECTED_OPTIMIZATION:append:mipsarch = " -Os"
 
-do_install_class-native () {
+do_install:class-native () {
 	autotools_do_install
 
 	# Install the libiberty header
@@ -55,19 +55,19 @@
 }
 
 # libctf races with libbfd
-PARALLEL_MAKEINST_class-target = ""
-PARALLEL_MAKEINST_class-nativesdk = ""
+PARALLEL_MAKEINST:class-target = ""
+PARALLEL_MAKEINST:class-nativesdk = ""
 
 # Split out libbfd-*.so and libopcodes-*.so so including perf doesn't include
 # extra stuff
 PACKAGE_BEFORE_PN += "libbfd libopcodes"
-FILES_libbfd = "${libdir}/libbfd-*.so.* ${libdir}/libbfd-*.so"
-FILES_libopcodes = "${libdir}/libopcodes-*.so.* ${libdir}/libopcodes-*.so"
+FILES:libbfd = "${libdir}/libbfd-*.so.* ${libdir}/libbfd-*.so"
+FILES:libopcodes = "${libdir}/libopcodes-*.so.* ${libdir}/libopcodes-*.so"
 
-SRC_URI_append_class-nativesdk =  " file://0003-binutils-nativesdk-Search-for-alternative-ld.so.conf.patch "
+SRC_URI:append:class-nativesdk =  " file://0003-binutils-nativesdk-Search-for-alternative-ld.so.conf.patch "
 
-USE_ALTERNATIVES_FOR_class-nativesdk = ""
-FILES_${PN}_append_class-nativesdk = " ${bindir}"
+USE_ALTERNATIVES_FOR:class-nativesdk = ""
+FILES:${PN}:append:class-nativesdk = " ${bindir}"
 
 BBCLASSEXTEND = "native nativesdk"
 
diff --git a/poky/meta/recipes-devtools/bison/bison_3.7.6.bb b/poky/meta/recipes-devtools/bison/bison_3.7.6.bb
index a8d57f2..c85ae04 100644
--- a/poky/meta/recipes-devtools/bison/bison_3.7.6.bb
+++ b/poky/meta/recipes-devtools/bison/bison_3.7.6.bb
@@ -21,7 +21,7 @@
 CACHED_CONFIGUREVARS = "ac_cv_path_M4=m4"
 
 PACKAGECONFIG ??= "readline ${@ 'textstyle' if d.getVar('USE_NLS') == 'yes' else ''}"
-PACKAGECONFIG_class-native ??= ""
+PACKAGECONFIG:class-native ??= ""
 
 # Make readline and textstyle optional. There are recipie for these, but leave them
 # disabled for the native recipe. This prevents host contamination of the native tool.
@@ -38,15 +38,15 @@
 # The automatic m4 path detection gets confused, so force the right value
 acpaths = "-I ./m4"
 
-do_compile_prepend() {
+do_compile:prepend() {
 	for i in mfcalc calc++ rpcalc; do mkdir -p ${B}/examples/$i; done
 }
 
-do_install_append_class-native() {
+do_install:append:class-native() {
 	create_wrapper ${D}/${bindir}/bison \
 		BISON_PKGDATADIR=${STAGING_DATADIR_NATIVE}/bison
 }
-do_install_append_class-nativesdk() {
+do_install:append:class-nativesdk() {
 	create_wrapper ${D}/${bindir}/bison \
 		BISON_PKGDATADIR=${datadir}/bison
 }
diff --git a/poky/meta/recipes-devtools/bootchart2/bootchart2_0.14.9.bb b/poky/meta/recipes-devtools/bootchart2/bootchart2_0.14.9.bb
index f6a77b4..b1d359e 100644
--- a/poky/meta/recipes-devtools/bootchart2/bootchart2_0.14.9.bb
+++ b/poky/meta/recipes-devtools/bootchart2/bootchart2_0.14.9.bb
@@ -101,14 +101,14 @@
 
 inherit systemd update-rc.d python3native update-alternatives
 
-ALTERNATIVE_${PN} = "bootchartd"
+ALTERNATIVE:${PN} = "bootchartd"
 ALTERNATIVE_LINK_NAME[bootchartd] = "${base_sbindir}/bootchartd"
 ALTERNATIVE_PRIORITY = "100"
 
 # The only reason to build bootchart2-native is for a native pybootchartgui.
 BBCLASSEXTEND = "native"
 
-SYSTEMD_SERVICE_${PN} = "bootchart2.service bootchart2-done.service bootchart2-done.timer"
+SYSTEMD_SERVICE:${PN} = "bootchart2.service bootchart2-done.service bootchart2-done.timer"
 
 UPDATERCPN = "bootchartd-stop-initscript"
 INITSCRIPT_NAME = "bootchartd_stop.sh"
@@ -116,7 +116,7 @@
 
 EXTRA_OEMAKE = 'BASE_SBINDIR="${base_sbindir}"'
 
-do_compile_prepend () {
+do_compile:prepend () {
     export PY_LIBDIR="${libdir}/${PYTHON_DIR}"
     export BINDIR="${bindir}"
     export LIBDIR="${base_libdir}"
@@ -145,19 +145,19 @@
 }
 
 PACKAGES =+ "pybootchartgui"
-FILES_pybootchartgui += "${PYTHON_SITEPACKAGES_DIR}/pybootchartgui ${bindir}/pybootchartgui"
-RDEPENDS_pybootchartgui = "python3-pycairo python3-compression python3-image python3-shell python3-compression python3-codecs"
-RDEPENDS_${PN}_class-target += "${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'sysvinit-pidof', 'procps', d)}"
-RDEPENDS_${PN}_class-target += "lsb-release"
-DEPENDS_append_class-native = " python3-pycairo-native"
+FILES:pybootchartgui += "${PYTHON_SITEPACKAGES_DIR}/pybootchartgui ${bindir}/pybootchartgui"
+RDEPENDS:pybootchartgui = "python3-pycairo python3-compression python3-image python3-shell python3-compression python3-codecs"
+RDEPENDS:${PN}:class-target += "${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'sysvinit-pidof', 'procps', d)}"
+RDEPENDS:${PN}:class-target += "lsb-release"
+DEPENDS:append:class-native = " python3-pycairo-native"
 
 PACKAGES =+ "bootchartd-stop-initscript"
-FILES_bootchartd-stop-initscript += "${sysconfdir}/init.d ${sysconfdir}/rc*.d"
-RDEPENDS_bootchartd-stop-initscript = "${PN}"
+FILES:bootchartd-stop-initscript += "${sysconfdir}/init.d ${sysconfdir}/rc*.d"
+RDEPENDS:bootchartd-stop-initscript = "${PN}"
 
-FILES_${PN} += "${base_libdir}/bootchart/bootchart-collector"
-FILES_${PN} += "${base_libdir}/bootchart/tmpfs"
-FILES_${PN} += "${libdir}"
-FILES_${PN}-doc += "${datadir}/docs"
+FILES:${PN} += "${base_libdir}/bootchart/bootchart-collector"
+FILES:${PN} += "${base_libdir}/bootchart/tmpfs"
+FILES:${PN} += "${libdir}"
+FILES:${PN}-doc += "${datadir}/docs"
 
-RCONFLICTS_${PN} = "bootchart"
+RCONFLICTS:${PN} = "bootchart"
diff --git a/poky/meta/recipes-devtools/btrfs-tools/btrfs-tools_5.13.bb b/poky/meta/recipes-devtools/btrfs-tools/btrfs-tools_5.13.bb
index fa33cad..5f8621f 100644
--- a/poky/meta/recipes-devtools/btrfs-tools/btrfs-tools_5.13.bb
+++ b/poky/meta/recipes-devtools/btrfs-tools/btrfs-tools_5.13.bb
@@ -14,7 +14,7 @@
 "
 SECTION = "base"
 DEPENDS = "lzo util-linux zlib"
-DEPENDS_append_class-target = " udev"
+DEPENDS:append:class-target = " udev"
 
 SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/kdave/btrfs-progs.git \
            file://0001-Add-a-possibility-to-specify-where-python-modules-ar.patch \
@@ -49,25 +49,25 @@
 CLEANBROKEN = "1"
 
 EXTRA_OECONF = "--enable-largefile"
-EXTRA_OECONF_append_libc-musl = " --disable-backtrace "
+EXTRA_OECONF:append:libc-musl = " --disable-backtrace "
 EXTRA_PYTHON_CFLAGS = "${DEBUG_PREFIX_MAP}"
-EXTRA_PYTHON_CFLAGS_class-native = ""
+EXTRA_PYTHON_CFLAGS:class-native = ""
 EXTRA_PYTHON_LDFLAGS = "${LDFLAGS}"
 EXTRA_OEMAKE = "V=1 'EXTRA_PYTHON_CFLAGS=${EXTRA_PYTHON_CFLAGS}' 'EXTRA_PYTHON_LDFLAGS=${EXTRA_PYTHON_LDFLAGS}'"
 
-do_configure_prepend() {
+do_configure:prepend() {
 	# Upstream doesn't ship this and autoreconf won't install it as automake isn't used.
 	mkdir -p ${S}/config
 	cp -f $(automake --print-libdir)/install-sh ${S}/config/
 }
 
 
-do_install_append() {
+do_install:append() {
     if [ "${@bb.utils.filter('PACKAGECONFIG', 'python', d)}" ]; then
         oe_runmake 'DESTDIR=${D}' 'PYTHON_SITEPACKAGES_DIR=${PYTHON_SITEPACKAGES_DIR}' install_python
     fi
 }
 
-RDEPENDS_${PN} = "libgcc"
+RDEPENDS:${PN} = "libgcc"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/chrpath/chrpath_0.16.bb b/poky/meta/recipes-devtools/chrpath/chrpath_0.16.bb
index f12366b..de734e8 100644
--- a/poky/meta/recipes-devtools/chrpath/chrpath_0.16.bb
+++ b/poky/meta/recipes-devtools/chrpath/chrpath_0.16.bb
@@ -16,9 +16,9 @@
 
 # We don't have a staged chrpath-native for ensuring our binary is
 # relocatable, so use the one we've just built
-CHRPATH_BIN_class-native = "${B}/chrpath"
+CHRPATH_BIN:class-native = "${B}/chrpath"
 
-PROVIDES_append_class-native = " chrpath-replacement-native"
+PROVIDES:append:class-native = " chrpath-replacement-native"
 NATIVE_PACKAGE_PATH_SUFFIX = "/${PN}"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/cmake/cmake-native_3.20.5.bb b/poky/meta/recipes-devtools/cmake/cmake-native_3.21.1.bb
similarity index 100%
rename from poky/meta/recipes-devtools/cmake/cmake-native_3.20.5.bb
rename to poky/meta/recipes-devtools/cmake/cmake-native_3.21.1.bb
diff --git a/poky/meta/recipes-devtools/cmake/cmake.inc b/poky/meta/recipes-devtools/cmake/cmake.inc
index c557a55..7f0aff8 100644
--- a/poky/meta/recipes-devtools/cmake/cmake.inc
+++ b/poky/meta/recipes-devtools/cmake/cmake.inc
@@ -21,7 +21,7 @@
            file://0004-Fail-silently-if-system-Qt-installation-is-broken.patch \
 "
 
-SRC_URI[sha256sum] = "12c8040ef5c6f1bc5b8868cede16bb7926c18980f59779e299ab52cbc6f15bb0"
+SRC_URI[sha256sum] = "fac3915171d4dff25913975d712f76e69aef44bf738ba7b976793a458b4cfed4"
 
 UPSTREAM_CHECK_REGEX = "cmake-(?P<pver>\d+(\.\d+)+)\.tar"
 
diff --git a/poky/meta/recipes-devtools/cmake/cmake_3.20.5.bb b/poky/meta/recipes-devtools/cmake/cmake_3.21.1.bb
similarity index 83%
rename from poky/meta/recipes-devtools/cmake/cmake_3.20.5.bb
rename to poky/meta/recipes-devtools/cmake/cmake_3.21.1.bb
index 64c92b8..36c6357 100644
--- a/poky/meta/recipes-devtools/cmake/cmake_3.20.5.bb
+++ b/poky/meta/recipes-devtools/cmake/cmake_3.21.1.bb
@@ -4,7 +4,7 @@
 
 DEPENDS += "curl expat zlib libarchive xz ncurses bzip2"
 
-SRC_URI_append_class-nativesdk = " \
+SRC_URI:append:class-nativesdk = " \
     file://OEToolchainConfig.cmake \
     file://environment.d-cmake.sh \
     file://0001-CMakeDetermineSystem-use-oe-environment-vars-to-load.patch \
@@ -36,7 +36,7 @@
     -DKWSYS_LFS_WORKS=1 \
 "
 
-do_install_append_class-nativesdk() {
+do_install:append:class-nativesdk() {
     mkdir -p ${D}${datadir}/cmake
     install -m 644 ${WORKDIR}/OEToolchainConfig.cmake ${D}${datadir}/cmake/
 
@@ -44,10 +44,10 @@
     install -m 644 ${WORKDIR}/environment.d-cmake.sh ${D}${SDKPATHNATIVE}/environment-setup.d/cmake.sh
 }
 
-FILES_${PN}_append_class-nativesdk = " ${SDKPATHNATIVE}"
+FILES:${PN}:append:class-nativesdk = " ${SDKPATHNATIVE}"
 
-FILES_${PN} += "${datadir}/cmake-${CMAKE_MAJOR_VERSION} ${datadir}/cmake ${datadir}/aclocal ${datadir}/emacs ${datadir}/vim"
-FILES_${PN}-doc += "${docdir}/cmake-${CMAKE_MAJOR_VERSION}"
-FILES_${PN}-dev = ""
+FILES:${PN} += "${datadir}/cmake-${CMAKE_MAJOR_VERSION} ${datadir}/cmake ${datadir}/aclocal ${datadir}/emacs ${datadir}/vim"
+FILES:${PN}-doc += "${docdir}/cmake-${CMAKE_MAJOR_VERSION}"
+FILES:${PN}-dev = ""
 
 BBCLASSEXTEND = "nativesdk"
diff --git a/poky/meta/recipes-devtools/createrepo-c/createrepo-c_0.17.4.bb b/poky/meta/recipes-devtools/createrepo-c/createrepo-c_0.17.4.bb
index 206c27c..500b508 100644
--- a/poky/meta/recipes-devtools/createrepo-c/createrepo-c_0.17.4.bb
+++ b/poky/meta/recipes-devtools/createrepo-c/createrepo-c_0.17.4.bb
@@ -13,7 +13,7 @@
 S = "${WORKDIR}/git"
 
 DEPENDS = "expat curl glib-2.0 libxml2 openssl bzip2 zlib file sqlite3 xz rpm"
-DEPENDS_append_class-native = " file-replacement-native"
+DEPENDS:append:class-native = " file-replacement-native"
 
 inherit cmake pkgconfig bash-completion distutils3-base
 
@@ -22,7 +22,7 @@
 BBCLASSEXTEND = "native nativesdk"
 
 # Direct createrepo to read rpm configuration from our sysroot, not the one it was compiled in
-do_install_append_class-native() {
+do_install:append:class-native() {
         create_wrapper ${D}/${bindir}/createrepo_c \
                 RPM_CONFIGDIR=${STAGING_LIBDIR_NATIVE}/rpm \
                 MAGIC=${STAGING_DIR_NATIVE}${datadir_native}/misc/magic.mgc
@@ -30,11 +30,11 @@
                 MAGIC=${STAGING_DIR_NATIVE}${datadir_native}/misc/magic.mgc
 }
 
-do_install_append_class-nativesdk() {
+do_install:append:class-nativesdk() {
         create_wrapper ${D}/${bindir}/createrepo_c \
                 RPM_CONFIGDIR=${SDKPATHNATIVE}${libdir_nativesdk}/rpm \
-                MAGIC=${SDKPATHNATIVE}${datadir}/misc/magic.mgc
+                MAGIC=${datadir}/misc/magic.mgc
         create_wrapper ${D}/${bindir}/modifyrepo_c \
-                MAGIC=${SDKPATHNATIVE}${datadir}/misc/magic.mgc
+                MAGIC=${datadir}/misc/magic.mgc
         rm -rf ${D}/etc
 }
diff --git a/poky/meta/recipes-devtools/dejagnu/dejagnu_1.6.3.bb b/poky/meta/recipes-devtools/dejagnu/dejagnu_1.6.3.bb
index ce35b80..bcc56e5 100644
--- a/poky/meta/recipes-devtools/dejagnu/dejagnu_1.6.3.bb
+++ b/poky/meta/recipes-devtools/dejagnu/dejagnu_1.6.3.bb
@@ -7,7 +7,7 @@
 SECTION = "devel"
 
 DEPENDS += "expect-native"
-RDEPENDS_${PN} = "expect"
+RDEPENDS:${PN} = "expect"
 
 inherit autotools
 
diff --git a/poky/meta/recipes-devtools/desktop-file-utils/desktop-file-utils_0.26.bb b/poky/meta/recipes-devtools/desktop-file-utils/desktop-file-utils_0.26.bb
index 3487666..da9a383 100644
--- a/poky/meta/recipes-devtools/desktop-file-utils/desktop-file-utils_0.26.bb
+++ b/poky/meta/recipes-devtools/desktop-file-utils/desktop-file-utils_0.26.bb
@@ -19,7 +19,7 @@
 
 BBCLASSEXTEND = "native nativesdk"
 
-do_install_append() {
+do_install:append() {
         rm -rf ${D}${datadir}/emacs
 }
 
diff --git a/poky/meta/recipes-devtools/devel-config/distcc-config.bb b/poky/meta/recipes-devtools/devel-config/distcc-config.bb
index db9e8bb..698fd35 100644
--- a/poky/meta/recipes-devtools/devel-config/distcc-config.bb
+++ b/poky/meta/recipes-devtools/devel-config/distcc-config.bb
@@ -20,4 +20,4 @@
 	install -m 0755 distcc.sh ${D}${sysconfdir}/profile.d/
 }
 
-RDEPENDS_${PN} = "distcc"
+RDEPENDS:${PN} = "distcc"
diff --git a/poky/meta/recipes-devtools/devel-config/nfs-export-root.bb b/poky/meta/recipes-devtools/devel-config/nfs-export-root.bb
index 56375a4..0aaec36 100644
--- a/poky/meta/recipes-devtools/devel-config/nfs-export-root.bb
+++ b/poky/meta/recipes-devtools/devel-config/nfs-export-root.bb
@@ -14,4 +14,4 @@
 	install -m 0644 exports ${D}${sysconfdir}/
 }
 
-RDEPENDS_${PN} = "packagegroup-core-nfs-server"
+RDEPENDS:${PN} = "packagegroup-core-nfs-server"
diff --git a/poky/meta/recipes-devtools/distcc/distcc_3.4.bb b/poky/meta/recipes-devtools/distcc/distcc_3.4.bb
index 3bab6d5..d4fc035 100644
--- a/poky/meta/recipes-devtools/distcc/distcc_3.4.bb
+++ b/poky/meta/recipes-devtools/distcc/distcc_3.4.bb
@@ -13,7 +13,7 @@
 # use system popt by default
 PACKAGECONFIG[popt] = "--without-included-popt,--with-included-popt,popt"
 
-RRECOMMENDS_${PN}-server = "avahi-daemon"
+RRECOMMENDS:${PN}-server = "avahi-daemon"
 
 SRC_URI = "git://github.com/distcc/distcc.git \
            file://default \
@@ -33,7 +33,7 @@
 PACKAGE_BEFORE_PN = "${PN}-distmon-gnome ${PN}-server"
 
 USERADD_PACKAGES = "${PN}-server"
-USERADD_PARAM_${PN}-server = "--system \
+USERADD_PARAM:${PN}-server = "--system \
                        --home /dev/null \
                        --no-create-home \
                        --gid nogroup \
@@ -43,7 +43,7 @@
 INITSCRIPT_NAME = "distcc"
 
 SYSTEMD_PACKAGES = "${PN}-server"
-SYSTEMD_SERVICE_${PN}-server = "distcc.service"
+SYSTEMD_SERVICE:${PN}-server = "distcc.service"
 
 do_install() {
     # Improve reproducibility: compress w/o timestamps
@@ -57,10 +57,10 @@
     sed -i -e 's,@BINDIR@,${bindir},g' ${D}${systemd_unitdir}/system/distcc.service
 }
 
-FILES_${PN}-server = "${sysconfdir} \
+FILES:${PN}-server = "${sysconfdir} \
                       ${bindir}/distccd \
                       ${sbindir}"
-FILES_${PN}-distmon-gnome = "${bindir}/distccmon-gnome \
+FILES:${PN}-distmon-gnome = "${bindir}/distccmon-gnome \
                              ${datadir}/applications \
                              ${datadir}/pixmaps"
 
diff --git a/poky/meta/recipes-devtools/dnf/dnf_4.8.0.bb b/poky/meta/recipes-devtools/dnf/dnf_4.8.0.bb
index 44c4405..f51d747 100644
--- a/poky/meta/recipes-devtools/dnf/dnf_4.8.0.bb
+++ b/poky/meta/recipes-devtools/dnf/dnf_4.8.0.bb
@@ -32,7 +32,7 @@
 
 BBCLASSEXTEND = "native nativesdk"
 
-RDEPENDS_${PN} += " \
+RDEPENDS:${PN} += " \
   python3-core \
   python3-codecs \
   python3-netclient \
@@ -55,32 +55,32 @@
   python3-gpg \
   "
 
-RDEPENDS_${PN}_class-native = ""
+RDEPENDS:${PN}:class-native = ""
 
-RRECOMMENDS_${PN}_class-target += "gnupg"
+RRECOMMENDS:${PN}:class-target += "gnupg"
 
 # Create a symlink called 'dnf' as 'make install' does not do it, but
 # .spec file in dnf source tree does (and then Fedora and dnf documentation
 # says that dnf binary is plain 'dnf').
-do_install_append() {
+do_install:append() {
         lnr ${D}/${bindir}/dnf-3 ${D}/${bindir}/dnf
         lnr ${D}/${bindir}/dnf-automatic-3 ${D}/${bindir}/dnf-automatic
 }
 
 # Direct dnf-native to read rpm configuration from our sysroot, not the one it was compiled in
-do_install_append_class-native() {
+do_install:append:class-native() {
         create_wrapper ${D}/${bindir}/dnf \
                 RPM_CONFIGDIR=${STAGING_LIBDIR_NATIVE}/rpm \
                 RPM_NO_CHROOT_FOR_SCRIPTS=1
 }
 
-do_install_append_class-nativesdk() {
+do_install:append:class-nativesdk() {
         create_wrapper ${D}/${bindir}/dnf \
                 RPM_CONFIGDIR=${SDKPATHNATIVE}${libdir_nativesdk}/rpm \
                 RPM_NO_CHROOT_FOR_SCRIPTS=1
 }
 
-SYSTEMD_SERVICE_${PN} = "dnf-makecache.service dnf-makecache.timer \
+SYSTEMD_SERVICE:${PN} = "dnf-makecache.service dnf-makecache.timer \
                          dnf-automatic.service dnf-automatic.timer \
                          dnf-automatic-download.service dnf-automatic-download.timer \
                          dnf-automatic-install.service dnf-automatic-install.timer \
diff --git a/poky/meta/recipes-devtools/docbook-xml/docbook-xml-dtd4_4.5.bb b/poky/meta/recipes-devtools/docbook-xml/docbook-xml-dtd4_4.5.bb
index 6452c8d..2bec144 100644
--- a/poky/meta/recipes-devtools/docbook-xml/docbook-xml-dtd4_4.5.bb
+++ b/poky/meta/recipes-devtools/docbook-xml/docbook-xml-dtd4_4.5.bb
@@ -49,4 +49,4 @@
 XMLCATALOGS = "${sysconfdir}/xml/docbook-xml.xml"
 inherit xmlcatalog
 
-FILES_${PN} = "${datadir}/* ${sysconfdir}/xml/docbook-xml.xml"
+FILES:${PN} = "${datadir}/* ${sysconfdir}/xml/docbook-xml.xml"
diff --git a/poky/meta/recipes-devtools/docbook-xml/docbook-xsl-stylesheets_1.79.1.bb b/poky/meta/recipes-devtools/docbook-xml/docbook-xsl-stylesheets_1.79.1.bb
index c5d3a24..beda0ab 100644
--- a/poky/meta/recipes-devtools/docbook-xml/docbook-xsl-stylesheets_1.79.1.bb
+++ b/poky/meta/recipes-devtools/docbook-xml/docbook-xsl-stylesheets_1.79.1.bb
@@ -42,9 +42,9 @@
 	install -v -m644 README RELEASE-NOTES* NEWS* ${D}${docdir}/${BPN}
 }
 
-RDEPENDS_${PN} += "perl"
-FILES_${PN} = "${datadir}/xml/* ${sysconfdir}/xml/docbook-xsl.xml"
-FILES_${PN}-doc = "${datadir}/doc/*"
+RDEPENDS:${PN} += "perl"
+FILES:${PN} = "${datadir}/xml/* ${sysconfdir}/xml/docbook-xsl.xml"
+FILES:${PN}-doc = "${datadir}/doc/*"
 
 XMLCATALOGS = "${datadir}/xml/docbook/xsl-stylesheets-${PV}/catalog.xml"
 
diff --git a/poky/meta/recipes-devtools/dosfstools/dosfstools_4.2.bb b/poky/meta/recipes-devtools/dosfstools/dosfstools_4.2.bb
index 7476c04..bdebfc1 100644
--- a/poky/meta/recipes-devtools/dosfstools/dosfstools_4.2.bb
+++ b/poky/meta/recipes-devtools/dosfstools/dosfstools_4.2.bb
@@ -24,5 +24,5 @@
 BBCLASSEXTEND = "native nativesdk"
 
 ALTERNATIVE_PRIORITY = "100"
-ALTERNATIVE_${PN} = "mkfs.vfat"
+ALTERNATIVE:${PN} = "mkfs.vfat"
 ALTERNATIVE_LINK_NAME[mkfs.vfat] = "${sbindir}/mkfs.vfat"
diff --git a/poky/meta/recipes-devtools/dpkg/dpkg.inc b/poky/meta/recipes-devtools/dpkg/dpkg.inc
index 7acfb41..b6807b0 100644
--- a/poky/meta/recipes-devtools/dpkg/dpkg.inc
+++ b/poky/meta/recipes-devtools/dpkg/dpkg.inc
@@ -5,18 +5,18 @@
 SECTION = "base"
 
 DEPENDS = "zlib bzip2 perl ncurses"
-DEPENDS_class-native = "bzip2-replacement-native zlib-native virtual/update-alternatives-native gettext-native perl-native"
-RDEPENDS_${PN} = "${VIRTUAL-RUNTIME_update-alternatives} perl"
-RDEPENDS_${PN}_class-native = ""
+DEPENDS:class-native = "bzip2-replacement-native zlib-native virtual/update-alternatives-native gettext-native perl-native"
+RDEPENDS:${PN} = "${VIRTUAL-RUNTIME_update-alternatives} perl"
+RDEPENDS:${PN}:class-native = ""
 
 UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>(\d+(\.\d+)+))"
 
 inherit autotools gettext perlnative pkgconfig perl-version update-alternatives
 
-PERL_class-native = "${STAGING_BINDIR_NATIVE}/perl-native/perl"
+PERL:class-native = "${STAGING_BINDIR_NATIVE}/perl-native/perl"
 
 export PERL_LIBDIR = "${libdir}/perl/${@get_perl_version(d)}"
-PERL_LIBDIR_class-native = "${libdir}/perl-native/perl/${@get_perl_version(d)}"
+PERL_LIBDIR:class-native = "${libdir}/perl-native/perl/${@get_perl_version(d)}"
 
 EXTRA_OECONF = "\
 		--disable-dselect \
@@ -27,8 +27,8 @@
 		TAR=tar \
 		"
 
-EXTRA_OECONF_append_class-target = " --disable-update-alternatives DEB_HOST_ARCH=${DPKG_ARCH}"
-EXTRA_OECONF_append_class-nativesdk = " --disable-update-alternatives DEB_HOST_ARCH=${DPKG_ARCH}"
+EXTRA_OECONF:append:class-target = " --disable-update-alternatives DEB_HOST_ARCH=${DPKG_ARCH}"
+EXTRA_OECONF:append:class-nativesdk = " --disable-update-alternatives DEB_HOST_ARCH=${DPKG_ARCH}"
 
 PACKAGECONFIG = "liblzma"
 PACKAGECONFIG[liblzma] = "--with-liblzma,--without-liblzma, xz"
@@ -37,7 +37,7 @@
 #autotools.bbclass default AUTOTOOLS_AUXDIR is ${S}, we need to under ${S}/build-aux
 AUTOTOOLS_AUXDIR = "${S}/build-aux"
 
-do_configure_prepend () {
+do_configure:prepend () {
         mkdir -p ${AUTOTOOLS_AUXDIR}
         # autotools_do_configure updates po/Makefile.in.in, we also need
         # update dselect/po and scripts/po
@@ -45,7 +45,7 @@
         cp -f ${STAGING_DATADIR_NATIVE}/gettext/po/Makefile.in.in ${S}/scripts/po/
 }
 
-do_install_append () {
+do_install:append () {
 	if [ "${PN}" = "dpkg-native" ]; then
 		# update-alternatives doesn't have an offline mode
 		rm ${D}${bindir}/update-alternatives
@@ -56,19 +56,19 @@
 }
 
 PROV = "virtual/update-alternatives"
-PROV_class-native = ""
-PROV_class-nativesdk = ""
+PROV:class-native = ""
+PROV:class-nativesdk = ""
 
 PROVIDES += "${PROV}"
 
 PACKAGES =+ "update-alternatives-dpkg"
-FILES_update-alternatives-dpkg = "${bindir}/update-alternatives ${localstatedir}/lib/dpkg/alternatives ${sysconfdir}/alternatives"
-RPROVIDES_update-alternatives-dpkg += "update-alternatives"
+FILES:update-alternatives-dpkg = "${bindir}/update-alternatives ${localstatedir}/lib/dpkg/alternatives ${sysconfdir}/alternatives"
+RPROVIDES:update-alternatives-dpkg += "update-alternatives"
 
 PACKAGES += "${PN}-perl"
-FILES_${PN}-perl = "${libdir}/perl/${@get_perl_version(d)}"
+FILES:${PN}-perl = "${libdir}/perl/${@get_perl_version(d)}"
 
-RDEPENDS_${PN}-perl += "perl-module-carp perl-module-constant \
+RDEPENDS:${PN}-perl += "perl-module-carp perl-module-constant \
                         perl-module-cwd perl-module-digest \
                         perl-module-digest-md5 perl-module-errno \
                         perl-module-exporter perl-module-fcntl \
@@ -92,13 +92,13 @@
 # the bitbake version.
 #
 PACKAGES =+ "${PN}-start-stop"
-FILES_${PN}-start-stop = "${sbindir}/start-stop-daemon.${BPN}"
-ALTERNATIVE_${PN}-start-stop = "start-stop-daemon"
+FILES:${PN}-start-stop = "${sbindir}/start-stop-daemon.${BPN}"
+ALTERNATIVE:${PN}-start-stop = "start-stop-daemon"
 ALTERNATIVE_LINK_NAME[start-stop-daemon] = "${sbindir}/start-stop-daemon"
 ALTERNATIVE_PRIORITY = "100"
 
 EXTRA_RDPENDS = "ldconfig"
-EXTRA_RDPENDS_libc-musl = ""
-RDEPENDS_${PN} += "${PN}-start-stop ${EXTRA_RDPENDS}"
+EXTRA_RDPENDS:libc-musl = ""
+RDEPENDS:${PN} += "${PN}-start-stop ${EXTRA_RDPENDS}"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/dpkg/dpkg_1.20.9.bb b/poky/meta/recipes-devtools/dpkg/dpkg_1.20.9.bb
index 18ca0e3..34b6bfe 100644
--- a/poky/meta/recipes-devtools/dpkg/dpkg_1.20.9.bb
+++ b/poky/meta/recipes-devtools/dpkg/dpkg_1.20.9.bb
@@ -18,7 +18,7 @@
            file://0014-arch-Add-support-for-ARCv2-CPU.patch \
            "
 
-SRC_URI_append_class-native = " file://0001-build.c-ignore-return-of-1-from-tar-cf.patch"
+SRC_URI:append:class-native = " file://0001-build.c-ignore-return-of-1-from-tar-cf.patch"
 
 SRCREV = "2177b782b16e77e97c9643961a5ae3c639bcc4a3"
 
diff --git a/poky/meta/recipes-devtools/dwarfsrcfiles/dwarfsrcfiles.bb b/poky/meta/recipes-devtools/dwarfsrcfiles/dwarfsrcfiles.bb
index 56b52d6..1a05a1a 100644
--- a/poky/meta/recipes-devtools/dwarfsrcfiles/dwarfsrcfiles.bb
+++ b/poky/meta/recipes-devtools/dwarfsrcfiles/dwarfsrcfiles.bb
@@ -6,13 +6,13 @@
 SRC_URI = "file://dwarfsrcfiles.c"
 BBCLASSEXTEND = "native"
 DEPENDS = "elfutils"
-DEPENDS_append_libc-musl = " argp-standalone"
+DEPENDS:append:libc-musl = " argp-standalone"
 
 do_compile () {
 	${CC} ${CFLAGS} ${LDFLAGS} -o dwarfsrcfiles ../dwarfsrcfiles.c -lelf -ldw
 }
 
-do_compile_libc-musl () {
+do_compile:libc-musl () {
 	${CC} ${CFLAGS} ${LDFLAGS} -o dwarfsrcfiles ../dwarfsrcfiles.c -lelf -ldw -largp 
 }
 
diff --git a/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs.inc b/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs.inc
index 2f113c5..c80b93c 100644
--- a/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs.inc
+++ b/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs.inc
@@ -4,11 +4,11 @@
 HOMEPAGE = "http://e2fsprogs.sourceforge.net/"
 
 LICENSE = "GPLv2 & LGPLv2 & BSD & MIT"
-LICENSE_e2fsprogs-dumpe2fs = "GPLv2"
-LICENSE_e2fsprogs-e2fsck = "GPLv2"
-LICENSE_e2fsprogs-mke2fs = "GPLv2"
-LICENSE_e2fsprogs-tune2fs = "GPLv2"
-LICENSE_e2fsprogs-badblocks = "GPLv2"
+LICENSE:e2fsprogs-dumpe2fs = "GPLv2"
+LICENSE:e2fsprogs-e2fsck = "GPLv2"
+LICENSE:e2fsprogs-mke2fs = "GPLv2"
+LICENSE:e2fsprogs-tune2fs = "GPLv2"
+LICENSE:e2fsprogs-badblocks = "GPLv2"
 LIC_FILES_CHKSUM = "file://NOTICE;md5=d50be0580c0b0a7fbc7a4830bbe6c12b \
                       file://lib/ext2fs/ext2fs.h;beginline=1;endline=9;md5=596a8dedcb4e731c6b21c7a46fba6bef \
                       file://lib/e2p/e2p.h;beginline=1;endline=7;md5=8a74ade8f9d65095d70ef2d4bf48e36a \
diff --git a/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.46.2.bb b/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.46.2.bb
index fc022f3..d68d131 100644
--- a/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.46.2.bb
+++ b/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.46.2.bb
@@ -8,7 +8,7 @@
            file://0001-lib-ext2fs-unix_io.c-revert-parts-of-libext2fs-fix-p.patch \
            "
 
-SRC_URI_append_class-native = " file://e2fsprogs-fix-missing-check-for-permission-denied.patch \
+SRC_URI:append:class-native = " file://e2fsprogs-fix-missing-check-for-permission-denied.patch \
                                 file://quiet-debugfs.patch \
 "
 
@@ -21,14 +21,14 @@
                 --disable-libblkid --enable-verbose-makecmds \
                 --with-crond-dir=no"
 
-EXTRA_OECONF_darwin = "--libdir=${base_libdir} --sbindir=${base_sbindir} --enable-bsd-shlibs"
+EXTRA_OECONF:darwin = "--libdir=${base_libdir} --sbindir=${base_sbindir} --enable-bsd-shlibs"
 
 PACKAGECONFIG ??= ""
 PACKAGECONFIG[fuse] = '--enable-fuse2fs,--disable-fuse2fs,fuse'
 
 # make locale rules sometimes fire, sometimes don't as git doesn't preserve
 # file mktime. Touch the files introducing non-determinism to the build
-do_compile_prepend (){
+do_compile:prepend (){
 	find ${S}/po -type f -name "*.po" -exec touch {} +
 }
 
@@ -68,57 +68,57 @@
 	done
 }
 
-do_install_append_class-native() {
+do_install:append:class-native() {
 	e2fsprogs_conf_fixup
 }
 
-do_install_append_class-nativesdk() {
+do_install:append:class-nativesdk() {
 	e2fsprogs_conf_fixup
 }
 
-do_install_append_class-target() {
+do_install:append:class-target() {
 	mv ${D}${base_sbindir}/mke2fs ${D}${base_sbindir}/mke2fs.e2fsprogs
 	mv ${D}${base_sbindir}/mkfs.ext2 ${D}${base_sbindir}/mkfs.ext2.e2fsprogs
 	mv ${D}${base_sbindir}/tune2fs ${D}${base_sbindir}/tune2fs.e2fsprogs
 }
 
-RDEPENDS_e2fsprogs = "e2fsprogs-badblocks e2fsprogs-dumpe2fs"
-RRECOMMENDS_e2fsprogs = "e2fsprogs-mke2fs e2fsprogs-e2fsck"
+RDEPENDS:e2fsprogs = "e2fsprogs-badblocks e2fsprogs-dumpe2fs"
+RRECOMMENDS:e2fsprogs = "e2fsprogs-mke2fs e2fsprogs-e2fsck"
 
 PACKAGES =+ "e2fsprogs-badblocks e2fsprogs-dumpe2fs e2fsprogs-e2fsck e2fsprogs-e2scrub e2fsprogs-mke2fs e2fsprogs-resize2fs e2fsprogs-tune2fs"
 PACKAGES =+ "libcomerr libss libe2p libext2fs"
 
-FILES_e2fsprogs-dumpe2fs = "${base_sbindir}/dumpe2fs"
-FILES_e2fsprogs-resize2fs = "${base_sbindir}/resize2fs*"
-FILES_e2fsprogs-e2fsck = "${base_sbindir}/e2fsck ${base_sbindir}/fsck.ext*"
-FILES_e2fsprogs-e2scrub = "${base_sbindir}/e2scrub*"
-FILES_e2fsprogs-mke2fs = "${base_sbindir}/mke2fs.e2fsprogs ${base_sbindir}/mkfs.ext* ${sysconfdir}/mke2fs.conf"
-FILES_e2fsprogs-tune2fs = "${base_sbindir}/tune2fs.e2fsprogs ${base_sbindir}/e2label"
-FILES_e2fsprogs-badblocks = "${base_sbindir}/badblocks"
-FILES_libcomerr = "${base_libdir}/libcom_err.so.*"
-FILES_libss = "${base_libdir}/libss.so.*"
-FILES_libe2p = "${base_libdir}/libe2p.so.*"
-FILES_libext2fs = "${libdir}/e2initrd_helper ${base_libdir}/libext2fs.so.*"
-FILES_${PN}-dev += "${datadir}/*/*.awk ${datadir}/*/*.sed ${base_libdir}/*.so ${bindir}/compile_et ${bindir}/mk_cmds"
+FILES:e2fsprogs-dumpe2fs = "${base_sbindir}/dumpe2fs"
+FILES:e2fsprogs-resize2fs = "${base_sbindir}/resize2fs*"
+FILES:e2fsprogs-e2fsck = "${base_sbindir}/e2fsck ${base_sbindir}/fsck.ext*"
+FILES:e2fsprogs-e2scrub = "${base_sbindir}/e2scrub*"
+FILES:e2fsprogs-mke2fs = "${base_sbindir}/mke2fs.e2fsprogs ${base_sbindir}/mkfs.ext* ${sysconfdir}/mke2fs.conf"
+FILES:e2fsprogs-tune2fs = "${base_sbindir}/tune2fs.e2fsprogs ${base_sbindir}/e2label"
+FILES:e2fsprogs-badblocks = "${base_sbindir}/badblocks"
+FILES:libcomerr = "${base_libdir}/libcom_err.so.*"
+FILES:libss = "${base_libdir}/libss.so.*"
+FILES:libe2p = "${base_libdir}/libe2p.so.*"
+FILES:libext2fs = "${libdir}/e2initrd_helper ${base_libdir}/libext2fs.so.*"
+FILES:${PN}-dev += "${datadir}/*/*.awk ${datadir}/*/*.sed ${base_libdir}/*.so ${bindir}/compile_et ${bindir}/mk_cmds"
 
-ALTERNATIVE_${PN} = "chattr"
+ALTERNATIVE:${PN} = "chattr"
 ALTERNATIVE_PRIORITY = "100"
 ALTERNATIVE_LINK_NAME[chattr] = "${base_bindir}/chattr"
 ALTERNATIVE_TARGET[chattr] = "${base_bindir}/chattr.e2fsprogs"
 
-ALTERNATIVE_${PN}-doc = "fsck.8"
+ALTERNATIVE:${PN}-doc = "fsck.8"
 ALTERNATIVE_LINK_NAME[fsck.8] = "${mandir}/man8/fsck.8"
 
-ALTERNATIVE_${PN}-mke2fs = "mke2fs mkfs.ext2"
+ALTERNATIVE:${PN}-mke2fs = "mke2fs mkfs.ext2"
 ALTERNATIVE_LINK_NAME[mke2fs] = "${base_sbindir}/mke2fs"
 ALTERNATIVE_LINK_NAME[mkfs.ext2] = "${base_sbindir}/mkfs.ext2"
 
-ALTERNATIVE_${PN}-tune2fs = "tune2fs"
+ALTERNATIVE:${PN}-tune2fs = "tune2fs"
 ALTERNATIVE_LINK_NAME[tune2fs] = "${base_sbindir}/tune2fs"
 
-RDEPENDS_e2fsprogs-e2scrub = "bash"
-RDEPENDS_${PN}-ptest += "coreutils procps bash bzip2 diffutils perl sed"
-RDEPENDS_${PN}-ptest += "e2fsprogs-badblocks e2fsprogs-dumpe2fs e2fsprogs-e2fsck e2fsprogs-mke2fs e2fsprogs-resize2fs e2fsprogs-tune2fs"
+RDEPENDS:e2fsprogs-e2scrub = "bash"
+RDEPENDS:${PN}-ptest += "coreutils procps bash bzip2 diffutils perl sed"
+RDEPENDS:${PN}-ptest += "e2fsprogs-badblocks e2fsprogs-dumpe2fs e2fsprogs-e2fsck e2fsprogs-mke2fs e2fsprogs-resize2fs e2fsprogs-tune2fs"
 
 do_compile_ptest() {
 	oe_runmake -C ${B}/tests
diff --git a/poky/meta/recipes-devtools/elfutils/elfutils_0.185.bb b/poky/meta/recipes-devtools/elfutils/elfutils_0.185.bb
index b1ffbc1..5031ab9 100644
--- a/poky/meta/recipes-devtools/elfutils/elfutils_0.185.bb
+++ b/poky/meta/recipes-devtools/elfutils/elfutils_0.185.bb
@@ -7,7 +7,7 @@
                     file://debuginfod/debuginfod-client.c;endline=27;md5=f8e9d171c401c493ec45a0b2992ea2ed \
                     "
 DEPENDS = "zlib virtual/libintl"
-DEPENDS_append_libc-musl = " argp-standalone fts musl-obstack "
+DEPENDS:append:libc-musl = " argp-standalone fts musl-obstack "
 # The Debian patches below are from:
 # http://ftp.de.debian.org/debian/pool/main/e/elfutils/elfutils_0.176-1.debian.tar.xz
 SRC_URI = "https://sourceware.org/elfutils/ftp/${PV}/${BP}.tar.bz2 \
@@ -22,8 +22,9 @@
            file://ptest.patch \
            file://0001-tests-Makefile.am-compile-test_nlist-with-standard-C.patch \
            file://0001-debuginfod-debuginfod-client.c-correct-string-format.patch \
+           file://glibc-2.34-fix.patch \
            "
-SRC_URI_append_libc-musl = " \
+SRC_URI:append:libc-musl = " \
            file://0002-musl-libs.patch \
            file://0003-musl-utils.patch \
            file://0004-Fix-error-on-musl.patch \
@@ -36,7 +37,7 @@
 EXTRA_OECONF = "--program-prefix=eu-"
 
 DEPENDS_BZIP2 = "bzip2-replacement-native"
-DEPENDS_BZIP2_class-target = "bzip2"
+DEPENDS_BZIP2:class-target = "bzip2"
 
 PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'debuginfod', 'debuginfod libdebuginfod', '', d)}"
 PACKAGECONFIG[bzip2] = "--with-bzlib,--without-bzlib,${DEPENDS_BZIP2}"
@@ -44,11 +45,11 @@
 PACKAGECONFIG[libdebuginfod] = "--enable-libdebuginfod,--disable-libdebuginfod,curl"
 PACKAGECONFIG[debuginfod] = "--enable-debuginfod,--disable-debuginfod,libarchive sqlite3 libmicrohttpd"
 
-RDEPENDS_${PN}-ptest += "libasm libelf bash make coreutils ${PN}-binutils iproute2-ss bsdtar"
+RDEPENDS:${PN}-ptest += "libasm libelf bash make coreutils ${PN}-binutils iproute2-ss bsdtar"
 
-EXTRA_OECONF_append_class-target = " --disable-tests-rpath"
+EXTRA_OECONF:append:class-target = " --disable-tests-rpath"
 
-RDEPENDS_${PN}-ptest_append_libc-glibc = " glibc-utils"
+RDEPENDS:${PN}-ptest:append:libc-glibc = " glibc-utils"
 
 do_compile_ptest() {
 	cd ${B}/tests
@@ -92,8 +93,8 @@
 	fi
 }
 
-EXTRA_OEMAKE_class-native = ""
-EXTRA_OEMAKE_class-nativesdk = ""
+EXTRA_OEMAKE:class-native = ""
+EXTRA_OEMAKE:class-nativesdk = ""
 
 BBCLASSEXTEND = "native nativesdk"
 
@@ -105,14 +106,14 @@
 # "The license is now GPLv2/LGPLv3+ for the libraries and GPLv3+ for stand-alone
 # programs. There is now also a formal CONTRIBUTING document describing how to
 # submit patches."
-LICENSE_${PN}-binutils = "GPLv3+"
-LICENSE_${PN} = "GPLv3+"
-LICENSE_libelf = "GPLv2 | LGPLv3+"
-LICENSE_libasm = "GPLv2 | LGPLv3+"
-LICENSE_libdw = "GPLv2 | LGPLv3+"
-LICENSE_libdebuginfod = "GPLv2+ | LGPLv3+"
+LICENSE:${PN}-binutils = "GPLv3+"
+LICENSE:${PN} = "GPLv3+"
+LICENSE:libelf = "GPLv2 | LGPLv3+"
+LICENSE:libasm = "GPLv2 | LGPLv3+"
+LICENSE:libdw = "GPLv2 | LGPLv3+"
+LICENSE:libdebuginfod = "GPLv2+ | LGPLv3+"
 
-FILES_${PN}-binutils = "\
+FILES:${PN}-binutils = "\
     ${bindir}/eu-addr2line \
     ${bindir}/eu-ld \
     ${bindir}/eu-nm \
@@ -120,19 +121,19 @@
     ${bindir}/eu-size \
     ${bindir}/eu-strip"
 
-FILES_libelf = "${libdir}/libelf-${PV}.so ${libdir}/libelf.so.*"
-FILES_libasm = "${libdir}/libasm-${PV}.so ${libdir}/libasm.so.*"
-FILES_libdw  = "${libdir}/libdw-${PV}.so ${libdir}/libdw.so.* ${libdir}/elfutils/lib*"
-FILES_libdebuginfod = "${libdir}/libdebuginfod-${PV}.so ${libdir}/libdebuginfod.so.*"
+FILES:libelf = "${libdir}/libelf-${PV}.so ${libdir}/libelf.so.*"
+FILES:libasm = "${libdir}/libasm-${PV}.so ${libdir}/libasm.so.*"
+FILES:libdw  = "${libdir}/libdw-${PV}.so ${libdir}/libdw.so.* ${libdir}/elfutils/lib*"
+FILES:libdebuginfod = "${libdir}/libdebuginfod-${PV}.so ${libdir}/libdebuginfod.so.*"
 # Some packages have the version preceeding the .so instead properly
 # versioned .so.<version>, so we need to reorder and repackage.
 #FILES_${PN} += "${libdir}/*-${PV}.so ${base_libdir}/*-${PV}.so"
 #FILES_SOLIBSDEV = "${libdir}/libasm.so ${libdir}/libdw.so ${libdir}/libelf.so"
 
 # The package contains symlinks that trip up insane
-INSANE_SKIP_${MLPREFIX}libdw = "dev-so"
+INSANE_SKIP:${MLPREFIX}libdw = "dev-so"
 # The nlist binary in the tests uses explicitly minimal compiler flags
-INSANE_SKIP_${PN}-ptest += "ldflags"
+INSANE_SKIP:${PN}-ptest += "ldflags"
 
 # avoid stripping some generated binaries otherwise some of the tests such as test-nlist,
 # run-strip-reloc.sh, run-strip-strmerge.sh and so on will fail
@@ -161,4 +162,4 @@
     ${PKGD}${PTEST_PATH}/backends/libebl_x86_64.so \
 "
 
-PRIVATE_LIBS_${PN}-ptest = "libdw.so.1 libelf.so.1 libasm.so.1 libdebuginfod.so.1"
+PRIVATE_LIBS:${PN}-ptest = "libdw.so.1 libelf.so.1 libasm.so.1 libdebuginfod.so.1"
diff --git a/poky/meta/recipes-devtools/elfutils/files/glibc-2.34-fix.patch b/poky/meta/recipes-devtools/elfutils/files/glibc-2.34-fix.patch
new file mode 100644
index 0000000..9509fb4
--- /dev/null
+++ b/poky/meta/recipes-devtools/elfutils/files/glibc-2.34-fix.patch
@@ -0,0 +1,138 @@
+glibc 2.34 calls pthread_kill from the raise function. Before raise
+directly called the (tg)kill syscall. So allow pthread_kill to be the
+first frame in a backtrace where raise is expected. Also change some
+asserts to fprintf plus abort to make it more clear why the testcase
+fails.
+
+https://sourceware.org/bugzilla/show_bug.cgi?id=28190
+
+Signed-off-by: Mark Wielaard <mark@klomp.org>
+Upstream-Status: Submitted [https://sourceware.org/pipermail/elfutils-devel/2021q3/004019.html]
+---
+ tests/ChangeLog   |  6 +++++
+ tests/backtrace.c | 62 +++++++++++++++++++++++++++++++++++++++++------
+ 2 files changed, 61 insertions(+), 7 deletions(-)
+
+Index: elfutils-0.185/tests/ChangeLog
+===================================================================
+--- elfutils-0.185.orig/tests/ChangeLog
++++ elfutils-0.185/tests/ChangeLog
+@@ -1,3 +1,9 @@
++2021-08-04  Mark Wielaard  <mark@klomp.org>
++
++	PR28190
++	* backtrace.c (callback_verify): Check for pthread_kill as first
++	frame. Change asserts to fprintf plus abort.
++
+ 2021-05-14  Frank Ch. Eigler <fche@redhat.com>
+ 
+ 	PR27859
+Index: elfutils-0.185/tests/backtrace.c
+===================================================================
+--- elfutils-0.185.orig/tests/backtrace.c
++++ elfutils-0.185/tests/backtrace.c
+@@ -97,6 +97,9 @@ callback_verify (pid_t tid, unsigned fra
+   static bool reduce_frameno = false;
+   if (reduce_frameno)
+     frameno--;
++  static bool pthread_kill_seen = false;
++  if (pthread_kill_seen)
++    frameno--;
+   if (! use_raise_jmp_patching && frameno >= 2)
+     frameno += 2;
+   const char *symname2 = NULL;
+@@ -107,11 +110,26 @@ callback_verify (pid_t tid, unsigned fra
+ 	       && (strcmp (symname, "__kernel_vsyscall") == 0
+ 		   || strcmp (symname, "__libc_do_syscall") == 0))
+ 	reduce_frameno = true;
++      else if (! pthread_kill_seen && symname
++	       && strstr (symname, "pthread_kill") != NULL)
++	pthread_kill_seen = true;
+       else
+-	assert (symname && strcmp (symname, "raise") == 0);
++	{
++	  if (!symname || strcmp (symname, "raise") != 0)
++	    {
++	      fprintf (stderr,
++		       "case 0: expected symname 'raise' got '%s'\n", symname);
++	      abort ();
++	    }
++	}
+       break;
+     case 1:
+-      assert (symname != NULL && strcmp (symname, "sigusr2") == 0);
++      if (symname == NULL || strcmp (symname, "sigusr2") != 0)
++	{
++	  fprintf (stderr,
++		   "case 1: expected symname 'sigusr2' got '%s'\n", symname);
++	  abort ();
++	}
+       break;
+     case 2: // x86_64 only
+       /* __restore_rt - glibc maybe does not have to have this symbol.  */
+@@ -120,11 +138,21 @@ callback_verify (pid_t tid, unsigned fra
+       if (use_raise_jmp_patching)
+ 	{
+ 	  /* Verify we trapped on the very first instruction of jmp.  */
+-	  assert (symname != NULL && strcmp (symname, "jmp") == 0);
++	  if (symname == NULL || strcmp (symname, "jmp") != 0)
++	    {
++	      fprintf (stderr,
++		       "case 3: expected symname 'raise' got '%s'\n", symname);
++	      abort ();
++	    }
+ 	  mod = dwfl_addrmodule (dwfl, pc - 1);
+ 	  if (mod)
+ 	    symname2 = dwfl_module_addrname (mod, pc - 1);
+-	  assert (symname2 == NULL || strcmp (symname2, "jmp") != 0);
++	  if (symname2 == NULL || strcmp (symname2, "jmp") != 0)
++	    {
++	      fprintf (stderr,
++		       "case 3: expected symname2 'jmp' got '%s'\n", symname2);
++	      abort ();
++	    }
+ 	  break;
+ 	}
+       FALLTHROUGH;
+@@ -137,11 +165,22 @@ callback_verify (pid_t tid, unsigned fra
+ 	  duplicate_sigusr2 = true;
+ 	  break;
+ 	}
+-      assert (symname != NULL && strcmp (symname, "stdarg") == 0);
++      if (symname == NULL || strcmp (symname, "stdarg") != 0)
++	{
++	  fprintf (stderr,
++		   "case 4: expected symname 'stdarg' got '%s'\n", symname);
++	  abort ();
++	}
+       break;
+     case 5:
+       /* Verify we trapped on the very last instruction of child.  */
+-      assert (symname != NULL && strcmp (symname, "backtracegen") == 0);
++      if (symname == NULL || strcmp (symname, "backtracegen") != 0)
++	{
++	  fprintf (stderr,
++		   "case 5: expected symname 'backtracegen' got '%s'\n",
++		   symname);
++	  abort ();
++	}
+       mod = dwfl_addrmodule (dwfl, pc);
+       if (mod)
+ 	symname2 = dwfl_module_addrname (mod, pc);
+@@ -151,7 +190,15 @@ callback_verify (pid_t tid, unsigned fra
+       // instructions or even inserts some padding instructions at the end
+       // (which apparently happens on ppc64).
+       if (use_raise_jmp_patching)
+-        assert (symname2 == NULL || strcmp (symname2, "backtracegen") != 0);
++	{
++          if (symname2 != NULL && strcmp (symname2, "backtracegen") == 0)
++	    {
++	      fprintf (stderr,
++		       "use_raise_jmp_patching didn't expect symname2 "
++		       "'backtracegen'\n");
++	      abort ();
++	    }
++	}
+       break;
+   }
+ }
diff --git a/poky/meta/recipes-devtools/expect/expect_5.45.4.bb b/poky/meta/recipes-devtools/expect/expect_5.45.4.bb
index 39ae615..e27b0d9 100644
--- a/poky/meta/recipes-devtools/expect/expect_5.45.4.bb
+++ b/poky/meta/recipes-devtools/expect/expect_5.45.4.bb
@@ -14,7 +14,7 @@
 LIC_FILES_CHKSUM = "file://license.terms;md5=fbf2de7e9102505b1439db06fc36ce5c"
 
 DEPENDS += "tcl"
-RDEPENDS_${PN} = "tcl"
+RDEPENDS:${PN} = "tcl"
 
 inherit autotools update-alternatives
 
@@ -35,7 +35,7 @@
 
 S = "${WORKDIR}/${BPN}${PV}"
 
-do_install_append() {
+do_install:append() {
 	install -d ${D}${libdir}
         install -m 0755 ${D}${libdir}/expect${PV}/libexpect*.so   ${D}${libdir}/
         install -m 0755 ${S}/fixline1           ${D}${libdir}/expect${PV}/
@@ -47,7 +47,7 @@
 # Apparently the public Tcl headers are only in /usr/include/tcl8.6
 # when building for the target and nativesdk.
 TCL_INCLUDE_PATH = "--with-tclinclude=${STAGING_INCDIR}/tcl8.6"
-TCL_INCLUDE_PATH_class-native = ""
+TCL_INCLUDE_PATH:class-native = ""
 
 EXTRA_OECONF += "--with-tcl=${STAGING_LIBDIR} \
                  --enable-shared \
@@ -57,12 +57,12 @@
                 "
 EXTRA_OEMAKE_install = " 'SCRIPTS=' "
 
-ALTERNATIVE_${PN}  = "mkpasswd"
+ALTERNATIVE:${PN}  = "mkpasswd"
 ALTERNATIVE_LINK_NAME[mkpasswd] = "${bindir}/mkpasswd"
 # Use lower priority than busybox's mkpasswd (created when built with CONFIG_CRYPTPW)
 ALTERNATIVE_PRIORITY[mkpasswd] = "40"
 
-FILES_${PN}-dev = "${libdir_native}/expect${PV}/libexpect*.so \
+FILES:${PN}-dev = "${libdir_native}/expect${PV}/libexpect*.so \
                    ${includedir}/expect.h \
                    ${includedir}/expect_tcl.h \
                    ${includedir}/expect_comm.h \
@@ -70,7 +70,7 @@
                    ${includedir}/*.h \
                   "
 
-FILES_${PN} += "${libdir}/libexpect${PV}.so \
+FILES:${PN} += "${libdir}/libexpect${PV}.so \
                 ${libdir}/expect${PV}/* \
                "
 
diff --git a/poky/meta/recipes-devtools/file/file_5.40.bb b/poky/meta/recipes-devtools/file/file_5.40.bb
index ec79839..32b61f4 100644
--- a/poky/meta/recipes-devtools/file/file_5.40.bb
+++ b/poky/meta/recipes-devtools/file/file_5.40.bb
@@ -9,7 +9,7 @@
 LIC_FILES_CHKSUM = "file://COPYING;beginline=2;md5=0251eaec1188b20d9a72c502ecfdda1b"
 
 DEPENDS = "file-replacement-native"
-DEPENDS_class-native = "bzip2-replacement-native"
+DEPENDS:class-native = "bzip2-replacement-native"
 
 SRC_URI = "git://github.com/file/file.git"
 
@@ -25,30 +25,30 @@
 
 EXTRA_OECONF += "--disable-libseccomp"
 
-ALTERNATIVE_${PN} = "file"
+ALTERNATIVE:${PN} = "file"
 ALTERNATIVE_LINK_NAME[file] = "${bindir}/file"
 
-EXTRA_OEMAKE_append_class-target = " -e FILE_COMPILE=${STAGING_BINDIR_NATIVE}/file-native/file"
-EXTRA_OEMAKE_append_class-nativesdk = " -e FILE_COMPILE=${STAGING_BINDIR_NATIVE}/file-native/file"
+EXTRA_OEMAKE:append:class-target = " -e FILE_COMPILE=${STAGING_BINDIR_NATIVE}/file-native/file"
+EXTRA_OEMAKE:append:class-nativesdk = " -e FILE_COMPILE=${STAGING_BINDIR_NATIVE}/file-native/file"
 
-FILES_${PN} += "${datadir}/misc/*.mgc"
+FILES:${PN} += "${datadir}/misc/*.mgc"
 
-do_compile_append_class-native() {
+do_compile:append:class-native() {
 	oe_runmake check
 }
 
-do_install_append_class-native() {
+do_install:append:class-native() {
 	create_cmdline_wrapper ${D}/${bindir}/file \
 		--magic-file ${datadir}/misc/magic.mgc
 }
 
-do_install_append_class-nativesdk() {
+do_install:append:class-nativesdk() {
 	create_cmdline_wrapper ${D}/${bindir}/file \
 		--magic-file ${datadir}/misc/magic.mgc
 }
 
 BBCLASSEXTEND = "native nativesdk"
-PROVIDES_append_class-native = " file-replacement-native"
+PROVIDES:append:class-native = " file-replacement-native"
 # Don't use NATIVE_PACKAGE_PATH_SUFFIX as that hides libmagic from anyone who
 # depends on file-replacement-native.
-bindir_append_class-native = "/file-native"
+bindir:append:class-native = "/file-native"
diff --git a/poky/meta/recipes-devtools/flex/flex_2.6.4.bb b/poky/meta/recipes-devtools/flex/flex_2.6.4.bb
index 54e7e01..56f5b74 100644
--- a/poky/meta/recipes-devtools/flex/flex_2.6.4.bb
+++ b/poky/meta/recipes-devtools/flex/flex_2.6.4.bb
@@ -4,7 +4,7 @@
 HOMEPAGE = "http://sourceforge.net/projects/flex/"
 SECTION = "devel"
 LICENSE = "BSD-3-Clause & LGPL-2.0+"
-LICENSE_${PN}-libfl = "BSD-3-Clause"
+LICENSE:${PN}-libfl = "BSD-3-Clause"
 
 DEPENDS = "${@bb.utils.contains('PTEST_ENABLED', '1', 'bison-native flex-native', '', d)}"
 BBCLASSEXTEND = "native nativesdk"
@@ -31,26 +31,26 @@
 inherit autotools gettext texinfo ptest
 
 M4 = "${bindir}/m4"
-M4_class-native = "${STAGING_BINDIR_NATIVE}/m4"
+M4:class-native = "${STAGING_BINDIR_NATIVE}/m4"
 EXTRA_OECONF += "ac_cv_path_M4=${M4} ac_cv_func_reallocarray=no"
 EXTRA_OEMAKE += "m4=${STAGING_BINDIR_NATIVE}/m4"
 
 EXTRA_OEMAKE += "${@bb.utils.contains('PTEST_ENABLED', '1', 'FLEX=${STAGING_BINDIR_NATIVE}/flex', '', d)}"
 
-do_install_append_class-native() {
+do_install:append:class-native() {
 	create_wrapper ${D}/${bindir}/flex M4=${M4}
 }
 
-do_install_append_class-nativesdk() {
+do_install:append:class-nativesdk() {
 	create_wrapper ${D}/${bindir}/flex M4=${M4}
 }
 
 PACKAGES =+ "${PN}-libfl"
 
-FILES_${PN}-libfl = "${libdir}/libfl.so.* ${libdir}/libfl_pic.so.*"
+FILES:${PN}-libfl = "${libdir}/libfl.so.* ${libdir}/libfl_pic.so.*"
 
-RDEPENDS_${PN} += "m4"
-RDEPENDS_${PN}-ptest += "bash gawk make"
+RDEPENDS:${PN} += "m4"
+RDEPENDS:${PN}-ptest += "bash gawk make"
 
 do_compile_ptest() {
 	oe_runmake -C ${B}/tests -f ${B}/tests/Makefile top_builddir=${B} INCLUDES=-I${S}/src buildtests
diff --git a/poky/meta/recipes-devtools/gcc/gcc-11.1.inc b/poky/meta/recipes-devtools/gcc/gcc-11.2.inc
similarity index 87%
rename from poky/meta/recipes-devtools/gcc/gcc-11.1.inc
rename to poky/meta/recipes-devtools/gcc/gcc-11.2.inc
index c21242a..9fd30f5 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-11.1.inc
+++ b/poky/meta/recipes-devtools/gcc/gcc-11.2.inc
@@ -2,11 +2,11 @@
 
 # Third digit in PV should be incremented after a minor release
 
-PV = "11.1.0"
+PV = "11.2.0"
 
 # BINV should be incremented to a revision after a minor gcc release
 
-BINV = "11.1.1"
+BINV = "11.2.0"
 
 FILESEXTRAPATHS =. "${FILE_DIRNAME}/gcc:${FILE_DIRNAME}/gcc/backport:"
 
@@ -27,7 +27,6 @@
 #BASEURI ?= "https://github.com/gcc-mirror/gcc/archive/${RELEASE}.zip;downloadfilename=gcc-${PV}-${RELEASE}.zip"
 
 BASEURI ?= "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.xz \
-            http://downloads.yoctoproject.org/mirror/sources/gcc-11.1.0-9ee61d2b51df012c659359873637cc2162ecccf3.patch;apply=yes;name=backports \
            "
 SRC_URI = "\
            ${BASEURI} \
@@ -68,13 +67,9 @@
            file://0035-gentypes-genmodes-Do-not-use-__LINE__-for-maintainin.patch \
            file://0036-mingw32-Enable-operation_not_supported.patch \
            file://0037-libatomic-Do-not-enforce-march-on-aarch64.patch \
-           file://0001-libstdc-Fix-installation-of-python-hooks-PR-99453.patch \
-           file://0038-arc-Update-64bit-move-split-patterns.patch \
-           file://0039-arc-Fix-u-maddhisi-patterns.patch \
-           file://0040-arc-Update-doloop_end-patterns.patch \
+           file://0041-apply-debug-prefix-maps-before-checksumming-DIEs.patch \
 "
-SRC_URI[sha256sum] = "4c4a6fb8a8396059241c2e674b85b351c26a5d678274007f076957afa1cc9ddf"
-SRC_URI[backports.sha256sum] = "69274bebd6c069a13443d4af61070e854740a639ec4d66eedf3e80070363587b"
+SRC_URI[sha256sum] = "d08edc536b54c372a1010ff6619dd274c0f1603aa49212ba20f7aa2cda36fa8b"
 
 S = "${TMPDIR}/work-shared/gcc-${PV}-${PR}/gcc-${PV}"
 
@@ -87,7 +82,7 @@
 JAVA = ""
 
 SSP ?= "--disable-libssp"
-SSP_mingw32 = "--enable-libssp"
+SSP:mingw32 = "--enable-libssp"
 
 EXTRA_OECONF_BASE = "\
     ${SSP} \
diff --git a/poky/meta/recipes-devtools/gcc/gcc-common.inc b/poky/meta/recipes-devtools/gcc/gcc-common.inc
index 629fa26..7419064 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-common.inc
+++ b/poky/meta/recipes-devtools/gcc/gcc-common.inc
@@ -12,7 +12,7 @@
 
 BPN = "gcc"
 COMPILERDEP = "virtual/${MLPREFIX}${TARGET_PREFIX}gcc:do_gcc_stash_builddir"
-COMPILERDEP_class-nativesdk = "virtual/${TARGET_PREFIX}gcc-crosssdk:do_gcc_stash_builddir"
+COMPILERDEP:class-nativesdk = "virtual/${TARGET_PREFIX}gcc-crosssdk:do_gcc_stash_builddir"
 
 python extract_stashed_builddir () {
     src = d.expand("${COMPONENTS_DIR}/${BUILD_ARCH}/gcc-stashed-builddir-${TARGET_SYS}")
@@ -83,7 +83,7 @@
 
 get_tune_parameters[vardepsexclude] = "AVAILTUNES TUNE_CCARGS OVERRIDES TUNE_FEATURES BASE_LIB BASELIB TUNE_ARCH ABIEXTENSION TARGET_FPU TUNE_PKGARCH PACKAGE_EXTRA_ARCHS"
 
-DEBIANNAME_${MLPREFIX}libgcc = "libgcc1"
+DEBIANNAME:${MLPREFIX}libgcc = "libgcc1"
 
 MIRRORS =+ "\
 ${GNU_MIRROR}/gcc    ftp://gcc.gnu.org/pub/gcc/releases/ \n \
diff --git a/poky/meta/recipes-devtools/gcc/gcc-configure-common.inc b/poky/meta/recipes-devtools/gcc/gcc-configure-common.inc
index dc7f458..e4cdb73 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-configure-common.inc
+++ b/poky/meta/recipes-devtools/gcc/gcc-configure-common.inc
@@ -45,27 +45,27 @@
 
 # glibc version is a minimum controlling whether features are enabled. 
 # Doesn't need to track glibc exactly
-EXTRA_OECONF_append_libc-glibc = " --with-glibc-version=2.28 "
+EXTRA_OECONF:append:libc-glibc = " --with-glibc-version=2.28 "
 
 # Set this here since GCC configure won't auto-detect and enable
 # initfini-arry when cross compiling.
-EXTRA_OECONF_append = " --enable-initfini-array"
+EXTRA_OECONF:append = " --enable-initfini-array"
 
 export gcc_cv_collect2_libs = 'none required'
 # We need to set gcc_cv_collect2_libs else there is cross-compilation badness
 # in the config.log files (which might not get generated until do_compile
 # hence being missed by the insane do_configure check).
 
-EXTRA_OECONF_append_linux = " --enable-__cxa_atexit"
+EXTRA_OECONF:append:linux = " --enable-__cxa_atexit"
 
-EXTRA_OECONF_append_mips64 = " --with-abi=64 --with-arch-64=mips64 --with-tune-64=mips64"
-EXTRA_OECONF_append_mips64el = " --with-abi=64 --with-arch-64=mips64 --with-tune-64=mips64"
-EXTRA_OECONF_append_mips64n32 = " --with-abi=64 --with-arch-64=mips64 --with-tune-64=mips64"
-EXTRA_OECONF_append_mips64eln32 = " --with-abi=64 --with-arch-64=mips64 --with-tune-64=mips64"
-EXTRA_OECONF_append_mipsisa32r6el = " --with-abi=32 --with-arch=mips32r6"
-EXTRA_OECONF_append_mipsisa32r6 = " --with-abi=32 --with-arch=mips32r6"
-EXTRA_OECONF_append_mipsisa64r6el = " --with-abi=64 --with-arch-64=mips64r6"
-EXTRA_OECONF_append_mipsisa64r6 = " --with-abi=64 --with-arch-64=mips64r6"
+EXTRA_OECONF:append:mips64 = " --with-abi=64 --with-arch-64=mips64 --with-tune-64=mips64"
+EXTRA_OECONF:append:mips64el = " --with-abi=64 --with-arch-64=mips64 --with-tune-64=mips64"
+EXTRA_OECONF:append:mips64n32 = " --with-abi=64 --with-arch-64=mips64 --with-tune-64=mips64"
+EXTRA_OECONF:append:mips64eln32 = " --with-abi=64 --with-arch-64=mips64 --with-tune-64=mips64"
+EXTRA_OECONF:append:mipsisa32r6el = " --with-abi=32 --with-arch=mips32r6"
+EXTRA_OECONF:append:mipsisa32r6 = " --with-abi=32 --with-arch=mips32r6"
+EXTRA_OECONF:append:mipsisa64r6el = " --with-abi=64 --with-arch-64=mips64r6"
+EXTRA_OECONF:append:mipsisa64r6 = " --with-abi=64 --with-arch-64=mips64r6"
 
 EXTRA_OECONF_GCC_FLOAT ??= ""
 CPPFLAGS = ""
@@ -74,7 +74,7 @@
 SYSTEMLIBS = "${target_base_libdir}/"
 SYSTEMLIBS1 = "${target_libdir}/"
 
-do_configure_prepend () {
+do_configure:prepend () {
 	# teach gcc to find correct target includedir when checking libc ssp support
 	mkdir -p ${B}/gcc
 	echo "NATIVE_SYSTEM_HEADER_DIR = ${SYSTEMHEADERS}" > ${B}/gcc/t-oe
diff --git a/poky/meta/recipes-devtools/gcc/gcc-cross-canadian.inc b/poky/meta/recipes-devtools/gcc/gcc-cross-canadian.inc
index 1872fae..495dd90 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-cross-canadian.inc
+++ b/poky/meta/recipes-devtools/gcc/gcc-cross-canadian.inc
@@ -65,7 +65,7 @@
 
 PACKAGES = "${PN}-dbg ${PN} ${PN}-doc"
 
-FILES_${PN} = "\
+FILES:${PN} = "\
     ${exec_prefix}/bin/* \
     ${libexecdir}/gcc/${TARGET_SYS}/${BINV}/* \
     ${gcclibdir}/${TARGET_SYS}/${BINV}/*.o \
@@ -81,9 +81,9 @@
     ${prefix}/${TARGET_SYS}/lib/* \
     ${prefix}/${TARGET_SYS}${target_includedir}/* \
 "
-INSANE_SKIP_${PN} += "dev-so"
+INSANE_SKIP:${PN} += "dev-so"
 
-FILES_${PN}-doc = "\
+FILES:${PN}-doc = "\
     ${infodir} \
     ${mandir} \
     ${gcclibdir}/${TARGET_SYS}/${BINV}/include/README \
@@ -173,16 +173,16 @@
 
 ELFUTILS = "nativesdk-elfutils"
 DEPENDS += "nativesdk-gmp nativesdk-mpfr nativesdk-libmpc ${ELFUTILS} nativesdk-zlib"
-RDEPENDS_${PN} += "nativesdk-mpfr nativesdk-libmpc ${ELFUTILS}"
+RDEPENDS:${PN} += "nativesdk-mpfr nativesdk-libmpc ${ELFUTILS}"
 
 SYSTEMHEADERS = "${target_includedir}/"
 SYSTEMLIBS = "${target_base_libdir}/"
 SYSTEMLIBS1 = "${target_libdir}/"
 
 EXTRA_OECONF += "--enable-poison-system-directories"
-EXTRA_OECONF_remove_elf = "--with-sysroot=/not/exist"
-EXTRA_OECONF_remove_eabi = "--with-sysroot=/not/exist"
-EXTRA_OECONF_append_elf = " --without-headers --with-newlib"
-EXTRA_OECONF_append_eabi = " --without-headers --with-newlib"
+EXTRA_OECONF:remove:elf = "--with-sysroot=/not/exist"
+EXTRA_OECONF:remove:eabi = "--with-sysroot=/not/exist"
+EXTRA_OECONF:append:elf = " --without-headers --with-newlib"
+EXTRA_OECONF:append:eabi = " --without-headers --with-newlib"
 # gcc 4.7 needs -isystem
 export ARCH_FLAGS_FOR_TARGET = "--sysroot=${STAGING_DIR_TARGET} -isystem=${target_includedir}"
diff --git a/poky/meta/recipes-devtools/gcc/gcc-cross-canadian_11.1.bb b/poky/meta/recipes-devtools/gcc/gcc-cross-canadian_11.2.bb
similarity index 100%
rename from poky/meta/recipes-devtools/gcc/gcc-cross-canadian_11.1.bb
rename to poky/meta/recipes-devtools/gcc/gcc-cross-canadian_11.2.bb
diff --git a/poky/meta/recipes-devtools/gcc/gcc-cross.inc b/poky/meta/recipes-devtools/gcc/gcc-cross.inc
index dca4036..3ffa1f0 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-cross.inc
+++ b/poky/meta/recipes-devtools/gcc/gcc-cross.inc
@@ -22,7 +22,7 @@
 LINKER_HASH_STYLE ?= "sysv"
 
 EXTRA_OECONF += "--enable-poison-system-directories=error"
-EXTRA_OECONF_append_sh4 = " \
+EXTRA_OECONF:append:sh4 = " \
     --with-multilib-list= \
     --enable-incomplete-targets \
 "
@@ -31,9 +31,9 @@
     --with-system-zlib \
 "
 
-EXTRA_OECONF_append_libc-baremetal = " --without-headers"
-EXTRA_OECONF_remove_libc-baremetal = "--enable-threads=posix"
-EXTRA_OECONF_remove_libc-newlib = "--enable-threads=posix"
+EXTRA_OECONF:append:libc-baremetal = " --without-headers"
+EXTRA_OECONF:remove:libc-baremetal = "--enable-threads=posix"
+EXTRA_OECONF:remove:libc-newlib = "--enable-threads=posix"
 
 EXTRA_OECONF_PATHS = "\
     --with-gxx-include-dir=/not/exist${target_includedir}/c++/${BINV} \
@@ -44,7 +44,7 @@
 ARCH_FLAGS_FOR_TARGET += "-isystem${STAGING_DIR_TARGET}${target_includedir}"
 
 
-do_configure_prepend () {
+do_configure:prepend () {
 	install -d ${RECIPE_SYSROOT}${target_includedir}
 	touch ${RECIPE_SYSROOT}${target_includedir}/limits.h
 }
diff --git a/poky/meta/recipes-devtools/gcc/gcc-cross_11.1.bb b/poky/meta/recipes-devtools/gcc/gcc-cross_11.2.bb
similarity index 100%
rename from poky/meta/recipes-devtools/gcc/gcc-cross_11.1.bb
rename to poky/meta/recipes-devtools/gcc/gcc-cross_11.2.bb
diff --git a/poky/meta/recipes-devtools/gcc/gcc-crosssdk_11.1.bb b/poky/meta/recipes-devtools/gcc/gcc-crosssdk_11.2.bb
similarity index 100%
rename from poky/meta/recipes-devtools/gcc/gcc-crosssdk_11.1.bb
rename to poky/meta/recipes-devtools/gcc/gcc-crosssdk_11.2.bb
diff --git a/poky/meta/recipes-devtools/gcc/gcc-multilib-config.inc b/poky/meta/recipes-devtools/gcc/gcc-multilib-config.inc
index 31b8619..e90580d 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-multilib-config.inc
+++ b/poky/meta/recipes-devtools/gcc/gcc-multilib-config.inc
@@ -170,7 +170,7 @@
     header_config_files = gcc_header_config_files[target_arch]
 
     ml_list = ['DEFAULTTUNE_MULTILIB_ORIGINAL' if mlprefix else 'DEFAULTTUNE']
-    mltunes = [('DEFAULTTUNE_virtclass-multilib-%s' % ml) for ml in multilibs]
+    mltunes = [('DEFAULTTUNE:virtclass-multilib-%s' % ml) for ml in multilibs]
     if mlprefix:
         mlindex = 0
         for ml in multilibs:
diff --git a/poky/meta/recipes-devtools/gcc/gcc-runtime.inc b/poky/meta/recipes-devtools/gcc/gcc-runtime.inc
index 59d9a24..4839a66 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-runtime.inc
+++ b/poky/meta/recipes-devtools/gcc/gcc-runtime.inc
@@ -6,7 +6,7 @@
 # All gcc-runtime packages are now covered by the runtime exception.
 LICENSE = "GPL-3.0-with-GCC-exception"
 
-CXXFLAGS_remove = "-fvisibility-inlines-hidden"
+CXXFLAGS:remove = "-fvisibility-inlines-hidden"
 
 EXTRA_OECONF_PATHS = "\
     --with-gxx-include-dir=${includedir}/c++/${BINV} \
@@ -14,37 +14,37 @@
     --with-build-sysroot=${STAGING_DIR_TARGET} \
 "
 
-EXTRA_OECONF_append_linuxstdbase = " --enable-clocale=gnu"
-EXTRA_OECONF_append = " --cache-file=${B}/config.cache"
-EXTRA_OECONF_append_libc-newlib = " --with-newlib"
+EXTRA_OECONF:append:linuxstdbase = " --enable-clocale=gnu"
+EXTRA_OECONF:append = " --cache-file=${B}/config.cache"
+EXTRA_OECONF:append:libc-newlib = " --with-newlib"
 
 # Disable ifuncs for libatomic on arm conflicts -march/-mcpu
-EXTRA_OECONF_append_arm = " libat_cv_have_ifunc=no "
-EXTRA_OECONF_append_armeb = " libat_cv_have_ifunc=no "
+EXTRA_OECONF:append:arm = " libat_cv_have_ifunc=no "
+EXTRA_OECONF:append:armeb = " libat_cv_have_ifunc=no "
 
-DISABLE_STATIC_class-nativesdk ?= ""
+DISABLE_STATIC:class-nativesdk ?= ""
 
 # Newlib does not support symbol versioning on libsdtcc++
-SYMVERS_CONF_libc-newlib = ""
+SYMVERS_CONF:libc-newlib = ""
 
 # Building with thumb enabled on armv6t fails
-ARM_INSTRUCTION_SET_armv6 = "arm"
+ARM_INSTRUCTION_SET:armv6 = "arm"
 
 RUNTIMELIBITM = "libitm"
-RUNTIMELIBITM_arc = ""
-RUNTIMELIBITM_mipsarch = ""
-RUNTIMELIBITM_nios2 = ""
-RUNTIMELIBITM_microblaze = ""
-RUNTIMELIBITM_riscv32 = ""
-RUNTIMELIBITM_riscv64 = ""
+RUNTIMELIBITM:arc = ""
+RUNTIMELIBITM:mipsarch = ""
+RUNTIMELIBITM:nios2 = ""
+RUNTIMELIBITM:microblaze = ""
+RUNTIMELIBITM:riscv32 = ""
+RUNTIMELIBITM:riscv64 = ""
 RUNTIMELIBSSP ?= ""
-RUNTIMELIBSSP_mingw32 ?= "libssp"
+RUNTIMELIBSSP:mingw32 ?= "libssp"
 
 RUNTIMETARGET = "${RUNTIMELIBSSP} libstdc++-v3 libgomp libatomic ${RUNTIMELIBITM} \
     ${@bb.utils.contains_any('FORTRAN', [',fortran',',f77'], 'libquadmath', '', d)} \
 "
 # Only build libstdc++ for newlib
-RUNTIMETARGET_libc-newlib = "libstdc++-v3"
+RUNTIMETARGET:libc-newlib = "libstdc++-v3"
 
 # libiberty
 # libgfortran needs separate recipe due to libquadmath dependency
@@ -52,7 +52,7 @@
 # Relative path to be repaced into debug info
 REL_S = "/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR}"
 
-DEBUG_PREFIX_MAP_class-target = " \
+DEBUG_PREFIX_MAP:class-target = " \
    -fdebug-prefix-map=${WORKDIR}/recipe-sysroot= \
    -fdebug-prefix-map=${WORKDIR}/recipe-sysroot-native= \
    -fdebug-prefix-map=${S}=${REL_S} \
@@ -109,7 +109,7 @@
 	fi
 }
 
-do_install_append_class-target () {
+do_install:append:class-target () {
 	if [ "${TARGET_OS}" = "linux-gnuspe" ]; then
 		ln -s ${TARGET_SYS} ${D}${includedir}/c++/${BINV}/${TARGET_ARCH}${TARGET_VENDOR}-linux
 	fi
@@ -186,67 +186,67 @@
     libitm-staticdev \
 "
 # The base package doesn't exist, so we clear the recommends.
-RRECOMMENDS_${PN}-dbg = ""
+RRECOMMENDS:${PN}-dbg = ""
 
 # include python debugging scripts
-FILES_${PN}-dbg += "\
+FILES:${PN}-dbg += "\
     ${libdir}/libstdc++.*-gdb.py \
     ${datadir}/gcc-${BINV}/python/libstdcxx \
 "
 
-FILES_libg2c = "${target_libdir}/libg2c.so.*"
-SUMMARY_libg2c = "Companion runtime library for g77"
-FILES_libg2c-dev = "\
+FILES:libg2c = "${target_libdir}/libg2c.so.*"
+SUMMARY:libg2c = "Companion runtime library for g77"
+FILES:libg2c-dev = "\
     ${libdir}/libg2c.so \
     ${libdir}/libg2c.a \
     ${libdir}/libfrtbegin.a \
 "
-SUMMARY_libg2c-dev = "Companion runtime library for g77 - development files"
+SUMMARY:libg2c-dev = "Companion runtime library for g77 - development files"
 
-FILES_libstdc++ = "${libdir}/libstdc++.so.*"
-SUMMARY_libstdc++ = "GNU standard C++ library"
-FILES_libstdc++-dev = "\
+FILES:libstdc++ = "${libdir}/libstdc++.so.*"
+SUMMARY:libstdc++ = "GNU standard C++ library"
+FILES:libstdc++-dev = "\
     ${includedir}/c++/ \
     ${libdir}/libstdc++.so \
     ${libdir}/libstdc++*.la \
     ${libdir}/libsupc++.la \
 "
-SUMMARY_libstdc++-dev = "GNU standard C++ library - development files"
-FILES_libstdc++-staticdev = "\
+SUMMARY:libstdc++-dev = "GNU standard C++ library - development files"
+FILES:libstdc++-staticdev = "\
     ${libdir}/libstdc++*.a \
     ${libdir}/libsupc++.a \
 "
-SUMMARY_libstdc++-staticdev = "GNU standard C++ library - static development files"
+SUMMARY:libstdc++-staticdev = "GNU standard C++ library - static development files"
 
-FILES_libstdc++-precompile-dev = "${includedir}/c++/${TARGET_SYS}/bits/*.gch"
-SUMMARY_libstdc++-precompile-dev = "GNU standard C++ library - precompiled header files"
+FILES:libstdc++-precompile-dev = "${includedir}/c++/${TARGET_SYS}/bits/*.gch"
+SUMMARY:libstdc++-precompile-dev = "GNU standard C++ library - precompiled header files"
 
-FILES_libssp = "${libdir}/libssp.so.*"
-SUMMARY_libssp = "GNU stack smashing protection library"
-FILES_libssp-dev = "\
+FILES:libssp = "${libdir}/libssp.so.*"
+SUMMARY:libssp = "GNU stack smashing protection library"
+FILES:libssp-dev = "\
     ${libdir}/libssp*.so \
     ${libdir}/libssp*_nonshared.a \
     ${libdir}/libssp*.la \
     ${libdir}/${TARGET_SYS}/${BINV}/include/ssp \
 "
-SUMMARY_libssp-dev = "GNU stack smashing protection library - development files"
-FILES_libssp-staticdev = "${libdir}/libssp*.a"
-SUMMARY_libssp-staticdev = "GNU stack smashing protection library - static development files"
+SUMMARY:libssp-dev = "GNU stack smashing protection library - development files"
+FILES:libssp-staticdev = "${libdir}/libssp*.a"
+SUMMARY:libssp-staticdev = "GNU stack smashing protection library - static development files"
 
-FILES_libquadmath = "${libdir}/libquadmath*.so.*"
-SUMMARY_libquadmath = "GNU quad-precision math library"
-FILES_libquadmath-dev = "\
+FILES:libquadmath = "${libdir}/libquadmath*.so.*"
+SUMMARY:libquadmath = "GNU quad-precision math library"
+FILES:libquadmath-dev = "\
     ${libdir}/${TARGET_SYS}/${BINV}/include/quadmath* \
     ${libdir}/libquadmath*.so \
     ${libdir}/libquadmath.la \
 "
-SUMMARY_libquadmath-dev = "GNU quad-precision math library - development files"
-FILES_libquadmath-staticdev = "${libdir}/libquadmath.a"
-SUMMARY_libquadmath-staticdev = "GNU quad-precision math library - static development files"
+SUMMARY:libquadmath-dev = "GNU quad-precision math library - development files"
+FILES:libquadmath-staticdev = "${libdir}/libquadmath.a"
+SUMMARY:libquadmath-staticdev = "GNU quad-precision math library - static development files"
 
-FILES_libgomp = "${libdir}/libgomp*${SOLIBS}"
-SUMMARY_libgomp = "GNU OpenMP parallel programming library"
-FILES_libgomp-dev = "\
+FILES:libgomp = "${libdir}/libgomp*${SOLIBS}"
+SUMMARY:libgomp = "GNU OpenMP parallel programming library"
+FILES:libgomp-dev = "\
     ${libdir}/libgomp*${SOLIBSDEV} \
     ${libdir}/libgomp*.la \
     ${libdir}/libgomp.spec \
@@ -254,34 +254,34 @@
     ${libdir}/${TARGET_SYS}/${BINV}/include/omp.h \
     ${libdir}/${TARGET_SYS}/${BINV}/include/openacc.h \
 "
-SUMMARY_libgomp-dev = "GNU OpenMP parallel programming library - development files"
-FILES_libgomp-staticdev = "${libdir}/libgomp*.a"
-SUMMARY_libgomp-staticdev = "GNU OpenMP parallel programming library - static development files"
+SUMMARY:libgomp-dev = "GNU OpenMP parallel programming library - development files"
+FILES:libgomp-staticdev = "${libdir}/libgomp*.a"
+SUMMARY:libgomp-staticdev = "GNU OpenMP parallel programming library - static development files"
 
-FILES_libatomic = "${libdir}/libatomic.so.*"
-SUMMARY_libatomic = "GNU C++11 atomics support library"
-FILES_libatomic-dev = "\
+FILES:libatomic = "${libdir}/libatomic.so.*"
+SUMMARY:libatomic = "GNU C++11 atomics support library"
+FILES:libatomic-dev = "\
     ${libdir}/libatomic.so \
     ${libdir}/libatomic.la \
 "
-SUMMARY_libatomic-dev = "GNU C++11 atomics support library - development files"
-FILES_libatomic-staticdev = "${libdir}/libatomic.a"
-SUMMARY_libatomic-staticdev = "GNU C++11 atomics support library - static development files"
+SUMMARY:libatomic-dev = "GNU C++11 atomics support library - development files"
+FILES:libatomic-staticdev = "${libdir}/libatomic.a"
+SUMMARY:libatomic-staticdev = "GNU C++11 atomics support library - static development files"
 
-FILES_libitm = "${libdir}/libitm.so.*"
-SUMMARY_libitm = "GNU transactional memory support library"
-FILES_libitm-dev = "\
+FILES:libitm = "${libdir}/libitm.so.*"
+SUMMARY:libitm = "GNU transactional memory support library"
+FILES:libitm-dev = "\
     ${libdir}/libitm.so \
     ${libdir}/libitm.la \
     ${libdir}/libitm.spec \
 "
-SUMMARY_libitm-dev = "GNU transactional memory support library - development files"
-FILES_libitm-staticdev = "${libdir}/libitm.a"
-SUMMARY_libitm-staticdev = "GNU transactional memory support library - static development files"
+SUMMARY:libitm-dev = "GNU transactional memory support library - development files"
+FILES:libitm-staticdev = "${libdir}/libitm.a"
+SUMMARY:libitm-staticdev = "GNU transactional memory support library - static development files"
 
 require gcc-testsuite.inc
 
-EXTRA_OEMAKE_prepend_task-check = "${PARALLEL_MAKE} "
+EXTRA_OEMAKE:prepend:task-check = "${PARALLEL_MAKE} "
 
 MAKE_CHECK_TARGETS ??= "check-gcc ${@" ".join("check-target-" + i for i in d.getVar("RUNTIMETARGET").split())}"
 # prettyprinters and xmethods require gdb tooling
diff --git a/poky/meta/recipes-devtools/gcc/gcc-runtime_11.1.bb b/poky/meta/recipes-devtools/gcc/gcc-runtime_11.2.bb
similarity index 100%
rename from poky/meta/recipes-devtools/gcc/gcc-runtime_11.1.bb
rename to poky/meta/recipes-devtools/gcc/gcc-runtime_11.2.bb
diff --git a/poky/meta/recipes-devtools/gcc/gcc-sanitizers.inc b/poky/meta/recipes-devtools/gcc/gcc-sanitizers.inc
index 59e91da..9881afa 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-sanitizers.inc
+++ b/poky/meta/recipes-devtools/gcc/gcc-sanitizers.inc
@@ -47,11 +47,11 @@
 }
 
 INHIBIT_DEFAULT_DEPS = "1"
-ALLOW_EMPTY_${PN} = "1"
+ALLOW_EMPTY:${PN} = "1"
 DEPENDS = "virtual/crypt gcc-runtime virtual/${TARGET_PREFIX}gcc"
 
 # used to fix ../../../../../../../../../work-shared/gcc-8.3.0-r0/gcc-8.3.0/libsanitizer/libbacktrace/../../libbacktrace/elf.c:772:21: error: 'st.st_mode' may be used uninitialized in this function [-Werror=maybe-uninitialized]
-DEBUG_OPTIMIZATION_append = " -Wno-error"
+DEBUG_OPTIMIZATION:append = " -Wno-error"
 
 BBCLASSEXTEND = "nativesdk"
 
@@ -60,19 +60,19 @@
 PACKAGES += "libasan-dev libubsan-dev liblsan-dev libtsan-dev"
 PACKAGES += "libasan-staticdev libubsan-staticdev liblsan-staticdev libtsan-staticdev"
 
-RDEPENDS_libasan += "libstdc++"
-RDEPENDS_libubsan += "libstdc++"
-RDEPENDS_liblsan += "libstdc++"
-RDEPENDS_libtsan += "libstdc++"
-RDEPENDS_libasan-dev += "${PN}"
-RDEPENDS_libubsan-dev += "${PN}"
-RDEPENDS_liblsan-dev += "${PN}"
-RDEPENDS_libtsan-dev += "${PN}"
-RRECOMMENDS_${PN} += "libasan libubsan"
-RRECOMMENDS_${PN}_append_x86 = " liblsan"
-RRECOMMENDS_${PN}_append_x86-64 = " liblsan libtsan"
-RRECOMMENDS_${PN}_append_powerpc64 = " liblsan libtsan"
-RRECOMMENDS_${PN}_append_aarch64 = " liblsan libtsan"
+RDEPENDS:libasan += "libstdc++"
+RDEPENDS:libubsan += "libstdc++"
+RDEPENDS:liblsan += "libstdc++"
+RDEPENDS:libtsan += "libstdc++"
+RDEPENDS:libasan-dev += "${PN}"
+RDEPENDS:libubsan-dev += "${PN}"
+RDEPENDS:liblsan-dev += "${PN}"
+RDEPENDS:libtsan-dev += "${PN}"
+RRECOMMENDS:${PN} += "libasan libubsan"
+RRECOMMENDS:${PN}:append:x86 = " liblsan"
+RRECOMMENDS:${PN}:append:x86-64 = " liblsan libtsan"
+RRECOMMENDS:${PN}:append:powerpc64 = " liblsan libtsan"
+RRECOMMENDS:${PN}:append:aarch64 = " liblsan libtsan"
 
 do_package_write_ipk[depends] += "virtual/${MLPREFIX}${TARGET_PREFIX}compilerlibs:do_packagedata"
 do_package_write_deb[depends] += "virtual/${MLPREFIX}${TARGET_PREFIX}compilerlibs:do_packagedata"
@@ -81,40 +81,40 @@
 # Only x86, powerpc, sparc, s390, arm, and aarch64 are supported
 COMPATIBLE_HOST = '(x86_64|i.86|powerpc|sparc|s390|arm|aarch64).*-linux'
 # musl is currently broken entirely
-COMPATIBLE_HOST_libc-musl = 'null'
+COMPATIBLE_HOST:libc-musl = 'null'
 
-FILES_libasan += "${libdir}/libasan.so.* ${libdir}/libhwasan.so.*"
-FILES_libasan-dev += "\
+FILES:libasan += "${libdir}/libasan.so.* ${libdir}/libhwasan.so.*"
+FILES:libasan-dev += "\
     ${libdir}/libasan_preinit.o \
     ${libdir}/libasan.so \
     ${libdir}/libhwasan.so \
     ${libdir}/libasan.la \
 "
-FILES_libasan-staticdev += "${libdir}/libasan.a \
+FILES:libasan-staticdev += "${libdir}/libasan.a \
     ${libdir}/libhwasan.a \
 "
 
-FILES_libubsan += "${libdir}/libubsan.so.*"
-FILES_libubsan-dev += "\
+FILES:libubsan += "${libdir}/libubsan.so.*"
+FILES:libubsan-dev += "\
     ${libdir}/libubsan.so \
     ${libdir}/libubsan.la \
 "
-FILES_libubsan-staticdev += "${libdir}/libubsan.a"
+FILES:libubsan-staticdev += "${libdir}/libubsan.a"
 
-FILES_liblsan += "${libdir}/liblsan.so.*"
-FILES_liblsan-dev += "\
+FILES:liblsan += "${libdir}/liblsan.so.*"
+FILES:liblsan-dev += "\
     ${libdir}/liblsan.so \
     ${libdir}/liblsan.la \
     ${libdir}/liblsan_preinit.o \
 "
-FILES_liblsan-staticdev += "${libdir}/liblsan.a"
+FILES:liblsan-staticdev += "${libdir}/liblsan.a"
 
-FILES_libtsan += "${libdir}/libtsan.so.*"
-FILES_libtsan-dev += "\
+FILES:libtsan += "${libdir}/libtsan.so.*"
+FILES:libtsan-dev += "\
     ${libdir}/libtsan.so \
     ${libdir}/libtsan.la \
     ${libdir}/libtsan_*.o \
 "
-FILES_libtsan-staticdev += "${libdir}/libtsan.a"
+FILES:libtsan-staticdev += "${libdir}/libtsan.a"
 
-FILES_${PN} = "${libdir}/*.spec ${libdir}/${TARGET_SYS}/${BINV}/include/sanitizer/*.h"
+FILES:${PN} = "${libdir}/*.spec ${libdir}/${TARGET_SYS}/${BINV}/include/sanitizer/*.h"
diff --git a/poky/meta/recipes-devtools/gcc/gcc-sanitizers_11.1.bb b/poky/meta/recipes-devtools/gcc/gcc-sanitizers_11.2.bb
similarity index 74%
rename from poky/meta/recipes-devtools/gcc/gcc-sanitizers_11.1.bb
rename to poky/meta/recipes-devtools/gcc/gcc-sanitizers_11.2.bb
index f3c7058..8bda2cc 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-sanitizers_11.1.bb
+++ b/poky/meta/recipes-devtools/gcc/gcc-sanitizers_11.2.bb
@@ -3,5 +3,5 @@
 
 # Building with thumb enabled on armv4t armv5t fails with
 # sanitizer_linux.s:5749: Error: lo register required -- `ldr ip,[sp],#8'
-ARM_INSTRUCTION_SET_armv4 = "arm"
-ARM_INSTRUCTION_SET_armv5 = "arm"
+ARM_INSTRUCTION_SET:armv4 = "arm"
+ARM_INSTRUCTION_SET:armv5 = "arm"
diff --git a/poky/meta/recipes-devtools/gcc/gcc-source_11.1.bb b/poky/meta/recipes-devtools/gcc/gcc-source_11.2.bb
similarity index 100%
rename from poky/meta/recipes-devtools/gcc/gcc-source_11.1.bb
rename to poky/meta/recipes-devtools/gcc/gcc-source_11.2.bb
diff --git a/poky/meta/recipes-devtools/gcc/gcc-target.inc b/poky/meta/recipes-devtools/gcc/gcc-target.inc
index 0ee3e83..bf55e69 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-target.inc
+++ b/poky/meta/recipes-devtools/gcc/gcc-target.inc
@@ -5,7 +5,7 @@
     --with-build-sysroot=${STAGING_DIR_TARGET} \
 "
 
-EXTRA_OECONF_append_linuxstdbase = " --enable-clocale=gnu"
+EXTRA_OECONF:append:linuxstdbase = " --enable-clocale=gnu"
 
 # Configure gcc running on the target to default to an architecture which will
 # be compatible with that of gcc-runtime (which is cross compiled to be target
@@ -15,11 +15,11 @@
 
 ARMFPARCHEXT ?= ""
 
-EXTRA_OECONF_append_armv6_class-target = " --with-arch=armv6${ARMFPARCHEXT}"
-EXTRA_OECONF_append_armv7a_class-target = " --with-arch=armv7-a${ARMFPARCHEXT}"
-EXTRA_OECONF_append_armv7ve_class-target = " --with-arch=armv7ve${ARMFPARCHEXT}"
-EXTRA_OECONF_append_arc_class-target = " --with-cpu=${TUNE_PKGARCH}"
-EXTRA_OECONF_append_x86-64_class-target = " --with-arch=native"
+EXTRA_OECONF:append:armv6:class-target = " --with-arch=armv6${ARMFPARCHEXT}"
+EXTRA_OECONF:append:armv7a:class-target = " --with-arch=armv7-a${ARMFPARCHEXT}"
+EXTRA_OECONF:append:armv7ve:class-target = " --with-arch=armv7ve${ARMFPARCHEXT}"
+EXTRA_OECONF:append:arc:class-target = " --with-cpu=${TUNE_PKGARCH}"
+EXTRA_OECONF:append:x86-64:class-target = " --with-arch=native"
 
 # libcc1 requres gcc_cv_objdump when cross build, but gcc_cv_objdump is
 # set in subdir gcc, so subdir libcc1 can't use it, export it here to
@@ -40,7 +40,7 @@
     ${PN}-dbg \
 "
 
-FILES_${PN} = "\
+FILES:${PN} = "\
     ${bindir}/${TARGET_PREFIX}gcc* \
     ${bindir}/${TARGET_PREFIX}lto* \
     ${libexecdir}/gcc/${TARGET_SYS}/${BINV}/collect2* \
@@ -56,85 +56,85 @@
     ${gcclibdir}/${TARGET_SYS}/${BINV}/include-fixed \
     ${libdir}/bfd-plugins/*.so \
 "
-INSANE_SKIP_${PN} += "dev-so"
-RRECOMMENDS_${PN} += "\
+INSANE_SKIP:${PN} += "dev-so"
+RRECOMMENDS:${PN} += "\
     libssp \
     libssp-dev \
 "
-RDEPENDS_${PN} += "cpp"
+RDEPENDS:${PN} += "cpp"
 
-FILES_${PN}-dev = "\
+FILES:${PN}-dev = "\
     ${gcclibdir}/${TARGET_SYS}/${BINV}/lib*${SOLIBSDEV} \
     ${libexecdir}/gcc/${TARGET_SYS}/${BINV}/lib*${SOLIBSDEV} \
     ${gcclibdir}/${TARGET_SYS}/${BINV}/plugin/include/ \
     ${libexecdir}/gcc/${TARGET_SYS}/${BINV}/plugin/gengtype \
     ${gcclibdir}/${TARGET_SYS}/${BINV}/plugin/gtype.state \
 "
-FILES_${PN}-symlinks = "\
+FILES:${PN}-symlinks = "\
     ${bindir}/cc \
     ${bindir}/gcc \
     ${bindir}/gccbug \
 "
 
-FILES_${PN}-plugins = "\
+FILES:${PN}-plugins = "\
     ${gcclibdir}/${TARGET_SYS}/${BINV}/plugin \
 "
-ALLOW_EMPTY_${PN}-plugins = "1"
+ALLOW_EMPTY:${PN}-plugins = "1"
 
-FILES_g77 = "\
+FILES:g77 = "\
     ${bindir}/${TARGET_PREFIX}g77 \
     ${libexecdir}/gcc/${TARGET_SYS}/${BINV}/f771 \
 "
-FILES_g77-symlinks = "\
+FILES:g77-symlinks = "\
     ${bindir}/g77 \
     ${bindir}/f77 \
 "
-RRECOMMENDS_g77 = "\
+RRECOMMENDS:g77 = "\
     libg2c \
     libg2c-dev \
 "
 
-FILES_gfortran = "\
+FILES:gfortran = "\
     ${bindir}/${TARGET_PREFIX}gfortran \
     ${libexecdir}/gcc/${TARGET_SYS}/${BINV}/f951 \
 "
-RRECOMMENDS_gfortran = "\
+RRECOMMENDS:gfortran = "\
     libquadmath \
     libquadmath-dev \
 "
-FILES_gfortran-symlinks = "\
+FILES:gfortran-symlinks = "\
     ${bindir}/gfortran \
     ${bindir}/f95"
 
-FILES_cpp = "\
+FILES:cpp = "\
     ${bindir}/${TARGET_PREFIX}cpp* \
     ${base_libdir}/cpp \
     ${libexecdir}/gcc/${TARGET_SYS}/${BINV}/cc1"
-FILES_cpp-symlinks = "${bindir}/cpp"
+FILES:cpp-symlinks = "${bindir}/cpp"
 
-FILES_gcov = "${bindir}/${TARGET_PREFIX}gcov* \
+FILES:gcov = "${bindir}/${TARGET_PREFIX}gcov* \
     ${bindir}/${TARGET_PREFIX}gcov-tool* \
 "
-FILES_gcov-symlinks = "${bindir}/gcov \
+FILES:gcov-symlinks = "${bindir}/gcov \
     ${bindir}/gcov-tool \
 "
 
-FILES_g++ = "\
+FILES:g++ = "\
     ${bindir}/${TARGET_PREFIX}g++* \
     ${libexecdir}/gcc/${TARGET_SYS}/${BINV}/cc1plus \
 "
-FILES_g++-symlinks = "\
+FILES:g++-symlinks = "\
     ${bindir}/c++ \
     ${bindir}/g++ \
 "
-RRECOMMENDS_g++ = "\
+RRECOMMENDS:g++ = "\
     libstdc++ \
     libstdc++-dev \
     libatomic \
     libatomic-dev \
 "
 
-FILES_${PN}-doc = "\
+FILES:${PN}-doc = "\
     ${infodir} \
     ${mandir} \
     ${gcclibdir}/${TARGET_SYS}/${BINV}/include/README \
@@ -221,7 +221,7 @@
 	chown -R root:root ${D}
 }
 
-do_install_append () {
+do_install:append () {
         #
         # Thefixinc.sh script, run on the gcc's compile phase, looks into sysroot header
         # files and places the modified files into
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0001-libstdc-Fix-installation-of-python-hooks-PR-99453.patch b/poky/meta/recipes-devtools/gcc/gcc/0001-libstdc-Fix-installation-of-python-hooks-PR-99453.patch
deleted file mode 100644
index d82f533..0000000
--- a/poky/meta/recipes-devtools/gcc/gcc/0001-libstdc-Fix-installation-of-python-hooks-PR-99453.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-Upstream-Status: Backport
-Signed-off-by: Ross Burton <ross.burton@arm.com>
-
-From ad4c21f0f59b52357019148ec94d767aa2acd8f2 Mon Sep 17 00:00:00 2001
-From: Jonathan Wakely <jwakely@redhat.com>
-Date: Tue, 1 Jun 2021 11:00:16 +0100
-Subject: [PATCH] libstdc++: Fix installation of python hooks [PR 99453]
-
-When no shared library is installed, the new code to determine the name
-of the -gdb.py file yields an empty string. Use the name of the static
-library in that case.
-
-libstdc++-v3/ChangeLog:
-
-	PR libstdc++/99453
-	* python/Makefile.am: Use archive name for printer hook if no
-	dynamic library name is available.
-	* python/Makefile.in: Regenerate.
-
-(cherry picked from commit 9f7bc160b4a0f27dce248d1226e3ae7104b0e67b)
----
- libstdc++-v3/python/Makefile.am | 4 ++++
- libstdc++-v3/python/Makefile.in | 4 ++++
- 2 files changed, 8 insertions(+)
-
-diff --git a/libstdc++-v3/python/Makefile.am b/libstdc++-v3/python/Makefile.am
-index 0c2b207b86e..8efefa5725c 100644
---- a/libstdc++-v3/python/Makefile.am
-+++ b/libstdc++-v3/python/Makefile.am
-@@ -48,5 +48,9 @@ install-data-local: gdb.py
- ## the correct name.
- 	@libname=`sed -ne "/^library_names=/{s/.*='//;s/'$$//;s/ .*//;p;}" \
- 	          $(DESTDIR)$(toolexeclibdir)/libstdc++.la`; \
-+	if [ -z "$$libname" ]; then \
-+	  libname=`sed -ne "/^old_library=/{s/.*='//;s/'$$//;s/ .*//;p;}" \
-+		  $(DESTDIR)$(toolexeclibdir)/libstdc++.la`; \
-+	fi; \
- 	echo " $(INSTALL_DATA) gdb.py $(DESTDIR)$(toolexeclibdir)/$$libname-gdb.py"; \
- 	$(INSTALL_DATA) gdb.py $(DESTDIR)$(toolexeclibdir)/$$libname-gdb.py
-diff --git a/libstdc++-v3/python/Makefile.in b/libstdc++-v3/python/Makefile.in
-index 2efe0b96a19..9904a9197de 100644
---- a/libstdc++-v3/python/Makefile.in
-+++ b/libstdc++-v3/python/Makefile.in
-@@ -609,6 +609,10 @@ install-data-local: gdb.py
- 	@$(mkdir_p) $(DESTDIR)$(toolexeclibdir)
- 	@libname=`sed -ne "/^library_names=/{s/.*='//;s/'$$//;s/ .*//;p;}" \
- 	          $(DESTDIR)$(toolexeclibdir)/libstdc++.la`; \
-+	if [ -z "$$libname" ]; then \
-+	  libname=`sed -ne "/^old_library=/{s/.*='//;s/'$$//;s/ .*//;p;}" \
-+		  $(DESTDIR)$(toolexeclibdir)/libstdc++.la`; \
-+	fi; \
- 	echo " $(INSTALL_DATA) gdb.py $(DESTDIR)$(toolexeclibdir)/$$libname-gdb.py"; \
- 	$(INSTALL_DATA) gdb.py $(DESTDIR)$(toolexeclibdir)/$$libname-gdb.py
- 
--- 
-2.25.1
-
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0038-arc-Update-64bit-move-split-patterns.patch b/poky/meta/recipes-devtools/gcc/gcc/0038-arc-Update-64bit-move-split-patterns.patch
deleted file mode 100644
index 37fe95d..0000000
--- a/poky/meta/recipes-devtools/gcc/gcc/0038-arc-Update-64bit-move-split-patterns.patch
+++ /dev/null
@@ -1,290 +0,0 @@
-From 0061fabeb9393c362601486105202cfe837a5a68 Mon Sep 17 00:00:00 2001
-From: Claudiu Zissulescu <claziss@synopsys.com>
-Date: Wed, 9 Jun 2021 12:12:57 +0300
-Subject: [PATCH] arc: Update 64bit move split patterns.
-
-ARCv2HS can use a limited number of instructions to implement 64bit
-moves. The VADD2 is used as a 64bit move, the LDD/STD are 64 bit loads
-and stores. All those instructions are not baseline, hence we need to
-provide alternatives when they are not available or cannot be generate
-due to instruction restriction.
-
-This patch is cleaning up those move patterns, and updates splits
-instruction lengths.
-
-This is a backport from mainline gcc.
-
-gcc/
-2021-06-09  Claudiu Zissulescu  <claziss@synopsys.com>
-
-	* config/arc/arc-protos.h (arc_split_move_p): New prototype.
-	* config/arc/arc.c (arc_split_move_p): New function.
-	(arc_split_move): Clean up.
-	* config/arc/arc.md (movdi_insn): Clean up, use arc_split_move_p.
-	(movdf_insn): Likewise.
-	* config/arc/simdext.md (mov<VWH>_insn): Likewise.
-
-Upstream-Status: Backport [https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=0061fabeb9393c362601486105202cfe837a5a68]
-
-Signed-off-by: Claudiu Zissulescu <claziss@synopsys.com>
-(cherry picked from commit c0ba7a8af5366c37241f20e8be41e362f7260389)
-Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
----
- gcc/config/arc/arc-protos.h |  1 +
- gcc/config/arc/arc.c        | 44 ++++++++++++----------
- gcc/config/arc/arc.md       | 91 +++++++++------------------------------------
- gcc/config/arc/simdext.md   | 38 ++++---------------
- 4 files changed, 52 insertions(+), 122 deletions(-)
-
-diff --git a/gcc/config/arc/arc-protos.h b/gcc/config/arc/arc-protos.h
-index 1f56a0d82e4..62d7e45d29d 100644
---- a/gcc/config/arc/arc-protos.h
-+++ b/gcc/config/arc/arc-protos.h
-@@ -50,6 +50,7 @@ extern void arc_split_ior (rtx *);
- extern bool arc_check_mov_const (HOST_WIDE_INT );
- extern bool arc_split_mov_const (rtx *);
- extern bool arc_can_use_return_insn (void);
-+extern bool arc_split_move_p (rtx *);
- #endif /* RTX_CODE */
- 
- extern bool arc_ccfsm_branch_deleted_p (void);
-diff --git a/gcc/config/arc/arc.c b/gcc/config/arc/arc.c
-index 3201c3fefd7..db541bc11f5 100644
---- a/gcc/config/arc/arc.c
-+++ b/gcc/config/arc/arc.c
-@@ -10129,6 +10129,31 @@ arc_process_double_reg_moves (rtx *operands)
-   return true;
- }
- 
-+
-+/* Check if we need to split a 64bit move.  We do not need to split it if we can
-+   use vadd2 or ldd/std instructions.  */
-+
-+bool
-+arc_split_move_p (rtx *operands)
-+{
-+  machine_mode mode = GET_MODE (operands[0]);
-+
-+  if (TARGET_LL64
-+      && ((memory_operand (operands[0], mode)
-+	   && (even_register_operand (operands[1], mode)
-+	       || satisfies_constraint_Cm3 (operands[1])))
-+	  || (memory_operand (operands[1], mode)
-+	      && even_register_operand (operands[0], mode))))
-+    return false;
-+
-+  if (TARGET_PLUS_QMACW
-+      && even_register_operand (operands[0], mode)
-+      && even_register_operand (operands[1], mode))
-+    return false;
-+
-+  return true;
-+}
-+
- /* operands 0..1 are the operands of a 64 bit move instruction.
-    split it into two moves with operands 2/3 and 4/5.  */
- 
-@@ -10146,25 +10171,6 @@ arc_split_move (rtx *operands)
-       return;
-   }
- 
--  if (TARGET_LL64
--      && ((memory_operand (operands[0], mode)
--	   && (even_register_operand (operands[1], mode)
--	       || satisfies_constraint_Cm3 (operands[1])))
--	  || (memory_operand (operands[1], mode)
--	      && even_register_operand (operands[0], mode))))
--    {
--      emit_move_insn (operands[0], operands[1]);
--      return;
--    }
--
--  if (TARGET_PLUS_QMACW
--      && even_register_operand (operands[0], mode)
--      && even_register_operand (operands[1], mode))
--    {
--      emit_move_insn (operands[0], operands[1]);
--      return;
--    }
--
-   if (TARGET_PLUS_QMACW
-       && GET_CODE (operands[1]) == CONST_VECTOR)
-     {
-diff --git a/gcc/config/arc/arc.md b/gcc/config/arc/arc.md
-index 7a52551eef5..91a838a38e4 100644
---- a/gcc/config/arc/arc.md
-+++ b/gcc/config/arc/arc.md
-@@ -1329,47 +1329,20 @@ core_3, archs4x, archs4xd, archs4xd_slow"
-   "register_operand (operands[0], DImode)
-    || register_operand (operands[1], DImode)
-    || (satisfies_constraint_Cm3 (operands[1])
--      && memory_operand (operands[0], DImode))"
--  "*
--{
--  switch (which_alternative)
--    {
--    default:
--      return \"#\";
--
--    case 0:
--    if (TARGET_PLUS_QMACW
--	&& even_register_operand (operands[0], DImode)
--	&& even_register_operand (operands[1], DImode))
--      return \"vadd2%?\\t%0,%1,0\";
--    return \"#\";
--
--    case 2:
--    if (TARGET_LL64
--        && memory_operand (operands[1], DImode)
--	&& even_register_operand (operands[0], DImode))
--      return \"ldd%U1%V1 %0,%1%&\";
--    return \"#\";
--
--    case 3:
--    if (TARGET_LL64
--	&& memory_operand (operands[0], DImode)
--	&& (even_register_operand (operands[1], DImode)
--	    || satisfies_constraint_Cm3 (operands[1])))
--     return \"std%U0%V0 %1,%0\";
--    return \"#\";
--    }
--}"
--  "&& reload_completed"
-+       && memory_operand (operands[0], DImode))"
-+  "@
-+   vadd2\\t%0,%1,0
-+   #
-+   ldd%U1%V1\\t%0,%1
-+   std%U0%V0\\t%1,%0"
-+  "&& reload_completed && arc_split_move_p (operands)"
-   [(const_int 0)]
-   {
-    arc_split_move (operands);
-    DONE;
-   }
-   [(set_attr "type" "move,move,load,store")
--   ;; ??? The ld/st values could be 4 if it's [reg,bignum].
--   (set_attr "length" "8,16,*,*")])
--
-+   (set_attr "length" "8,16,16,16")])
- 
- ;; Floating point move insns.
- 
-@@ -1408,50 +1381,22 @@ core_3, archs4x, archs4xd, archs4xd_slow"
- (define_insn_and_split "*movdf_insn"
-   [(set (match_operand:DF 0 "move_dest_operand"      "=D,r,r,r,r,m")
- 	(match_operand:DF 1 "move_double_src_operand" "r,D,r,E,m,r"))]
--  "register_operand (operands[0], DFmode)
--   || register_operand (operands[1], DFmode)"
--  "*
--{
-- switch (which_alternative)
--   {
--    default:
--      return \"#\";
--
--    case 2:
--    if (TARGET_PLUS_QMACW
--	&& even_register_operand (operands[0], DFmode)
--	&& even_register_operand (operands[1], DFmode))
--      return \"vadd2%?\\t%0,%1,0\";
--    return \"#\";
--
--    case 4:
--    if (TARGET_LL64
--	&& ((even_register_operand (operands[0], DFmode)
--	     && memory_operand (operands[1], DFmode))
--	    || (memory_operand (operands[0], DFmode)
--	        && even_register_operand (operands[1], DFmode))))
--      return \"ldd%U1%V1 %0,%1%&\";
--    return \"#\";
--
--    case 5:
--    if (TARGET_LL64
--	&& ((even_register_operand (operands[0], DFmode)
--	     && memory_operand (operands[1], DFmode))
--	    || (memory_operand (operands[0], DFmode)
--		&& even_register_operand (operands[1], DFmode))))
--     return \"std%U0%V0 %1,%0\";
--    return \"#\";
--   }
--}"
--  "reload_completed"
-+  "(register_operand (operands[0], DFmode)
-+    || register_operand (operands[1], DFmode))"
-+  "@
-+   #
-+   #
-+   vadd2\\t%0,%1,0
-+   #
-+   ldd%U1%V1\\t%0,%1
-+   std%U0%V0\\t%1,%0"
-+  "&& reload_completed && arc_split_move_p (operands)"
-   [(const_int 0)]
-   {
-    arc_split_move (operands);
-    DONE;
-   }
-   [(set_attr "type" "move,move,move,move,load,store")
--   (set_attr "predicable" "no,no,no,yes,no,no")
--   ;; ??? The ld/st values could be 16 if it's [reg,bignum].
-    (set_attr "length" "4,16,8,16,16,16")])
- 
- (define_insn_and_split "*movdf_insn_nolrsr"
-diff --git a/gcc/config/arc/simdext.md b/gcc/config/arc/simdext.md
-index f0900757452..36f41a5c3d0 100644
---- a/gcc/config/arc/simdext.md
-+++ b/gcc/config/arc/simdext.md
-@@ -1402,41 +1402,19 @@
- 	(match_operand:VWH 1 "general_operand"    "i,r,m,r"))]
-   "(register_operand (operands[0], <MODE>mode)
-        || register_operand (operands[1], <MODE>mode))"
--  "*
--{
--  switch (which_alternative)
--    {
--     default:
--       return \"#\";
--
--     case 1:
--       if (TARGET_PLUS_QMACW
--           && even_register_operand (operands[0], <MODE>mode)
--	   && even_register_operand (operands[1], <MODE>mode))
--         return \"vadd2%?\\t%0,%1,0\";
--       return \"#\";
--
--     case 2:
--       if (TARGET_LL64)
--         return \"ldd%U1%V1 %0,%1\";
--       return \"#\";
--
--     case 3:
--       if (TARGET_LL64)
--	   return \"std%U0%V0 %1,%0\";
--	 return \"#\";
--    }
--}"
--  "reload_completed"
-+  "@
-+   #
-+   vadd2\\t%0,%1,0
-+   ldd%U1%V1\\t%0,%1
-+   std%U0%V0\\t%1,%0"
-+  "&& reload_completed && arc_split_move_p (operands)"
-   [(const_int 0)]
-   {
-    arc_split_move (operands);
-    DONE;
-   }
--  [(set_attr "type" "move,multi,load,store")
--   (set_attr "predicable" "no,no,no,no")
--   (set_attr "iscompact"  "false,false,false,false")
--   ])
-+  [(set_attr "type" "move,move,load,store")
-+   (set_attr "length" "16,8,16,16")])
- 
- (define_expand "movmisalign<mode>"
-  [(set (match_operand:VWH 0 "general_operand" "")
--- 
-2.16.2
-
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0039-arc-Fix-u-maddhisi-patterns.patch b/poky/meta/recipes-devtools/gcc/gcc/0039-arc-Fix-u-maddhisi-patterns.patch
deleted file mode 100644
index 9c5a2b8..0000000
--- a/poky/meta/recipes-devtools/gcc/gcc/0039-arc-Fix-u-maddhisi-patterns.patch
+++ /dev/null
@@ -1,127 +0,0 @@
-From 4186b7e93be73f8d68dc0fcc00a4cc8cc83e99a8 Mon Sep 17 00:00:00 2001
-From: Claudiu Zissulescu <claziss@synopsys.com>
-Date: Wed, 9 Jun 2021 12:12:57 +0300
-Subject: [PATCH] arc: Fix (u)maddhisi patterns
-
-Rework the (u)maddhisi4 patterns and use VMAC2H(U) instruction instead
-of the 64bit MAC(U) instruction.
-This fixes the next execute.exp failures:
-     arith-rand-ll.c   -O2  execution test
-     arith-rand-ll.c   -O3  execution test
-     pr78726.c   -O2  execution test
-     pr78726.c   -O3  execution test
-
-gcc/
-2021-06-09  Claudiu Zissulescu  <claziss@synopsys.com>
-
-	* config/arc/arc.md (maddhisi4): Use VMAC2H instruction.
-	(machi): New pattern.
-	(umaddhisi4): Use VMAC2HU instruction.
-	(umachi): New pattern.
-
-Upstream-Status: Backport [https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=4186b7e93be73f8d68dc0fcc00a4cc8cc83e99a8]
-
-Signed-off-by: Claudiu Zissulescu <claziss@synopsys.com>
-(cherry picked from commit dd4778a59b4693777c732075021375e19eee6a76)
-Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
----
- gcc/config/arc/arc.md | 66 ++++++++++++++++++++++++++++++++-------------------
- 1 file changed, 41 insertions(+), 25 deletions(-)
-
-diff --git a/gcc/config/arc/arc.md b/gcc/config/arc/arc.md
-index 91a838a38e4..2a7e087ff72 100644
---- a/gcc/config/arc/arc.md
-+++ b/gcc/config/arc/arc.md
-@@ -6053,48 +6053,64 @@ core_3, archs4x, archs4xd, archs4xd_slow"
- 
- ;; MAC and DMPY instructions
- 
--; Use MAC instruction to emulate 16bit mac.
-+; Use VMAC2H(U) instruction to emulate scalar 16bit mac.
- (define_expand "maddhisi4"
-   [(match_operand:SI 0 "register_operand" "")
-    (match_operand:HI 1 "register_operand" "")
-    (match_operand:HI 2 "extend_operand"   "")
-    (match_operand:SI 3 "register_operand" "")]
--  "TARGET_PLUS_DMPY"
-+  "TARGET_PLUS_MACD"
-   "{
--   rtx acc_reg = gen_rtx_REG (DImode, ACC_REG_FIRST);
--   rtx tmp1 = gen_reg_rtx (SImode);
--   rtx tmp2 = gen_reg_rtx (SImode);
--   rtx accl = gen_lowpart (SImode, acc_reg);
--
--   emit_move_insn (accl, operands[3]);
--   emit_insn (gen_rtx_SET (tmp1, gen_rtx_SIGN_EXTEND (SImode, operands[1])));
--   emit_insn (gen_rtx_SET (tmp2, gen_rtx_SIGN_EXTEND (SImode, operands[2])));
--   emit_insn (gen_mac (tmp1, tmp2));
--   emit_move_insn (operands[0], accl);
-+   rtx acc_reg = gen_rtx_REG (SImode, ACC_REG_FIRST);
-+
-+   emit_move_insn (acc_reg, operands[3]);
-+   emit_insn (gen_machi (operands[1], operands[2]));
-+   emit_move_insn (operands[0], acc_reg);
-    DONE;
-   }")
- 
--; The same for the unsigned variant, but using MACU instruction.
-+(define_insn "machi"
-+  [(set (reg:SI ARCV2_ACC)
-+	(plus:SI
-+	 (mult:SI (sign_extend:SI (match_operand:HI 0 "register_operand" "%r"))
-+		  (sign_extend:SI (match_operand:HI 1 "register_operand" "r")))
-+	 (reg:SI ARCV2_ACC)))]
-+  "TARGET_PLUS_MACD"
-+  "vmac2h\\t0,%0,%1"
-+  [(set_attr "length" "4")
-+   (set_attr "type" "multi")
-+   (set_attr "predicable" "no")
-+   (set_attr "cond" "nocond")])
-+
-+; The same for the unsigned variant, but using VMAC2HU instruction.
- (define_expand "umaddhisi4"
-   [(match_operand:SI 0 "register_operand" "")
-    (match_operand:HI 1 "register_operand" "")
--   (match_operand:HI 2 "extend_operand"   "")
-+   (match_operand:HI 2 "register_operand" "")
-    (match_operand:SI 3 "register_operand" "")]
--  "TARGET_PLUS_DMPY"
-+  "TARGET_PLUS_MACD"
-   "{
--   rtx acc_reg = gen_rtx_REG (DImode, ACC_REG_FIRST);
--   rtx tmp1 = gen_reg_rtx (SImode);
--   rtx tmp2 = gen_reg_rtx (SImode);
--   rtx accl = gen_lowpart (SImode, acc_reg);
--
--   emit_move_insn (accl, operands[3]);
--   emit_insn (gen_rtx_SET (tmp1, gen_rtx_ZERO_EXTEND (SImode, operands[1])));
--   emit_insn (gen_rtx_SET (tmp2, gen_rtx_ZERO_EXTEND (SImode, operands[2])));
--   emit_insn (gen_macu (tmp1, tmp2));
--   emit_move_insn (operands[0], accl);
-+   rtx acc_reg = gen_rtx_REG (SImode, ACC_REG_FIRST);
-+
-+   emit_move_insn (acc_reg, operands[3]);
-+   emit_insn (gen_umachi (operands[1], operands[2]));
-+   emit_move_insn (operands[0], acc_reg);
-    DONE;
-   }")
- 
-+(define_insn "umachi"
-+  [(set (reg:SI ARCV2_ACC)
-+	(plus:SI
-+	 (mult:SI (zero_extend:SI (match_operand:HI 0 "register_operand" "%r"))
-+		  (zero_extend:SI (match_operand:HI 1 "register_operand" "r")))
-+	 (reg:SI ARCV2_ACC)))]
-+  "TARGET_PLUS_MACD"
-+  "vmac2hu\\t0,%0,%1"
-+  [(set_attr "length" "4")
-+   (set_attr "type" "multi")
-+   (set_attr "predicable" "no")
-+   (set_attr "cond" "nocond")])
-+
- (define_expand "maddsidi4"
-   [(match_operand:DI 0 "register_operand" "")
-    (match_operand:SI 1 "register_operand" "")
--- 
-2.16.2
-
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0040-arc-Update-doloop_end-patterns.patch b/poky/meta/recipes-devtools/gcc/gcc/0040-arc-Update-doloop_end-patterns.patch
deleted file mode 100644
index 5f0bf8d..0000000
--- a/poky/meta/recipes-devtools/gcc/gcc/0040-arc-Update-doloop_end-patterns.patch
+++ /dev/null
@@ -1,105 +0,0 @@
-From 5a9b6a004f89fdd95b0470e1324dc4dee8c41d24 Mon Sep 17 00:00:00 2001
-From: Claudiu Zissulescu <claziss@synopsys.com>
-Date: Wed, 9 Jun 2021 12:12:57 +0300
-Subject: [PATCH] arc: Update doloop_end patterns
-
-ARC processor can use LP instruction to implement zero overlay loops.
-The current inplementation doesn't handle the unlikely situation when
-the loop iterator is located in memory.  Refurbish the loop_end insn
-pattern into a define_insn_and_split pattern.
-
-gcc/
-2021-07-09  Claudiu Zissulescu  <claziss@synopsys.com>
-
-	* config/arc/arc.md (loop_end): Change it to
-	define_insn_and_split.
-
-Upstream-Status: Backport [https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=5a9b6a004f89fdd95b0470e1324dc4dee8c41d24]
-
-Signed-off-by: Claudiu Zissulescu <claziss@synopsys.com>
-(cherry picked from commit 174e75a210753b68de0f2c398a13ace0f512e35b)
-Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
----
- gcc/config/arc/arc.md | 46 ++++++++++++++++++++--------------------------
- 1 file changed, 20 insertions(+), 26 deletions(-)
-
-diff --git a/gcc/config/arc/arc.md b/gcc/config/arc/arc.md
-index 2a7e087ff72..d704044c13f 100644
---- a/gcc/config/arc/arc.md
-+++ b/gcc/config/arc/arc.md
-@@ -4986,7 +4986,7 @@ core_3, archs4x, archs4xd, archs4xd_slow"
- (define_expand "doloop_end"
-   [(parallel [(set (pc)
- 		   (if_then_else
--		    (ne (match_operand 0 "" "")
-+		    (ne (match_operand 0 "nonimmediate_operand")
- 			(const_int 1))
- 		    (label_ref (match_operand 1 "" ""))
- 		    (pc)))
-@@ -5012,44 +5012,38 @@ core_3, archs4x, archs4xd, archs4xd_slow"
- 
- ;; if by any chance the lp_count is not used, then use an 'r'
- ;; register, instead of going to memory.
--(define_insn "loop_end"
--  [(set (pc)
--	(if_then_else (ne (match_operand:SI 2 "nonimmediate_operand" "0,m")
--			  (const_int 1))
--		      (label_ref (match_operand 1 "" ""))
--		      (pc)))
--   (set (match_operand:SI 0 "nonimmediate_operand" "=r,m")
--	(plus (match_dup 2) (const_int -1)))
--   (unspec [(const_int 0)] UNSPEC_ARC_LP)
--   (clobber (match_scratch:SI 3 "=X,&r"))]
--  ""
--  "; ZOL_END, begins @%l1"
--  [(set_attr "length" "0")
--   (set_attr "predicable" "no")
--   (set_attr "type" "loop_end")])
--
- ;; split pattern for the very slim chance when the loop register is
- ;; memory.
--(define_split
-+(define_insn_and_split "loop_end"
-   [(set (pc)
--	(if_then_else (ne (match_operand:SI 0 "memory_operand")
-+	(if_then_else (ne (match_operand:SI 0 "nonimmediate_operand" "+r,!m")
- 			  (const_int 1))
--		      (label_ref (match_operand 1 ""))
-+		      (label_ref (match_operand 1 "" ""))
- 		      (pc)))
-    (set (match_dup 0) (plus (match_dup 0) (const_int -1)))
-    (unspec [(const_int 0)] UNSPEC_ARC_LP)
--   (clobber (match_scratch:SI 2))]
--  "memory_operand (operands[0], SImode)"
-+   (clobber (match_scratch:SI 2 "=X,&r"))]
-+  ""
-+  "@
-+   ; ZOL_END, begins @%l1
-+   #"
-+  "reload_completed && memory_operand (operands[0], Pmode)"
-   [(set (match_dup 2) (match_dup 0))
--   (set (match_dup 2) (plus:SI (match_dup 2) (const_int -1)))
-+   (parallel
-+    [(set (reg:CC_ZN CC_REG)
-+	  (compare:CC_ZN (plus:SI (match_dup 2) (const_int -1))
-+			 (const_int 0)))
-+     (set (match_dup 2) (plus:SI (match_dup 2) (const_int -1)))])
-    (set (match_dup 0) (match_dup 2))
--   (set (reg:CC CC_REG) (compare:CC (match_dup 2) (const_int 0)))
-    (set (pc)
--	(if_then_else (ne (reg:CC CC_REG)
-+	(if_then_else (ne (reg:CC_ZN CC_REG)
- 			  (const_int 0))
- 		      (label_ref (match_dup 1))
- 		      (pc)))]
--  "")
-+  ""
-+  [(set_attr "length" "0,24")
-+   (set_attr "predicable" "no")
-+   (set_attr "type" "loop_end")])
- 
- (define_insn "loop_fail"
-   [(set (reg:SI LP_COUNT)
--- 
-2.16.2
-
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0041-apply-debug-prefix-maps-before-checksumming-DIEs.patch b/poky/meta/recipes-devtools/gcc/gcc/0041-apply-debug-prefix-maps-before-checksumming-DIEs.patch
new file mode 100644
index 0000000..c8dcd74
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc/0041-apply-debug-prefix-maps-before-checksumming-DIEs.patch
@@ -0,0 +1,95 @@
+From 7cc2df084b7977653a9b59cbc34a9ad500ae619c Mon Sep 17 00:00:00 2001
+From: Richard Biener <rguenther@suse.de>
+Date: Tue, 20 Jul 2021 11:00:33 +0200
+Subject: [PATCH] debug/101473 - apply debug prefix maps before checksumming DIEs
+
+The following makes sure to apply the debug prefix maps to filenames
+before checksumming DIEs to create the global symbol for the CU DIE
+used by LTO to link the late debug to the early debug.  This avoids
+binary differences (in said symbol) when compiling with toolchains
+installed under a different path and that compensated with appropriate
+-fdebug-prefix-map options.
+
+The easiest and most scalable way is to record both the unmapped
+and the remapped filename in the dwarf_file_data so the remapping
+process takes place at a single point and only once (otherwise it
+creates GC garbage at each point doing that).
+
+2021-07-20  Richard Biener  <rguenther@suse.de>
+
+	PR debug/101473
+	* dwarf2out.h (dwarf_file_data): Add key member.
+	* dwarf2out.c (dwarf_file_hasher::equal): Compare key.
+	(dwarf_file_hasher::hash): Hash key.
+	(lookup_filename): Remap the filename and store it in the
+	filename member of dwarf_file_data when creating a new
+	dwarf_file_data.
+	(file_name_acquire): Do not remap the filename again.
+	(maybe_emit_file): Likewise.
+
+[YOCTO #14481]
+
+Upstream-Status: Backport [https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=7cc2df084b7977653a9b59cbc34a9ad500ae619c]
+
+The upstream patch was modified to compensate for the definition of
+"struct dwarf_file_data" being in dwarf2out.c rather than dwarf2out.h in
+this version of gcc.
+
+Signed-off-by: Tony Battersby <tonyb@cybernetics.com>
+---
+diff -urpN a/gcc/dwarf2out.c b/gcc/dwarf2out.c
+--- a/gcc/dwarf2out.c	2021-04-27 06:00:13.000000000 -0400
++++ b/gcc/dwarf2out.c	2021-07-23 16:40:06.141886167 -0400
+@@ -1283,6 +1283,7 @@ dwarf2out_switch_text_section (void)
+ 
+ /* Data about a single source file.  */
+ struct GTY((for_user)) dwarf_file_data {
++  const char * key;
+   const char * filename;
+   int emitted_number;
+ };
+@@ -12334,7 +12335,7 @@ file_name_acquire (dwarf_file_data **slo
+ 
+   fi = fnad->files + fnad->used_files++;
+ 
+-  f = remap_debug_filename (d->filename);
++  f = d->filename;
+ 
+   /* Skip all leading "./".  */
+   while (f[0] == '.' && IS_DIR_SEPARATOR (f[1]))
+@@ -27231,13 +27232,13 @@ dwarf2out_ignore_block (const_tree block
+ bool
+ dwarf_file_hasher::equal (dwarf_file_data *p1, const char *p2)
+ {
+-  return filename_cmp (p1->filename, p2) == 0;
++  return filename_cmp (p1->key, p2) == 0;
+ }
+ 
+ hashval_t
+ dwarf_file_hasher::hash (dwarf_file_data *p)
+ {
+-  return htab_hash_string (p->filename);
++  return htab_hash_string (p->key);
+ }
+ 
+ /* Lookup FILE_NAME (in the list of filenames that we know about here in
+@@ -27267,7 +27268,8 @@ lookup_filename (const char *file_name)
+     return *slot;
+ 
+   created = ggc_alloc<dwarf_file_data> ();
+-  created->filename = file_name;
++  created->key = file_name;
++  created->filename = remap_debug_filename (file_name);
+   created->emitted_number = 0;
+   *slot = created;
+   return created;
+@@ -27293,8 +27295,7 @@ maybe_emit_file (struct dwarf_file_data
+       if (output_asm_line_debug_info ())
+ 	{
+ 	  fprintf (asm_out_file, "\t.file %u ", fd->emitted_number);
+-	  output_quoted_string (asm_out_file,
+-				remap_debug_filename (fd->filename));
++	  output_quoted_string (asm_out_file, fd->filename);
+ 	  fputc ('\n', asm_out_file);
+ 	}
+     }
diff --git a/poky/meta/recipes-devtools/gcc/gcc_11.1.bb b/poky/meta/recipes-devtools/gcc/gcc_11.2.bb
similarity index 67%
rename from poky/meta/recipes-devtools/gcc/gcc_11.1.bb
rename to poky/meta/recipes-devtools/gcc/gcc_11.2.bb
index 7d93590..255fe55 100644
--- a/poky/meta/recipes-devtools/gcc/gcc_11.1.bb
+++ b/poky/meta/recipes-devtools/gcc/gcc_11.2.bb
@@ -4,11 +4,11 @@
 # Building with thumb enabled on armv4t armv5t fails with
 # | gcc-4.8.1-r0/gcc-4.8.1/gcc/cp/decl.c:7438:(.text.unlikely+0x2fa): relocation truncated to fit: R_ARM_THM_CALL against symbol `fancy_abort(char const*, int, char const*)' defined in .glue_7 section in linker stubs
 # | gcc-4.8.1-r0/gcc-4.8.1/gcc/cp/decl.c:7442:(.text.unlikely+0x318): additional relocation overflows omitted from the output
-ARM_INSTRUCTION_SET_armv4 = "arm"
-ARM_INSTRUCTION_SET_armv5 = "arm"
+ARM_INSTRUCTION_SET:armv4 = "arm"
+ARM_INSTRUCTION_SET:armv5 = "arm"
 
-ARMFPARCHEXT_armv6 = "${@'+fp' if d.getVar('TARGET_FPU') == 'hard' else ''}"
-ARMFPARCHEXT_armv7a = "${@'+fp' if d.getVar('TARGET_FPU') == 'hard' else ''}"
-ARMFPARCHEXT_armv7ve = "${@'+fp' if d.getVar('TARGET_FPU') == 'hard' else ''}"
+ARMFPARCHEXT:armv6 = "${@'+fp' if d.getVar('TARGET_FPU') == 'hard' else ''}"
+ARMFPARCHEXT:armv7a = "${@'+fp' if d.getVar('TARGET_FPU') == 'hard' else ''}"
+ARMFPARCHEXT:armv7ve = "${@'+fp' if d.getVar('TARGET_FPU') == 'hard' else ''}"
 
 BBCLASSEXTEND = "nativesdk"
diff --git a/poky/meta/recipes-devtools/gcc/libgcc-common.inc b/poky/meta/recipes-devtools/gcc/libgcc-common.inc
index d959566..d48dc8b 100644
--- a/poky/meta/recipes-devtools/gcc/libgcc-common.inc
+++ b/poky/meta/recipes-devtools/gcc/libgcc-common.inc
@@ -44,16 +44,16 @@
 	rm -rf ${D}${libdir}/${TARGET_SYS}/${BINV}/include
 }
 
-do_install_append_libc-baremetal () {
+do_install:append:libc-baremetal () {
 	rmdir ${D}${base_libdir}
 }
-do_install_append_libc-newlib () {
+do_install:append:libc-newlib () {
 	rmdir ${D}${base_libdir}
 }
 
 # No rpm package is actually created but -dev depends on it, avoid dnf error
-RDEPENDS_${PN}-dev_libc-baremetal = ""
-RDEPENDS_${PN}-dev_libc-newlib = ""
+RDEPENDS:${PN}-dev:libc-baremetal = ""
+RDEPENDS:${PN}-dev:libc-newlib = ""
 
 BBCLASSEXTEND = "nativesdk"
 
@@ -98,9 +98,9 @@
 
 
     for ml in multilibs.split():
-        tune = d.getVar('DEFAULTTUNE_virtclass-multilib-' + ml)
+        tune = d.getVar('DEFAULTTUNE:virtclass-multilib-' + ml)
         if not tune:
-            bb.warn('DEFAULTTUNE_virtclass-multilib-%s is not defined. Skipping...' % ml)
+            bb.warn('DEFAULTTUNE:virtclass-multilib-%s is not defined. Skipping...' % ml)
             continue
 
         tune_parameters = get_tune_parameters(tune, d)
diff --git a/poky/meta/recipes-devtools/gcc/libgcc-initial.inc b/poky/meta/recipes-devtools/gcc/libgcc-initial.inc
index 06bf224..8251e3c 100644
--- a/poky/meta/recipes-devtools/gcc/libgcc-initial.inc
+++ b/poky/meta/recipes-devtools/gcc/libgcc-initial.inc
@@ -42,17 +42,17 @@
 # We really only want this built by things that need it, not any recrdeptask
 deltask do_build
 
-do_configure_prepend () {
+do_configure:prepend () {
 	install -d ${STAGING_INCDIR}
 	touch ${STAGING_INCDIR}/limits.h
 	sed -i -e 's#INHIBIT_LIBC_CFLAGS =.*#INHIBIT_LIBC_CFLAGS = -Dinhibit_libc#' ${B}/gcc/libgcc.mvars
 	sed -i -e 's#inhibit_libc = false#inhibit_libc = true#' ${B}/gcc/Makefile
 }
 
-do_configure_append () {
+do_configure:append () {
 	sed -i -e 's#thread_header = .*#thread_header = gthr-single.h#' ${B}/${BPN}/Makefile
 }
 
-do_install_append () {
+do_install:append () {
 	ln -s libgcc.a ${D}${libdir}/${TARGET_SYS}/${BINV}/libgcc_eh.a
 }
diff --git a/poky/meta/recipes-devtools/gcc/libgcc-initial_11.1.bb b/poky/meta/recipes-devtools/gcc/libgcc-initial_11.2.bb
similarity index 77%
rename from poky/meta/recipes-devtools/gcc/libgcc-initial_11.1.bb
rename to poky/meta/recipes-devtools/gcc/libgcc-initial_11.2.bb
index 0c698c2..a259082 100644
--- a/poky/meta/recipes-devtools/gcc/libgcc-initial_11.1.bb
+++ b/poky/meta/recipes-devtools/gcc/libgcc-initial_11.2.bb
@@ -2,4 +2,4 @@
 require libgcc-initial.inc
 
 # Building with thumb enabled on armv6t fails
-ARM_INSTRUCTION_SET_armv6 = "arm"
+ARM_INSTRUCTION_SET:armv6 = "arm"
diff --git a/poky/meta/recipes-devtools/gcc/libgcc.inc b/poky/meta/recipes-devtools/gcc/libgcc.inc
index 6d48ec9..84a2d93 100644
--- a/poky/meta/recipes-devtools/gcc/libgcc.inc
+++ b/poky/meta/recipes-devtools/gcc/libgcc.inc
@@ -2,7 +2,7 @@
 
 DEPENDS = "virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}g++ virtual/${MLPREFIX}libc"
 
-do_install_append_class-target () {
+do_install:append:class-target () {
 	if [ "${TCLIBC}" != "glibc" ]; then
 		case "${TARGET_OS}" in
 			"linux-musl" | "linux-*spe") extra_target_os="linux";;
@@ -32,12 +32,12 @@
 
 # All libgcc source is marked with the exception.
 #
-LICENSE_${PN} = "GPL-3.0-with-GCC-exception"
-LICENSE_${PN}-dev = "GPL-3.0-with-GCC-exception"
-LICENSE_${PN}-dbg = "GPL-3.0-with-GCC-exception"
+LICENSE:${PN} = "GPL-3.0-with-GCC-exception"
+LICENSE:${PN}-dev = "GPL-3.0-with-GCC-exception"
+LICENSE:${PN}-dbg = "GPL-3.0-with-GCC-exception"
 
 
-FILES_${PN}-dev = "\
+FILES:${PN}-dev = "\
     ${base_libdir}/libgcc*.so \
     ${@oe.utils.conditional('BASETARGET_SYS', '${TARGET_SYS}', '', '${libdir}/${BASETARGET_SYS}', d)} \
     ${libdir}/${TARGET_SYS}/${BINV}* \
@@ -49,5 +49,5 @@
 do_package_write_deb[depends] += "virtual/${MLPREFIX}libc:do_packagedata"
 do_package_write_rpm[depends] += "virtual/${MLPREFIX}libc:do_packagedata"
 
-INSANE_SKIP_${PN}-dev = "staticdev"
+INSANE_SKIP:${PN}-dev = "staticdev"
 
diff --git a/poky/meta/recipes-devtools/gcc/libgcc_11.1.bb b/poky/meta/recipes-devtools/gcc/libgcc_11.2.bb
similarity index 76%
rename from poky/meta/recipes-devtools/gcc/libgcc_11.1.bb
rename to poky/meta/recipes-devtools/gcc/libgcc_11.2.bb
index ea210a1..f88963b 100644
--- a/poky/meta/recipes-devtools/gcc/libgcc_11.1.bb
+++ b/poky/meta/recipes-devtools/gcc/libgcc_11.2.bb
@@ -2,4 +2,4 @@
 require libgcc.inc
 
 # Building with thumb enabled on armv6t fails
-ARM_INSTRUCTION_SET_armv6 = "arm"
+ARM_INSTRUCTION_SET:armv6 = "arm"
diff --git a/poky/meta/recipes-devtools/gcc/libgfortran.inc b/poky/meta/recipes-devtools/gcc/libgfortran.inc
index 7543585..344ec5e 100644
--- a/poky/meta/recipes-devtools/gcc/libgfortran.inc
+++ b/poky/meta/recipes-devtools/gcc/libgfortran.inc
@@ -54,12 +54,12 @@
     libgfortran-staticdev \
 "
 
-LICENSE_${PN} = "GPL-3.0-with-GCC-exception"
-LICENSE_${PN}-dev = "GPL-3.0-with-GCC-exception"
-LICENSE_${PN}-dbg = "GPL-3.0-with-GCC-exception"
+LICENSE:${PN} = "GPL-3.0-with-GCC-exception"
+LICENSE:${PN}-dev = "GPL-3.0-with-GCC-exception"
+LICENSE:${PN}-dbg = "GPL-3.0-with-GCC-exception"
 
-FILES_${PN} = "${libdir}/libgfortran.so.*"
-FILES_${PN}-dev = "\
+FILES:${PN} = "${libdir}/libgfortran.so.*"
+FILES:${PN}-dev = "\
     ${libdir}/libgfortran*.so \
     ${libdir}/libgfortran.spec \
     ${libdir}/libgfortran.la \
@@ -68,9 +68,9 @@
     ${libdir}/gcc/${TARGET_SYS}/${BINV}/finclude/ \
     ${libdir}/gcc/${TARGET_SYS}/${BINV}/include/ \
 "
-FILES_${PN}-staticdev = "${libdir}/libgfortran.a"
+FILES:${PN}-staticdev = "${libdir}/libgfortran.a"
 
-INSANE_SKIP_${MLPREFIX}libgfortran-dev = "staticdev"
+INSANE_SKIP:${MLPREFIX}libgfortran-dev = "staticdev"
 
 do_package_write_ipk[depends] += "virtual/${MLPREFIX}libc:do_packagedata"
 do_package_write_deb[depends] += "virtual/${MLPREFIX}libc:do_packagedata"
diff --git a/poky/meta/recipes-devtools/gcc/libgfortran_11.1.bb b/poky/meta/recipes-devtools/gcc/libgfortran_11.2.bb
similarity index 100%
rename from poky/meta/recipes-devtools/gcc/libgfortran_11.1.bb
rename to poky/meta/recipes-devtools/gcc/libgfortran_11.2.bb
diff --git a/poky/meta/recipes-devtools/gdb/gdb-common.inc b/poky/meta/recipes-devtools/gdb/gdb-common.inc
index a2a6364..0fe7b4e 100644
--- a/poky/meta/recipes-devtools/gdb/gdb-common.inc
+++ b/poky/meta/recipes-devtools/gdb/gdb-common.inc
@@ -5,10 +5,10 @@
 DEPENDS = "expat zlib ncurses virtual/libiconv ${LTTNGUST} bison-native"
 
 LTTNGUST = "lttng-ust"
-LTTNGUST_arc = ""
-LTTNGUST_aarch64 = ""
-LTTNGUST_mipsarch = ""
-LTTNGUST_sh4 = ""
+LTTNGUST:arc = ""
+LTTNGUST:aarch64 = ""
+LTTNGUST:mipsarch = ""
+LTTNGUST:sh4 = ""
 
 inherit autotools texinfo
 
@@ -52,14 +52,14 @@
 
 # we don't want gdb to provide bfd/iberty/opcodes, which instead will override the
 # right bits installed by binutils.  Same for bfd.info -- also from binutils.
-do_install_append() {
+do_install:append() {
 	rm -rf ${D}${libdir}
 	rm -rf ${D}${includedir}
 	rm -rf ${D}${datadir}/locale
 	rm -f ${D}${infodir}/bfd.info
 }
 
-RRECOMMENDS_gdb_append_linux = " glibc-thread-db "
-RRECOMMENDS_gdb_append_linux-gnueabi = " glibc-thread-db "
-RRECOMMENDS_gdbserver_append_linux = " glibc-thread-db "
-RRECOMMENDS_gdbserver_append_linux-gnueabi = " glibc-thread-db "
+RRECOMMENDS:gdb:append:linux = " glibc-thread-db "
+RRECOMMENDS:gdb:append:linux-gnueabi = " glibc-thread-db "
+RRECOMMENDS:gdbserver:append:linux = " glibc-thread-db "
+RRECOMMENDS:gdbserver:append:linux-gnueabi = " glibc-thread-db "
diff --git a/poky/meta/recipes-devtools/gdb/gdb-cross-canadian.inc b/poky/meta/recipes-devtools/gdb/gdb-cross-canadian.inc
index edb05b6..670534f 100644
--- a/poky/meta/recipes-devtools/gdb/gdb-cross-canadian.inc
+++ b/poky/meta/recipes-devtools/gdb/gdb-cross-canadian.inc
@@ -21,7 +21,7 @@
 
 SSTATE_DUPWHITELIST += "${STAGING_DATADIR}/gdb"
 
-do_configure_prepend() {
+do_configure:prepend() {
 cat > ${WORKDIR}/python << EOF
 #! /bin/sh
 case "\$2" in
@@ -37,7 +37,7 @@
 
 # we don't want gdb to provide bfd/iberty/opcodes, which instead will override the
 # right bits installed by binutils.
-do_install_append() {
+do_install:append() {
 	rm -rf ${D}${exec_prefix}/lib
 	cross_canadian_bindirlinks
 }
diff --git a/poky/meta/recipes-devtools/gdb/gdb-cross.inc b/poky/meta/recipes-devtools/gdb/gdb-cross.inc
index f8a113d..6ba3eae 100644
--- a/poky/meta/recipes-devtools/gdb/gdb-cross.inc
+++ b/poky/meta/recipes-devtools/gdb/gdb-cross.inc
@@ -10,7 +10,7 @@
 PACKAGECONFIG[readline] = "--with-system-readline,--without-system-readline,readline-native"
 PACKAGECONFIG[debuginfod] = "--with-debuginfod, --without-debuginfod, elfutils-native"
 
-do_compile_prepend() {
+do_compile:prepend() {
     export STAGING_LIBDIR="${STAGING_LIBDIR_NATIVE}"
     export STAGING_INCDIR="${STAGING_INCDIR_NATIVE}"
 }
diff --git a/poky/meta/recipes-devtools/gdb/gdb.inc b/poky/meta/recipes-devtools/gdb/gdb.inc
index aa845b5..2b0ae16 100644
--- a/poky/meta/recipes-devtools/gdb/gdb.inc
+++ b/poky/meta/recipes-devtools/gdb/gdb.inc
@@ -2,10 +2,10 @@
 
 inherit gettext
 
-#LDFLAGS_append = " -s"
-#export CFLAGS_append=" -L${STAGING_LIBDIR}"
+#LDFLAGS:append = " -s"
+#export CFLAGS:append=" -L${STAGING_LIBDIR}"
 
 # cross-canadian must not see this
 PACKAGES =+ "gdbserver"
-FILES_gdbserver = "${bindir}/gdbserver"
+FILES:gdbserver = "${bindir}/gdbserver"
 
diff --git a/poky/meta/recipes-devtools/gdb/gdb_10.2.bb b/poky/meta/recipes-devtools/gdb/gdb_10.2.bb
index d70757a..e73e3a2 100644
--- a/poky/meta/recipes-devtools/gdb/gdb_10.2.bb
+++ b/poky/meta/recipes-devtools/gdb/gdb_10.2.bb
@@ -3,7 +3,7 @@
 
 inherit python3-dir
 
-EXTRA_OEMAKE_append_libc-musl = "\
+EXTRA_OEMAKE:append:libc-musl = "\
                                  gt_cv_func_gnugettext1_libc=yes \
                                  gt_cv_func_gnugettext2_libc=yes \
                                  gl_cv_func_working_strerror=yes \
@@ -11,7 +11,7 @@
                                  gl_cv_func_gettimeofday_clobber=no \
                                 "
 
-do_configure_prepend() {
+do_configure:prepend() {
 	if [ "${@bb.utils.filter('PACKAGECONFIG', 'python', d)}" ]; then
 		cat > ${WORKDIR}/python << EOF
 #!/bin/sh
diff --git a/poky/meta/recipes-devtools/git/git.inc b/poky/meta/recipes-devtools/git/git.inc
index 146983a..9dd2cf4 100644
--- a/poky/meta/recipes-devtools/git/git.inc
+++ b/poky/meta/recipes-devtools/git/git.inc
@@ -5,7 +5,7 @@
 LICENSE = "GPLv2"
 DEPENDS = "openssl curl zlib expat"
 
-PROVIDES_append_class-native = " git-replacement-native"
+PROVIDES:append:class-native = " git-replacement-native"
 
 SRC_URI = "${KERNELORG_MIRROR}/software/scm/git/git-${PV}.tar.gz;name=tarball \
            ${KERNELORG_MIRROR}/software/scm/git/git-manpages-${PV}.tar.gz;name=manpages \
@@ -26,16 +26,16 @@
 		--without-tcltk \
 		--without-iconv \
 "
-EXTRA_OECONF_append_class-nativesdk = " --with-gitconfig=/etc/gitconfig "
+EXTRA_OECONF:append:class-nativesdk = " --with-gitconfig=/etc/gitconfig "
 
 # Needs brokensep as this doesn't use automake
 inherit autotools-brokensep perlnative bash-completion
 
 EXTRA_OEMAKE = "NO_PYTHON=1 CFLAGS='${CFLAGS}' LDFLAGS='${LDFLAGS}'"
 EXTRA_OEMAKE += "'PERL_PATH=/usr/bin/env perl'"
-EXTRA_OEMAKE_append_class-native = " NO_CROSS_DIRECTORY_HARDLINKS=1"
+EXTRA_OEMAKE:append:class-native = " NO_CROSS_DIRECTORY_HARDLINKS=1"
 
-do_compile_prepend () {
+do_compile:prepend () {
 	# Remove perl/perl.mak to fix the out-of-date perl.mak error
 	# during rebuild
 	rm -f perl/perl.mak
@@ -79,24 +79,24 @@
 REL_GIT_EXEC_PATH = "${@os.path.relpath(libexecdir, bindir)}/git-core"
 REL_GIT_TEMPLATE_DIR = "${@os.path.relpath(datadir, bindir)}/git-core/templates"
 
-do_install_append_class-target () {
+do_install:append:class-target () {
 	perl_native_fixup
 }
 
-do_install_append_class-native() {
+do_install:append:class-native() {
 	create_wrapper ${D}${bindir}/git \
 		GIT_EXEC_PATH='`dirname $''realpath`'/${REL_GIT_EXEC_PATH} \
 		GIT_TEMPLATE_DIR='`dirname $''realpath`'/${REL_GIT_TEMPLATE_DIR}
 }
 
-do_install_append_class-nativesdk() {
+do_install:append:class-nativesdk() {
 	create_wrapper ${D}${bindir}/git \
 		GIT_EXEC_PATH='`dirname $''realpath`'/${REL_GIT_EXEC_PATH} \
 		GIT_TEMPLATE_DIR='`dirname $''realpath`'/${REL_GIT_TEMPLATE_DIR}
 	perl_native_fixup
 }
 
-FILES_${PN} += "${datadir}/git-core ${libexecdir}/git-core/"
+FILES:${PN} += "${datadir}/git-core ${libexecdir}/git-core/"
 
 PERLTOOLS = " \
     ${bindir}/git-cvsserver \
@@ -116,25 +116,25 @@
 
 # Git tools requiring perl
 PACKAGES =+ "${PN}-perltools"
-FILES_${PN}-perltools += " \
+FILES:${PN}-perltools += " \
     ${PERLTOOLS} \
     ${libdir}/perl \
     ${datadir}/perl5 \
 "
 
-RDEPENDS_${PN}-perltools = "${PN} perl perl-module-file-path findutils"
+RDEPENDS:${PN}-perltools = "${PN} perl perl-module-file-path findutils"
 
 # git-tk package with gitk and git-gui
 PACKAGES =+ "${PN}-tk"
 #RDEPENDS_${PN}-tk = "${PN} tk tcl"
 #EXTRA_OEMAKE = "TCL_PATH=${STAGING_BINDIR_CROSS}/tclsh"
-FILES_${PN}-tk = " \
+FILES:${PN}-tk = " \
     ${bindir}/gitk \
     ${datadir}/gitk \
 "
 
 PACKAGES =+ "gitweb"
-FILES_gitweb = "${datadir}/gitweb/"
-RDEPENDS_gitweb = "perl"
+FILES:gitweb = "${datadir}/gitweb/"
+RDEPENDS:gitweb = "perl"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/glide/glide_0.13.3.bb b/poky/meta/recipes-devtools/glide/glide_0.13.3.bb
index 6eb87df..e943dc1 100644
--- a/poky/meta/recipes-devtools/glide/glide_0.13.3.bb
+++ b/poky/meta/recipes-devtools/glide/glide_0.13.3.bb
@@ -14,15 +14,15 @@
 # tool build to fail.
 export GO111MODULE = "off"
 
-RDEPENDS_${PN}-dev += "bash"
-RDEPENDS_${PN}-ptest += "bash"
+RDEPENDS:${PN}-dev += "bash"
+RDEPENDS:${PN}-ptest += "bash"
 
 BBCLASSEXTEND = "native nativesdk"
 
 # for x86 ends with textrel in ${PN}
 # http://errors.yoctoproject.org/Errors/Details/185631/
 # ERROR: QA Issue: ELF binary '/work/i586-oe-linux/glide/0.13.1-r0/packages-split/glide/usr/bin/glide' has relocations in .text [textrel]
-INSANE_SKIP_${PN} += "textrel"
+INSANE_SKIP:${PN} += "textrel"
 
 # for aarch64 ends with textrel in ${PN}-ptest
 # http://errors.yoctoproject.org/Errors/Details/185633/
@@ -37,7 +37,7 @@
 # ELF binary '/work/aarch64-oe-linux/glide/0.13.1-r0/packages-split/glide-ptest/usr/lib/glide/ptest/github.com/Masterminds/glide/util/util.test' has relocations in .text
 # ELF binary '/work/aarch64-oe-linux/glide/0.13.1-r0/packages-split/glide-ptest/usr/lib/glide/ptest/github.com/Masterminds/glide/action/action.test' has relocations in .text
 # ELF binary '/work/aarch64-oe-linux/glide/0.13.1-r0/packages-split/glide-ptest/usr/lib/glide/ptest/github.com/Masterminds/glide/cache/cache.test' has relocations in .text [textrel]
-INSANE_SKIP_${PN}-ptest += "textrel"
+INSANE_SKIP:${PN}-ptest += "textrel"
 
 # fails to run task compile_ptest_base on mips
-PTEST_ENABLED_mipsarch = "0"
+PTEST_ENABLED:mipsarch = "0"
diff --git a/poky/meta/recipes-devtools/gnu-config/gnu-config_git.bb b/poky/meta/recipes-devtools/gnu-config/gnu-config_git.bb
index 4203634..34b4250 100644
--- a/poky/meta/recipes-devtools/gnu-config/gnu-config_git.bb
+++ b/poky/meta/recipes-devtools/gnu-config/gnu-config_git.bb
@@ -3,14 +3,14 @@
 HOMEPAGE = "https://git.savannah.gnu.org/cgit/config.git"
 SECTION = "devel"
 LICENSE = "GPL-3.0-with-autoconf-exception"
-LIC_FILES_CHKSUM = "file://config.guess;beginline=7;endline=27;md5=b75d42f59f706ea56d6a8e00216fca6a"
+LIC_FILES_CHKSUM = "file://config.guess;beginline=9;endline=29;md5=b75d42f59f706ea56d6a8e00216fca6a"
 
-DEPENDS_class-native = "hostperl-runtime-native"
+DEPENDS:class-native = "hostperl-runtime-native"
 
 INHIBIT_DEFAULT_DEPS = "1"
 
-SRCREV = "4550d2f15b3a7ce2451c1f29500b9339430c877f"
-PV = "20210620+git${SRCPV}"
+SRCREV = "805517123cbfe33d17c989a18e78c5789fab0437"
+PV = "20210722+git${SRCPV}"
 
 SRC_URI = "git://git.savannah.gnu.org/config.git \
            file://gnu-configize.in"
@@ -36,6 +36,6 @@
 }
 
 PACKAGES = "${PN}"
-FILES_${PN} = "${bindir} ${datadir}/gnu-config"
+FILES:${PN} = "${bindir} ${datadir}/gnu-config"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/go/go-1.16.5.inc b/poky/meta/recipes-devtools/go/go-1.16.5.inc
index bd928e4..545aa0c 100644
--- a/poky/meta/recipes-devtools/go/go-1.16.5.inc
+++ b/poky/meta/recipes-devtools/go/go-1.16.5.inc
@@ -2,7 +2,7 @@
 
 GO_BASEVERSION = "1.16"
 PV = "1.16.5"
-FILESEXTRAPATHS_prepend := "${FILE_DIRNAME}/go-${GO_BASEVERSION}:"
+FILESEXTRAPATHS:prepend := "${FILE_DIRNAME}/go-${GO_BASEVERSION}:"
 
 LIC_FILES_CHKSUM = "file://LICENSE;md5=5d4950ecb7b26d2c5e4e7b4e0dd74707"
 
diff --git a/poky/meta/recipes-devtools/go/go-common.inc b/poky/meta/recipes-devtools/go/go-common.inc
index 39a681a..dfccebd 100644
--- a/poky/meta/recipes-devtools/go/go-common.inc
+++ b/poky/meta/recipes-devtools/go/go-common.inc
@@ -37,6 +37,6 @@
 export GOMIPS ?= "${TARGET_GOMIPS}"
 export GOROOT_FINAL ?= "${libdir}/go"
 
-do_compile_prepend() {
+do_compile:prepend() {
 	BUILD_CC=${BUILD_CC}
 }
diff --git a/poky/meta/recipes-devtools/go/go-native_1.16.5.bb b/poky/meta/recipes-devtools/go/go-native_1.16.5.bb
index f14892c..ffe4ef3 100644
--- a/poky/meta/recipes-devtools/go/go-native_1.16.5.bb
+++ b/poky/meta/recipes-devtools/go/go-native_1.16.5.bb
@@ -5,7 +5,7 @@
 
 inherit native
 
-SRC_URI_append = " https://dl.google.com/go/go1.4-bootstrap-20171003.tar.gz;name=bootstrap;subdir=go1.4"
+SRC_URI:append = " https://dl.google.com/go/go1.4-bootstrap-20171003.tar.gz;name=bootstrap;subdir=go1.4"
 SRC_URI[bootstrap.sha256sum] = "f4ff5b5eb3a3cae1c993723f3eab519c5bae18866b5e5f96fe1102f0cb5c3e52"
 
 export GOOS = "${BUILD_GOOS}"
diff --git a/poky/meta/recipes-devtools/go/go-runtime.inc b/poky/meta/recipes-devtools/go/go-runtime.inc
index 21179a8..617e6b5 100644
--- a/poky/meta/recipes-devtools/go/go-runtime.inc
+++ b/poky/meta/recipes-devtools/go/go-runtime.inc
@@ -1,5 +1,5 @@
 DEPENDS = "virtual/${TUNE_PKGARCH}-go go-native"
-DEPENDS_class-nativesdk = "virtual/${TARGET_PREFIX}go-crosssdk"
+DEPENDS:class-nativesdk = "virtual/${TARGET_PREFIX}go-crosssdk"
 PROVIDES = "virtual/${TARGET_PREFIX}go-runtime"
 
 export CGO_CFLAGS = "${CFLAGS}"
@@ -15,7 +15,7 @@
 	:
 }
 
-do_configure_libc-musl() {
+do_configure:libc-musl() {
 	rm -f ${S}/src/runtime/race/*.syso
 }
 
@@ -55,9 +55,9 @@
 
 }
 
-ALLOW_EMPTY_${PN} = "1"
-FILES_${PN} = "${libdir}/go/pkg/${TARGET_GOTUPLE}_dynlink/*${SOLIBSDEV}"
-FILES_${PN}-dev = "${libdir}/go/src ${libdir}/go/pkg/include \
+ALLOW_EMPTY:${PN} = "1"
+FILES:${PN} = "${libdir}/go/pkg/${TARGET_GOTUPLE}_dynlink/*${SOLIBSDEV}"
+FILES:${PN}-dev = "${libdir}/go/src ${libdir}/go/pkg/include \
                    ${libdir}/go/pkg/${TARGET_GOTUPLE}_dynlink/*.shlibname \
                    ${libdir}/go/pkg/${TARGET_GOTUPLE}_dynlink/*/*.shlibname \
                    ${libdir}/go/pkg/${TARGET_GOTUPLE}_dynlink/*/*/*.shlibname \
@@ -73,12 +73,12 @@
                    ${libdir}/go/pkg/${TARGET_GOTUPLE}_dynlink/*/*/*/*/*/*.a \
                    ${libdir}/go/pkg/${TARGET_GOTUPLE}_dynlink/*/*/*/*/*/*/*.a \
 "
-FILES_${PN}-staticdev = "${libdir}/go/pkg/${TARGET_GOTUPLE}"
+FILES:${PN}-staticdev = "${libdir}/go/pkg/${TARGET_GOTUPLE}"
 
 # Go sources include some scripts and pre-built binaries for
 # multiple architectures.  The static .a files for dynamically-linked
 # runtime are also required in -dev.
-INSANE_SKIP_${PN}-dev = "staticdev file-rdeps arch"
+INSANE_SKIP:${PN}-dev = "staticdev file-rdeps arch"
 
 INHIBIT_PACKAGE_STRIP = "1"
 INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
diff --git a/poky/meta/recipes-devtools/go/go-target.inc b/poky/meta/recipes-devtools/go/go-target.inc
index 8e44247..47b4411 100644
--- a/poky/meta/recipes-devtools/go/go-target.inc
+++ b/poky/meta/recipes-devtools/go/go-target.inc
@@ -1,12 +1,12 @@
 DEPENDS = "virtual/${TUNE_PKGARCH}-go go-native"
-DEPENDS_class-nativesdk = "virtual/${TARGET_PREFIX}go-crosssdk go-native"
+DEPENDS:class-nativesdk = "virtual/${TARGET_PREFIX}go-crosssdk go-native"
 
 export GOCACHE = "${B}/.cache"
 GO_LDFLAGS = ""
-GO_LDFLAGS_class-nativesdk = "-linkmode external"
+GO_LDFLAGS:class-nativesdk = "-linkmode external"
 export GO_LDFLAGS
 
-CC_append_class-nativesdk = " ${SECURITY_NOPIE_CFLAGS}"
+CC:append:class-nativesdk = " ${SECURITY_NOPIE_CFLAGS}"
 
 do_configure[noexec] = "1"
 
@@ -38,8 +38,8 @@
 }
 
 PACKAGES = "${PN} ${PN}-dev"
-FILES_${PN} = "${libdir}/go/bin ${libdir}/go/pkg/tool/${TARGET_GOTUPLE} ${bindir}"
-RDEPENDS_${PN} = "go-runtime"
-INSANE_SKIP_${PN} = "ldflags"
+FILES:${PN} = "${libdir}/go/bin ${libdir}/go/pkg/tool/${TARGET_GOTUPLE} ${bindir}"
+RDEPENDS:${PN} = "go-runtime"
+INSANE_SKIP:${PN} = "ldflags"
 
 BBCLASSEXTEND = "nativesdk"
diff --git a/poky/meta/recipes-devtools/go/go_1.16.5.bb b/poky/meta/recipes-devtools/go/go_1.16.5.bb
index 4e9e0eb..34dc89b 100644
--- a/poky/meta/recipes-devtools/go/go_1.16.5.bb
+++ b/poky/meta/recipes-devtools/go/go_1.16.5.bb
@@ -12,6 +12,6 @@
 # variants.
 python() {
     if 'mips' in d.getVar('TARGET_ARCH',True) or 'riscv32' in d.getVar('TARGET_ARCH',True):
-        d.appendVar('INSANE_SKIP_%s' % d.getVar('PN',True), " textrel")
+        d.appendVar('INSANE_SKIP:%s' % d.getVar('PN',True), " textrel")
 }
 
diff --git a/poky/meta/recipes-devtools/help2man/help2man_1.48.3.bb b/poky/meta/recipes-devtools/help2man/help2man_1.48.3.bb
index a612c08..d24e6c4 100644
--- a/poky/meta/recipes-devtools/help2man/help2man_1.48.3.bb
+++ b/poky/meta/recipes-devtools/help2man/help2man_1.48.3.bb
@@ -16,7 +16,7 @@
 
 EXTRA_OECONF = "--disable-nls"
 
-do_install_append () {
+do_install:append () {
 	# Make sure we use /usr/bin/env perl
 	sed -i -e "1s:#!.*:#! /usr/bin/env perl:" ${D}${bindir}/help2man
 }
diff --git a/poky/meta/recipes-devtools/i2c-tools/i2c-tools_4.2.bb b/poky/meta/recipes-devtools/i2c-tools/i2c-tools_4.3.bb
similarity index 86%
rename from poky/meta/recipes-devtools/i2c-tools/i2c-tools_4.2.bb
rename to poky/meta/recipes-devtools/i2c-tools/i2c-tools_4.3.bb
index 9842d1f..51e4e5d 100644
--- a/poky/meta/recipes-devtools/i2c-tools/i2c-tools_4.2.bb
+++ b/poky/meta/recipes-devtools/i2c-tools/i2c-tools_4.3.bb
@@ -8,7 +8,7 @@
 SRC_URI = "${KERNELORG_MIRROR}/software/utils/i2c-tools/${BP}.tar.gz \
 "
 
-SRC_URI[sha256sum] = "7de18ed890e111fa54ab7ea896804d5faa4d1f0462a258aad9fbb7a8cc6b60cc"
+SRC_URI[sha256sum] = "eec464e42301d93586cbeca3845ed61bff40f560670e5b35baec57301d438148"
 
 inherit update-alternatives
 
@@ -22,20 +22,20 @@
 }
 
 PACKAGES =+ "${PN}-misc"
-FILES_${PN}-misc = "${sbindir}/i2c-stub-from-dump \
+FILES:${PN}-misc = "${sbindir}/i2c-stub-from-dump \
                         ${bindir}/ddcmon \
                         ${bindir}/decode-edid \
                         ${bindir}/decode-dimms \
                         ${bindir}/decode-vaio \
                        "
-RDEPENDS_${PN}-misc = "${PN} perl perl-module-posix \
+RDEPENDS:${PN}-misc = "${PN} perl perl-module-posix \
                        perl-module-constant perl-module-file-basename \
                        perl-module-fcntl perl-module-strict perl-module-vars \
 		       perl-module-carp \
                       "
 
 ALTERNATIVE_PRIORITY = "100"
-ALTERNATIVE_${PN} = "i2cdetect i2cdump i2cget i2cset i2ctransfer"
+ALTERNATIVE:${PN} = "i2cdetect i2cdump i2cget i2cset i2ctransfer"
 ALTERNATIVE_LINK_NAME[i2cdetect] = "${sbindir}/i2cdetect"
 ALTERNATIVE_LINK_NAME[i2cdump] = "${sbindir}/i2cdump"
 ALTERNATIVE_LINK_NAME[i2cget] = "${sbindir}/i2cget"
diff --git a/poky/meta/recipes-devtools/icecc-create-env/icecc-create-env_0.1.bb b/poky/meta/recipes-devtools/icecc-create-env/icecc-create-env_0.1.bb
index 61b8487..2701422 100644
--- a/poky/meta/recipes-devtools/icecc-create-env/icecc-create-env_0.1.bb
+++ b/poky/meta/recipes-devtools/icecc-create-env/icecc-create-env_0.1.bb
@@ -36,4 +36,4 @@
 
 BBCLASSEXTEND = "native nativesdk"
 
-RDEPENDS_${PN}_class-nativesdk = "patchelf"
+RDEPENDS:${PN}:class-nativesdk = "patchelf"
diff --git a/poky/meta/recipes-devtools/icecc-toolchain/nativesdk-icecc-toolchain_0.1.bb b/poky/meta/recipes-devtools/icecc-toolchain/nativesdk-icecc-toolchain_0.1.bb
index ce4d73c..034a004 100644
--- a/poky/meta/recipes-devtools/icecc-toolchain/nativesdk-icecc-toolchain_0.1.bb
+++ b/poky/meta/recipes-devtools/icecc-toolchain/nativesdk-icecc-toolchain_0.1.bb
@@ -34,6 +34,6 @@
 }
 
 PACKAGES = "${PN}"
-FILES_${PN} = "${SDKPATHNATIVE}"
-RDEPENDS_${PN} += "nativesdk-icecc-create-env"
+FILES:${PN} = "${SDKPATHNATIVE}"
+RDEPENDS:${PN} += "nativesdk-icecc-create-env"
 
diff --git a/poky/meta/recipes-devtools/intltool/intltool_0.51.0.bb b/poky/meta/recipes-devtools/intltool/intltool_0.51.0.bb
index 592dbb9..77be307 100644
--- a/poky/meta/recipes-devtools/intltool/intltool_0.51.0.bb
+++ b/poky/meta/recipes-devtools/intltool/intltool_0.51.0.bb
@@ -17,23 +17,23 @@
 UPSTREAM_CHECK_URI = "https://launchpad.net/intltool/trunk/"
 
 DEPENDS = "libxml-parser-perl-native"
-RDEPENDS_${PN} = "gettext-dev libxml-parser-perl"
-DEPENDS_class-native = "libxml-parser-perl-native gettext-native"
+RDEPENDS:${PN} = "gettext-dev libxml-parser-perl"
+DEPENDS:class-native = "libxml-parser-perl-native gettext-native"
 
 inherit autotools pkgconfig perlnative
 
 export PERL = "${bindir}/env perl"
-PERL_class-native = "/usr/bin/env nativeperl"
-PERL_class-nativesdk = "/usr/bin/env perl"
+PERL:class-native = "/usr/bin/env nativeperl"
+PERL:class-nativesdk = "/usr/bin/env perl"
 
 # gettext is assumed to exist on the host
-RDEPENDS_${PN}_class-native = "libxml-parser-perl-native"
-RRECOMMENDS_${PN} = "perl-modules"
-RRECOMMENDS_${PN}_class-native = ""
+RDEPENDS:${PN}:class-native = "libxml-parser-perl-native"
+RRECOMMENDS:${PN} = "perl-modules"
+RRECOMMENDS:${PN}:class-native = ""
 
-FILES_${PN}-dev = ""
-FILES_${PN} += "${datadir}/aclocal"
+FILES:${PN}-dev = ""
+FILES:${PN} += "${datadir}/aclocal"
 
-INSANE_SKIP_${PN} += "dev-deps"
+INSANE_SKIP:${PN} += "dev-deps"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/jquery/jquery_3.6.0.bb b/poky/meta/recipes-devtools/jquery/jquery_3.6.0.bb
index 0379273..33b177d 100644
--- a/poky/meta/recipes-devtools/jquery/jquery_3.6.0.bb
+++ b/poky/meta/recipes-devtools/jquery/jquery_3.6.0.bb
@@ -34,6 +34,6 @@
 }
 
 PACKAGES = "${PN}"
-FILES_${PN} = "${datadir}"
+FILES:${PN} = "${datadir}"
 
 BBCLASSEXTEND += "native nativesdk"
diff --git a/poky/meta/recipes-devtools/json-c/json-c_0.15.bb b/poky/meta/recipes-devtools/json-c/json-c_0.15.bb
index 2968590..863463c 100644
--- a/poky/meta/recipes-devtools/json-c/json-c_0.15.bb
+++ b/poky/meta/recipes-devtools/json-c/json-c_0.15.bb
@@ -11,7 +11,7 @@
 UPSTREAM_CHECK_URI = "https://github.com/${BPN}/${BPN}/releases"
 UPSTREAM_CHECK_REGEX = "json-c-(?P<pver>\d+(\.\d+)+)-\d+"
 
-RPROVIDES_${PN} = "libjson"
+RPROVIDES:${PN} = "libjson"
 
 inherit cmake
 
diff --git a/poky/meta/recipes-devtools/libdnf/libdnf_0.63.1.bb b/poky/meta/recipes-devtools/libdnf/libdnf_0.63.1.bb
index 6ffeb94..282c28e 100644
--- a/poky/meta/recipes-devtools/libdnf/libdnf_0.63.1.bb
+++ b/poky/meta/recipes-devtools/libdnf/libdnf_0.63.1.bb
@@ -30,8 +30,8 @@
                   -DWITH_ZCHUNK=OFF \
                   -DWITH_HTML=OFF \
                 "
-EXTRA_OECMAKE_append_class-native = " -DWITH_GIR=OFF"
-EXTRA_OECMAKE_append_class-nativesdk = " -DWITH_GIR=OFF"
+EXTRA_OECMAKE:append:class-native = " -DWITH_GIR=OFF"
+EXTRA_OECMAKE:append:class-nativesdk = " -DWITH_GIR=OFF"
 
 BBCLASSEXTEND = "native nativesdk"
 PNBLACKLIST[libdnf] ?= "${@bb.utils.contains('PACKAGE_CLASSES', 'package_rpm', '', 'Does not build without package_rpm in PACKAGE_CLASSES due disabled rpm support in libsolv', d)}"
diff --git a/poky/meta/recipes-devtools/libedit/libedit_20210522-3.1.bb b/poky/meta/recipes-devtools/libedit/libedit_20210522-3.1.bb
index 43e6f22..72392dd 100644
--- a/poky/meta/recipes-devtools/libedit/libedit_20210522-3.1.bb
+++ b/poky/meta/recipes-devtools/libedit/libedit_20210522-3.1.bb
@@ -20,5 +20,5 @@
 inherit update-alternatives
 
 ALTERNATIVE_PRIORITY = "90"
-ALTERNATIVE_${PN}-doc = "history.3"
+ALTERNATIVE:${PN}-doc = "history.3"
 ALTERNATIVE_LINK_NAME[history.3] = "${mandir}/man3/history.3"
diff --git a/poky/meta/recipes-devtools/libtool/libtool-2.4.6.inc b/poky/meta/recipes-devtools/libtool/libtool-2.4.6.inc
index e9225e1..c1cbceb 100644
--- a/poky/meta/recipes-devtools/libtool/libtool-2.4.6.inc
+++ b/poky/meta/recipes-devtools/libtool/libtool-2.4.6.inc
@@ -28,7 +28,7 @@
 SRC_URI[md5sum] = "addf44b646ddb4e3919805aa88fa7c5e"
 SRC_URI[sha256sum] = "e3bd4d5d3d025a36c21dd6af7ea818a2afcd4dfc1ea5a17b39d7854bcd0c06e3"
 
-do_compile_prepend () {
+do_compile:prepend () {
 	# Sometimes this file doesn't get rebuilt, force the issue
 	rm -f ${S}/build-aux/ltmain.sh
 	make build-aux/ltmain.sh
@@ -43,9 +43,9 @@
 DEPENDS = "libtool-native"
 
 PACKAGES =+ "libltdl"
-FILES_${PN} += "${datadir}/aclocal"
+FILES:${PN} += "${datadir}/aclocal"
 
-FILES_${PN}-dev_remove = "${datadir}/aclocal"
-FILES_libltdl = "${libdir}/libltdl${SOLIBS}"
+FILES:${PN}-dev:remove = "${datadir}/aclocal"
+FILES:libltdl = "${libdir}/libltdl${SOLIBS}"
 
 export CONFIG_SHELL="/bin/bash"
diff --git a/poky/meta/recipes-devtools/libtool/libtool-cross_2.4.6.bb b/poky/meta/recipes-devtools/libtool/libtool-cross_2.4.6.bb
index 02c6e15..4a43867 100644
--- a/poky/meta/recipes-devtools/libtool/libtool-cross_2.4.6.bb
+++ b/poky/meta/recipes-devtools/libtool/libtool-cross_2.4.6.bb
@@ -8,7 +8,7 @@
 
 inherit nopackages
 
-do_configure_prepend () {
+do_configure:prepend () {
 	# Remove any existing libtool m4 since old stale versions would break
 	# any upgrade
 	rm -f ${STAGING_DATADIR}/aclocal/libtool.m4
diff --git a/poky/meta/recipes-devtools/libtool/libtool-native_2.4.6.bb b/poky/meta/recipes-devtools/libtool/libtool-native_2.4.6.bb
index 4c5218a..3b20ce3 100644
--- a/poky/meta/recipes-devtools/libtool/libtool-native_2.4.6.bb
+++ b/poky/meta/recipes-devtools/libtool/libtool-native_2.4.6.bb
@@ -8,7 +8,7 @@
 
 EXTRA_OECONF = " --with-libtool-sysroot=${STAGING_DIR_NATIVE}"
 
-do_configure_prepend () {
+do_configure:prepend () {
 	# Remove any existing libtool m4 since old stale versions would break
 	# any upgrade
 	rm -f ${STAGING_DATADIR}/aclocal/libtool.m4
diff --git a/poky/meta/recipes-devtools/libtool/libtool_2.4.6.bb b/poky/meta/recipes-devtools/libtool/libtool_2.4.6.bb
index a5715fa..95bbc87 100644
--- a/poky/meta/recipes-devtools/libtool/libtool_2.4.6.bb
+++ b/poky/meta/recipes-devtools/libtool/libtool_2.4.6.bb
@@ -2,7 +2,7 @@
 
 SRC_URI += "file://multilib.patch file://debian-no_hostname.patch"
 
-RDEPENDS_${PN} += "bash"
+RDEPENDS:${PN} += "bash"
 
 #
 # We want the results of libtool-cross preserved - don't stage anything ourselves.
@@ -13,9 +13,9 @@
     ${datadir}/libtool/build-aux \
 "
 
-ACLOCALEXTRAPATH_class-target = ""
+ACLOCALEXTRAPATH:class-target = ""
 
-do_install_append () {
+do_install:append () {
         sed -e 's@--sysroot=${STAGING_DIR_HOST}@@g' \
             -e "s@${DEBUG_PREFIX_MAP}@@g" \
             -e 's@${STAGING_DIR_HOST}@@g' \
diff --git a/poky/meta/recipes-devtools/libtool/nativesdk-libtool_2.4.6.bb b/poky/meta/recipes-devtools/libtool/nativesdk-libtool_2.4.6.bb
index 508eade..e3ad672 100644
--- a/poky/meta/recipes-devtools/libtool/nativesdk-libtool_2.4.6.bb
+++ b/poky/meta/recipes-devtools/libtool/nativesdk-libtool_2.4.6.bb
@@ -8,9 +8,9 @@
 inherit nativesdk
 
 S = "${WORKDIR}/libtool-${PV}"
-FILES_${PN} += "${datadir}/libtool/*"
+FILES:${PN} += "${datadir}/libtool/*"
 
-do_configure_prepend () {
+do_configure:prepend () {
 	# Remove any existing libtool m4 since old stale versions would break
 	# any upgrade
 	rm -f ${STAGING_DATADIR}/aclocal/libtool.m4
diff --git a/poky/meta/recipes-devtools/llvm/llvm_git.bb b/poky/meta/recipes-devtools/llvm/llvm_git.bb
index de79adc..4167080 100644
--- a/poky/meta/recipes-devtools/llvm/llvm_git.bb
+++ b/poky/meta/recipes-devtools/llvm/llvm_git.bb
@@ -10,16 +10,16 @@
 
 DEPENDS = "libffi libxml2 zlib libedit ninja-native llvm-native"
 
-COMPATIBLE_HOST_riscv64 = "null"
-COMPATIBLE_HOST_riscv32 = "null"
+COMPATIBLE_HOST:riscv64 = "null"
+COMPATIBLE_HOST:riscv32 = "null"
 
-RDEPENDS_${PN}_append_class-target = " ncurses-terminfo"
+RDEPENDS:${PN}:append:class-target = " ncurses-terminfo"
 
 inherit cmake pkgconfig
 
 PROVIDES += "llvm${PV}"
 
-PV = "12.0.0"
+PV = "12.0.1"
 
 MAJOR_VERSION = "${@oe.utils.trim_version("${PV}", 1)}"
 
@@ -27,7 +27,7 @@
 LLVM_DIR = "llvm${LLVM_RELEASE}"
 
 BRANCH = "release/${MAJOR_VERSION}.x"
-SRCREV = "fa0971b87fb2c9d14d1bba2551e61f02f18f329b"
+SRCREV = "fed41342a82f5a3a9201819a82bf7a48313e296b"
 SRC_URI = "git://github.com/llvm/llvm-project.git;branch=${BRANCH} \
            file://0006-llvm-TargetLibraryInfo-Undefine-libc-functions-if-th.patch;striplevel=2 \
            file://0007-llvm-allow-env-override-of-exe-path.patch;striplevel=2 \
@@ -62,8 +62,8 @@
 #
 LLVM_TARGETS ?= "AMDGPU;${@get_llvm_host_arch(bb, d)}"
 
-ARM_INSTRUCTION_SET_armv5 = "arm"
-ARM_INSTRUCTION_SET_armv4t = "arm"
+ARM_INSTRUCTION_SET:armv5 = "arm"
+ARM_INSTRUCTION_SET:armv4t = "arm"
 
 EXTRA_OECMAKE += "-DLLVM_ENABLE_ASSERTIONS=OFF \
                   -DLLVM_ENABLE_EXPENSIVE_CHECKS=OFF \
@@ -79,19 +79,19 @@
                   -DPYTHON_EXECUTABLE=${HOSTTOOLS_DIR}/python3 \
                   -G Ninja"
 
-EXTRA_OECMAKE_append_class-target = "\
+EXTRA_OECMAKE:append:class-target = "\
                   -DCMAKE_CROSSCOMPILING:BOOL=ON \
                   -DLLVM_TABLEGEN=${STAGING_BINDIR_NATIVE}/llvm-tblgen${PV} \
                   -DLLVM_CONFIG_PATH=${STAGING_BINDIR_NATIVE}/llvm-config${PV} \
                  "
 
-EXTRA_OECMAKE_append_class-nativesdk = "\
+EXTRA_OECMAKE:append:class-nativesdk = "\
                   -DCMAKE_CROSSCOMPILING:BOOL=ON \
                   -DLLVM_TABLEGEN=${STAGING_BINDIR_NATIVE}/llvm-tblgen${PV} \
                   -DLLVM_CONFIG_PATH=${STAGING_BINDIR_NATIVE}/llvm-config${PV} \
                  "
 
-do_configure_prepend() {
+do_configure:prepend() {
 # Fix paths in llvm-config
 	sed -i "s|sys::path::parent_path(CurrentPath))\.str()|sys::path::parent_path(sys::path::parent_path(CurrentPath))).str()|g" ${S}/tools/llvm-config/llvm-config.cpp
 	sed -ri "s#/(bin|include|lib)(/?\")#/\1/${LLVM_DIR}\2#g" ${S}/tools/llvm-config/llvm-config.cpp
@@ -99,7 +99,7 @@
 }
 
 # patch out build host paths for reproducibility
-do_compile_prepend_class-target() {
+do_compile:prepend:class-target() {
         sed -i -e "s,${WORKDIR},,g" ${B}/tools/llvm-config/BuildVariables.inc
 }
 
@@ -107,7 +107,7 @@
 	ninja -v ${PARALLEL_MAKE}
 }
 
-do_compile_class-native() {
+do_compile:class-native() {
 	ninja -v ${PARALLEL_MAKE} llvm-config llvm-tblgen
 }
 
@@ -142,7 +142,7 @@
 	rm -rf ${D}${libdir}/${LLVM_DIR}/libLTO.so
 }
 
-do_install_class-native() {
+do_install:class-native() {
 	install -D -m 0755 ${B}/bin/llvm-tblgen ${D}${bindir}/llvm-tblgen${PV}
 	install -D -m 0755 ${B}/bin/llvm-config ${D}${bindir}/llvm-config${PV}
 	install -D -m 0755 ${B}/lib/libLLVM-${MAJOR_VERSION}.so ${D}${libdir}/libLLVM-${MAJOR_VERSION}.so
@@ -150,39 +150,39 @@
 
 PACKAGES =+ "${PN}-bugpointpasses ${PN}-llvmhello ${PN}-libllvm ${PN}-liboptremarks ${PN}-liblto"
 
-RRECOMMENDS_${PN}-dev += "${PN}-bugpointpasses ${PN}-llvmhello ${PN}-liboptremarks"
+RRECOMMENDS:${PN}-dev += "${PN}-bugpointpasses ${PN}-llvmhello ${PN}-liboptremarks"
 
-FILES_${PN}-bugpointpasses = "\
+FILES:${PN}-bugpointpasses = "\
     ${libdir}/${LLVM_DIR}/BugpointPasses.so \
 "
 
-FILES_${PN}-libllvm = "\
+FILES:${PN}-libllvm = "\
     ${libdir}/${LLVM_DIR}/libLLVM-${MAJOR_VERSION}.so \
     ${libdir}/libLLVM-${MAJOR_VERSION}.so \
 "
 
-FILES_${PN}-liblto += "\
+FILES:${PN}-liblto += "\
     ${libdir}/${LLVM_DIR}/libLTO.so.* \
 "
 
-FILES_${PN}-liboptremarks += "\
+FILES:${PN}-liboptremarks += "\
     ${libdir}/${LLVM_DIR}/libRemarks.so.* \
 "
 
-FILES_${PN}-llvmhello = "\
+FILES:${PN}-llvmhello = "\
     ${libdir}/${LLVM_DIR}/LLVMHello.so \
 "
 
-FILES_${PN}-dev += " \
+FILES:${PN}-dev += " \
     ${libdir}/${LLVM_DIR}/llvm-config \
     ${libdir}/${LLVM_DIR}/libRemarks.so \
     ${libdir}/${LLVM_DIR}/libLLVM-${PV}.so \
 "
 
-FILES_${PN}-staticdev += "\
+FILES:${PN}-staticdev += "\
     ${libdir}/${LLVM_DIR}/*.a \
 "
 
-INSANE_SKIP_${PN}-libllvm += "dev-so"
+INSANE_SKIP:${PN}-libllvm += "dev-so"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/m4/m4-1.4.19.inc b/poky/meta/recipes-devtools/m4/m4-1.4.19.inc
index 5f3d592..0516e49 100644
--- a/poky/meta/recipes-devtools/m4/m4-1.4.19.inc
+++ b/poky/meta/recipes-devtools/m4/m4-1.4.19.inc
@@ -9,7 +9,7 @@
 SRC_URI = "${GNU_MIRROR}/m4/m4-${PV}.tar.gz \
            file://ac_config_links.patch \
            "
-SRC_URI_append_class-target = " file://run-ptest \
+SRC_URI:append:class-target = " file://run-ptest \
                                 file://serial-tests-config.patch \
                               "
 
@@ -51,11 +51,11 @@
 }
 
 
-RDEPENDS_${PN}-ptest += "make coreutils diffutils"
-RDEPENDS_${PN}-ptest_append_libc-glibc = "\
+RDEPENDS:${PN}-ptest += "make coreutils diffutils"
+RDEPENDS:${PN}-ptest:append:libc-glibc = "\
      locale-base-fr-fr.iso-8859-1 \
 "
 
-INSANE_SKIP_${PN}-ptest += "ldflags"
-INSANE_SKIP_${PN}-ptest += "rpaths"
+INSANE_SKIP:${PN}-ptest += "ldflags"
+INSANE_SKIP:${PN}-ptest += "rpaths"
 
diff --git a/poky/meta/recipes-devtools/makedevs/makedevs_1.0.1.bb b/poky/meta/recipes-devtools/makedevs/makedevs_1.0.1.bb
index 5910f4b..7974626 100644
--- a/poky/meta/recipes-devtools/makedevs/makedevs_1.0.1.bb
+++ b/poky/meta/recipes-devtools/makedevs/makedevs_1.0.1.bb
@@ -8,7 +8,7 @@
 
 S = "${WORKDIR}"
 
-FILES_${PN}_append_class-nativesdk = " ${datadir}"
+FILES:${PN}:append:class-nativesdk = " ${datadir}"
 
 do_compile() {
 	${CC} ${CFLAGS} ${LDFLAGS} -o ${S}/makedevs ${S}/makedevs.c
@@ -19,7 +19,7 @@
 	install -m 0755 ${S}/makedevs ${D}${base_sbindir}/makedevs
 }
 
-do_install_append_class-nativesdk() {
+do_install:append:class-nativesdk() {
 	install -d ${D}${datadir}
 	install -m 644 ${COREBASE}/meta/files/device_table-minimal.txt ${D}${datadir}/
 }
diff --git a/poky/meta/recipes-devtools/meson/meson.inc b/poky/meta/recipes-devtools/meson/meson.inc
index 7ddfccf..f1746d2 100644
--- a/poky/meta/recipes-devtools/meson/meson.inc
+++ b/poky/meta/recipes-devtools/meson/meson.inc
@@ -24,11 +24,11 @@
 
 inherit setuptools3
 
-RDEPENDS_${PN} = "ninja python3-modules python3-pkg-resources"
+RDEPENDS:${PN} = "ninja python3-modules python3-pkg-resources"
 
-FILES_${PN} += "${datadir}/polkit-1"
+FILES:${PN} += "${datadir}/polkit-1"
 
-do_install_append () {
+do_install:append () {
 	# As per the same issue in the python recipe itself:
 	# Unfortunately the following pyc files are non-deterministc due to 'frozenset'
 	# being written without strict ordering, even with PYTHONHASHSEED = 0
diff --git a/poky/meta/recipes-devtools/meson/nativesdk-meson_0.58.1.bb b/poky/meta/recipes-devtools/meson/nativesdk-meson_0.58.1.bb
index 74e1a71..0e76cc7 100644
--- a/poky/meta/recipes-devtools/meson/nativesdk-meson_0.58.1.bb
+++ b/poky/meta/recipes-devtools/meson/nativesdk-meson_0.58.1.bb
@@ -13,7 +13,7 @@
 #   real paths by meson-setup.sh when the SDK is extracted.
 # - Some overrides aren't needed, since the SDK injects paths that take care of
 #   them.
-do_install_append() {
+do_install:append() {
     install -d ${D}${datadir}/meson
     cat >${D}${datadir}/meson/meson.cross.template <<EOF
 [binaries]
@@ -47,10 +47,10 @@
     install -m 0755 ${WORKDIR}/meson-wrapper ${D}${bindir}/meson
 }
 
-RDEPENDS_${PN} += "\
+RDEPENDS:${PN} += "\
     nativesdk-ninja \
     nativesdk-python3 \
     nativesdk-python3-setuptools \
     "
 
-FILES_${PN} += "${datadir}/meson ${SDKPATHNATIVE}"
+FILES:${PN} += "${datadir}/meson ${SDKPATHNATIVE}"
diff --git a/poky/meta/recipes-devtools/mmc/mmc-utils_git.bb b/poky/meta/recipes-devtools/mmc/mmc-utils_git.bb
index bdd0bf7..661db46 100644
--- a/poky/meta/recipes-devtools/mmc/mmc-utils_git.bb
+++ b/poky/meta/recipes-devtools/mmc/mmc-utils_git.bb
@@ -14,9 +14,9 @@
 
 S = "${WORKDIR}/git"
 
-CFLAGS_append_powerpc64 = " -D__SANE_USERSPACE_TYPES__"
-CFLAGS_append_mipsarchn64 = " -D__SANE_USERSPACE_TYPES__"
-CFLAGS_append_mipsarchn32 = " -D__SANE_USERSPACE_TYPES__"
+CFLAGS:append:powerpc64 = " -D__SANE_USERSPACE_TYPES__"
+CFLAGS:append:mipsarchn64 = " -D__SANE_USERSPACE_TYPES__"
+CFLAGS:append:mipsarchn32 = " -D__SANE_USERSPACE_TYPES__"
 
 do_install() {
     install -d ${D}${bindir}
diff --git a/poky/meta/recipes-devtools/mtd/mtd-utils_git.bb b/poky/meta/recipes-devtools/mtd/mtd-utils_git.bb
index 105a68d..057ae80 100644
--- a/poky/meta/recipes-devtools/mtd/mtd-utils_git.bb
+++ b/poky/meta/recipes-devtools/mtd/mtd-utils_git.bb
@@ -9,19 +9,17 @@
 inherit autotools pkgconfig update-alternatives
 
 DEPENDS = "zlib e2fsprogs util-linux"
-RDEPENDS_mtd-utils-tests += "bash"
+RDEPENDS:mtd-utils-tests += "bash"
 
-PV = "2.1.2"
+PV = "2.1.3"
 
-SRCREV = "7b986779342021bda87c04da3bf729718736d8ab"
+SRCREV = "42ea7cd48d2b3c306d59bb6c530d79f8c25bf9f5"
 SRC_URI = "git://git.infradead.org/mtd-utils.git \
            file://add-exclusion-to-mkfs-jffs2-git-2.patch \
            "
 
 S = "${WORKDIR}/git"
 
-EXTRA_OECONF += "--enable-install-tests"
-
 # xattr support creates an additional compile-time dependency on acl because
 # the sys/acl.h header is needed. libacl is not needed and thus enabling xattr
 # regardless whether acl is enabled or disabled in the distro should be okay.
@@ -33,15 +31,15 @@
 PACKAGECONFIG[ubifs] = "--with-ubifs,--without-ubifs"
 PACKAGECONFIG[zstd] = "--with-zstd,--without-zstd,zstd"
 
-CPPFLAGS_append_riscv64  = " -pthread -D_REENTRANT"
+CPPFLAGS:append:riscv64  = " -pthread -D_REENTRANT"
 
 EXTRA_OEMAKE = "'CC=${CC}' 'RANLIB=${RANLIB}' 'AR=${AR}' 'CFLAGS=${CFLAGS} ${@bb.utils.contains('PACKAGECONFIG', 'xattr', '', '-DWITHOUT_XATTR', d)} -I${S}/include' 'BUILDDIR=${S}'"
 
 # Use higher priority than corresponding BusyBox-provided applets
 ALTERNATIVE_PRIORITY = "100"
 
-ALTERNATIVE_${PN} = "flashcp flash_eraseall flash_lock flash_unlock nanddump nandwrite"
-ALTERNATIVE_${PN}-ubifs = "ubiattach ubidetach ubimkvol ubirename ubirmvol ubirsvol ubiupdatevol"
+ALTERNATIVE:${PN} = "flashcp flash_eraseall flash_lock flash_unlock nanddump nandwrite"
+ALTERNATIVE:${PN}-ubifs = "ubiattach ubidetach ubimkvol ubirename ubirmvol ubirsvol ubiupdatevol"
 
 ALTERNATIVE_LINK_NAME[nandwrite] = "${sbindir}/nandwrite"
 ALTERNATIVE_LINK_NAME[nanddump] = "${sbindir}/nanddump"
@@ -65,10 +63,10 @@
 PACKAGES =+ "${@bb.utils.contains("PACKAGECONFIG", "jffs", "mtd-utils-jffs2", "", d)}"
 PACKAGES =+ "${@bb.utils.contains("PACKAGECONFIG", "ubifs", "mtd-utils-ubifs", "", d)}"
 
-FILES_mtd-utils-jffs2 = "${sbindir}/mkfs.jffs2 ${sbindir}/jffs2dump ${sbindir}/jffs2reader ${sbindir}/sumtool"
-FILES_mtd-utils-ubifs = "${sbindir}/mkfs.ubifs ${sbindir}/ubi*"
-FILES_mtd-utils-misc = "${sbindir}/nftl* ${sbindir}/ftl* ${sbindir}/rfd* ${sbindir}/doc* ${sbindir}/serve_image ${sbindir}/recv_image"
-FILES_mtd-utils-tests = "${libexecdir}/mtd-utils/*"
+FILES:mtd-utils-jffs2 = "${sbindir}/mkfs.jffs2 ${sbindir}/jffs2dump ${sbindir}/jffs2reader ${sbindir}/sumtool"
+FILES:mtd-utils-ubifs = "${sbindir}/mkfs.ubifs ${sbindir}/ubi*"
+FILES:mtd-utils-misc = "${sbindir}/nftl* ${sbindir}/ftl* ${sbindir}/rfd* ${sbindir}/doc* ${sbindir}/serve_image ${sbindir}/recv_image"
+FILES:mtd-utils-tests = "${libexecdir}/mtd-utils/*"
 
 BBCLASSEXTEND = "native nativesdk"
 
diff --git a/poky/meta/recipes-devtools/mtools/mtools/disable-hardcoded-configs.patch b/poky/meta/recipes-devtools/mtools/mtools/disable-hardcoded-configs.patch
index 81d76d0..c78f73d 100644
--- a/poky/meta/recipes-devtools/mtools/mtools/disable-hardcoded-configs.patch
+++ b/poky/meta/recipes-devtools/mtools/mtools/disable-hardcoded-configs.patch
@@ -1,4 +1,4 @@
-From 630dbcabc408cf5d73edaa7cf64a48194976b290 Mon Sep 17 00:00:00 2001
+From bd2ec723326b6d57350da73b444dd43e923011e8 Mon Sep 17 00:00:00 2001
 From: Ed Bartosh <ed.bartosh@linux.intel.com>
 Date: Tue, 13 Jun 2017 14:55:52 +0300
 Subject: [PATCH] Disabled reading host configs.
@@ -12,7 +12,7 @@
  1 file changed, 8 deletions(-)
 
 diff --git a/config.c b/config.c
-index bb13682..9186c77 100644
+index 173eae0..0654cc1 100644
 --- a/config.c
 +++ b/config.c
 @@ -836,14 +836,6 @@ void read_config(void)
diff --git a/poky/meta/recipes-devtools/mtools/mtools/no-x11.gplv3.patch b/poky/meta/recipes-devtools/mtools/mtools/no-x11.gplv3.patch
deleted file mode 100644
index 9cb3e39..0000000
--- a/poky/meta/recipes-devtools/mtools/mtools/no-x11.gplv3.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-Disable building with X11 support.
-
-Upstream-Status: Inappropriate [disable feature]
-
-Signed-off-by: Scott Garman <scott.a.garman@intel.com>
-
-diff -urN mtools-4.0.15.orig//Makefile.in mtools-4.0.15//Makefile.in
---- mtools-4.0.15.orig//Makefile.in	2010-10-17 08:41:09.000000000 -0700
-+++ mtools-4.0.15//Makefile.in	2010-11-23 13:59:49.258258374 -0800
-@@ -146,7 +146,7 @@
- CXXFLAGS  = $(CPPFLAGS) $(DEFS) $(MYCXXFLAGS) -I. @extraincludedir@ -I@srcdir@ $(USERCFLAGS)
- LINK      = $(CC) $(LDFLAGS) $(USERLDFLAGS) @extralibdir@
- ALLLIBS   = $(USERLDLIBS) $(MACHDEPLIBS) $(SHLIB) $(LIBS)
--X_LDFLAGS = $(X_EXTRA_LIBS) $(X_LIBS) -lXau -lX11 $(LIBS)
-+X_LDFLAGS = $(X_EXTRA_LIBS) $(X_LIBS) $(LIBS)
- X_CCFLAGS = $(X_CFLAGS) $(CFLAGS)
- 
- all:    mtools $(LINKS) mkmanifest @FLOPPYD@ mtools.1 mtools.5
diff --git a/poky/meta/recipes-devtools/mtools/mtools_4.0.32.bb b/poky/meta/recipes-devtools/mtools/mtools_4.0.34.bb
similarity index 79%
rename from poky/meta/recipes-devtools/mtools/mtools_4.0.32.bb
rename to poky/meta/recipes-devtools/mtools/mtools_4.0.34.bb
index 5018750..e64015c 100644
--- a/poky/meta/recipes-devtools/mtools/mtools_4.0.32.bb
+++ b/poky/meta/recipes-devtools/mtools/mtools_4.0.34.bb
@@ -7,8 +7,8 @@
 
 DEPENDS += "virtual/libiconv"
 
-RDEPENDS_${PN}_libc-glibc = "glibc-gconv-ibm850"
-RRECOMMENDS_${PN}_libc-glibc = "\
+RDEPENDS:${PN}:libc-glibc = "glibc-gconv-ibm850"
+RRECOMMENDS:${PN}:libc-glibc = "\
 	glibc-gconv-ibm437 \
 	glibc-gconv-ibm737 \
 	glibc-gconv-ibm775 \
@@ -24,15 +24,14 @@
 	glibc-gconv-ibm866 \
 	glibc-gconv-ibm869 \
 	"
-SRC_URI[sha256sum] = "62498cd51ae7c79a27c879a45f0d2a8c44e1404cbb901372d09b02735ef5ad89"
+SRC_URI[sha256sum] = "ada543eb1b0ffe5440d4ee42634309ea1e286d7ebb80c99ba50db5cb2c360cab"
 
 SRC_URI = "${GNU_MIRROR}/mtools/mtools-${PV}.tar.bz2 \
            file://mtools-makeinfo.patch \
-           file://no-x11.gplv3.patch \
            file://clang_UNUSED.patch \
            "
 
-SRC_URI_append_class-native = " file://disable-hardcoded-configs.patch"
+SRC_URI:append:class-native = " file://disable-hardcoded-configs.patch"
 
 inherit autotools texinfo
 
@@ -43,7 +42,7 @@
 PACKAGECONFIG ??= ""
 PACKAGECONFIG[libbsd] = "ac_cv_lib_bsd_main=yes,ac_cv_lib_bsd_main=no,libbsd"
 
-do_install_prepend () {
+do_install:prepend () {
     # Create bindir to fix parallel installation issues
     mkdir -p ${D}/${bindir}
     mkdir -p ${D}/${datadir}
diff --git a/poky/meta/recipes-devtools/nasm/nasm_2.15.05.bb b/poky/meta/recipes-devtools/nasm/nasm_2.15.05.bb
index 43088ba..edc17ae 100644
--- a/poky/meta/recipes-devtools/nasm/nasm_2.15.05.bb
+++ b/poky/meta/recipes-devtools/nasm/nasm_2.15.05.bb
@@ -12,7 +12,7 @@
 
 SRC_URI[sha256sum] = "3c4b8339e5ab54b1bcb2316101f8985a5da50a3f9e504d43fa6f35668bee2fd0"
 
-EXTRA_AUTORECONF_append = " -I autoconf/m4"
+EXTRA_AUTORECONF:append = " -I autoconf/m4"
 
 inherit autotools-brokensep
 
diff --git a/poky/meta/recipes-devtools/ninja/ninja_1.10.2.bb b/poky/meta/recipes-devtools/ninja/ninja_1.10.2.bb
index 2a39b2d..c908bcb 100644
--- a/poky/meta/recipes-devtools/ninja/ninja_1.10.2.bb
+++ b/poky/meta/recipes-devtools/ninja/ninja_1.10.2.bb
@@ -15,7 +15,7 @@
 
 do_configure[noexec] = "1"
 
-do_compile_class-native() {
+do_compile:class-native() {
 	python3 ./configure.py --bootstrap
 }
 
diff --git a/poky/meta/recipes-devtools/opkg-utils/opkg-utils_0.4.5.bb b/poky/meta/recipes-devtools/opkg-utils/opkg-utils_0.4.5.bb
index 93d2911..a2bcc7f 100644
--- a/poky/meta/recipes-devtools/opkg-utils/opkg-utils_0.4.5.bb
+++ b/poky/meta/recipes-devtools/opkg-utils/opkg-utils_0.4.5.bb
@@ -1,5 +1,5 @@
 SUMMARY = "Additional utilities for the opkg package manager"
-SUMMARY_update-alternatives-opkg = "Utility for managing the alternatives system"
+SUMMARY:update-alternatives-opkg = "Utility for managing the alternatives system"
 SECTION = "base"
 HOMEPAGE = "http://git.yoctoproject.org/cgit/cgit.cgi/opkg-utils"
 LICENSE = "GPLv2+"
@@ -17,13 +17,13 @@
 
 TARGET_CC_ARCH += "${LDFLAGS}"
 
-RDEPENDS_${PN} += "bash"
+RDEPENDS:${PN} += "bash"
 
 inherit perlnative
 
 # For native builds we use the host Python
 PYTHONRDEPS = "python3 python3-shell python3-io python3-math python3-crypt python3-logging python3-fcntl python3-pickle python3-compression python3-stringold"
-PYTHONRDEPS_class-native = ""
+PYTHONRDEPS:class-native = ""
 
 PACKAGECONFIG = "python update-alternatives"
 PACKAGECONFIG[python] = ",,,${PYTHONRDEPS}"
@@ -36,7 +36,7 @@
 	fi
 }
 
-do_install_append_class-target() {
+do_install:append:class-target() {
 	if ! ${@bb.utils.contains('PACKAGECONFIG', 'python', 'true', 'false', d)}; then
 		grep -lZ "/usr/bin/env.*python" ${D}${bindir}/* | xargs -0 rm
 	fi
@@ -48,15 +48,15 @@
 
 # These are empty and will pull python3-dev into images where it wouldn't
 # have been otherwise, so don't generate them.
-PACKAGES_remove = "${PN}-dev ${PN}-staticdev"
+PACKAGES:remove = "${PN}-dev ${PN}-staticdev"
 
 PACKAGES =+ "update-alternatives-opkg"
-FILES_update-alternatives-opkg = "${bindir}/update-alternatives"
-RPROVIDES_update-alternatives-opkg = "update-alternatives update-alternatives-cworth"
-RREPLACES_update-alternatives-opkg = "update-alternatives-cworth"
-RCONFLICTS_update-alternatives-opkg = "update-alternatives-cworth"
+FILES:update-alternatives-opkg = "${bindir}/update-alternatives"
+RPROVIDES:update-alternatives-opkg = "update-alternatives update-alternatives-cworth"
+RREPLACES:update-alternatives-opkg = "update-alternatives-cworth"
+RCONFLICTS:update-alternatives-opkg = "update-alternatives-cworth"
 
-pkg_postrm_update-alternatives-opkg() {
+pkg_postrm:update-alternatives-opkg() {
 	rm -rf $D${nonarch_libdir}/opkg/alternatives
 	rmdir $D${nonarch_libdir}/opkg || true
 }
diff --git a/poky/meta/recipes-devtools/opkg/opkg-arch-config_1.0.bb b/poky/meta/recipes-devtools/opkg/opkg-arch-config_1.0.bb
index 0c2dbc9..dc17de2 100644
--- a/poky/meta/recipes-devtools/opkg/opkg-arch-config_1.0.bb
+++ b/poky/meta/recipes-devtools/opkg/opkg-arch-config_1.0.bb
@@ -26,10 +26,10 @@
 	install -m 0644  ${S}/${sysconfdir}/opkg/* ${D}${sysconfdir}/opkg/
 }
 
-FILES_${PN} = "${sysconfdir}/opkg/ "
+FILES:${PN} = "${sysconfdir}/opkg/ "
 
-CONFFILES_${PN} += "${sysconfdir}/opkg/arch.conf"
+CONFFILES:${PN} += "${sysconfdir}/opkg/arch.conf"
 
-RREPLACES_${PN} = "opkg-config-base"
-RCONFLICTS_${PN} = "opkg-config-base"
-RPROVIDES_${PN} = "opkg-config-base"
+RREPLACES:${PN} = "opkg-config-base"
+RCONFLICTS:${PN} = "opkg-config-base"
+RPROVIDES:${PN} = "opkg-config-base"
diff --git a/poky/meta/recipes-devtools/opkg/opkg-keyrings_1.0.bb b/poky/meta/recipes-devtools/opkg/opkg-keyrings_1.0.bb
index 07e2402..84aeb98 100644
--- a/poky/meta/recipes-devtools/opkg/opkg-keyrings_1.0.bb
+++ b/poky/meta/recipes-devtools/opkg/opkg-keyrings_1.0.bb
@@ -5,7 +5,7 @@
 # Distro-specific keys can be added to this package in two ways:
 #
 #   1) In a .bbappend, add .gpg and/or .asc files to SRC_URI and install them to
-#      ${D}${datadir}/opkg/keyrings/ in a do_install_append function. These
+#      ${D}${datadir}/opkg/keyrings/ in a do_install:append function. These
 #      files should not be named 'key-$name.gpg' to ensure they don't conflict
 #      with keys exported as per (2).
 #
@@ -30,12 +30,12 @@
     done
 }
 
-FILES_${PN} = "${datadir}/opkg/keyrings"
+FILES:${PN} = "${datadir}/opkg/keyrings"
 
 # We need 'opkg-key' to run the postinst script
-RDEPENDS_${PN} = "opkg"
+RDEPENDS:${PN} = "opkg"
 
-pkg_postinst_ontarget_${PN} () {
+pkg_postinst_ontarget:${PN} () {
     if test -x ${bindir}/opkg-key
     then
         ${bindir}/opkg-key populate
diff --git a/poky/meta/recipes-devtools/opkg/opkg_0.4.5.bb b/poky/meta/recipes-devtools/opkg/opkg_0.4.5.bb
index 56d6211..ef18ccf 100644
--- a/poky/meta/recipes-devtools/opkg/opkg_0.4.5.bb
+++ b/poky/meta/recipes-devtools/opkg/opkg_0.4.5.bb
@@ -1,5 +1,5 @@
 SUMMARY = "Open Package Manager"
-SUMMARY_libopkg = "Open Package Manager library"
+SUMMARY:libopkg = "Open Package Manager library"
 SECTION = "base"
 HOMEPAGE = "http://code.google.com/p/opkg/"
 DESCRIPTION = "Opkg is a lightweight package management system based on Ipkg."
@@ -44,9 +44,9 @@
 PACKAGECONFIG[libsolv] = "--with-libsolv,--without-libsolv,libsolv"
 
 EXTRA_OECONF += " --disable-pathfinder"
-EXTRA_OECONF_class-native = "--localstatedir=/${@os.path.relpath('${localstatedir}', '${STAGING_DIR_NATIVE}')} --sysconfdir=/${@os.path.relpath('${sysconfdir}', '${STAGING_DIR_NATIVE}')}"
+EXTRA_OECONF:class-native = "--localstatedir=/${@os.path.relpath('${localstatedir}', '${STAGING_DIR_NATIVE}')} --sysconfdir=/${@os.path.relpath('${sysconfdir}', '${STAGING_DIR_NATIVE}')}"
 
-do_install_append () {
+do_install:append () {
 	install -d ${D}${sysconfdir}/opkg
 	install -m 0644 ${WORKDIR}/opkg.conf ${D}${sysconfdir}/opkg/opkg.conf
 	echo "option lists_dir ${OPKGLIBDIR}/opkg/lists" >>${D}${sysconfdir}/opkg/opkg.conf
@@ -60,7 +60,7 @@
 	sed -i -e '/@PYTHONPATH=. $(PYTHON) $^/a\\t@if [ "$$?" != "0" ];then echo "FAIL:"$^;else echo "PASS:"$^;fi' ${D}${PTEST_PATH}/tests/Makefile
 }
 
-WARN_QA_append += "openssl-deprecation"
+WARN_QA:append += "openssl-deprecation"
 QAPKGTEST[openssl-deprecation] = "package_qa_check_openssl_deprecation"
 def package_qa_check_openssl_deprecation (package, d, messages):
     sane = True
@@ -73,16 +73,16 @@
     return sane
 
 
-RDEPENDS_${PN} = "${VIRTUAL-RUNTIME_update-alternatives} opkg-arch-config libarchive"
-RDEPENDS_${PN}_class-native = ""
-RDEPENDS_${PN}_class-nativesdk = ""
-RDEPENDS_${PN}-ptest += "make binutils python3-core python3-compression"
-RREPLACES_${PN} = "opkg-nogpg opkg-collateral"
-RCONFLICTS_${PN} = "opkg-collateral"
-RPROVIDES_${PN} = "opkg-collateral"
+RDEPENDS:${PN} = "${VIRTUAL-RUNTIME_update-alternatives} opkg-arch-config libarchive"
+RDEPENDS:${PN}:class-native = ""
+RDEPENDS:${PN}:class-nativesdk = ""
+RDEPENDS:${PN}-ptest += "make binutils python3-core python3-compression"
+RREPLACES:${PN} = "opkg-nogpg opkg-collateral"
+RCONFLICTS:${PN} = "opkg-collateral"
+RPROVIDES:${PN} = "opkg-collateral"
 
-FILES_libopkg = "${libdir}/*.so.* ${OPKGLIBDIR}/opkg/"
+FILES:libopkg = "${libdir}/*.so.* ${OPKGLIBDIR}/opkg/"
 
 BBCLASSEXTEND = "native nativesdk"
 
-CONFFILES_${PN} = "${sysconfdir}/opkg/opkg.conf"
+CONFFILES:${PN} = "${sysconfdir}/opkg/opkg.conf"
diff --git a/poky/meta/recipes-devtools/orc/orc_0.4.32.bb b/poky/meta/recipes-devtools/orc/orc_0.4.32.bb
index 0b63716..829255f 100644
--- a/poky/meta/recipes-devtools/orc/orc_0.4.32.bb
+++ b/poky/meta/recipes-devtools/orc/orc_0.4.32.bb
@@ -17,14 +17,14 @@
 
 PACKAGES =+ "orc-examples"
 PACKAGES_DYNAMIC += "^liborc-.*"
-FILES_orc-examples = "${libdir}/orc/*"
-FILES_${PN} = "${bindir}/*"
+FILES:orc-examples = "${libdir}/orc/*"
+FILES:${PN} = "${bindir}/*"
 
-python populate_packages_prepend () {
+python populate_packages:prepend () {
     libdir = d.expand('${libdir}')
     do_split_packages(d, libdir, r'^lib(.*)\.so\.*', 'lib%s', 'ORC %s library', extra_depends='', allow_links=True)
 }
 
-do_compile_prepend_class-native () {
+do_compile:prepend:class-native () {
     sed -i -e 's#/tmp#.#g' ${S}/orc/orccodemem.c
 }
diff --git a/poky/meta/recipes-devtools/patch/patch.inc b/poky/meta/recipes-devtools/patch/patch.inc
index cbfb8cf..a12d426 100644
--- a/poky/meta/recipes-devtools/patch/patch.inc
+++ b/poky/meta/recipes-devtools/patch/patch.inc
@@ -10,5 +10,5 @@
 
 inherit autotools update-alternatives
 
-ALTERNATIVE_${PN} = "patch"
+ALTERNATIVE:${PN} = "patch"
 ALTERNATIVE_PRIORITY = "100"
diff --git a/poky/meta/recipes-devtools/patch/patch_2.7.6.bb b/poky/meta/recipes-devtools/patch/patch_2.7.6.bb
index 1997af0..b4f986e 100644
--- a/poky/meta/recipes-devtools/patch/patch_2.7.6.bb
+++ b/poky/meta/recipes-devtools/patch/patch_2.7.6.bb
@@ -23,6 +23,6 @@
 PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'xattr', d)}"
 PACKAGECONFIG[xattr] = "--enable-xattr,--disable-xattr,attr,"
 
-PROVIDES_append_class-native = " patch-replacement-native"
+PROVIDES:append:class-native = " patch-replacement-native"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/perl-cross/perlcross_1.3.6.bb b/poky/meta/recipes-devtools/perl-cross/perlcross_1.3.6.bb
index b19692b..2759ef8 100644
--- a/poky/meta/recipes-devtools/perl-cross/perlcross_1.3.6.bb
+++ b/poky/meta/recipes-devtools/perl-cross/perlcross_1.3.6.bb
@@ -31,7 +31,7 @@
 do_compile () {
 }
 
-do_install_class-native() {
+do_install:class-native() {
     mkdir -p ${D}/${datadir}/perl-cross/
     cp -rf ${S}/* ${D}/${datadir}/perl-cross/
 }
diff --git a/poky/meta/recipes-devtools/perl/files/perl-rdepends.txt b/poky/meta/recipes-devtools/perl/files/perl-rdepends.txt
index f20fc44..dd23dc2 100644
--- a/poky/meta/recipes-devtools/perl/files/perl-rdepends.txt
+++ b/poky/meta/recipes-devtools/perl/files/perl-rdepends.txt
@@ -1,2025 +1,2025 @@
 
 # Some additional dependencies that the above doesn't manage to figure out
-RDEPENDS_perl-module-file-spec += "perl-module-file-spec-unix"
-RDEPENDS_perl-module-math-bigint += "perl-module-math-bigint-calc"
-RDEPENDS_perl-module-thread-queue += "perl-module-attributes"
-RDEPENDS_perl-module-overload += "perl-module-overloading"
+RDEPENDS:perl-module-file-spec += "perl-module-file-spec-unix"
+RDEPENDS:perl-module-math-bigint += "perl-module-math-bigint-calc"
+RDEPENDS:perl-module-thread-queue += "perl-module-attributes"
+RDEPENDS:perl-module-overload += "perl-module-overloading"
 
 # Generated depends list beyond this line
-RDEPENDS_perl-module-anydbm-file += "perl-module-strict"
-RDEPENDS_perl-module-anydbm-file += "perl-module-warnings"
-RDEPENDS_perl-module-app-cpan += "perl-module-config"
-RDEPENDS_perl-module-app-cpan += "perl-module-constant"
-RDEPENDS_perl-module-app-cpan += "perl-module-cpan"
-RDEPENDS_perl-module-app-cpan += "perl-module-cwd"
-RDEPENDS_perl-module-app-cpan += "perl-module-data-dumper"
-RDEPENDS_perl-module-app-cpan += "perl-module-file-basename"
-RDEPENDS_perl-module-app-cpan += "perl-module-file-find"
-RDEPENDS_perl-module-app-cpan += "perl-module-getopt-std"
-RDEPENDS_perl-module-app-cpan += "perl-module-if"
-RDEPENDS_perl-module-app-cpan += "perl-module-net-ping"
-RDEPENDS_perl-module-app-cpan += "perl-module-strict"
-RDEPENDS_perl-module-app-cpan += "perl-module-user-pwent"
-RDEPENDS_perl-module-app-cpan += "perl-module-vars"
-RDEPENDS_perl-module-app-cpan += "perl-module-warnings"
-RDEPENDS_perl-module-app-prove += "perl-module-app-prove-state"
-RDEPENDS_perl-module-app-prove += "perl-module-base"
-RDEPENDS_perl-module-app-prove += "perl-module-constant"
-RDEPENDS_perl-module-app-prove += "perl-module-getopt-long"
-RDEPENDS_perl-module-app-prove += "perl-module-strict"
-RDEPENDS_perl-module-app-prove += "perl-module-tap-harness"
-RDEPENDS_perl-module-app-prove += "perl-module-tap-harness-env"
-RDEPENDS_perl-module-app-prove += "perl-module-text-parsewords"
-RDEPENDS_perl-module-app-prove += "perl-module-warnings"
-RDEPENDS_perl-module-app-prove-state += "perl-module-app-prove-state-result"
-RDEPENDS_perl-module-app-prove-state += "perl-module-base"
-RDEPENDS_perl-module-app-prove-state += "perl-module-constant"
-RDEPENDS_perl-module-app-prove-state += "perl-module-file-find"
-RDEPENDS_perl-module-app-prove-state += "perl-module-strict"
-RDEPENDS_perl-module-app-prove-state += "perl-module-tap-parser-yamlish-reader"
-RDEPENDS_perl-module-app-prove-state += "perl-module-tap-parser-yamlish-writer"
-RDEPENDS_perl-module-app-prove-state += "perl-module-warnings"
-RDEPENDS_perl-module-app-prove-state-result += "perl-module-app-prove-state-result-test"
-RDEPENDS_perl-module-app-prove-state-result += "perl-module-constant"
-RDEPENDS_perl-module-app-prove-state-result += "perl-module-strict"
-RDEPENDS_perl-module-app-prove-state-result += "perl-module-warnings"
-RDEPENDS_perl-module-app-prove-state-result-test += "perl-module-strict"
-RDEPENDS_perl-module-app-prove-state-result-test += "perl-module-warnings"
-RDEPENDS_perl-module-archive-tar-constant += "perl-module-constant"
-RDEPENDS_perl-module-archive-tar-constant += "perl-module-exporter"
-RDEPENDS_perl-module-archive-tar-constant += "perl-module-io-compress-bzip2"
-RDEPENDS_perl-module-archive-tar-constant += "perl-module-strict"
-RDEPENDS_perl-module-archive-tar-constant += "perl-module-time-local"
-RDEPENDS_perl-module-archive-tar-constant += "perl-module-warnings"
-RDEPENDS_perl-module-archive-tar-file += "perl-module-archive-tar"
-RDEPENDS_perl-module-archive-tar-file += "perl-module-archive-tar-constant"
-RDEPENDS_perl-module-archive-tar-file += "perl-module-file-basename"
-RDEPENDS_perl-module-archive-tar-file += "perl-module-io-file"
-RDEPENDS_perl-module-archive-tar-file += "perl-module-strict"
-RDEPENDS_perl-module-archive-tar-file += "perl-module-vars"
-RDEPENDS_perl-module-archive-tar += "perl-module-archive-tar-constant"
-RDEPENDS_perl-module-archive-tar += "perl-module-archive-tar-file"
-RDEPENDS_perl-module-archive-tar += "perl-module-config"
-RDEPENDS_perl-module-archive-tar += "perl-module-cwd"
-RDEPENDS_perl-module-archive-tar += "perl-module-exporter"
-RDEPENDS_perl-module-archive-tar += "perl-module-file-path"
-RDEPENDS_perl-module-archive-tar += "perl-module-io-file"
-RDEPENDS_perl-module-archive-tar += "perl-module-io-zlib"
-RDEPENDS_perl-module-archive-tar += "perl-module-strict"
-RDEPENDS_perl-module-archive-tar += "perl-module-vars"
-RDEPENDS_perl-module-attribute-handlers += "perl-module-strict"
-RDEPENDS_perl-module-attribute-handlers += "perl-module-warnings"
-RDEPENDS_perl-module-attributes += "perl-module-exporter"
-RDEPENDS_perl-module-attributes += "perl-module-strict"
-RDEPENDS_perl-module-attributes += "perl-module-warnings"
-RDEPENDS_perl-module-attributes += "perl-module-xsloader"
-RDEPENDS_perl-module-autodie-exception += "perl-module-constant"
-RDEPENDS_perl-module-autodie-exception += "perl-module-fatal"
-RDEPENDS_perl-module-autodie-exception += "perl-module-fcntl"
-RDEPENDS_perl-module-autodie-exception += "perl-module-overload"
-RDEPENDS_perl-module-autodie-exception += "perl-module-strict"
-RDEPENDS_perl-module-autodie-exception += "perl-module-warnings"
-RDEPENDS_perl-module-autodie-exception-system += "perl-module-parent"
-RDEPENDS_perl-module-autodie-exception-system += "perl-module-strict"
-RDEPENDS_perl-module-autodie-exception-system += "perl-module-warnings"
-RDEPENDS_perl-module-autodie-hints += "perl-module-b"
-RDEPENDS_perl-module-autodie-hints += "perl-module-constant"
-RDEPENDS_perl-module-autodie-hints += "perl-module-strict"
-RDEPENDS_perl-module-autodie-hints += "perl-module-warnings"
-RDEPENDS_perl-module-autodie += "perl-module-constant"
-RDEPENDS_perl-module-autodie += "perl-module-lib"
-RDEPENDS_perl-module-autodie += "perl-module-parent"
-RDEPENDS_perl-module-autodie += "perl-module-strict"
-RDEPENDS_perl-module-autodie += "perl-module-warnings"
-RDEPENDS_perl-module-autodie-scope-guard += "perl-module-strict"
-RDEPENDS_perl-module-autodie-scope-guard += "perl-module-warnings"
-RDEPENDS_perl-module-autodie-scope-guardstack += "perl-module-autodie-scope-guard"
-RDEPENDS_perl-module-autodie-scope-guardstack += "perl-module-strict"
-RDEPENDS_perl-module-autodie-scope-guardstack += "perl-module-warnings"
-RDEPENDS_perl-module-autodie-skip += "perl-module-strict"
-RDEPENDS_perl-module-autodie-skip += "perl-module-warnings"
-RDEPENDS_perl-module-autodie-util += "perl-module-autodie-scope-guardstack"
-RDEPENDS_perl-module-autodie-util += "perl-module-exporter"
-RDEPENDS_perl-module-autodie-util += "perl-module-strict"
-RDEPENDS_perl-module-autodie-util += "perl-module-warnings"
-RDEPENDS_perl-module-autoloader += "perl-module-strict"
-RDEPENDS_perl-module-autosplit += "perl-module-config"
-RDEPENDS_perl-module-autosplit += "perl-module-exporter"
-RDEPENDS_perl-module-autosplit += "perl-module-file-basename"
-RDEPENDS_perl-module-autosplit += "perl-module-file-path"
-RDEPENDS_perl-module-autosplit += "perl-module-strict"
-RDEPENDS_perl-module-base += "perl-module-strict"
-RDEPENDS_perl-module-b-concise += "perl-module-b"
-RDEPENDS_perl-module-b-concise += "perl-module-b-op-private"
-RDEPENDS_perl-module-b-concise += "perl-module-config"
-RDEPENDS_perl-module-b-concise += "perl-module-exporter"
-RDEPENDS_perl-module-b-concise += "perl-module-feature"
-RDEPENDS_perl-module-b-concise += "perl-module-strict"
-RDEPENDS_perl-module-b-concise += "perl-module-warnings"
-RDEPENDS_perl-module-benchmark += "perl-module-exporter"
-RDEPENDS_perl-module-benchmark += "perl-module-strict"
-RDEPENDS_perl-module-bigint += "perl-module-constant"
-RDEPENDS_perl-module-bigint += "perl-module-exporter"
-RDEPENDS_perl-module-bigint += "perl-module-math-bigint"
-RDEPENDS_perl-module-bigint += "perl-module-math-bigint-trace"
-RDEPENDS_perl-module-bigint += "perl-module-overload"
-RDEPENDS_perl-module-bigint += "perl-module-strict"
-RDEPENDS_perl-module-bigint += "perl-module-warnings"
-RDEPENDS_perl-module-bignum += "perl-module-bigint"
-RDEPENDS_perl-module-bignum += "perl-module-exporter"
-RDEPENDS_perl-module-bignum += "perl-module-math-bigfloat"
-RDEPENDS_perl-module-bignum += "perl-module-math-bigfloat-trace"
-RDEPENDS_perl-module-bignum += "perl-module-math-bigint"
-RDEPENDS_perl-module-bignum += "perl-module-math-bigint-trace"
-RDEPENDS_perl-module-bignum += "perl-module-overload"
-RDEPENDS_perl-module-bignum += "perl-module-strict"
-RDEPENDS_perl-module-bignum += "perl-module-warnings"
-RDEPENDS_perl-module-bigrat += "perl-module-bigint"
-RDEPENDS_perl-module-bigrat += "perl-module-exporter"
-RDEPENDS_perl-module-bigrat += "perl-module-math-bigfloat"
-RDEPENDS_perl-module-bigrat += "perl-module-math-bigint"
-RDEPENDS_perl-module-bigrat += "perl-module-math-bigint-trace"
-RDEPENDS_perl-module-bigrat += "perl-module-math-bigrat"
-RDEPENDS_perl-module-bigrat += "perl-module-overload"
-RDEPENDS_perl-module-bigrat += "perl-module-strict"
-RDEPENDS_perl-module-bigrat += "perl-module-warnings"
-RDEPENDS_perl-module-blib += "perl-module-cwd"
-RDEPENDS_perl-module-b += "perl-module-exporter"
-RDEPENDS_perl-module-b += "perl-module-xsloader"
-RDEPENDS_perl-module-b-showlex += "perl-module-b"
-RDEPENDS_perl-module-b-showlex += "perl-module-b-concise"
-RDEPENDS_perl-module-b-showlex += "perl-module-b-terse"
-RDEPENDS_perl-module-b-showlex += "perl-module-strict"
-RDEPENDS_perl-module-b-terse += "perl-module-b"
-RDEPENDS_perl-module-b-terse += "perl-module-b-concise"
-RDEPENDS_perl-module-b-terse += "perl-module-strict"
-RDEPENDS_perl-module-b-xref += "perl-module-b"
-RDEPENDS_perl-module-b-xref += "perl-module-config"
-RDEPENDS_perl-module-b-xref += "perl-module-strict"
-RDEPENDS_perl-module-bytes += "perl-module-bytes-heavy"
-RDEPENDS_perl-module--charnames += "perl-module-bytes"
-RDEPENDS_perl-module-charnames += "perl-module-bytes"
-RDEPENDS_perl-module-charnames += "perl-module--charnames"
-RDEPENDS_perl-module--charnames += "perl-module-re"
-RDEPENDS_perl-module-charnames += "perl-module-re"
-RDEPENDS_perl-module--charnames += "perl-module-strict"
-RDEPENDS_perl-module-charnames += "perl-module-strict"
-RDEPENDS_perl-module--charnames += "perl-module-warnings"
-RDEPENDS_perl-module-charnames += "perl-module-warnings"
-RDEPENDS_perl-module-class-struct += "perl-module-exporter"
-RDEPENDS_perl-module-class-struct += "perl-module-strict"
-RDEPENDS_perl-module-class-struct += "perl-module-warnings-register"
-RDEPENDS_perl-module-compress-raw-bzip2 += "perl-module-bytes "
-RDEPENDS_perl-module-compress-raw-bzip2 += "perl-module-constant"
-RDEPENDS_perl-module-compress-raw-bzip2 += "perl-module-dynaloader"
-RDEPENDS_perl-module-compress-raw-bzip2 += "perl-module-exporter"
-RDEPENDS_perl-module-compress-raw-bzip2 += "perl-module-strict "
-RDEPENDS_perl-module-compress-raw-bzip2 += "perl-module-warnings "
-RDEPENDS_perl-module-compress-raw-bzip2 += "perl-module-xsloader"
-RDEPENDS_perl-module-compress-raw-zlib += "perl-module-bytes "
-RDEPENDS_perl-module-compress-raw-zlib += "perl-module-constant"
-RDEPENDS_perl-module-compress-raw-zlib += "perl-module-dynaloader"
-RDEPENDS_perl-module-compress-raw-zlib += "perl-module-exporter"
-RDEPENDS_perl-module-compress-raw-zlib += "perl-module-strict "
-RDEPENDS_perl-module-compress-raw-zlib += "perl-module-warnings "
-RDEPENDS_perl-module-compress-raw-zlib += "perl-module-xsloader"
-RDEPENDS_perl-module-compress-zlib += "perl-module-bytes "
-RDEPENDS_perl-module-compress-zlib += "perl-module-compress-raw-zlib"
-RDEPENDS_perl-module-compress-zlib += "perl-module-constant"
-RDEPENDS_perl-module-compress-zlib += "perl-module-exporter"
-RDEPENDS_perl-module-compress-zlib += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-compress-zlib += "perl-module-io-compress-gzip"
-RDEPENDS_perl-module-compress-zlib += "perl-module-io-compress-gzip-constants"
-RDEPENDS_perl-module-compress-zlib += "perl-module-io-handle "
-RDEPENDS_perl-module-compress-zlib += "perl-module-io-uncompress-gunzip"
-RDEPENDS_perl-module-compress-zlib += "perl-module-strict "
-RDEPENDS_perl-module-compress-zlib += "perl-module-warnings "
-RDEPENDS_perl-module-config-extensions += "perl-module-config"
-RDEPENDS_perl-module-config-extensions += "perl-module-exporter"
-RDEPENDS_perl-module-config-extensions += "perl-module-strict"
-RDEPENDS_perl-module-config-perl-v += "perl-module-config"
-RDEPENDS_perl-module-config-perl-v += "perl-module-exporter"
-RDEPENDS_perl-module-config-perl-v += "perl-module-strict"
-RDEPENDS_perl-module-config-perl-v += "perl-module-vars"
-RDEPENDS_perl-module-config-perl-v += "perl-module-warnings"
-RDEPENDS_perl-module-constant += "perl-module-strict"
-RDEPENDS_perl-module-constant += "perl-module-warnings-register"
-RDEPENDS_perl-module-corelist += "perl-module-list-util"
-RDEPENDS_perl-module-corelist += "perl-module-corelist"
-RDEPENDS_perl-module-corelist += "perl-module-strict"
-RDEPENDS_perl-module-corelist += "perl-module-version"
-RDEPENDS_perl-module-corelist += "perl-module-warnings"
-RDEPENDS_perl-module-cpan += "perl-module-b"
-RDEPENDS_perl-module-cpan += "perl-module-config"
-RDEPENDS_perl-module-cpan += "perl-module-cwd"
-RDEPENDS_perl-module-cpan += "perl-module-data-dumper"
-RDEPENDS_perl-module-cpan += "perl-module-dirhandle"
-RDEPENDS_perl-module-cpan += "perl-module-errno"
-RDEPENDS_perl-module-cpan += "perl-module-exporter"
-RDEPENDS_perl-module-cpan += "perl-module-extutils-makemaker"
-RDEPENDS_perl-module-cpan += "perl-module-extutils-manifest"
-RDEPENDS_perl-module-cpan += "perl-module-fcntl"
-RDEPENDS_perl-module-cpan += "perl-module-file-basename"
-RDEPENDS_perl-module-cpan += "perl-module-file-copy"
-RDEPENDS_perl-module-cpan += "perl-module-file-find"
-RDEPENDS_perl-module-cpan += "perl-module-filehandle"
-RDEPENDS_perl-module-cpan += "perl-module-file-path"
-RDEPENDS_perl-module-cpan += "perl-module-json-pp"
-RDEPENDS_perl-module-cpan += "perl-module-lib"
-RDEPENDS_perl-module-cpan += "perl-module-net-ping"
-RDEPENDS_perl-module-cpan += "perl-module-overload"
-RDEPENDS_perl-module-cpan += "perl-module-posix"
-RDEPENDS_perl-module-cpan += "perl-module-safe"
-RDEPENDS_perl-module-cpan += "perl-module-strict"
-RDEPENDS_perl-module-cpan += "perl-module-sys-hostname"
-RDEPENDS_perl-module-cpan += "perl-module-term-readline"
-RDEPENDS_perl-module-cpan += "perl-module-text-parsewords"
-RDEPENDS_perl-module-cpan += "perl-module-text-wrap"
-RDEPENDS_perl-module-cpan += "perl-module-time-local"
-RDEPENDS_perl-module-cpan += "perl-module-vars"
-RDEPENDS_perl-module-cpan += "perl-module-warnings"
-RDEPENDS_perl-module-cwd += "perl-module-errno"
-RDEPENDS_perl-module-cwd += "perl-module-exporter"
-RDEPENDS_perl-module-cwd += "perl-module-strict"
-RDEPENDS_perl-module-cwd += "perl-module-xsloader"
-RDEPENDS_perl-module-data-dumper += "perl-module-config"
-RDEPENDS_perl-module-data-dumper += "perl-module-constant"
-RDEPENDS_perl-module-data-dumper += "perl-module-exporter"
-RDEPENDS_perl-module-data-dumper += "perl-module-xsloader"
-RDEPENDS_perl-module-db-file += "perl-module-dynaloader"
-RDEPENDS_perl-module-db-file += "perl-module-exporter"
-RDEPENDS_perl-module-db-file += "perl-module-fcntl"
-RDEPENDS_perl-module-db-file += "perl-module-strict "
-RDEPENDS_perl-module-db-file += "perl-module-strict"
-RDEPENDS_perl-module-db-file += "perl-module-tie-hash"
-RDEPENDS_perl-module-db-file += "perl-module-warnings"
-RDEPENDS_perl-module-dbm-filter-compress += "perl-module-strict"
-RDEPENDS_perl-module-dbm-filter-compress += "perl-module-warnings"
-RDEPENDS_perl-module-dbm-filter-encode += "perl-module-strict"
-RDEPENDS_perl-module-dbm-filter-encode += "perl-module-warnings"
-RDEPENDS_perl-module-dbm-filter-int32 += "perl-module-strict"
-RDEPENDS_perl-module-dbm-filter-int32 += "perl-module-warnings"
-RDEPENDS_perl-module-dbm-filter-null += "perl-module-strict"
-RDEPENDS_perl-module-dbm-filter-null += "perl-module-warnings"
-RDEPENDS_perl-module-dbm-filter += "perl-module-strict"
-RDEPENDS_perl-module-dbm-filter += "perl-module-warnings"
-RDEPENDS_perl-module-dbm-filter-utf8 += "perl-module-strict"
-RDEPENDS_perl-module-dbm-filter-utf8 += "perl-module-warnings"
-RDEPENDS_perl-module-db += "perl-module-strict"
-RDEPENDS_perl-module-deprecate += "perl-module-strict"
-RDEPENDS_perl-module-deprecate += "perl-module-warnings"
-RDEPENDS_perl-module-devel-peek += "perl-module-exporter"
-RDEPENDS_perl-module-devel-peek += "perl-module-xsloader"
-RDEPENDS_perl-module-devel-ppport += "perl-module-file-find"
-RDEPENDS_perl-module-devel-ppport += "perl-module-getopt-long"
-RDEPENDS_perl-module-devel-ppport += "perl-module-strict"
-RDEPENDS_perl-module-devel-ppport += "perl-module-vars"
-RDEPENDS_perl-module-devel-selfstubber += "perl-module-selfloader"
-RDEPENDS_perl-module-diagnostics += "perl-module-config"
-RDEPENDS_perl-module-diagnostics += "perl-module-getopt-std"
-RDEPENDS_perl-module-diagnostics += "perl-module-strict"
-RDEPENDS_perl-module-diagnostics += "perl-module-text-tabs"
-RDEPENDS_perl-module-digest-base += "perl-module-mime-base64"
-RDEPENDS_perl-module-digest-base += "perl-module-strict"
-RDEPENDS_perl-module-digest-base += "perl-module-vars"
-RDEPENDS_perl-module-digest-file += "perl-module-digest"
-RDEPENDS_perl-module-digest-file += "perl-module-exporter"
-RDEPENDS_perl-module-digest-file += "perl-module-strict"
-RDEPENDS_perl-module-digest-file += "perl-module-vars"
-RDEPENDS_perl-module-digest-md5 += "perl-module-digest-base"
-RDEPENDS_perl-module-digest-md5 += "perl-module-exporter"
-RDEPENDS_perl-module-digest-md5 += "perl-module-strict"
-RDEPENDS_perl-module-digest-md5 += "perl-module-vars"
-RDEPENDS_perl-module-digest-md5 += "perl-module-xsloader"
-RDEPENDS_perl-module-digest += "perl-module-strict"
-RDEPENDS_perl-module-digest += "perl-module-vars"
-RDEPENDS_perl-module-digest-sha += "perl-module-digest-base"
-RDEPENDS_perl-module-digest-sha += "perl-module-dynaloader"
-RDEPENDS_perl-module-digest-sha += "perl-module-exporter"
-RDEPENDS_perl-module-digest-sha += "perl-module-fcntl"
-RDEPENDS_perl-module-digest-sha += "perl-module-integer"
-RDEPENDS_perl-module-digest-sha += "perl-module-strict"
-RDEPENDS_perl-module-digest-sha += "perl-module-vars"
-RDEPENDS_perl-module-digest-sha += "perl-module-warnings"
-RDEPENDS_perl-module-digest-sha += "perl-module-xsloader"
-RDEPENDS_perl-module-dynaloader += "perl-module-config"
-RDEPENDS_perl-module-encode-alias += "perl-module-constant"
-RDEPENDS_perl-module-encode-alias += "perl-module-encode"
-RDEPENDS_perl-module-encode-alias += "perl-module-exporter"
-RDEPENDS_perl-module-encode-alias += "perl-module-strict"
-RDEPENDS_perl-module-encode-alias += "perl-module-warnings"
-RDEPENDS_perl-module-encode-byte += "perl-module-encode"
-RDEPENDS_perl-module-encode-byte += "perl-module-strict"
-RDEPENDS_perl-module-encode-byte += "perl-module-warnings"
-RDEPENDS_perl-module-encode-byte += "perl-module-xsloader"
-RDEPENDS_perl-module-encode-cjkconstants += "perl-module-exporter"
-RDEPENDS_perl-module-encode-cjkconstants += "perl-module-strict"
-RDEPENDS_perl-module-encode-cjkconstants += "perl-module-warnings"
-RDEPENDS_perl-module-encode-cn-hz += "perl-module-encode"
-RDEPENDS_perl-module-encode-cn-hz += "perl-module-parent"
-RDEPENDS_perl-module-encode-cn-hz += "perl-module-strict"
-RDEPENDS_perl-module-encode-cn-hz += "perl-module-utf8"
-RDEPENDS_perl-module-encode-cn-hz += "perl-module-vars"
-RDEPENDS_perl-module-encode-cn-hz += "perl-module-warnings"
-RDEPENDS_perl-module-encode-cn += "perl-module-encode"
-RDEPENDS_perl-module-encode-cn += "perl-module-encode-cn-hz"
-RDEPENDS_perl-module-encode-cn += "perl-module-strict"
-RDEPENDS_perl-module-encode-cn += "perl-module-warnings"
-RDEPENDS_perl-module-encode-cn += "perl-module-xsloader"
-RDEPENDS_perl-module-encode-config += "perl-module-strict"
-RDEPENDS_perl-module-encode-config += "perl-module-warnings"
-RDEPENDS_perl-module-encode-ebcdic += "perl-module-encode"
-RDEPENDS_perl-module-encode-ebcdic += "perl-module-strict"
-RDEPENDS_perl-module-encode-ebcdic += "perl-module-warnings"
-RDEPENDS_perl-module-encode-ebcdic += "perl-module-xsloader"
-RDEPENDS_perl-module-encode-encoder += "perl-module-constant"
-RDEPENDS_perl-module-encode-encoder += "perl-module-encode"
-RDEPENDS_perl-module-encode-encoder += "perl-module-exporter"
-RDEPENDS_perl-module-encode-encoder += "perl-module-overload"
-RDEPENDS_perl-module-encode-encoder += "perl-module-strict"
-RDEPENDS_perl-module-encode-encoder += "perl-module-warnings"
-RDEPENDS_perl-module-encode-encoding += "perl-module-constant"
-RDEPENDS_perl-module-encode-encoding += "perl-module-encode"
-RDEPENDS_perl-module-encode-encoding += "perl-module-encode-mime-name"
-RDEPENDS_perl-module-encode-encoding += "perl-module-strict"
-RDEPENDS_perl-module-encode-encoding += "perl-module-warnings"
-RDEPENDS_perl-module-encode-gsm0338 += "perl-module-encode"
-RDEPENDS_perl-module-encode-gsm0338 += "perl-module-parent"
-RDEPENDS_perl-module-encode-gsm0338 += "perl-module-strict"
-RDEPENDS_perl-module-encode-gsm0338 += "perl-module-utf8"
-RDEPENDS_perl-module-encode-gsm0338 += "perl-module-vars"
-RDEPENDS_perl-module-encode-gsm0338 += "perl-module-warnings"
-RDEPENDS_perl-module-encode-guess += "perl-module-bytes"
-RDEPENDS_perl-module-encode-guess += "perl-module-constant"
-RDEPENDS_perl-module-encode-guess += "perl-module-encode"
-RDEPENDS_perl-module-encode-guess += "perl-module-encode-unicode"
-RDEPENDS_perl-module-encode-guess += "perl-module-parent"
-RDEPENDS_perl-module-encode-guess += "perl-module-strict"
-RDEPENDS_perl-module-encode-guess += "perl-module-warnings"
-RDEPENDS_perl-module-encode-jp-h2z += "perl-module-encode-cjkconstants"
-RDEPENDS_perl-module-encode-jp-h2z += "perl-module-strict"
-RDEPENDS_perl-module-encode-jp-h2z += "perl-module-vars"
-RDEPENDS_perl-module-encode-jp-h2z += "perl-module-warnings"
-RDEPENDS_perl-module-encode-jp-jis7 += "perl-module-bytes"
-RDEPENDS_perl-module-encode-jp-jis7 += "perl-module-encode"
-RDEPENDS_perl-module-encode-jp-jis7 += "perl-module-encode-cjkconstants"
-RDEPENDS_perl-module-encode-jp-jis7 += "perl-module-encode-jp-h2z"
-RDEPENDS_perl-module-encode-jp-jis7 += "perl-module-parent"
-RDEPENDS_perl-module-encode-jp-jis7 += "perl-module-strict"
-RDEPENDS_perl-module-encode-jp-jis7 += "perl-module-warnings"
-RDEPENDS_perl-module-encode-jp += "perl-module-encode"
-RDEPENDS_perl-module-encode-jp += "perl-module-encode-jp-jis7"
-RDEPENDS_perl-module-encode-jp += "perl-module-strict"
-RDEPENDS_perl-module-encode-jp += "perl-module-warnings"
-RDEPENDS_perl-module-encode-jp += "perl-module-xsloader"
-RDEPENDS_perl-module-encode-kr-2022-kr += "perl-module-encode"
-RDEPENDS_perl-module-encode-kr-2022-kr += "perl-module-encode-cjkconstants"
-RDEPENDS_perl-module-encode-kr-2022-kr += "perl-module-parent"
-RDEPENDS_perl-module-encode-kr-2022-kr += "perl-module-strict"
-RDEPENDS_perl-module-encode-kr-2022-kr += "perl-module-warnings"
-RDEPENDS_perl-module-encode-kr += "perl-module-encode"
-RDEPENDS_perl-module-encode-kr += "perl-module-encode-kr-2022-kr"
-RDEPENDS_perl-module-encode-kr += "perl-module-strict"
-RDEPENDS_perl-module-encode-kr += "perl-module-warnings"
-RDEPENDS_perl-module-encode-kr += "perl-module-xsloader"
-RDEPENDS_perl-module-encode-mime-header-iso-2022-jp += "perl-module-constant"
-RDEPENDS_perl-module-encode-mime-header-iso-2022-jp += "perl-module-encode-cjkconstants"
-RDEPENDS_perl-module-encode-mime-header-iso-2022-jp += "perl-module-parent"
-RDEPENDS_perl-module-encode-mime-header-iso-2022-jp += "perl-module-strict"
-RDEPENDS_perl-module-encode-mime-header-iso-2022-jp += "perl-module-warnings"
-RDEPENDS_perl-module-encode-mime-header += "perl-module-encode"
-RDEPENDS_perl-module-encode-mime-header += "perl-module-mime-base64"
-RDEPENDS_perl-module-encode-mime-header += "perl-module-parent"
-RDEPENDS_perl-module-encode-mime-header += "perl-module-strict"
-RDEPENDS_perl-module-encode-mime-header += "perl-module-warnings"
-RDEPENDS_perl-module-encode-mime-name += "perl-module-strict"
-RDEPENDS_perl-module-encode-mime-name += "perl-module-warnings"
-RDEPENDS_perl-module-encode += "perl-module-bytes"
-RDEPENDS_perl-module-encode += "perl-module-constant"
-RDEPENDS_perl-module-encode += "perl-module-encode-alias"
-RDEPENDS_perl-module-encode += "perl-module-encode-config"
-RDEPENDS_perl-module-encode += "perl-module-encode-configlocal-pm"
-RDEPENDS_perl-module-encode += "perl-module-encode-mime-name"
-RDEPENDS_perl-module-encode += "perl-module-exporter"
-RDEPENDS_perl-module-encode += "perl-module-parent"
-RDEPENDS_perl-module-encode += "perl-module-storable"
-RDEPENDS_perl-module-encode += "perl-module-strict"
-RDEPENDS_perl-module-encode += "perl-module-warnings"
-RDEPENDS_perl-module-encode += "perl-module-xsloader"
-RDEPENDS_perl-module-encode-symbol += "perl-module-encode"
-RDEPENDS_perl-module-encode-symbol += "perl-module-strict"
-RDEPENDS_perl-module-encode-symbol += "perl-module-warnings"
-RDEPENDS_perl-module-encode-symbol += "perl-module-xsloader"
-RDEPENDS_perl-module-encode-tw += "perl-module-encode"
-RDEPENDS_perl-module-encode-tw += "perl-module-strict"
-RDEPENDS_perl-module-encode-tw += "perl-module-warnings"
-RDEPENDS_perl-module-encode-tw += "perl-module-xsloader"
-RDEPENDS_perl-module-encode-unicode += "perl-module-encode"
-RDEPENDS_perl-module-encode-unicode += "perl-module-parent"
-RDEPENDS_perl-module-encode-unicode += "perl-module-strict"
-RDEPENDS_perl-module-encode-unicode += "perl-module-warnings"
-RDEPENDS_perl-module-encode-unicode += "perl-module-xsloader"
-RDEPENDS_perl-module-encode-unicode-utf7 += "perl-module-encode"
-RDEPENDS_perl-module-encode-unicode-utf7 += "perl-module-mime-base64"
-RDEPENDS_perl-module-encode-unicode-utf7 += "perl-module-parent"
-RDEPENDS_perl-module-encode-unicode-utf7 += "perl-module-re"
-RDEPENDS_perl-module-encode-unicode-utf7 += "perl-module-strict"
-RDEPENDS_perl-module-encode-unicode-utf7 += "perl-module-warnings"
-RDEPENDS_perl-module-encoding += "perl-module-config"
-RDEPENDS_perl-module-encoding += "perl-module-constant"
-RDEPENDS_perl-module-encoding += "perl-module-encode"
-RDEPENDS_perl-module-encoding += "perl-module-filter-util-call"
-RDEPENDS_perl-module-encoding += "perl-module-i18n-langinfo"
-RDEPENDS_perl-module-encoding += "perl-module-posix"
-RDEPENDS_perl-module-encoding += "perl-module-strict"
-RDEPENDS_perl-module-encoding += "perl-module-utf8"
-RDEPENDS_perl-module-encoding += "perl-module-warnings"
-RDEPENDS_perl-module-encoding-warnings += "perl-module-strict"
-RDEPENDS_perl-module-encoding-warnings += "perl-module-warnings"
-RDEPENDS_perl-module-english += "perl-module-exporter"
-RDEPENDS_perl-module-env += "perl-module-config"
-RDEPENDS_perl-module-env += "perl-module-tie-array"
-RDEPENDS_perl-module-errno += "perl-module-exporter"
-RDEPENDS_perl-module-errno += "perl-module-strict"
-RDEPENDS_perl-module-experimental += "perl-module-strict"
-RDEPENDS_perl-module-experimental += "perl-module-version"
-RDEPENDS_perl-module-experimental += "perl-module-warnings"
-RDEPENDS_perl-module-exporter-heavy += "perl-module-exporter"
-RDEPENDS_perl-module-exporter-heavy += "perl-module-strict"
-RDEPENDS_perl-module-exporter += "perl-module-exporter-heavy"
-RDEPENDS_perl-module-extutils-cbuilder-base += "perl-module-config"
-RDEPENDS_perl-module-extutils-cbuilder-base += "perl-module-cwd"
-RDEPENDS_perl-module-extutils-cbuilder-base += "perl-module-dynaloader"
-RDEPENDS_perl-module-extutils-cbuilder-base += "perl-module-extutils-mksymlists"
-RDEPENDS_perl-module-extutils-cbuilder-base += "perl-module-file-basename"
-RDEPENDS_perl-module-extutils-cbuilder-base += "perl-module-file-temp"
-RDEPENDS_perl-module-extutils-cbuilder-base += "perl-module-ipc-cmd"
-RDEPENDS_perl-module-extutils-cbuilder-base += "perl-module-strict"
-RDEPENDS_perl-module-extutils-cbuilder-base += "perl-module-text-parsewords"
-RDEPENDS_perl-module-extutils-cbuilder-base += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-cbuilder += "perl-module-file-basename"
-RDEPENDS_perl-module-extutils-cbuilder += "perl-module-file-path"
-RDEPENDS_perl-module-extutils-cbuilder += "perl-module-strict"
-RDEPENDS_perl-module-extutils-cbuilder += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-cbuilder-platform-aix += "perl-module-extutils-cbuilder-platform-unix"
-RDEPENDS_perl-module-extutils-cbuilder-platform-aix += "perl-module-strict"
-RDEPENDS_perl-module-extutils-cbuilder-platform-aix += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-cbuilder-platform-android += "perl-module-config"
-RDEPENDS_perl-module-extutils-cbuilder-platform-android += "perl-module-extutils-cbuilder-platform-unix"
-RDEPENDS_perl-module-extutils-cbuilder-platform-android += "perl-module-strict"
-RDEPENDS_perl-module-extutils-cbuilder-platform-android += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-cbuilder-platform-cygwin += "perl-module-extutils-cbuilder-platform-unix"
-RDEPENDS_perl-module-extutils-cbuilder-platform-cygwin += "perl-module-strict"
-RDEPENDS_perl-module-extutils-cbuilder-platform-cygwin += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-cbuilder-platform-darwin += "perl-module-extutils-cbuilder-platform-unix"
-RDEPENDS_perl-module-extutils-cbuilder-platform-darwin += "perl-module-strict"
-RDEPENDS_perl-module-extutils-cbuilder-platform-darwin += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-cbuilder-platform-dec-osf += "perl-module-extutils-cbuilder-platform-unix"
-RDEPENDS_perl-module-extutils-cbuilder-platform-dec-osf += "perl-module-strict"
-RDEPENDS_perl-module-extutils-cbuilder-platform-dec-osf += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-cbuilder-platform-os2 += "perl-module-extutils-cbuilder-platform-unix"
-RDEPENDS_perl-module-extutils-cbuilder-platform-os2 += "perl-module-strict"
-RDEPENDS_perl-module-extutils-cbuilder-platform-os2 += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-cbuilder-platform-unix += "perl-module-extutils-cbuilder-base"
-RDEPENDS_perl-module-extutils-cbuilder-platform-unix += "perl-module-strict"
-RDEPENDS_perl-module-extutils-cbuilder-platform-unix += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-cbuilder-platform-vms += "perl-module-config"
-RDEPENDS_perl-module-extutils-cbuilder-platform-vms += "perl-module-extutils-cbuilder-base"
-RDEPENDS_perl-module-extutils-cbuilder-platform-vms += "perl-module-strict"
-RDEPENDS_perl-module-extutils-cbuilder-platform-vms += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-cbuilder-platform-windows-bcc += "perl-module-strict"
-RDEPENDS_perl-module-extutils-cbuilder-platform-windows-bcc += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-cbuilder-platform-windows-gcc += "perl-module-strict"
-RDEPENDS_perl-module-extutils-cbuilder-platform-windows-gcc += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-cbuilder-platform-windows-msvc += "perl-module-strict"
-RDEPENDS_perl-module-extutils-cbuilder-platform-windows-msvc += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-cbuilder-platform-windows += "perl-module-extutils-cbuilder-base"
-RDEPENDS_perl-module-extutils-cbuilder-platform-windows += "perl-module-file-basename"
-RDEPENDS_perl-module-extutils-cbuilder-platform-windows += "perl-module-io-file"
-RDEPENDS_perl-module-extutils-cbuilder-platform-windows += "perl-module-strict"
-RDEPENDS_perl-module-extutils-cbuilder-platform-windows += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-command-mm += "perl-module-exporter"
-RDEPENDS_perl-module-extutils-command-mm += "perl-module-extutils-command"
-RDEPENDS_perl-module-extutils-command-mm += "perl-module-extutils-install"
-RDEPENDS_perl-module-extutils-command-mm += "perl-module-getopt-long"
-RDEPENDS_perl-module-extutils-command-mm += "perl-module-strict"
-RDEPENDS_perl-module-extutils-command-mm += "perl-module-test-harness"
-RDEPENDS_perl-module-extutils-command-mm += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-command += "perl-module-exporter"
-RDEPENDS_perl-module-extutils-command += "perl-module-file-copy"
-RDEPENDS_perl-module-extutils-command += "perl-module-file-find"
-RDEPENDS_perl-module-extutils-command += "perl-module-file-path"
-RDEPENDS_perl-module-extutils-command += "perl-module-strict"
-RDEPENDS_perl-module-extutils-command += "perl-module-vars"
-RDEPENDS_perl-module-extutils-constant-base += "perl-module-constant"
-RDEPENDS_perl-module-extutils-constant-base += "perl-module-extutils-constant-utils"
-RDEPENDS_perl-module-extutils-constant-base += "perl-module-strict"
-RDEPENDS_perl-module-extutils-constant-base += "perl-module-text-wrap"
-RDEPENDS_perl-module-extutils-constant-base += "perl-module-vars"
-RDEPENDS_perl-module-extutils-constant += "perl-module-exporter"
-RDEPENDS_perl-module-extutils-constant += "perl-module-extutils-constant-proxysubs"
-RDEPENDS_perl-module-extutils-constant += "perl-module-extutils-constant-utils"
-RDEPENDS_perl-module-extutils-constant += "perl-module-extutils-constant-xs"
-RDEPENDS_perl-module-extutils-constant += "perl-module-filehandle"
-RDEPENDS_perl-module-extutils-constant += "perl-module-strict"
-RDEPENDS_perl-module-extutils-constant += "perl-module-vars"
-RDEPENDS_perl-module-extutils-constant-proxysubs += "perl-module-extutils-constant-utils"
-RDEPENDS_perl-module-extutils-constant-proxysubs += "perl-module-extutils-constant-xs"
-RDEPENDS_perl-module-extutils-constant-proxysubs += "perl-module-strict"
-RDEPENDS_perl-module-extutils-constant-proxysubs += "perl-module-vars"
-RDEPENDS_perl-module-extutils-constant-utils += "perl-module-constant"
-RDEPENDS_perl-module-extutils-constant-utils += "perl-module-posix"
-RDEPENDS_perl-module-extutils-constant-utils += "perl-module-strict"
-RDEPENDS_perl-module-extutils-constant-utils += "perl-module-vars"
-RDEPENDS_perl-module-extutils-constant-xs += "perl-module-data-dumper"
-RDEPENDS_perl-module-extutils-constant-xs += "perl-module-extutils-constant"
-RDEPENDS_perl-module-extutils-constant-xs += "perl-module-extutils-constant-base"
-RDEPENDS_perl-module-extutils-constant-xs += "perl-module-extutils-constant-utils"
-RDEPENDS_perl-module-extutils-constant-xs += "perl-module-strict"
-RDEPENDS_perl-module-extutils-constant-xs += "perl-module-vars"
-RDEPENDS_perl-module-extutils-embed += "perl-module-config"
-RDEPENDS_perl-module-extutils-embed += "perl-module-exporter"
-RDEPENDS_perl-module-extutils-embed += "perl-module-extutils-liblist"
-RDEPENDS_perl-module-extutils-embed += "perl-module-extutils-makemaker"
-RDEPENDS_perl-module-extutils-embed += "perl-module-getopt-std"
-RDEPENDS_perl-module-extutils-embed += "perl-module-strict"
-RDEPENDS_perl-module-extutils-installed += "perl-module-config"
-RDEPENDS_perl-module-extutils-installed += "perl-module-data-dumper"
-RDEPENDS_perl-module-extutils-installed += "perl-module-extutils-makemaker"
-RDEPENDS_perl-module-extutils-installed += "perl-module-extutils-packlist"
-RDEPENDS_perl-module-extutils-installed += "perl-module-file-basename"
-RDEPENDS_perl-module-extutils-installed += "perl-module-file-find"
-RDEPENDS_perl-module-extutils-installed += "perl-module-strict"
-RDEPENDS_perl-module-extutils-installed += "perl-module-vars"
-RDEPENDS_perl-module-extutils-install += "perl-module-autosplit"
-RDEPENDS_perl-module-extutils-install += "perl-module-config"
-RDEPENDS_perl-module-extutils-install += "perl-module-cwd"
-RDEPENDS_perl-module-extutils-install += "perl-module-exporter"
-RDEPENDS_perl-module-extutils-install += "perl-module-extutils-packlist"
-RDEPENDS_perl-module-extutils-install += "perl-module-file-basename"
-RDEPENDS_perl-module-extutils-install += "perl-module-file-compare"
-RDEPENDS_perl-module-extutils-install += "perl-module-file-copy"
-RDEPENDS_perl-module-extutils-install += "perl-module-file-find"
-RDEPENDS_perl-module-extutils-install += "perl-module-file-path"
-RDEPENDS_perl-module-extutils-install += "perl-module-strict"
-RDEPENDS_perl-module-extutils-liblist-kid += "perl-module-cwd"
-RDEPENDS_perl-module-extutils-liblist-kid += "perl-module-extutils-makemaker-config"
-RDEPENDS_perl-module-extutils-liblist-kid += "perl-module-file-basename"
-RDEPENDS_perl-module-extutils-liblist-kid += "perl-module-strict"
-RDEPENDS_perl-module-extutils-liblist-kid += "perl-module-text-parsewords"
-RDEPENDS_perl-module-extutils-liblist-kid += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-liblist += "perl-module-extutils-liblist-kid"
-RDEPENDS_perl-module-extutils-liblist += "perl-module-strict"
-RDEPENDS_perl-module-extutils-makemaker-config += "perl-module-config"
-RDEPENDS_perl-module-extutils-makemaker-config += "perl-module-strict"
-RDEPENDS_perl-module-extutils-makemaker-locale += "perl-module-base"
-RDEPENDS_perl-module-extutils-makemaker-locale += "perl-module-encode"
-RDEPENDS_perl-module-extutils-makemaker-locale += "perl-module-encode-alias"
-RDEPENDS_perl-module-extutils-makemaker-locale += "perl-module-i18n-langinfo"
-RDEPENDS_perl-module-extutils-makemaker-locale += "perl-module-strict"
-RDEPENDS_perl-module-extutils-makemaker += "perl-module-b"
-RDEPENDS_perl-module-extutils-makemaker += "perl-module-cpan"
-RDEPENDS_perl-module-extutils-makemaker += "perl-module-cwd"
-RDEPENDS_perl-module-extutils-makemaker += "perl-module-exporter"
-RDEPENDS_perl-module-extutils-makemaker += "perl-module-extutils-makemaker-config"
-RDEPENDS_perl-module-extutils-makemaker += "perl-module-extutils-makemaker-version"
-RDEPENDS_perl-module-extutils-makemaker += "perl-module-extutils-manifest"
-RDEPENDS_perl-module-extutils-makemaker += "perl-module-extutils-mm"
-RDEPENDS_perl-module-extutils-makemaker += "perl-module-extutils-my"
-RDEPENDS_perl-module-extutils-makemaker += "perl-module-file-path"
-RDEPENDS_perl-module-extutils-makemaker += "perl-module-strict"
-RDEPENDS_perl-module-extutils-makemaker += "perl-module-version"
-RDEPENDS_perl-module-extutils-makemaker-version += "perl-module-strict"
-RDEPENDS_perl-module-extutils-makemaker-version += "perl-module-vars"
-RDEPENDS_perl-module-extutils-manifest += "perl-module-config"
-RDEPENDS_perl-module-extutils-manifest += "perl-module-exporter"
-RDEPENDS_perl-module-extutils-manifest += "perl-module-file-basename"
-RDEPENDS_perl-module-extutils-manifest += "perl-module-file-copy"
-RDEPENDS_perl-module-extutils-manifest += "perl-module-file-find"
-RDEPENDS_perl-module-extutils-manifest += "perl-module-file-path"
-RDEPENDS_perl-module-extutils-manifest += "perl-module-strict"
-RDEPENDS_perl-module-extutils-manifest += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-miniperl += "perl-module-exporter"
-RDEPENDS_perl-module-extutils-miniperl += "perl-module-extutils-embed"
-RDEPENDS_perl-module-extutils-miniperl += "perl-module-strict"
-RDEPENDS_perl-module-extutils-mkbootstrap += "perl-module-config"
-RDEPENDS_perl-module-extutils-mkbootstrap += "perl-module-dynaloader"
-RDEPENDS_perl-module-extutils-mkbootstrap += "perl-module-exporter"
-RDEPENDS_perl-module-extutils-mkbootstrap += "perl-module-strict"
-RDEPENDS_perl-module-extutils-mksymlists += "perl-module-config"
-RDEPENDS_perl-module-extutils-mksymlists += "perl-module-exporter"
-RDEPENDS_perl-module-extutils-mksymlists += "perl-module-strict"
-RDEPENDS_perl-module-extutils-mm-aix += "perl-module-extutils-makemaker-config"
-RDEPENDS_perl-module-extutils-mm-aix += "perl-module-extutils-mm-unix"
-RDEPENDS_perl-module-extutils-mm-aix += "perl-module-strict"
-RDEPENDS_perl-module-extutils-mm-any += "perl-module-autosplit"
-RDEPENDS_perl-module-extutils-mm-any += "perl-module-cpan"
-RDEPENDS_perl-module-extutils-mm-any += "perl-module-data-dumper"
-RDEPENDS_perl-module-extutils-mm-any += "perl-module-extutils-makemaker"
-RDEPENDS_perl-module-extutils-mm-any += "perl-module-extutils-makemaker-config"
-RDEPENDS_perl-module-extutils-mm-any += "perl-module-file-basename"
-RDEPENDS_perl-module-extutils-mm-any += "perl-module-file-find"
-RDEPENDS_perl-module-extutils-mm-any += "perl-module-strict"
-RDEPENDS_perl-module-extutils-mm-any += "perl-module-version"
-RDEPENDS_perl-module-extutils-mm-beos += "perl-module-extutils-makemaker-config"
-RDEPENDS_perl-module-extutils-mm-beos += "perl-module-extutils-mm-any"
-RDEPENDS_perl-module-extutils-mm-beos += "perl-module-extutils-mm-unix"
-RDEPENDS_perl-module-extutils-mm-beos += "perl-module-strict"
-RDEPENDS_perl-module-extutils-mm-cygwin += "perl-module-extutils-makemaker-config"
-RDEPENDS_perl-module-extutils-mm-cygwin += "perl-module-extutils-mm-unix"
-RDEPENDS_perl-module-extutils-mm-cygwin += "perl-module-extutils-mm-win32"
-RDEPENDS_perl-module-extutils-mm-cygwin += "perl-module-strict"
-RDEPENDS_perl-module-extutils-mm-darwin += "perl-module-extutils-mm-unix"
-RDEPENDS_perl-module-extutils-mm-darwin += "perl-module-strict"
-RDEPENDS_perl-module-extutils-mm-dos += "perl-module-extutils-mm-any"
-RDEPENDS_perl-module-extutils-mm-dos += "perl-module-extutils-mm-unix"
-RDEPENDS_perl-module-extutils-mm-dos += "perl-module-strict"
-RDEPENDS_perl-module-extutils-mm-macos += "perl-module-strict"
-RDEPENDS_perl-module-extutils-mm-nw5 += "perl-module-extutils-makemaker"
-RDEPENDS_perl-module-extutils-mm-nw5 += "perl-module-extutils-makemaker-config"
-RDEPENDS_perl-module-extutils-mm-nw5 += "perl-module-extutils-mm-win32"
-RDEPENDS_perl-module-extutils-mm-nw5 += "perl-module-file-basename"
-RDEPENDS_perl-module-extutils-mm-nw5 += "perl-module-strict"
-RDEPENDS_perl-module-extutils-mm-os2 += "perl-module-extutils-makemaker"
-RDEPENDS_perl-module-extutils-mm-os2 += "perl-module-extutils-mm-any"
-RDEPENDS_perl-module-extutils-mm-os2 += "perl-module-extutils-mm-unix"
-RDEPENDS_perl-module-extutils-mm-os2 += "perl-module-strict"
-RDEPENDS_perl-module-extutils-mm += "perl-module-extutils-liblist"
-RDEPENDS_perl-module-extutils-mm += "perl-module-extutils-makemaker"
-RDEPENDS_perl-module-extutils-mm += "perl-module-extutils-makemaker-config"
-RDEPENDS_perl-module-extutils-mm += "perl-module-strict"
-RDEPENDS_perl-module-extutils-mm-qnx += "perl-module-extutils-mm-unix"
-RDEPENDS_perl-module-extutils-mm-qnx += "perl-module-strict"
-RDEPENDS_perl-module-extutils-mm-unix += "perl-module-cwd"
-RDEPENDS_perl-module-extutils-mm-unix += "perl-module-encode"
-RDEPENDS_perl-module-extutils-mm-unix += "perl-module-extutils-liblist"
-RDEPENDS_perl-module-extutils-mm-unix += "perl-module-extutils-makemaker"
-RDEPENDS_perl-module-extutils-mm-unix += "perl-module-extutils-makemaker-config"
-RDEPENDS_perl-module-extutils-mm-unix += "perl-module-extutils-mm-any"
-RDEPENDS_perl-module-extutils-mm-unix += "perl-module-file-basename"
-RDEPENDS_perl-module-extutils-mm-unix += "perl-module-file-find"
-RDEPENDS_perl-module-extutils-mm-unix += "perl-module-strict"
-RDEPENDS_perl-module-extutils-mm-unix += "perl-module-vars"
-RDEPENDS_perl-module-extutils-mm-unix += "perl-module-version"
-RDEPENDS_perl-module-extutils-mm-uwin += "perl-module-extutils-mm-unix"
-RDEPENDS_perl-module-extutils-mm-uwin += "perl-module-strict"
-RDEPENDS_perl-module-extutils-mm-vms += "perl-module-exporter"
-RDEPENDS_perl-module-extutils-mm-vms += "perl-module-extutils-liblist-kid"
-RDEPENDS_perl-module-extutils-mm-vms += "perl-module-extutils-makemaker"
-RDEPENDS_perl-module-extutils-mm-vms += "perl-module-extutils-makemaker-config"
-RDEPENDS_perl-module-extutils-mm-vms += "perl-module-extutils-mm-any"
-RDEPENDS_perl-module-extutils-mm-vms += "perl-module-extutils-mm-unix"
-RDEPENDS_perl-module-extutils-mm-vms += "perl-module-file-basename"
-RDEPENDS_perl-module-extutils-mm-vms += "perl-module-file-find"
-RDEPENDS_perl-module-extutils-mm-vms += "perl-module-strict"
-RDEPENDS_perl-module-extutils-mm-vos += "perl-module-extutils-mm-unix"
-RDEPENDS_perl-module-extutils-mm-vos += "perl-module-strict"
-RDEPENDS_perl-module-extutils-mm-win32 += "perl-module-extutils-makemaker"
-RDEPENDS_perl-module-extutils-mm-win32 += "perl-module-extutils-makemaker-config"
-RDEPENDS_perl-module-extutils-mm-win32 += "perl-module-extutils-mm-any"
-RDEPENDS_perl-module-extutils-mm-win32 += "perl-module-extutils-mm-unix"
-RDEPENDS_perl-module-extutils-mm-win32 += "perl-module-file-basename"
-RDEPENDS_perl-module-extutils-mm-win32 += "perl-module-strict"
-RDEPENDS_perl-module-extutils-mm-win95 += "perl-module-extutils-makemaker-config"
-RDEPENDS_perl-module-extutils-mm-win95 += "perl-module-extutils-mm-win32"
-RDEPENDS_perl-module-extutils-mm-win95 += "perl-module-strict"
-RDEPENDS_perl-module-extutils-my += "perl-module-extutils-mm"
-RDEPENDS_perl-module-extutils-my += "perl-module-strict"
-RDEPENDS_perl-module-extutils-packlist += "perl-module-config"
-RDEPENDS_perl-module-extutils-packlist += "perl-module-cwd"
-RDEPENDS_perl-module-extutils-packlist += "perl-module-strict"
-RDEPENDS_perl-module-extutils-packlist += "perl-module-vars"
-RDEPENDS_perl-module-extutils-parsexs-constants += "perl-module-strict"
-RDEPENDS_perl-module-extutils-parsexs-constants += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-parsexs-countlines += "perl-module-strict"
-RDEPENDS_perl-module-extutils-parsexs-eval += "perl-module-strict"
-RDEPENDS_perl-module-extutils-parsexs-eval += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-parsexs += "perl-module-config"
-RDEPENDS_perl-module-extutils-parsexs += "perl-module-cwd"
-RDEPENDS_perl-module-extutils-parsexs += "perl-module-exporter"
-RDEPENDS_perl-module-extutils-parsexs += "perl-module-extutils-parsexs-constants"
-RDEPENDS_perl-module-extutils-parsexs += "perl-module-extutils-parsexs-countlines"
-RDEPENDS_perl-module-extutils-parsexs += "perl-module-extutils-parsexs-eval"
-RDEPENDS_perl-module-extutils-parsexs += "perl-module-extutils-parsexs-utilities"
-RDEPENDS_perl-module-extutils-parsexs += "perl-module-file-basename"
-RDEPENDS_perl-module-extutils-parsexs += "perl-module-re"
-RDEPENDS_perl-module-extutils-parsexs += "perl-module-strict"
-RDEPENDS_perl-module-extutils-parsexs-utilities += "perl-module-exporter"
-RDEPENDS_perl-module-extutils-parsexs-utilities += "perl-module-extutils-parsexs-constants"
-RDEPENDS_perl-module-extutils-parsexs-utilities += "perl-module-extutils-typemaps"
-RDEPENDS_perl-module-extutils-parsexs-utilities += "perl-module-strict"
-RDEPENDS_perl-module-extutils-parsexs-utilities += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-testlib += "perl-module-cwd"
-RDEPENDS_perl-module-extutils-testlib += "perl-module-lib"
-RDEPENDS_perl-module-extutils-testlib += "perl-module-strict"
-RDEPENDS_perl-module-extutils-testlib += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-typemaps-cmd += "perl-module-exporter"
-RDEPENDS_perl-module-extutils-typemaps-cmd += "perl-module-extutils-typemaps"
-RDEPENDS_perl-module-extutils-typemaps-cmd += "perl-module-strict"
-RDEPENDS_perl-module-extutils-typemaps-cmd += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-typemaps-inputmap += "perl-module-strict"
-RDEPENDS_perl-module-extutils-typemaps-inputmap += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-typemaps-outputmap += "perl-module-re"
-RDEPENDS_perl-module-extutils-typemaps-outputmap += "perl-module-strict"
-RDEPENDS_perl-module-extutils-typemaps-outputmap += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-typemaps += "perl-module-extutils-parsexs"
-RDEPENDS_perl-module-extutils-typemaps += "perl-module-extutils-parsexs-constants"
-RDEPENDS_perl-module-extutils-typemaps += "perl-module-extutils-typemaps-inputmap"
-RDEPENDS_perl-module-extutils-typemaps += "perl-module-extutils-typemaps-outputmap"
-RDEPENDS_perl-module-extutils-typemaps += "perl-module-extutils-typemaps-type"
-RDEPENDS_perl-module-extutils-typemaps += "perl-module-strict"
-RDEPENDS_perl-module-extutils-typemaps += "perl-module-warnings"
-RDEPENDS_perl-module-extutils-typemaps-type += "perl-module-extutils-typemaps"
-RDEPENDS_perl-module-extutils-typemaps-type += "perl-module-strict"
-RDEPENDS_perl-module-extutils-typemaps-type += "perl-module-warnings"
-RDEPENDS_perl-module-fatal += "perl-module-autodie"
-RDEPENDS_perl-module-fatal += "perl-module-autodie-exception-system"
-RDEPENDS_perl-module-fatal += "perl-module-autodie-hints"
-RDEPENDS_perl-module-fatal += "perl-module-autodie-util"
-RDEPENDS_perl-module-fatal += "perl-module-config"
-RDEPENDS_perl-module-fatal += "perl-module-constant"
-RDEPENDS_perl-module-fatal += "perl-module-fcntl"
-RDEPENDS_perl-module-fatal += "perl-module-posix"
-RDEPENDS_perl-module-fatal += "perl-module-strict"
-RDEPENDS_perl-module-fatal += "perl-module-tie-refhash"
-RDEPENDS_perl-module-fatal += "perl-module-warnings"
-RDEPENDS_perl-module-fcntl += "perl-module-exporter"
-RDEPENDS_perl-module-fcntl += "perl-module-strict"
-RDEPENDS_perl-module-fcntl += "perl-module-xsloader"
-RDEPENDS_perl-module-fields += "perl-module-base"
-RDEPENDS_perl-module-fields += "perl-module-hash-util"
-RDEPENDS_perl-module-fields += "perl-module-strict"
-RDEPENDS_perl-module-file-basename += "perl-module-exporter"
-RDEPENDS_perl-module-file-basename += "perl-module-re"
-RDEPENDS_perl-module-file-basename += "perl-module-strict"
-RDEPENDS_perl-module-file-basename += "perl-module-warnings"
-RDEPENDS_perl-module-filecache += "perl-module-parent"
-RDEPENDS_perl-module-filecache += "perl-module-strict"
-RDEPENDS_perl-module-file-compare += "perl-module-exporter"
-RDEPENDS_perl-module-file-compare += "perl-module-strict"
-RDEPENDS_perl-module-file-compare += "perl-module-warnings"
-RDEPENDS_perl-module-file-copy += "perl-module-config"
-RDEPENDS_perl-module-file-copy += "perl-module-exporter"
-RDEPENDS_perl-module-file-copy += "perl-module-file-basename"
-RDEPENDS_perl-module-file-copy += "perl-module-strict"
-RDEPENDS_perl-module-file-copy += "perl-module-warnings"
-RDEPENDS_perl-module-file-dosglob += "perl-module-strict"
-RDEPENDS_perl-module-file-dosglob += "perl-module-text-parsewords"
-RDEPENDS_perl-module-file-dosglob += "perl-module-warnings"
-RDEPENDS_perl-module-file-dosglob += "perl-module-xsloader"
-RDEPENDS_perl-module-file-fetch += "perl-module-constant"
-RDEPENDS_perl-module-file-fetch += "perl-module-cwd"
-RDEPENDS_perl-module-file-fetch += "perl-module-file-basename"
-RDEPENDS_perl-module-file-fetch += "perl-module-file-copy"
-RDEPENDS_perl-module-file-fetch += "perl-module-filehandle"
-RDEPENDS_perl-module-file-fetch += "perl-module-file-path"
-RDEPENDS_perl-module-file-fetch += "perl-module-file-temp"
-RDEPENDS_perl-module-file-fetch += "perl-module-ipc-cmd"
-RDEPENDS_perl-module-file-fetch += "perl-module-locale-maketext-simple"
-RDEPENDS_perl-module-file-fetch += "perl-module-load"
-RDEPENDS_perl-module-file-fetch += "perl-module-params-check"
-RDEPENDS_perl-module-file-fetch += "perl-module-strict"
-RDEPENDS_perl-module-file-fetch += "perl-module-vars"
-RDEPENDS_perl-module-file-find += "perl-module-cwd"
-RDEPENDS_perl-module-file-find += "perl-module-exporter"
-RDEPENDS_perl-module-file-find += "perl-module-file-basename"
-RDEPENDS_perl-module-file-find += "perl-module-strict"
-RDEPENDS_perl-module-file-find += "perl-module-warnings"
-RDEPENDS_perl-module-file-find += "perl-module-warnings-register"
-RDEPENDS_perl-module-file-globmapper += "perl-module-file-glob"
-RDEPENDS_perl-module-file-globmapper += "perl-module-strict"
-RDEPENDS_perl-module-file-globmapper += "perl-module-warnings"
-RDEPENDS_perl-module-file-glob += "perl-module-exporter"
-RDEPENDS_perl-module-file-glob += "perl-module-strict"
-RDEPENDS_perl-module-file-glob += "perl-module-xsloader"
-RDEPENDS_perl-module-filehandle += "perl-module-exporter"
-RDEPENDS_perl-module-filehandle += "perl-module-fcntl"
-RDEPENDS_perl-module-filehandle += "perl-module-io-file"
-RDEPENDS_perl-module-filehandle += "perl-module-strict"
-RDEPENDS_perl-module-file-path += "perl-module-cwd"
-RDEPENDS_perl-module-file-path += "perl-module-exporter"
-RDEPENDS_perl-module-file-path += "perl-module-file-basename"
-RDEPENDS_perl-module-file-path += "perl-module-strict"
-RDEPENDS_perl-module-file-path += "perl-module-vars"
-RDEPENDS_perl-module-file-stat += "perl-module-class-struct"
-RDEPENDS_perl-module-file-stat += "perl-module-constant"
-RDEPENDS_perl-module-file-stat += "perl-module-exporter"
-RDEPENDS_perl-module-file-stat += "perl-module-fcntl"
-RDEPENDS_perl-module-file-stat += "perl-module-overload "
-RDEPENDS_perl-module-file-stat += "perl-module-strict"
-RDEPENDS_perl-module-file-stat += "perl-module-warnings"
-RDEPENDS_perl-module-file-stat += "perl-module-warnings-register"
-RDEPENDS_perl-module-file-temp += "perl-module-constant"
-RDEPENDS_perl-module-file-temp += "perl-module-cwd"
-RDEPENDS_perl-module-file-temp += "perl-module-errno"
-RDEPENDS_perl-module-file-temp += "perl-module-exporter"
-RDEPENDS_perl-module-file-temp += "perl-module-fcntl"
-RDEPENDS_perl-module-file-temp += "perl-module-file-path"
-RDEPENDS_perl-module-file-temp += "perl-module-io-seekable"
-RDEPENDS_perl-module-file-temp += "perl-module-overload"
-RDEPENDS_perl-module-file-temp += "perl-module-parent"
-RDEPENDS_perl-module-file-temp += "perl-module-posix"
-RDEPENDS_perl-module-file-temp += "perl-module-strict"
-RDEPENDS_perl-module-filter-simple += "perl-module-filter-util-call"
-RDEPENDS_perl-module-filter-simple += "perl-module-text-balanced"
-RDEPENDS_perl-module-filter-util-call += "perl-module-exporter"
-RDEPENDS_perl-module-filter-util-call += "perl-module-strict"
-RDEPENDS_perl-module-filter-util-call += "perl-module-warnings"
-RDEPENDS_perl-module-filter-util-call += "perl-module-xsloader"
-RDEPENDS_perl-module-findbin += "perl-module-cwd"
-RDEPENDS_perl-module-findbin += "perl-module-exporter"
-RDEPENDS_perl-module-findbin += "perl-module-file-basename"
-RDEPENDS_perl-module-gdbm-file += "perl-module-exporter"
-RDEPENDS_perl-module-gdbm-file += "perl-module-strict"
-RDEPENDS_perl-module-gdbm-file += "perl-module-tie-hash"
-RDEPENDS_perl-module-gdbm-file += "perl-module-warnings"
-RDEPENDS_perl-module-gdbm-file += "perl-module-xsloader"
-RDEPENDS_perl-module-getopt-long += "perl-module-constant"
-RDEPENDS_perl-module-getopt-long += "perl-module-exporter"
-RDEPENDS_perl-module-getopt-long += "perl-module-overload"
-RDEPENDS_perl-module-getopt-long += "perl-module-pod-usage"
-RDEPENDS_perl-module-getopt-long += "perl-module-strict"
-RDEPENDS_perl-module-getopt-long += "perl-module-text-parsewords"
-RDEPENDS_perl-module-getopt-long += "perl-module-vars"
-RDEPENDS_perl-module-getopt-long += "perl-module-warnings"
-RDEPENDS_perl-module-getopt-std += "perl-module-exporter"
-RDEPENDS_perl-module-hash-util-fieldhash += "perl-module-exporter"
-RDEPENDS_perl-module-hash-util-fieldhash += "perl-module-strict"
-RDEPENDS_perl-module-hash-util-fieldhash += "perl-module-warnings"
-RDEPENDS_perl-module-hash-util-fieldhash += "perl-module-xsloader"
-RDEPENDS_perl-module-hash-util += "perl-module-exporter"
-RDEPENDS_perl-module-hash-util += "perl-module-hash-util-fieldhash"
-RDEPENDS_perl-module-hash-util += "perl-module-strict"
-RDEPENDS_perl-module-hash-util += "perl-module-warnings"
-RDEPENDS_perl-module-hash-util += "perl-module-warnings-register"
-RDEPENDS_perl-module-hash-util += "perl-module-xsloader"
-RDEPENDS_perl-module-i18n-collate += "perl-module-exporter"
-RDEPENDS_perl-module-i18n-collate += "perl-module-overload"
-RDEPENDS_perl-module-i18n-collate += "perl-module-posix"
-RDEPENDS_perl-module-i18n-collate += "perl-module-strict"
-RDEPENDS_perl-module-i18n-collate += "perl-module-warnings-register"
-RDEPENDS_perl-module-i18n-langinfo += "perl-module-exporter"
-RDEPENDS_perl-module-i18n-langinfo += "perl-module-strict"
-RDEPENDS_perl-module-i18n-langinfo += "perl-module-warnings"
-RDEPENDS_perl-module-i18n-langinfo += "perl-module-xsloader"
-RDEPENDS_perl-module-i18n-langtags-detect += "perl-module-i18n-langtags"
-RDEPENDS_perl-module-i18n-langtags-detect += "perl-module-strict"
-RDEPENDS_perl-module-i18n-langtags-list += "perl-module-strict"
-RDEPENDS_perl-module-i18n-langtags += "perl-module-exporter"
-RDEPENDS_perl-module-i18n-langtags += "perl-module-strict"
-RDEPENDS_perl-module-io-compress-adapter-bzip2 += "perl-module-bytes"
-RDEPENDS_perl-module-io-compress-adapter-bzip2 += "perl-module-compress-raw-bzip2"
-RDEPENDS_perl-module-io-compress-adapter-bzip2 += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-io-compress-adapter-bzip2 += "perl-module-strict"
-RDEPENDS_perl-module-io-compress-adapter-bzip2 += "perl-module-warnings"
-RDEPENDS_perl-module-io-compress-adapter-deflate += "perl-module-bytes"
-RDEPENDS_perl-module-io-compress-adapter-deflate += "perl-module-compress-raw-zlib"
-RDEPENDS_perl-module-io-compress-adapter-deflate += "perl-module-exporter"
-RDEPENDS_perl-module-io-compress-adapter-deflate += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-io-compress-adapter-deflate += "perl-module-strict"
-RDEPENDS_perl-module-io-compress-adapter-deflate += "perl-module-warnings"
-RDEPENDS_perl-module-io-compress-adapter-identity += "perl-module-bytes"
-RDEPENDS_perl-module-io-compress-adapter-identity += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-io-compress-adapter-identity += "perl-module-strict"
-RDEPENDS_perl-module-io-compress-adapter-identity += "perl-module-warnings"
-RDEPENDS_perl-module-io-compress-base-common += "perl-module-bytes"
-RDEPENDS_perl-module-io-compress-base-common += "perl-module-constant"
-RDEPENDS_perl-module-io-compress-base-common += "perl-module-encode"
-RDEPENDS_perl-module-io-compress-base-common += "perl-module-exporter"
-RDEPENDS_perl-module-io-compress-base-common += "perl-module-file-globmapper"
-RDEPENDS_perl-module-io-compress-base-common += "perl-module-strict "
-RDEPENDS_perl-module-io-compress-base-common += "perl-module-strict"
-RDEPENDS_perl-module-io-compress-base-common += "perl-module-utf8"
-RDEPENDS_perl-module-io-compress-base-common += "perl-module-warnings"
-RDEPENDS_perl-module-io-compress-base += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-io-compress-base += "perl-module-io-file"
-RDEPENDS_perl-module-io-compress-base += "perl-module-io-handle "
-RDEPENDS_perl-module-io-compress-base += "perl-module-strict "
-RDEPENDS_perl-module-io-compress-base += "perl-module-warnings"
-RDEPENDS_perl-module-io-compress-bzip2 += "perl-module-bytes"
-RDEPENDS_perl-module-io-compress-bzip2 += "perl-module-exporter "
-RDEPENDS_perl-module-io-compress-bzip2 += "perl-module-io-compress-adapter-bzip2"
-RDEPENDS_perl-module-io-compress-bzip2 += "perl-module-io-compress-base"
-RDEPENDS_perl-module-io-compress-bzip2 += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-io-compress-bzip2 += "perl-module-strict "
-RDEPENDS_perl-module-io-compress-bzip2 += "perl-module-warnings"
-RDEPENDS_perl-module-io-compress-deflate += "perl-module-bytes"
-RDEPENDS_perl-module-io-compress-deflate += "perl-module-exporter "
-RDEPENDS_perl-module-io-compress-deflate += "perl-module-io-compress-adapter-deflate"
-RDEPENDS_perl-module-io-compress-deflate += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-io-compress-deflate += "perl-module-io-compress-rawdeflate"
-RDEPENDS_perl-module-io-compress-deflate += "perl-module-io-compress-zlib-constants"
-RDEPENDS_perl-module-io-compress-deflate += "perl-module-strict "
-RDEPENDS_perl-module-io-compress-deflate += "perl-module-warnings"
-RDEPENDS_perl-module-io-compress-gzip-constants += "perl-module-bytes"
-RDEPENDS_perl-module-io-compress-gzip-constants += "perl-module-constant"
-RDEPENDS_perl-module-io-compress-gzip-constants += "perl-module-exporter"
-RDEPENDS_perl-module-io-compress-gzip-constants += "perl-module-strict "
-RDEPENDS_perl-module-io-compress-gzip-constants += "perl-module-warnings"
-RDEPENDS_perl-module-io-compress-gzip += "perl-module-bytes"
-RDEPENDS_perl-module-io-compress-gzip += "perl-module-exporter "
-RDEPENDS_perl-module-io-compress-gzip += "perl-module-io-compress-adapter-deflate"
-RDEPENDS_perl-module-io-compress-gzip += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-io-compress-gzip += "perl-module-io-compress-gzip-constants"
-RDEPENDS_perl-module-io-compress-gzip += "perl-module-io-compress-rawdeflate"
-RDEPENDS_perl-module-io-compress-gzip += "perl-module-io-compress-zlib-extra"
-RDEPENDS_perl-module-io-compress-gzip += "perl-module-strict "
-RDEPENDS_perl-module-io-compress-gzip += "perl-module-warnings"
-RDEPENDS_perl-module-io-compress-rawdeflate += "perl-module-bytes"
-RDEPENDS_perl-module-io-compress-rawdeflate += "perl-module-compress-raw-zlib"
-RDEPENDS_perl-module-io-compress-rawdeflate += "perl-module-exporter "
-RDEPENDS_perl-module-io-compress-rawdeflate += "perl-module-fcntl"
-RDEPENDS_perl-module-io-compress-rawdeflate += "perl-module-io-compress-adapter-deflate"
-RDEPENDS_perl-module-io-compress-rawdeflate += "perl-module-io-compress-base"
-RDEPENDS_perl-module-io-compress-rawdeflate += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-io-compress-rawdeflate += "perl-module-strict "
-RDEPENDS_perl-module-io-compress-rawdeflate += "perl-module-warnings"
-RDEPENDS_perl-module-io-compress-zip-constants += "perl-module-constant"
-RDEPENDS_perl-module-io-compress-zip-constants += "perl-module-exporter"
-RDEPENDS_perl-module-io-compress-zip-constants += "perl-module-strict "
-RDEPENDS_perl-module-io-compress-zip-constants += "perl-module-warnings"
-RDEPENDS_perl-module-io-compress-zip += "perl-module-bytes"
-RDEPENDS_perl-module-io-compress-zip += "perl-module-compress-raw-zlib"
-RDEPENDS_perl-module-io-compress-zip += "perl-module-config"
-RDEPENDS_perl-module-io-compress-zip += "perl-module-exporter "
-RDEPENDS_perl-module-io-compress-zip += "perl-module-fcntl"
-RDEPENDS_perl-module-io-compress-zip += "perl-module-io-compress-adapter-deflate"
-RDEPENDS_perl-module-io-compress-zip += "perl-module-io-compress-adapter-identity"
-RDEPENDS_perl-module-io-compress-zip += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-io-compress-zip += "perl-module-io-compress-bzip2 "
-RDEPENDS_perl-module-io-compress-zip += "perl-module-io-compress-rawdeflate"
-RDEPENDS_perl-module-io-compress-zip += "perl-module-io-compress-zip-constants"
-RDEPENDS_perl-module-io-compress-zip += "perl-module-io-compress-zlib-extra"
-RDEPENDS_perl-module-io-compress-zip += "perl-module-strict "
-RDEPENDS_perl-module-io-compress-zip += "perl-module-warnings"
-RDEPENDS_perl-module-io-compress-zlib-constants += "perl-module-bytes"
-RDEPENDS_perl-module-io-compress-zlib-constants += "perl-module-constant"
-RDEPENDS_perl-module-io-compress-zlib-constants += "perl-module-exporter"
-RDEPENDS_perl-module-io-compress-zlib-constants += "perl-module-strict "
-RDEPENDS_perl-module-io-compress-zlib-constants += "perl-module-warnings"
-RDEPENDS_perl-module-io-compress-zlib-extra += "perl-module-bytes"
-RDEPENDS_perl-module-io-compress-zlib-extra += "perl-module-io-compress-gzip-constants"
-RDEPENDS_perl-module-io-compress-zlib-extra += "perl-module-strict "
-RDEPENDS_perl-module-io-compress-zlib-extra += "perl-module-warnings"
-RDEPENDS_perl-module-io-dir += "perl-module-exporter"
-RDEPENDS_perl-module-io-dir += "perl-module-file-stat"
-RDEPENDS_perl-module-io-dir += "perl-module-io-file"
-RDEPENDS_perl-module-io-dir += "perl-module-strict"
-RDEPENDS_perl-module-io-dir += "perl-module-tie-hash"
-RDEPENDS_perl-module-io-file += "perl-module-exporter"
-RDEPENDS_perl-module-io-file += "perl-module-fcntl"
-RDEPENDS_perl-module-io-file += "perl-module-io-seekable"
-RDEPENDS_perl-module-io-file += "perl-module-selectsaver"
-RDEPENDS_perl-module-io-file += "perl-module-strict"
-RDEPENDS_perl-module-io-handle += "perl-module-exporter"
-RDEPENDS_perl-module-io-handle += "perl-module-io"
-RDEPENDS_perl-module-io-handle += "perl-module-io-file"
-RDEPENDS_perl-module-io-handle += "perl-module-selectsaver"
-RDEPENDS_perl-module-io-handle += "perl-module-strict"
-RDEPENDS_perl-module-io += "perl-module-strict"
-RDEPENDS_perl-module-io += "perl-module-warnings"
-RDEPENDS_perl-module-io += "perl-module-xsloader"
-RDEPENDS_perl-module-io-pipe += "perl-module-fcntl"
-RDEPENDS_perl-module-io-pipe += "perl-module-io-handle"
-RDEPENDS_perl-module-io-pipe += "perl-module-strict"
-RDEPENDS_perl-module-io-poll += "perl-module-exporter"
-RDEPENDS_perl-module-io-poll += "perl-module-io-handle"
-RDEPENDS_perl-module-io-poll += "perl-module-strict"
-RDEPENDS_perl-module-io-seekable += "perl-module-exporter"
-RDEPENDS_perl-module-io-seekable += "perl-module-fcntl"
-RDEPENDS_perl-module-io-seekable += "perl-module-io-handle"
-RDEPENDS_perl-module-io-seekable += "perl-module-strict"
-RDEPENDS_perl-module-io-select += "perl-module-exporter"
-RDEPENDS_perl-module-io-select += "perl-module-strict"
-RDEPENDS_perl-module-io-select += "perl-module-warnings-register"
-RDEPENDS_perl-module-io-socket-inet += "perl-module-errno"
-RDEPENDS_perl-module-io-socket-inet += "perl-module-exporter"
-RDEPENDS_perl-module-io-socket-inet += "perl-module-io-socket"
-RDEPENDS_perl-module-io-socket-inet += "perl-module-socket"
-RDEPENDS_perl-module-io-socket-inet += "perl-module-strict"
-RDEPENDS_perl-module-io-socket-ip += "perl-module-base"
-RDEPENDS_perl-module-io-socket-ip += "perl-module-constant"
-RDEPENDS_perl-module-io-socket-ip += "perl-module-errno"
-RDEPENDS_perl-module-io-socket-ip += "perl-module-posix"
-RDEPENDS_perl-module-io-socket-ip += "perl-module-socket"
-RDEPENDS_perl-module-io-socket-ip += "perl-module-strict"
-RDEPENDS_perl-module-io-socket-ip += "perl-module-warnings"
-RDEPENDS_perl-module-io-socket += "perl-module-errno"
-RDEPENDS_perl-module-io-socket += "perl-module-exporter"
-RDEPENDS_perl-module-io-socket += "perl-module-io-handle"
-RDEPENDS_perl-module-io-socket += "perl-module-io-select"
-RDEPENDS_perl-module-io-socket += "perl-module-io-socket-inet"
-RDEPENDS_perl-module-io-socket += "perl-module-io-socket-unix"
-RDEPENDS_perl-module-io-socket += "perl-module-socket"
-RDEPENDS_perl-module-io-socket += "perl-module-strict"
-RDEPENDS_perl-module-io-socket-unix += "perl-module-io-socket"
-RDEPENDS_perl-module-io-socket-unix += "perl-module-strict"
-RDEPENDS_perl-module-io-uncompress-adapter-bunzip2 += "perl-module-bytes"
-RDEPENDS_perl-module-io-uncompress-adapter-bunzip2 += "perl-module-compress-raw-bzip2"
-RDEPENDS_perl-module-io-uncompress-adapter-bunzip2 += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-io-uncompress-adapter-bunzip2 += "perl-module-strict"
-RDEPENDS_perl-module-io-uncompress-adapter-bunzip2 += "perl-module-warnings"
-RDEPENDS_perl-module-io-uncompress-adapter-identity += "perl-module-bytes"
-RDEPENDS_perl-module-io-uncompress-adapter-identity += "perl-module-compress-raw-zlib"
-RDEPENDS_perl-module-io-uncompress-adapter-identity += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-io-uncompress-adapter-identity += "perl-module-io-compress-zip-constants "
-RDEPENDS_perl-module-io-uncompress-adapter-identity += "perl-module-strict"
-RDEPENDS_perl-module-io-uncompress-adapter-identity += "perl-module-warnings"
-RDEPENDS_perl-module-io-uncompress-adapter-inflate += "perl-module-bytes"
-RDEPENDS_perl-module-io-uncompress-adapter-inflate += "perl-module-compress-raw-zlib"
-RDEPENDS_perl-module-io-uncompress-adapter-inflate += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-io-uncompress-adapter-inflate += "perl-module-strict"
-RDEPENDS_perl-module-io-uncompress-adapter-inflate += "perl-module-warnings"
-RDEPENDS_perl-module-io-uncompress-anyinflate += "perl-module-bytes"
-RDEPENDS_perl-module-io-uncompress-anyinflate += "perl-module-exporter "
-RDEPENDS_perl-module-io-uncompress-anyinflate += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-io-uncompress-anyinflate += "perl-module-io-uncompress-adapter-inflate"
-RDEPENDS_perl-module-io-uncompress-anyinflate += "perl-module-io-uncompress-base"
-RDEPENDS_perl-module-io-uncompress-anyinflate += "perl-module-io-uncompress-gunzip"
-RDEPENDS_perl-module-io-uncompress-anyinflate += "perl-module-io-uncompress-inflate"
-RDEPENDS_perl-module-io-uncompress-anyinflate += "perl-module-io-uncompress-rawinflate"
-RDEPENDS_perl-module-io-uncompress-anyinflate += "perl-module-io-uncompress-unzip"
-RDEPENDS_perl-module-io-uncompress-anyinflate += "perl-module-strict"
-RDEPENDS_perl-module-io-uncompress-anyinflate += "perl-module-warnings"
-RDEPENDS_perl-module-io-uncompress-anyuncompress += "perl-module-bytes"
-RDEPENDS_perl-module-io-uncompress-anyuncompress += "perl-module-exporter "
-RDEPENDS_perl-module-io-uncompress-anyuncompress += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-io-uncompress-anyuncompress += "perl-module-io-uncompress-base"
-RDEPENDS_perl-module-io-uncompress-anyuncompress += "perl-module-strict"
-RDEPENDS_perl-module-io-uncompress-anyuncompress += "perl-module-warnings"
-RDEPENDS_perl-module-io-uncompress-base += "perl-module-bytes"
-RDEPENDS_perl-module-io-uncompress-base += "perl-module-constant"
-RDEPENDS_perl-module-io-uncompress-base += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-io-uncompress-base += "perl-module-io-file "
-RDEPENDS_perl-module-io-uncompress-base += "perl-module-list-util"
-RDEPENDS_perl-module-io-uncompress-base += "perl-module-strict "
-RDEPENDS_perl-module-io-uncompress-base += "perl-module-warnings"
-RDEPENDS_perl-module-io-uncompress-bunzip2 += "perl-module-bytes"
-RDEPENDS_perl-module-io-uncompress-bunzip2 += "perl-module-exporter "
-RDEPENDS_perl-module-io-uncompress-bunzip2 += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-io-uncompress-bunzip2 += "perl-module-io-uncompress-adapter-bunzip2"
-RDEPENDS_perl-module-io-uncompress-bunzip2 += "perl-module-io-uncompress-base"
-RDEPENDS_perl-module-io-uncompress-bunzip2 += "perl-module-strict "
-RDEPENDS_perl-module-io-uncompress-bunzip2 += "perl-module-warnings"
-RDEPENDS_perl-module-io-uncompress-gunzip += "perl-module-bytes"
-RDEPENDS_perl-module-io-uncompress-gunzip += "perl-module-compress-raw-zlib"
-RDEPENDS_perl-module-io-uncompress-gunzip += "perl-module-exporter "
-RDEPENDS_perl-module-io-uncompress-gunzip += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-io-uncompress-gunzip += "perl-module-io-compress-gzip-constants"
-RDEPENDS_perl-module-io-uncompress-gunzip += "perl-module-io-compress-zlib-extra"
-RDEPENDS_perl-module-io-uncompress-gunzip += "perl-module-io-uncompress-rawinflate"
-RDEPENDS_perl-module-io-uncompress-gunzip += "perl-module-strict "
-RDEPENDS_perl-module-io-uncompress-gunzip += "perl-module-warnings"
-RDEPENDS_perl-module-io-uncompress-inflate += "perl-module-bytes"
-RDEPENDS_perl-module-io-uncompress-inflate += "perl-module-exporter "
-RDEPENDS_perl-module-io-uncompress-inflate += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-io-uncompress-inflate += "perl-module-io-compress-zlib-constants"
-RDEPENDS_perl-module-io-uncompress-inflate += "perl-module-io-uncompress-rawinflate"
-RDEPENDS_perl-module-io-uncompress-inflate += "perl-module-strict "
-RDEPENDS_perl-module-io-uncompress-inflate += "perl-module-warnings"
-RDEPENDS_perl-module-io-uncompress-rawinflate += "perl-module-bytes"
-RDEPENDS_perl-module-io-uncompress-rawinflate += "perl-module-compress-raw-zlib"
-RDEPENDS_perl-module-io-uncompress-rawinflate += "perl-module-exporter "
-RDEPENDS_perl-module-io-uncompress-rawinflate += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-io-uncompress-rawinflate += "perl-module-io-uncompress-adapter-inflate"
-RDEPENDS_perl-module-io-uncompress-rawinflate += "perl-module-io-uncompress-base"
-RDEPENDS_perl-module-io-uncompress-rawinflate += "perl-module-strict "
-RDEPENDS_perl-module-io-uncompress-rawinflate += "perl-module-warnings"
-RDEPENDS_perl-module-io-uncompress-unzip += "perl-module-bytes"
-RDEPENDS_perl-module-io-uncompress-unzip += "perl-module-compress-raw-zlib"
-RDEPENDS_perl-module-io-uncompress-unzip += "perl-module-constant"
-RDEPENDS_perl-module-io-uncompress-unzip += "perl-module-encode"
-RDEPENDS_perl-module-io-uncompress-unzip += "perl-module-exporter "
-RDEPENDS_perl-module-io-uncompress-unzip += "perl-module-fcntl"
-RDEPENDS_perl-module-io-uncompress-unzip += "perl-module-io-compress-base-common"
-RDEPENDS_perl-module-io-uncompress-unzip += "perl-module-io-compress-zip-constants"
-RDEPENDS_perl-module-io-uncompress-unzip += "perl-module-io-compress-zlib-extra"
-RDEPENDS_perl-module-io-uncompress-unzip += "perl-module-io-file"
-RDEPENDS_perl-module-io-uncompress-unzip += "perl-module-io-uncompress-adapter-identity"
-RDEPENDS_perl-module-io-uncompress-unzip += "perl-module-io-uncompress-adapter-inflate"
-RDEPENDS_perl-module-io-uncompress-unzip += "perl-module-io-uncompress-rawinflate"
-RDEPENDS_perl-module-io-uncompress-unzip += "perl-module-posix"
-RDEPENDS_perl-module-io-uncompress-unzip += "perl-module-strict "
-RDEPENDS_perl-module-io-uncompress-unzip += "perl-module-warnings"
-RDEPENDS_perl-module-io-zlib += "perl-module-fcntl"
-RDEPENDS_perl-module-io-zlib += "perl-module-io-handle"
-RDEPENDS_perl-module-io-zlib += "perl-module-strict"
-RDEPENDS_perl-module-io-zlib += "perl-module-tie-handle"
-RDEPENDS_perl-module-io-zlib += "perl-module-vars"
-RDEPENDS_perl-module-ipc-cmd += "perl-module-constant"
-RDEPENDS_perl-module-ipc-cmd += "perl-module-exporter"
-RDEPENDS_perl-module-ipc-cmd += "perl-module-extutils-makemaker"
-RDEPENDS_perl-module-ipc-cmd += "perl-module-filehandle"
-RDEPENDS_perl-module-ipc-cmd += "perl-module-io-handle"
-RDEPENDS_perl-module-ipc-cmd += "perl-module-io-select"
-RDEPENDS_perl-module-ipc-cmd += "perl-module-ipc-open3"
-RDEPENDS_perl-module-ipc-cmd += "perl-module-locale-maketext-simple"
-RDEPENDS_perl-module-ipc-cmd += "perl-module-load"
-RDEPENDS_perl-module-ipc-cmd += "perl-module-params-check"
-RDEPENDS_perl-module-ipc-cmd += "perl-module-posix"
-RDEPENDS_perl-module-ipc-cmd += "perl-module-socket"
-RDEPENDS_perl-module-ipc-cmd += "perl-module-strict"
-RDEPENDS_perl-module-ipc-cmd += "perl-module-text-parsewords"
-RDEPENDS_perl-module-ipc-cmd += "perl-module-time-hires"
-RDEPENDS_perl-module-ipc-cmd += "perl-module-vars"
-RDEPENDS_perl-module-ipc-msg += "perl-module-class-struct"
-RDEPENDS_perl-module-ipc-msg += "perl-module-ipc-sysv"
-RDEPENDS_perl-module-ipc-msg += "perl-module-strict"
-RDEPENDS_perl-module-ipc-msg += "perl-module-vars"
-RDEPENDS_perl-module-ipc-open2 += "perl-module-exporter"
-RDEPENDS_perl-module-ipc-open2 += "perl-module-ipc-open3"
-RDEPENDS_perl-module-ipc-open2 += "perl-module-strict"
-RDEPENDS_perl-module-ipc-open3 += "perl-module-constant"
-RDEPENDS_perl-module-ipc-open3 += "perl-module-exporter"
-RDEPENDS_perl-module-ipc-open3 += "perl-module-fcntl"
-RDEPENDS_perl-module-ipc-open3 += "perl-module-io-pipe"
-RDEPENDS_perl-module-ipc-open3 += "perl-module-posix"
-RDEPENDS_perl-module-ipc-open3 += "perl-module-strict"
-RDEPENDS_perl-module-ipc-semaphore += "perl-module-class-struct"
-RDEPENDS_perl-module-ipc-semaphore += "perl-module-ipc-sysv"
-RDEPENDS_perl-module-ipc-semaphore += "perl-module-strict"
-RDEPENDS_perl-module-ipc-semaphore += "perl-module-vars"
-RDEPENDS_perl-module-ipc-sharedmem += "perl-module-class-struct"
-RDEPENDS_perl-module-ipc-sharedmem += "perl-module-ipc-sysv"
-RDEPENDS_perl-module-ipc-sharedmem += "perl-module-strict"
-RDEPENDS_perl-module-ipc-sharedmem += "perl-module-vars"
-RDEPENDS_perl-module-ipc-sysv += "perl-module-config"
-RDEPENDS_perl-module-ipc-sysv += "perl-module-dynaloader"
-RDEPENDS_perl-module-ipc-sysv += "perl-module-exporter"
-RDEPENDS_perl-module-ipc-sysv += "perl-module-strict"
-RDEPENDS_perl-module-ipc-sysv += "perl-module-vars"
-RDEPENDS_perl-module-json-pp-boolean += "perl-module-overload"
-RDEPENDS_perl-module-json-pp-boolean += "perl-module-strict"
-RDEPENDS_perl-module-json-pp += "perl-module-b"
-RDEPENDS_perl-module-json-pp += "perl-module-bytes"
-RDEPENDS_perl-module-json-pp += "perl-module-constant"
-RDEPENDS_perl-module-json-pp += "perl-module-encode"
-RDEPENDS_perl-module-json-pp += "perl-module-exporter"
-RDEPENDS_perl-module-json-pp += "perl-module-json-pp-boolean"
-RDEPENDS_perl-module-json-pp += "perl-module-math-bigfloat"
-RDEPENDS_perl-module-json-pp += "perl-module-math-bigint"
-RDEPENDS_perl-module-json-pp += "perl-module-overload"
-RDEPENDS_perl-module-json-pp += "perl-module-strict"
-RDEPENDS_perl-module-json-pp += "perl-module-subs"
-RDEPENDS_perl-module-less += "perl-module-strict"
-RDEPENDS_perl-module-less += "perl-module-warnings"
-RDEPENDS_perl-module-lib += "perl-module-config"
-RDEPENDS_perl-module-lib += "perl-module-strict"
-RDEPENDS_perl-module-list-util += "perl-module-exporter"
-RDEPENDS_perl-module-list-util += "perl-module-strict"
-RDEPENDS_perl-module-list-util += "perl-module-warnings"
-RDEPENDS_perl-module-list-util += "perl-module-xsloader"
-RDEPENDS_perl-module-list-util-xs += "perl-module-list-util"
-RDEPENDS_perl-module-list-util-xs += "perl-module-strict"
-RDEPENDS_perl-module-list-util-xs += "perl-module-warnings"
-RDEPENDS_perl-module-loaded += "perl-module-strict"
-RDEPENDS_perl-module-loaded += "perl-module-vars"
-RDEPENDS_perl-module-load += "perl-module-config"
-RDEPENDS_perl-module-load += "perl-module-constant"
-RDEPENDS_perl-module-load += "perl-module-exporter"
-RDEPENDS_perl-module-load += "perl-module-filehandle"
-RDEPENDS_perl-module-load += "perl-module-locale-maketext-simple"
-RDEPENDS_perl-module-load += "perl-module-corelist"
-RDEPENDS_perl-module-load += "perl-module-load"
-RDEPENDS_perl-module-load += "perl-module-params-check"
-RDEPENDS_perl-module-load += "perl-module-strict"
-RDEPENDS_perl-module-load += "perl-module-vars"
-RDEPENDS_perl-module-load += "perl-module-version"
-RDEPENDS_perl-module-load += "perl-module-warnings"
-RDEPENDS_perl-module-locale-maketext-gutsloader += "perl-module-locale-maketext"
-RDEPENDS_perl-module-locale-maketext-guts += "perl-module-locale-maketext"
-RDEPENDS_perl-module-locale-maketext += "perl-module-i18n-langtags"
-RDEPENDS_perl-module-locale-maketext += "perl-module-i18n-langtags-detect"
-RDEPENDS_perl-module-locale-maketext += "perl-module-integer"
-RDEPENDS_perl-module-locale-maketext += "perl-module-strict"
-RDEPENDS_perl-module-locale-maketext-simple += "perl-module-base"
-RDEPENDS_perl-module-locale-maketext-simple += "perl-module-strict"
-RDEPENDS_perl-module-locale += "perl-module-config"
-RDEPENDS_perl-module-math-bigfloat += "perl-module-exporter"
-RDEPENDS_perl-module-math-bigfloat += "perl-module-math-bigint"
-RDEPENDS_perl-module-math-bigfloat += "perl-module-math-complex"
-RDEPENDS_perl-module-math-bigfloat += "perl-module-overload"
-RDEPENDS_perl-module-math-bigfloat += "perl-module-strict"
-RDEPENDS_perl-module-math-bigfloat += "perl-module-warnings"
-RDEPENDS_perl-module-math-bigfloat-trace += "perl-module-exporter"
-RDEPENDS_perl-module-math-bigfloat-trace += "perl-module-math-bigfloat"
-RDEPENDS_perl-module-math-bigfloat-trace += "perl-module-overload"
-RDEPENDS_perl-module-math-bigfloat-trace += "perl-module-strict"
-RDEPENDS_perl-module-math-bigfloat-trace += "perl-module-warnings"
-RDEPENDS_perl-module-math-bigint-calc += "perl-module-constant"
-RDEPENDS_perl-module-math-bigint-calc += "perl-module-integer"
-RDEPENDS_perl-module-math-bigint-calc += "perl-module-math-bigint-lib"
-RDEPENDS_perl-module-math-bigint-calc += "perl-module-strict"
-RDEPENDS_perl-module-math-bigint-calc += "perl-module-warnings"
-RDEPENDS_perl-module-math-bigint-fastcalc += "perl-module-math-bigint-calc"
-RDEPENDS_perl-module-math-bigint-fastcalc += "perl-module-strict"
-RDEPENDS_perl-module-math-bigint-fastcalc += "perl-module-warnings"
-RDEPENDS_perl-module-math-bigint-fastcalc += "perl-module-xsloader"
-RDEPENDS_perl-module-math-bigint-lib += "perl-module-overload"
-RDEPENDS_perl-module-math-bigint-lib += "perl-module-strict"
-RDEPENDS_perl-module-math-bigint-lib += "perl-module-warnings"
-RDEPENDS_perl-module-math-bigint += "perl-module-exporter"
-RDEPENDS_perl-module-math-bigint += "perl-module-math-bigfloat"
-RDEPENDS_perl-module-math-bigint += "perl-module-math-complex"
-RDEPENDS_perl-module-math-bigint += "perl-module-overload"
-RDEPENDS_perl-module-math-bigint += "perl-module-strict"
-RDEPENDS_perl-module-math-bigint += "perl-module-warnings"
-RDEPENDS_perl-module-math-bigint-trace += "perl-module-exporter"
-RDEPENDS_perl-module-math-bigint-trace += "perl-module-math-bigint"
-RDEPENDS_perl-module-math-bigint-trace += "perl-module-overload"
-RDEPENDS_perl-module-math-bigint-trace += "perl-module-strict"
-RDEPENDS_perl-module-math-bigint-trace += "perl-module-warnings"
-RDEPENDS_perl-module-math-bigrat += "perl-module-math-bigfloat"
-RDEPENDS_perl-module-math-bigrat += "perl-module-math-bigint"
-RDEPENDS_perl-module-math-bigrat += "perl-module-overload"
-RDEPENDS_perl-module-math-bigrat += "perl-module-strict"
-RDEPENDS_perl-module-math-bigrat += "perl-module-warnings"
-RDEPENDS_perl-module-math-complex += "perl-module-config"
-RDEPENDS_perl-module-math-complex += "perl-module-exporter"
-RDEPENDS_perl-module-math-complex += "perl-module-overload"
-RDEPENDS_perl-module-math-complex += "perl-module-strict"
-RDEPENDS_perl-module-math-complex += "perl-module-warnings"
-RDEPENDS_perl-module-math-trig += "perl-module-exporter"
-RDEPENDS_perl-module-math-trig += "perl-module-math-complex"
-RDEPENDS_perl-module-math-trig += "perl-module-strict"
-RDEPENDS_perl-module-memoize-anydbm-file += "perl-module-vars"
-RDEPENDS_perl-module-memoize += "perl-module-config"
-RDEPENDS_perl-module-memoize += "perl-module-exporter"
-RDEPENDS_perl-module-memoize += "perl-module-strict"
-RDEPENDS_perl-module-memoize += "perl-module-vars"
-RDEPENDS_perl-module-memoize-sdbm-file += "perl-module-sdbm-file"
-RDEPENDS_perl-module-memoize-storable += "perl-module-storable"
-RDEPENDS_perl-module-mime-base64 += "perl-module-exporter"
-RDEPENDS_perl-module-mime-base64 += "perl-module-strict"
-RDEPENDS_perl-module-mime-base64 += "perl-module-vars"
-RDEPENDS_perl-module-mime-base64 += "perl-module-xsloader"
-RDEPENDS_perl-module-mime-quotedprint += "perl-module-exporter"
-RDEPENDS_perl-module-mime-quotedprint += "perl-module-mime-base64"
-RDEPENDS_perl-module-mime-quotedprint += "perl-module-strict"
-RDEPENDS_perl-module-mime-quotedprint += "perl-module-vars"
-RDEPENDS_perl-module-mro += "perl-module-strict"
-RDEPENDS_perl-module-mro += "perl-module-warnings"
-RDEPENDS_perl-module-mro += "perl-module-xsloader"
-RDEPENDS_perl-module-net-cmd += "perl-module-constant"
-RDEPENDS_perl-module-net-cmd += "perl-module-errno"
-RDEPENDS_perl-module-net-cmd += "perl-module-exporter"
-RDEPENDS_perl-module-net-cmd += "perl-module-strict"
-RDEPENDS_perl-module-net-cmd += "perl-module-warnings"
-RDEPENDS_perl-module-net-config += "perl-module-exporter"
-RDEPENDS_perl-module-net-config += "perl-module-socket"
-RDEPENDS_perl-module-net-config += "perl-module-strict"
-RDEPENDS_perl-module-net-config += "perl-module-warnings"
-RDEPENDS_perl-module-net-domain += "perl-module-exporter"
-RDEPENDS_perl-module-net-domain += "perl-module-net-config"
-RDEPENDS_perl-module-net-domain += "perl-module-posix"
-RDEPENDS_perl-module-net-domain += "perl-module-socket"
-RDEPENDS_perl-module-net-domain += "perl-module-strict"
-RDEPENDS_perl-module-net-domain += "perl-module-warnings"
-RDEPENDS_perl-module-net-ftp-a += "perl-module-net-ftp-dataconn"
-RDEPENDS_perl-module-net-ftp-a += "perl-module-strict"
-RDEPENDS_perl-module-net-ftp-a += "perl-module-warnings"
-RDEPENDS_perl-module-net-ftp-dataconn += "perl-module-errno"
-RDEPENDS_perl-module-net-ftp-dataconn += "perl-module-net-cmd"
-RDEPENDS_perl-module-net-ftp-dataconn += "perl-module-strict"
-RDEPENDS_perl-module-net-ftp-dataconn += "perl-module-warnings"
-RDEPENDS_perl-module-net-ftp-e += "perl-module-net-ftp-i"
-RDEPENDS_perl-module-net-ftp-e += "perl-module-strict"
-RDEPENDS_perl-module-net-ftp-e += "perl-module-warnings"
-RDEPENDS_perl-module-net-ftp-i += "perl-module-net-ftp-dataconn"
-RDEPENDS_perl-module-net-ftp-i += "perl-module-strict"
-RDEPENDS_perl-module-net-ftp-i += "perl-module-warnings"
-RDEPENDS_perl-module-net-ftp-l += "perl-module-net-ftp-i"
-RDEPENDS_perl-module-net-ftp-l += "perl-module-strict"
-RDEPENDS_perl-module-net-ftp-l += "perl-module-warnings"
-RDEPENDS_perl-module-net-ftp += "perl-module-constant"
-RDEPENDS_perl-module-net-ftp += "perl-module-fcntl"
-RDEPENDS_perl-module-net-ftp += "perl-module-file-basename"
-RDEPENDS_perl-module-net-ftp += "perl-module-io-socket"
-RDEPENDS_perl-module-net-ftp += "perl-module-io-socket-ip"
-RDEPENDS_perl-module-net-ftp += "perl-module-net-cmd"
-RDEPENDS_perl-module-net-ftp += "perl-module-net-config"
-RDEPENDS_perl-module-net-ftp += "perl-module-net-ftp-a"
-RDEPENDS_perl-module-net-ftp += "perl-module-net-netrc"
-RDEPENDS_perl-module-net-ftp += "perl-module-socket"
-RDEPENDS_perl-module-net-ftp += "perl-module-strict"
-RDEPENDS_perl-module-net-ftp += "perl-module-time-local"
-RDEPENDS_perl-module-net-ftp += "perl-module-warnings"
-RDEPENDS_perl-module-net-hostent += "perl-module-class-struct"
-RDEPENDS_perl-module-net-hostent += "perl-module-exporter"
-RDEPENDS_perl-module-net-hostent += "perl-module-socket"
-RDEPENDS_perl-module-net-hostent += "perl-module-strict"
-RDEPENDS_perl-module-net-netent += "perl-module-class-struct"
-RDEPENDS_perl-module-net-netent += "perl-module-exporter"
-RDEPENDS_perl-module-net-netent += "perl-module-socket"
-RDEPENDS_perl-module-net-netent += "perl-module-strict"
-RDEPENDS_perl-module-net-netrc += "perl-module-filehandle"
-RDEPENDS_perl-module-net-netrc += "perl-module-strict"
-RDEPENDS_perl-module-net-netrc += "perl-module-warnings"
-RDEPENDS_perl-module-net-nntp += "perl-module-io-socket"
-RDEPENDS_perl-module-net-nntp += "perl-module-io-socket-ip"
-RDEPENDS_perl-module-net-nntp += "perl-module-net-cmd"
-RDEPENDS_perl-module-net-nntp += "perl-module-net-config"
-RDEPENDS_perl-module-net-nntp += "perl-module-strict"
-RDEPENDS_perl-module-net-nntp += "perl-module-time-local"
-RDEPENDS_perl-module-net-nntp += "perl-module-warnings"
-RDEPENDS_perl-module-net-ping += "perl-module-constant"
-RDEPENDS_perl-module-net-ping += "perl-module-exporter"
-RDEPENDS_perl-module-net-ping += "perl-module-fcntl"
-RDEPENDS_perl-module-net-ping += "perl-module-filehandle"
-RDEPENDS_perl-module-net-ping += "perl-module-io-socket-inet"
-RDEPENDS_perl-module-net-ping += "perl-module-posix"
-RDEPENDS_perl-module-net-ping += "perl-module-socket"
-RDEPENDS_perl-module-net-ping += "perl-module-strict"
-RDEPENDS_perl-module-net-ping += "perl-module-time-hires"
-RDEPENDS_perl-module-net-pop3 += "perl-module-io-socket"
-RDEPENDS_perl-module-net-pop3 += "perl-module-io-socket-ip"
-RDEPENDS_perl-module-net-pop3 += "perl-module-mime-base64"
-RDEPENDS_perl-module-net-pop3 += "perl-module-net-cmd"
-RDEPENDS_perl-module-net-pop3 += "perl-module-net-config"
-RDEPENDS_perl-module-net-pop3 += "perl-module-net-netrc"
-RDEPENDS_perl-module-net-pop3 += "perl-module-strict"
-RDEPENDS_perl-module-net-pop3 += "perl-module-warnings"
-RDEPENDS_perl-module-net-protoent += "perl-module-class-struct"
-RDEPENDS_perl-module-net-protoent += "perl-module-exporter"
-RDEPENDS_perl-module-net-protoent += "perl-module-strict"
-RDEPENDS_perl-module-net-servent += "perl-module-class-struct"
-RDEPENDS_perl-module-net-servent += "perl-module-exporter"
-RDEPENDS_perl-module-net-servent += "perl-module-strict"
-RDEPENDS_perl-module-net-smtp += "perl-module-io-socket"
-RDEPENDS_perl-module-net-smtp += "perl-module-io-socket-ip"
-RDEPENDS_perl-module-net-smtp += "perl-module-mime-base64"
-RDEPENDS_perl-module-net-smtp += "perl-module-net-cmd"
-RDEPENDS_perl-module-net-smtp += "perl-module-net-config"
-RDEPENDS_perl-module-net-smtp += "perl-module-socket"
-RDEPENDS_perl-module-net-smtp += "perl-module-strict"
-RDEPENDS_perl-module-net-smtp += "perl-module-warnings"
-RDEPENDS_perl-module-net-time += "perl-module-exporter"
-RDEPENDS_perl-module-net-time += "perl-module-io-select"
-RDEPENDS_perl-module-net-time += "perl-module-io-socket"
-RDEPENDS_perl-module-net-time += "perl-module-net-config"
-RDEPENDS_perl-module-net-time += "perl-module-strict"
-RDEPENDS_perl-module-net-time += "perl-module-warnings"
-RDEPENDS_perl-module-next += "perl-module-overload"
-RDEPENDS_perl-module-next += "perl-module-strict"
-RDEPENDS_perl-module-next += "perl-module-warnings"
-RDEPENDS_perl-module-ok += "perl-module-strict"
-RDEPENDS_perl-module-ok += "perl-module-test-more"
-RDEPENDS_perl-module-opcode += "perl-module-exporter"
-RDEPENDS_perl-module-opcode += "perl-module-strict"
-RDEPENDS_perl-module-opcode += "perl-module-subs"
-RDEPENDS_perl-module-opcode += "perl-module-xsloader"
-RDEPENDS_perl-module-open += "perl-module-encode"
-RDEPENDS_perl-module-open += "perl-module-encoding"
-RDEPENDS_perl-module-open += "perl-module-warnings"
-RDEPENDS_perl-module-o += "perl-module-b"
-RDEPENDS_perl-module-ops += "perl-module-opcode"
-RDEPENDS_perl-module-overloading += "perl-module-overload-numbers"
-RDEPENDS_perl-module-overloading += "perl-module-warnings"
-RDEPENDS_perl-module-overload += "perl-module-mro"
-RDEPENDS_perl-module-overload += "perl-module-warnings-register"
-RDEPENDS_perl-module-params-check += "perl-module-exporter"
-RDEPENDS_perl-module-params-check += "perl-module-locale-maketext-simple"
-RDEPENDS_perl-module-params-check += "perl-module-strict"
-RDEPENDS_perl-module-params-check += "perl-module-vars"
-RDEPENDS_perl-module-parent += "perl-module-strict"
-RDEPENDS_perl-module-perlfaq += "perl-module-strict"
-RDEPENDS_perl-module-perlfaq += "perl-module-warnings"
-RDEPENDS_perl-module-perlio-encoding += "perl-module-strict"
-RDEPENDS_perl-module-perlio-encoding += "perl-module-xsloader"
-RDEPENDS_perl-module-perlio-mmap += "perl-module-strict"
-RDEPENDS_perl-module-perlio-mmap += "perl-module-warnings"
-RDEPENDS_perl-module-perlio-mmap += "perl-module-xsloader"
-RDEPENDS_perl-module-perlio-scalar += "perl-module-xsloader"
-RDEPENDS_perl-module-perlio-via += "perl-module-xsloader"
-RDEPENDS_perl-module-perlio-via-quotedprint += "perl-module-mime-quotedprint"
-RDEPENDS_perl-module-perlio-via-quotedprint += "perl-module-strict"
-RDEPENDS_perl-module-pod-checker += "perl-module-base"
-RDEPENDS_perl-module-pod-checker += "perl-module-exporter"
-RDEPENDS_perl-module-pod-checker += "perl-module-strict"
-RDEPENDS_perl-module-pod-checker += "perl-module-warnings"
-RDEPENDS_perl-module-pod-escapes += "perl-module-exporter"
-RDEPENDS_perl-module-pod-escapes += "perl-module-strict"
-RDEPENDS_perl-module-pod-escapes += "perl-module-vars"
-RDEPENDS_perl-module-pod-escapes += "perl-module-warnings"
-RDEPENDS_perl-module-pod-functions += "perl-module-exporter"
-RDEPENDS_perl-module-pod-functions += "perl-module-strict"
-RDEPENDS_perl-module-pod-man += "perl-module-file-basename"
-RDEPENDS_perl-module-pod-man += "perl-module-pod-simple"
-RDEPENDS_perl-module-pod-man += "perl-module-strict"
-RDEPENDS_perl-module-pod-man += "perl-module-subs"
-RDEPENDS_perl-module-pod-man += "perl-module-vars"
-RDEPENDS_perl-module-pod-man += "perl-module-warnings"
-RDEPENDS_perl-module-pod-parselink += "perl-module-exporter"
-RDEPENDS_perl-module-pod-parselink += "perl-module-strict"
-RDEPENDS_perl-module-pod-parselink += "perl-module-vars"
-RDEPENDS_perl-module-pod-parselink += "perl-module-warnings"
-RDEPENDS_perl-module-pod-perldoc-baseto += "perl-module-config"
-RDEPENDS_perl-module-pod-perldoc-baseto += "perl-module-strict"
-RDEPENDS_perl-module-pod-perldoc-baseto += "perl-module-vars"
-RDEPENDS_perl-module-pod-perldoc-baseto += "perl-module-warnings"
-RDEPENDS_perl-module-pod-perldoc-getoptsoo += "perl-module-strict"
-RDEPENDS_perl-module-pod-perldoc-getoptsoo += "perl-module-vars"
-RDEPENDS_perl-module-pod-perldoc += "perl-module-config"
-RDEPENDS_perl-module-pod-perldoc += "perl-module-encode"
-RDEPENDS_perl-module-pod-perldoc += "perl-module-fcntl"
-RDEPENDS_perl-module-pod-perldoc += "perl-module-file-basename"
-RDEPENDS_perl-module-pod-perldoc += "perl-module-file-temp"
-RDEPENDS_perl-module-pod-perldoc += "perl-module-pod-perldoc-getoptsoo"
-RDEPENDS_perl-module-pod-perldoc += "perl-module-strict"
-RDEPENDS_perl-module-pod-perldoc += "perl-module-text-parsewords"
-RDEPENDS_perl-module-pod-perldoc += "perl-module-vars"
-RDEPENDS_perl-module-pod-perldoc += "perl-module-warnings"
-RDEPENDS_perl-module-pod-perldoc-toansi += "perl-module-parent"
-RDEPENDS_perl-module-pod-perldoc-toansi += "perl-module-pod-text-color"
-RDEPENDS_perl-module-pod-perldoc-toansi += "perl-module-strict"
-RDEPENDS_perl-module-pod-perldoc-toansi += "perl-module-vars"
-RDEPENDS_perl-module-pod-perldoc-toansi += "perl-module-warnings"
-RDEPENDS_perl-module-pod-perldoc-tochecker += "perl-module-pod-checker"
-RDEPENDS_perl-module-pod-perldoc-tochecker += "perl-module-strict"
-RDEPENDS_perl-module-pod-perldoc-tochecker += "perl-module-vars"
-RDEPENDS_perl-module-pod-perldoc-tochecker += "perl-module-warnings"
-RDEPENDS_perl-module-pod-perldoc-toman += "perl-module-encode"
-RDEPENDS_perl-module-pod-perldoc-toman += "perl-module-io-handle"
-RDEPENDS_perl-module-pod-perldoc-toman += "perl-module-io-select"
-RDEPENDS_perl-module-pod-perldoc-toman += "perl-module-ipc-open3"
-RDEPENDS_perl-module-pod-perldoc-toman += "perl-module-parent"
-RDEPENDS_perl-module-pod-perldoc-toman += "perl-module-pod-man"
-RDEPENDS_perl-module-pod-perldoc-toman += "perl-module-pod-perldoc-topod"
-RDEPENDS_perl-module-pod-perldoc-toman += "perl-module-strict"
-RDEPENDS_perl-module-pod-perldoc-toman += "perl-module-vars"
-RDEPENDS_perl-module-pod-perldoc-toman += "perl-module-warnings"
-RDEPENDS_perl-module-pod-perldoc-tonroff += "perl-module-parent"
-RDEPENDS_perl-module-pod-perldoc-tonroff += "perl-module-pod-man"
-RDEPENDS_perl-module-pod-perldoc-tonroff += "perl-module-strict"
-RDEPENDS_perl-module-pod-perldoc-tonroff += "perl-module-vars"
-RDEPENDS_perl-module-pod-perldoc-tonroff += "perl-module-warnings"
-RDEPENDS_perl-module-pod-perldoc-topod += "perl-module-parent"
-RDEPENDS_perl-module-pod-perldoc-topod += "perl-module-strict"
-RDEPENDS_perl-module-pod-perldoc-topod += "perl-module-vars"
-RDEPENDS_perl-module-pod-perldoc-topod += "perl-module-warnings"
-RDEPENDS_perl-module-pod-perldoc-tortf += "perl-module-parent"
-RDEPENDS_perl-module-pod-perldoc-tortf += "perl-module-strict"
-RDEPENDS_perl-module-pod-perldoc-tortf += "perl-module-vars"
-RDEPENDS_perl-module-pod-perldoc-tortf += "perl-module-warnings"
-RDEPENDS_perl-module-pod-perldoc-toterm += "perl-module-parent"
-RDEPENDS_perl-module-pod-perldoc-toterm += "perl-module-pod-text-termcap"
-RDEPENDS_perl-module-pod-perldoc-toterm += "perl-module-strict"
-RDEPENDS_perl-module-pod-perldoc-toterm += "perl-module-vars"
-RDEPENDS_perl-module-pod-perldoc-toterm += "perl-module-warnings"
-RDEPENDS_perl-module-pod-perldoc-totext += "perl-module-parent"
-RDEPENDS_perl-module-pod-perldoc-totext += "perl-module-pod-text"
-RDEPENDS_perl-module-pod-perldoc-totext += "perl-module-strict"
-RDEPENDS_perl-module-pod-perldoc-totext += "perl-module-vars"
-RDEPENDS_perl-module-pod-perldoc-totext += "perl-module-warnings"
-RDEPENDS_perl-module-pod-perldoc-toxml += "perl-module-parent"
-RDEPENDS_perl-module-pod-perldoc-toxml += "perl-module-strict"
-RDEPENDS_perl-module-pod-perldoc-toxml += "perl-module-vars"
-RDEPENDS_perl-module-pod-perldoc-toxml += "perl-module-warnings"
-RDEPENDS_perl-module-pod-simple-blackbox += "perl-module-if"
-RDEPENDS_perl-module-pod-simple-blackbox += "perl-module-integer"
-RDEPENDS_perl-module-pod-simple-blackbox += "perl-module-pod-simple"
-RDEPENDS_perl-module-pod-simple-blackbox += "perl-module-pod-simple-transcode"
-RDEPENDS_perl-module-pod-simple-blackbox += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-blackbox += "perl-module-vars"
-RDEPENDS_perl-module-pod-simple-checker += "perl-module-pod-simple"
-RDEPENDS_perl-module-pod-simple-checker += "perl-module-pod-simple-methody"
-RDEPENDS_perl-module-pod-simple-checker += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-checker += "perl-module-text-wrap"
-RDEPENDS_perl-module-pod-simple-checker += "perl-module-vars"
-RDEPENDS_perl-module-pod-simple-debug += "perl-module-pod-simple"
-RDEPENDS_perl-module-pod-simple-debug += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-debug += "perl-module-vars"
-RDEPENDS_perl-module-pod-simple-dumpastext += "perl-module-pod-simple"
-RDEPENDS_perl-module-pod-simple-dumpastext += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-dumpasxml += "perl-module-pod-simple"
-RDEPENDS_perl-module-pod-simple-dumpasxml += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-dumpasxml += "perl-module-text-wrap"
-RDEPENDS_perl-module-pod-simple-justpod += "perl-module-pod-simple-methody"
-RDEPENDS_perl-module-pod-simple-justpod += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-justpod += "perl-module-warnings"
-RDEPENDS_perl-module-pod-simple-linksection += "perl-module-overload"
-RDEPENDS_perl-module-pod-simple-linksection += "perl-module-pod-simple-blackbox"
-RDEPENDS_perl-module-pod-simple-linksection += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-linksection += "perl-module-vars"
-RDEPENDS_perl-module-pod-simple-methody += "perl-module-pod-simple"
-RDEPENDS_perl-module-pod-simple-methody += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-methody += "perl-module-vars"
-RDEPENDS_perl-module-pod-simple += "perl-module-integer"
-RDEPENDS_perl-module-pod-simple += "perl-module-pod-escapes"
-RDEPENDS_perl-module-pod-simple += "perl-module-pod-simple-blackbox"
-RDEPENDS_perl-module-pod-simple += "perl-module-pod-simple-linksection"
-RDEPENDS_perl-module-pod-simple += "perl-module-pod-simple-tiedoutfh"
-RDEPENDS_perl-module-pod-simple += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple += "perl-module-vars"
-RDEPENDS_perl-module-pod-simple-progress += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-pullparserendtoken += "perl-module-pod-simple-pullparsertoken"
-RDEPENDS_perl-module-pod-simple-pullparserendtoken += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-pullparserendtoken += "perl-module-vars"
-RDEPENDS_perl-module-pod-simple-pullparser += "perl-module-pod-simple"
-RDEPENDS_perl-module-pod-simple-pullparser += "perl-module-pod-simple-pullparserendtoken"
-RDEPENDS_perl-module-pod-simple-pullparser += "perl-module-pod-simple-pullparserstarttoken"
-RDEPENDS_perl-module-pod-simple-pullparser += "perl-module-pod-simple-pullparsertexttoken"
-RDEPENDS_perl-module-pod-simple-pullparser += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-pullparserstarttoken += "perl-module-pod-simple-pullparsertoken"
-RDEPENDS_perl-module-pod-simple-pullparserstarttoken += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-pullparserstarttoken += "perl-module-vars"
-RDEPENDS_perl-module-pod-simple-pullparsertexttoken += "perl-module-pod-simple-pullparsertoken"
-RDEPENDS_perl-module-pod-simple-pullparsertexttoken += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-pullparsertexttoken += "perl-module-vars"
-RDEPENDS_perl-module-pod-simple-pullparsertoken += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-rtf += "perl-module-if"
-RDEPENDS_perl-module-pod-simple-rtf += "perl-module-integer"
-RDEPENDS_perl-module-pod-simple-rtf += "perl-module-pod-simple-pullparser"
-RDEPENDS_perl-module-pod-simple-rtf += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-rtf += "perl-module-vars"
-RDEPENDS_perl-module-pod-simple-search += "perl-module-config"
-RDEPENDS_perl-module-pod-simple-search += "perl-module-cwd"
-RDEPENDS_perl-module-pod-simple-search += "perl-module-file-basename"
-RDEPENDS_perl-module-pod-simple-search += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-search += "perl-module-vars"
-RDEPENDS_perl-module-pod-simple-simpletree += "perl-module-pod-simple"
-RDEPENDS_perl-module-pod-simple-simpletree += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-simpletree += "perl-module-vars"
-RDEPENDS_perl-module-pod-simple-textcontent += "perl-module-pod-simple"
-RDEPENDS_perl-module-pod-simple-textcontent += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-textcontent += "perl-module-vars"
-RDEPENDS_perl-module-pod-simple-text += "perl-module-pod-simple"
-RDEPENDS_perl-module-pod-simple-text += "perl-module-pod-simple-methody"
-RDEPENDS_perl-module-pod-simple-text += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-text += "perl-module-text-wrap"
-RDEPENDS_perl-module-pod-simple-text += "perl-module-vars"
-RDEPENDS_perl-module-pod-simple-tiedoutfh += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-tiedoutfh += "perl-module-vars"
-RDEPENDS_perl-module-pod-simple-transcodedumb += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-transcodedumb += "perl-module-vars"
-RDEPENDS_perl-module-pod-simple-transcode += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-transcode += "perl-module-vars"
-RDEPENDS_perl-module-pod-simple-transcodesmart += "perl-module-encode"
-RDEPENDS_perl-module-pod-simple-transcodesmart += "perl-module-pod-simple"
-RDEPENDS_perl-module-pod-simple-transcodesmart += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-transcodesmart += "perl-module-vars"
-RDEPENDS_perl-module-pod-simple-xmloutstream += "perl-module-pod-simple"
-RDEPENDS_perl-module-pod-simple-xmloutstream += "perl-module-strict"
-RDEPENDS_perl-module-pod-simple-xmloutstream += "perl-module-vars"
-RDEPENDS_perl-module-pod-text-color += "perl-module-pod-text"
-RDEPENDS_perl-module-pod-text-color += "perl-module-strict"
-RDEPENDS_perl-module-pod-text-color += "perl-module-term-ansicolor"
-RDEPENDS_perl-module-pod-text-color += "perl-module-vars"
-RDEPENDS_perl-module-pod-text-color += "perl-module-warnings"
-RDEPENDS_perl-module-pod-text-overstrike += "perl-module-pod-text"
-RDEPENDS_perl-module-pod-text-overstrike += "perl-module-strict"
-RDEPENDS_perl-module-pod-text-overstrike += "perl-module-vars"
-RDEPENDS_perl-module-pod-text-overstrike += "perl-module-warnings"
-RDEPENDS_perl-module-pod-text += "perl-module-encode"
-RDEPENDS_perl-module-pod-text += "perl-module-exporter"
-RDEPENDS_perl-module-pod-text += "perl-module-pod-simple"
-RDEPENDS_perl-module-pod-text += "perl-module-strict"
-RDEPENDS_perl-module-pod-text += "perl-module-vars"
-RDEPENDS_perl-module-pod-text += "perl-module-warnings"
-RDEPENDS_perl-module-pod-text-termcap += "perl-module-pod-text"
-RDEPENDS_perl-module-pod-text-termcap += "perl-module-posix"
-RDEPENDS_perl-module-pod-text-termcap += "perl-module-strict"
-RDEPENDS_perl-module-pod-text-termcap += "perl-module-term-cap"
-RDEPENDS_perl-module-pod-text-termcap += "perl-module-vars"
-RDEPENDS_perl-module-pod-text-termcap += "perl-module-warnings"
-RDEPENDS_perl-module-pod-usage += "perl-module-config"
-RDEPENDS_perl-module-pod-usage += "perl-module-exporter"
-RDEPENDS_perl-module-pod-usage += "perl-module-strict"
-RDEPENDS_perl-module-pod-usage += "perl-module-vars"
-RDEPENDS_perl-module-posix += "perl-module-exporter"
-RDEPENDS_perl-module-posix += "perl-module-fcntl"
-RDEPENDS_perl-module-posix += "perl-module-strict"
-RDEPENDS_perl-module-posix += "perl-module-tie-hash"
-RDEPENDS_perl-module-posix += "perl-module-warnings"
-RDEPENDS_perl-module-posix += "perl-module-xsloader"
-RDEPENDS_perl-module-re += "perl-module-exporter"
-RDEPENDS_perl-module-re += "perl-module-strict"
-RDEPENDS_perl-module-re += "perl-module-term-cap"
-RDEPENDS_perl-module-re += "perl-module-warnings"
-RDEPENDS_perl-module-re += "perl-module-xsloader"
-RDEPENDS_perl-module-safe += "perl-module-b"
-RDEPENDS_perl-module-safe += "perl-module-opcode"
-RDEPENDS_perl-module-safe += "perl-module-strict"
-RDEPENDS_perl-module-safe += "perl-module-utf8"
-RDEPENDS_perl-module-sdbm-file += "perl-module-exporter"
-RDEPENDS_perl-module-sdbm-file += "perl-module-strict"
-RDEPENDS_perl-module-sdbm-file += "perl-module-tie-hash"
-RDEPENDS_perl-module-sdbm-file += "perl-module-warnings"
-RDEPENDS_perl-module-sdbm-file += "perl-module-xsloader"
-RDEPENDS_perl-module-search-dict += "perl-module-exporter"
-RDEPENDS_perl-module-search-dict += "perl-module-feature"
-RDEPENDS_perl-module-search-dict += "perl-module-strict"
-RDEPENDS_perl-module-selfloader += "perl-module-exporter"
-RDEPENDS_perl-module-selfloader += "perl-module-io-handle"
-RDEPENDS_perl-module-selfloader += "perl-module-strict"
-RDEPENDS_perl-module-socket += "perl-module-exporter"
-RDEPENDS_perl-module-socket += "perl-module-strict"
-RDEPENDS_perl-module-socket += "perl-module-warnings-register"
-RDEPENDS_perl-module-socket += "perl-module-xsloader"
-RDEPENDS_perl-module-sort += "perl-module-strict"
-RDEPENDS_perl-module-storable += "perl-module-exporter"
-RDEPENDS_perl-module-storable += "perl-module-io-file"
-RDEPENDS_perl-module-sub-util += "perl-module-exporter"
-RDEPENDS_perl-module-sub-util += "perl-module-list-util"
-RDEPENDS_perl-module-sub-util += "perl-module-strict"
-RDEPENDS_perl-module-sub-util += "perl-module-warnings"
-RDEPENDS_perl-module-sys-hostname += "perl-module-exporter"
-RDEPENDS_perl-module-sys-hostname += "perl-module-posix"
-RDEPENDS_perl-module-sys-hostname += "perl-module-strict"
-RDEPENDS_perl-module-sys-hostname += "perl-module-warnings"
-RDEPENDS_perl-module-sys-hostname += "perl-module-xsloader"
-RDEPENDS_perl-module-sys-syslog += "perl-module-config"
-RDEPENDS_perl-module-sys-syslog += "perl-module-constant"
-RDEPENDS_perl-module-sys-syslog += "perl-module-dynaloader"
-RDEPENDS_perl-module-sys-syslog += "perl-module-exporter"
-RDEPENDS_perl-module-sys-syslog += "perl-module-fcntl"
-RDEPENDS_perl-module-sys-syslog += "perl-module-file-basename"
-RDEPENDS_perl-module-sys-syslog += "perl-module-posix"
-RDEPENDS_perl-module-sys-syslog += "perl-module-socket"
-RDEPENDS_perl-module-sys-syslog += "perl-module-strict"
-RDEPENDS_perl-module-sys-syslog += "perl-module-sys-hostname"
-RDEPENDS_perl-module-sys-syslog += "perl-module-vars"
-RDEPENDS_perl-module-sys-syslog += "perl-module-warnings"
-RDEPENDS_perl-module-sys-syslog += "perl-module-warnings-register"
-RDEPENDS_perl-module-sys-syslog += "perl-module-xsloader"
-RDEPENDS_perl-module-tap-base += "perl-module-base"
-RDEPENDS_perl-module-tap-base += "perl-module-constant"
-RDEPENDS_perl-module-tap-base += "perl-module-strict"
-RDEPENDS_perl-module-tap-base += "perl-module-warnings"
-RDEPENDS_perl-module-tap-formatter-base += "perl-module-base"
-RDEPENDS_perl-module-tap-formatter-base += "perl-module-posix"
-RDEPENDS_perl-module-tap-formatter-base += "perl-module-strict"
-RDEPENDS_perl-module-tap-formatter-base += "perl-module-tap-formatter-color"
-RDEPENDS_perl-module-tap-formatter-base += "perl-module-warnings"
-RDEPENDS_perl-module-tap-formatter-color += "perl-module-base"
-RDEPENDS_perl-module-tap-formatter-color += "perl-module-constant"
-RDEPENDS_perl-module-tap-formatter-color += "perl-module-strict"
-RDEPENDS_perl-module-tap-formatter-color += "perl-module-warnings"
-RDEPENDS_perl-module-tap-formatter-console-parallelsession += "perl-module-base"
-RDEPENDS_perl-module-tap-formatter-console-parallelsession += "perl-module-constant"
-RDEPENDS_perl-module-tap-formatter-console-parallelsession += "perl-module-file-path"
-RDEPENDS_perl-module-tap-formatter-console-parallelsession += "perl-module-strict"
-RDEPENDS_perl-module-tap-formatter-console-parallelsession += "perl-module-warnings"
-RDEPENDS_perl-module-tap-formatter-console += "perl-module-base"
-RDEPENDS_perl-module-tap-formatter-console += "perl-module-posix"
-RDEPENDS_perl-module-tap-formatter-console += "perl-module-strict"
-RDEPENDS_perl-module-tap-formatter-console += "perl-module-warnings"
-RDEPENDS_perl-module-tap-formatter-console-session += "perl-module-base"
-RDEPENDS_perl-module-tap-formatter-console-session += "perl-module-strict"
-RDEPENDS_perl-module-tap-formatter-console-session += "perl-module-warnings"
-RDEPENDS_perl-module-tap-formatter-file += "perl-module-base"
-RDEPENDS_perl-module-tap-formatter-file += "perl-module-posix"
-RDEPENDS_perl-module-tap-formatter-file += "perl-module-strict"
-RDEPENDS_perl-module-tap-formatter-file += "perl-module-tap-formatter-file-session"
-RDEPENDS_perl-module-tap-formatter-file += "perl-module-warnings"
-RDEPENDS_perl-module-tap-formatter-file-session += "perl-module-base"
-RDEPENDS_perl-module-tap-formatter-file-session += "perl-module-strict"
-RDEPENDS_perl-module-tap-formatter-file-session += "perl-module-warnings"
-RDEPENDS_perl-module-tap-formatter-session += "perl-module-base"
-RDEPENDS_perl-module-tap-formatter-session += "perl-module-strict"
-RDEPENDS_perl-module-tap-formatter-session += "perl-module-warnings"
-RDEPENDS_perl-module-tap-harness-env += "perl-module-constant"
-RDEPENDS_perl-module-tap-harness-env += "perl-module-strict"
-RDEPENDS_perl-module-tap-harness-env += "perl-module-tap-object"
-RDEPENDS_perl-module-tap-harness-env += "perl-module-text-parsewords"
-RDEPENDS_perl-module-tap-harness-env += "perl-module-warnings"
-RDEPENDS_perl-module-tap-harness += "perl-module-base"
-RDEPENDS_perl-module-tap-harness += "perl-module-file-path"
-RDEPENDS_perl-module-tap-harness += "perl-module-io-handle"
-RDEPENDS_perl-module-tap-harness += "perl-module-strict"
-RDEPENDS_perl-module-tap-harness += "perl-module-warnings"
-RDEPENDS_perl-module-tap-object += "perl-module-strict"
-RDEPENDS_perl-module-tap-object += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-aggregator += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-aggregator += "perl-module-benchmark"
-RDEPENDS_perl-module-tap-parser-aggregator += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-aggregator += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-grammar += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-grammar += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-grammar += "perl-module-tap-parser-resultfactory"
-RDEPENDS_perl-module-tap-parser-grammar += "perl-module-tap-parser-yamlish-reader"
-RDEPENDS_perl-module-tap-parser-grammar += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-iterator-array += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-iterator-array += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-iterator-array += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-iteratorfactory += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-iteratorfactory += "perl-module-constant"
-RDEPENDS_perl-module-tap-parser-iteratorfactory += "perl-module-file-basename"
-RDEPENDS_perl-module-tap-parser-iteratorfactory += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-iteratorfactory += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-iterator += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-iterator += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-iterator += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-iterator-process += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-iterator-process += "perl-module-config"
-RDEPENDS_perl-module-tap-parser-iterator-process += "perl-module-io-handle"
-RDEPENDS_perl-module-tap-parser-iterator-process += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-iterator-process += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-iterator-stream += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-iterator-stream += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-iterator-stream += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-multiplexer += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-multiplexer += "perl-module-constant"
-RDEPENDS_perl-module-tap-parser-multiplexer += "perl-module-io-select"
-RDEPENDS_perl-module-tap-parser-multiplexer += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-multiplexer += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser += "perl-module-base"
-RDEPENDS_perl-module-tap-parser += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser += "perl-module-tap-parser-grammar"
-RDEPENDS_perl-module-tap-parser += "perl-module-tap-parser-iterator"
-RDEPENDS_perl-module-tap-parser += "perl-module-tap-parser-iteratorfactory"
-RDEPENDS_perl-module-tap-parser += "perl-module-tap-parser-result"
-RDEPENDS_perl-module-tap-parser += "perl-module-tap-parser-resultfactory"
-RDEPENDS_perl-module-tap-parser += "perl-module-tap-parser-source"
-RDEPENDS_perl-module-tap-parser += "perl-module-tap-parser-sourcehandler-executable"
-RDEPENDS_perl-module-tap-parser += "perl-module-tap-parser-sourcehandler-file"
-RDEPENDS_perl-module-tap-parser += "perl-module-tap-parser-sourcehandler-handle"
-RDEPENDS_perl-module-tap-parser += "perl-module-tap-parser-sourcehandler-perl"
-RDEPENDS_perl-module-tap-parser += "perl-module-tap-parser-sourcehandler-rawtap"
-RDEPENDS_perl-module-tap-parser += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-result-bailout += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-result-bailout += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-result-bailout += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-result-comment += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-result-comment += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-result-comment += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-resultfactory += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-resultfactory += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-resultfactory += "perl-module-tap-parser-result-bailout"
-RDEPENDS_perl-module-tap-parser-resultfactory += "perl-module-tap-parser-result-comment"
-RDEPENDS_perl-module-tap-parser-resultfactory += "perl-module-tap-parser-result-plan"
-RDEPENDS_perl-module-tap-parser-resultfactory += "perl-module-tap-parser-result-pragma"
-RDEPENDS_perl-module-tap-parser-resultfactory += "perl-module-tap-parser-result-test"
-RDEPENDS_perl-module-tap-parser-resultfactory += "perl-module-tap-parser-result-unknown"
-RDEPENDS_perl-module-tap-parser-resultfactory += "perl-module-tap-parser-result-version"
-RDEPENDS_perl-module-tap-parser-resultfactory += "perl-module-tap-parser-result-yaml"
-RDEPENDS_perl-module-tap-parser-resultfactory += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-result += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-result += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-result += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-result-plan += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-result-plan += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-result-plan += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-result-pragma += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-result-pragma += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-result-pragma += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-result-test += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-result-test += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-result-test += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-result-unknown += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-result-unknown += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-result-unknown += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-result-version += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-result-version += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-result-version += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-result-yaml += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-result-yaml += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-result-yaml += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-scheduler-job += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-scheduler-job += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-scheduler += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-scheduler += "perl-module-tap-parser-scheduler-job"
-RDEPENDS_perl-module-tap-parser-scheduler += "perl-module-tap-parser-scheduler-spinner"
-RDEPENDS_perl-module-tap-parser-scheduler += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-scheduler-spinner += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-scheduler-spinner += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-sourcehandler-executable += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-sourcehandler-executable += "perl-module-constant"
-RDEPENDS_perl-module-tap-parser-sourcehandler-executable += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-sourcehandler-executable += "perl-module-tap-parser-iteratorfactory"
-RDEPENDS_perl-module-tap-parser-sourcehandler-executable += "perl-module-tap-parser-iterator-process"
-RDEPENDS_perl-module-tap-parser-sourcehandler-executable += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-sourcehandler-file += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-sourcehandler-file += "perl-module-constant"
-RDEPENDS_perl-module-tap-parser-sourcehandler-file += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-sourcehandler-file += "perl-module-tap-parser-iteratorfactory"
-RDEPENDS_perl-module-tap-parser-sourcehandler-file += "perl-module-tap-parser-iterator-stream"
-RDEPENDS_perl-module-tap-parser-sourcehandler-file += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-sourcehandler-handle += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-sourcehandler-handle += "perl-module-constant"
-RDEPENDS_perl-module-tap-parser-sourcehandler-handle += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-sourcehandler-handle += "perl-module-tap-parser-iteratorfactory"
-RDEPENDS_perl-module-tap-parser-sourcehandler-handle += "perl-module-tap-parser-iterator-stream"
-RDEPENDS_perl-module-tap-parser-sourcehandler-handle += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-sourcehandler += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-sourcehandler += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-sourcehandler += "perl-module-tap-parser-iterator"
-RDEPENDS_perl-module-tap-parser-sourcehandler += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-sourcehandler-perl += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-sourcehandler-perl += "perl-module-config"
-RDEPENDS_perl-module-tap-parser-sourcehandler-perl += "perl-module-constant"
-RDEPENDS_perl-module-tap-parser-sourcehandler-perl += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-sourcehandler-perl += "perl-module-tap-parser-iteratorfactory"
-RDEPENDS_perl-module-tap-parser-sourcehandler-perl += "perl-module-tap-parser-iterator-process"
-RDEPENDS_perl-module-tap-parser-sourcehandler-perl += "perl-module-text-parsewords"
-RDEPENDS_perl-module-tap-parser-sourcehandler-perl += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-sourcehandler-rawtap += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-sourcehandler-rawtap += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-sourcehandler-rawtap += "perl-module-tap-parser-iterator-array"
-RDEPENDS_perl-module-tap-parser-sourcehandler-rawtap += "perl-module-tap-parser-iteratorfactory"
-RDEPENDS_perl-module-tap-parser-sourcehandler-rawtap += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-source += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-source += "perl-module-constant"
-RDEPENDS_perl-module-tap-parser-source += "perl-module-file-basename"
-RDEPENDS_perl-module-tap-parser-source += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-source += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-yamlish-reader += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-yamlish-reader += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-yamlish-reader += "perl-module-warnings"
-RDEPENDS_perl-module-tap-parser-yamlish-writer += "perl-module-base"
-RDEPENDS_perl-module-tap-parser-yamlish-writer += "perl-module-strict"
-RDEPENDS_perl-module-tap-parser-yamlish-writer += "perl-module-warnings"
-RDEPENDS_perl-module-term-ansicolor += "perl-module-exporter"
-RDEPENDS_perl-module-term-ansicolor += "perl-module-strict"
-RDEPENDS_perl-module-term-ansicolor += "perl-module-warnings"
-RDEPENDS_perl-module-term-cap += "perl-module-strict"
-RDEPENDS_perl-module-term-cap += "perl-module-vars"
-RDEPENDS_perl-module-term-complete += "perl-module-exporter"
-RDEPENDS_perl-module-term-complete += "perl-module-strict"
-RDEPENDS_perl-module-term-readline += "perl-module-strict"
-RDEPENDS_perl-module-term-readline += "perl-module-term-cap"
-RDEPENDS_perl-module-test-builder-formatter += "perl-module-strict"
-RDEPENDS_perl-module-test-builder-formatter += "perl-module-warnings"
-RDEPENDS_perl-module-test-builder-module += "perl-module-exporter"
-RDEPENDS_perl-module-test-builder-module += "perl-module-strict"
-RDEPENDS_perl-module-test-builder-module += "perl-module-test-builder"
-RDEPENDS_perl-module-test-builder += "perl-module-data-dumper"
-RDEPENDS_perl-module-test-builder += "perl-module-overload"
-RDEPENDS_perl-module-test-builder += "perl-module-strict"
-RDEPENDS_perl-module-test-builder += "perl-module-test-builder-formatter"
-RDEPENDS_perl-module-test-builder += "perl-module-test-builder-tododiag"
-RDEPENDS_perl-module-test-builder += "perl-module-warnings"
-RDEPENDS_perl-module-test-builder-tester-color += "perl-module-strict"
-RDEPENDS_perl-module-test-builder-tester-color += "perl-module-test-builder-tester"
-RDEPENDS_perl-module-test-builder-tester += "perl-module-exporter"
-RDEPENDS_perl-module-test-builder-tester += "perl-module-strict"
-RDEPENDS_perl-module-test-builder-tester += "perl-module-test-builder"
-RDEPENDS_perl-module-test-builder-tododiag += "perl-module-strict"
-RDEPENDS_perl-module-test-builder-tododiag += "perl-module-warnings"
-RDEPENDS_perl-module-test-harness += "perl-module-base"
-RDEPENDS_perl-module-test-harness += "perl-module-config"
-RDEPENDS_perl-module-test-harness += "perl-module-constant"
-RDEPENDS_perl-module-test-harness += "perl-module-strict"
-RDEPENDS_perl-module-test-harness += "perl-module-tap-harness"
-RDEPENDS_perl-module-test-harness += "perl-module-tap-parser-aggregator"
-RDEPENDS_perl-module-test-harness += "perl-module-tap-parser-source"
-RDEPENDS_perl-module-test-harness += "perl-module-tap-parser-sourcehandler-perl"
-RDEPENDS_perl-module-test-harness += "perl-module-text-parsewords"
-RDEPENDS_perl-module-test-harness += "perl-module-warnings"
-RDEPENDS_perl-module-test-more += "perl-module-strict"
-RDEPENDS_perl-module-test-more += "perl-module-test-builder-module"
-RDEPENDS_perl-module-test-more += "perl-module-warnings"
-RDEPENDS_perl-module-test += "perl-module-exporter"
-RDEPENDS_perl-module-test += "perl-module-file-temp"
-RDEPENDS_perl-module-test += "perl-module-strict"
-RDEPENDS_perl-module-test-simple += "perl-module-strict"
-RDEPENDS_perl-module-test-simple += "perl-module-test-builder-module"
-RDEPENDS_perl-module-test-tester-capture += "perl-module-config"
-RDEPENDS_perl-module-test-tester-capture += "perl-module-strict"
-RDEPENDS_perl-module-test-tester-capture += "perl-module-test-builder"
-RDEPENDS_perl-module-test-tester-capture += "perl-module-vars"
-RDEPENDS_perl-module-test-tester-capturerunner += "perl-module-exporter"
-RDEPENDS_perl-module-test-tester-capturerunner += "perl-module-strict"
-RDEPENDS_perl-module-test-tester-capturerunner += "perl-module-test-tester-capture"
-RDEPENDS_perl-module-test-tester-delegate += "perl-module-strict"
-RDEPENDS_perl-module-test-tester-delegate += "perl-module-vars"
-RDEPENDS_perl-module-test-tester-delegate += "perl-module-warnings"
-RDEPENDS_perl-module-test-tester += "perl-module-exporter"
-RDEPENDS_perl-module-test-tester += "perl-module-strict"
-RDEPENDS_perl-module-test-tester += "perl-module-test-builder"
-RDEPENDS_perl-module-test-tester += "perl-module-test-tester-capturerunner"
-RDEPENDS_perl-module-test-tester += "perl-module-test-tester-delegate"
-RDEPENDS_perl-module-test-tester += "perl-module-vars"
-RDEPENDS_perl-module-text-abbrev += "perl-module-exporter"
-RDEPENDS_perl-module-text-balanced += "perl-module-exporter"
-RDEPENDS_perl-module-text-balanced += "perl-module-overload"
-RDEPENDS_perl-module-text-balanced += "perl-module-selfloader"
-RDEPENDS_perl-module-text-balanced += "perl-module-strict"
-RDEPENDS_perl-module-text-balanced += "perl-module-vars"
-RDEPENDS_perl-module-text-parsewords += "perl-module-exporter"
-RDEPENDS_perl-module-text-parsewords += "perl-module-strict"
-RDEPENDS_perl-module-text-tabs += "perl-module-exporter"
-RDEPENDS_perl-module-text-tabs += "perl-module-strict"
-RDEPENDS_perl-module-text-tabs += "perl-module-vars"
-RDEPENDS_perl-module-text-wrap += "perl-module-exporter"
-RDEPENDS_perl-module-text-wrap += "perl-module-re"
-RDEPENDS_perl-module-text-wrap += "perl-module-strict"
-RDEPENDS_perl-module-text-wrap += "perl-module-text-tabs"
-RDEPENDS_perl-module-text-wrap += "perl-module-vars"
-RDEPENDS_perl-module-text-wrap += "perl-module-warnings-register"
-RDEPENDS_perl-module-thread += "perl-module-config"
-RDEPENDS_perl-module-thread += "perl-module-exporter"
-RDEPENDS_perl-module-thread += "perl-module-strict"
-RDEPENDS_perl-module-thread += "perl-module-threads"
-RDEPENDS_perl-module-thread += "perl-module-threads-shared"
-RDEPENDS_perl-module-thread += "perl-module-warnings"
-RDEPENDS_perl-module-thread-queue += "perl-module-strict"
-RDEPENDS_perl-module-thread-queue += "perl-module-threads-shared"
-RDEPENDS_perl-module-thread-queue += "perl-module-warnings"
-RDEPENDS_perl-module-thread-semaphore += "perl-module-strict"
-RDEPENDS_perl-module-thread-semaphore += "perl-module-threads-shared"
-RDEPENDS_perl-module-thread-semaphore += "perl-module-warnings"
-RDEPENDS_perl-module-threads += "perl-module-config"
-RDEPENDS_perl-module-threads += "perl-module-overload"
-RDEPENDS_perl-module-threads += "perl-module-strict"
-RDEPENDS_perl-module-threads += "perl-module-warnings"
-RDEPENDS_perl-module-threads += "perl-module-xsloader"
-RDEPENDS_perl-module-threads-shared += "perl-module-config"
-RDEPENDS_perl-module-threads-shared += "perl-module-strict"
-RDEPENDS_perl-module-threads-shared += "perl-module-warnings"
-RDEPENDS_perl-module-threads-shared += "perl-module-xsloader"
-RDEPENDS_perl-module-tie-array += "perl-module-strict"
-RDEPENDS_perl-module-tie-file += "perl-module-fcntl"
-RDEPENDS_perl-module-tie-file += "perl-module-posix"
-RDEPENDS_perl-module-tie-file += "perl-module-strict"
-RDEPENDS_perl-module-tie-file += "perl-module-warnings"
-RDEPENDS_perl-module-tie-handle += "perl-module-tie-stdhandle"
-RDEPENDS_perl-module-tie-handle += "perl-module-warnings-register"
-RDEPENDS_perl-module-tie-hash-namedcapture += "perl-module-strict"
-RDEPENDS_perl-module-tie-hash += "perl-module-warnings-register"
-RDEPENDS_perl-module-tie-memoize += "perl-module-strict"
-RDEPENDS_perl-module-tie-memoize += "perl-module-tie-hash"
-RDEPENDS_perl-module-tie-refhash += "perl-module-config"
-RDEPENDS_perl-module-tie-refhash += "perl-module-overload"
-RDEPENDS_perl-module-tie-refhash += "perl-module-strict"
-RDEPENDS_perl-module-tie-refhash += "perl-module-tie-hash"
-RDEPENDS_perl-module-tie-refhash += "perl-module-vars"
-RDEPENDS_perl-module-tie-scalar += "perl-module-warnings-register"
-RDEPENDS_perl-module-tie-stdhandle += "perl-module-strict"
-RDEPENDS_perl-module-tie-stdhandle += "perl-module-tie-handle"
-RDEPENDS_perl-module-tie-substrhash += "perl-module-integer"
-RDEPENDS_perl-module-time-gmtime += "perl-module-exporter"
-RDEPENDS_perl-module-time-gmtime += "perl-module-strict"
-RDEPENDS_perl-module-time-gmtime += "perl-module-time-tm"
-RDEPENDS_perl-module-time-hires += "perl-module-exporter"
-RDEPENDS_perl-module-time-hires += "perl-module-strict"
-RDEPENDS_perl-module-time-hires += "perl-module-xsloader"
-RDEPENDS_perl-module-time-local += "perl-module-config"
-RDEPENDS_perl-module-time-local += "perl-module-constant"
-RDEPENDS_perl-module-time-local += "perl-module-exporter"
-RDEPENDS_perl-module-time-local += "perl-module-parent"
-RDEPENDS_perl-module-time-local += "perl-module-strict"
-RDEPENDS_perl-module-time-localtime += "perl-module-exporter"
-RDEPENDS_perl-module-time-localtime += "perl-module-strict"
-RDEPENDS_perl-module-time-localtime += "perl-module-time-tm"
-RDEPENDS_perl-module-time-piece += "perl-module-constant"
-RDEPENDS_perl-module-time-piece += "perl-module-exporter"
-RDEPENDS_perl-module-time-piece += "perl-module-integer"
-RDEPENDS_perl-module-time-piece += "perl-module-overload"
-RDEPENDS_perl-module-time-piece += "perl-module-strict"
-RDEPENDS_perl-module-time-piece += "perl-module-time-local"
-RDEPENDS_perl-module-time-piece += "perl-module-time-seconds"
-RDEPENDS_perl-module-time-piece += "perl-module-xsloader"
-RDEPENDS_perl-module-time-seconds += "perl-module-constant"
-RDEPENDS_perl-module-time-seconds += "perl-module-exporter"
-RDEPENDS_perl-module-time-seconds += "perl-module-overload"
-RDEPENDS_perl-module-time-seconds += "perl-module-strict"
-RDEPENDS_perl-module-time-tm += "perl-module-class-struct"
-RDEPENDS_perl-module-time-tm += "perl-module-strict"
-RDEPENDS_perl-module-unicode-collate-cjk-big5 += "perl-module-strict"
-RDEPENDS_perl-module-unicode-collate-cjk-big5 += "perl-module-warnings"
-RDEPENDS_perl-module-unicode-collate-cjk-gb2312 += "perl-module-strict"
-RDEPENDS_perl-module-unicode-collate-cjk-gb2312 += "perl-module-warnings"
-RDEPENDS_perl-module-unicode-collate-cjk-jisx0208 += "perl-module-strict"
-RDEPENDS_perl-module-unicode-collate-cjk-jisx0208 += "perl-module-warnings"
-RDEPENDS_perl-module-unicode-collate-cjk-korean += "perl-module-strict"
-RDEPENDS_perl-module-unicode-collate-cjk-korean += "perl-module-warnings"
-RDEPENDS_perl-module-unicode-collate-cjk-pinyin += "perl-module-strict"
-RDEPENDS_perl-module-unicode-collate-cjk-pinyin += "perl-module-warnings"
-RDEPENDS_perl-module-unicode-collate-cjk-stroke += "perl-module-strict"
-RDEPENDS_perl-module-unicode-collate-cjk-stroke += "perl-module-warnings"
-RDEPENDS_perl-module-unicode-collate-cjk-zhuyin += "perl-module-strict"
-RDEPENDS_perl-module-unicode-collate-cjk-zhuyin += "perl-module-warnings"
-RDEPENDS_perl-module-unicode-collate-locale += "perl-module-base"
-RDEPENDS_perl-module-unicode-collate-locale += "perl-module-strict"
-RDEPENDS_perl-module-unicode-collate-locale += "perl-module-warnings"
-RDEPENDS_perl-module-unicode-collate += "perl-module-constant"
-RDEPENDS_perl-module-unicode-collate += "perl-module-strict"
-RDEPENDS_perl-module-unicode-collate += "perl-module-warnings"
-RDEPENDS_perl-module-unicode-collate += "perl-module-xsloader"
-RDEPENDS_perl-module-unicode-normalize += "perl-module-exporter"
-RDEPENDS_perl-module-unicode-normalize += "perl-module-strict"
-RDEPENDS_perl-module-unicode-normalize += "perl-module-warnings"
-RDEPENDS_perl-module-unicode-normalize += "perl-module-xsloader"
-RDEPENDS_perl-module-unicode-ucd += "perl-module-charnames"
-RDEPENDS_perl-module-unicode-ucd += "perl-module-exporter"
-RDEPENDS_perl-module-unicode-ucd += "perl-module-feature"
-RDEPENDS_perl-module-unicode-ucd += "perl-module-if"
-RDEPENDS_perl-module-unicode-ucd += "perl-module-integer"
-RDEPENDS_perl-module-unicode-ucd += "perl-module-re"
-RDEPENDS_perl-module-unicode-ucd += "perl-module-strict"
-RDEPENDS_perl-module-unicode-ucd += "perl-module-unicode-normalize"
-RDEPENDS_perl-module-unicode-ucd += "perl-module-warnings"
-RDEPENDS_perl-module-user-grent += "perl-module-class-struct"
-RDEPENDS_perl-module-user-grent += "perl-module-exporter"
-RDEPENDS_perl-module-user-grent += "perl-module-strict"
-RDEPENDS_perl-module-user-pwent += "perl-module-class-struct"
-RDEPENDS_perl-module-user-pwent += "perl-module-config"
-RDEPENDS_perl-module-user-pwent += "perl-module-exporter"
-RDEPENDS_perl-module-user-pwent += "perl-module-strict"
-RDEPENDS_perl-module-user-pwent += "perl-module-warnings"
-RDEPENDS_perl-module-version += "perl-module-strict"
-RDEPENDS_perl-module-version += "perl-module-version-regex"
-RDEPENDS_perl-module-version += "perl-module-warnings-register"
-RDEPENDS_perl-module-version-regex += "perl-module-strict"
-RDEPENDS_perl-module-xsloader += "perl-module-dynaloader"
+RDEPENDS:perl-module-anydbm-file += "perl-module-strict"
+RDEPENDS:perl-module-anydbm-file += "perl-module-warnings"
+RDEPENDS:perl-module-app-cpan += "perl-module-config"
+RDEPENDS:perl-module-app-cpan += "perl-module-constant"
+RDEPENDS:perl-module-app-cpan += "perl-module-cpan"
+RDEPENDS:perl-module-app-cpan += "perl-module-cwd"
+RDEPENDS:perl-module-app-cpan += "perl-module-data-dumper"
+RDEPENDS:perl-module-app-cpan += "perl-module-file-basename"
+RDEPENDS:perl-module-app-cpan += "perl-module-file-find"
+RDEPENDS:perl-module-app-cpan += "perl-module-getopt-std"
+RDEPENDS:perl-module-app-cpan += "perl-module-if"
+RDEPENDS:perl-module-app-cpan += "perl-module-net-ping"
+RDEPENDS:perl-module-app-cpan += "perl-module-strict"
+RDEPENDS:perl-module-app-cpan += "perl-module-user-pwent"
+RDEPENDS:perl-module-app-cpan += "perl-module-vars"
+RDEPENDS:perl-module-app-cpan += "perl-module-warnings"
+RDEPENDS:perl-module-app-prove += "perl-module-app-prove-state"
+RDEPENDS:perl-module-app-prove += "perl-module-base"
+RDEPENDS:perl-module-app-prove += "perl-module-constant"
+RDEPENDS:perl-module-app-prove += "perl-module-getopt-long"
+RDEPENDS:perl-module-app-prove += "perl-module-strict"
+RDEPENDS:perl-module-app-prove += "perl-module-tap-harness"
+RDEPENDS:perl-module-app-prove += "perl-module-tap-harness-env"
+RDEPENDS:perl-module-app-prove += "perl-module-text-parsewords"
+RDEPENDS:perl-module-app-prove += "perl-module-warnings"
+RDEPENDS:perl-module-app-prove-state += "perl-module-app-prove-state-result"
+RDEPENDS:perl-module-app-prove-state += "perl-module-base"
+RDEPENDS:perl-module-app-prove-state += "perl-module-constant"
+RDEPENDS:perl-module-app-prove-state += "perl-module-file-find"
+RDEPENDS:perl-module-app-prove-state += "perl-module-strict"
+RDEPENDS:perl-module-app-prove-state += "perl-module-tap-parser-yamlish-reader"
+RDEPENDS:perl-module-app-prove-state += "perl-module-tap-parser-yamlish-writer"
+RDEPENDS:perl-module-app-prove-state += "perl-module-warnings"
+RDEPENDS:perl-module-app-prove-state-result += "perl-module-app-prove-state-result-test"
+RDEPENDS:perl-module-app-prove-state-result += "perl-module-constant"
+RDEPENDS:perl-module-app-prove-state-result += "perl-module-strict"
+RDEPENDS:perl-module-app-prove-state-result += "perl-module-warnings"
+RDEPENDS:perl-module-app-prove-state-result-test += "perl-module-strict"
+RDEPENDS:perl-module-app-prove-state-result-test += "perl-module-warnings"
+RDEPENDS:perl-module-archive-tar-constant += "perl-module-constant"
+RDEPENDS:perl-module-archive-tar-constant += "perl-module-exporter"
+RDEPENDS:perl-module-archive-tar-constant += "perl-module-io-compress-bzip2"
+RDEPENDS:perl-module-archive-tar-constant += "perl-module-strict"
+RDEPENDS:perl-module-archive-tar-constant += "perl-module-time-local"
+RDEPENDS:perl-module-archive-tar-constant += "perl-module-warnings"
+RDEPENDS:perl-module-archive-tar-file += "perl-module-archive-tar"
+RDEPENDS:perl-module-archive-tar-file += "perl-module-archive-tar-constant"
+RDEPENDS:perl-module-archive-tar-file += "perl-module-file-basename"
+RDEPENDS:perl-module-archive-tar-file += "perl-module-io-file"
+RDEPENDS:perl-module-archive-tar-file += "perl-module-strict"
+RDEPENDS:perl-module-archive-tar-file += "perl-module-vars"
+RDEPENDS:perl-module-archive-tar += "perl-module-archive-tar-constant"
+RDEPENDS:perl-module-archive-tar += "perl-module-archive-tar-file"
+RDEPENDS:perl-module-archive-tar += "perl-module-config"
+RDEPENDS:perl-module-archive-tar += "perl-module-cwd"
+RDEPENDS:perl-module-archive-tar += "perl-module-exporter"
+RDEPENDS:perl-module-archive-tar += "perl-module-file-path"
+RDEPENDS:perl-module-archive-tar += "perl-module-io-file"
+RDEPENDS:perl-module-archive-tar += "perl-module-io-zlib"
+RDEPENDS:perl-module-archive-tar += "perl-module-strict"
+RDEPENDS:perl-module-archive-tar += "perl-module-vars"
+RDEPENDS:perl-module-attribute-handlers += "perl-module-strict"
+RDEPENDS:perl-module-attribute-handlers += "perl-module-warnings"
+RDEPENDS:perl-module-attributes += "perl-module-exporter"
+RDEPENDS:perl-module-attributes += "perl-module-strict"
+RDEPENDS:perl-module-attributes += "perl-module-warnings"
+RDEPENDS:perl-module-attributes += "perl-module-xsloader"
+RDEPENDS:perl-module-autodie-exception += "perl-module-constant"
+RDEPENDS:perl-module-autodie-exception += "perl-module-fatal"
+RDEPENDS:perl-module-autodie-exception += "perl-module-fcntl"
+RDEPENDS:perl-module-autodie-exception += "perl-module-overload"
+RDEPENDS:perl-module-autodie-exception += "perl-module-strict"
+RDEPENDS:perl-module-autodie-exception += "perl-module-warnings"
+RDEPENDS:perl-module-autodie-exception-system += "perl-module-parent"
+RDEPENDS:perl-module-autodie-exception-system += "perl-module-strict"
+RDEPENDS:perl-module-autodie-exception-system += "perl-module-warnings"
+RDEPENDS:perl-module-autodie-hints += "perl-module-b"
+RDEPENDS:perl-module-autodie-hints += "perl-module-constant"
+RDEPENDS:perl-module-autodie-hints += "perl-module-strict"
+RDEPENDS:perl-module-autodie-hints += "perl-module-warnings"
+RDEPENDS:perl-module-autodie += "perl-module-constant"
+RDEPENDS:perl-module-autodie += "perl-module-lib"
+RDEPENDS:perl-module-autodie += "perl-module-parent"
+RDEPENDS:perl-module-autodie += "perl-module-strict"
+RDEPENDS:perl-module-autodie += "perl-module-warnings"
+RDEPENDS:perl-module-autodie-scope-guard += "perl-module-strict"
+RDEPENDS:perl-module-autodie-scope-guard += "perl-module-warnings"
+RDEPENDS:perl-module-autodie-scope-guardstack += "perl-module-autodie-scope-guard"
+RDEPENDS:perl-module-autodie-scope-guardstack += "perl-module-strict"
+RDEPENDS:perl-module-autodie-scope-guardstack += "perl-module-warnings"
+RDEPENDS:perl-module-autodie-skip += "perl-module-strict"
+RDEPENDS:perl-module-autodie-skip += "perl-module-warnings"
+RDEPENDS:perl-module-autodie-util += "perl-module-autodie-scope-guardstack"
+RDEPENDS:perl-module-autodie-util += "perl-module-exporter"
+RDEPENDS:perl-module-autodie-util += "perl-module-strict"
+RDEPENDS:perl-module-autodie-util += "perl-module-warnings"
+RDEPENDS:perl-module-autoloader += "perl-module-strict"
+RDEPENDS:perl-module-autosplit += "perl-module-config"
+RDEPENDS:perl-module-autosplit += "perl-module-exporter"
+RDEPENDS:perl-module-autosplit += "perl-module-file-basename"
+RDEPENDS:perl-module-autosplit += "perl-module-file-path"
+RDEPENDS:perl-module-autosplit += "perl-module-strict"
+RDEPENDS:perl-module-base += "perl-module-strict"
+RDEPENDS:perl-module-b-concise += "perl-module-b"
+RDEPENDS:perl-module-b-concise += "perl-module-b-op-private"
+RDEPENDS:perl-module-b-concise += "perl-module-config"
+RDEPENDS:perl-module-b-concise += "perl-module-exporter"
+RDEPENDS:perl-module-b-concise += "perl-module-feature"
+RDEPENDS:perl-module-b-concise += "perl-module-strict"
+RDEPENDS:perl-module-b-concise += "perl-module-warnings"
+RDEPENDS:perl-module-benchmark += "perl-module-exporter"
+RDEPENDS:perl-module-benchmark += "perl-module-strict"
+RDEPENDS:perl-module-bigint += "perl-module-constant"
+RDEPENDS:perl-module-bigint += "perl-module-exporter"
+RDEPENDS:perl-module-bigint += "perl-module-math-bigint"
+RDEPENDS:perl-module-bigint += "perl-module-math-bigint-trace"
+RDEPENDS:perl-module-bigint += "perl-module-overload"
+RDEPENDS:perl-module-bigint += "perl-module-strict"
+RDEPENDS:perl-module-bigint += "perl-module-warnings"
+RDEPENDS:perl-module-bignum += "perl-module-bigint"
+RDEPENDS:perl-module-bignum += "perl-module-exporter"
+RDEPENDS:perl-module-bignum += "perl-module-math-bigfloat"
+RDEPENDS:perl-module-bignum += "perl-module-math-bigfloat-trace"
+RDEPENDS:perl-module-bignum += "perl-module-math-bigint"
+RDEPENDS:perl-module-bignum += "perl-module-math-bigint-trace"
+RDEPENDS:perl-module-bignum += "perl-module-overload"
+RDEPENDS:perl-module-bignum += "perl-module-strict"
+RDEPENDS:perl-module-bignum += "perl-module-warnings"
+RDEPENDS:perl-module-bigrat += "perl-module-bigint"
+RDEPENDS:perl-module-bigrat += "perl-module-exporter"
+RDEPENDS:perl-module-bigrat += "perl-module-math-bigfloat"
+RDEPENDS:perl-module-bigrat += "perl-module-math-bigint"
+RDEPENDS:perl-module-bigrat += "perl-module-math-bigint-trace"
+RDEPENDS:perl-module-bigrat += "perl-module-math-bigrat"
+RDEPENDS:perl-module-bigrat += "perl-module-overload"
+RDEPENDS:perl-module-bigrat += "perl-module-strict"
+RDEPENDS:perl-module-bigrat += "perl-module-warnings"
+RDEPENDS:perl-module-blib += "perl-module-cwd"
+RDEPENDS:perl-module-b += "perl-module-exporter"
+RDEPENDS:perl-module-b += "perl-module-xsloader"
+RDEPENDS:perl-module-b-showlex += "perl-module-b"
+RDEPENDS:perl-module-b-showlex += "perl-module-b-concise"
+RDEPENDS:perl-module-b-showlex += "perl-module-b-terse"
+RDEPENDS:perl-module-b-showlex += "perl-module-strict"
+RDEPENDS:perl-module-b-terse += "perl-module-b"
+RDEPENDS:perl-module-b-terse += "perl-module-b-concise"
+RDEPENDS:perl-module-b-terse += "perl-module-strict"
+RDEPENDS:perl-module-b-xref += "perl-module-b"
+RDEPENDS:perl-module-b-xref += "perl-module-config"
+RDEPENDS:perl-module-b-xref += "perl-module-strict"
+RDEPENDS:perl-module-bytes += "perl-module-bytes-heavy"
+RDEPENDS:perl-module--charnames += "perl-module-bytes"
+RDEPENDS:perl-module-charnames += "perl-module-bytes"
+RDEPENDS:perl-module-charnames += "perl-module--charnames"
+RDEPENDS:perl-module--charnames += "perl-module-re"
+RDEPENDS:perl-module-charnames += "perl-module-re"
+RDEPENDS:perl-module--charnames += "perl-module-strict"
+RDEPENDS:perl-module-charnames += "perl-module-strict"
+RDEPENDS:perl-module--charnames += "perl-module-warnings"
+RDEPENDS:perl-module-charnames += "perl-module-warnings"
+RDEPENDS:perl-module-class-struct += "perl-module-exporter"
+RDEPENDS:perl-module-class-struct += "perl-module-strict"
+RDEPENDS:perl-module-class-struct += "perl-module-warnings-register"
+RDEPENDS:perl-module-compress-raw-bzip2 += "perl-module-bytes "
+RDEPENDS:perl-module-compress-raw-bzip2 += "perl-module-constant"
+RDEPENDS:perl-module-compress-raw-bzip2 += "perl-module-dynaloader"
+RDEPENDS:perl-module-compress-raw-bzip2 += "perl-module-exporter"
+RDEPENDS:perl-module-compress-raw-bzip2 += "perl-module-strict "
+RDEPENDS:perl-module-compress-raw-bzip2 += "perl-module-warnings "
+RDEPENDS:perl-module-compress-raw-bzip2 += "perl-module-xsloader"
+RDEPENDS:perl-module-compress-raw-zlib += "perl-module-bytes "
+RDEPENDS:perl-module-compress-raw-zlib += "perl-module-constant"
+RDEPENDS:perl-module-compress-raw-zlib += "perl-module-dynaloader"
+RDEPENDS:perl-module-compress-raw-zlib += "perl-module-exporter"
+RDEPENDS:perl-module-compress-raw-zlib += "perl-module-strict "
+RDEPENDS:perl-module-compress-raw-zlib += "perl-module-warnings "
+RDEPENDS:perl-module-compress-raw-zlib += "perl-module-xsloader"
+RDEPENDS:perl-module-compress-zlib += "perl-module-bytes "
+RDEPENDS:perl-module-compress-zlib += "perl-module-compress-raw-zlib"
+RDEPENDS:perl-module-compress-zlib += "perl-module-constant"
+RDEPENDS:perl-module-compress-zlib += "perl-module-exporter"
+RDEPENDS:perl-module-compress-zlib += "perl-module-io-compress-base-common"
+RDEPENDS:perl-module-compress-zlib += "perl-module-io-compress-gzip"
+RDEPENDS:perl-module-compress-zlib += "perl-module-io-compress-gzip-constants"
+RDEPENDS:perl-module-compress-zlib += "perl-module-io-handle "
+RDEPENDS:perl-module-compress-zlib += "perl-module-io-uncompress-gunzip"
+RDEPENDS:perl-module-compress-zlib += "perl-module-strict "
+RDEPENDS:perl-module-compress-zlib += "perl-module-warnings "
+RDEPENDS:perl-module-config-extensions += "perl-module-config"
+RDEPENDS:perl-module-config-extensions += "perl-module-exporter"
+RDEPENDS:perl-module-config-extensions += "perl-module-strict"
+RDEPENDS:perl-module-config-perl-v += "perl-module-config"
+RDEPENDS:perl-module-config-perl-v += "perl-module-exporter"
+RDEPENDS:perl-module-config-perl-v += "perl-module-strict"
+RDEPENDS:perl-module-config-perl-v += "perl-module-vars"
+RDEPENDS:perl-module-config-perl-v += "perl-module-warnings"
+RDEPENDS:perl-module-constant += "perl-module-strict"
+RDEPENDS:perl-module-constant += "perl-module-warnings-register"
+RDEPENDS:perl-module-corelist += "perl-module-list-util"
+RDEPENDS:perl-module-corelist += "perl-module-corelist"
+RDEPENDS:perl-module-corelist += "perl-module-strict"
+RDEPENDS:perl-module-corelist += "perl-module-version"
+RDEPENDS:perl-module-corelist += "perl-module-warnings"
+RDEPENDS:perl-module-cpan += "perl-module-b"
+RDEPENDS:perl-module-cpan += "perl-module-config"
+RDEPENDS:perl-module-cpan += "perl-module-cwd"
+RDEPENDS:perl-module-cpan += "perl-module-data-dumper"
+RDEPENDS:perl-module-cpan += "perl-module-dirhandle"
+RDEPENDS:perl-module-cpan += "perl-module-errno"
+RDEPENDS:perl-module-cpan += "perl-module-exporter"
+RDEPENDS:perl-module-cpan += "perl-module-extutils-makemaker"
+RDEPENDS:perl-module-cpan += "perl-module-extutils-manifest"
+RDEPENDS:perl-module-cpan += "perl-module-fcntl"
+RDEPENDS:perl-module-cpan += "perl-module-file-basename"
+RDEPENDS:perl-module-cpan += "perl-module-file-copy"
+RDEPENDS:perl-module-cpan += "perl-module-file-find"
+RDEPENDS:perl-module-cpan += "perl-module-filehandle"
+RDEPENDS:perl-module-cpan += "perl-module-file-path"
+RDEPENDS:perl-module-cpan += "perl-module-json-pp"
+RDEPENDS:perl-module-cpan += "perl-module-lib"
+RDEPENDS:perl-module-cpan += "perl-module-net-ping"
+RDEPENDS:perl-module-cpan += "perl-module-overload"
+RDEPENDS:perl-module-cpan += "perl-module-posix"
+RDEPENDS:perl-module-cpan += "perl-module-safe"
+RDEPENDS:perl-module-cpan += "perl-module-strict"
+RDEPENDS:perl-module-cpan += "perl-module-sys-hostname"
+RDEPENDS:perl-module-cpan += "perl-module-term-readline"
+RDEPENDS:perl-module-cpan += "perl-module-text-parsewords"
+RDEPENDS:perl-module-cpan += "perl-module-text-wrap"
+RDEPENDS:perl-module-cpan += "perl-module-time-local"
+RDEPENDS:perl-module-cpan += "perl-module-vars"
+RDEPENDS:perl-module-cpan += "perl-module-warnings"
+RDEPENDS:perl-module-cwd += "perl-module-errno"
+RDEPENDS:perl-module-cwd += "perl-module-exporter"
+RDEPENDS:perl-module-cwd += "perl-module-strict"
+RDEPENDS:perl-module-cwd += "perl-module-xsloader"
+RDEPENDS:perl-module-data-dumper += "perl-module-config"
+RDEPENDS:perl-module-data-dumper += "perl-module-constant"
+RDEPENDS:perl-module-data-dumper += "perl-module-exporter"
+RDEPENDS:perl-module-data-dumper += "perl-module-xsloader"
+RDEPENDS:perl-module-db-file += "perl-module-dynaloader"
+RDEPENDS:perl-module-db-file += "perl-module-exporter"
+RDEPENDS:perl-module-db-file += "perl-module-fcntl"
+RDEPENDS:perl-module-db-file += "perl-module-strict "
+RDEPENDS:perl-module-db-file += "perl-module-strict"
+RDEPENDS:perl-module-db-file += "perl-module-tie-hash"
+RDEPENDS:perl-module-db-file += "perl-module-warnings"
+RDEPENDS:perl-module-dbm-filter-compress += "perl-module-strict"
+RDEPENDS:perl-module-dbm-filter-compress += "perl-module-warnings"
+RDEPENDS:perl-module-dbm-filter-encode += "perl-module-strict"
+RDEPENDS:perl-module-dbm-filter-encode += "perl-module-warnings"
+RDEPENDS:perl-module-dbm-filter-int32 += "perl-module-strict"
+RDEPENDS:perl-module-dbm-filter-int32 += "perl-module-warnings"
+RDEPENDS:perl-module-dbm-filter-null += "perl-module-strict"
+RDEPENDS:perl-module-dbm-filter-null += "perl-module-warnings"
+RDEPENDS:perl-module-dbm-filter += "perl-module-strict"
+RDEPENDS:perl-module-dbm-filter += "perl-module-warnings"
+RDEPENDS:perl-module-dbm-filter-utf8 += "perl-module-strict"
+RDEPENDS:perl-module-dbm-filter-utf8 += "perl-module-warnings"
+RDEPENDS:perl-module-db += "perl-module-strict"
+RDEPENDS:perl-module-deprecate += "perl-module-strict"
+RDEPENDS:perl-module-deprecate += "perl-module-warnings"
+RDEPENDS:perl-module-devel-peek += "perl-module-exporter"
+RDEPENDS:perl-module-devel-peek += "perl-module-xsloader"
+RDEPENDS:perl-module-devel-ppport += "perl-module-file-find"
+RDEPENDS:perl-module-devel-ppport += "perl-module-getopt-long"
+RDEPENDS:perl-module-devel-ppport += "perl-module-strict"
+RDEPENDS:perl-module-devel-ppport += "perl-module-vars"
+RDEPENDS:perl-module-devel-selfstubber += "perl-module-selfloader"
+RDEPENDS:perl-module-diagnostics += "perl-module-config"
+RDEPENDS:perl-module-diagnostics += "perl-module-getopt-std"
+RDEPENDS:perl-module-diagnostics += "perl-module-strict"
+RDEPENDS:perl-module-diagnostics += "perl-module-text-tabs"
+RDEPENDS:perl-module-digest-base += "perl-module-mime-base64"
+RDEPENDS:perl-module-digest-base += "perl-module-strict"
+RDEPENDS:perl-module-digest-base += "perl-module-vars"
+RDEPENDS:perl-module-digest-file += "perl-module-digest"
+RDEPENDS:perl-module-digest-file += "perl-module-exporter"
+RDEPENDS:perl-module-digest-file += "perl-module-strict"
+RDEPENDS:perl-module-digest-file += "perl-module-vars"
+RDEPENDS:perl-module-digest-md5 += "perl-module-digest-base"
+RDEPENDS:perl-module-digest-md5 += "perl-module-exporter"
+RDEPENDS:perl-module-digest-md5 += "perl-module-strict"
+RDEPENDS:perl-module-digest-md5 += "perl-module-vars"
+RDEPENDS:perl-module-digest-md5 += "perl-module-xsloader"
+RDEPENDS:perl-module-digest += "perl-module-strict"
+RDEPENDS:perl-module-digest += "perl-module-vars"
+RDEPENDS:perl-module-digest-sha += "perl-module-digest-base"
+RDEPENDS:perl-module-digest-sha += "perl-module-dynaloader"
+RDEPENDS:perl-module-digest-sha += "perl-module-exporter"
+RDEPENDS:perl-module-digest-sha += "perl-module-fcntl"
+RDEPENDS:perl-module-digest-sha += "perl-module-integer"
+RDEPENDS:perl-module-digest-sha += "perl-module-strict"
+RDEPENDS:perl-module-digest-sha += "perl-module-vars"
+RDEPENDS:perl-module-digest-sha += "perl-module-warnings"
+RDEPENDS:perl-module-digest-sha += "perl-module-xsloader"
+RDEPENDS:perl-module-dynaloader += "perl-module-config"
+RDEPENDS:perl-module-encode-alias += "perl-module-constant"
+RDEPENDS:perl-module-encode-alias += "perl-module-encode"
+RDEPENDS:perl-module-encode-alias += "perl-module-exporter"
+RDEPENDS:perl-module-encode-alias += "perl-module-strict"
+RDEPENDS:perl-module-encode-alias += "perl-module-warnings"
+RDEPENDS:perl-module-encode-byte += "perl-module-encode"
+RDEPENDS:perl-module-encode-byte += "perl-module-strict"
+RDEPENDS:perl-module-encode-byte += "perl-module-warnings"
+RDEPENDS:perl-module-encode-byte += "perl-module-xsloader"
+RDEPENDS:perl-module-encode-cjkconstants += "perl-module-exporter"
+RDEPENDS:perl-module-encode-cjkconstants += "perl-module-strict"
+RDEPENDS:perl-module-encode-cjkconstants += "perl-module-warnings"
+RDEPENDS:perl-module-encode-cn-hz += "perl-module-encode"
+RDEPENDS:perl-module-encode-cn-hz += "perl-module-parent"
+RDEPENDS:perl-module-encode-cn-hz += "perl-module-strict"
+RDEPENDS:perl-module-encode-cn-hz += "perl-module-utf8"
+RDEPENDS:perl-module-encode-cn-hz += "perl-module-vars"
+RDEPENDS:perl-module-encode-cn-hz += "perl-module-warnings"
+RDEPENDS:perl-module-encode-cn += "perl-module-encode"
+RDEPENDS:perl-module-encode-cn += "perl-module-encode-cn-hz"
+RDEPENDS:perl-module-encode-cn += "perl-module-strict"
+RDEPENDS:perl-module-encode-cn += "perl-module-warnings"
+RDEPENDS:perl-module-encode-cn += "perl-module-xsloader"
+RDEPENDS:perl-module-encode-config += "perl-module-strict"
+RDEPENDS:perl-module-encode-config += "perl-module-warnings"
+RDEPENDS:perl-module-encode-ebcdic += "perl-module-encode"
+RDEPENDS:perl-module-encode-ebcdic += "perl-module-strict"
+RDEPENDS:perl-module-encode-ebcdic += "perl-module-warnings"
+RDEPENDS:perl-module-encode-ebcdic += "perl-module-xsloader"
+RDEPENDS:perl-module-encode-encoder += "perl-module-constant"
+RDEPENDS:perl-module-encode-encoder += "perl-module-encode"
+RDEPENDS:perl-module-encode-encoder += "perl-module-exporter"
+RDEPENDS:perl-module-encode-encoder += "perl-module-overload"
+RDEPENDS:perl-module-encode-encoder += "perl-module-strict"
+RDEPENDS:perl-module-encode-encoder += "perl-module-warnings"
+RDEPENDS:perl-module-encode-encoding += "perl-module-constant"
+RDEPENDS:perl-module-encode-encoding += "perl-module-encode"
+RDEPENDS:perl-module-encode-encoding += "perl-module-encode-mime-name"
+RDEPENDS:perl-module-encode-encoding += "perl-module-strict"
+RDEPENDS:perl-module-encode-encoding += "perl-module-warnings"
+RDEPENDS:perl-module-encode-gsm0338 += "perl-module-encode"
+RDEPENDS:perl-module-encode-gsm0338 += "perl-module-parent"
+RDEPENDS:perl-module-encode-gsm0338 += "perl-module-strict"
+RDEPENDS:perl-module-encode-gsm0338 += "perl-module-utf8"
+RDEPENDS:perl-module-encode-gsm0338 += "perl-module-vars"
+RDEPENDS:perl-module-encode-gsm0338 += "perl-module-warnings"
+RDEPENDS:perl-module-encode-guess += "perl-module-bytes"
+RDEPENDS:perl-module-encode-guess += "perl-module-constant"
+RDEPENDS:perl-module-encode-guess += "perl-module-encode"
+RDEPENDS:perl-module-encode-guess += "perl-module-encode-unicode"
+RDEPENDS:perl-module-encode-guess += "perl-module-parent"
+RDEPENDS:perl-module-encode-guess += "perl-module-strict"
+RDEPENDS:perl-module-encode-guess += "perl-module-warnings"
+RDEPENDS:perl-module-encode-jp-h2z += "perl-module-encode-cjkconstants"
+RDEPENDS:perl-module-encode-jp-h2z += "perl-module-strict"
+RDEPENDS:perl-module-encode-jp-h2z += "perl-module-vars"
+RDEPENDS:perl-module-encode-jp-h2z += "perl-module-warnings"
+RDEPENDS:perl-module-encode-jp-jis7 += "perl-module-bytes"
+RDEPENDS:perl-module-encode-jp-jis7 += "perl-module-encode"
+RDEPENDS:perl-module-encode-jp-jis7 += "perl-module-encode-cjkconstants"
+RDEPENDS:perl-module-encode-jp-jis7 += "perl-module-encode-jp-h2z"
+RDEPENDS:perl-module-encode-jp-jis7 += "perl-module-parent"
+RDEPENDS:perl-module-encode-jp-jis7 += "perl-module-strict"
+RDEPENDS:perl-module-encode-jp-jis7 += "perl-module-warnings"
+RDEPENDS:perl-module-encode-jp += "perl-module-encode"
+RDEPENDS:perl-module-encode-jp += "perl-module-encode-jp-jis7"
+RDEPENDS:perl-module-encode-jp += "perl-module-strict"
+RDEPENDS:perl-module-encode-jp += "perl-module-warnings"
+RDEPENDS:perl-module-encode-jp += "perl-module-xsloader"
+RDEPENDS:perl-module-encode-kr-2022-kr += "perl-module-encode"
+RDEPENDS:perl-module-encode-kr-2022-kr += "perl-module-encode-cjkconstants"
+RDEPENDS:perl-module-encode-kr-2022-kr += "perl-module-parent"
+RDEPENDS:perl-module-encode-kr-2022-kr += "perl-module-strict"
+RDEPENDS:perl-module-encode-kr-2022-kr += "perl-module-warnings"
+RDEPENDS:perl-module-encode-kr += "perl-module-encode"
+RDEPENDS:perl-module-encode-kr += "perl-module-encode-kr-2022-kr"
+RDEPENDS:perl-module-encode-kr += "perl-module-strict"
+RDEPENDS:perl-module-encode-kr += "perl-module-warnings"
+RDEPENDS:perl-module-encode-kr += "perl-module-xsloader"
+RDEPENDS:perl-module-encode-mime-header-iso-2022-jp += "perl-module-constant"
+RDEPENDS:perl-module-encode-mime-header-iso-2022-jp += "perl-module-encode-cjkconstants"
+RDEPENDS:perl-module-encode-mime-header-iso-2022-jp += "perl-module-parent"
+RDEPENDS:perl-module-encode-mime-header-iso-2022-jp += "perl-module-strict"
+RDEPENDS:perl-module-encode-mime-header-iso-2022-jp += "perl-module-warnings"
+RDEPENDS:perl-module-encode-mime-header += "perl-module-encode"
+RDEPENDS:perl-module-encode-mime-header += "perl-module-mime-base64"
+RDEPENDS:perl-module-encode-mime-header += "perl-module-parent"
+RDEPENDS:perl-module-encode-mime-header += "perl-module-strict"
+RDEPENDS:perl-module-encode-mime-header += "perl-module-warnings"
+RDEPENDS:perl-module-encode-mime-name += "perl-module-strict"
+RDEPENDS:perl-module-encode-mime-name += "perl-module-warnings"
+RDEPENDS:perl-module-encode += "perl-module-bytes"
+RDEPENDS:perl-module-encode += "perl-module-constant"
+RDEPENDS:perl-module-encode += "perl-module-encode-alias"
+RDEPENDS:perl-module-encode += "perl-module-encode-config"
+RDEPENDS:perl-module-encode += "perl-module-encode-configlocal-pm"
+RDEPENDS:perl-module-encode += "perl-module-encode-mime-name"
+RDEPENDS:perl-module-encode += "perl-module-exporter"
+RDEPENDS:perl-module-encode += "perl-module-parent"
+RDEPENDS:perl-module-encode += "perl-module-storable"
+RDEPENDS:perl-module-encode += "perl-module-strict"
+RDEPENDS:perl-module-encode += "perl-module-warnings"
+RDEPENDS:perl-module-encode += "perl-module-xsloader"
+RDEPENDS:perl-module-encode-symbol += "perl-module-encode"
+RDEPENDS:perl-module-encode-symbol += "perl-module-strict"
+RDEPENDS:perl-module-encode-symbol += "perl-module-warnings"
+RDEPENDS:perl-module-encode-symbol += "perl-module-xsloader"
+RDEPENDS:perl-module-encode-tw += "perl-module-encode"
+RDEPENDS:perl-module-encode-tw += "perl-module-strict"
+RDEPENDS:perl-module-encode-tw += "perl-module-warnings"
+RDEPENDS:perl-module-encode-tw += "perl-module-xsloader"
+RDEPENDS:perl-module-encode-unicode += "perl-module-encode"
+RDEPENDS:perl-module-encode-unicode += "perl-module-parent"
+RDEPENDS:perl-module-encode-unicode += "perl-module-strict"
+RDEPENDS:perl-module-encode-unicode += "perl-module-warnings"
+RDEPENDS:perl-module-encode-unicode += "perl-module-xsloader"
+RDEPENDS:perl-module-encode-unicode-utf7 += "perl-module-encode"
+RDEPENDS:perl-module-encode-unicode-utf7 += "perl-module-mime-base64"
+RDEPENDS:perl-module-encode-unicode-utf7 += "perl-module-parent"
+RDEPENDS:perl-module-encode-unicode-utf7 += "perl-module-re"
+RDEPENDS:perl-module-encode-unicode-utf7 += "perl-module-strict"
+RDEPENDS:perl-module-encode-unicode-utf7 += "perl-module-warnings"
+RDEPENDS:perl-module-encoding += "perl-module-config"
+RDEPENDS:perl-module-encoding += "perl-module-constant"
+RDEPENDS:perl-module-encoding += "perl-module-encode"
+RDEPENDS:perl-module-encoding += "perl-module-filter-util-call"
+RDEPENDS:perl-module-encoding += "perl-module-i18n-langinfo"
+RDEPENDS:perl-module-encoding += "perl-module-posix"
+RDEPENDS:perl-module-encoding += "perl-module-strict"
+RDEPENDS:perl-module-encoding += "perl-module-utf8"
+RDEPENDS:perl-module-encoding += "perl-module-warnings"
+RDEPENDS:perl-module-encoding-warnings += "perl-module-strict"
+RDEPENDS:perl-module-encoding-warnings += "perl-module-warnings"
+RDEPENDS:perl-module-english += "perl-module-exporter"
+RDEPENDS:perl-module-env += "perl-module-config"
+RDEPENDS:perl-module-env += "perl-module-tie-array"
+RDEPENDS:perl-module-errno += "perl-module-exporter"
+RDEPENDS:perl-module-errno += "perl-module-strict"
+RDEPENDS:perl-module-experimental += "perl-module-strict"
+RDEPENDS:perl-module-experimental += "perl-module-version"
+RDEPENDS:perl-module-experimental += "perl-module-warnings"
+RDEPENDS:perl-module-exporter-heavy += "perl-module-exporter"
+RDEPENDS:perl-module-exporter-heavy += "perl-module-strict"
+RDEPENDS:perl-module-exporter += "perl-module-exporter-heavy"
+RDEPENDS:perl-module-extutils-cbuilder-base += "perl-module-config"
+RDEPENDS:perl-module-extutils-cbuilder-base += "perl-module-cwd"
+RDEPENDS:perl-module-extutils-cbuilder-base += "perl-module-dynaloader"
+RDEPENDS:perl-module-extutils-cbuilder-base += "perl-module-extutils-mksymlists"
+RDEPENDS:perl-module-extutils-cbuilder-base += "perl-module-file-basename"
+RDEPENDS:perl-module-extutils-cbuilder-base += "perl-module-file-temp"
+RDEPENDS:perl-module-extutils-cbuilder-base += "perl-module-ipc-cmd"
+RDEPENDS:perl-module-extutils-cbuilder-base += "perl-module-strict"
+RDEPENDS:perl-module-extutils-cbuilder-base += "perl-module-text-parsewords"
+RDEPENDS:perl-module-extutils-cbuilder-base += "perl-module-warnings"
+RDEPENDS:perl-module-extutils-cbuilder += "perl-module-file-basename"
+RDEPENDS:perl-module-extutils-cbuilder += "perl-module-file-path"
+RDEPENDS:perl-module-extutils-cbuilder += "perl-module-strict"
+RDEPENDS:perl-module-extutils-cbuilder += "perl-module-warnings"
+RDEPENDS:perl-module-extutils-cbuilder-platform-aix += "perl-module-extutils-cbuilder-platform-unix"
+RDEPENDS:perl-module-extutils-cbuilder-platform-aix += "perl-module-strict"
+RDEPENDS:perl-module-extutils-cbuilder-platform-aix += "perl-module-warnings"
+RDEPENDS:perl-module-extutils-cbuilder-platform-android += "perl-module-config"
+RDEPENDS:perl-module-extutils-cbuilder-platform-android += "perl-module-extutils-cbuilder-platform-unix"
+RDEPENDS:perl-module-extutils-cbuilder-platform-android += "perl-module-strict"
+RDEPENDS:perl-module-extutils-cbuilder-platform-android += "perl-module-warnings"
+RDEPENDS:perl-module-extutils-cbuilder-platform-cygwin += "perl-module-extutils-cbuilder-platform-unix"
+RDEPENDS:perl-module-extutils-cbuilder-platform-cygwin += "perl-module-strict"
+RDEPENDS:perl-module-extutils-cbuilder-platform-cygwin += "perl-module-warnings"
+RDEPENDS:perl-module-extutils-cbuilder-platform-darwin += "perl-module-extutils-cbuilder-platform-unix"
+RDEPENDS:perl-module-extutils-cbuilder-platform-darwin += "perl-module-strict"
+RDEPENDS:perl-module-extutils-cbuilder-platform-darwin += "perl-module-warnings"
+RDEPENDS:perl-module-extutils-cbuilder-platform-dec-osf += "perl-module-extutils-cbuilder-platform-unix"
+RDEPENDS:perl-module-extutils-cbuilder-platform-dec-osf += "perl-module-strict"
+RDEPENDS:perl-module-extutils-cbuilder-platform-dec-osf += "perl-module-warnings"
+RDEPENDS:perl-module-extutils-cbuilder-platform-os2 += "perl-module-extutils-cbuilder-platform-unix"
+RDEPENDS:perl-module-extutils-cbuilder-platform-os2 += "perl-module-strict"
+RDEPENDS:perl-module-extutils-cbuilder-platform-os2 += "perl-module-warnings"
+RDEPENDS:perl-module-extutils-cbuilder-platform-unix += "perl-module-extutils-cbuilder-base"
+RDEPENDS:perl-module-extutils-cbuilder-platform-unix += "perl-module-strict"
+RDEPENDS:perl-module-extutils-cbuilder-platform-unix += "perl-module-warnings"
+RDEPENDS:perl-module-extutils-cbuilder-platform-vms += "perl-module-config"
+RDEPENDS:perl-module-extutils-cbuilder-platform-vms += "perl-module-extutils-cbuilder-base"
+RDEPENDS:perl-module-extutils-cbuilder-platform-vms += "perl-module-strict"
+RDEPENDS:perl-module-extutils-cbuilder-platform-vms += "perl-module-warnings"
+RDEPENDS:perl-module-extutils-cbuilder-platform-windows-bcc += "perl-module-strict"
+RDEPENDS:perl-module-extutils-cbuilder-platform-windows-bcc += "perl-module-warnings"
+RDEPENDS:perl-module-extutils-cbuilder-platform-windows-gcc += "perl-module-strict"
+RDEPENDS:perl-module-extutils-cbuilder-platform-windows-gcc += "perl-module-warnings"
+RDEPENDS:perl-module-extutils-cbuilder-platform-windows-msvc += "perl-module-strict"
+RDEPENDS:perl-module-extutils-cbuilder-platform-windows-msvc += "perl-module-warnings"
+RDEPENDS:perl-module-extutils-cbuilder-platform-windows += "perl-module-extutils-cbuilder-base"
+RDEPENDS:perl-module-extutils-cbuilder-platform-windows += "perl-module-file-basename"
+RDEPENDS:perl-module-extutils-cbuilder-platform-windows += "perl-module-io-file"
+RDEPENDS:perl-module-extutils-cbuilder-platform-windows += "perl-module-strict"
+RDEPENDS:perl-module-extutils-cbuilder-platform-windows += "perl-module-warnings"
+RDEPENDS:perl-module-extutils-command-mm += "perl-module-exporter"
+RDEPENDS:perl-module-extutils-command-mm += "perl-module-extutils-command"
+RDEPENDS:perl-module-extutils-command-mm += "perl-module-extutils-install"
+RDEPENDS:perl-module-extutils-command-mm += "perl-module-getopt-long"
+RDEPENDS:perl-module-extutils-command-mm += "perl-module-strict"
+RDEPENDS:perl-module-extutils-command-mm += "perl-module-test-harness"
+RDEPENDS:perl-module-extutils-command-mm += "perl-module-warnings"
+RDEPENDS:perl-module-extutils-command += "perl-module-exporter"
+RDEPENDS:perl-module-extutils-command += "perl-module-file-copy"
+RDEPENDS:perl-module-extutils-command += "perl-module-file-find"
+RDEPENDS:perl-module-extutils-command += "perl-module-file-path"
+RDEPENDS:perl-module-extutils-command += "perl-module-strict"
+RDEPENDS:perl-module-extutils-command += "perl-module-vars"
+RDEPENDS:perl-module-extutils-constant-base += "perl-module-constant"
+RDEPENDS:perl-module-extutils-constant-base += "perl-module-extutils-constant-utils"
+RDEPENDS:perl-module-extutils-constant-base += "perl-module-strict"
+RDEPENDS:perl-module-extutils-constant-base += "perl-module-text-wrap"
+RDEPENDS:perl-module-extutils-constant-base += "perl-module-vars"
+RDEPENDS:perl-module-extutils-constant += "perl-module-exporter"
+RDEPENDS:perl-module-extutils-constant += "perl-module-extutils-constant-proxysubs"
+RDEPENDS:perl-module-extutils-constant += "perl-module-extutils-constant-utils"
+RDEPENDS:perl-module-extutils-constant += "perl-module-extutils-constant-xs"
+RDEPENDS:perl-module-extutils-constant += "perl-module-filehandle"
+RDEPENDS:perl-module-extutils-constant += "perl-module-strict"
+RDEPENDS:perl-module-extutils-constant += "perl-module-vars"
+RDEPENDS:perl-module-extutils-constant-proxysubs += "perl-module-extutils-constant-utils"
+RDEPENDS:perl-module-extutils-constant-proxysubs += "perl-module-extutils-constant-xs"
+RDEPENDS:perl-module-extutils-constant-proxysubs += "perl-module-strict"
+RDEPENDS:perl-module-extutils-constant-proxysubs += "perl-module-vars"
+RDEPENDS:perl-module-extutils-constant-utils += "perl-module-constant"
+RDEPENDS:perl-module-extutils-constant-utils += "perl-module-posix"
+RDEPENDS:perl-module-extutils-constant-utils += "perl-module-strict"
+RDEPENDS:perl-module-extutils-constant-utils += "perl-module-vars"
+RDEPENDS:perl-module-extutils-constant-xs += "perl-module-data-dumper"
+RDEPENDS:perl-module-extutils-constant-xs += "perl-module-extutils-constant"
+RDEPENDS:perl-module-extutils-constant-xs += "perl-module-extutils-constant-base"
+RDEPENDS:perl-module-extutils-constant-xs += "perl-module-extutils-constant-utils"
+RDEPENDS:perl-module-extutils-constant-xs += "perl-module-strict"
+RDEPENDS:perl-module-extutils-constant-xs += "perl-module-vars"
+RDEPENDS:perl-module-extutils-embed += "perl-module-config"
+RDEPENDS:perl-module-extutils-embed += "perl-module-exporter"
+RDEPENDS:perl-module-extutils-embed += "perl-module-extutils-liblist"
+RDEPENDS:perl-module-extutils-embed += "perl-module-extutils-makemaker"
+RDEPENDS:perl-module-extutils-embed += "perl-module-getopt-std"
+RDEPENDS:perl-module-extutils-embed += "perl-module-strict"
+RDEPENDS:perl-module-extutils-installed += "perl-module-config"
+RDEPENDS:perl-module-extutils-installed += "perl-module-data-dumper"
+RDEPENDS:perl-module-extutils-installed += "perl-module-extutils-makemaker"
+RDEPENDS:perl-module-extutils-installed += "perl-module-extutils-packlist"
+RDEPENDS:perl-module-extutils-installed += "perl-module-file-basename"
+RDEPENDS:perl-module-extutils-installed += "perl-module-file-find"
+RDEPENDS:perl-module-extutils-installed += "perl-module-strict"
+RDEPENDS:perl-module-extutils-installed += "perl-module-vars"
+RDEPENDS:perl-module-extutils-install += "perl-module-autosplit"
+RDEPENDS:perl-module-extutils-install += "perl-module-config"
+RDEPENDS:perl-module-extutils-install += "perl-module-cwd"
+RDEPENDS:perl-module-extutils-install += "perl-module-exporter"
+RDEPENDS:perl-module-extutils-install += "perl-module-extutils-packlist"
+RDEPENDS:perl-module-extutils-install += "perl-module-file-basename"
+RDEPENDS:perl-module-extutils-install += "perl-module-file-compare"
+RDEPENDS:perl-module-extutils-install += "perl-module-file-copy"
+RDEPENDS:perl-module-extutils-install += "perl-module-file-find"
+RDEPENDS:perl-module-extutils-install += "perl-module-file-path"
+RDEPENDS:perl-module-extutils-install += "perl-module-strict"
+RDEPENDS:perl-module-extutils-liblist-kid += "perl-module-cwd"
+RDEPENDS:perl-module-extutils-liblist-kid += "perl-module-extutils-makemaker-config"
+RDEPENDS:perl-module-extutils-liblist-kid += "perl-module-file-basename"
+RDEPENDS:perl-module-extutils-liblist-kid += "perl-module-strict"
+RDEPENDS:perl-module-extutils-liblist-kid += "perl-module-text-parsewords"
+RDEPENDS:perl-module-extutils-liblist-kid += "perl-module-warnings"
+RDEPENDS:perl-module-extutils-liblist += "perl-module-extutils-liblist-kid"
+RDEPENDS:perl-module-extutils-liblist += "perl-module-strict"
+RDEPENDS:perl-module-extutils-makemaker-config += "perl-module-config"
+RDEPENDS:perl-module-extutils-makemaker-config += "perl-module-strict"
+RDEPENDS:perl-module-extutils-makemaker-locale += "perl-module-base"
+RDEPENDS:perl-module-extutils-makemaker-locale += "perl-module-encode"
+RDEPENDS:perl-module-extutils-makemaker-locale += "perl-module-encode-alias"
+RDEPENDS:perl-module-extutils-makemaker-locale += "perl-module-i18n-langinfo"
+RDEPENDS:perl-module-extutils-makemaker-locale += "perl-module-strict"
+RDEPENDS:perl-module-extutils-makemaker += "perl-module-b"
+RDEPENDS:perl-module-extutils-makemaker += "perl-module-cpan"
+RDEPENDS:perl-module-extutils-makemaker += "perl-module-cwd"
+RDEPENDS:perl-module-extutils-makemaker += "perl-module-exporter"
+RDEPENDS:perl-module-extutils-makemaker += "perl-module-extutils-makemaker-config"
+RDEPENDS:perl-module-extutils-makemaker += "perl-module-extutils-makemaker-version"
+RDEPENDS:perl-module-extutils-makemaker += "perl-module-extutils-manifest"
+RDEPENDS:perl-module-extutils-makemaker += "perl-module-extutils-mm"
+RDEPENDS:perl-module-extutils-makemaker += "perl-module-extutils-my"
+RDEPENDS:perl-module-extutils-makemaker += "perl-module-file-path"
+RDEPENDS:perl-module-extutils-makemaker += "perl-module-strict"
+RDEPENDS:perl-module-extutils-makemaker += "perl-module-version"
+RDEPENDS:perl-module-extutils-makemaker-version += "perl-module-strict"
+RDEPENDS:perl-module-extutils-makemaker-version += "perl-module-vars"
+RDEPENDS:perl-module-extutils-manifest += "perl-module-config"
+RDEPENDS:perl-module-extutils-manifest += "perl-module-exporter"
+RDEPENDS:perl-module-extutils-manifest += "perl-module-file-basename"
+RDEPENDS:perl-module-extutils-manifest += "perl-module-file-copy"
+RDEPENDS:perl-module-extutils-manifest += "perl-module-file-find"
+RDEPENDS:perl-module-extutils-manifest += "perl-module-file-path"
+RDEPENDS:perl-module-extutils-manifest += "perl-module-strict"
+RDEPENDS:perl-module-extutils-manifest += "perl-module-warnings"
+RDEPENDS:perl-module-extutils-miniperl += "perl-module-exporter"
+RDEPENDS:perl-module-extutils-miniperl += "perl-module-extutils-embed"
+RDEPENDS:perl-module-extutils-miniperl += "perl-module-strict"
+RDEPENDS:perl-module-extutils-mkbootstrap += "perl-module-config"
+RDEPENDS:perl-module-extutils-mkbootstrap += "perl-module-dynaloader"
+RDEPENDS:perl-module-extutils-mkbootstrap += "perl-module-exporter"
+RDEPENDS:perl-module-extutils-mkbootstrap += "perl-module-strict"
+RDEPENDS:perl-module-extutils-mksymlists += "perl-module-config"
+RDEPENDS:perl-module-extutils-mksymlists += "perl-module-exporter"
+RDEPENDS:perl-module-extutils-mksymlists += "perl-module-strict"
+RDEPENDS:perl-module-extutils-mm-aix += "perl-module-extutils-makemaker-config"
+RDEPENDS:perl-module-extutils-mm-aix += "perl-module-extutils-mm-unix"
+RDEPENDS:perl-module-extutils-mm-aix += "perl-module-strict"
+RDEPENDS:perl-module-extutils-mm-any += "perl-module-autosplit"
+RDEPENDS:perl-module-extutils-mm-any += "perl-module-cpan"
+RDEPENDS:perl-module-extutils-mm-any += "perl-module-data-dumper"
+RDEPENDS:perl-module-extutils-mm-any += "perl-module-extutils-makemaker"
+RDEPENDS:perl-module-extutils-mm-any += "perl-module-extutils-makemaker-config"
+RDEPENDS:perl-module-extutils-mm-any += "perl-module-file-basename"
+RDEPENDS:perl-module-extutils-mm-any += "perl-module-file-find"
+RDEPENDS:perl-module-extutils-mm-any += "perl-module-strict"
+RDEPENDS:perl-module-extutils-mm-any += "perl-module-version"
+RDEPENDS:perl-module-extutils-mm-beos += "perl-module-extutils-makemaker-config"
+RDEPENDS:perl-module-extutils-mm-beos += "perl-module-extutils-mm-any"
+RDEPENDS:perl-module-extutils-mm-beos += "perl-module-extutils-mm-unix"
+RDEPENDS:perl-module-extutils-mm-beos += "perl-module-strict"
+RDEPENDS:perl-module-extutils-mm-cygwin += "perl-module-extutils-makemaker-config"
+RDEPENDS:perl-module-extutils-mm-cygwin += "perl-module-extutils-mm-unix"
+RDEPENDS:perl-module-extutils-mm-cygwin += "perl-module-extutils-mm-win32"
+RDEPENDS:perl-module-extutils-mm-cygwin += "perl-module-strict"
+RDEPENDS:perl-module-extutils-mm-darwin += "perl-module-extutils-mm-unix"
+RDEPENDS:perl-module-extutils-mm-darwin += "perl-module-strict"
+RDEPENDS:perl-module-extutils-mm-dos += "perl-module-extutils-mm-any"
+RDEPENDS:perl-module-extutils-mm-dos += "perl-module-extutils-mm-unix"
+RDEPENDS:perl-module-extutils-mm-dos += "perl-module-strict"
+RDEPENDS:perl-module-extutils-mm-macos += "perl-module-strict"
+RDEPENDS:perl-module-extutils-mm-nw5 += "perl-module-extutils-makemaker"
+RDEPENDS:perl-module-extutils-mm-nw5 += "perl-module-extutils-makemaker-config"
+RDEPENDS:perl-module-extutils-mm-nw5 += "perl-module-extutils-mm-win32"
+RDEPENDS:perl-module-extutils-mm-nw5 += "perl-module-file-basename"
+RDEPENDS:perl-module-extutils-mm-nw5 += "perl-module-strict"
+RDEPENDS:perl-module-extutils-mm-os2 += "perl-module-extutils-makemaker"
+RDEPENDS:perl-module-extutils-mm-os2 += "perl-module-extutils-mm-any"
+RDEPENDS:perl-module-extutils-mm-os2 += "perl-module-extutils-mm-unix"
+RDEPENDS:perl-module-extutils-mm-os2 += "perl-module-strict"
+RDEPENDS:perl-module-extutils-mm += "perl-module-extutils-liblist"
+RDEPENDS:perl-module-extutils-mm += "perl-module-extutils-makemaker"
+RDEPENDS:perl-module-extutils-mm += "perl-module-extutils-makemaker-config"
+RDEPENDS:perl-module-extutils-mm += "perl-module-strict"
+RDEPENDS:perl-module-extutils-mm-qnx += "perl-module-extutils-mm-unix"
+RDEPENDS:perl-module-extutils-mm-qnx += "perl-module-strict"
+RDEPENDS:perl-module-extutils-mm-unix += "perl-module-cwd"
+RDEPENDS:perl-module-extutils-mm-unix += "perl-module-encode"
+RDEPENDS:perl-module-extutils-mm-unix += "perl-module-extutils-liblist"
+RDEPENDS:perl-module-extutils-mm-unix += "perl-module-extutils-makemaker"
+RDEPENDS:perl-module-extutils-mm-unix += "perl-module-extutils-makemaker-config"
+RDEPENDS:perl-module-extutils-mm-unix += "perl-module-extutils-mm-any"
+RDEPENDS:perl-module-extutils-mm-unix += "perl-module-file-basename"
+RDEPENDS:perl-module-extutils-mm-unix += "perl-module-file-find"
+RDEPENDS:perl-module-extutils-mm-unix += "perl-module-strict"
+RDEPENDS:perl-module-extutils-mm-unix += "perl-module-vars"
+RDEPENDS:perl-module-extutils-mm-unix += "perl-module-version"
+RDEPENDS:perl-module-extutils-mm-uwin += "perl-module-extutils-mm-unix"
+RDEPENDS:perl-module-extutils-mm-uwin += "perl-module-strict"
+RDEPENDS:perl-module-extutils-mm-vms += "perl-module-exporter"
+RDEPENDS:perl-module-extutils-mm-vms += "perl-module-extutils-liblist-kid"
+RDEPENDS:perl-module-extutils-mm-vms += "perl-module-extutils-makemaker"
+RDEPENDS:perl-module-extutils-mm-vms += "perl-module-extutils-makemaker-config"
+RDEPENDS:perl-module-extutils-mm-vms += "perl-module-extutils-mm-any"
+RDEPENDS:perl-module-extutils-mm-vms += "perl-module-extutils-mm-unix"
+RDEPENDS:perl-module-extutils-mm-vms += "perl-module-file-basename"
+RDEPENDS:perl-module-extutils-mm-vms += "perl-module-file-find"
+RDEPENDS:perl-module-extutils-mm-vms += "perl-module-strict"
+RDEPENDS:perl-module-extutils-mm-vos += "perl-module-extutils-mm-unix"
+RDEPENDS:perl-module-extutils-mm-vos += "perl-module-strict"
+RDEPENDS:perl-module-extutils-mm-win32 += "perl-module-extutils-makemaker"
+RDEPENDS:perl-module-extutils-mm-win32 += "perl-module-extutils-makemaker-config"
+RDEPENDS:perl-module-extutils-mm-win32 += "perl-module-extutils-mm-any"
+RDEPENDS:perl-module-extutils-mm-win32 += "perl-module-extutils-mm-unix"
+RDEPENDS:perl-module-extutils-mm-win32 += "perl-module-file-basename"
+RDEPENDS:perl-module-extutils-mm-win32 += "perl-module-strict"
+RDEPENDS:perl-module-extutils-mm-win95 += "perl-module-extutils-makemaker-config"
+RDEPENDS:perl-module-extutils-mm-win95 += "perl-module-extutils-mm-win32"
+RDEPENDS:perl-module-extutils-mm-win95 += "perl-module-strict"
+RDEPENDS:perl-module-extutils-my += "perl-module-extutils-mm"
+RDEPENDS:perl-module-extutils-my += "perl-module-strict"
+RDEPENDS:perl-module-extutils-packlist += "perl-module-config"
+RDEPENDS:perl-module-extutils-packlist += "perl-module-cwd"
+RDEPENDS:perl-module-extutils-packlist += "perl-module-strict"
+RDEPENDS:perl-module-extutils-packlist += "perl-module-vars"
+RDEPENDS:perl-module-extutils-parsexs-constants += "perl-module-strict"
+RDEPENDS:perl-module-extutils-parsexs-constants += "perl-module-warnings"
+RDEPENDS:perl-module-extutils-parsexs-countlines += "perl-module-strict"
+RDEPENDS:perl-module-extutils-parsexs-eval += "perl-module-strict"
+RDEPENDS:perl-module-extutils-parsexs-eval += "perl-module-warnings"
+RDEPENDS:perl-module-extutils-parsexs += "perl-module-config"
+RDEPENDS:perl-module-extutils-parsexs += "perl-module-cwd"
+RDEPENDS:perl-module-extutils-parsexs += "perl-module-exporter"
+RDEPENDS:perl-module-extutils-parsexs += "perl-module-extutils-parsexs-constants"
+RDEPENDS:perl-module-extutils-parsexs += "perl-module-extutils-parsexs-countlines"
+RDEPENDS:perl-module-extutils-parsexs += "perl-module-extutils-parsexs-eval"
+RDEPENDS:perl-module-extutils-parsexs += "perl-module-extutils-parsexs-utilities"
+RDEPENDS:perl-module-extutils-parsexs += "perl-module-file-basename"
+RDEPENDS:perl-module-extutils-parsexs += "perl-module-re"
+RDEPENDS:perl-module-extutils-parsexs += "perl-module-strict"
+RDEPENDS:perl-module-extutils-parsexs-utilities += "perl-module-exporter"
+RDEPENDS:perl-module-extutils-parsexs-utilities += "perl-module-extutils-parsexs-constants"
+RDEPENDS:perl-module-extutils-parsexs-utilities += "perl-module-extutils-typemaps"
+RDEPENDS:perl-module-extutils-parsexs-utilities += "perl-module-strict"
+RDEPENDS:perl-module-extutils-parsexs-utilities += "perl-module-warnings"
+RDEPENDS:perl-module-extutils-testlib += "perl-module-cwd"
+RDEPENDS:perl-module-extutils-testlib += "perl-module-lib"
+RDEPENDS:perl-module-extutils-testlib += "perl-module-strict"
+RDEPENDS:perl-module-extutils-testlib += "perl-module-warnings"
+RDEPENDS:perl-module-extutils-typemaps-cmd += "perl-module-exporter"
+RDEPENDS:perl-module-extutils-typemaps-cmd += "perl-module-extutils-typemaps"
+RDEPENDS:perl-module-extutils-typemaps-cmd += "perl-module-strict"
+RDEPENDS:perl-module-extutils-typemaps-cmd += "perl-module-warnings"
+RDEPENDS:perl-module-extutils-typemaps-inputmap += "perl-module-strict"
+RDEPENDS:perl-module-extutils-typemaps-inputmap += "perl-module-warnings"
+RDEPENDS:perl-module-extutils-typemaps-outputmap += "perl-module-re"
+RDEPENDS:perl-module-extutils-typemaps-outputmap += "perl-module-strict"
+RDEPENDS:perl-module-extutils-typemaps-outputmap += "perl-module-warnings"
+RDEPENDS:perl-module-extutils-typemaps += "perl-module-extutils-parsexs"
+RDEPENDS:perl-module-extutils-typemaps += "perl-module-extutils-parsexs-constants"
+RDEPENDS:perl-module-extutils-typemaps += "perl-module-extutils-typemaps-inputmap"
+RDEPENDS:perl-module-extutils-typemaps += "perl-module-extutils-typemaps-outputmap"
+RDEPENDS:perl-module-extutils-typemaps += "perl-module-extutils-typemaps-type"
+RDEPENDS:perl-module-extutils-typemaps += "perl-module-strict"
+RDEPENDS:perl-module-extutils-typemaps += "perl-module-warnings"
+RDEPENDS:perl-module-extutils-typemaps-type += "perl-module-extutils-typemaps"
+RDEPENDS:perl-module-extutils-typemaps-type += "perl-module-strict"
+RDEPENDS:perl-module-extutils-typemaps-type += "perl-module-warnings"
+RDEPENDS:perl-module-fatal += "perl-module-autodie"
+RDEPENDS:perl-module-fatal += "perl-module-autodie-exception-system"
+RDEPENDS:perl-module-fatal += "perl-module-autodie-hints"
+RDEPENDS:perl-module-fatal += "perl-module-autodie-util"
+RDEPENDS:perl-module-fatal += "perl-module-config"
+RDEPENDS:perl-module-fatal += "perl-module-constant"
+RDEPENDS:perl-module-fatal += "perl-module-fcntl"
+RDEPENDS:perl-module-fatal += "perl-module-posix"
+RDEPENDS:perl-module-fatal += "perl-module-strict"
+RDEPENDS:perl-module-fatal += "perl-module-tie-refhash"
+RDEPENDS:perl-module-fatal += "perl-module-warnings"
+RDEPENDS:perl-module-fcntl += "perl-module-exporter"
+RDEPENDS:perl-module-fcntl += "perl-module-strict"
+RDEPENDS:perl-module-fcntl += "perl-module-xsloader"
+RDEPENDS:perl-module-fields += "perl-module-base"
+RDEPENDS:perl-module-fields += "perl-module-hash-util"
+RDEPENDS:perl-module-fields += "perl-module-strict"
+RDEPENDS:perl-module-file-basename += "perl-module-exporter"
+RDEPENDS:perl-module-file-basename += "perl-module-re"
+RDEPENDS:perl-module-file-basename += "perl-module-strict"
+RDEPENDS:perl-module-file-basename += "perl-module-warnings"
+RDEPENDS:perl-module-filecache += "perl-module-parent"
+RDEPENDS:perl-module-filecache += "perl-module-strict"
+RDEPENDS:perl-module-file-compare += "perl-module-exporter"
+RDEPENDS:perl-module-file-compare += "perl-module-strict"
+RDEPENDS:perl-module-file-compare += "perl-module-warnings"
+RDEPENDS:perl-module-file-copy += "perl-module-config"
+RDEPENDS:perl-module-file-copy += "perl-module-exporter"
+RDEPENDS:perl-module-file-copy += "perl-module-file-basename"
+RDEPENDS:perl-module-file-copy += "perl-module-strict"
+RDEPENDS:perl-module-file-copy += "perl-module-warnings"
+RDEPENDS:perl-module-file-dosglob += "perl-module-strict"
+RDEPENDS:perl-module-file-dosglob += "perl-module-text-parsewords"
+RDEPENDS:perl-module-file-dosglob += "perl-module-warnings"
+RDEPENDS:perl-module-file-dosglob += "perl-module-xsloader"
+RDEPENDS:perl-module-file-fetch += "perl-module-constant"
+RDEPENDS:perl-module-file-fetch += "perl-module-cwd"
+RDEPENDS:perl-module-file-fetch += "perl-module-file-basename"
+RDEPENDS:perl-module-file-fetch += "perl-module-file-copy"
+RDEPENDS:perl-module-file-fetch += "perl-module-filehandle"
+RDEPENDS:perl-module-file-fetch += "perl-module-file-path"
+RDEPENDS:perl-module-file-fetch += "perl-module-file-temp"
+RDEPENDS:perl-module-file-fetch += "perl-module-ipc-cmd"
+RDEPENDS:perl-module-file-fetch += "perl-module-locale-maketext-simple"
+RDEPENDS:perl-module-file-fetch += "perl-module-load"
+RDEPENDS:perl-module-file-fetch += "perl-module-params-check"
+RDEPENDS:perl-module-file-fetch += "perl-module-strict"
+RDEPENDS:perl-module-file-fetch += "perl-module-vars"
+RDEPENDS:perl-module-file-find += "perl-module-cwd"
+RDEPENDS:perl-module-file-find += "perl-module-exporter"
+RDEPENDS:perl-module-file-find += "perl-module-file-basename"
+RDEPENDS:perl-module-file-find += "perl-module-strict"
+RDEPENDS:perl-module-file-find += "perl-module-warnings"
+RDEPENDS:perl-module-file-find += "perl-module-warnings-register"
+RDEPENDS:perl-module-file-globmapper += "perl-module-file-glob"
+RDEPENDS:perl-module-file-globmapper += "perl-module-strict"
+RDEPENDS:perl-module-file-globmapper += "perl-module-warnings"
+RDEPENDS:perl-module-file-glob += "perl-module-exporter"
+RDEPENDS:perl-module-file-glob += "perl-module-strict"
+RDEPENDS:perl-module-file-glob += "perl-module-xsloader"
+RDEPENDS:perl-module-filehandle += "perl-module-exporter"
+RDEPENDS:perl-module-filehandle += "perl-module-fcntl"
+RDEPENDS:perl-module-filehandle += "perl-module-io-file"
+RDEPENDS:perl-module-filehandle += "perl-module-strict"
+RDEPENDS:perl-module-file-path += "perl-module-cwd"
+RDEPENDS:perl-module-file-path += "perl-module-exporter"
+RDEPENDS:perl-module-file-path += "perl-module-file-basename"
+RDEPENDS:perl-module-file-path += "perl-module-strict"
+RDEPENDS:perl-module-file-path += "perl-module-vars"
+RDEPENDS:perl-module-file-stat += "perl-module-class-struct"
+RDEPENDS:perl-module-file-stat += "perl-module-constant"
+RDEPENDS:perl-module-file-stat += "perl-module-exporter"
+RDEPENDS:perl-module-file-stat += "perl-module-fcntl"
+RDEPENDS:perl-module-file-stat += "perl-module-overload "
+RDEPENDS:perl-module-file-stat += "perl-module-strict"
+RDEPENDS:perl-module-file-stat += "perl-module-warnings"
+RDEPENDS:perl-module-file-stat += "perl-module-warnings-register"
+RDEPENDS:perl-module-file-temp += "perl-module-constant"
+RDEPENDS:perl-module-file-temp += "perl-module-cwd"
+RDEPENDS:perl-module-file-temp += "perl-module-errno"
+RDEPENDS:perl-module-file-temp += "perl-module-exporter"
+RDEPENDS:perl-module-file-temp += "perl-module-fcntl"
+RDEPENDS:perl-module-file-temp += "perl-module-file-path"
+RDEPENDS:perl-module-file-temp += "perl-module-io-seekable"
+RDEPENDS:perl-module-file-temp += "perl-module-overload"
+RDEPENDS:perl-module-file-temp += "perl-module-parent"
+RDEPENDS:perl-module-file-temp += "perl-module-posix"
+RDEPENDS:perl-module-file-temp += "perl-module-strict"
+RDEPENDS:perl-module-filter-simple += "perl-module-filter-util-call"
+RDEPENDS:perl-module-filter-simple += "perl-module-text-balanced"
+RDEPENDS:perl-module-filter-util-call += "perl-module-exporter"
+RDEPENDS:perl-module-filter-util-call += "perl-module-strict"
+RDEPENDS:perl-module-filter-util-call += "perl-module-warnings"
+RDEPENDS:perl-module-filter-util-call += "perl-module-xsloader"
+RDEPENDS:perl-module-findbin += "perl-module-cwd"
+RDEPENDS:perl-module-findbin += "perl-module-exporter"
+RDEPENDS:perl-module-findbin += "perl-module-file-basename"
+RDEPENDS:perl-module-gdbm-file += "perl-module-exporter"
+RDEPENDS:perl-module-gdbm-file += "perl-module-strict"
+RDEPENDS:perl-module-gdbm-file += "perl-module-tie-hash"
+RDEPENDS:perl-module-gdbm-file += "perl-module-warnings"
+RDEPENDS:perl-module-gdbm-file += "perl-module-xsloader"
+RDEPENDS:perl-module-getopt-long += "perl-module-constant"
+RDEPENDS:perl-module-getopt-long += "perl-module-exporter"
+RDEPENDS:perl-module-getopt-long += "perl-module-overload"
+RDEPENDS:perl-module-getopt-long += "perl-module-pod-usage"
+RDEPENDS:perl-module-getopt-long += "perl-module-strict"
+RDEPENDS:perl-module-getopt-long += "perl-module-text-parsewords"
+RDEPENDS:perl-module-getopt-long += "perl-module-vars"
+RDEPENDS:perl-module-getopt-long += "perl-module-warnings"
+RDEPENDS:perl-module-getopt-std += "perl-module-exporter"
+RDEPENDS:perl-module-hash-util-fieldhash += "perl-module-exporter"
+RDEPENDS:perl-module-hash-util-fieldhash += "perl-module-strict"
+RDEPENDS:perl-module-hash-util-fieldhash += "perl-module-warnings"
+RDEPENDS:perl-module-hash-util-fieldhash += "perl-module-xsloader"
+RDEPENDS:perl-module-hash-util += "perl-module-exporter"
+RDEPENDS:perl-module-hash-util += "perl-module-hash-util-fieldhash"
+RDEPENDS:perl-module-hash-util += "perl-module-strict"
+RDEPENDS:perl-module-hash-util += "perl-module-warnings"
+RDEPENDS:perl-module-hash-util += "perl-module-warnings-register"
+RDEPENDS:perl-module-hash-util += "perl-module-xsloader"
+RDEPENDS:perl-module-i18n-collate += "perl-module-exporter"
+RDEPENDS:perl-module-i18n-collate += "perl-module-overload"
+RDEPENDS:perl-module-i18n-collate += "perl-module-posix"
+RDEPENDS:perl-module-i18n-collate += "perl-module-strict"
+RDEPENDS:perl-module-i18n-collate += "perl-module-warnings-register"
+RDEPENDS:perl-module-i18n-langinfo += "perl-module-exporter"
+RDEPENDS:perl-module-i18n-langinfo += "perl-module-strict"
+RDEPENDS:perl-module-i18n-langinfo += "perl-module-warnings"
+RDEPENDS:perl-module-i18n-langinfo += "perl-module-xsloader"
+RDEPENDS:perl-module-i18n-langtags-detect += "perl-module-i18n-langtags"
+RDEPENDS:perl-module-i18n-langtags-detect += "perl-module-strict"
+RDEPENDS:perl-module-i18n-langtags-list += "perl-module-strict"
+RDEPENDS:perl-module-i18n-langtags += "perl-module-exporter"
+RDEPENDS:perl-module-i18n-langtags += "perl-module-strict"
+RDEPENDS:perl-module-io-compress-adapter-bzip2 += "perl-module-bytes"
+RDEPENDS:perl-module-io-compress-adapter-bzip2 += "perl-module-compress-raw-bzip2"
+RDEPENDS:perl-module-io-compress-adapter-bzip2 += "perl-module-io-compress-base-common"
+RDEPENDS:perl-module-io-compress-adapter-bzip2 += "perl-module-strict"
+RDEPENDS:perl-module-io-compress-adapter-bzip2 += "perl-module-warnings"
+RDEPENDS:perl-module-io-compress-adapter-deflate += "perl-module-bytes"
+RDEPENDS:perl-module-io-compress-adapter-deflate += "perl-module-compress-raw-zlib"
+RDEPENDS:perl-module-io-compress-adapter-deflate += "perl-module-exporter"
+RDEPENDS:perl-module-io-compress-adapter-deflate += "perl-module-io-compress-base-common"
+RDEPENDS:perl-module-io-compress-adapter-deflate += "perl-module-strict"
+RDEPENDS:perl-module-io-compress-adapter-deflate += "perl-module-warnings"
+RDEPENDS:perl-module-io-compress-adapter-identity += "perl-module-bytes"
+RDEPENDS:perl-module-io-compress-adapter-identity += "perl-module-io-compress-base-common"
+RDEPENDS:perl-module-io-compress-adapter-identity += "perl-module-strict"
+RDEPENDS:perl-module-io-compress-adapter-identity += "perl-module-warnings"
+RDEPENDS:perl-module-io-compress-base-common += "perl-module-bytes"
+RDEPENDS:perl-module-io-compress-base-common += "perl-module-constant"
+RDEPENDS:perl-module-io-compress-base-common += "perl-module-encode"
+RDEPENDS:perl-module-io-compress-base-common += "perl-module-exporter"
+RDEPENDS:perl-module-io-compress-base-common += "perl-module-file-globmapper"
+RDEPENDS:perl-module-io-compress-base-common += "perl-module-strict "
+RDEPENDS:perl-module-io-compress-base-common += "perl-module-strict"
+RDEPENDS:perl-module-io-compress-base-common += "perl-module-utf8"
+RDEPENDS:perl-module-io-compress-base-common += "perl-module-warnings"
+RDEPENDS:perl-module-io-compress-base += "perl-module-io-compress-base-common"
+RDEPENDS:perl-module-io-compress-base += "perl-module-io-file"
+RDEPENDS:perl-module-io-compress-base += "perl-module-io-handle "
+RDEPENDS:perl-module-io-compress-base += "perl-module-strict "
+RDEPENDS:perl-module-io-compress-base += "perl-module-warnings"
+RDEPENDS:perl-module-io-compress-bzip2 += "perl-module-bytes"
+RDEPENDS:perl-module-io-compress-bzip2 += "perl-module-exporter "
+RDEPENDS:perl-module-io-compress-bzip2 += "perl-module-io-compress-adapter-bzip2"
+RDEPENDS:perl-module-io-compress-bzip2 += "perl-module-io-compress-base"
+RDEPENDS:perl-module-io-compress-bzip2 += "perl-module-io-compress-base-common"
+RDEPENDS:perl-module-io-compress-bzip2 += "perl-module-strict "
+RDEPENDS:perl-module-io-compress-bzip2 += "perl-module-warnings"
+RDEPENDS:perl-module-io-compress-deflate += "perl-module-bytes"
+RDEPENDS:perl-module-io-compress-deflate += "perl-module-exporter "
+RDEPENDS:perl-module-io-compress-deflate += "perl-module-io-compress-adapter-deflate"
+RDEPENDS:perl-module-io-compress-deflate += "perl-module-io-compress-base-common"
+RDEPENDS:perl-module-io-compress-deflate += "perl-module-io-compress-rawdeflate"
+RDEPENDS:perl-module-io-compress-deflate += "perl-module-io-compress-zlib-constants"
+RDEPENDS:perl-module-io-compress-deflate += "perl-module-strict "
+RDEPENDS:perl-module-io-compress-deflate += "perl-module-warnings"
+RDEPENDS:perl-module-io-compress-gzip-constants += "perl-module-bytes"
+RDEPENDS:perl-module-io-compress-gzip-constants += "perl-module-constant"
+RDEPENDS:perl-module-io-compress-gzip-constants += "perl-module-exporter"
+RDEPENDS:perl-module-io-compress-gzip-constants += "perl-module-strict "
+RDEPENDS:perl-module-io-compress-gzip-constants += "perl-module-warnings"
+RDEPENDS:perl-module-io-compress-gzip += "perl-module-bytes"
+RDEPENDS:perl-module-io-compress-gzip += "perl-module-exporter "
+RDEPENDS:perl-module-io-compress-gzip += "perl-module-io-compress-adapter-deflate"
+RDEPENDS:perl-module-io-compress-gzip += "perl-module-io-compress-base-common"
+RDEPENDS:perl-module-io-compress-gzip += "perl-module-io-compress-gzip-constants"
+RDEPENDS:perl-module-io-compress-gzip += "perl-module-io-compress-rawdeflate"
+RDEPENDS:perl-module-io-compress-gzip += "perl-module-io-compress-zlib-extra"
+RDEPENDS:perl-module-io-compress-gzip += "perl-module-strict "
+RDEPENDS:perl-module-io-compress-gzip += "perl-module-warnings"
+RDEPENDS:perl-module-io-compress-rawdeflate += "perl-module-bytes"
+RDEPENDS:perl-module-io-compress-rawdeflate += "perl-module-compress-raw-zlib"
+RDEPENDS:perl-module-io-compress-rawdeflate += "perl-module-exporter "
+RDEPENDS:perl-module-io-compress-rawdeflate += "perl-module-fcntl"
+RDEPENDS:perl-module-io-compress-rawdeflate += "perl-module-io-compress-adapter-deflate"
+RDEPENDS:perl-module-io-compress-rawdeflate += "perl-module-io-compress-base"
+RDEPENDS:perl-module-io-compress-rawdeflate += "perl-module-io-compress-base-common"
+RDEPENDS:perl-module-io-compress-rawdeflate += "perl-module-strict "
+RDEPENDS:perl-module-io-compress-rawdeflate += "perl-module-warnings"
+RDEPENDS:perl-module-io-compress-zip-constants += "perl-module-constant"
+RDEPENDS:perl-module-io-compress-zip-constants += "perl-module-exporter"
+RDEPENDS:perl-module-io-compress-zip-constants += "perl-module-strict "
+RDEPENDS:perl-module-io-compress-zip-constants += "perl-module-warnings"
+RDEPENDS:perl-module-io-compress-zip += "perl-module-bytes"
+RDEPENDS:perl-module-io-compress-zip += "perl-module-compress-raw-zlib"
+RDEPENDS:perl-module-io-compress-zip += "perl-module-config"
+RDEPENDS:perl-module-io-compress-zip += "perl-module-exporter "
+RDEPENDS:perl-module-io-compress-zip += "perl-module-fcntl"
+RDEPENDS:perl-module-io-compress-zip += "perl-module-io-compress-adapter-deflate"
+RDEPENDS:perl-module-io-compress-zip += "perl-module-io-compress-adapter-identity"
+RDEPENDS:perl-module-io-compress-zip += "perl-module-io-compress-base-common"
+RDEPENDS:perl-module-io-compress-zip += "perl-module-io-compress-bzip2 "
+RDEPENDS:perl-module-io-compress-zip += "perl-module-io-compress-rawdeflate"
+RDEPENDS:perl-module-io-compress-zip += "perl-module-io-compress-zip-constants"
+RDEPENDS:perl-module-io-compress-zip += "perl-module-io-compress-zlib-extra"
+RDEPENDS:perl-module-io-compress-zip += "perl-module-strict "
+RDEPENDS:perl-module-io-compress-zip += "perl-module-warnings"
+RDEPENDS:perl-module-io-compress-zlib-constants += "perl-module-bytes"
+RDEPENDS:perl-module-io-compress-zlib-constants += "perl-module-constant"
+RDEPENDS:perl-module-io-compress-zlib-constants += "perl-module-exporter"
+RDEPENDS:perl-module-io-compress-zlib-constants += "perl-module-strict "
+RDEPENDS:perl-module-io-compress-zlib-constants += "perl-module-warnings"
+RDEPENDS:perl-module-io-compress-zlib-extra += "perl-module-bytes"
+RDEPENDS:perl-module-io-compress-zlib-extra += "perl-module-io-compress-gzip-constants"
+RDEPENDS:perl-module-io-compress-zlib-extra += "perl-module-strict "
+RDEPENDS:perl-module-io-compress-zlib-extra += "perl-module-warnings"
+RDEPENDS:perl-module-io-dir += "perl-module-exporter"
+RDEPENDS:perl-module-io-dir += "perl-module-file-stat"
+RDEPENDS:perl-module-io-dir += "perl-module-io-file"
+RDEPENDS:perl-module-io-dir += "perl-module-strict"
+RDEPENDS:perl-module-io-dir += "perl-module-tie-hash"
+RDEPENDS:perl-module-io-file += "perl-module-exporter"
+RDEPENDS:perl-module-io-file += "perl-module-fcntl"
+RDEPENDS:perl-module-io-file += "perl-module-io-seekable"
+RDEPENDS:perl-module-io-file += "perl-module-selectsaver"
+RDEPENDS:perl-module-io-file += "perl-module-strict"
+RDEPENDS:perl-module-io-handle += "perl-module-exporter"
+RDEPENDS:perl-module-io-handle += "perl-module-io"
+RDEPENDS:perl-module-io-handle += "perl-module-io-file"
+RDEPENDS:perl-module-io-handle += "perl-module-selectsaver"
+RDEPENDS:perl-module-io-handle += "perl-module-strict"
+RDEPENDS:perl-module-io += "perl-module-strict"
+RDEPENDS:perl-module-io += "perl-module-warnings"
+RDEPENDS:perl-module-io += "perl-module-xsloader"
+RDEPENDS:perl-module-io-pipe += "perl-module-fcntl"
+RDEPENDS:perl-module-io-pipe += "perl-module-io-handle"
+RDEPENDS:perl-module-io-pipe += "perl-module-strict"
+RDEPENDS:perl-module-io-poll += "perl-module-exporter"
+RDEPENDS:perl-module-io-poll += "perl-module-io-handle"
+RDEPENDS:perl-module-io-poll += "perl-module-strict"
+RDEPENDS:perl-module-io-seekable += "perl-module-exporter"
+RDEPENDS:perl-module-io-seekable += "perl-module-fcntl"
+RDEPENDS:perl-module-io-seekable += "perl-module-io-handle"
+RDEPENDS:perl-module-io-seekable += "perl-module-strict"
+RDEPENDS:perl-module-io-select += "perl-module-exporter"
+RDEPENDS:perl-module-io-select += "perl-module-strict"
+RDEPENDS:perl-module-io-select += "perl-module-warnings-register"
+RDEPENDS:perl-module-io-socket-inet += "perl-module-errno"
+RDEPENDS:perl-module-io-socket-inet += "perl-module-exporter"
+RDEPENDS:perl-module-io-socket-inet += "perl-module-io-socket"
+RDEPENDS:perl-module-io-socket-inet += "perl-module-socket"
+RDEPENDS:perl-module-io-socket-inet += "perl-module-strict"
+RDEPENDS:perl-module-io-socket-ip += "perl-module-base"
+RDEPENDS:perl-module-io-socket-ip += "perl-module-constant"
+RDEPENDS:perl-module-io-socket-ip += "perl-module-errno"
+RDEPENDS:perl-module-io-socket-ip += "perl-module-posix"
+RDEPENDS:perl-module-io-socket-ip += "perl-module-socket"
+RDEPENDS:perl-module-io-socket-ip += "perl-module-strict"
+RDEPENDS:perl-module-io-socket-ip += "perl-module-warnings"
+RDEPENDS:perl-module-io-socket += "perl-module-errno"
+RDEPENDS:perl-module-io-socket += "perl-module-exporter"
+RDEPENDS:perl-module-io-socket += "perl-module-io-handle"
+RDEPENDS:perl-module-io-socket += "perl-module-io-select"
+RDEPENDS:perl-module-io-socket += "perl-module-io-socket-inet"
+RDEPENDS:perl-module-io-socket += "perl-module-io-socket-unix"
+RDEPENDS:perl-module-io-socket += "perl-module-socket"
+RDEPENDS:perl-module-io-socket += "perl-module-strict"
+RDEPENDS:perl-module-io-socket-unix += "perl-module-io-socket"
+RDEPENDS:perl-module-io-socket-unix += "perl-module-strict"
+RDEPENDS:perl-module-io-uncompress-adapter-bunzip2 += "perl-module-bytes"
+RDEPENDS:perl-module-io-uncompress-adapter-bunzip2 += "perl-module-compress-raw-bzip2"
+RDEPENDS:perl-module-io-uncompress-adapter-bunzip2 += "perl-module-io-compress-base-common"
+RDEPENDS:perl-module-io-uncompress-adapter-bunzip2 += "perl-module-strict"
+RDEPENDS:perl-module-io-uncompress-adapter-bunzip2 += "perl-module-warnings"
+RDEPENDS:perl-module-io-uncompress-adapter-identity += "perl-module-bytes"
+RDEPENDS:perl-module-io-uncompress-adapter-identity += "perl-module-compress-raw-zlib"
+RDEPENDS:perl-module-io-uncompress-adapter-identity += "perl-module-io-compress-base-common"
+RDEPENDS:perl-module-io-uncompress-adapter-identity += "perl-module-io-compress-zip-constants "
+RDEPENDS:perl-module-io-uncompress-adapter-identity += "perl-module-strict"
+RDEPENDS:perl-module-io-uncompress-adapter-identity += "perl-module-warnings"
+RDEPENDS:perl-module-io-uncompress-adapter-inflate += "perl-module-bytes"
+RDEPENDS:perl-module-io-uncompress-adapter-inflate += "perl-module-compress-raw-zlib"
+RDEPENDS:perl-module-io-uncompress-adapter-inflate += "perl-module-io-compress-base-common"
+RDEPENDS:perl-module-io-uncompress-adapter-inflate += "perl-module-strict"
+RDEPENDS:perl-module-io-uncompress-adapter-inflate += "perl-module-warnings"
+RDEPENDS:perl-module-io-uncompress-anyinflate += "perl-module-bytes"
+RDEPENDS:perl-module-io-uncompress-anyinflate += "perl-module-exporter "
+RDEPENDS:perl-module-io-uncompress-anyinflate += "perl-module-io-compress-base-common"
+RDEPENDS:perl-module-io-uncompress-anyinflate += "perl-module-io-uncompress-adapter-inflate"
+RDEPENDS:perl-module-io-uncompress-anyinflate += "perl-module-io-uncompress-base"
+RDEPENDS:perl-module-io-uncompress-anyinflate += "perl-module-io-uncompress-gunzip"
+RDEPENDS:perl-module-io-uncompress-anyinflate += "perl-module-io-uncompress-inflate"
+RDEPENDS:perl-module-io-uncompress-anyinflate += "perl-module-io-uncompress-rawinflate"
+RDEPENDS:perl-module-io-uncompress-anyinflate += "perl-module-io-uncompress-unzip"
+RDEPENDS:perl-module-io-uncompress-anyinflate += "perl-module-strict"
+RDEPENDS:perl-module-io-uncompress-anyinflate += "perl-module-warnings"
+RDEPENDS:perl-module-io-uncompress-anyuncompress += "perl-module-bytes"
+RDEPENDS:perl-module-io-uncompress-anyuncompress += "perl-module-exporter "
+RDEPENDS:perl-module-io-uncompress-anyuncompress += "perl-module-io-compress-base-common"
+RDEPENDS:perl-module-io-uncompress-anyuncompress += "perl-module-io-uncompress-base"
+RDEPENDS:perl-module-io-uncompress-anyuncompress += "perl-module-strict"
+RDEPENDS:perl-module-io-uncompress-anyuncompress += "perl-module-warnings"
+RDEPENDS:perl-module-io-uncompress-base += "perl-module-bytes"
+RDEPENDS:perl-module-io-uncompress-base += "perl-module-constant"
+RDEPENDS:perl-module-io-uncompress-base += "perl-module-io-compress-base-common"
+RDEPENDS:perl-module-io-uncompress-base += "perl-module-io-file "
+RDEPENDS:perl-module-io-uncompress-base += "perl-module-list-util"
+RDEPENDS:perl-module-io-uncompress-base += "perl-module-strict "
+RDEPENDS:perl-module-io-uncompress-base += "perl-module-warnings"
+RDEPENDS:perl-module-io-uncompress-bunzip2 += "perl-module-bytes"
+RDEPENDS:perl-module-io-uncompress-bunzip2 += "perl-module-exporter "
+RDEPENDS:perl-module-io-uncompress-bunzip2 += "perl-module-io-compress-base-common"
+RDEPENDS:perl-module-io-uncompress-bunzip2 += "perl-module-io-uncompress-adapter-bunzip2"
+RDEPENDS:perl-module-io-uncompress-bunzip2 += "perl-module-io-uncompress-base"
+RDEPENDS:perl-module-io-uncompress-bunzip2 += "perl-module-strict "
+RDEPENDS:perl-module-io-uncompress-bunzip2 += "perl-module-warnings"
+RDEPENDS:perl-module-io-uncompress-gunzip += "perl-module-bytes"
+RDEPENDS:perl-module-io-uncompress-gunzip += "perl-module-compress-raw-zlib"
+RDEPENDS:perl-module-io-uncompress-gunzip += "perl-module-exporter "
+RDEPENDS:perl-module-io-uncompress-gunzip += "perl-module-io-compress-base-common"
+RDEPENDS:perl-module-io-uncompress-gunzip += "perl-module-io-compress-gzip-constants"
+RDEPENDS:perl-module-io-uncompress-gunzip += "perl-module-io-compress-zlib-extra"
+RDEPENDS:perl-module-io-uncompress-gunzip += "perl-module-io-uncompress-rawinflate"
+RDEPENDS:perl-module-io-uncompress-gunzip += "perl-module-strict "
+RDEPENDS:perl-module-io-uncompress-gunzip += "perl-module-warnings"
+RDEPENDS:perl-module-io-uncompress-inflate += "perl-module-bytes"
+RDEPENDS:perl-module-io-uncompress-inflate += "perl-module-exporter "
+RDEPENDS:perl-module-io-uncompress-inflate += "perl-module-io-compress-base-common"
+RDEPENDS:perl-module-io-uncompress-inflate += "perl-module-io-compress-zlib-constants"
+RDEPENDS:perl-module-io-uncompress-inflate += "perl-module-io-uncompress-rawinflate"
+RDEPENDS:perl-module-io-uncompress-inflate += "perl-module-strict "
+RDEPENDS:perl-module-io-uncompress-inflate += "perl-module-warnings"
+RDEPENDS:perl-module-io-uncompress-rawinflate += "perl-module-bytes"
+RDEPENDS:perl-module-io-uncompress-rawinflate += "perl-module-compress-raw-zlib"
+RDEPENDS:perl-module-io-uncompress-rawinflate += "perl-module-exporter "
+RDEPENDS:perl-module-io-uncompress-rawinflate += "perl-module-io-compress-base-common"
+RDEPENDS:perl-module-io-uncompress-rawinflate += "perl-module-io-uncompress-adapter-inflate"
+RDEPENDS:perl-module-io-uncompress-rawinflate += "perl-module-io-uncompress-base"
+RDEPENDS:perl-module-io-uncompress-rawinflate += "perl-module-strict "
+RDEPENDS:perl-module-io-uncompress-rawinflate += "perl-module-warnings"
+RDEPENDS:perl-module-io-uncompress-unzip += "perl-module-bytes"
+RDEPENDS:perl-module-io-uncompress-unzip += "perl-module-compress-raw-zlib"
+RDEPENDS:perl-module-io-uncompress-unzip += "perl-module-constant"
+RDEPENDS:perl-module-io-uncompress-unzip += "perl-module-encode"
+RDEPENDS:perl-module-io-uncompress-unzip += "perl-module-exporter "
+RDEPENDS:perl-module-io-uncompress-unzip += "perl-module-fcntl"
+RDEPENDS:perl-module-io-uncompress-unzip += "perl-module-io-compress-base-common"
+RDEPENDS:perl-module-io-uncompress-unzip += "perl-module-io-compress-zip-constants"
+RDEPENDS:perl-module-io-uncompress-unzip += "perl-module-io-compress-zlib-extra"
+RDEPENDS:perl-module-io-uncompress-unzip += "perl-module-io-file"
+RDEPENDS:perl-module-io-uncompress-unzip += "perl-module-io-uncompress-adapter-identity"
+RDEPENDS:perl-module-io-uncompress-unzip += "perl-module-io-uncompress-adapter-inflate"
+RDEPENDS:perl-module-io-uncompress-unzip += "perl-module-io-uncompress-rawinflate"
+RDEPENDS:perl-module-io-uncompress-unzip += "perl-module-posix"
+RDEPENDS:perl-module-io-uncompress-unzip += "perl-module-strict "
+RDEPENDS:perl-module-io-uncompress-unzip += "perl-module-warnings"
+RDEPENDS:perl-module-io-zlib += "perl-module-fcntl"
+RDEPENDS:perl-module-io-zlib += "perl-module-io-handle"
+RDEPENDS:perl-module-io-zlib += "perl-module-strict"
+RDEPENDS:perl-module-io-zlib += "perl-module-tie-handle"
+RDEPENDS:perl-module-io-zlib += "perl-module-vars"
+RDEPENDS:perl-module-ipc-cmd += "perl-module-constant"
+RDEPENDS:perl-module-ipc-cmd += "perl-module-exporter"
+RDEPENDS:perl-module-ipc-cmd += "perl-module-extutils-makemaker"
+RDEPENDS:perl-module-ipc-cmd += "perl-module-filehandle"
+RDEPENDS:perl-module-ipc-cmd += "perl-module-io-handle"
+RDEPENDS:perl-module-ipc-cmd += "perl-module-io-select"
+RDEPENDS:perl-module-ipc-cmd += "perl-module-ipc-open3"
+RDEPENDS:perl-module-ipc-cmd += "perl-module-locale-maketext-simple"
+RDEPENDS:perl-module-ipc-cmd += "perl-module-load"
+RDEPENDS:perl-module-ipc-cmd += "perl-module-params-check"
+RDEPENDS:perl-module-ipc-cmd += "perl-module-posix"
+RDEPENDS:perl-module-ipc-cmd += "perl-module-socket"
+RDEPENDS:perl-module-ipc-cmd += "perl-module-strict"
+RDEPENDS:perl-module-ipc-cmd += "perl-module-text-parsewords"
+RDEPENDS:perl-module-ipc-cmd += "perl-module-time-hires"
+RDEPENDS:perl-module-ipc-cmd += "perl-module-vars"
+RDEPENDS:perl-module-ipc-msg += "perl-module-class-struct"
+RDEPENDS:perl-module-ipc-msg += "perl-module-ipc-sysv"
+RDEPENDS:perl-module-ipc-msg += "perl-module-strict"
+RDEPENDS:perl-module-ipc-msg += "perl-module-vars"
+RDEPENDS:perl-module-ipc-open2 += "perl-module-exporter"
+RDEPENDS:perl-module-ipc-open2 += "perl-module-ipc-open3"
+RDEPENDS:perl-module-ipc-open2 += "perl-module-strict"
+RDEPENDS:perl-module-ipc-open3 += "perl-module-constant"
+RDEPENDS:perl-module-ipc-open3 += "perl-module-exporter"
+RDEPENDS:perl-module-ipc-open3 += "perl-module-fcntl"
+RDEPENDS:perl-module-ipc-open3 += "perl-module-io-pipe"
+RDEPENDS:perl-module-ipc-open3 += "perl-module-posix"
+RDEPENDS:perl-module-ipc-open3 += "perl-module-strict"
+RDEPENDS:perl-module-ipc-semaphore += "perl-module-class-struct"
+RDEPENDS:perl-module-ipc-semaphore += "perl-module-ipc-sysv"
+RDEPENDS:perl-module-ipc-semaphore += "perl-module-strict"
+RDEPENDS:perl-module-ipc-semaphore += "perl-module-vars"
+RDEPENDS:perl-module-ipc-sharedmem += "perl-module-class-struct"
+RDEPENDS:perl-module-ipc-sharedmem += "perl-module-ipc-sysv"
+RDEPENDS:perl-module-ipc-sharedmem += "perl-module-strict"
+RDEPENDS:perl-module-ipc-sharedmem += "perl-module-vars"
+RDEPENDS:perl-module-ipc-sysv += "perl-module-config"
+RDEPENDS:perl-module-ipc-sysv += "perl-module-dynaloader"
+RDEPENDS:perl-module-ipc-sysv += "perl-module-exporter"
+RDEPENDS:perl-module-ipc-sysv += "perl-module-strict"
+RDEPENDS:perl-module-ipc-sysv += "perl-module-vars"
+RDEPENDS:perl-module-json-pp-boolean += "perl-module-overload"
+RDEPENDS:perl-module-json-pp-boolean += "perl-module-strict"
+RDEPENDS:perl-module-json-pp += "perl-module-b"
+RDEPENDS:perl-module-json-pp += "perl-module-bytes"
+RDEPENDS:perl-module-json-pp += "perl-module-constant"
+RDEPENDS:perl-module-json-pp += "perl-module-encode"
+RDEPENDS:perl-module-json-pp += "perl-module-exporter"
+RDEPENDS:perl-module-json-pp += "perl-module-json-pp-boolean"
+RDEPENDS:perl-module-json-pp += "perl-module-math-bigfloat"
+RDEPENDS:perl-module-json-pp += "perl-module-math-bigint"
+RDEPENDS:perl-module-json-pp += "perl-module-overload"
+RDEPENDS:perl-module-json-pp += "perl-module-strict"
+RDEPENDS:perl-module-json-pp += "perl-module-subs"
+RDEPENDS:perl-module-less += "perl-module-strict"
+RDEPENDS:perl-module-less += "perl-module-warnings"
+RDEPENDS:perl-module-lib += "perl-module-config"
+RDEPENDS:perl-module-lib += "perl-module-strict"
+RDEPENDS:perl-module-list-util += "perl-module-exporter"
+RDEPENDS:perl-module-list-util += "perl-module-strict"
+RDEPENDS:perl-module-list-util += "perl-module-warnings"
+RDEPENDS:perl-module-list-util += "perl-module-xsloader"
+RDEPENDS:perl-module-list-util-xs += "perl-module-list-util"
+RDEPENDS:perl-module-list-util-xs += "perl-module-strict"
+RDEPENDS:perl-module-list-util-xs += "perl-module-warnings"
+RDEPENDS:perl-module-loaded += "perl-module-strict"
+RDEPENDS:perl-module-loaded += "perl-module-vars"
+RDEPENDS:perl-module-load += "perl-module-config"
+RDEPENDS:perl-module-load += "perl-module-constant"
+RDEPENDS:perl-module-load += "perl-module-exporter"
+RDEPENDS:perl-module-load += "perl-module-filehandle"
+RDEPENDS:perl-module-load += "perl-module-locale-maketext-simple"
+RDEPENDS:perl-module-load += "perl-module-corelist"
+RDEPENDS:perl-module-load += "perl-module-load"
+RDEPENDS:perl-module-load += "perl-module-params-check"
+RDEPENDS:perl-module-load += "perl-module-strict"
+RDEPENDS:perl-module-load += "perl-module-vars"
+RDEPENDS:perl-module-load += "perl-module-version"
+RDEPENDS:perl-module-load += "perl-module-warnings"
+RDEPENDS:perl-module-locale-maketext-gutsloader += "perl-module-locale-maketext"
+RDEPENDS:perl-module-locale-maketext-guts += "perl-module-locale-maketext"
+RDEPENDS:perl-module-locale-maketext += "perl-module-i18n-langtags"
+RDEPENDS:perl-module-locale-maketext += "perl-module-i18n-langtags-detect"
+RDEPENDS:perl-module-locale-maketext += "perl-module-integer"
+RDEPENDS:perl-module-locale-maketext += "perl-module-strict"
+RDEPENDS:perl-module-locale-maketext-simple += "perl-module-base"
+RDEPENDS:perl-module-locale-maketext-simple += "perl-module-strict"
+RDEPENDS:perl-module-locale += "perl-module-config"
+RDEPENDS:perl-module-math-bigfloat += "perl-module-exporter"
+RDEPENDS:perl-module-math-bigfloat += "perl-module-math-bigint"
+RDEPENDS:perl-module-math-bigfloat += "perl-module-math-complex"
+RDEPENDS:perl-module-math-bigfloat += "perl-module-overload"
+RDEPENDS:perl-module-math-bigfloat += "perl-module-strict"
+RDEPENDS:perl-module-math-bigfloat += "perl-module-warnings"
+RDEPENDS:perl-module-math-bigfloat-trace += "perl-module-exporter"
+RDEPENDS:perl-module-math-bigfloat-trace += "perl-module-math-bigfloat"
+RDEPENDS:perl-module-math-bigfloat-trace += "perl-module-overload"
+RDEPENDS:perl-module-math-bigfloat-trace += "perl-module-strict"
+RDEPENDS:perl-module-math-bigfloat-trace += "perl-module-warnings"
+RDEPENDS:perl-module-math-bigint-calc += "perl-module-constant"
+RDEPENDS:perl-module-math-bigint-calc += "perl-module-integer"
+RDEPENDS:perl-module-math-bigint-calc += "perl-module-math-bigint-lib"
+RDEPENDS:perl-module-math-bigint-calc += "perl-module-strict"
+RDEPENDS:perl-module-math-bigint-calc += "perl-module-warnings"
+RDEPENDS:perl-module-math-bigint-fastcalc += "perl-module-math-bigint-calc"
+RDEPENDS:perl-module-math-bigint-fastcalc += "perl-module-strict"
+RDEPENDS:perl-module-math-bigint-fastcalc += "perl-module-warnings"
+RDEPENDS:perl-module-math-bigint-fastcalc += "perl-module-xsloader"
+RDEPENDS:perl-module-math-bigint-lib += "perl-module-overload"
+RDEPENDS:perl-module-math-bigint-lib += "perl-module-strict"
+RDEPENDS:perl-module-math-bigint-lib += "perl-module-warnings"
+RDEPENDS:perl-module-math-bigint += "perl-module-exporter"
+RDEPENDS:perl-module-math-bigint += "perl-module-math-bigfloat"
+RDEPENDS:perl-module-math-bigint += "perl-module-math-complex"
+RDEPENDS:perl-module-math-bigint += "perl-module-overload"
+RDEPENDS:perl-module-math-bigint += "perl-module-strict"
+RDEPENDS:perl-module-math-bigint += "perl-module-warnings"
+RDEPENDS:perl-module-math-bigint-trace += "perl-module-exporter"
+RDEPENDS:perl-module-math-bigint-trace += "perl-module-math-bigint"
+RDEPENDS:perl-module-math-bigint-trace += "perl-module-overload"
+RDEPENDS:perl-module-math-bigint-trace += "perl-module-strict"
+RDEPENDS:perl-module-math-bigint-trace += "perl-module-warnings"
+RDEPENDS:perl-module-math-bigrat += "perl-module-math-bigfloat"
+RDEPENDS:perl-module-math-bigrat += "perl-module-math-bigint"
+RDEPENDS:perl-module-math-bigrat += "perl-module-overload"
+RDEPENDS:perl-module-math-bigrat += "perl-module-strict"
+RDEPENDS:perl-module-math-bigrat += "perl-module-warnings"
+RDEPENDS:perl-module-math-complex += "perl-module-config"
+RDEPENDS:perl-module-math-complex += "perl-module-exporter"
+RDEPENDS:perl-module-math-complex += "perl-module-overload"
+RDEPENDS:perl-module-math-complex += "perl-module-strict"
+RDEPENDS:perl-module-math-complex += "perl-module-warnings"
+RDEPENDS:perl-module-math-trig += "perl-module-exporter"
+RDEPENDS:perl-module-math-trig += "perl-module-math-complex"
+RDEPENDS:perl-module-math-trig += "perl-module-strict"
+RDEPENDS:perl-module-memoize-anydbm-file += "perl-module-vars"
+RDEPENDS:perl-module-memoize += "perl-module-config"
+RDEPENDS:perl-module-memoize += "perl-module-exporter"
+RDEPENDS:perl-module-memoize += "perl-module-strict"
+RDEPENDS:perl-module-memoize += "perl-module-vars"
+RDEPENDS:perl-module-memoize-sdbm-file += "perl-module-sdbm-file"
+RDEPENDS:perl-module-memoize-storable += "perl-module-storable"
+RDEPENDS:perl-module-mime-base64 += "perl-module-exporter"
+RDEPENDS:perl-module-mime-base64 += "perl-module-strict"
+RDEPENDS:perl-module-mime-base64 += "perl-module-vars"
+RDEPENDS:perl-module-mime-base64 += "perl-module-xsloader"
+RDEPENDS:perl-module-mime-quotedprint += "perl-module-exporter"
+RDEPENDS:perl-module-mime-quotedprint += "perl-module-mime-base64"
+RDEPENDS:perl-module-mime-quotedprint += "perl-module-strict"
+RDEPENDS:perl-module-mime-quotedprint += "perl-module-vars"
+RDEPENDS:perl-module-mro += "perl-module-strict"
+RDEPENDS:perl-module-mro += "perl-module-warnings"
+RDEPENDS:perl-module-mro += "perl-module-xsloader"
+RDEPENDS:perl-module-net-cmd += "perl-module-constant"
+RDEPENDS:perl-module-net-cmd += "perl-module-errno"
+RDEPENDS:perl-module-net-cmd += "perl-module-exporter"
+RDEPENDS:perl-module-net-cmd += "perl-module-strict"
+RDEPENDS:perl-module-net-cmd += "perl-module-warnings"
+RDEPENDS:perl-module-net-config += "perl-module-exporter"
+RDEPENDS:perl-module-net-config += "perl-module-socket"
+RDEPENDS:perl-module-net-config += "perl-module-strict"
+RDEPENDS:perl-module-net-config += "perl-module-warnings"
+RDEPENDS:perl-module-net-domain += "perl-module-exporter"
+RDEPENDS:perl-module-net-domain += "perl-module-net-config"
+RDEPENDS:perl-module-net-domain += "perl-module-posix"
+RDEPENDS:perl-module-net-domain += "perl-module-socket"
+RDEPENDS:perl-module-net-domain += "perl-module-strict"
+RDEPENDS:perl-module-net-domain += "perl-module-warnings"
+RDEPENDS:perl-module-net-ftp-a += "perl-module-net-ftp-dataconn"
+RDEPENDS:perl-module-net-ftp-a += "perl-module-strict"
+RDEPENDS:perl-module-net-ftp-a += "perl-module-warnings"
+RDEPENDS:perl-module-net-ftp-dataconn += "perl-module-errno"
+RDEPENDS:perl-module-net-ftp-dataconn += "perl-module-net-cmd"
+RDEPENDS:perl-module-net-ftp-dataconn += "perl-module-strict"
+RDEPENDS:perl-module-net-ftp-dataconn += "perl-module-warnings"
+RDEPENDS:perl-module-net-ftp-e += "perl-module-net-ftp-i"
+RDEPENDS:perl-module-net-ftp-e += "perl-module-strict"
+RDEPENDS:perl-module-net-ftp-e += "perl-module-warnings"
+RDEPENDS:perl-module-net-ftp-i += "perl-module-net-ftp-dataconn"
+RDEPENDS:perl-module-net-ftp-i += "perl-module-strict"
+RDEPENDS:perl-module-net-ftp-i += "perl-module-warnings"
+RDEPENDS:perl-module-net-ftp-l += "perl-module-net-ftp-i"
+RDEPENDS:perl-module-net-ftp-l += "perl-module-strict"
+RDEPENDS:perl-module-net-ftp-l += "perl-module-warnings"
+RDEPENDS:perl-module-net-ftp += "perl-module-constant"
+RDEPENDS:perl-module-net-ftp += "perl-module-fcntl"
+RDEPENDS:perl-module-net-ftp += "perl-module-file-basename"
+RDEPENDS:perl-module-net-ftp += "perl-module-io-socket"
+RDEPENDS:perl-module-net-ftp += "perl-module-io-socket-ip"
+RDEPENDS:perl-module-net-ftp += "perl-module-net-cmd"
+RDEPENDS:perl-module-net-ftp += "perl-module-net-config"
+RDEPENDS:perl-module-net-ftp += "perl-module-net-ftp-a"
+RDEPENDS:perl-module-net-ftp += "perl-module-net-netrc"
+RDEPENDS:perl-module-net-ftp += "perl-module-socket"
+RDEPENDS:perl-module-net-ftp += "perl-module-strict"
+RDEPENDS:perl-module-net-ftp += "perl-module-time-local"
+RDEPENDS:perl-module-net-ftp += "perl-module-warnings"
+RDEPENDS:perl-module-net-hostent += "perl-module-class-struct"
+RDEPENDS:perl-module-net-hostent += "perl-module-exporter"
+RDEPENDS:perl-module-net-hostent += "perl-module-socket"
+RDEPENDS:perl-module-net-hostent += "perl-module-strict"
+RDEPENDS:perl-module-net-netent += "perl-module-class-struct"
+RDEPENDS:perl-module-net-netent += "perl-module-exporter"
+RDEPENDS:perl-module-net-netent += "perl-module-socket"
+RDEPENDS:perl-module-net-netent += "perl-module-strict"
+RDEPENDS:perl-module-net-netrc += "perl-module-filehandle"
+RDEPENDS:perl-module-net-netrc += "perl-module-strict"
+RDEPENDS:perl-module-net-netrc += "perl-module-warnings"
+RDEPENDS:perl-module-net-nntp += "perl-module-io-socket"
+RDEPENDS:perl-module-net-nntp += "perl-module-io-socket-ip"
+RDEPENDS:perl-module-net-nntp += "perl-module-net-cmd"
+RDEPENDS:perl-module-net-nntp += "perl-module-net-config"
+RDEPENDS:perl-module-net-nntp += "perl-module-strict"
+RDEPENDS:perl-module-net-nntp += "perl-module-time-local"
+RDEPENDS:perl-module-net-nntp += "perl-module-warnings"
+RDEPENDS:perl-module-net-ping += "perl-module-constant"
+RDEPENDS:perl-module-net-ping += "perl-module-exporter"
+RDEPENDS:perl-module-net-ping += "perl-module-fcntl"
+RDEPENDS:perl-module-net-ping += "perl-module-filehandle"
+RDEPENDS:perl-module-net-ping += "perl-module-io-socket-inet"
+RDEPENDS:perl-module-net-ping += "perl-module-posix"
+RDEPENDS:perl-module-net-ping += "perl-module-socket"
+RDEPENDS:perl-module-net-ping += "perl-module-strict"
+RDEPENDS:perl-module-net-ping += "perl-module-time-hires"
+RDEPENDS:perl-module-net-pop3 += "perl-module-io-socket"
+RDEPENDS:perl-module-net-pop3 += "perl-module-io-socket-ip"
+RDEPENDS:perl-module-net-pop3 += "perl-module-mime-base64"
+RDEPENDS:perl-module-net-pop3 += "perl-module-net-cmd"
+RDEPENDS:perl-module-net-pop3 += "perl-module-net-config"
+RDEPENDS:perl-module-net-pop3 += "perl-module-net-netrc"
+RDEPENDS:perl-module-net-pop3 += "perl-module-strict"
+RDEPENDS:perl-module-net-pop3 += "perl-module-warnings"
+RDEPENDS:perl-module-net-protoent += "perl-module-class-struct"
+RDEPENDS:perl-module-net-protoent += "perl-module-exporter"
+RDEPENDS:perl-module-net-protoent += "perl-module-strict"
+RDEPENDS:perl-module-net-servent += "perl-module-class-struct"
+RDEPENDS:perl-module-net-servent += "perl-module-exporter"
+RDEPENDS:perl-module-net-servent += "perl-module-strict"
+RDEPENDS:perl-module-net-smtp += "perl-module-io-socket"
+RDEPENDS:perl-module-net-smtp += "perl-module-io-socket-ip"
+RDEPENDS:perl-module-net-smtp += "perl-module-mime-base64"
+RDEPENDS:perl-module-net-smtp += "perl-module-net-cmd"
+RDEPENDS:perl-module-net-smtp += "perl-module-net-config"
+RDEPENDS:perl-module-net-smtp += "perl-module-socket"
+RDEPENDS:perl-module-net-smtp += "perl-module-strict"
+RDEPENDS:perl-module-net-smtp += "perl-module-warnings"
+RDEPENDS:perl-module-net-time += "perl-module-exporter"
+RDEPENDS:perl-module-net-time += "perl-module-io-select"
+RDEPENDS:perl-module-net-time += "perl-module-io-socket"
+RDEPENDS:perl-module-net-time += "perl-module-net-config"
+RDEPENDS:perl-module-net-time += "perl-module-strict"
+RDEPENDS:perl-module-net-time += "perl-module-warnings"
+RDEPENDS:perl-module-next += "perl-module-overload"
+RDEPENDS:perl-module-next += "perl-module-strict"
+RDEPENDS:perl-module-next += "perl-module-warnings"
+RDEPENDS:perl-module-ok += "perl-module-strict"
+RDEPENDS:perl-module-ok += "perl-module-test-more"
+RDEPENDS:perl-module-opcode += "perl-module-exporter"
+RDEPENDS:perl-module-opcode += "perl-module-strict"
+RDEPENDS:perl-module-opcode += "perl-module-subs"
+RDEPENDS:perl-module-opcode += "perl-module-xsloader"
+RDEPENDS:perl-module-open += "perl-module-encode"
+RDEPENDS:perl-module-open += "perl-module-encoding"
+RDEPENDS:perl-module-open += "perl-module-warnings"
+RDEPENDS:perl-module-o += "perl-module-b"
+RDEPENDS:perl-module-ops += "perl-module-opcode"
+RDEPENDS:perl-module-overloading += "perl-module-overload-numbers"
+RDEPENDS:perl-module-overloading += "perl-module-warnings"
+RDEPENDS:perl-module-overload += "perl-module-mro"
+RDEPENDS:perl-module-overload += "perl-module-warnings-register"
+RDEPENDS:perl-module-params-check += "perl-module-exporter"
+RDEPENDS:perl-module-params-check += "perl-module-locale-maketext-simple"
+RDEPENDS:perl-module-params-check += "perl-module-strict"
+RDEPENDS:perl-module-params-check += "perl-module-vars"
+RDEPENDS:perl-module-parent += "perl-module-strict"
+RDEPENDS:perl-module-perlfaq += "perl-module-strict"
+RDEPENDS:perl-module-perlfaq += "perl-module-warnings"
+RDEPENDS:perl-module-perlio-encoding += "perl-module-strict"
+RDEPENDS:perl-module-perlio-encoding += "perl-module-xsloader"
+RDEPENDS:perl-module-perlio-mmap += "perl-module-strict"
+RDEPENDS:perl-module-perlio-mmap += "perl-module-warnings"
+RDEPENDS:perl-module-perlio-mmap += "perl-module-xsloader"
+RDEPENDS:perl-module-perlio-scalar += "perl-module-xsloader"
+RDEPENDS:perl-module-perlio-via += "perl-module-xsloader"
+RDEPENDS:perl-module-perlio-via-quotedprint += "perl-module-mime-quotedprint"
+RDEPENDS:perl-module-perlio-via-quotedprint += "perl-module-strict"
+RDEPENDS:perl-module-pod-checker += "perl-module-base"
+RDEPENDS:perl-module-pod-checker += "perl-module-exporter"
+RDEPENDS:perl-module-pod-checker += "perl-module-strict"
+RDEPENDS:perl-module-pod-checker += "perl-module-warnings"
+RDEPENDS:perl-module-pod-escapes += "perl-module-exporter"
+RDEPENDS:perl-module-pod-escapes += "perl-module-strict"
+RDEPENDS:perl-module-pod-escapes += "perl-module-vars"
+RDEPENDS:perl-module-pod-escapes += "perl-module-warnings"
+RDEPENDS:perl-module-pod-functions += "perl-module-exporter"
+RDEPENDS:perl-module-pod-functions += "perl-module-strict"
+RDEPENDS:perl-module-pod-man += "perl-module-file-basename"
+RDEPENDS:perl-module-pod-man += "perl-module-pod-simple"
+RDEPENDS:perl-module-pod-man += "perl-module-strict"
+RDEPENDS:perl-module-pod-man += "perl-module-subs"
+RDEPENDS:perl-module-pod-man += "perl-module-vars"
+RDEPENDS:perl-module-pod-man += "perl-module-warnings"
+RDEPENDS:perl-module-pod-parselink += "perl-module-exporter"
+RDEPENDS:perl-module-pod-parselink += "perl-module-strict"
+RDEPENDS:perl-module-pod-parselink += "perl-module-vars"
+RDEPENDS:perl-module-pod-parselink += "perl-module-warnings"
+RDEPENDS:perl-module-pod-perldoc-baseto += "perl-module-config"
+RDEPENDS:perl-module-pod-perldoc-baseto += "perl-module-strict"
+RDEPENDS:perl-module-pod-perldoc-baseto += "perl-module-vars"
+RDEPENDS:perl-module-pod-perldoc-baseto += "perl-module-warnings"
+RDEPENDS:perl-module-pod-perldoc-getoptsoo += "perl-module-strict"
+RDEPENDS:perl-module-pod-perldoc-getoptsoo += "perl-module-vars"
+RDEPENDS:perl-module-pod-perldoc += "perl-module-config"
+RDEPENDS:perl-module-pod-perldoc += "perl-module-encode"
+RDEPENDS:perl-module-pod-perldoc += "perl-module-fcntl"
+RDEPENDS:perl-module-pod-perldoc += "perl-module-file-basename"
+RDEPENDS:perl-module-pod-perldoc += "perl-module-file-temp"
+RDEPENDS:perl-module-pod-perldoc += "perl-module-pod-perldoc-getoptsoo"
+RDEPENDS:perl-module-pod-perldoc += "perl-module-strict"
+RDEPENDS:perl-module-pod-perldoc += "perl-module-text-parsewords"
+RDEPENDS:perl-module-pod-perldoc += "perl-module-vars"
+RDEPENDS:perl-module-pod-perldoc += "perl-module-warnings"
+RDEPENDS:perl-module-pod-perldoc-toansi += "perl-module-parent"
+RDEPENDS:perl-module-pod-perldoc-toansi += "perl-module-pod-text-color"
+RDEPENDS:perl-module-pod-perldoc-toansi += "perl-module-strict"
+RDEPENDS:perl-module-pod-perldoc-toansi += "perl-module-vars"
+RDEPENDS:perl-module-pod-perldoc-toansi += "perl-module-warnings"
+RDEPENDS:perl-module-pod-perldoc-tochecker += "perl-module-pod-checker"
+RDEPENDS:perl-module-pod-perldoc-tochecker += "perl-module-strict"
+RDEPENDS:perl-module-pod-perldoc-tochecker += "perl-module-vars"
+RDEPENDS:perl-module-pod-perldoc-tochecker += "perl-module-warnings"
+RDEPENDS:perl-module-pod-perldoc-toman += "perl-module-encode"
+RDEPENDS:perl-module-pod-perldoc-toman += "perl-module-io-handle"
+RDEPENDS:perl-module-pod-perldoc-toman += "perl-module-io-select"
+RDEPENDS:perl-module-pod-perldoc-toman += "perl-module-ipc-open3"
+RDEPENDS:perl-module-pod-perldoc-toman += "perl-module-parent"
+RDEPENDS:perl-module-pod-perldoc-toman += "perl-module-pod-man"
+RDEPENDS:perl-module-pod-perldoc-toman += "perl-module-pod-perldoc-topod"
+RDEPENDS:perl-module-pod-perldoc-toman += "perl-module-strict"
+RDEPENDS:perl-module-pod-perldoc-toman += "perl-module-vars"
+RDEPENDS:perl-module-pod-perldoc-toman += "perl-module-warnings"
+RDEPENDS:perl-module-pod-perldoc-tonroff += "perl-module-parent"
+RDEPENDS:perl-module-pod-perldoc-tonroff += "perl-module-pod-man"
+RDEPENDS:perl-module-pod-perldoc-tonroff += "perl-module-strict"
+RDEPENDS:perl-module-pod-perldoc-tonroff += "perl-module-vars"
+RDEPENDS:perl-module-pod-perldoc-tonroff += "perl-module-warnings"
+RDEPENDS:perl-module-pod-perldoc-topod += "perl-module-parent"
+RDEPENDS:perl-module-pod-perldoc-topod += "perl-module-strict"
+RDEPENDS:perl-module-pod-perldoc-topod += "perl-module-vars"
+RDEPENDS:perl-module-pod-perldoc-topod += "perl-module-warnings"
+RDEPENDS:perl-module-pod-perldoc-tortf += "perl-module-parent"
+RDEPENDS:perl-module-pod-perldoc-tortf += "perl-module-strict"
+RDEPENDS:perl-module-pod-perldoc-tortf += "perl-module-vars"
+RDEPENDS:perl-module-pod-perldoc-tortf += "perl-module-warnings"
+RDEPENDS:perl-module-pod-perldoc-toterm += "perl-module-parent"
+RDEPENDS:perl-module-pod-perldoc-toterm += "perl-module-pod-text-termcap"
+RDEPENDS:perl-module-pod-perldoc-toterm += "perl-module-strict"
+RDEPENDS:perl-module-pod-perldoc-toterm += "perl-module-vars"
+RDEPENDS:perl-module-pod-perldoc-toterm += "perl-module-warnings"
+RDEPENDS:perl-module-pod-perldoc-totext += "perl-module-parent"
+RDEPENDS:perl-module-pod-perldoc-totext += "perl-module-pod-text"
+RDEPENDS:perl-module-pod-perldoc-totext += "perl-module-strict"
+RDEPENDS:perl-module-pod-perldoc-totext += "perl-module-vars"
+RDEPENDS:perl-module-pod-perldoc-totext += "perl-module-warnings"
+RDEPENDS:perl-module-pod-perldoc-toxml += "perl-module-parent"
+RDEPENDS:perl-module-pod-perldoc-toxml += "perl-module-strict"
+RDEPENDS:perl-module-pod-perldoc-toxml += "perl-module-vars"
+RDEPENDS:perl-module-pod-perldoc-toxml += "perl-module-warnings"
+RDEPENDS:perl-module-pod-simple-blackbox += "perl-module-if"
+RDEPENDS:perl-module-pod-simple-blackbox += "perl-module-integer"
+RDEPENDS:perl-module-pod-simple-blackbox += "perl-module-pod-simple"
+RDEPENDS:perl-module-pod-simple-blackbox += "perl-module-pod-simple-transcode"
+RDEPENDS:perl-module-pod-simple-blackbox += "perl-module-strict"
+RDEPENDS:perl-module-pod-simple-blackbox += "perl-module-vars"
+RDEPENDS:perl-module-pod-simple-checker += "perl-module-pod-simple"
+RDEPENDS:perl-module-pod-simple-checker += "perl-module-pod-simple-methody"
+RDEPENDS:perl-module-pod-simple-checker += "perl-module-strict"
+RDEPENDS:perl-module-pod-simple-checker += "perl-module-text-wrap"
+RDEPENDS:perl-module-pod-simple-checker += "perl-module-vars"
+RDEPENDS:perl-module-pod-simple-debug += "perl-module-pod-simple"
+RDEPENDS:perl-module-pod-simple-debug += "perl-module-strict"
+RDEPENDS:perl-module-pod-simple-debug += "perl-module-vars"
+RDEPENDS:perl-module-pod-simple-dumpastext += "perl-module-pod-simple"
+RDEPENDS:perl-module-pod-simple-dumpastext += "perl-module-strict"
+RDEPENDS:perl-module-pod-simple-dumpasxml += "perl-module-pod-simple"
+RDEPENDS:perl-module-pod-simple-dumpasxml += "perl-module-strict"
+RDEPENDS:perl-module-pod-simple-dumpasxml += "perl-module-text-wrap"
+RDEPENDS:perl-module-pod-simple-justpod += "perl-module-pod-simple-methody"
+RDEPENDS:perl-module-pod-simple-justpod += "perl-module-strict"
+RDEPENDS:perl-module-pod-simple-justpod += "perl-module-warnings"
+RDEPENDS:perl-module-pod-simple-linksection += "perl-module-overload"
+RDEPENDS:perl-module-pod-simple-linksection += "perl-module-pod-simple-blackbox"
+RDEPENDS:perl-module-pod-simple-linksection += "perl-module-strict"
+RDEPENDS:perl-module-pod-simple-linksection += "perl-module-vars"
+RDEPENDS:perl-module-pod-simple-methody += "perl-module-pod-simple"
+RDEPENDS:perl-module-pod-simple-methody += "perl-module-strict"
+RDEPENDS:perl-module-pod-simple-methody += "perl-module-vars"
+RDEPENDS:perl-module-pod-simple += "perl-module-integer"
+RDEPENDS:perl-module-pod-simple += "perl-module-pod-escapes"
+RDEPENDS:perl-module-pod-simple += "perl-module-pod-simple-blackbox"
+RDEPENDS:perl-module-pod-simple += "perl-module-pod-simple-linksection"
+RDEPENDS:perl-module-pod-simple += "perl-module-pod-simple-tiedoutfh"
+RDEPENDS:perl-module-pod-simple += "perl-module-strict"
+RDEPENDS:perl-module-pod-simple += "perl-module-vars"
+RDEPENDS:perl-module-pod-simple-progress += "perl-module-strict"
+RDEPENDS:perl-module-pod-simple-pullparserendtoken += "perl-module-pod-simple-pullparsertoken"
+RDEPENDS:perl-module-pod-simple-pullparserendtoken += "perl-module-strict"
+RDEPENDS:perl-module-pod-simple-pullparserendtoken += "perl-module-vars"
+RDEPENDS:perl-module-pod-simple-pullparser += "perl-module-pod-simple"
+RDEPENDS:perl-module-pod-simple-pullparser += "perl-module-pod-simple-pullparserendtoken"
+RDEPENDS:perl-module-pod-simple-pullparser += "perl-module-pod-simple-pullparserstarttoken"
+RDEPENDS:perl-module-pod-simple-pullparser += "perl-module-pod-simple-pullparsertexttoken"
+RDEPENDS:perl-module-pod-simple-pullparser += "perl-module-strict"
+RDEPENDS:perl-module-pod-simple-pullparserstarttoken += "perl-module-pod-simple-pullparsertoken"
+RDEPENDS:perl-module-pod-simple-pullparserstarttoken += "perl-module-strict"
+RDEPENDS:perl-module-pod-simple-pullparserstarttoken += "perl-module-vars"
+RDEPENDS:perl-module-pod-simple-pullparsertexttoken += "perl-module-pod-simple-pullparsertoken"
+RDEPENDS:perl-module-pod-simple-pullparsertexttoken += "perl-module-strict"
+RDEPENDS:perl-module-pod-simple-pullparsertexttoken += "perl-module-vars"
+RDEPENDS:perl-module-pod-simple-pullparsertoken += "perl-module-strict"
+RDEPENDS:perl-module-pod-simple-rtf += "perl-module-if"
+RDEPENDS:perl-module-pod-simple-rtf += "perl-module-integer"
+RDEPENDS:perl-module-pod-simple-rtf += "perl-module-pod-simple-pullparser"
+RDEPENDS:perl-module-pod-simple-rtf += "perl-module-strict"
+RDEPENDS:perl-module-pod-simple-rtf += "perl-module-vars"
+RDEPENDS:perl-module-pod-simple-search += "perl-module-config"
+RDEPENDS:perl-module-pod-simple-search += "perl-module-cwd"
+RDEPENDS:perl-module-pod-simple-search += "perl-module-file-basename"
+RDEPENDS:perl-module-pod-simple-search += "perl-module-strict"
+RDEPENDS:perl-module-pod-simple-search += "perl-module-vars"
+RDEPENDS:perl-module-pod-simple-simpletree += "perl-module-pod-simple"
+RDEPENDS:perl-module-pod-simple-simpletree += "perl-module-strict"
+RDEPENDS:perl-module-pod-simple-simpletree += "perl-module-vars"
+RDEPENDS:perl-module-pod-simple-textcontent += "perl-module-pod-simple"
+RDEPENDS:perl-module-pod-simple-textcontent += "perl-module-strict"
+RDEPENDS:perl-module-pod-simple-textcontent += "perl-module-vars"
+RDEPENDS:perl-module-pod-simple-text += "perl-module-pod-simple"
+RDEPENDS:perl-module-pod-simple-text += "perl-module-pod-simple-methody"
+RDEPENDS:perl-module-pod-simple-text += "perl-module-strict"
+RDEPENDS:perl-module-pod-simple-text += "perl-module-text-wrap"
+RDEPENDS:perl-module-pod-simple-text += "perl-module-vars"
+RDEPENDS:perl-module-pod-simple-tiedoutfh += "perl-module-strict"
+RDEPENDS:perl-module-pod-simple-tiedoutfh += "perl-module-vars"
+RDEPENDS:perl-module-pod-simple-transcodedumb += "perl-module-strict"
+RDEPENDS:perl-module-pod-simple-transcodedumb += "perl-module-vars"
+RDEPENDS:perl-module-pod-simple-transcode += "perl-module-strict"
+RDEPENDS:perl-module-pod-simple-transcode += "perl-module-vars"
+RDEPENDS:perl-module-pod-simple-transcodesmart += "perl-module-encode"
+RDEPENDS:perl-module-pod-simple-transcodesmart += "perl-module-pod-simple"
+RDEPENDS:perl-module-pod-simple-transcodesmart += "perl-module-strict"
+RDEPENDS:perl-module-pod-simple-transcodesmart += "perl-module-vars"
+RDEPENDS:perl-module-pod-simple-xmloutstream += "perl-module-pod-simple"
+RDEPENDS:perl-module-pod-simple-xmloutstream += "perl-module-strict"
+RDEPENDS:perl-module-pod-simple-xmloutstream += "perl-module-vars"
+RDEPENDS:perl-module-pod-text-color += "perl-module-pod-text"
+RDEPENDS:perl-module-pod-text-color += "perl-module-strict"
+RDEPENDS:perl-module-pod-text-color += "perl-module-term-ansicolor"
+RDEPENDS:perl-module-pod-text-color += "perl-module-vars"
+RDEPENDS:perl-module-pod-text-color += "perl-module-warnings"
+RDEPENDS:perl-module-pod-text-overstrike += "perl-module-pod-text"
+RDEPENDS:perl-module-pod-text-overstrike += "perl-module-strict"
+RDEPENDS:perl-module-pod-text-overstrike += "perl-module-vars"
+RDEPENDS:perl-module-pod-text-overstrike += "perl-module-warnings"
+RDEPENDS:perl-module-pod-text += "perl-module-encode"
+RDEPENDS:perl-module-pod-text += "perl-module-exporter"
+RDEPENDS:perl-module-pod-text += "perl-module-pod-simple"
+RDEPENDS:perl-module-pod-text += "perl-module-strict"
+RDEPENDS:perl-module-pod-text += "perl-module-vars"
+RDEPENDS:perl-module-pod-text += "perl-module-warnings"
+RDEPENDS:perl-module-pod-text-termcap += "perl-module-pod-text"
+RDEPENDS:perl-module-pod-text-termcap += "perl-module-posix"
+RDEPENDS:perl-module-pod-text-termcap += "perl-module-strict"
+RDEPENDS:perl-module-pod-text-termcap += "perl-module-term-cap"
+RDEPENDS:perl-module-pod-text-termcap += "perl-module-vars"
+RDEPENDS:perl-module-pod-text-termcap += "perl-module-warnings"
+RDEPENDS:perl-module-pod-usage += "perl-module-config"
+RDEPENDS:perl-module-pod-usage += "perl-module-exporter"
+RDEPENDS:perl-module-pod-usage += "perl-module-strict"
+RDEPENDS:perl-module-pod-usage += "perl-module-vars"
+RDEPENDS:perl-module-posix += "perl-module-exporter"
+RDEPENDS:perl-module-posix += "perl-module-fcntl"
+RDEPENDS:perl-module-posix += "perl-module-strict"
+RDEPENDS:perl-module-posix += "perl-module-tie-hash"
+RDEPENDS:perl-module-posix += "perl-module-warnings"
+RDEPENDS:perl-module-posix += "perl-module-xsloader"
+RDEPENDS:perl-module-re += "perl-module-exporter"
+RDEPENDS:perl-module-re += "perl-module-strict"
+RDEPENDS:perl-module-re += "perl-module-term-cap"
+RDEPENDS:perl-module-re += "perl-module-warnings"
+RDEPENDS:perl-module-re += "perl-module-xsloader"
+RDEPENDS:perl-module-safe += "perl-module-b"
+RDEPENDS:perl-module-safe += "perl-module-opcode"
+RDEPENDS:perl-module-safe += "perl-module-strict"
+RDEPENDS:perl-module-safe += "perl-module-utf8"
+RDEPENDS:perl-module-sdbm-file += "perl-module-exporter"
+RDEPENDS:perl-module-sdbm-file += "perl-module-strict"
+RDEPENDS:perl-module-sdbm-file += "perl-module-tie-hash"
+RDEPENDS:perl-module-sdbm-file += "perl-module-warnings"
+RDEPENDS:perl-module-sdbm-file += "perl-module-xsloader"
+RDEPENDS:perl-module-search-dict += "perl-module-exporter"
+RDEPENDS:perl-module-search-dict += "perl-module-feature"
+RDEPENDS:perl-module-search-dict += "perl-module-strict"
+RDEPENDS:perl-module-selfloader += "perl-module-exporter"
+RDEPENDS:perl-module-selfloader += "perl-module-io-handle"
+RDEPENDS:perl-module-selfloader += "perl-module-strict"
+RDEPENDS:perl-module-socket += "perl-module-exporter"
+RDEPENDS:perl-module-socket += "perl-module-strict"
+RDEPENDS:perl-module-socket += "perl-module-warnings-register"
+RDEPENDS:perl-module-socket += "perl-module-xsloader"
+RDEPENDS:perl-module-sort += "perl-module-strict"
+RDEPENDS:perl-module-storable += "perl-module-exporter"
+RDEPENDS:perl-module-storable += "perl-module-io-file"
+RDEPENDS:perl-module-sub-util += "perl-module-exporter"
+RDEPENDS:perl-module-sub-util += "perl-module-list-util"
+RDEPENDS:perl-module-sub-util += "perl-module-strict"
+RDEPENDS:perl-module-sub-util += "perl-module-warnings"
+RDEPENDS:perl-module-sys-hostname += "perl-module-exporter"
+RDEPENDS:perl-module-sys-hostname += "perl-module-posix"
+RDEPENDS:perl-module-sys-hostname += "perl-module-strict"
+RDEPENDS:perl-module-sys-hostname += "perl-module-warnings"
+RDEPENDS:perl-module-sys-hostname += "perl-module-xsloader"
+RDEPENDS:perl-module-sys-syslog += "perl-module-config"
+RDEPENDS:perl-module-sys-syslog += "perl-module-constant"
+RDEPENDS:perl-module-sys-syslog += "perl-module-dynaloader"
+RDEPENDS:perl-module-sys-syslog += "perl-module-exporter"
+RDEPENDS:perl-module-sys-syslog += "perl-module-fcntl"
+RDEPENDS:perl-module-sys-syslog += "perl-module-file-basename"
+RDEPENDS:perl-module-sys-syslog += "perl-module-posix"
+RDEPENDS:perl-module-sys-syslog += "perl-module-socket"
+RDEPENDS:perl-module-sys-syslog += "perl-module-strict"
+RDEPENDS:perl-module-sys-syslog += "perl-module-sys-hostname"
+RDEPENDS:perl-module-sys-syslog += "perl-module-vars"
+RDEPENDS:perl-module-sys-syslog += "perl-module-warnings"
+RDEPENDS:perl-module-sys-syslog += "perl-module-warnings-register"
+RDEPENDS:perl-module-sys-syslog += "perl-module-xsloader"
+RDEPENDS:perl-module-tap-base += "perl-module-base"
+RDEPENDS:perl-module-tap-base += "perl-module-constant"
+RDEPENDS:perl-module-tap-base += "perl-module-strict"
+RDEPENDS:perl-module-tap-base += "perl-module-warnings"
+RDEPENDS:perl-module-tap-formatter-base += "perl-module-base"
+RDEPENDS:perl-module-tap-formatter-base += "perl-module-posix"
+RDEPENDS:perl-module-tap-formatter-base += "perl-module-strict"
+RDEPENDS:perl-module-tap-formatter-base += "perl-module-tap-formatter-color"
+RDEPENDS:perl-module-tap-formatter-base += "perl-module-warnings"
+RDEPENDS:perl-module-tap-formatter-color += "perl-module-base"
+RDEPENDS:perl-module-tap-formatter-color += "perl-module-constant"
+RDEPENDS:perl-module-tap-formatter-color += "perl-module-strict"
+RDEPENDS:perl-module-tap-formatter-color += "perl-module-warnings"
+RDEPENDS:perl-module-tap-formatter-console-parallelsession += "perl-module-base"
+RDEPENDS:perl-module-tap-formatter-console-parallelsession += "perl-module-constant"
+RDEPENDS:perl-module-tap-formatter-console-parallelsession += "perl-module-file-path"
+RDEPENDS:perl-module-tap-formatter-console-parallelsession += "perl-module-strict"
+RDEPENDS:perl-module-tap-formatter-console-parallelsession += "perl-module-warnings"
+RDEPENDS:perl-module-tap-formatter-console += "perl-module-base"
+RDEPENDS:perl-module-tap-formatter-console += "perl-module-posix"
+RDEPENDS:perl-module-tap-formatter-console += "perl-module-strict"
+RDEPENDS:perl-module-tap-formatter-console += "perl-module-warnings"
+RDEPENDS:perl-module-tap-formatter-console-session += "perl-module-base"
+RDEPENDS:perl-module-tap-formatter-console-session += "perl-module-strict"
+RDEPENDS:perl-module-tap-formatter-console-session += "perl-module-warnings"
+RDEPENDS:perl-module-tap-formatter-file += "perl-module-base"
+RDEPENDS:perl-module-tap-formatter-file += "perl-module-posix"
+RDEPENDS:perl-module-tap-formatter-file += "perl-module-strict"
+RDEPENDS:perl-module-tap-formatter-file += "perl-module-tap-formatter-file-session"
+RDEPENDS:perl-module-tap-formatter-file += "perl-module-warnings"
+RDEPENDS:perl-module-tap-formatter-file-session += "perl-module-base"
+RDEPENDS:perl-module-tap-formatter-file-session += "perl-module-strict"
+RDEPENDS:perl-module-tap-formatter-file-session += "perl-module-warnings"
+RDEPENDS:perl-module-tap-formatter-session += "perl-module-base"
+RDEPENDS:perl-module-tap-formatter-session += "perl-module-strict"
+RDEPENDS:perl-module-tap-formatter-session += "perl-module-warnings"
+RDEPENDS:perl-module-tap-harness-env += "perl-module-constant"
+RDEPENDS:perl-module-tap-harness-env += "perl-module-strict"
+RDEPENDS:perl-module-tap-harness-env += "perl-module-tap-object"
+RDEPENDS:perl-module-tap-harness-env += "perl-module-text-parsewords"
+RDEPENDS:perl-module-tap-harness-env += "perl-module-warnings"
+RDEPENDS:perl-module-tap-harness += "perl-module-base"
+RDEPENDS:perl-module-tap-harness += "perl-module-file-path"
+RDEPENDS:perl-module-tap-harness += "perl-module-io-handle"
+RDEPENDS:perl-module-tap-harness += "perl-module-strict"
+RDEPENDS:perl-module-tap-harness += "perl-module-warnings"
+RDEPENDS:perl-module-tap-object += "perl-module-strict"
+RDEPENDS:perl-module-tap-object += "perl-module-warnings"
+RDEPENDS:perl-module-tap-parser-aggregator += "perl-module-base"
+RDEPENDS:perl-module-tap-parser-aggregator += "perl-module-benchmark"
+RDEPENDS:perl-module-tap-parser-aggregator += "perl-module-strict"
+RDEPENDS:perl-module-tap-parser-aggregator += "perl-module-warnings"
+RDEPENDS:perl-module-tap-parser-grammar += "perl-module-base"
+RDEPENDS:perl-module-tap-parser-grammar += "perl-module-strict"
+RDEPENDS:perl-module-tap-parser-grammar += "perl-module-tap-parser-resultfactory"
+RDEPENDS:perl-module-tap-parser-grammar += "perl-module-tap-parser-yamlish-reader"
+RDEPENDS:perl-module-tap-parser-grammar += "perl-module-warnings"
+RDEPENDS:perl-module-tap-parser-iterator-array += "perl-module-base"
+RDEPENDS:perl-module-tap-parser-iterator-array += "perl-module-strict"
+RDEPENDS:perl-module-tap-parser-iterator-array += "perl-module-warnings"
+RDEPENDS:perl-module-tap-parser-iteratorfactory += "perl-module-base"
+RDEPENDS:perl-module-tap-parser-iteratorfactory += "perl-module-constant"
+RDEPENDS:perl-module-tap-parser-iteratorfactory += "perl-module-file-basename"
+RDEPENDS:perl-module-tap-parser-iteratorfactory += "perl-module-strict"
+RDEPENDS:perl-module-tap-parser-iteratorfactory += "perl-module-warnings"
+RDEPENDS:perl-module-tap-parser-iterator += "perl-module-base"
+RDEPENDS:perl-module-tap-parser-iterator += "perl-module-strict"
+RDEPENDS:perl-module-tap-parser-iterator += "perl-module-warnings"
+RDEPENDS:perl-module-tap-parser-iterator-process += "perl-module-base"
+RDEPENDS:perl-module-tap-parser-iterator-process += "perl-module-config"
+RDEPENDS:perl-module-tap-parser-iterator-process += "perl-module-io-handle"
+RDEPENDS:perl-module-tap-parser-iterator-process += "perl-module-strict"
+RDEPENDS:perl-module-tap-parser-iterator-process += "perl-module-warnings"
+RDEPENDS:perl-module-tap-parser-iterator-stream += "perl-module-base"
+RDEPENDS:perl-module-tap-parser-iterator-stream += "perl-module-strict"
+RDEPENDS:perl-module-tap-parser-iterator-stream += "perl-module-warnings"
+RDEPENDS:perl-module-tap-parser-multiplexer += "perl-module-base"
+RDEPENDS:perl-module-tap-parser-multiplexer += "perl-module-constant"
+RDEPENDS:perl-module-tap-parser-multiplexer += "perl-module-io-select"
+RDEPENDS:perl-module-tap-parser-multiplexer += "perl-module-strict"
+RDEPENDS:perl-module-tap-parser-multiplexer += "perl-module-warnings"
+RDEPENDS:perl-module-tap-parser += "perl-module-base"
+RDEPENDS:perl-module-tap-parser += "perl-module-strict"
+RDEPENDS:perl-module-tap-parser += "perl-module-tap-parser-grammar"
+RDEPENDS:perl-module-tap-parser += "perl-module-tap-parser-iterator"
+RDEPENDS:perl-module-tap-parser += "perl-module-tap-parser-iteratorfactory"
+RDEPENDS:perl-module-tap-parser += "perl-module-tap-parser-result"
+RDEPENDS:perl-module-tap-parser += "perl-module-tap-parser-resultfactory"
+RDEPENDS:perl-module-tap-parser += "perl-module-tap-parser-source"
+RDEPENDS:perl-module-tap-parser += "perl-module-tap-parser-sourcehandler-executable"
+RDEPENDS:perl-module-tap-parser += "perl-module-tap-parser-sourcehandler-file"
+RDEPENDS:perl-module-tap-parser += "perl-module-tap-parser-sourcehandler-handle"
+RDEPENDS:perl-module-tap-parser += "perl-module-tap-parser-sourcehandler-perl"
+RDEPENDS:perl-module-tap-parser += "perl-module-tap-parser-sourcehandler-rawtap"
+RDEPENDS:perl-module-tap-parser += "perl-module-warnings"
+RDEPENDS:perl-module-tap-parser-result-bailout += "perl-module-base"
+RDEPENDS:perl-module-tap-parser-result-bailout += "perl-module-strict"
+RDEPENDS:perl-module-tap-parser-result-bailout += "perl-module-warnings"
+RDEPENDS:perl-module-tap-parser-result-comment += "perl-module-base"
+RDEPENDS:perl-module-tap-parser-result-comment += "perl-module-strict"
+RDEPENDS:perl-module-tap-parser-result-comment += "perl-module-warnings"
+RDEPENDS:perl-module-tap-parser-resultfactory += "perl-module-base"
+RDEPENDS:perl-module-tap-parser-resultfactory += "perl-module-strict"
+RDEPENDS:perl-module-tap-parser-resultfactory += "perl-module-tap-parser-result-bailout"
+RDEPENDS:perl-module-tap-parser-resultfactory += "perl-module-tap-parser-result-comment"
+RDEPENDS:perl-module-tap-parser-resultfactory += "perl-module-tap-parser-result-plan"
+RDEPENDS:perl-module-tap-parser-resultfactory += "perl-module-tap-parser-result-pragma"
+RDEPENDS:perl-module-tap-parser-resultfactory += "perl-module-tap-parser-result-test"
+RDEPENDS:perl-module-tap-parser-resultfactory += "perl-module-tap-parser-result-unknown"
+RDEPENDS:perl-module-tap-parser-resultfactory += "perl-module-tap-parser-result-version"
+RDEPENDS:perl-module-tap-parser-resultfactory += "perl-module-tap-parser-result-yaml"
+RDEPENDS:perl-module-tap-parser-resultfactory += "perl-module-warnings"
+RDEPENDS:perl-module-tap-parser-result += "perl-module-base"
+RDEPENDS:perl-module-tap-parser-result += "perl-module-strict"
+RDEPENDS:perl-module-tap-parser-result += "perl-module-warnings"
+RDEPENDS:perl-module-tap-parser-result-plan += "perl-module-base"
+RDEPENDS:perl-module-tap-parser-result-plan += "perl-module-strict"
+RDEPENDS:perl-module-tap-parser-result-plan += "perl-module-warnings"
+RDEPENDS:perl-module-tap-parser-result-pragma += "perl-module-base"
+RDEPENDS:perl-module-tap-parser-result-pragma += "perl-module-strict"
+RDEPENDS:perl-module-tap-parser-result-pragma += "perl-module-warnings"
+RDEPENDS:perl-module-tap-parser-result-test += "perl-module-base"
+RDEPENDS:perl-module-tap-parser-result-test += "perl-module-strict"
+RDEPENDS:perl-module-tap-parser-result-test += "perl-module-warnings"
+RDEPENDS:perl-module-tap-parser-result-unknown += "perl-module-base"
+RDEPENDS:perl-module-tap-parser-result-unknown += "perl-module-strict"
+RDEPENDS:perl-module-tap-parser-result-unknown += "perl-module-warnings"
+RDEPENDS:perl-module-tap-parser-result-version += "perl-module-base"
+RDEPENDS:perl-module-tap-parser-result-version += "perl-module-strict"
+RDEPENDS:perl-module-tap-parser-result-version += "perl-module-warnings"
+RDEPENDS:perl-module-tap-parser-result-yaml += "perl-module-base"
+RDEPENDS:perl-module-tap-parser-result-yaml += "perl-module-strict"
+RDEPENDS:perl-module-tap-parser-result-yaml += "perl-module-warnings"
+RDEPENDS:perl-module-tap-parser-scheduler-job += "perl-module-strict"
+RDEPENDS:perl-module-tap-parser-scheduler-job += "perl-module-warnings"
+RDEPENDS:perl-module-tap-parser-scheduler += "perl-module-strict"
+RDEPENDS:perl-module-tap-parser-scheduler += "perl-module-tap-parser-scheduler-job"
+RDEPENDS:perl-module-tap-parser-scheduler += "perl-module-tap-parser-scheduler-spinner"
+RDEPENDS:perl-module-tap-parser-scheduler += "perl-module-warnings"
+RDEPENDS:perl-module-tap-parser-scheduler-spinner += "perl-module-strict"
+RDEPENDS:perl-module-tap-parser-scheduler-spinner += "perl-module-warnings"
+RDEPENDS:perl-module-tap-parser-sourcehandler-executable += "perl-module-base"
+RDEPENDS:perl-module-tap-parser-sourcehandler-executable += "perl-module-constant"
+RDEPENDS:perl-module-tap-parser-sourcehandler-executable += "perl-module-strict"
+RDEPENDS:perl-module-tap-parser-sourcehandler-executable += "perl-module-tap-parser-iteratorfactory"
+RDEPENDS:perl-module-tap-parser-sourcehandler-executable += "perl-module-tap-parser-iterator-process"
+RDEPENDS:perl-module-tap-parser-sourcehandler-executable += "perl-module-warnings"
+RDEPENDS:perl-module-tap-parser-sourcehandler-file += "perl-module-base"
+RDEPENDS:perl-module-tap-parser-sourcehandler-file += "perl-module-constant"
+RDEPENDS:perl-module-tap-parser-sourcehandler-file += "perl-module-strict"
+RDEPENDS:perl-module-tap-parser-sourcehandler-file += "perl-module-tap-parser-iteratorfactory"
+RDEPENDS:perl-module-tap-parser-sourcehandler-file += "perl-module-tap-parser-iterator-stream"
+RDEPENDS:perl-module-tap-parser-sourcehandler-file += "perl-module-warnings"
+RDEPENDS:perl-module-tap-parser-sourcehandler-handle += "perl-module-base"
+RDEPENDS:perl-module-tap-parser-sourcehandler-handle += "perl-module-constant"
+RDEPENDS:perl-module-tap-parser-sourcehandler-handle += "perl-module-strict"
+RDEPENDS:perl-module-tap-parser-sourcehandler-handle += "perl-module-tap-parser-iteratorfactory"
+RDEPENDS:perl-module-tap-parser-sourcehandler-handle += "perl-module-tap-parser-iterator-stream"
+RDEPENDS:perl-module-tap-parser-sourcehandler-handle += "perl-module-warnings"
+RDEPENDS:perl-module-tap-parser-sourcehandler += "perl-module-base"
+RDEPENDS:perl-module-tap-parser-sourcehandler += "perl-module-strict"
+RDEPENDS:perl-module-tap-parser-sourcehandler += "perl-module-tap-parser-iterator"
+RDEPENDS:perl-module-tap-parser-sourcehandler += "perl-module-warnings"
+RDEPENDS:perl-module-tap-parser-sourcehandler-perl += "perl-module-base"
+RDEPENDS:perl-module-tap-parser-sourcehandler-perl += "perl-module-config"
+RDEPENDS:perl-module-tap-parser-sourcehandler-perl += "perl-module-constant"
+RDEPENDS:perl-module-tap-parser-sourcehandler-perl += "perl-module-strict"
+RDEPENDS:perl-module-tap-parser-sourcehandler-perl += "perl-module-tap-parser-iteratorfactory"
+RDEPENDS:perl-module-tap-parser-sourcehandler-perl += "perl-module-tap-parser-iterator-process"
+RDEPENDS:perl-module-tap-parser-sourcehandler-perl += "perl-module-text-parsewords"
+RDEPENDS:perl-module-tap-parser-sourcehandler-perl += "perl-module-warnings"
+RDEPENDS:perl-module-tap-parser-sourcehandler-rawtap += "perl-module-base"
+RDEPENDS:perl-module-tap-parser-sourcehandler-rawtap += "perl-module-strict"
+RDEPENDS:perl-module-tap-parser-sourcehandler-rawtap += "perl-module-tap-parser-iterator-array"
+RDEPENDS:perl-module-tap-parser-sourcehandler-rawtap += "perl-module-tap-parser-iteratorfactory"
+RDEPENDS:perl-module-tap-parser-sourcehandler-rawtap += "perl-module-warnings"
+RDEPENDS:perl-module-tap-parser-source += "perl-module-base"
+RDEPENDS:perl-module-tap-parser-source += "perl-module-constant"
+RDEPENDS:perl-module-tap-parser-source += "perl-module-file-basename"
+RDEPENDS:perl-module-tap-parser-source += "perl-module-strict"
+RDEPENDS:perl-module-tap-parser-source += "perl-module-warnings"
+RDEPENDS:perl-module-tap-parser-yamlish-reader += "perl-module-base"
+RDEPENDS:perl-module-tap-parser-yamlish-reader += "perl-module-strict"
+RDEPENDS:perl-module-tap-parser-yamlish-reader += "perl-module-warnings"
+RDEPENDS:perl-module-tap-parser-yamlish-writer += "perl-module-base"
+RDEPENDS:perl-module-tap-parser-yamlish-writer += "perl-module-strict"
+RDEPENDS:perl-module-tap-parser-yamlish-writer += "perl-module-warnings"
+RDEPENDS:perl-module-term-ansicolor += "perl-module-exporter"
+RDEPENDS:perl-module-term-ansicolor += "perl-module-strict"
+RDEPENDS:perl-module-term-ansicolor += "perl-module-warnings"
+RDEPENDS:perl-module-term-cap += "perl-module-strict"
+RDEPENDS:perl-module-term-cap += "perl-module-vars"
+RDEPENDS:perl-module-term-complete += "perl-module-exporter"
+RDEPENDS:perl-module-term-complete += "perl-module-strict"
+RDEPENDS:perl-module-term-readline += "perl-module-strict"
+RDEPENDS:perl-module-term-readline += "perl-module-term-cap"
+RDEPENDS:perl-module-test-builder-formatter += "perl-module-strict"
+RDEPENDS:perl-module-test-builder-formatter += "perl-module-warnings"
+RDEPENDS:perl-module-test-builder-module += "perl-module-exporter"
+RDEPENDS:perl-module-test-builder-module += "perl-module-strict"
+RDEPENDS:perl-module-test-builder-module += "perl-module-test-builder"
+RDEPENDS:perl-module-test-builder += "perl-module-data-dumper"
+RDEPENDS:perl-module-test-builder += "perl-module-overload"
+RDEPENDS:perl-module-test-builder += "perl-module-strict"
+RDEPENDS:perl-module-test-builder += "perl-module-test-builder-formatter"
+RDEPENDS:perl-module-test-builder += "perl-module-test-builder-tododiag"
+RDEPENDS:perl-module-test-builder += "perl-module-warnings"
+RDEPENDS:perl-module-test-builder-tester-color += "perl-module-strict"
+RDEPENDS:perl-module-test-builder-tester-color += "perl-module-test-builder-tester"
+RDEPENDS:perl-module-test-builder-tester += "perl-module-exporter"
+RDEPENDS:perl-module-test-builder-tester += "perl-module-strict"
+RDEPENDS:perl-module-test-builder-tester += "perl-module-test-builder"
+RDEPENDS:perl-module-test-builder-tododiag += "perl-module-strict"
+RDEPENDS:perl-module-test-builder-tododiag += "perl-module-warnings"
+RDEPENDS:perl-module-test-harness += "perl-module-base"
+RDEPENDS:perl-module-test-harness += "perl-module-config"
+RDEPENDS:perl-module-test-harness += "perl-module-constant"
+RDEPENDS:perl-module-test-harness += "perl-module-strict"
+RDEPENDS:perl-module-test-harness += "perl-module-tap-harness"
+RDEPENDS:perl-module-test-harness += "perl-module-tap-parser-aggregator"
+RDEPENDS:perl-module-test-harness += "perl-module-tap-parser-source"
+RDEPENDS:perl-module-test-harness += "perl-module-tap-parser-sourcehandler-perl"
+RDEPENDS:perl-module-test-harness += "perl-module-text-parsewords"
+RDEPENDS:perl-module-test-harness += "perl-module-warnings"
+RDEPENDS:perl-module-test-more += "perl-module-strict"
+RDEPENDS:perl-module-test-more += "perl-module-test-builder-module"
+RDEPENDS:perl-module-test-more += "perl-module-warnings"
+RDEPENDS:perl-module-test += "perl-module-exporter"
+RDEPENDS:perl-module-test += "perl-module-file-temp"
+RDEPENDS:perl-module-test += "perl-module-strict"
+RDEPENDS:perl-module-test-simple += "perl-module-strict"
+RDEPENDS:perl-module-test-simple += "perl-module-test-builder-module"
+RDEPENDS:perl-module-test-tester-capture += "perl-module-config"
+RDEPENDS:perl-module-test-tester-capture += "perl-module-strict"
+RDEPENDS:perl-module-test-tester-capture += "perl-module-test-builder"
+RDEPENDS:perl-module-test-tester-capture += "perl-module-vars"
+RDEPENDS:perl-module-test-tester-capturerunner += "perl-module-exporter"
+RDEPENDS:perl-module-test-tester-capturerunner += "perl-module-strict"
+RDEPENDS:perl-module-test-tester-capturerunner += "perl-module-test-tester-capture"
+RDEPENDS:perl-module-test-tester-delegate += "perl-module-strict"
+RDEPENDS:perl-module-test-tester-delegate += "perl-module-vars"
+RDEPENDS:perl-module-test-tester-delegate += "perl-module-warnings"
+RDEPENDS:perl-module-test-tester += "perl-module-exporter"
+RDEPENDS:perl-module-test-tester += "perl-module-strict"
+RDEPENDS:perl-module-test-tester += "perl-module-test-builder"
+RDEPENDS:perl-module-test-tester += "perl-module-test-tester-capturerunner"
+RDEPENDS:perl-module-test-tester += "perl-module-test-tester-delegate"
+RDEPENDS:perl-module-test-tester += "perl-module-vars"
+RDEPENDS:perl-module-text-abbrev += "perl-module-exporter"
+RDEPENDS:perl-module-text-balanced += "perl-module-exporter"
+RDEPENDS:perl-module-text-balanced += "perl-module-overload"
+RDEPENDS:perl-module-text-balanced += "perl-module-selfloader"
+RDEPENDS:perl-module-text-balanced += "perl-module-strict"
+RDEPENDS:perl-module-text-balanced += "perl-module-vars"
+RDEPENDS:perl-module-text-parsewords += "perl-module-exporter"
+RDEPENDS:perl-module-text-parsewords += "perl-module-strict"
+RDEPENDS:perl-module-text-tabs += "perl-module-exporter"
+RDEPENDS:perl-module-text-tabs += "perl-module-strict"
+RDEPENDS:perl-module-text-tabs += "perl-module-vars"
+RDEPENDS:perl-module-text-wrap += "perl-module-exporter"
+RDEPENDS:perl-module-text-wrap += "perl-module-re"
+RDEPENDS:perl-module-text-wrap += "perl-module-strict"
+RDEPENDS:perl-module-text-wrap += "perl-module-text-tabs"
+RDEPENDS:perl-module-text-wrap += "perl-module-vars"
+RDEPENDS:perl-module-text-wrap += "perl-module-warnings-register"
+RDEPENDS:perl-module-thread += "perl-module-config"
+RDEPENDS:perl-module-thread += "perl-module-exporter"
+RDEPENDS:perl-module-thread += "perl-module-strict"
+RDEPENDS:perl-module-thread += "perl-module-threads"
+RDEPENDS:perl-module-thread += "perl-module-threads-shared"
+RDEPENDS:perl-module-thread += "perl-module-warnings"
+RDEPENDS:perl-module-thread-queue += "perl-module-strict"
+RDEPENDS:perl-module-thread-queue += "perl-module-threads-shared"
+RDEPENDS:perl-module-thread-queue += "perl-module-warnings"
+RDEPENDS:perl-module-thread-semaphore += "perl-module-strict"
+RDEPENDS:perl-module-thread-semaphore += "perl-module-threads-shared"
+RDEPENDS:perl-module-thread-semaphore += "perl-module-warnings"
+RDEPENDS:perl-module-threads += "perl-module-config"
+RDEPENDS:perl-module-threads += "perl-module-overload"
+RDEPENDS:perl-module-threads += "perl-module-strict"
+RDEPENDS:perl-module-threads += "perl-module-warnings"
+RDEPENDS:perl-module-threads += "perl-module-xsloader"
+RDEPENDS:perl-module-threads-shared += "perl-module-config"
+RDEPENDS:perl-module-threads-shared += "perl-module-strict"
+RDEPENDS:perl-module-threads-shared += "perl-module-warnings"
+RDEPENDS:perl-module-threads-shared += "perl-module-xsloader"
+RDEPENDS:perl-module-tie-array += "perl-module-strict"
+RDEPENDS:perl-module-tie-file += "perl-module-fcntl"
+RDEPENDS:perl-module-tie-file += "perl-module-posix"
+RDEPENDS:perl-module-tie-file += "perl-module-strict"
+RDEPENDS:perl-module-tie-file += "perl-module-warnings"
+RDEPENDS:perl-module-tie-handle += "perl-module-tie-stdhandle"
+RDEPENDS:perl-module-tie-handle += "perl-module-warnings-register"
+RDEPENDS:perl-module-tie-hash-namedcapture += "perl-module-strict"
+RDEPENDS:perl-module-tie-hash += "perl-module-warnings-register"
+RDEPENDS:perl-module-tie-memoize += "perl-module-strict"
+RDEPENDS:perl-module-tie-memoize += "perl-module-tie-hash"
+RDEPENDS:perl-module-tie-refhash += "perl-module-config"
+RDEPENDS:perl-module-tie-refhash += "perl-module-overload"
+RDEPENDS:perl-module-tie-refhash += "perl-module-strict"
+RDEPENDS:perl-module-tie-refhash += "perl-module-tie-hash"
+RDEPENDS:perl-module-tie-refhash += "perl-module-vars"
+RDEPENDS:perl-module-tie-scalar += "perl-module-warnings-register"
+RDEPENDS:perl-module-tie-stdhandle += "perl-module-strict"
+RDEPENDS:perl-module-tie-stdhandle += "perl-module-tie-handle"
+RDEPENDS:perl-module-tie-substrhash += "perl-module-integer"
+RDEPENDS:perl-module-time-gmtime += "perl-module-exporter"
+RDEPENDS:perl-module-time-gmtime += "perl-module-strict"
+RDEPENDS:perl-module-time-gmtime += "perl-module-time-tm"
+RDEPENDS:perl-module-time-hires += "perl-module-exporter"
+RDEPENDS:perl-module-time-hires += "perl-module-strict"
+RDEPENDS:perl-module-time-hires += "perl-module-xsloader"
+RDEPENDS:perl-module-time-local += "perl-module-config"
+RDEPENDS:perl-module-time-local += "perl-module-constant"
+RDEPENDS:perl-module-time-local += "perl-module-exporter"
+RDEPENDS:perl-module-time-local += "perl-module-parent"
+RDEPENDS:perl-module-time-local += "perl-module-strict"
+RDEPENDS:perl-module-time-localtime += "perl-module-exporter"
+RDEPENDS:perl-module-time-localtime += "perl-module-strict"
+RDEPENDS:perl-module-time-localtime += "perl-module-time-tm"
+RDEPENDS:perl-module-time-piece += "perl-module-constant"
+RDEPENDS:perl-module-time-piece += "perl-module-exporter"
+RDEPENDS:perl-module-time-piece += "perl-module-integer"
+RDEPENDS:perl-module-time-piece += "perl-module-overload"
+RDEPENDS:perl-module-time-piece += "perl-module-strict"
+RDEPENDS:perl-module-time-piece += "perl-module-time-local"
+RDEPENDS:perl-module-time-piece += "perl-module-time-seconds"
+RDEPENDS:perl-module-time-piece += "perl-module-xsloader"
+RDEPENDS:perl-module-time-seconds += "perl-module-constant"
+RDEPENDS:perl-module-time-seconds += "perl-module-exporter"
+RDEPENDS:perl-module-time-seconds += "perl-module-overload"
+RDEPENDS:perl-module-time-seconds += "perl-module-strict"
+RDEPENDS:perl-module-time-tm += "perl-module-class-struct"
+RDEPENDS:perl-module-time-tm += "perl-module-strict"
+RDEPENDS:perl-module-unicode-collate-cjk-big5 += "perl-module-strict"
+RDEPENDS:perl-module-unicode-collate-cjk-big5 += "perl-module-warnings"
+RDEPENDS:perl-module-unicode-collate-cjk-gb2312 += "perl-module-strict"
+RDEPENDS:perl-module-unicode-collate-cjk-gb2312 += "perl-module-warnings"
+RDEPENDS:perl-module-unicode-collate-cjk-jisx0208 += "perl-module-strict"
+RDEPENDS:perl-module-unicode-collate-cjk-jisx0208 += "perl-module-warnings"
+RDEPENDS:perl-module-unicode-collate-cjk-korean += "perl-module-strict"
+RDEPENDS:perl-module-unicode-collate-cjk-korean += "perl-module-warnings"
+RDEPENDS:perl-module-unicode-collate-cjk-pinyin += "perl-module-strict"
+RDEPENDS:perl-module-unicode-collate-cjk-pinyin += "perl-module-warnings"
+RDEPENDS:perl-module-unicode-collate-cjk-stroke += "perl-module-strict"
+RDEPENDS:perl-module-unicode-collate-cjk-stroke += "perl-module-warnings"
+RDEPENDS:perl-module-unicode-collate-cjk-zhuyin += "perl-module-strict"
+RDEPENDS:perl-module-unicode-collate-cjk-zhuyin += "perl-module-warnings"
+RDEPENDS:perl-module-unicode-collate-locale += "perl-module-base"
+RDEPENDS:perl-module-unicode-collate-locale += "perl-module-strict"
+RDEPENDS:perl-module-unicode-collate-locale += "perl-module-warnings"
+RDEPENDS:perl-module-unicode-collate += "perl-module-constant"
+RDEPENDS:perl-module-unicode-collate += "perl-module-strict"
+RDEPENDS:perl-module-unicode-collate += "perl-module-warnings"
+RDEPENDS:perl-module-unicode-collate += "perl-module-xsloader"
+RDEPENDS:perl-module-unicode-normalize += "perl-module-exporter"
+RDEPENDS:perl-module-unicode-normalize += "perl-module-strict"
+RDEPENDS:perl-module-unicode-normalize += "perl-module-warnings"
+RDEPENDS:perl-module-unicode-normalize += "perl-module-xsloader"
+RDEPENDS:perl-module-unicode-ucd += "perl-module-charnames"
+RDEPENDS:perl-module-unicode-ucd += "perl-module-exporter"
+RDEPENDS:perl-module-unicode-ucd += "perl-module-feature"
+RDEPENDS:perl-module-unicode-ucd += "perl-module-if"
+RDEPENDS:perl-module-unicode-ucd += "perl-module-integer"
+RDEPENDS:perl-module-unicode-ucd += "perl-module-re"
+RDEPENDS:perl-module-unicode-ucd += "perl-module-strict"
+RDEPENDS:perl-module-unicode-ucd += "perl-module-unicode-normalize"
+RDEPENDS:perl-module-unicode-ucd += "perl-module-warnings"
+RDEPENDS:perl-module-user-grent += "perl-module-class-struct"
+RDEPENDS:perl-module-user-grent += "perl-module-exporter"
+RDEPENDS:perl-module-user-grent += "perl-module-strict"
+RDEPENDS:perl-module-user-pwent += "perl-module-class-struct"
+RDEPENDS:perl-module-user-pwent += "perl-module-config"
+RDEPENDS:perl-module-user-pwent += "perl-module-exporter"
+RDEPENDS:perl-module-user-pwent += "perl-module-strict"
+RDEPENDS:perl-module-user-pwent += "perl-module-warnings"
+RDEPENDS:perl-module-version += "perl-module-strict"
+RDEPENDS:perl-module-version += "perl-module-version-regex"
+RDEPENDS:perl-module-version += "perl-module-warnings-register"
+RDEPENDS:perl-module-version-regex += "perl-module-strict"
+RDEPENDS:perl-module-xsloader += "perl-module-dynaloader"
diff --git a/poky/meta/recipes-devtools/perl/liberror-perl_0.17029.bb b/poky/meta/recipes-devtools/perl/liberror-perl_0.17029.bb
index 038808f..e38d32a 100644
--- a/poky/meta/recipes-devtools/perl/liberror-perl_0.17029.bb
+++ b/poky/meta/recipes-devtools/perl/liberror-perl_0.17029.bb
@@ -11,7 +11,7 @@
 
 DEPENDS += "perl"
 
-RDEPENDS_${PN} += " \
+RDEPENDS:${PN} += " \
     perl-module-carp \
     perl-module-exporter \
     perl-module-scalar-util \
@@ -21,7 +21,7 @@
     perl-module-warnings \
 "
 
-RDEPENDS_${PN}-ptest += " \
+RDEPENDS:${PN}-ptest += " \
     perl-module-base \
     perl-module-file-spec \
     perl-module-io-handle \
@@ -39,7 +39,7 @@
 
 inherit cpan ptest-perl
 
-do_install_prepend() {
+do_install:prepend() {
 	# test requires "-T" (taint) command line option
 	rm -rf ${B}/t/pod-coverage.t
 }
diff --git a/poky/meta/recipes-devtools/perl/libmodule-build-perl_0.4231.bb b/poky/meta/recipes-devtools/perl/libmodule-build-perl_0.4231.bb
index a6fd7b1..8af38ba 100644
--- a/poky/meta/recipes-devtools/perl/libmodule-build-perl_0.4231.bb
+++ b/poky/meta/recipes-devtools/perl/libmodule-build-perl_0.4231.bb
@@ -35,7 +35,7 @@
 
 EXTRA_CPAN_BUILD_FLAGS = "--create_packlist=0"
 
-do_install_append () {
+do_install:append () {
         rm -rf ${D}${docdir}/perl/html
 }
 
@@ -55,7 +55,7 @@
         rm -rf ${D}${PTEST_PATH}/_build/magicnum
 }
 
-RDEPENDS_${PN} += " \
+RDEPENDS:${PN} += " \
     perl-module-carp \
     perl-module-cpan \
     perl-module-config \
@@ -87,7 +87,7 @@
     perl-module-utf8 \
 "
 
-RDEPENDS_${PN}-ptest += " \
+RDEPENDS:${PN}-ptest += " \
     packagegroup-core-buildessential \
     perl-dev \
     perl-module-blib \
@@ -104,7 +104,7 @@
     perl-module-test-more \
 "
 
-RPROVIDES_${PN} += "\
+RPROVIDES:${PN} += "\
     libmodule-build-base-perl \
     libmodule-build-compat-perl \
     libmodule-build-config-perl \
@@ -118,6 +118,6 @@
 "
 
 # t/xs.t RDEPENDS on "EXTERN.h" provided by perl-dev
-INSANE_SKIP_${PN}-ptest = "dev-deps"
+INSANE_SKIP:${PN}-ptest = "dev-deps"
 
 BBCLASSEXTEND = "native"
diff --git a/poky/meta/recipes-devtools/perl/libtest-needs-perl_0.002009.bb b/poky/meta/recipes-devtools/perl/libtest-needs-perl_0.002009.bb
index 2234f6a..0538375 100644
--- a/poky/meta/recipes-devtools/perl/libtest-needs-perl_0.002009.bb
+++ b/poky/meta/recipes-devtools/perl/libtest-needs-perl_0.002009.bb
@@ -24,6 +24,6 @@
 
 inherit cpan ptest-perl
 
-RDEPENDS_${PN}-ptest += "perl-module-test-more perl-module-ipc-open3 perl-module-lib perl-module-version"
+RDEPENDS:${PN}-ptest += "perl-module-test-more perl-module-ipc-open3 perl-module-lib perl-module-version"
 
 BBCLASSEXTEND = "native"
diff --git a/poky/meta/recipes-devtools/perl/liburi-perl_5.08.bb b/poky/meta/recipes-devtools/perl/liburi-perl_5.08.bb
index 4d22b17..0cc27e8 100644
--- a/poky/meta/recipes-devtools/perl/liburi-perl_5.08.bb
+++ b/poky/meta/recipes-devtools/perl/liburi-perl_5.08.bb
@@ -27,14 +27,14 @@
 	cpan_do_compile
 }
 
-do_install_prepend() {
+do_install:prepend() {
 	# these tests require "-T" (taint) command line option
 	rm -rf ${B}/t/cwd.t
 	rm -rf ${B}/t/file.t
 }
 
-RDEPENDS_${PN} += "perl-module-integer perl-module-mime-base64"
-RDEPENDS_${PN}-ptest += " \
+RDEPENDS:${PN} += "perl-module-integer perl-module-mime-base64"
+RDEPENDS:${PN}-ptest += " \
     libtest-needs-perl \
     perl-module-test-more \
     perl-module-test \
diff --git a/poky/meta/recipes-devtools/perl/libxml-parser-perl_2.46.bb b/poky/meta/recipes-devtools/perl/libxml-parser-perl_2.46.bb
index bc154bb..3b9206e 100644
--- a/poky/meta/recipes-devtools/perl/libxml-parser-perl_2.46.bb
+++ b/poky/meta/recipes-devtools/perl/libxml-parser-perl_2.46.bb
@@ -21,13 +21,13 @@
 
 # fix up sub MakeMaker project as arguments don't get propagated though
 # see https://rt.cpan.org/Public/Bug/Display.html?id=28632
-do_configure_append_class-target() {
+do_configure:append:class-target() {
 	sed -E \
 	    -e 's:-L${STAGING_LIBDIR}::g' -e 's:-I${STAGING_INCDIR}::g' \
 	    -i Makefile Expat/Makefile
 }
 
-do_configure_append() {
+do_configure:append() {
 	sed -e 's:--sysroot=.*\(\s\|$\):--sysroot=${STAGING_DIR_TARGET} :g' \
 	    -i Makefile Expat/Makefile
 	sed 's:^FULL_AR = .*:FULL_AR = ${AR}:g' -i Expat/Makefile
@@ -40,7 +40,7 @@
 	cpan_do_compile
 }
 
-do_compile_class-native() {
+do_compile:class-native() {
 	cpan_do_compile
 }
 
@@ -53,6 +53,6 @@
 	chown -R root:root ${D}${PTEST_PATH}/samples
 }
 
-RDEPENDS_${PN}-ptest += "perl-module-filehandle perl-module-if perl-module-test perl-module-test-more"
+RDEPENDS:${PN}-ptest += "perl-module-filehandle perl-module-if perl-module-test perl-module-test-more"
 
 BBCLASSEXTEND="native nativesdk"
diff --git a/poky/meta/recipes-devtools/perl/libxml-perl_0.08.bb b/poky/meta/recipes-devtools/perl/libxml-perl_0.08.bb
index 818ae3d..b77ad24 100644
--- a/poky/meta/recipes-devtools/perl/libxml-perl_0.08.bb
+++ b/poky/meta/recipes-devtools/perl/libxml-perl_0.08.bb
@@ -26,5 +26,5 @@
 	cpan_do_compile
 }
 
-RDEPENDS_${PN} += "perl-module-carp perl-module-overload perl-module-universal perl-module-io-handle"
-RDEPENDS_${PN}-ptest += "libxml-parser-perl perl-module-file-glob"
+RDEPENDS:${PN} += "perl-module-carp perl-module-overload perl-module-universal perl-module-io-handle"
+RDEPENDS:${PN}-ptest += "libxml-parser-perl perl-module-file-glob"
diff --git a/poky/meta/recipes-devtools/perl/libxml-simple-perl_2.25.bb b/poky/meta/recipes-devtools/perl/libxml-simple-perl_2.25.bb
index 53788d5..e293822 100644
--- a/poky/meta/recipes-devtools/perl/libxml-simple-perl_2.25.bb
+++ b/poky/meta/recipes-devtools/perl/libxml-simple-perl_2.25.bb
@@ -21,13 +21,13 @@
 
 inherit cpan ptest-perl
 
-RDEPENDS_${PN} += " \
+RDEPENDS:${PN} += " \
     libxml-namespacesupport-perl \
     libxml-parser-perl \
     libxml-sax-perl \
 "
 
-RDEPENDS_${PN}-ptest += " \
+RDEPENDS:${PN}-ptest += " \
     perl-module-file-temp \
     perl-module-test-more \
 "
diff --git a/poky/meta/recipes-devtools/perl/perl-ptest.inc b/poky/meta/recipes-devtools/perl/perl-ptest.inc
index 98e3361..54c7807 100644
--- a/poky/meta/recipes-devtools/perl/perl-ptest.inc
+++ b/poky/meta/recipes-devtools/perl/perl-ptest.inc
@@ -47,7 +47,7 @@
 	 rm ${D}${PTEST_PATH}/Makefile.config ${D}${PTEST_PATH}/xconfig.h ${D}${PTEST_PATH}/xconfig.sh
 }
 
-python populate_packages_prepend() {
+python populate_packages:prepend() {
     # Put all *.t files from the lib dir in the ptest package
     # do_split_packages requires a pair of () in the regex, but we have nothing
     # to match, so use an empty pair.
@@ -56,8 +56,8 @@
             '${PN}-ptest%s', '%s', recursive=True, match_path=True)
 }
 
-RDEPENDS_${PN}-ptest += "${PN}-modules ${PN}-doc sed"
+RDEPENDS:${PN}-ptest += "${PN}-modules ${PN}-doc sed"
 
 # The perl-ptest package contains Perl internal modules and generating file
 # dependencies for it causes problems.
-SKIP_FILEDEPS_${PN}-ptest = '1'
+SKIP_FILEDEPS:${PN}-ptest = '1'
diff --git a/poky/meta/recipes-devtools/perl/perl_5.34.0.bb b/poky/meta/recipes-devtools/perl/perl_5.34.0.bb
index 434535c..cc01321 100644
--- a/poky/meta/recipes-devtools/perl/perl_5.34.0.bb
+++ b/poky/meta/recipes-devtools/perl/perl_5.34.0.bb
@@ -18,10 +18,10 @@
            file://0002-Constant-Fix-up-shebang.patch \
            file://determinism.patch \
            "
-SRC_URI_append_class-native = " \
+SRC_URI:append:class-native = " \
            file://perl-configpm-switch.patch \
 "
-SRC_URI_append_class-target = " \
+SRC_URI:append:class-target = " \
            file://encodefix.patch \
 "
 
@@ -42,11 +42,11 @@
 # Don't generate comments in enc2xs output files. They are not reproducible
 export ENC2XS_NO_COMMENTS = "1"
 
-do_configure_prepend() {
+do_configure:prepend() {
     cp -rfp ${STAGING_DATADIR_NATIVE}/perl-cross/* ${S}
 }
 
-do_configure_class-target() {
+do_configure:class-target() {
     ./configure --prefix=${prefix} --libdir=${libdir} \
     --target=${TARGET_SYS} \
     -Duseshrplib \
@@ -72,7 +72,7 @@
     sed -i -e "s,${STAGING_LIBDIR},${libdir},g" config.h
 }
 
-do_configure_class-nativesdk() {
+do_configure:class-nativesdk() {
     ./configure --prefix=${prefix} \
     --target=${TARGET_SYS} \
     -Duseshrplib \
@@ -85,7 +85,7 @@
     sed -i -e "s,${STAGING_LIBDIR},${libdir},g" config.h
 }
 
-do_configure_class-native() {
+do_configure:class-native() {
     ./configure --prefix=${prefix} \
     -Dbin=${bindir}/perl-native \
     -Duseshrplib \
@@ -95,7 +95,7 @@
     ${PACKAGECONFIG_CONFARGS}
 }
 
-do_configure_append() {
+do_configure:append() {
     if [ -n "$SOURCE_DATE_EPOCH" ]; then
         PERL_BUILD_DATE="$(${PYTHON} -c "\
 from datetime import datetime, timezone; \
@@ -140,7 +140,7 @@
     fi
 }
 
-do_install_append_class-target() {
+do_install:append:class-target() {
     # This is used to substitute target configuration when running native perl via perl-configpm-switch.patch
     ln -s Config_heavy.pl ${D}${libdir}/perl5/${PV}/${TARGET_ARCH}-linux/Config_heavy-target.pl
 
@@ -149,7 +149,7 @@
     rm ${D}${libdir}/perl5/${PV}/${TARGET_ARCH}-linux/CORE/xconfig.h
 }
 
-do_install_append_class-nativesdk() {
+do_install:append:class-nativesdk() {
     # This is used to substitute target configuration when running native perl via perl-configpm-switch.patch
     ln -s Config_heavy.pl ${D}${libdir}/perl5/${PV}/${TARGET_ARCH}-linux/Config_heavy-target.pl
 
@@ -157,7 +157,7 @@
         PERL5LIB='$PERL5LIB:${SDKPATHNATIVE}/${libdir_nativesdk}/perl5/site_perl/${PV}:${SDKPATHNATIVE}/${libdir_nativesdk}/perl5/vendor_perl/${PV}:${SDKPATHNATIVE}/${libdir_nativesdk}/perl5/${PV}'
 }
 
-do_install_append_class-native () {
+do_install:append:class-native () {
     # Those wrappers mean that perl installed from sstate (which may change
     # path location) works and that in the nativesdk case, the SDK can be
     # installed to a different location from the one it was built for.
@@ -208,7 +208,7 @@
 
 ALTERNATIVE_PRIORITY = "100"
 
-ALTERNATIVE_${PN}-misc = "corelist cpan enc2xs encguess h2ph h2xs instmodsh json_pp libnetcfg \
+ALTERNATIVE:${PN}-misc = "corelist cpan enc2xs encguess h2ph h2xs instmodsh json_pp libnetcfg \
                      piconv pl2pm pod2html pod2man pod2text pod2usage podchecker \
                      prove ptar ptardiff ptargrep shasum splain xsubpp zipdetails"
 ALTERNATIVE_LINK_NAME[corelist] = "${bindir}/corelist"
@@ -238,7 +238,7 @@
 
 require perl-ptest.inc
 
-FILES_${PN} = "${bindir}/perl ${bindir}/perl.real ${bindir}/perl${PV} ${libdir}/libperl.so* \
+FILES:${PN} = "${bindir}/perl ${bindir}/perl.real ${bindir}/perl${PV} ${libdir}/libperl.so* \
                ${libdir}/perl5/site_perl \
                ${libdir}/perl5/${PV}/Config.pm \
                ${libdir}/perl5/${PV}/${TARGET_ARCH}-linux/Config.pm \
@@ -254,24 +254,24 @@
                ${libdir}/perl5/${PV}/ExtUtils/xsubpp \
                ${libdir}/perl5/${PV}/ExtUtils/typemap \
                "
-RPROVIDES_${PN} += "perl-module-strict perl-module-vars perl-module-config perl-module-warnings \
+RPROVIDES:${PN} += "perl-module-strict perl-module-vars perl-module-config perl-module-warnings \
                     perl-module-warnings-register"
 
-FILES_${PN}-staticdev_append = " ${libdir}/perl5/${PV}/*/CORE/libperl.a"
+FILES:${PN}-staticdev:append = " ${libdir}/perl5/${PV}/*/CORE/libperl.a"
 
-FILES_${PN}-dev_append = " ${libdir}/perl5/${PV}/*/CORE"
+FILES:${PN}-dev:append = " ${libdir}/perl5/${PV}/*/CORE"
 
-FILES_${PN}-doc_append = " ${libdir}/perl5/${PV}/Unicode/Collate/*.txt \
+FILES:${PN}-doc:append = " ${libdir}/perl5/${PV}/Unicode/Collate/*.txt \
                            ${libdir}/perl5/${PV}/*/.packlist \
                            ${libdir}/perl5/${PV}/Encode/encode.h \
                          "
 PACKAGES += "${PN}-misc"
 
-FILES_${PN}-misc = "${bindir}/*"
+FILES:${PN}-misc = "${bindir}/*"
 
 PACKAGES += "${PN}-pod"
 
-FILES_${PN}-pod = "${libdir}/perl5/${PV}/pod \
+FILES:${PN}-pod = "${libdir}/perl5/${PV}/pod \
                    ${libdir}/perl5/${PV}/*.pod \
                    ${libdir}/perl5/${PV}/*/*.pod \
                    ${libdir}/perl5/${PV}/*/*/*.pod \ 
@@ -280,20 +280,20 @@
 
 PACKAGES += "${PN}-module-cpan ${PN}-module-unicore"
 
-FILES_${PN}-module-cpan += "${libdir}/perl5/${PV}/CPAN \
+FILES:${PN}-module-cpan += "${libdir}/perl5/${PV}/CPAN \
                           "
-FILES_${PN}-module-unicore += "${libdir}/perl5/${PV}/unicore"
+FILES:${PN}-module-unicore += "${libdir}/perl5/${PV}/unicore"
 
 ALTERNATIVE_PRIORITY = "40"
-ALTERNATIVE_${PN}-doc = "Thread.3"
+ALTERNATIVE:${PN}-doc = "Thread.3"
 ALTERNATIVE_LINK_NAME[Thread.3] = "${mandir}/man3/Thread.3"
 
 # Create a perl-modules package recommending all the other perl
 # packages (actually the non modules packages and not created too)
-ALLOW_EMPTY_${PN}-modules = "1"
+ALLOW_EMPTY:${PN}-modules = "1"
 PACKAGES += "${PN}-modules "
 
-PACKAGESPLITFUNCS_prepend = "split_perl_packages "
+PACKAGESPLITFUNCS:prepend = "split_perl_packages "
 
 python split_perl_packages () {
     libdir = d.expand('${libdir}/perl5/${PV}')
@@ -308,7 +308,7 @@
     # modules. Don't attempt to use the result of do_split_packages() as some
     # modules are manually split (eg. perl-module-unicore).
     packages = filter(lambda p: 'perl-module-' in p, d.getVar('PACKAGES').split())
-    d.setVar(d.expand("RRECOMMENDS_${PN}-modules"), ' '.join(packages))
+    d.setVar(d.expand("RRECOMMENDS:${PN}-modules"), ' '.join(packages))
 
     # Read the pre-generated dependency file, and use it to set module dependecies
     for line in open(d.expand("${WORKDIR}") + '/perl-rdepends.txt').readlines():
@@ -320,7 +320,7 @@
             module = splitline[0] + '-native'
             depends = "perl-native"
         else:
-            module = splitline[0].replace("RDEPENDS_perl", "RDEPENDS_${PN}")
+            module = splitline[0].replace("RDEPENDS:perl", "RDEPENDS:${PN}")
             depends = splitline[2].strip('"').replace("perl-module", "${PN}-module")
         d.appendVar(d.expand(module), " " + depends)
 }
@@ -334,8 +334,8 @@
         d.setVar("PACKAGES_DYNAMIC", "^nativesdk-perl-module-.*")
 }
 
-RDEPENDS_${PN}-misc += "perl perl-modules"
-RDEPENDS_${PN}-pod += "perl"
+RDEPENDS:${PN}-misc += "perl perl-modules"
+RDEPENDS:${PN}-pod += "perl"
 
 BBCLASSEXTEND = "native nativesdk"
 
@@ -346,10 +346,10 @@
     cat <<'EOPREAMBLE' > ${WORKDIR}/perl-rdepends.inc
 
 # Some additional dependencies that the above doesn't manage to figure out
-RDEPENDS_${PN}-module-file-spec += "${PN}-module-file-spec-unix"
-RDEPENDS_${PN}-module-math-bigint += "${PN}-module-math-bigint-calc"
-RDEPENDS_${PN}-module-thread-queue += "${PN}-module-attributes"
-RDEPENDS_${PN}-module-overload += "${PN}-module-overloading"
+RDEPENDS:${PN}-module-file-spec += "${PN}-module-file-spec-unix"
+RDEPENDS:${PN}-module-math-bigint += "${PN}-module-math-bigint-calc"
+RDEPENDS:${PN}-module-thread-queue += "${PN}-module-attributes"
+RDEPENDS:${PN}-module-overload += "${PN}-module-overloading"
 
 # Generated depends list beyond this line
 EOPREAMBLE
diff --git a/poky/meta/recipes-devtools/pkgconf/pkgconf_1.7.4.bb b/poky/meta/recipes-devtools/pkgconf/pkgconf_1.7.4.bb
index 9383210..04991b1 100644
--- a/poky/meta/recipes-devtools/pkgconf/pkgconf_1.7.4.bb
+++ b/poky/meta/recipes-devtools/pkgconf/pkgconf_1.7.4.bb
@@ -7,7 +7,7 @@
 BUGTRACKER = "https://github.com/pkgconf/pkgconf/issues"
 SECTION = "devel"
 PROVIDES += "pkgconfig"
-RPROVIDES_${PN} += "pkgconfig"
+RPROVIDES:${PN} += "pkgconfig"
 
 # The pkgconf license seems to be functionally equivalent to BSD-2-Clause or
 # ISC, but has different wording, so needs its own name.
@@ -26,13 +26,13 @@
 
 EXTRA_OECONF += "--with-pkg-config-dir='${libdir}/pkgconfig:${datadir}/pkgconfig'"
 
-do_install_append () {
+do_install:append () {
     # Install a wrapper which deals, as much as possible with pkgconf vs
     # pkg-config compatibility issues.
     install -m 0755 "${WORKDIR}/pkg-config-wrapper" "${D}${bindir}/pkg-config"
 }
 
-do_install_append_class-native () {
+do_install:append:class-native () {
     # Install a pkg-config-native wrapper that will use the native sysroot instead
     # of the MACHINE sysroot, for using pkg-config when building native tools.
     sed -e "s|@PATH_NATIVE@|${PKG_CONFIG_PATH}|" \
@@ -47,11 +47,11 @@
 # When using the RPM generated automatic package dependencies, some packages
 # will end up requiring 'pkgconfig(pkg-config)'.  Allow this behavior by
 # specifying an appropriate provide.
-RPROVIDES_${PN} += "pkgconfig(pkg-config)"
+RPROVIDES:${PN} += "pkgconfig(pkg-config)"
 
 # Include pkg.m4 in the main package, leaving libpkgconf dev files in -dev
-FILES_${PN}-dev_remove = "${datadir}/aclocal"
-FILES_${PN} += "${datadir}/aclocal"
+FILES:${PN}-dev:remove = "${datadir}/aclocal"
+FILES:${PN} += "${datadir}/aclocal"
 
 BBCLASSEXTEND += "native nativesdk"
 
@@ -64,4 +64,4 @@
    fi
 }
 
-SSTATEPOSTUNPACKFUNCS_append_class-native = " pkgconf_sstate_fixup_esdk"
+SSTATEPOSTUNPACKFUNCS:append:class-native = " pkgconf_sstate_fixup_esdk"
diff --git a/poky/meta/recipes-devtools/pkgconfig/pkgconfig_git.bb b/poky/meta/recipes-devtools/pkgconfig/pkgconfig_git.bb
index 964d85f..aa2692b 100644
--- a/poky/meta/recipes-devtools/pkgconfig/pkgconfig_git.bb
+++ b/poky/meta/recipes-devtools/pkgconfig/pkgconfig_git.bb
@@ -30,8 +30,8 @@
 EXTRA_OECONF += "--disable-indirect-deps"
 
 PACKAGECONFIG ??= "glib"
-PACKAGECONFIG_class-native = ""
-PACKAGECONFIG_class-nativesdk = ""
+PACKAGECONFIG:class-native = ""
+PACKAGECONFIG:class-nativesdk = ""
 
 PACKAGECONFIG[glib] = "--without-internal-glib,--with-internal-glib,glib-2.0 pkgconfig-native"
 
@@ -42,17 +42,17 @@
 # Set an empty dev package to ensure the base PN package gets
 # the pkg.m4 macros, pkgconfig does not deliver any other -dev
 # files.
-FILES_${PN}-dev = ""
-FILES_${PN} += "${datadir}/aclocal/pkg.m4"
+FILES:${PN}-dev = ""
+FILES:${PN} += "${datadir}/aclocal/pkg.m4"
 
 # When using the RPM generated automatic package dependencies, some packages
 # will end up requiring 'pkgconfig(pkg-config)'.  Allow this behavior by
 # specifying an appropriate provide.
-RPROVIDES_${PN} += "pkgconfig(pkg-config)"
+RPROVIDES:${PN} += "pkgconfig(pkg-config)"
 
 # Install a pkg-config-native wrapper that will use the native sysroot instead
 # of the MACHINE sysroot, for using pkg-config when building native tools.
-do_install_append_class-native () {
+do_install:append:class-native () {
     sed -e "s|@PATH_NATIVE@|${PKG_CONFIG_PATH}|" \
         -e "s|@LIBDIR_NATIVE@|${PKG_CONFIG_LIBDIR}|" \
         < ${WORKDIR}/pkg-config-native.in > ${B}/pkg-config-native
@@ -72,4 +72,4 @@
 	fi
 }
 
-SSTATEPOSTUNPACKFUNCS_append_class-native = " pkgconfig_sstate_fixup_esdk"
+SSTATEPOSTUNPACKFUNCS:append:class-native = " pkgconfig_sstate_fixup_esdk"
diff --git a/poky/meta/recipes-devtools/prelink/prelink_git.bb b/poky/meta/recipes-devtools/prelink/prelink_git.bb
index e197af9..78d4c71 100644
--- a/poky/meta/recipes-devtools/prelink/prelink_git.bb
+++ b/poky/meta/recipes-devtools/prelink/prelink_git.bb
@@ -19,11 +19,11 @@
 #
 # Default is prelinking is enabled.
 #
-SUMMARY_${PN}-cron = "Cron scripts to control automatic prelinking"
-DESCRIPTION_${PN}-cron = "Cron scripts to control automatic prelinking.  \
+SUMMARY:${PN}-cron = "Cron scripts to control automatic prelinking"
+DESCRIPTION:${PN}-cron = "Cron scripts to control automatic prelinking.  \
 See: ${sysconfdir}/cron.daily/prelink for configuration information."
 
-FILES_${PN}-cron = "${sysconfdir}/cron.daily ${sysconfdir}/default"
+FILES:${PN}-cron = "${sysconfdir}/cron.daily ${sysconfdir}/default"
 
 PACKAGES =+ "${PN}-cron"
 
@@ -37,10 +37,10 @@
 UPSTREAM_CHECK_COMMITS = "1"
 
 # error: error.h: No such file or directory
-COMPATIBLE_HOST_libc-musl = 'null'
+COMPATIBLE_HOST:libc-musl = 'null'
 
 TARGET_OS_ORIG := "${TARGET_OS}"
-OVERRIDES_append = ":${TARGET_OS_ORIG}"
+OVERRIDES:append = ":${TARGET_OS_ORIG}"
 
 S = "${WORKDIR}/git"
 
@@ -144,12 +144,12 @@
         bb.build.addtask('do_linkerpaths', 'do_configure', 'do_patch', d)
 }
 
-do_configure_prepend () {
+do_configure:prepend () {
         # Disable documentation!
         echo "all:" > ${S}/doc/Makefile.am
 }
 
-do_install_append () {
+do_install:append () {
 	install -d ${D}${sysconfdir}/cron.daily ${D}${sysconfdir}/default ${D}${sysconfdir}/rpm
 	install -m 0644 ${WORKDIR}/prelink.conf ${D}${sysconfdir}/prelink.conf
 	install -m 0644 ${WORKDIR}/prelink.cron.daily ${D}${sysconfdir}/cron.daily/prelink
@@ -161,7 +161,7 @@
 # Prelinking during a cross install should be handled by the image-prelink
 # bbclass.  If the user desires this to run on the target at first boot
 # they will need to create a custom boot script.
-pkg_postinst_prelink() {
+pkg_postinst:prelink() {
 #!/bin/sh
 
 if [ "x$D" != "x" ]; then
@@ -171,7 +171,7 @@
 prelink -a
 }
 
-pkg_prerm_prelink() {
+pkg_prerm:prelink() {
 #!/bin/sh
 
 if [ "x$D" != "x" ]; then
diff --git a/poky/meta/recipes-devtools/pseudo/pseudo.inc b/poky/meta/recipes-devtools/pseudo/pseudo.inc
index e6512bc..7ba414c 100644
--- a/poky/meta/recipes-devtools/pseudo/pseudo.inc
+++ b/poky/meta/recipes-devtools/pseudo/pseudo.inc
@@ -10,14 +10,14 @@
 LICENSE = "LGPL2.1"
 DEPENDS = "sqlite3 attr"
 
-FILES_${PN} = "${prefix}/lib/pseudo/lib*/libpseudo.so ${bindir}/* ${localstatedir}/pseudo ${prefix}/var/pseudo"
-INSANE_SKIP_${PN} += "libdir"
-INSANE_SKIP_${PN}-dbg += "libdir"
+FILES:${PN} = "${prefix}/lib/pseudo/lib*/libpseudo.so ${bindir}/* ${localstatedir}/pseudo ${prefix}/var/pseudo"
+INSANE_SKIP:${PN} += "libdir"
+INSANE_SKIP:${PN}-dbg += "libdir"
 
 PROVIDES += "virtual/fakeroot"
 
 MAKEOPTS = ""
-MAKEOPTS_class-native = "'RPATH=-Wl,--rpath=XORIGIN/../../../sqlite3-native/usr/lib/'"
+MAKEOPTS:class-native = "'RPATH=-Wl,--rpath=XORIGIN/../../../sqlite3-native/usr/lib/'"
 
 inherit siteinfo pkgconfig
 
@@ -26,7 +26,7 @@
 }
 
 NO32LIBS ??= "1"
-NO32LIBS_class-nativesdk = "1"
+NO32LIBS:class-nativesdk = "1"
 
 PSEUDO_EXTRA_OPTS ?= "--enable-force-async --without-passwd-fallback --enable-epoll --enable-xattr"
 
@@ -79,7 +79,7 @@
 # Two below are the same
 # If necessary compile for the alternative machine arch.  This is only 
 # necessary in a native build.
-do_compile_prepend_class-native () {
+do_compile:prepend:class-native () {
 	maybe_make32
 	if $make32; then
 		# We need the 32-bit libpseudo on a 64-bit machine...
@@ -100,7 +100,7 @@
 	fi
 }
 
-do_compile_prepend_class-nativesdk () {
+do_compile:prepend:class-nativesdk () {
 	maybe_make32
 	if $make32; then
 		# We need the 32-bit libpseudo on a 64-bit machine.
@@ -112,7 +112,7 @@
 	fi
 }
 
-do_compile_append_class-native () {
+do_compile:append:class-native () {
 	if [ '${@bb.data.inherits_class('uninative', d)}' = 'True' ]; then
 		for i in PSEUDO_PORT_UNIX_SYNCFS PSEUDO_PORT_UIDS_GENERIC PSEUDO_PORT_LINUX_NEWCLONE PSEUDO_PORT_LINUX_XATTR PSEUDO_PORT_LINUX_STATVFS; do
 			grep $i.1 ${S}/pseudo_ports.h
@@ -129,7 +129,7 @@
 	oe_runmake 'DESTDIR=${D}' ${MAKEOPTS} 'LIB=lib/pseudo/lib$(MARK64)' install
 }
 
-do_install_append_class-native () {
+do_install:append:class-native () {
 	chrpath ${D}${bindir}/pseudo -r `chrpath ${D}${bindir}/pseudo | cut -d = -f 2 | sed s/XORIGIN/\\$ORIGIN/`
 	install -d ${D}${sysconfdir}
 	# The fallback files should never be modified
@@ -146,7 +146,7 @@
 	fi
 }
 
-do_install_append_class-nativesdk () {
+do_install:append:class-nativesdk () {
 	maybe_make32
 	if $make32; then
 		mkdir -p ${D}${prefix}/lib/pseudo/lib
diff --git a/poky/meta/recipes-devtools/pseudo/pseudo_git.bb b/poky/meta/recipes-devtools/pseudo/pseudo_git.bb
index 0ba460f..dacaef1 100644
--- a/poky/meta/recipes-devtools/pseudo/pseudo_git.bb
+++ b/poky/meta/recipes-devtools/pseudo/pseudo_git.bb
@@ -11,4 +11,4 @@
 PV = "1.9.0+git${SRCPV}"
 
 # error: use of undeclared identifier '_STAT_VER'
-COMPATIBLE_HOST_libc-musl = 'null'
+COMPATIBLE_HOST:libc-musl = 'null'
diff --git a/poky/meta/recipes-devtools/python-numpy/python3-numpy_1.21.0.bb b/poky/meta/recipes-devtools/python-numpy/python3-numpy_1.21.0.bb
index 7ad2f06..a4d222c 100644
--- a/poky/meta/recipes-devtools/python-numpy/python3-numpy_1.21.0.bb
+++ b/poky/meta/recipes-devtools/python-numpy/python3-numpy_1.21.0.bb
@@ -25,10 +25,10 @@
 
 CLEANBROKEN = "1"
 
-FILES_${PN}-staticdev += "${PYTHON_SITEPACKAGES_DIR}/numpy/core/lib/*.a ${PYTHON_SITEPACKAGES_DIR}/numpy/random/lib/*.a"
+FILES:${PN}-staticdev += "${PYTHON_SITEPACKAGES_DIR}/numpy/core/lib/*.a ${PYTHON_SITEPACKAGES_DIR}/numpy/random/lib/*.a"
 
 # install what is needed for numpy.test()
-RDEPENDS_${PN} = "${PYTHON_PN}-unittest \
+RDEPENDS:${PN} = "${PYTHON_PN}-unittest \
                   ${PYTHON_PN}-difflib \
                   ${PYTHON_PN}-pprint \
                   ${PYTHON_PN}-pickle \
@@ -48,7 +48,7 @@
                   ${PYTHON_PN}-threading \
                   ${PYTHON_PN}-multiprocessing \
 "
-RDEPENDS_${PN}-ptest += "${PYTHON_PN}-pytest \
+RDEPENDS:${PN}-ptest += "${PYTHON_PN}-pytest \
                          ${PYTHON_PN}-hypothesis \
                          ${PYTHON_PN}-sortedcontainers \
                          ${PYTHON_PN}-resource \
diff --git a/poky/meta/recipes-devtools/python/python-async.inc b/poky/meta/recipes-devtools/python/python-async.inc
index af887dc..fde8646 100644
--- a/poky/meta/recipes-devtools/python/python-async.inc
+++ b/poky/meta/recipes-devtools/python/python-async.inc
@@ -9,6 +9,6 @@
 SRC_URI[md5sum] = "9b06b5997de2154f3bc0273f80bcef6b"
 SRC_URI[sha256sum] = "ac6894d876e45878faae493b0cf61d0e28ec417334448ac0a6ea2229d8343051"
 
-RDEPENDS_${PN} += "${PYTHON_PN}-threading"
+RDEPENDS:${PN} += "${PYTHON_PN}-threading"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/python/python-cython.inc b/poky/meta/recipes-devtools/python/python-cython.inc
index 04fd2ec..e3f14fc 100644
--- a/poky/meta/recipes-devtools/python/python-cython.inc
+++ b/poky/meta/recipes-devtools/python/python-cython.inc
@@ -14,7 +14,7 @@
 
 inherit pypi
 
-RDEPENDS_${PN}_class-target += "\
+RDEPENDS:${PN}:class-target += "\
     ${PYTHON_PN}-misc \
     ${PYTHON_PN}-netserver \
     ${PYTHON_PN}-pkgutil \
@@ -24,7 +24,7 @@
     ${PYTHON_PN}-xml \
 "
 
-RDEPENDS_${PN}_class-nativesdk += "\
+RDEPENDS:${PN}:class-nativesdk += "\
     nativesdk-${PYTHON_PN}-misc \
     nativesdk-${PYTHON_PN}-netserver \
     nativesdk-${PYTHON_PN}-pkgutil \
@@ -34,7 +34,7 @@
     nativesdk-${PYTHON_PN}-xml \
 "
 
-do_install_append() {
+do_install:append() {
 	# Make sure we use /usr/bin/env python
 	for PYTHSCRIPT in `grep -rIl '^#!.*python' ${D}`; do
 		sed -i -e '1s|^#!.*|#!/usr/bin/env ${PYTHON_PN}|' $PYTHSCRIPT
diff --git a/poky/meta/recipes-devtools/python/python-gitdb.inc b/poky/meta/recipes-devtools/python/python-gitdb.inc
index 53d925a..5b24a1f 100644
--- a/poky/meta/recipes-devtools/python/python-gitdb.inc
+++ b/poky/meta/recipes-devtools/python/python-gitdb.inc
@@ -12,7 +12,7 @@
 
 DEPENDS = "${PYTHON_PN}-async ${PYTHON_PN}-setuptools-native ${PYTHON_PN}-smmap"
 
-RDEPENDS_${PN} += "${PYTHON_PN}-async \
+RDEPENDS:${PN} += "${PYTHON_PN}-async \
                    ${PYTHON_PN}-compression \
                    ${PYTHON_PN}-crypt \
                    ${PYTHON_PN}-io \
diff --git a/poky/meta/recipes-devtools/python/python-nose.inc b/poky/meta/recipes-devtools/python/python-nose.inc
index ccec68a..dfae202 100644
--- a/poky/meta/recipes-devtools/python/python-nose.inc
+++ b/poky/meta/recipes-devtools/python/python-nose.inc
@@ -11,7 +11,7 @@
 
 inherit pypi
 
-RDEPENDS_${PN} = "\
+RDEPENDS:${PN} = "\
   ${PYTHON_PN}-unittest \
   "
 
diff --git a/poky/meta/recipes-devtools/python/python-pbr.inc b/poky/meta/recipes-devtools/python/python-pbr.inc
index bc470e7..59fbc6d 100644
--- a/poky/meta/recipes-devtools/python/python-pbr.inc
+++ b/poky/meta/recipes-devtools/python/python-pbr.inc
@@ -9,6 +9,6 @@
 
 inherit pypi
 
-RDEPENDS_${PN} += "${PYTHON_PN}-pip"
+RDEPENDS:${PN} += "${PYTHON_PN}-pip"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/python/python-pycryptodome.inc b/poky/meta/recipes-devtools/python/python-pycryptodome.inc
index 48481bc..3f4c6e9 100644
--- a/poky/meta/recipes-devtools/python/python-pycryptodome.inc
+++ b/poky/meta/recipes-devtools/python/python-pycryptodome.inc
@@ -7,18 +7,18 @@
 
 inherit pypi
 
-RDEPENDS_${PN} += " \
+RDEPENDS:${PN} += " \
     ${PYTHON_PN}-io \
     ${PYTHON_PN}-math \
 "
 
-RDEPENDS_${PN}-tests += " \
+RDEPENDS:${PN}-tests += " \
     ${PYTHON_PN}-unittest \
 "
 
 PACKAGES =+ "${PN}-tests"
 
-FILES_${PN}-tests = " \
+FILES:${PN}-tests = " \
     ${PYTHON_SITEPACKAGES_DIR}/Crypto/SelfTest/ \
     ${PYTHON_SITEPACKAGES_DIR}/Crypto/SelfTest/__pycache__/ \
 "
diff --git a/poky/meta/recipes-devtools/python/python-pyparsing.inc b/poky/meta/recipes-devtools/python/python-pyparsing.inc
index 348b324..330bf7e 100644
--- a/poky/meta/recipes-devtools/python/python-pyparsing.inc
+++ b/poky/meta/recipes-devtools/python/python-pyparsing.inc
@@ -9,7 +9,7 @@
 
 inherit pypi
 
-RDEPENDS_${PN} += " \
+RDEPENDS:${PN} += " \
     ${PYTHON_PN}-datetime \
     ${PYTHON_PN}-debugger \
     ${PYTHON_PN}-json \
diff --git a/poky/meta/recipes-devtools/python/python-six.inc b/poky/meta/recipes-devtools/python/python-six.inc
index df97f84..aac6765 100644
--- a/poky/meta/recipes-devtools/python/python-six.inc
+++ b/poky/meta/recipes-devtools/python/python-six.inc
@@ -6,6 +6,6 @@
 
 inherit pypi
 
-RDEPENDS_${PN} = "${PYTHON_PN}-io"
+RDEPENDS:${PN} = "${PYTHON_PN}-io"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/python/python-smmap.inc b/poky/meta/recipes-devtools/python/python-smmap.inc
index 2a2ac76..7d0cff5 100644
--- a/poky/meta/recipes-devtools/python/python-smmap.inc
+++ b/poky/meta/recipes-devtools/python/python-smmap.inc
@@ -13,7 +13,7 @@
 
 SRC_URI[sha256sum] = "7e65386bd122d45405ddf795637b7f7d2b532e7e401d46bbe3fb49b9986d5182"
 
-RDEPENDS_${PN} += "${PYTHON_PN}-codecs \
+RDEPENDS:${PN} += "${PYTHON_PN}-codecs \
                    ${PYTHON_PN}-mmap \
 "
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/python/python-testtools.inc b/poky/meta/recipes-devtools/python/python-testtools.inc
index e8d308b..ef5e15c 100644
--- a/poky/meta/recipes-devtools/python/python-testtools.inc
+++ b/poky/meta/recipes-devtools/python/python-testtools.inc
@@ -6,8 +6,7 @@
 
 inherit pypi
 
-SRC_URI[md5sum] = "e8fc7185b47cfb908c641f8c4b2a6add"
-SRC_URI[sha256sum] = "64c974a6cca4385d05f4bbfa2deca1c39ce88ede31c3448bee86a7259a9a61c8"
+SRC_URI[sha256sum] = "57c13433d94f9ffde3be6534177d10fb0c1507cc499319128958ca91a65cb23f"
 
 DEPENDS += " \
     ${PYTHON_PN}-pbr \
@@ -18,7 +17,7 @@
     ${PYTHON_PN}-pbr-native \
     "
 
-RDEPENDS_${PN} += "\
+RDEPENDS:${PN} += "\
     ${PYTHON_PN}-doctest \
     ${PYTHON_PN}-extras \
     ${PYTHON_PN}-pbr \
diff --git a/poky/meta/recipes-devtools/python/python3-atomicwrites_1.4.0.bb b/poky/meta/recipes-devtools/python/python3-atomicwrites_1.4.0.bb
index 7edd410..065a2c7 100644
--- a/poky/meta/recipes-devtools/python/python3-atomicwrites_1.4.0.bb
+++ b/poky/meta/recipes-devtools/python/python3-atomicwrites_1.4.0.bb
@@ -12,7 +12,7 @@
 	file://run-ptest \
 "
 
-RDEPENDS_${PN}-ptest += " \
+RDEPENDS:${PN}-ptest += " \
 	${PYTHON_PN}-pytest \
 	${PYTHON_PN}-unixadmin \
 "
@@ -22,4 +22,4 @@
 	cp -rf ${S}/tests/* ${D}${PTEST_PATH}/tests/
 }
 
-RDEPENDS_${PN} = "${PYTHON_PN}-misc"
+RDEPENDS:${PN} = "${PYTHON_PN}-misc"
diff --git a/poky/meta/recipes-devtools/python/python3-attrs_21.2.0.bb b/poky/meta/recipes-devtools/python/python3-attrs_21.2.0.bb
index e89fbc9..d52237f 100644
--- a/poky/meta/recipes-devtools/python/python3-attrs_21.2.0.bb
+++ b/poky/meta/recipes-devtools/python/python3-attrs_21.2.0.bb
@@ -7,11 +7,11 @@
 
 inherit pypi setuptools3
 
-RDEPENDS_${PN}_class-target += " \
+RDEPENDS:${PN}:class-target += " \
     ${PYTHON_PN}-crypt \
     ${PYTHON_PN}-ctypes \
 "
-RDEPENDS_${PN}_class-nativesdk += " \
+RDEPENDS:${PN}:class-nativesdk += " \
     ${PYTHON_PN}-crypt \
     ${PYTHON_PN}-ctypes \
 "
diff --git a/poky/meta/recipes-devtools/python/python3-cython_0.29.23.bb b/poky/meta/recipes-devtools/python/python3-cython_0.29.23.bb
index 2ec4033..296fb39 100644
--- a/poky/meta/recipes-devtools/python/python3-cython_0.29.23.bb
+++ b/poky/meta/recipes-devtools/python/python3-cython_0.29.23.bb
@@ -1,7 +1,7 @@
 inherit setuptools3
 require python-cython.inc
 
-RDEPENDS_${PN} += "\
+RDEPENDS:${PN} += "\
     python3-setuptools \
 "
 
@@ -10,7 +10,7 @@
 # architecture.
 DISTUTILS_INSTALL_ARGS += "--skip-build"
 
-do_install_append() {
+do_install:append() {
     # rename scripts that would conflict with the Python 2 build of Cython
     mv ${D}${bindir}/cython ${D}${bindir}/cython3
     mv ${D}${bindir}/cythonize ${D}${bindir}/cythonize3
diff --git a/poky/meta/recipes-devtools/python/python3-dbus_1.2.16.bb b/poky/meta/recipes-devtools/python/python3-dbus_1.2.18.bb
similarity index 74%
rename from poky/meta/recipes-devtools/python/python3-dbus_1.2.16.bb
rename to poky/meta/recipes-devtools/python/python3-dbus_1.2.18.bb
index e1700fa..9592fbf 100644
--- a/poky/meta/recipes-devtools/python/python3-dbus_1.2.16.bb
+++ b/poky/meta/recipes-devtools/python/python3-dbus_1.2.18.bb
@@ -7,8 +7,7 @@
 
 SRC_URI = "http://dbus.freedesktop.org/releases/dbus-python/dbus-python-${PV}.tar.gz"
 
-SRC_URI[md5sum] = "51a45c973d82bedff033a4b57d69d5d8"
-SRC_URI[sha256sum] = "11238f1d86c995d8aed2e22f04a1e3779f0d70e587caffeab4857f3c662ed5a4"
+SRC_URI[sha256sum] = "92bdd1e68b45596c833307a5ff4b217ee6929a1502f5341bae28fd120acf7260"
 
 S = "${WORKDIR}/dbus-python-${PV}"
 
@@ -19,8 +18,8 @@
 EXTRA_OECONF += "--disable-documentation"
 
 
-RDEPENDS_${PN} = "python3-io python3-logging python3-stringold python3-threading python3-xml"
+RDEPENDS:${PN} = "python3-io python3-logging python3-stringold python3-threading python3-xml"
 
-FILES_${PN}-dev += "${libdir}/pkgconfig"
+FILES:${PN}-dev += "${libdir}/pkgconfig"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/python/python3-dbusmock_0.23.1.bb b/poky/meta/recipes-devtools/python/python3-dbusmock_0.23.1.bb
index b5fa186..28e9929 100644
--- a/poky/meta/recipes-devtools/python/python3-dbusmock_0.23.1.bb
+++ b/poky/meta/recipes-devtools/python/python3-dbusmock_0.23.1.bb
@@ -10,7 +10,7 @@
 
 inherit pypi setuptools3
 
-RDEPENDS_${PN} += "\
+RDEPENDS:${PN} += "\
     ${PYTHON_PN}-dbus \
     ${PYTHON_PN}-pygobject \
     ${PYTHON_PN}-unittest \
diff --git a/poky/meta/recipes-devtools/python/python3-git_3.1.18.bb b/poky/meta/recipes-devtools/python/python3-git_3.1.18.bb
index 955418c..d1c50d4 100644
--- a/poky/meta/recipes-devtools/python/python3-git_3.1.18.bb
+++ b/poky/meta/recipes-devtools/python/python3-git_3.1.18.bb
@@ -16,7 +16,7 @@
 
 DEPENDS += " ${PYTHON_PN}-gitdb"
 
-RDEPENDS_${PN} += " \
+RDEPENDS:${PN} += " \
                    ${PYTHON_PN}-datetime \
                    ${PYTHON_PN}-gitdb \
                    ${PYTHON_PN}-io \
diff --git a/poky/meta/recipes-devtools/python/python3-hypothesis_6.14.3.bb b/poky/meta/recipes-devtools/python/python3-hypothesis_6.14.5.bb
similarity index 81%
rename from poky/meta/recipes-devtools/python/python3-hypothesis_6.14.3.bb
rename to poky/meta/recipes-devtools/python/python3-hypothesis_6.14.5.bb
index 83c9917..0460a43 100644
--- a/poky/meta/recipes-devtools/python/python3-hypothesis_6.14.3.bb
+++ b/poky/meta/recipes-devtools/python/python3-hypothesis_6.14.5.bb
@@ -7,9 +7,9 @@
 
 inherit pypi setuptools3
 
-SRC_URI[sha256sum] = "1c8776d9fc8c598cf1b93b99bd87976f9d9b589fc58843d85a30090700f14a8a"
+SRC_URI[sha256sum] = "0563b9711fd9bf478cb591580a575c369d2c396f283efa85d0f9a75b26db65b5"
 
-RDEPENDS_${PN} += " \
+RDEPENDS:${PN} += " \
     python3-attrs \
     python3-compression \
     python3-core \
diff --git a/poky/meta/recipes-devtools/python/python3-importlib-metadata_4.6.1.bb b/poky/meta/recipes-devtools/python/python3-importlib-metadata_4.6.3.bb
similarity index 65%
rename from poky/meta/recipes-devtools/python/python3-importlib-metadata_4.6.1.bb
rename to poky/meta/recipes-devtools/python/python3-importlib-metadata_4.6.3.bb
index 7e9604a..198138a 100644
--- a/poky/meta/recipes-devtools/python/python3-importlib-metadata_4.6.1.bb
+++ b/poky/meta/recipes-devtools/python/python3-importlib-metadata_4.6.3.bb
@@ -8,13 +8,13 @@
 PYPI_PACKAGE = "importlib_metadata"
 UPSTREAM_CHECK_REGEX = "/importlib-metadata/(?P<pver>(\d+[\.\-_]*)+)/"
 
-SRC_URI[sha256sum] = "079ada16b7fc30dfbb5d13399a5113110dab1aa7c2bc62f66af75f0b717c8cac"
+SRC_URI[sha256sum] = "0645585859e9a6689c523927a5032f2ba5919f1f7d0e84bd4533312320de1ff9"
 
 S = "${WORKDIR}/importlib_metadata-${PV}"
 
 DEPENDS += "${PYTHON_PN}-setuptools-scm-native ${PYTHON_PN}-toml-native"
-RDEPENDS_${PN} += "${PYTHON_PN}-zipp ${PYTHON_PN}-pathlib2"
-RDEPENDS_${PN}_append_class-target = " python3-misc"
-RDEPENDS_${PN}_append_class-nativesdk = " python3-misc"
+RDEPENDS:${PN} += "${PYTHON_PN}-zipp ${PYTHON_PN}-pathlib2"
+RDEPENDS:${PN}:append:class-target = " python3-misc"
+RDEPENDS:${PN}:append:class-nativesdk = " python3-misc"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/python/python3-iniparse_0.5.bb b/poky/meta/recipes-devtools/python/python3-iniparse_0.5.bb
index 4ed82ea..b5812d9 100644
--- a/poky/meta/recipes-devtools/python/python3-iniparse_0.5.bb
+++ b/poky/meta/recipes-devtools/python/python3-iniparse_0.5.bb
@@ -8,7 +8,7 @@
 
 inherit pypi setuptools3
 
-RDEPENDS_${PN} += "python3-core python3-six"
+RDEPENDS:${PN} += "python3-core python3-six"
 DEPENDS += "python3-six"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/python/python3-jinja2_3.0.1.bb b/poky/meta/recipes-devtools/python/python3-jinja2_3.0.1.bb
index b37a043..abb89c9 100644
--- a/poky/meta/recipes-devtools/python/python3-jinja2_3.0.1.bb
+++ b/poky/meta/recipes-devtools/python/python3-jinja2_3.0.1.bb
@@ -24,13 +24,13 @@
     cp -rf ${S}/tests/* ${D}${PTEST_PATH}/tests/
 }
 
-RDEPENDS_${PN}-ptest += " \
+RDEPENDS:${PN}-ptest += " \
 	${PYTHON_PN}-pytest \
         ${PYTHON_PN}-toml \
 	${PYTHON_PN}-unixadmin \
 "
 
-RDEPENDS_${PN} += " \
+RDEPENDS:${PN} += " \
     ${PYTHON_PN}-asyncio \
     ${PYTHON_PN}-crypt \
     ${PYTHON_PN}-io \
diff --git a/poky/meta/recipes-devtools/python/python3-libarchive-c_3.1.bb b/poky/meta/recipes-devtools/python/python3-libarchive-c_3.1.bb
index d8f7862..ac8466e 100644
--- a/poky/meta/recipes-devtools/python/python3-libarchive-c_3.1.bb
+++ b/poky/meta/recipes-devtools/python/python3-libarchive-c_3.1.bb
@@ -12,7 +12,7 @@
 SRC_URI[md5sum] = "8c62da42a8b9bd24642e5430427e6f5a"
 SRC_URI[sha256sum] = "618a7ecfbfb58ca15e11e3138d4a636498da3b6bc212811af158298530fbb87e"
 
-RDEPENDS_${PN} += "\
+RDEPENDS:${PN} += "\
   libarchive \
   ${PYTHON_PN}-ctypes \
   ${PYTHON_PN}-mmap \
diff --git a/poky/meta/recipes-devtools/python/python3-magic_0.4.24.bb b/poky/meta/recipes-devtools/python/python3-magic_0.4.24.bb
index a54bf24..ae895fb 100644
--- a/poky/meta/recipes-devtools/python/python3-magic_0.4.24.bb
+++ b/poky/meta/recipes-devtools/python/python3-magic_0.4.24.bb
@@ -13,7 +13,7 @@
 
 SRC_URI[sha256sum] = "de800df9fb50f8ec5974761054a708af6e4246b03b4bdaee993f948947b0ebcf"
 
-RDEPENDS_${PN} += "file \
+RDEPENDS:${PN} += "file \
                    ${PYTHON_PN}-ctypes \
                    ${PYTHON_PN}-io \
                    ${PYTHON_PN}-logging \
diff --git a/poky/meta/recipes-devtools/python/python3-mako_1.1.4.bb b/poky/meta/recipes-devtools/python/python3-mako_1.1.4.bb
index 1645f37..21ce33b 100644
--- a/poky/meta/recipes-devtools/python/python3-mako_1.1.4.bb
+++ b/poky/meta/recipes-devtools/python/python3-mako_1.1.4.bb
@@ -10,7 +10,7 @@
 
 SRC_URI[sha256sum] = "17831f0b7087c313c0ffae2bcbbd3c1d5ba9eeac9c38f2eb7b50e8c99fe9d5ab"
 
-RDEPENDS_${PN} = "${PYTHON_PN}-html \
+RDEPENDS:${PN} = "${PYTHON_PN}-html \
                   ${PYTHON_PN}-netclient \
                   ${PYTHON_PN}-threading \
 "
diff --git a/poky/meta/recipes-devtools/python/python3-markdown_3.3.4.bb b/poky/meta/recipes-devtools/python/python3-markdown_3.3.4.bb
index 47cccbe..ec1d139 100644
--- a/poky/meta/recipes-devtools/python/python3-markdown_3.3.4.bb
+++ b/poky/meta/recipes-devtools/python/python3-markdown_3.3.4.bb
@@ -10,4 +10,4 @@
 
 BBCLASSEXTEND = "native"
 
-RDEPENDS_${PN} += "${PYTHON_PN}-logging ${PYTHON_PN}-setuptools"
+RDEPENDS:${PN} += "${PYTHON_PN}-logging ${PYTHON_PN}-setuptools"
diff --git a/poky/meta/recipes-devtools/python/python3-markupsafe_2.0.1.bb b/poky/meta/recipes-devtools/python/python3-markupsafe_2.0.1.bb
index 5be43b6..857472c 100644
--- a/poky/meta/recipes-devtools/python/python3-markupsafe_2.0.1.bb
+++ b/poky/meta/recipes-devtools/python/python3-markupsafe_2.0.1.bb
@@ -9,7 +9,7 @@
 inherit pypi setuptools3
 inherit ${@bb.utils.filter('DISTRO_FEATURES', 'ptest', d)}
 
-RDEPENDS_${PN} += "${PYTHON_PN}-stringold"
+RDEPENDS:${PN} += "${PYTHON_PN}-stringold"
 
 BBCLASSEXTEND = "native nativesdk"
 
@@ -17,7 +17,7 @@
 	file://run-ptest \
 "
 
-RDEPENDS_${PN}-ptest += " \
+RDEPENDS:${PN}-ptest += " \
 	${PYTHON_PN}-pytest \
 "
 
diff --git a/poky/meta/recipes-devtools/python/python3-more-itertools_8.8.0.bb b/poky/meta/recipes-devtools/python/python3-more-itertools_8.8.0.bb
index 1c0e84d..fe41d47 100644
--- a/poky/meta/recipes-devtools/python/python3-more-itertools_8.8.0.bb
+++ b/poky/meta/recipes-devtools/python/python3-more-itertools_8.8.0.bb
@@ -11,11 +11,11 @@
 	file://run-ptest \
 "
 
-RDEPENDS_${PN} += " \
+RDEPENDS:${PN} += " \
         ${PYTHON_PN}-asyncio \
         "
 
-RDEPENDS_${PN}-ptest += " \
+RDEPENDS:${PN}-ptest += " \
 	${PYTHON_PN}-pytest \
         "
 
diff --git a/poky/meta/recipes-devtools/python/python3-packaging_21.0.bb b/poky/meta/recipes-devtools/python/python3-packaging_21.0.bb
index 23ecd9d..eacc48e 100644
--- a/poky/meta/recipes-devtools/python/python3-packaging_21.0.bb
+++ b/poky/meta/recipes-devtools/python/python3-packaging_21.0.bb
@@ -10,4 +10,4 @@
 BBCLASSEXTEND = "native"
 
 DEPENDS += "${PYTHON_PN}-setuptools-scm-native"
-RDEPENDS_${PN} += "${PYTHON_PN}-six ${PYTHON_PN}-pyparsing"
+RDEPENDS:${PN} += "${PYTHON_PN}-six ${PYTHON_PN}-pyparsing"
diff --git a/poky/meta/recipes-devtools/python/python3-pathlib2_2.3.6.bb b/poky/meta/recipes-devtools/python/python3-pathlib2_2.3.6.bb
index 8516bbe..1f1cf1a 100644
--- a/poky/meta/recipes-devtools/python/python3-pathlib2_2.3.6.bb
+++ b/poky/meta/recipes-devtools/python/python3-pathlib2_2.3.6.bb
@@ -7,6 +7,6 @@
 
 inherit pypi setuptools3
 
-RDEPENDS_${PN} += "${PYTHON_PN}-six ${PYTHON_PN}-ctypes"
+RDEPENDS:${PN} += "${PYTHON_PN}-six ${PYTHON_PN}-ctypes"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/python/python3-pip_21.1.3.bb b/poky/meta/recipes-devtools/python/python3-pip_21.2.1.bb
similarity index 83%
rename from poky/meta/recipes-devtools/python/python3-pip_21.1.3.bb
rename to poky/meta/recipes-devtools/python/python3-pip_21.2.1.bb
index 0f105c2..f16f1e2 100644
--- a/poky/meta/recipes-devtools/python/python3-pip_21.1.3.bb
+++ b/poky/meta/recipes-devtools/python/python3-pip_21.2.1.bb
@@ -10,14 +10,14 @@
 
 SRC_URI += "file://0001-change-shebang-to-python3.patch"
 
-SRC_URI[sha256sum] = "b5b1eb91b36894bd01b8e5a56a422c2f3838573da0b0a1c63a096bb454e3b23f"
+SRC_URI[sha256sum] = "303a82aaa24cdc01f7ebbd1afc7d1b871a4aa0a88bb5bedef1fa86a3ee44ca0a"
 
-do_install_append() {
+do_install:append() {
     # Install as pip3 and leave pip2 as default
     rm ${D}/${bindir}/pip
 }
 
-RDEPENDS_${PN} = "\
+RDEPENDS:${PN} = "\
   python3-compile \
   python3-io \
   python3-html \
diff --git a/poky/meta/recipes-devtools/python/python3-pluggy_0.13.1.bb b/poky/meta/recipes-devtools/python/python3-pluggy_0.13.1.bb
index d3e0365..479c10f 100644
--- a/poky/meta/recipes-devtools/python/python3-pluggy_0.13.1.bb
+++ b/poky/meta/recipes-devtools/python/python3-pluggy_0.13.1.bb
@@ -7,7 +7,7 @@
 SRC_URI[sha256sum] = "15b2acde666561e1298d71b523007ed7364de07029219b604cf808bfa1c765b0"
 
 DEPENDS += "${PYTHON_PN}-setuptools-scm-native"
-RDEPENDS_${PN} += "${PYTHON_PN}-importlib-metadata \
+RDEPENDS:${PN} += "${PYTHON_PN}-importlib-metadata \
                    ${PYTHON_PN}-more-itertools \
 "
 
@@ -17,7 +17,7 @@
 	file://run-ptest \
 "
 
-RDEPENDS_${PN}-ptest += " \
+RDEPENDS:${PN}-ptest += " \
 	${PYTHON_PN}-pytest \
 "
 
diff --git a/poky/meta/recipes-devtools/python/python3-py_1.10.0.bb b/poky/meta/recipes-devtools/python/python3-py_1.10.0.bb
index 4e16ad1..8225c6b 100644
--- a/poky/meta/recipes-devtools/python/python3-py_1.10.0.bb
+++ b/poky/meta/recipes-devtools/python/python3-py_1.10.0.bb
@@ -11,4 +11,4 @@
 
 BBCLASSEXTEND = "native nativesdk"
 
-RDEPENDS_${PN} += "${PYTHON_PN}-netclient"
+RDEPENDS:${PN} += "${PYTHON_PN}-netclient"
diff --git a/poky/meta/recipes-devtools/python/python3-pycairo_1.20.1.bb b/poky/meta/recipes-devtools/python/python3-pycairo_1.20.1.bb
index d169a3c..9c88d99 100644
--- a/poky/meta/recipes-devtools/python/python3-pycairo_1.20.1.bb
+++ b/poky/meta/recipes-devtools/python/python3-pycairo_1.20.1.bb
@@ -24,4 +24,4 @@
 
 BBCLASSEXTEND = "native"
 
-FILES_${PN} = "${PYTHON_SITEPACKAGES_DIR}/*"
+FILES:${PN} = "${PYTHON_SITEPACKAGES_DIR}/*"
diff --git a/poky/meta/recipes-devtools/python/python3-pycryptodomex_3.10.1.bb b/poky/meta/recipes-devtools/python/python3-pycryptodomex_3.10.1.bb
index a6b3b3e..2d929f1 100644
--- a/poky/meta/recipes-devtools/python/python3-pycryptodomex_3.10.1.bb
+++ b/poky/meta/recipes-devtools/python/python3-pycryptodomex_3.10.1.bb
@@ -3,7 +3,7 @@
 
 SRC_URI[sha256sum] = "541cd3e3e252fb19a7b48f420b798b53483302b7fe4d9954c947605d0a263d62"
 
-FILES_${PN}-tests = " \
+FILES:${PN}-tests = " \
     ${PYTHON_SITEPACKAGES_DIR}/Cryptodome/SelfTest/ \
     ${PYTHON_SITEPACKAGES_DIR}/Cryptodome/SelfTest/__pycache__/ \
 "
diff --git a/poky/meta/recipes-devtools/python/python3-pygobject_3.40.1.bb b/poky/meta/recipes-devtools/python/python3-pygobject_3.40.1.bb
index f5679a4..a0d4f04 100644
--- a/poky/meta/recipes-devtools/python/python3-pygobject_3.40.1.bb
+++ b/poky/meta/recipes-devtools/python/python3-pygobject_3.40.1.bb
@@ -24,11 +24,11 @@
 
 PACKAGECONFIG ??= "${@bb.utils.contains_any('DISTRO_FEATURES', [ 'directfb', 'wayland', 'x11' ], 'cairo', '', d)}"
 
-RDEPENDS_${PN} += "python3-pkgutil"
+RDEPENDS:${PN} += "python3-pkgutil"
 
 # python3-pycairo is checked on configuration -> DEPENDS
 # we don't link against python3-pycairo -> RDEPENDS
 PACKAGECONFIG[cairo] = "-Dpycairo=enabled,-Dpycairo=disabled, cairo python3-pycairo, python3-pycairo"
 
 BBCLASSEXTEND = "native"
-PACKAGECONFIG_class-native = ""
+PACKAGECONFIG:class-native = ""
diff --git a/poky/meta/recipes-devtools/python/python3-pytest/0001-setup.py-remove-the-setup_requires-for-setuptools-scm.patch b/poky/meta/recipes-devtools/python/python3-pytest/0001-setup.py-remove-the-setup_requires-for-setuptools-scm.patch
deleted file mode 100644
index 1abd531..0000000
--- a/poky/meta/recipes-devtools/python/python3-pytest/0001-setup.py-remove-the-setup_requires-for-setuptools-scm.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From ead04f2da75efeca3369feff6161ea4a8baecbc9 Mon Sep 17 00:00:00 2001
-From: Yuan Chao <yuanc.fnst@cn.fujitsu.com>
-Date: Wed, 28 Aug 2019 16:12:27 +0900
-Subject: [PATCH] setup.py: remove the setup_requires for setuptools-scm
-
-The setup_requires argument forces the download of the egg file for setuptools-scm
-during the do_compile phase.  This download is incompatible with the typical fetch
-and mirror structure.  The only usage of scm is the generation of the _version.py
-file and in the release tarball it is already correctly created
-
-Upstream-Status: Inappropriate [oe specific]
-
-Signed-off-by: Derek Straka <derek@asterius.io>
-
-Signed-off-by: Yuan Chao <yuanc.fnst@cn.fujitsu.com>
-
-Rebase for pytest 6.1.0.
-
-Signed-off-by: Kai Kang <kai.kang@windriver.com>
-
----
- setup.cfg | 1 -
- 1 file changed, 1 deletion(-)
-
-diff --git a/setup.cfg b/setup.cfg
-index 6ed0792..0137090 100644
---- a/setup.cfg
-+++ b/setup.cfg
-@@ -53,7 +53,6 @@ package_dir =
- 	=src
- setup_requires = 
- 	setuptools>=>=42.0
--	setuptools-scm>=3.4
- zip_safe = no
- 
- [options.entry_points]
diff --git a/poky/meta/recipes-devtools/python/python3-pytest_6.2.4.bb b/poky/meta/recipes-devtools/python/python3-pytest_6.2.4.bb
index fa43e6e..f0fd30a 100644
--- a/poky/meta/recipes-devtools/python/python3-pytest_6.2.4.bb
+++ b/poky/meta/recipes-devtools/python/python3-pytest_6.2.4.bb
@@ -5,13 +5,13 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=81eb9f71d006c6b268cf4388e3c98f7b"
 
-SRC_URI_append = " file://0001-setup.py-remove-the-setup_requires-for-setuptools-scm.patch "
-
 SRC_URI[sha256sum] = "50bcad0a0b9c5a72c8e4e7c9855a3ad496ca6a881a3641b4260605450772c54b"
 
+DEPENDS = "python3-setuptools-scm-native"
+
 inherit update-alternatives pypi setuptools3
 
-RDEPENDS_${PN}_class-target += " \
+RDEPENDS:${PN}:class-target += " \
     ${PYTHON_PN}-atomicwrites \
     ${PYTHON_PN}-attrs \
     ${PYTHON_PN}-debugger \
@@ -30,7 +30,7 @@
     ${PYTHON_PN}-wcwidth \
 "
 
-ALTERNATIVE_${PN} += "py.test pytest"
+ALTERNATIVE:${PN} += "py.test pytest"
 
 NATIVE_LINK_NAME[pytest] = "${bindir}/pytest"
 ALTERNATIVE_TARGET[pytest] = "${bindir}/pytest"
diff --git a/poky/meta/recipes-devtools/python/python3-pyyaml_5.4.1.bb b/poky/meta/recipes-devtools/python/python3-pyyaml_5.4.1.bb
index dce1ad5..b11baa6 100644
--- a/poky/meta/recipes-devtools/python/python3-pyyaml_5.4.1.bb
+++ b/poky/meta/recipes-devtools/python/python3-pyyaml_5.4.1.bb
@@ -11,7 +11,7 @@
 
 SRC_URI[sha256sum] = "607774cbba28732bfa802b54baa7484215f530991055bb562efbed5b2f20a45e"
 
-RDEPENDS_${PN} += "\
+RDEPENDS:${PN} += "\
     ${PYTHON_PN}-datetime \
     ${PYTHON_PN}-netclient \
 "
diff --git a/poky/meta/recipes-devtools/python/python3-scons-native_4.1.0.bb b/poky/meta/recipes-devtools/python/python3-scons-native_4.1.0.bb
index 9e12730..73076b8 100644
--- a/poky/meta/recipes-devtools/python/python3-scons-native_4.1.0.bb
+++ b/poky/meta/recipes-devtools/python/python3-scons-native_4.1.0.bb
@@ -2,6 +2,6 @@
 inherit native python3native
 DEPENDS = "python3-native python3-setuptools-native"
 
-do_install_append() {
+do_install:append() {
     create_wrapper ${D}${bindir}/scons SCONS_LIB_DIR='${STAGING_DIR_HOST}/${PYTHON_SITEPACKAGES_DIR}' PYTHONNOUSERSITE='1'
 }
diff --git a/poky/meta/recipes-devtools/python/python3-scons_4.1.0.bb b/poky/meta/recipes-devtools/python/python3-scons_4.1.0.bb
index 5894a5e..5a5b550 100644
--- a/poky/meta/recipes-devtools/python/python3-scons_4.1.0.bb
+++ b/poky/meta/recipes-devtools/python/python3-scons_4.1.0.bb
@@ -11,7 +11,7 @@
 
 inherit pypi setuptools3
 
-RDEPENDS_${PN}_class-target = "\
+RDEPENDS:${PN}:class-target = "\
   python3-core \
   python3-compression \
   python3-fcntl \
@@ -24,4 +24,4 @@
   python3-pprint \
   "
 
-FILES_${PN}-doc += "${datadir}/scons*.1"
+FILES:${PN}-doc += "${datadir}/scons*.1"
diff --git a/poky/meta/recipes-devtools/python/python3-setuptools-scm_6.0.1.bb b/poky/meta/recipes-devtools/python/python3-setuptools-scm_6.0.1.bb
index 24409ed..afbed17 100644
--- a/poky/meta/recipes-devtools/python/python3-setuptools-scm_6.0.1.bb
+++ b/poky/meta/recipes-devtools/python/python3-setuptools-scm_6.0.1.bb
@@ -11,14 +11,14 @@
 
 UPSTREAM_CHECK_REGEX = "setuptools_scm-(?P<pver>.*)\.tar"
 
-RDEPENDS_${PN} = "\
+RDEPENDS:${PN} = "\
     ${PYTHON_PN}-debugger \
     ${PYTHON_PN}-json \
     ${PYTHON_PN}-py \
     ${PYTHON_PN}-setuptools \
     ${PYTHON_PN}-toml \
 "
-RDEPENDS_${PN}_class-native = "\
+RDEPENDS:${PN}:class-native = "\
     ${PYTHON_PN}-setuptools-native \
     ${PYTHON_PN}-toml-native \
 "
diff --git a/poky/meta/recipes-devtools/python/python3-setuptools_57.1.0.bb b/poky/meta/recipes-devtools/python/python3-setuptools_57.1.0.bb
index c066d82..63c0fe9 100644
--- a/poky/meta/recipes-devtools/python/python3-setuptools_57.1.0.bb
+++ b/poky/meta/recipes-devtools/python/python3-setuptools_57.1.0.bb
@@ -6,7 +6,7 @@
 
 inherit pypi setuptools3
 
-SRC_URI_append_class-native = " file://0001-conditionally-do-not-fetch-code-by-easy_install.patch"
+SRC_URI:append:class-native = " file://0001-conditionally-do-not-fetch-code-by-easy_install.patch"
 
 SRC_URI += "file://0001-change-shebang-to-python3.patch"
 
@@ -14,7 +14,7 @@
 
 DEPENDS += "${PYTHON_PN}"
 
-RDEPENDS_${PN} = "\
+RDEPENDS:${PN} = "\
   ${PYTHON_PN}-2to3 \
   ${PYTHON_PN}-compile \
   ${PYTHON_PN}-compression \
@@ -36,7 +36,7 @@
   ${PYTHON_PN}-xml \
 "
 
-do_install_prepend() {
+do_install:prepend() {
     install -d ${D}${PYTHON_SITEPACKAGES_DIR}
 }
 
@@ -46,8 +46,8 @@
 # and easy_install. Ship it in a separate package so that it can be used by
 # minimal distributions.
 PACKAGES =+ "${PYTHON_PN}-pkg-resources "
-FILES_${PYTHON_PN}-pkg-resources = "${PYTHON_SITEPACKAGES_DIR}/pkg_resources/*"
-RDEPENDS_${PYTHON_PN}-pkg-resources = "\
+FILES:${PYTHON_PN}-pkg-resources = "${PYTHON_SITEPACKAGES_DIR}/pkg_resources/*"
+RDEPENDS:${PYTHON_PN}-pkg-resources = "\
   ${PYTHON_PN}-compression \
   ${PYTHON_PN}-email \
   ${PYTHON_PN}-plistlib \
diff --git a/poky/meta/recipes-devtools/python/python3-subunit_1.4.0.bb b/poky/meta/recipes-devtools/python/python3-subunit_1.4.0.bb
index 55066e2..a06ded8 100644
--- a/poky/meta/recipes-devtools/python/python3-subunit_1.4.0.bb
+++ b/poky/meta/recipes-devtools/python/python3-subunit_1.4.0.bb
@@ -1,4 +1,4 @@
 inherit setuptools3
 require python-subunit.inc
 
-RDEPENDS_${PN} = " python3-testtools"
+RDEPENDS:${PN} = " python3-testtools"
diff --git a/poky/meta/recipes-devtools/python/python3-testtools/no_traceback2.patch b/poky/meta/recipes-devtools/python/python3-testtools/no_traceback2.patch
deleted file mode 100644
index 5945103..0000000
--- a/poky/meta/recipes-devtools/python/python3-testtools/no_traceback2.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-traceback2 adds traceback for python2. Rather than depend on traceback2, we're
-python3 only so just use traceback.
-This caused breakage in oe-selftest -j which uses testtools on the autobuilder
-using buildtools-tarball.
-
-Upstream-Status: Inappropriate [Our recipe is python3 specific]
-(Once py2 is EOL upstream probably could/should take this)
-Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-
-Index: testtools-2.3.0/testtools/content.py
-===================================================================
---- testtools-2.3.0.orig/testtools/content.py
-+++ testtools-2.3.0/testtools/content.py
-@@ -19,8 +19,7 @@ import os
- import sys
- 
- from extras import try_import
--# To let setup.py work, make this a conditional import.
--traceback = try_import('traceback2')
-+import traceback
- 
- from testtools.compat import (
-     _b,
diff --git a/poky/meta/recipes-devtools/python/python3-testtools_2.4.0.bb b/poky/meta/recipes-devtools/python/python3-testtools_2.4.0.bb
deleted file mode 100644
index a254b90..0000000
--- a/poky/meta/recipes-devtools/python/python3-testtools_2.4.0.bb
+++ /dev/null
@@ -1,4 +0,0 @@
-inherit setuptools3
-require python-testtools.inc
-
-SRC_URI += "file://no_traceback2.patch"
diff --git a/poky/meta/recipes-devtools/python/python3-testtools_2.5.0.bb b/poky/meta/recipes-devtools/python/python3-testtools_2.5.0.bb
new file mode 100644
index 0000000..896ecee
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python3-testtools_2.5.0.bb
@@ -0,0 +1,2 @@
+inherit setuptools3
+require python-testtools.inc
diff --git a/poky/meta/recipes-devtools/python/python3-toml_0.10.2.bb b/poky/meta/recipes-devtools/python/python3-toml_0.10.2.bb
index b46eba6..be29cac 100644
--- a/poky/meta/recipes-devtools/python/python3-toml_0.10.2.bb
+++ b/poky/meta/recipes-devtools/python/python3-toml_0.10.2.bb
@@ -10,6 +10,6 @@
 
 BBCLASSEXTEND = "native nativesdk"
 
-RDEPENDS_${PN} += " \
+RDEPENDS:${PN} += " \
     ${PYTHON_PN}-misc \
 "
diff --git a/poky/meta/recipes-devtools/python/python3-typogrify_2.0.7.bb b/poky/meta/recipes-devtools/python/python3-typogrify_2.0.7.bb
index 3becb0d..83e9b5e 100644
--- a/poky/meta/recipes-devtools/python/python3-typogrify_2.0.7.bb
+++ b/poky/meta/recipes-devtools/python/python3-typogrify_2.0.7.bb
@@ -10,5 +10,5 @@
 
 BBCLASSEXTEND = "native"
 
-RDEPENDS_${PN} += "${PYTHON_PN}-smartypants"
+RDEPENDS:${PN} += "${PYTHON_PN}-smartypants"
 
diff --git a/poky/meta/recipes-devtools/python/python3-wcwidth_0.2.5.bb b/poky/meta/recipes-devtools/python/python3-wcwidth_0.2.5.bb
index bb4aae2..a532d3c 100644
--- a/poky/meta/recipes-devtools/python/python3-wcwidth_0.2.5.bb
+++ b/poky/meta/recipes-devtools/python/python3-wcwidth_0.2.5.bb
@@ -13,7 +13,7 @@
         file://run-ptest \
 "
 
-RDEPENDS_${PN}-ptest += " \
+RDEPENDS:${PN}-ptest += " \
        ${PYTHON_PN}-pytest \
 "
 
diff --git a/poky/meta/recipes-devtools/python/python3-zipp_3.5.0.bb b/poky/meta/recipes-devtools/python/python3-zipp_3.5.0.bb
index ab12601..d6f4676 100644
--- a/poky/meta/recipes-devtools/python/python3-zipp_3.5.0.bb
+++ b/poky/meta/recipes-devtools/python/python3-zipp_3.5.0.bb
@@ -11,7 +11,7 @@
 
 DEPENDS += "${PYTHON_PN}-toml-native"
 
-RDEPENDS_${PN} += "${PYTHON_PN}-compression \
+RDEPENDS:${PN} += "${PYTHON_PN}-compression \
                    ${PYTHON_PN}-math \
                    ${PYTHON_PN}-more-itertools"
 
diff --git a/poky/meta/recipes-devtools/python/python3_3.9.6.bb b/poky/meta/recipes-devtools/python/python3_3.9.6.bb
index 986dfda..3450064 100644
--- a/poky/meta/recipes-devtools/python/python3_3.9.6.bb
+++ b/poky/meta/recipes-devtools/python/python3_3.9.6.bb
@@ -34,7 +34,7 @@
            file://makerace.patch \
            "
 
-SRC_URI_append_class-native = " \
+SRC_URI:append:class-native = " \
            file://0001-distutils-sysconfig-append-STAGING_LIBDIR-python-sys.patch \
            file://12-distutils-prefix-is-inside-staging-area.patch \
            file://0001-Don-t-search-system-for-headers-libraries.patch \
@@ -65,24 +65,27 @@
 
 MULTILIB_SUFFIX = "${@d.getVar('base_libdir',1).split('/')[-1]}"
 
-ALTERNATIVE_${PN}-dev = "python3-config"
+ALTERNATIVE:${PN}-dev = "python3-config"
 ALTERNATIVE_LINK_NAME[python3-config] = "${bindir}/python${PYTHON_MAJMIN}-config"
 ALTERNATIVE_TARGET[python3-config] = "${bindir}/python${PYTHON_MAJMIN}-config-${MULTILIB_SUFFIX}"
 
 
 DEPENDS = "bzip2-replacement-native libffi bzip2 openssl sqlite3 zlib virtual/libintl xz virtual/crypt util-linux libtirpc libnsl2 autoconf-archive-native"
-DEPENDS_append_class-target = " python3-native"
-DEPENDS_append_class-nativesdk = " python3-native"
+DEPENDS:append:class-target = " python3-native"
+DEPENDS:append:class-nativesdk = " python3-native"
+
+# force to use the mutex+cond implementation (https://bugs.python.org/issue41710)
+CFLAGS += "-DHAVE_BROKEN_POSIX_SEMAPHORES"
 
 EXTRA_OECONF = " --without-ensurepip --enable-shared --with-platlibdir=${baselib}"
-EXTRA_OECONF_append_class-native = " --bindir=${bindir}/${PN}"
+EXTRA_OECONF:append:class-native = " --bindir=${bindir}/${PN}"
 
 export CROSSPYTHONPATH="${STAGING_LIBDIR_NATIVE}/python${PYTHON_MAJMIN}/lib-dynload/"
 
 EXTRANATIVEPATH += "python3-native"
 
 # LTO will be enabled via packageconfig depending upong distro features
-LTO_class-target = ""
+LTO:class-target = ""
 
 CACHED_CONFIGUREVARS = " \
                 ac_cv_file__dev_ptmx=yes \
@@ -98,9 +101,9 @@
     
     return ''
 
-PACKAGECONFIG_class-target ??= "readline ${@possibly_include_pgo(d)} gdbm ${@bb.utils.filter('DISTRO_FEATURES', 'lto', d)}"
-PACKAGECONFIG_class-native ??= "readline gdbm"
-PACKAGECONFIG_class-nativesdk ??= "readline gdbm"
+PACKAGECONFIG:class-target ??= "readline ${@possibly_include_pgo(d)} gdbm ${@bb.utils.filter('DISTRO_FEATURES', 'lto', d)}"
+PACKAGECONFIG:class-native ??= "readline gdbm"
+PACKAGECONFIG:class-nativesdk ??= "readline gdbm"
 PACKAGECONFIG[readline] = ",,readline"
 # Use profile guided optimisation by running PyBench inside qemu-user
 PACKAGECONFIG[pgo] = "--enable-optimizations,,qemu-native"
@@ -108,7 +111,7 @@
 PACKAGECONFIG[gdbm] = ",,gdbm"
 PACKAGECONFIG[lto] = "--with-lto,,"
 
-do_configure_prepend () {
+do_configure:prepend () {
     mkdir -p ${B}/Modules
     cat > ${B}/Modules/Setup.local << EOF
 *disabled*
@@ -117,7 +120,7 @@
 EOF
 }
 
-CPPFLAGS_append = " -I${STAGING_INCDIR}/ncursesw -I${STAGING_INCDIR}/uuid"
+CPPFLAGS:append = " -I${STAGING_INCDIR}/ncursesw -I${STAGING_INCDIR}/uuid"
 
 EXTRA_OEMAKE = '\
   STAGING_LIBDIR=${STAGING_LIBDIR} \
@@ -125,7 +128,7 @@
   LIB=${baselib} \
 '
 
-do_compile_prepend_class-target() {
+do_compile:prepend:class-target() {
        if ${@bb.utils.contains('PACKAGECONFIG', 'pgo', 'true', 'false', d)}; then
                 qemu_binary="${@qemu_wrapper_cmdline(d, '${STAGING_DIR_TARGET}', ['${B}', '${STAGING_DIR_TARGET}/${base_libdir}'])}"
                 cat >pgo-wrapper <<EOF
@@ -137,15 +140,15 @@
         fi
 }
 
-do_install_prepend() {
+do_install:prepend() {
         ${WORKDIR}/check_build_completeness.py ${T}/log.do_compile
 }
 
-do_install_append_class-target() {
+do_install:append:class-target() {
         oe_multilib_header python${PYTHON_MAJMIN}/pyconfig.h
 }
 
-do_install_append_class-native() {
+do_install:append:class-native() {
         # Make sure we use /usr/bin/env python
         for PYTHSCRIPT in `grep -rIl ${bindir}/${PN}/python ${D}${bindir}/${PN}`; do
                 sed -i -e '1s|^#!.*|#!/usr/bin/env python3|' $PYTHSCRIPT
@@ -157,7 +160,7 @@
         ln -s python3-native/python3 ${D}${bindir}/nativepython3
 }
 
-do_install_append() {
+do_install:append() {
         mkdir -p ${D}${libdir}/python-sysconfigdata
         sysconfigfile=`find ${D} -name _sysconfig*.py`
         cp $sysconfigfile ${D}${libdir}/python-sysconfigdata/_sysconfigdata.py
@@ -179,7 +182,7 @@
         rm ${D}${libdir}/python${PYTHON_MAJMIN}/test/__pycache__/test_xml_etree.cpython*
 }
 
-do_install_append_class-nativesdk () {
+do_install:append:class-nativesdk () {
     # Make sure we use /usr/bin/env python
     for PYTHSCRIPT in `grep -rIl ${bindir}/python ${D}${bindir}`; do
          sed -i -e '1s|^#!.*|#!/usr/bin/env python3|' $PYTHSCRIPT
@@ -257,7 +260,7 @@
         if pypackage not in rprovides:
               rprovides.append(pypackage)
 
-    d.setVar('RPROVIDES_class-native', ' '.join(rprovides))
+    d.setVar('RPROVIDES:class-native', ' '.join(rprovides))
 
     # Then work on the target
     include_pycs = d.getVar('INCLUDE_PYCS')
@@ -275,33 +278,33 @@
             newpackages.append(pypackage)
 
         # "Build" python's manifest FILES, RDEPENDS and SUMMARY
-        d.setVar('FILES_' + pypackage, '')
+        d.setVar('FILES:' + pypackage, '')
         for value in python_manifest[key]['files']:
-            d.appendVar('FILES_' + pypackage, ' ' + value)
+            d.appendVar('FILES:' + pypackage, ' ' + value)
 
         # Add cached files
         if include_pycs == '1':
             for value in python_manifest[key]['cached']:
-                    d.appendVar('FILES_' + pypackage, ' ' + value)
+                    d.appendVar('FILES:' + pypackage, ' ' + value)
 
         for value in python_manifest[key]['rdepends']:
             # Make it work with or without $PN
             if '${PN}' in value:
                 value=value.split('-', 1)[1]
-            d.appendVar('RDEPENDS_' + pypackage, ' ' + pn + '-' + value)
+            d.appendVar('RDEPENDS:' + pypackage, ' ' + pn + '-' + value)
 
         for value in python_manifest[key].get('rrecommends', ()):
             if '${PN}' in value:
                 value=value.split('-', 1)[1]
-            d.appendVar('RRECOMMENDS_' + pypackage, ' ' + pn + '-' + value)
+            d.appendVar('RRECOMMENDS:' + pypackage, ' ' + pn + '-' + value)
 
-        d.setVar('SUMMARY_' + pypackage, python_manifest[key]['summary'])
+        d.setVar('SUMMARY:' + pypackage, python_manifest[key]['summary'])
 
     # Prepending so to avoid python-misc getting everything
     packages = newpackages + packages
     d.setVar('PACKAGES', ' '.join(packages))
-    d.setVar('ALLOW_EMPTY_${PN}-modules', '1')
-    d.setVar('ALLOW_EMPTY_${PN}-pkgutil', '1')
+    d.setVar('ALLOW_EMPTY:${PN}-modules', '1')
+    d.setVar('ALLOW_EMPTY:${PN}-pkgutil', '1')
 }
 
 # Files needed to create a new manifest
@@ -326,30 +329,30 @@
 addtask do_create_manifest after do_patch do_prepare_recipe_sysroot
 
 # manual dependency additions
-RRECOMMENDS_${PN}-core_append_class-nativesdk = " nativesdk-python3-modules"
-RRECOMMENDS_${PN}-crypt_append_class-target = " ${MLPREFIX}openssl ${MLPREFIX}ca-certificates"
-RRECOMMENDS_${PN}-crypt_append_class-nativesdk = " ${MLPREFIX}openssl ${MLPREFIX}ca-certificates"
+RRECOMMENDS:${PN}-core:append:class-nativesdk = " nativesdk-python3-modules"
+RRECOMMENDS:${PN}-crypt:append:class-target = " ${MLPREFIX}openssl ${MLPREFIX}ca-certificates"
+RRECOMMENDS:${PN}-crypt:append:class-nativesdk = " ${MLPREFIX}openssl ${MLPREFIX}ca-certificates"
 
 # For historical reasons PN is empty and provided by python3-modules
-FILES_${PN} = ""
-RPROVIDES_${PN}-modules = "${PN}"
+FILES:${PN} = ""
+RPROVIDES:${PN}-modules = "${PN}"
 
-FILES_${PN}-pydoc += "${bindir}/pydoc${PYTHON_MAJMIN} ${bindir}/pydoc3"
-FILES_${PN}-idle += "${bindir}/idle3 ${bindir}/idle${PYTHON_MAJMIN}"
+FILES:${PN}-pydoc += "${bindir}/pydoc${PYTHON_MAJMIN} ${bindir}/pydoc3"
+FILES:${PN}-idle += "${bindir}/idle3 ${bindir}/idle${PYTHON_MAJMIN}"
 
 # provide python-pyvenv from python3-venv
-RPROVIDES_${PN}-venv += "${MLPREFIX}python3-pyvenv"
+RPROVIDES:${PN}-venv += "${MLPREFIX}python3-pyvenv"
 
 # package libpython3
 PACKAGES =+ "libpython3 libpython3-staticdev"
-FILES_libpython3 = "${libdir}/libpython*.so.*"
-FILES_libpython3-staticdev += "${libdir}/python${PYTHON_MAJMIN}/config-${PYTHON_MAJMIN}-*/libpython${PYTHON_MAJMIN}.a"
-INSANE_SKIP_${PN}-dev += "dev-elf"
-INSANE_SKIP_${PN}-ptest = "dev-deps"
+FILES:libpython3 = "${libdir}/libpython*.so.*"
+FILES:libpython3-staticdev += "${libdir}/python${PYTHON_MAJMIN}/config-${PYTHON_MAJMIN}-*/libpython${PYTHON_MAJMIN}.a"
+INSANE_SKIP:${PN}-dev += "dev-elf"
+INSANE_SKIP:${PN}-ptest = "dev-deps"
 
 # catch all the rest (unsorted)
 PACKAGES += "${PN}-misc"
-RDEPENDS_${PN}-misc += "\
+RDEPENDS:${PN}-misc += "\
   ${PN}-core \
   ${PN}-email \
   ${PN}-codecs \
@@ -358,26 +361,26 @@
   ${PN}-audio \
   ${PN}-numbers \
 "
-RDEPENDS_${PN}-modules_append_class-target = " ${MLPREFIX}python3-misc"
-RDEPENDS_${PN}-modules_append_class-nativesdk = " ${MLPREFIX}python3-misc"
-FILES_${PN}-misc = "${libdir}/python${PYTHON_MAJMIN} ${libdir}/python${PYTHON_MAJMIN}/lib-dynload"
+RDEPENDS:${PN}-modules:append:class-target = " ${MLPREFIX}python3-misc"
+RDEPENDS:${PN}-modules:append:class-nativesdk = " ${MLPREFIX}python3-misc"
+FILES:${PN}-misc = "${libdir}/python${PYTHON_MAJMIN} ${libdir}/python${PYTHON_MAJMIN}/lib-dynload"
 
 # catch manpage
 PACKAGES += "${PN}-man"
-FILES_${PN}-man = "${datadir}/man"
+FILES:${PN}-man = "${datadir}/man"
 
 # See https://bugs.python.org/issue18748 and https://bugs.python.org/issue37395
-RDEPENDS_libpython3_append_libc-glibc = " libgcc"
-RDEPENDS_${PN}-ctypes_append_libc-glibc = " ${MLPREFIX}ldconfig"
-RDEPENDS_${PN}-ptest = "${PN}-modules ${PN}-tests ${PN}-dev unzip bzip2 libgcc tzdata-europe coreutils sed"
-RDEPENDS_${PN}-ptest_append_libc-glibc = " locale-base-tr-tr.iso-8859-9"
-RDEPENDS_${PN}-tkinter += "${@bb.utils.contains('PACKAGECONFIG', 'tk', 'tk tk-lib', '', d)}"
-RDEPENDS_${PN}-idle += "${@bb.utils.contains('PACKAGECONFIG', 'tk', '${PN}-tkinter tcl', '', d)}"
-RDEPENDS_${PN}-dev = ""
-RDEPENDS_${PN}-pydoc += "${PN}-io"
+RDEPENDS:libpython3:append:libc-glibc = " libgcc"
+RDEPENDS:${PN}-ctypes:append:libc-glibc = " ${MLPREFIX}ldconfig"
+RDEPENDS:${PN}-ptest = "${PN}-modules ${PN}-tests ${PN}-dev unzip bzip2 libgcc tzdata-europe coreutils sed"
+RDEPENDS:${PN}-ptest:append:libc-glibc = " locale-base-tr-tr.iso-8859-9"
+RDEPENDS:${PN}-tkinter += "${@bb.utils.contains('PACKAGECONFIG', 'tk', 'tk tk-lib', '', d)}"
+RDEPENDS:${PN}-idle += "${@bb.utils.contains('PACKAGECONFIG', 'tk', '${PN}-tkinter tcl', '', d)}"
+RDEPENDS:${PN}-dev = ""
+RDEPENDS:${PN}-pydoc += "${PN}-io"
 
-RDEPENDS_${PN}-tests_append_class-target = " ${MLPREFIX}bash"
-RDEPENDS_${PN}-tests_append_class-nativesdk = " ${MLPREFIX}bash"
+RDEPENDS:${PN}-tests:append:class-target = " ${MLPREFIX}bash"
+RDEPENDS:${PN}-tests:append:class-nativesdk = " ${MLPREFIX}bash"
 
 # Python's tests contain large numbers of files we don't need in the recipe sysroots
 SYSROOT_PREPROCESS_FUNCS += " py3_sysroot_cleanup"
diff --git a/poky/meta/recipes-devtools/qemu/nativesdk-qemu-helper_1.0.bb b/poky/meta/recipes-devtools/qemu/nativesdk-qemu-helper_1.0.bb
index ca1ad96..08c5ca7 100644
--- a/poky/meta/recipes-devtools/qemu/nativesdk-qemu-helper_1.0.bb
+++ b/poky/meta/recipes-devtools/qemu/nativesdk-qemu-helper_1.0.bb
@@ -1,6 +1,6 @@
 SUMMARY = "Qemu helper scripts"
 LICENSE = "GPLv2"
-RDEPENDS_${PN} = "nativesdk-qemu \
+RDEPENDS:${PN} = "nativesdk-qemu \
                   nativesdk-python3-shell nativesdk-python3-fcntl nativesdk-python3-logging \
                 "
 
diff --git a/poky/meta/recipes-devtools/qemu/qemu-helper-native_1.0.bb b/poky/meta/recipes-devtools/qemu/qemu-helper-native_1.0.bb
index 2fc0766..ccf1c46 100644
--- a/poky/meta/recipes-devtools/qemu/qemu-helper-native_1.0.bb
+++ b/poky/meta/recipes-devtools/qemu/qemu-helper-native_1.0.bb
@@ -1,6 +1,6 @@
 SUMMARY = "Helper utilities needed by the runqemu script"
 LICENSE = "GPLv2"
-RDEPENDS_${PN} = "qemu-system-native"
+RDEPENDS:${PN} = "qemu-system-native"
 PR = "r1"
 
 LIC_FILES_CHKSUM = "file://${WORKDIR}/tunctl.c;endline=4;md5=ff3a09996bc5fff6bc5d4e0b4c28f999"
diff --git a/poky/meta/recipes-devtools/qemu/qemu-native.inc b/poky/meta/recipes-devtools/qemu/qemu-native.inc
index 54e49d8..5d3ba34 100644
--- a/poky/meta/recipes-devtools/qemu/qemu-native.inc
+++ b/poky/meta/recipes-devtools/qemu/qemu-native.inc
@@ -2,10 +2,10 @@
 
 inherit native
 
-EXTRA_OEMAKE_append = " LD='${LD}' AR='${AR}' OBJCOPY='${OBJCOPY}' LDFLAGS='${LDFLAGS}'"
+EXTRA_OEMAKE:append = " LD='${LD}' AR='${AR}' OBJCOPY='${OBJCOPY}' LDFLAGS='${LDFLAGS}'"
 
-LDFLAGS_append = " -fuse-ld=bfd"
+LDFLAGS:append = " -fuse-ld=bfd"
 
-do_install_append() {
+do_install:append() {
      ${@bb.utils.contains('PACKAGECONFIG', 'gtk+', 'make_qemu_wrapper', '', d)}
 }
diff --git a/poky/meta/recipes-devtools/qemu/qemu-native_6.0.0.bb b/poky/meta/recipes-devtools/qemu/qemu-native_6.0.0.bb
index d23d7a8..d9ef155 100644
--- a/poky/meta/recipes-devtools/qemu/qemu-native_6.0.0.bb
+++ b/poky/meta/recipes-devtools/qemu/qemu-native_6.0.0.bb
@@ -4,6 +4,6 @@
 
 require qemu-native.inc
 
-EXTRA_OECONF_append = " --target-list=${@get_qemu_usermode_target_list(d)} --disable-tools --disable-blobs --disable-guest-agent"
+EXTRA_OECONF:append = " --target-list=${@get_qemu_usermode_target_list(d)} --disable-tools --disable-blobs --disable-guest-agent"
 
 PACKAGECONFIG ??= "pie"
diff --git a/poky/meta/recipes-devtools/qemu/qemu-system-native_6.0.0.bb b/poky/meta/recipes-devtools/qemu/qemu-system-native_6.0.0.bb
index 9d7d0cd..1c12eb7 100644
--- a/poky/meta/recipes-devtools/qemu/qemu-system-native_6.0.0.bb
+++ b/poky/meta/recipes-devtools/qemu/qemu-system-native_6.0.0.bb
@@ -9,16 +9,16 @@
 # and avoid file clashes
 DEPENDS = "glib-2.0-native zlib-native pixman-native qemu-native bison-native"
 
-EXTRA_OECONF_append = " --target-list=${@get_qemu_system_target_list(d)}"
+EXTRA_OECONF:append = " --target-list=${@get_qemu_system_target_list(d)}"
 
 PACKAGECONFIG ??= "fdt alsa kvm pie \
     ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'virglrenderer glx', '', d)} \
 "
 
 # Handle distros such as CentOS 5 32-bit that do not have kvm support
-PACKAGECONFIG_remove = "${@'kvm' if not os.path.exists('/usr/include/linux/kvm.h') else ''}"
+PACKAGECONFIG:remove = "${@'kvm' if not os.path.exists('/usr/include/linux/kvm.h') else ''}"
 
-do_install_append() {
+do_install:append() {
     install -Dm 0755 ${WORKDIR}/powerpc_rom.bin ${D}${datadir}/qemu
 
     # The following is also installed by qemu-native
diff --git a/poky/meta/recipes-devtools/qemu/qemu.inc b/poky/meta/recipes-devtools/qemu/qemu.inc
index 33a8bae..4de8a90 100644
--- a/poky/meta/recipes-devtools/qemu/qemu.inc
+++ b/poky/meta/recipes-devtools/qemu/qemu.inc
@@ -6,7 +6,7 @@
 HOMEPAGE = "http://qemu.org"
 LICENSE = "GPLv2 & LGPLv2.1"
 
-RDEPENDS_${PN}-ptest = "bash"
+RDEPENDS:${PN}-ptest = "bash"
 
 require qemu-targets.inc
 inherit pkgconfig ptest
@@ -44,8 +44,8 @@
 
 SRC_URI[sha256sum] = "87bc1a471ca24b97e7005711066007d443423d19aacda3d442558ae032fa30b9"
 
-SRC_URI_append_class-target = " file://cross.patch"
-SRC_URI_append_class-nativesdk = " file://cross.patch"
+SRC_URI:append:class-target = " file://cross.patch"
+SRC_URI:append:class-nativesdk = " file://cross.patch"
 
 # Applies against virglrender < 0.6.0 and not qemu itself
 CVE_CHECK_WHITELIST += "CVE-2017-5957"
@@ -58,14 +58,14 @@
 # https://bugzilla.redhat.com/show_bug.cgi?id=1609015#c11
 CVE_CHECK_WHITELIST += "CVE-2018-18438"
 
-COMPATIBLE_HOST_mipsarchn32 = "null"
-COMPATIBLE_HOST_mipsarchn64 = "null"
+COMPATIBLE_HOST:mipsarchn32 = "null"
+COMPATIBLE_HOST:mipsarchn64 = "null"
 
 # Per https://lists.nongnu.org/archive/html/qemu-devel/2020-09/msg03873.html
 # upstream states qemu doesn't work without optimization
 DEBUG_BUILD = "0"
 
-do_install_append() {
+do_install:append() {
     # Prevent QA warnings about installed ${localstatedir}/run
     if [ -d ${D}${localstatedir}/run ]; then rmdir ${D}${localstatedir}/run; fi
 }
@@ -112,7 +112,7 @@
 
 #EXTRA_OECONF_append = " --python=${HOSTTOOLS_DIR}/python3"
 
-do_configure_prepend_class-native() {
+do_configure:prepend:class-native() {
 	# Append build host pkg-config paths for native target since the host may provide sdl
 	BHOST_PKGCONFIG_PATH=$(PATH=/usr/bin:/bin pkg-config --variable pc_path pkg-config || echo "")
 	if [ ! -z "$BHOST_PKGCONFIG_PATH" ]; then
@@ -136,7 +136,7 @@
 # This will trigger a MMU access fault in the virtual CPU. With this change,
 # the qemu-mips works fine.
 # IMPORTANT: This piece needs to be removed once the root cause is fixed!
-do_install_append() {
+do_install:append() {
 	if [ -e "${D}/${bindir}/qemu-mips" ]; then
 		create_wrapper ${D}/${bindir}/qemu-mips \
 			QEMU_RESERVED_VA=0x0
@@ -156,8 +156,8 @@
 }
 
 # Disable kvm/virgl/mesa on targets that do not support it
-PACKAGECONFIG_remove_darwin = "kvm virglrenderer glx gtk+"
-PACKAGECONFIG_remove_mingw32 = "kvm virglrenderer glx gtk+"
+PACKAGECONFIG:remove:darwin = "kvm virglrenderer glx gtk+"
+PACKAGECONFIG:remove:mingw32 = "kvm virglrenderer glx gtk+"
 
 PACKAGECONFIG[sdl] = "--enable-sdl,--disable-sdl,libsdl2"
 PACKAGECONFIG[virtfs] = "--enable-virtfs --enable-attr --enable-cap-ng,--disable-virtfs,libcap-ng attr,"
@@ -203,6 +203,6 @@
 PACKAGECONFIG[pie] = "--enable-pie,--disable-pie,,"
 PACKAGECONFIG[seccomp] = "--enable-seccomp,--disable-seccomp,libseccomp"
 
-INSANE_SKIP_${PN} = "arch"
+INSANE_SKIP:${PN} = "arch"
 
-FILES_${PN} += "${datadir}/icons"
+FILES:${PN} += "${datadir}/icons"
diff --git a/poky/meta/recipes-devtools/qemu/qemu_6.0.0.bb b/poky/meta/recipes-devtools/qemu/qemu_6.0.0.bb
index 90b135a..f8a816b 100644
--- a/poky/meta/recipes-devtools/qemu/qemu_6.0.0.bb
+++ b/poky/meta/recipes-devtools/qemu/qemu_6.0.0.bb
@@ -4,17 +4,17 @@
 
 # error: a parameter list without types is only allowed in a function definition
 #            void (*_function)(sigval_t);
-COMPATIBLE_HOST_libc-musl = 'null'
+COMPATIBLE_HOST:libc-musl = 'null'
 
 DEPENDS = "glib-2.0 zlib pixman bison-native ninja-native meson-native"
 
-RDEPENDS_${PN}_class-target += "bash"
+RDEPENDS:${PN}:class-target += "bash"
 
-EXTRA_OECONF_append_class-target = " --target-list=${@get_qemu_target_list(d)}"
-EXTRA_OECONF_append_class-target_mipsarcho32 = "${@bb.utils.contains('BBEXTENDCURR', 'multilib', ' --disable-capstone', '', d)}"
-EXTRA_OECONF_append_class-nativesdk = " --target-list=${@get_qemu_target_list(d)}"
+EXTRA_OECONF:append:class-target = " --target-list=${@get_qemu_target_list(d)}"
+EXTRA_OECONF:append:class-target:mipsarcho32 = "${@bb.utils.contains('BBEXTENDCURR', 'multilib', ' --disable-capstone', '', d)}"
+EXTRA_OECONF:append:class-nativesdk = " --target-list=${@get_qemu_target_list(d)}"
 
-do_install_append_class-nativesdk() {
+do_install:append:class-nativesdk() {
      ${@bb.utils.contains('PACKAGECONFIG', 'gtk+', 'make_qemu_wrapper', '', d)}
 }
 
@@ -24,6 +24,6 @@
     ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'virglrenderer glx', '', d)} \
     ${@bb.utils.filter('DISTRO_FEATURES', 'seccomp', d)} \
 "
-PACKAGECONFIG_class-nativesdk ??= "fdt sdl kvm pie \
+PACKAGECONFIG:class-nativesdk ??= "fdt sdl kvm pie \
     ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'virglrenderer glx', '', d)} \
 "
diff --git a/poky/meta/recipes-devtools/quilt/quilt.inc b/poky/meta/recipes-devtools/quilt/quilt.inc
index d7ecda7..f85de38 100644
--- a/poky/meta/recipes-devtools/quilt/quilt.inc
+++ b/poky/meta/recipes-devtools/quilt/quilt.inc
@@ -14,36 +14,36 @@
         file://0001-tests-Allow-different-output-from-mv.patch \
 "
 
-SRC_URI_append_class-target = " file://gnu_patch_test_fix_target.patch"
+SRC_URI:append:class-target = " file://gnu_patch_test_fix_target.patch"
 
 SRC_URI[md5sum] = "6800c2404a2c0598ab2eff92a636ba70"
 SRC_URI[sha256sum] = "314b319a6feb13bf9d0f9ffa7ce6683b06919e734a41275087ea457cc9dc6e07"
 
 inherit autotools-brokensep ptest
 
-INHIBIT_AUTOTOOLS_DEPS_class-native = "1"
-PATCHTOOL_class-native = "patch"
+INHIBIT_AUTOTOOLS_DEPS:class-native = "1"
+PATCHTOOL:class-native = "patch"
 
 CLEANBROKEN = "1"
 
 EXTRA_OECONF = "--with-perl='${USRBINPATH}/env perl' --with-patch=patch"
-EXTRA_OECONF_append_class-native = " --disable-nls"
+EXTRA_OECONF:append:class-native = " --disable-nls"
 EXTRA_AUTORECONF += "--exclude=aclocal"
 
 CACHED_CONFIGUREVARS += "ac_cv_path_BASH=/bin/bash ac_cv_path_COLUMN=column"
 
 # Make sure we don't have "-w" in shebang lines: it breaks using
 # "/usr/bin/env perl" as parser
-do_configure_prepend () {
+do_configure:prepend () {
 	find ${S} -name "*.in" -exec sed -i -e "1s,^#\!.*@PERL@ -w$,#\! @PERL@\nuse warnings;," {} \;
 }
 
 # Don't setup symlinks to host utilities, we don't need them
-do_configure_append () {
+do_configure:append () {
 	sed -e 's,^COMPAT_SYMLINKS.*:=.*,COMPAT_SYMLINKS	:=,' -i ${S}/Makefile
 }
 
-do_configure_class-native () {
+do_configure:class-native () {
     oe_runconf
 }
 
@@ -54,7 +54,7 @@
 	rm -rf ${D}/${datadir}/emacs
 }
 
-do_install_append_class-native () {
+do_install:append:class-native () {
     # Dummy quiltrc file for patch.bbclass
     install -d ${D}${sysconfdir}/
     touch ${D}${sysconfdir}/quiltrc
@@ -75,16 +75,16 @@
 
 PACKAGES += "guards guards-doc"
 
-FILES_${PN} = "${sysconfdir} ${datadir}/quilt \
+FILES:${PN} = "${sysconfdir} ${datadir}/quilt \
                ${bindir}/quilt ${libdir}/quilt"
-FILES_guards = "${bindir}/guards"
-FILES_${PN}-doc = "${mandir}/man1/quilt.1 ${docdir}/${BPN}"
-FILES_guards-doc = "${mandir}/man1/guards.1"
+FILES:guards = "${bindir}/guards"
+FILES:${PN}-doc = "${mandir}/man1/quilt.1 ${docdir}/${BPN}"
+FILES:guards-doc = "${mandir}/man1/guards.1"
 
-RDEPENDS_${PN} = "bash patch diffstat bzip2 util-linux less"
-RDEPENDS_${PN}_class-native = "diffstat-native patch-native bzip2-native"
+RDEPENDS:${PN} = "bash patch diffstat bzip2 util-linux less"
+RDEPENDS:${PN}:class-native = "diffstat-native patch-native bzip2-native"
 
-RDEPENDS_${PN}-ptest = "make file sed gawk diffutils findutils ed perl \
+RDEPENDS:${PN}-ptest = "make file sed gawk diffutils findutils ed perl \
                         perl-module-filehandle perl-module-getopt-std \
                         perl-module-posix perl-module-file-temp \
                         perl-module-text-parsewords perl-module-overloading \
diff --git a/poky/meta/recipes-devtools/rpm/rpm_4.16.1.3.bb b/poky/meta/recipes-devtools/rpm/rpm_4.16.1.3.bb
index 95a6f5c..189da92 100644
--- a/poky/meta/recipes-devtools/rpm/rpm_4.16.1.3.bb
+++ b/poky/meta/recipes-devtools/rpm/rpm_4.16.1.3.bb
@@ -5,16 +5,16 @@
 package consists of an archive of files along with information about \
 the package like its version, a description, etc."
 
-SUMMARY_${PN}-dev = "Development files for manipulating RPM packages"
-DESCRIPTION_${PN}-dev = "This package contains the RPM C library and header files. These \
+SUMMARY:${PN}-dev = "Development files for manipulating RPM packages"
+DESCRIPTION:${PN}-dev = "This package contains the RPM C library and header files. These \
 development files will simplify the process of writing programs that \
 manipulate RPM packages and databases. These files are intended to \
 simplify the process of creating graphical package managers or any \
 other tools that need an intimate knowledge of RPM packages in order \
 to function."
 
-SUMMARY_python3-rpm = "Python bindings for apps which will manupulate RPM packages"
-DESCRIPTION_python3-rpm = "The python3-rpm package contains a module that permits applications \
+SUMMARY:python3-rpm = "Python bindings for apps which will manupulate RPM packages"
+DESCRIPTION:python3-rpm = "The python3-rpm package contains a module that permits applications \
 written in the Python programming language to use the interface \
 supplied by the RPM Package Manager libraries."
 
@@ -48,7 +48,7 @@
 S = "${WORKDIR}/git"
 
 DEPENDS = "libgcrypt file popt xz bzip2 elfutils python3"
-DEPENDS_append_class-native = " file-replacement-native bzip2-replacement-native"
+DEPENDS:append:class-native = " file-replacement-native bzip2-replacement-native"
 
 inherit autotools gettext pkgconfig python3native
 export PYTHON_ABI
@@ -56,24 +56,24 @@
 AUTOTOOLS_AUXDIR = "${S}/build-aux"
 
 # OE-core patches autoreconf to additionally run gnu-configize, which fails with this recipe
-EXTRA_AUTORECONF_append = " --exclude=gnu-configize"
+EXTRA_AUTORECONF:append = " --exclude=gnu-configize"
 
-EXTRA_OECONF_append = " --without-lua --enable-python --with-crypto=libgcrypt"
-EXTRA_OECONF_append_libc-musl = " --disable-nls --disable-openmp"
+EXTRA_OECONF:append = " --without-lua --enable-python --with-crypto=libgcrypt"
+EXTRA_OECONF:append:libc-musl = " --disable-nls --disable-openmp"
 
 # --sysconfdir prevents rpm from attempting to access machine-specific configuration in sysroot/etc; we need to have it in rootfs
 # --localstatedir prevents rpm from writing its database to native sysroot when building images
 # Forcibly disable plugins for native/nativesdk, as the inhibit and prioreset
 # plugins both behave badly inside builds.
-EXTRA_OECONF_append_class-native = " --sysconfdir=/etc --localstatedir=/var --disable-plugins"
-EXTRA_OECONF_append_class-nativesdk = " --sysconfdir=/etc --disable-plugins"
+EXTRA_OECONF:append:class-native = " --sysconfdir=/etc --localstatedir=/var --disable-plugins"
+EXTRA_OECONF:append:class-nativesdk = " --sysconfdir=/etc --disable-plugins"
 
 BBCLASSEXTEND = "native nativesdk"
 
 PACKAGECONFIG ??= "bdb ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'inhibit', '', d)}"
 # The inhibit plugin serves no purpose outside of the target
-PACKAGECONFIG_remove_class-native = "inhibit"
-PACKAGECONFIG_remove_class-nativesdk = "inhibit"
+PACKAGECONFIG:remove:class-native = "inhibit"
+PACKAGECONFIG:remove:class-nativesdk = "inhibit"
 
 PACKAGECONFIG[bdb] = "--enable-bdb,--disable-bdb,db"
 PACKAGECONFIG[imaevm] = "--with-imaevm,,ima-evm-utils"
@@ -98,11 +98,11 @@
    ${libdir}/rpm/rpmdeps \
 "
 
-do_configure_prepend() {
+do_configure:prepend() {
         mkdir -p ${S}/build-aux
 }
 
-do_install_append_class-native() {
+do_install:append:class-native() {
         for tool in ${WRAPPER_TOOLS}; do
                 test -x ${D}$tool && create_wrapper ${D}$tool \
                         RPM_CONFIGDIR=${STAGING_LIBDIR_NATIVE}/rpm \
@@ -112,7 +112,7 @@
         done
 }
 
-do_install_append_class-nativesdk() {
+do_install:append:class-nativesdk() {
         for tool in ${WRAPPER_TOOLS}; do
                 test -x ${D}$tool && create_wrapper ${D}$tool \
                         RPM_CONFIGDIR='`dirname $''realpath`'/${@os.path.relpath(d.getVar('libdir'), d.getVar('bindir'))}/rpm \
@@ -128,11 +128,11 @@
 }
 
 # Rpm's make install creates var/tmp which clashes with base-files packaging
-do_install_append_class-target() {
+do_install:append:class-target() {
     rm -rf ${D}/var
 }
 
-do_install_append () {
+do_install:append () {
 	sed -i -e 's:${HOSTTOOLS_DIR}/::g' \
 	    ${D}/${libdir}/rpm/macros
 
@@ -140,17 +140,17 @@
 	    ${D}${libdir}/rpm/pythondistdeps.py
 }
 
-FILES_${PN} += "${libdir}/rpm-plugins/*.so \
+FILES:${PN} += "${libdir}/rpm-plugins/*.so \
                "
-FILES_${PN}_append_class-nativesdk = " ${SDKPATHNATIVE}/environment-setup.d/rpm.sh"
+FILES:${PN}:append:class-nativesdk = " ${SDKPATHNATIVE}/environment-setup.d/rpm.sh"
 
-FILES_${PN}-dev += "${libdir}/rpm-plugins/*.la \
+FILES:${PN}-dev += "${libdir}/rpm-plugins/*.la \
                     "
 PACKAGE_BEFORE_PN += "${PN}-build ${PN}-sign ${PN}-archive"
 
-RRECOMMENDS_${PN} += "rpm-build rpm-sign rpm-archive"
+RRECOMMENDS:${PN} += "rpm-sign rpm-archive"
 
-FILES_${PN}-build = "\
+FILES:${PN}-build = "\
     ${bindir}/rpmbuild \
     ${bindir}/gendiff \
     ${bindir}/rpmspec \
@@ -172,20 +172,20 @@
     ${libdir}/rpm/fileattrs/* \
 "
 
-FILES_${PN}-sign = "\
+FILES:${PN}-sign = "\
     ${bindir}/rpmsign \
     ${libdir}/librpmsign.so.* \
 "
 
-FILES_${PN}-archive = "\
+FILES:${PN}-archive = "\
     ${bindir}/rpm2archive \
 "
 
 PACKAGES += "python3-rpm"
 PROVIDES += "python3-rpm"
-FILES_python3-rpm = "${PYTHON_SITEPACKAGES_DIR}/rpm/*"
+FILES:python3-rpm = "${PYTHON_SITEPACKAGES_DIR}/rpm/*"
 
-RDEPENDS_${PN}-build = "bash perl python3-core"
+RDEPENDS:${PN}-build = "bash perl python3-core"
 
 PACKAGE_PREPROCESS_FUNCS += "rpm_package_preprocess"
 
diff --git a/poky/meta/recipes-devtools/rsync/rsync_3.2.3.bb b/poky/meta/recipes-devtools/rsync/rsync_3.2.3.bb
index cb18667..b6d0772 100644
--- a/poky/meta/recipes-devtools/rsync/rsync_3.2.3.bb
+++ b/poky/meta/recipes-devtools/rsync/rsync_3.2.3.bb
@@ -45,15 +45,15 @@
 
 # rsync 3.0 uses configure.sh instead of configure, and
 # makefile checks the existence of configure.sh
-do_configure_prepend () {
+do_configure:prepend () {
 	rm -f ${S}/configure ${S}/configure.sh
 }
 
-do_configure_append () {
+do_configure:append () {
 	cp -f ${S}/configure ${S}/configure.sh
 }
 
-do_install_append() {
+do_install:append() {
 	install -d ${D}${sysconfdir}
 	install -m 0644 ${WORKDIR}/rsyncd.conf ${D}${sysconfdir}
 }
diff --git a/poky/meta/recipes-devtools/ruby/ruby.inc b/poky/meta/recipes-devtools/ruby/ruby.inc
index 1cede8d..c953a27 100644
--- a/poky/meta/recipes-devtools/ruby/ruby.inc
+++ b/poky/meta/recipes-devtools/ruby/ruby.inc
@@ -14,7 +14,7 @@
                     "
 
 DEPENDS = "ruby-native zlib openssl libyaml gdbm readline libffi"
-DEPENDS_class-native = "openssl-native libyaml-native readline-native zlib-native"
+DEPENDS:class-native = "openssl-native libyaml-native readline-native zlib-native"
 
 SHRT_VER = "${@oe.utils.trim_version("${PV}", 2)}"
 SRC_URI = "http://cache.ruby-lang.org/pub/ruby/${SHRT_VER}/ruby-${PV}.tar.gz \
@@ -33,7 +33,7 @@
 # that the libraries aren't available and hence that the extension can't be
 # built.
 
-do_configure_prepend() {
+do_configure:prepend() {
     sed -i "s#%%TARGET_CFLAGS%%#$CFLAGS#; s#%%TARGET_LDFLAGS%%#$LDFLAGS#" ${S}/common.mk
     rm -rf ${S}/ruby/
 }
diff --git a/poky/meta/recipes-devtools/ruby/ruby_3.0.2.bb b/poky/meta/recipes-devtools/ruby/ruby_3.0.2.bb
index f88e874..a082735 100644
--- a/poky/meta/recipes-devtools/ruby/ruby_3.0.2.bb
+++ b/poky/meta/recipes-devtools/ruby/ruby_3.0.2.bb
@@ -1,6 +1,6 @@
 require ruby.inc
 
-DEPENDS_append_libc-musl = " libucontext"
+DEPENDS:append:libc-musl = " libucontext"
 
 SRC_URI += " \
            file://remove_has_include_macros.patch \
@@ -26,16 +26,16 @@
     --with-pkg-config=pkg-config \
 "
 
-EXTRA_OECONF_append_libc-musl = "\
+EXTRA_OECONF:append:libc-musl = "\
     LIBS='-lucontext' \
     ac_cv_func_isnan=yes \
     ac_cv_func_isinf=yes \
 "
 
-EXTRA_OECONF_append_libc-musl_riscv64 = "\
+EXTRA_OECONF:append:libc-musl:riscv64 = "\
     --with-coroutine=copy \
 "
-EXTRA_OECONF_append_libc-musl_riscv32 = "\
+EXTRA_OECONF:append:libc-musl:riscv32 = "\
     --with-coroutine=copy \
 "
 
@@ -43,7 +43,7 @@
     oe_runmake 'DESTDIR=${D}' install
 }
 
-do_install_append_class-target () {
+do_install:append:class-target () {
     # Find out rbconfig.rb from .installed.list
     rbconfig_rb=`grep rbconfig.rb ${B}/.installed.list`
     # Remove build host directories
@@ -80,17 +80,17 @@
 
 PACKAGES =+ "${PN}-ri-docs ${PN}-rdoc"
 
-SUMMARY_${PN}-ri-docs = "ri (Ruby Interactive) documentation for the Ruby standard library"
-RDEPENDS_${PN}-ri-docs = "${PN}"
-FILES_${PN}-ri-docs += "${datadir}/ri"
+SUMMARY:${PN}-ri-docs = "ri (Ruby Interactive) documentation for the Ruby standard library"
+RDEPENDS:${PN}-ri-docs = "${PN}"
+FILES:${PN}-ri-docs += "${datadir}/ri"
 
-SUMMARY_${PN}-rdoc = "RDoc documentation generator from Ruby source"
-RDEPENDS_${PN}-rdoc = "${PN}"
-FILES_${PN}-rdoc += "${libdir}/ruby/*/rdoc ${bindir}/rdoc"
+SUMMARY:${PN}-rdoc = "RDoc documentation generator from Ruby source"
+RDEPENDS:${PN}-rdoc = "${PN}"
+FILES:${PN}-rdoc += "${libdir}/ruby/*/rdoc ${bindir}/rdoc"
 
-FILES_${PN} += "${datadir}/rubygems"
+FILES:${PN} += "${datadir}/rubygems"
 
-FILES_${PN}-ptest_append_class-target = "\
+FILES:${PN}-ptest:append:class-target = "\
     ${libdir}/ruby/include \
     ${libdir}/ruby/${SHRT_VER}.0/*/-test- \
 "
diff --git a/poky/meta/recipes-devtools/run-postinsts/run-postinsts_1.0.bb b/poky/meta/recipes-devtools/run-postinsts/run-postinsts_1.0.bb
index c353d4b..deddf11 100644
--- a/poky/meta/recipes-devtools/run-postinsts/run-postinsts_1.0.bb
+++ b/poky/meta/recipes-devtools/run-postinsts/run-postinsts_1.0.bb
@@ -16,7 +16,7 @@
 INITSCRIPT_NAME = "run-postinsts"
 INITSCRIPT_PARAMS = "start 99 S ."
 
-SYSTEMD_SERVICE_${PN} = "run-postinsts.service"
+SYSTEMD_SERVICE:${PN} = "run-postinsts.service"
 
 do_configure() {
 	:
diff --git a/poky/meta/recipes-devtools/squashfs-tools/squashfs-tools_git.bb b/poky/meta/recipes-devtools/squashfs-tools/squashfs-tools_git.bb
index 137e509..1a9e8f1 100644
--- a/poky/meta/recipes-devtools/squashfs-tools/squashfs-tools_git.bb
+++ b/poky/meta/recipes-devtools/squashfs-tools/squashfs-tools_git.bb
@@ -37,9 +37,9 @@
 	install -m 0644 "${S}"/squashfs_fs.h "${D}${includedir}"
 }
 
-ARM_INSTRUCTION_SET_armv4 = "arm"
-ARM_INSTRUCTION_SET_armv5 = "arm"
-ARM_INSTRUCTION_SET_armv6 = "arm"
+ARM_INSTRUCTION_SET:armv4 = "arm"
+ARM_INSTRUCTION_SET:armv5 = "arm"
+ARM_INSTRUCTION_SET:armv6 = "arm"
 
 BBCLASSEXTEND = "native nativesdk"
 
diff --git a/poky/meta/recipes-devtools/strace/strace/Makefile-ptest.patch b/poky/meta/recipes-devtools/strace/strace/Makefile-ptest.patch
index 4cef0c0..9af7737 100644
--- a/poky/meta/recipes-devtools/strace/strace/Makefile-ptest.patch
+++ b/poky/meta/recipes-devtools/strace/strace/Makefile-ptest.patch
@@ -1,4 +1,4 @@
-From 205e7661822987825c7149ada4eefdc5368828ce Mon Sep 17 00:00:00 2001
+From 1f50e0a09d828be8f5b1f28db9af0b12492a1553 Mon Sep 17 00:00:00 2001
 From: Gabriel Barbu <gabriel.barbu@enea.com>
 Date: Thu, 25 Jul 2013 15:28:33 +0200
 Subject: [PATCH] strace: Add ptest
@@ -14,7 +14,7 @@
  1 file changed, 20 insertions(+)
 
 diff --git a/tests/Makefile.am b/tests/Makefile.am
-index b8efce8..fa9a1af 100644
+index 55566ee..a7ae6f9 100644
 --- a/tests/Makefile.am
 +++ b/tests/Makefile.am
 @@ -16,6 +16,7 @@ SIZEOF_LONG = @SIZEOF_LONG@
@@ -23,9 +23,9 @@
  ARCH_MFLAGS =
 +TEST_SUITE_LOG = test-suite.log
  AM_CFLAGS = $(WARN_CFLAGS)
- AM_CPPFLAGS = $(ARCH_MFLAGS) \
- 	      -I$(builddir) \
-@@ -692,3 +693,22 @@ BUILT_SOURCES = ksysent.h
+ bundled_CPPFLAGS =
+ if USE_BUNDLED_HEADERS
+@@ -703,3 +704,22 @@ BUILT_SOURCES = ksysent.h
  CLEANFILES = ksysent.h
  
  include ../src/scno.am
diff --git a/poky/meta/recipes-devtools/strace/strace_5.12.bb b/poky/meta/recipes-devtools/strace/strace_5.13.bb
similarity index 87%
rename from poky/meta/recipes-devtools/strace/strace_5.12.bb
rename to poky/meta/recipes-devtools/strace/strace_5.13.bb
index 6a89965..7d93f2d 100644
--- a/poky/meta/recipes-devtools/strace/strace_5.12.bb
+++ b/poky/meta/recipes-devtools/strace/strace_5.13.bb
@@ -15,11 +15,11 @@
            file://uintptr_t.patch \
            file://0001-strace-fix-reproducibilty-issues.patch \
            "
-SRC_URI[sha256sum] = "29171edf9d252f89c988a4c340dfdec662f458cb8c63d85431d64bab5911e7c4"
+SRC_URI[sha256sum] = "5acc34888b9d510ad6ac915d4a8df08f51cf1ae920ea24649f6a4bb984d0b656"
 
 inherit autotools ptest
 
-PACKAGECONFIG_class-target ??= "\
+PACKAGECONFIG:class-target ??= "\
     ${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluez', '', d)} \
 "
 
@@ -28,7 +28,7 @@
 
 EXTRA_OECONF += "--enable-mpers=no --disable-gcc-Werror"
 
-CFLAGS_append_libc-musl = " -Dsigcontext_struct=sigcontext"
+CFLAGS:append:libc-musl = " -Dsigcontext_struct=sigcontext"
 
 TESTDIR = "tests"
 PTEST_BUILD_HOST_PATTERN = "^(DEB_CHANGELOGTIME|RPM_CHANGELOGTIME|WARN_CFLAGS_FOR_BUILD|LDFLAGS_FOR_BUILD)"
@@ -46,9 +46,9 @@
         sed -i -e '/^src/s/strace.*[0-9]/ptest/' ${D}/${PTEST_PATH}/${TESTDIR}/Makefile
 }
 
-RDEPENDS_${PN}-ptest += "make coreutils grep gawk sed"
+RDEPENDS:${PN}-ptest += "make coreutils grep gawk sed"
 
-RDEPENDS_${PN}-ptest_append_libc-glibc = "\
+RDEPENDS:${PN}-ptest:append:libc-glibc = "\
      locale-base-en-us.iso-8859-1 \
 "
 
diff --git a/poky/meta/recipes-devtools/subversion/subversion_1.14.1.bb b/poky/meta/recipes-devtools/subversion/subversion_1.14.1.bb
index 0f8a764..87dc359 100644
--- a/poky/meta/recipes-devtools/subversion/subversion_1.14.1.bb
+++ b/poky/meta/recipes-devtools/subversion/subversion_1.14.1.bb
@@ -6,7 +6,7 @@
 LIC_FILES_CHKSUM = "file://LICENSE;md5=6487ae7094d359fa90fb9c4096e52e2b"
 
 DEPENDS = "apr-util serf sqlite3 file lz4"
-DEPENDS_append_class-native = " file-replacement-native"
+DEPENDS:append:class-native = " file-replacement-native"
 
 SRC_URI = "${APACHE_MIRROR}/${BPN}/${BPN}-${PV}.tar.bz2 \
            file://disable_macos.patch \
@@ -44,7 +44,7 @@
 CPPFLAGS += "-P"
 BUILD_CPPFLAGS += "-P"
 
-do_configure_prepend () {
+do_configure:prepend () {
 	rm -f ${S}/libtool
 	rm -f ${S}/build/libtool.m4 ${S}/build/ltmain.sh ${S}/build/ltoptions.m4 ${S}/build/ltsugar.m4 ${S}/build/ltversion.m4 ${S}/build/lt~obsolete.m4
 	rm -f ${S}/aclocal.m4
@@ -58,6 +58,6 @@
 #| make: *** [install-serf-lib] Error 1
 PARALLEL_MAKEINST = ""
 
-RDEPENDS_${PN} = "serf"
+RDEPENDS:${PN} = "serf"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/swig/swig.inc b/poky/meta/recipes-devtools/swig/swig.inc
index 292bca3..eb8d723 100644
--- a/poky/meta/recipes-devtools/swig/swig.inc
+++ b/poky/meta/recipes-devtools/swig/swig.inc
@@ -49,11 +49,11 @@
 
 # necessary together with bison dependency until a new upstream version after
 # 3.0.12 includes 0001-Fix-generated-code-for-constant-expressions-containi.patch
-do_configure_append() {
+do_configure:append() {
     mkdir -p ${B}/Source/CParse
 }
 
-do_install_append_class-nativesdk() {
+do_install:append:class-nativesdk() {
     cd ${D}${bindir}
     ln -s swig swig2.0
 }
@@ -62,6 +62,6 @@
     swiglib = d.getVar('datadir') + "/" + d.getVar('BPN') + "/" + d.getVar('PV')
     return os.path.relpath(swiglib, d.getVar('bindir'))
 
-do_install_append_class-native() {
+do_install:append:class-native() {
     create_wrapper ${D}${bindir}/swig SWIG_LIB='`dirname $''realpath`'/${@swiglib_relpath(d)}
 }
diff --git a/poky/meta/recipes-devtools/syslinux/syslinux_6.04-pre2.bb b/poky/meta/recipes-devtools/syslinux/syslinux_6.04-pre2.bb
index dadba9e..0dd18d7 100644
--- a/poky/meta/recipes-devtools/syslinux/syslinux_6.04-pre2.bb
+++ b/poky/meta/recipes-devtools/syslinux/syslinux_6.04-pre2.bb
@@ -36,11 +36,11 @@
 UPSTREAM_VERSION_UNKNOWN = "1"
 
 # We can build the native parts anywhere, but the target has to be x86
-COMPATIBLE_HOST_class-target = '(x86_64|i.86).*-(linux|freebsd.*)'
+COMPATIBLE_HOST:class-target = '(x86_64|i.86).*-(linux|freebsd.*)'
 
 # Don't let the sanity checker trip on the 32 bit real mode BIOS binaries
-INSANE_SKIP_${PN}-misc = "arch"
-INSANE_SKIP_${PN}-chain = "arch"
+INSANE_SKIP:${PN}-misc = "arch"
+INSANE_SKIP:${PN}-chain = "arch"
 
 # When building the installer, CC is used to link. When building the bootloader,
 # LD is used. However, these variables assume that GCC is used and break the
@@ -49,7 +49,7 @@
 SECURITY_LDFLAGS = ""
 LDFLAGS_SECTION_REMOVAL = ""
 
-CFLAGS_append = " -DNO_INLINE_FUNCS"
+CFLAGS:append = " -DNO_INLINE_FUNCS"
 
 EXTRA_OEMAKE = " \
 	BINDIR=${bindir} SBINDIR=${sbindir} LIBDIR=${libdir} \
@@ -87,17 +87,17 @@
 #
 # Tasks for target which ship the precompiled bootloader and installer
 #
-do_configure_class-target() {
+do_configure:class-target() {
 	# No need to do anything as we're mostly shipping the precompiled binaries
 	:
 }
 
-do_compile_class-target() {
+do_compile:class-target() {
 	# No need to do anything as we're mostly shipping the precompiled binaries
 	:
 }
 
-do_install_class-target() {
+do_install:class-target() {
 	oe_runmake firmware="bios" install INSTALLROOT="${D}"
 
 	install -d ${D}${datadir}/syslinux/
@@ -107,19 +107,19 @@
 
 PACKAGES += "${PN}-nomtools ${PN}-extlinux ${PN}-mbr ${PN}-chain ${PN}-pxelinux ${PN}-isolinux ${PN}-misc"
 
-RDEPENDS_${PN} += "mtools"
-RDEPENDS_${PN}-nomtools += "libext2fs"
-RDEPENDS_${PN}-misc += "perl"
+RDEPENDS:${PN} += "mtools"
+RDEPENDS:${PN}-nomtools += "libext2fs"
+RDEPENDS:${PN}-misc += "perl"
 
-FILES_${PN} = "${bindir}/syslinux"
-FILES_${PN}-nomtools = "${bindir}/syslinux-nomtools"
-FILES_${PN}-extlinux = "${sbindir}/extlinux"
-FILES_${PN}-mbr = "${datadir}/${BPN}/mbr.bin"
-FILES_${PN}-chain = "${datadir}/${BPN}/chain.c32"
-FILES_${PN}-isolinux = "${datadir}/${BPN}/isolinux.bin"
-FILES_${PN}-pxelinux = "${datadir}/${BPN}/pxelinux.0"
-FILES_${PN}-dev += "${datadir}/${BPN}/com32/lib*${SOLIBS} ${datadir}/${BPN}/com32/include ${datadir}/${BPN}/com32/com32.ld"
-FILES_${PN}-staticdev += "${datadir}/${BPN}/com32/lib*.a ${libdir}/${BPN}/com32/lib*.a"
-FILES_${PN}-misc = "${datadir}/${BPN}/* ${libdir}/${BPN}/* ${bindir}/*"
+FILES:${PN} = "${bindir}/syslinux"
+FILES:${PN}-nomtools = "${bindir}/syslinux-nomtools"
+FILES:${PN}-extlinux = "${sbindir}/extlinux"
+FILES:${PN}-mbr = "${datadir}/${BPN}/mbr.bin"
+FILES:${PN}-chain = "${datadir}/${BPN}/chain.c32"
+FILES:${PN}-isolinux = "${datadir}/${BPN}/isolinux.bin"
+FILES:${PN}-pxelinux = "${datadir}/${BPN}/pxelinux.0"
+FILES:${PN}-dev += "${datadir}/${BPN}/com32/lib*${SOLIBS} ${datadir}/${BPN}/com32/include ${datadir}/${BPN}/com32/com32.ld"
+FILES:${PN}-staticdev += "${datadir}/${BPN}/com32/lib*.a ${libdir}/${BPN}/com32/lib*.a"
+FILES:${PN}-misc = "${datadir}/${BPN}/* ${libdir}/${BPN}/* ${bindir}/*"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/systemd-bootchart/systemd-bootchart_234.bb b/poky/meta/recipes-devtools/systemd-bootchart/systemd-bootchart_234.bb
index 905a0cb..fd6f17b 100644
--- a/poky/meta/recipes-devtools/systemd-bootchart/systemd-bootchart_234.bb
+++ b/poky/meta/recipes-devtools/systemd-bootchart/systemd-bootchart_234.bb
@@ -14,7 +14,7 @@
            file://no_lto.patch \
 "
 
-SRC_URI_append_libc-musl = " \
+SRC_URI:append:libc-musl = " \
     file://0001-comparison_fn_t-is-glibc-specific-use-raw-signature-.patch \
     file://0002-musl-does-not-provide-printf-h.patch \
     file://0003-musl-does-not-provide-canonicalize_file_name.patch \
@@ -31,14 +31,14 @@
 
 REQUIRED_DISTRO_FEATURES = "systemd"
 
-SYSTEMD_SERVICE_${PN} = "systemd-bootchart.service"
+SYSTEMD_SERVICE:${PN} = "systemd-bootchart.service"
 
-do_configure_prepend() {
+do_configure:prepend() {
     # intltool.m4 is a soft link to /usr/share/aclocal/m4, delete it and use the one in our sysroot
     rm -f ${S}/m4/intltool.m4
 }
 
-FILES_${PN} += "${systemd_unitdir}/systemd-bootchart"
+FILES:${PN} += "${systemd_unitdir}/systemd-bootchart"
 
 EXTRA_OECONF = " --with-rootprefix=${root_prefix} \
                  --with-rootlibdir=${base_libdir}"
diff --git a/poky/meta/recipes-devtools/tcf-agent/tcf-agent_git.bb b/poky/meta/recipes-devtools/tcf-agent/tcf-agent_git.bb
index 87369c4..48e6e02 100644
--- a/poky/meta/recipes-devtools/tcf-agent/tcf-agent_git.bb
+++ b/poky/meta/recipes-devtools/tcf-agent/tcf-agent_git.bb
@@ -19,13 +19,13 @@
           "
 
 DEPENDS = "util-linux openssl"
-RDEPENDS_${PN} = "bash"
+RDEPENDS:${PN} = "bash"
 
 S = "${WORKDIR}/git/agent"
 
 inherit update-rc.d systemd
 
-SYSTEMD_SERVICE_${PN} = "tcf-agent.service"
+SYSTEMD_SERVICE:${PN} = "tcf-agent.service"
 
 INITSCRIPT_NAME = "tcf-agent"
 INITSCRIPT_PARAMS = "start 99 3 5 . stop 20 0 1 2 6 ."
@@ -43,14 +43,14 @@
 
 # These features don't compile for several cases.
 #
-CFLAGS_append_arc = " ${LCL_STOP_SERVICES}"
-CFLAGS_append_mips = " ${LCL_STOP_SERVICES}"
-CFLAGS_append_mips64 = " ${LCL_STOP_SERVICES}"
-CFLAGS_append_libc-musl = " ${LCL_STOP_SERVICES}"
-CFLAGS_append_powerpc64 = " ${LCL_STOP_SERVICES}"
-CFLAGS_append_powerpc64le = " ${LCL_STOP_SERVICES}"
-CFLAGS_append_riscv64 = " ${LCL_STOP_SERVICES}"
-CFLAGS_append_riscv32 = " ${LCL_STOP_SERVICES}"
+CFLAGS:append:arc = " ${LCL_STOP_SERVICES}"
+CFLAGS:append:mips = " ${LCL_STOP_SERVICES}"
+CFLAGS:append:mips64 = " ${LCL_STOP_SERVICES}"
+CFLAGS:append:libc-musl = " ${LCL_STOP_SERVICES}"
+CFLAGS:append:powerpc64 = " ${LCL_STOP_SERVICES}"
+CFLAGS:append:powerpc64le = " ${LCL_STOP_SERVICES}"
+CFLAGS:append:riscv64 = " ${LCL_STOP_SERVICES}"
+CFLAGS:append:riscv32 = " ${LCL_STOP_SERVICES}"
 
 do_install() {
 	oe_runmake install INSTALLROOT=${D}
diff --git a/poky/meta/recipes-devtools/tcltk/tcl_8.6.11.bb b/poky/meta/recipes-devtools/tcltk/tcl_8.6.11.bb
index 8d58faf..1e91f08 100644
--- a/poky/meta/recipes-devtools/tcltk/tcl_8.6.11.bb
+++ b/poky/meta/recipes-devtools/tcltk/tcl_8.6.11.bb
@@ -27,7 +27,7 @@
 "
 SRC_URI[sha256sum] = "cfb49aab82bd179651e23eeeb69606f51b0ddc575ca55c3d35e2457469024cfa"
 
-SRC_URI_class-native = "${BASE_SRC_URI}"
+SRC_URI:class-native = "${BASE_SRC_URI}"
 
 UPSTREAM_CHECK_REGEX = "tcl(?P<pver>\d+(\.\d+)+)-src"
 
@@ -59,13 +59,13 @@
 SYSROOT_DIRS += "${bindir_crossscripts}"
 
 PACKAGES =+ "tcl-lib"
-FILES_tcl-lib = "${libdir}/libtcl8.6.so.*"
-FILES_${PN} += "${libdir}/tcl${VER} ${libdir}/tcl8.6 ${libdir}/tcl8"
-FILES_${PN}-dev += "${libdir}/tclConfig.sh ${libdir}/tclooConfig.sh"
+FILES:tcl-lib = "${libdir}/libtcl8.6.so.*"
+FILES:${PN} += "${libdir}/tcl${VER} ${libdir}/tcl8.6 ${libdir}/tcl8"
+FILES:${PN}-dev += "${libdir}/tclConfig.sh ${libdir}/tclooConfig.sh"
 
 # isn't getting picked up by shlibs code
-RDEPENDS_${PN} += "tcl-lib"
-RDEPENDS_${PN}-ptest += "libgcc"
+RDEPENDS:${PN} += "tcl-lib"
+RDEPENDS:${PN}-ptest += "libgcc"
 
 BBCLASSEXTEND = "native nativesdk"
 
diff --git a/poky/meta/recipes-devtools/unfs3/unfs3_git.bb b/poky/meta/recipes-devtools/unfs3/unfs3_git.bb
index f9bae72..2bc7a92 100644
--- a/poky/meta/recipes-devtools/unfs3/unfs3_git.bb
+++ b/poky/meta/recipes-devtools/unfs3/unfs3_git.bb
@@ -9,7 +9,7 @@
 
 DEPENDS = "flex-native bison-native flex"
 DEPENDS += "libtirpc"
-DEPENDS_append_class-nativesdk = " flex-nativesdk"
+DEPENDS:append:class-nativesdk = " flex-nativesdk"
 
 ASNEEDED = ""
 
@@ -35,9 +35,9 @@
 BBCLASSEXTEND = "native nativesdk"
 
 inherit autotools
-EXTRA_OECONF_append_class-native = " --sbindir=${bindir}"
-CFLAGS_append = " -I${STAGING_INCDIR}/tirpc"
-EXTRA_OECONF_append = " LIBS=-ltirpc"
+EXTRA_OECONF:append:class-native = " --sbindir=${bindir}"
+CFLAGS:append = " -I${STAGING_INCDIR}/tirpc"
+EXTRA_OECONF:append = " LIBS=-ltirpc"
 
 # Turn off these header detects else the inode search
 # will walk entire file systems and this is a real problem
diff --git a/poky/meta/recipes-devtools/vala/vala.inc b/poky/meta/recipes-devtools/vala/vala.inc
index 71da2ef..1a11157 100644
--- a/poky/meta/recipes-devtools/vala/vala.inc
+++ b/poky/meta/recipes-devtools/vala/vala.inc
@@ -8,10 +8,10 @@
 # Appending libxslt-native to dependencies has an effect
 # of rebuilding the manual, which is very slow. Let's do this
 # only when api-documentation distro feature is enabled.
-DEPENDS_append_class-target = " ${@bb.utils.contains('DISTRO_FEATURES', 'api-documentation', 'libxslt-native', '', d)}"
+DEPENDS:append:class-target = " ${@bb.utils.contains('DISTRO_FEATURES', 'api-documentation', 'libxslt-native', '', d)}"
 
 # vala-native contains a native version of vapigen, which we use instead of the target one
-DEPENDS_append_class-target = " vala-native"
+DEPENDS:append:class-target = " vala-native"
 BBCLASSEXTEND = "native"
 LICENSE = "LGPLv2.1"
 LIC_FILES_CHKSUM = "file://COPYING;md5=fbc093901857fcd118f065f900982c24"
@@ -21,13 +21,13 @@
 SRC_URI = "http://ftp.gnome.org/pub/GNOME/sources/${BPN}/${SHRT_VER}/${BP}.tar.xz"
 inherit autotools pkgconfig upstream-version-is-even
 
-FILES_${PN} += "${datadir}/${BPN}-${SHRT_VER}/vapi ${libdir}/${BPN}-${SHRT_VER}/"
-FILES_${PN}-doc += "${datadir}/devhelp"
+FILES:${PN} += "${datadir}/${BPN}-${SHRT_VER}/vapi ${libdir}/${BPN}-${SHRT_VER}/"
+FILES:${PN}-doc += "${datadir}/devhelp"
 
 # .gir files from gobject-introspection are installed to ${libdir} when multilib is enabled
 GIRDIR_OPT = "${@'--girdir=${STAGING_LIBDIR}/gir-1.0' if d.getVar('MULTILIBS') else ''}"
 
-do_configure_prepend_class-target() {
+do_configure:prepend:class-target() {
         # Write out a vapigen wrapper that will be provided by pkg-config file installed in target sysroot
         # The wrapper will call a native vapigen
         cat > ${B}/vapigen-wrapper << EOF
@@ -41,16 +41,16 @@
 
 # Vapigen wrapper needs to be available system-wide, because it will be used
 # to build vapi files from all other packages with vala support
-do_install_append_class-target() {
+do_install:append:class-target() {
         install -d ${D}${bindir}/
         install ${B}/vapigen-wrapper ${D}${bindir}/
 }
 
 # Put vapigen wrapper into target sysroot so that it can be used when building
 # vapi files.
-SYSROOT_DIRS_append_class-target = " ${bindir}"
+SYSROOT_DIRS:append:class-target = " ${bindir}"
 
-SYSROOT_PREPROCESS_FUNCS_append_class-target = " vapigen_sysroot_preprocess"
+SYSROOT_PREPROCESS_FUNCS:append:class-target = " vapigen_sysroot_preprocess"
 vapigen_sysroot_preprocess() {
         # Tweak the vapigen name in the vapigen pkgconfig file, so that it picks
         # up our wrapper.
diff --git a/poky/meta/recipes-devtools/valgrind/valgrind/200b6a5a0ea3e1e154663b0fc575bfe2becf177d.patch b/poky/meta/recipes-devtools/valgrind/valgrind/200b6a5a0ea3e1e154663b0fc575bfe2becf177d.patch
new file mode 100644
index 0000000..9a5f6a3
--- /dev/null
+++ b/poky/meta/recipes-devtools/valgrind/valgrind/200b6a5a0ea3e1e154663b0fc575bfe2becf177d.patch
@@ -0,0 +1,34 @@
+From 200b6a5a0ea3e1e154663b0fc575bfe2becf177d Mon Sep 17 00:00:00 2001
+From: Mark Wielaard <mark@klomp.org>
+Date: Wed, 21 Jul 2021 17:55:40 +0200
+Subject: [PATCH] m_debuginfo/debuginfo.c VG_(get_fnname_kind) _start is below
+ main
+
+With glibc 2.34 we might see the _start symbol as the frame that
+called main instead of directly after __libc_start_main or
+generic_start_main.
+
+Fixes memcheck/tests/badjump[2], memcheck/tests/origin4-many,
+helgrind/tests/tc04_free_lock, helgrind/tests/tc09_bad_unlock
+and helgrind/tests/tc20_verifywrap.
+
+Upstream-Status: Backport
+---
+ coregrind/m_debuginfo/debuginfo.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/coregrind/m_debuginfo/debuginfo.c b/coregrind/m_debuginfo/debuginfo.c
+index bc2578b377..e2218f2668 100644
+--- a/coregrind/m_debuginfo/debuginfo.c
++++ b/coregrind/m_debuginfo/debuginfo.c
+@@ -2289,6 +2289,7 @@ Vg_FnNameKind VG_(get_fnname_kind) ( const HChar* name )
+        VG_STREQN(18, "__libc_start_main.", name) || // gcc optimization
+        VG_STREQ("generic_start_main", name) ||  // Yellow Dog doggedness
+        VG_STREQN(19, "generic_start_main.", name) || // gcc optimization
++       VG_STREQ("_start", name) ||
+ #      elif defined(VGO_darwin)
+        // See readmacho.c for an explanation of this.
+        VG_STREQ("start_according_to_valgrind", name) ||  // Darwin, darling
+-- 
+2.27.0
+
diff --git a/poky/meta/recipes-devtools/valgrind/valgrind/52ed51fc35f8a6148c2940eb46932b02dd3b9b23.patch b/poky/meta/recipes-devtools/valgrind/valgrind/52ed51fc35f8a6148c2940eb46932b02dd3b9b23.patch
new file mode 100644
index 0000000..451a459
--- /dev/null
+++ b/poky/meta/recipes-devtools/valgrind/valgrind/52ed51fc35f8a6148c2940eb46932b02dd3b9b23.patch
@@ -0,0 +1,171 @@
+From 52ed51fc35f8a6148c2940eb46932b02dd3b9b23 Mon Sep 17 00:00:00 2001
+From: Mark Wielaard <mark@klomp.org>
+Date: Wed, 21 Jul 2021 19:53:13 +0200
+Subject: [PATCH] Generate a ENOSYS (sys_ni_syscall) for clone3 on all linux
+ arches
+
+glibc 2.34 will try to use clone3 first before falling back to
+the clone syscall. So implement clone3 as sys_ni_syscall which
+simply return ENOSYS without producing a warning.
+
+https://bugs.kde.org/show_bug.cgi?id=439590
+
+Upstream-Status: Backport
+---
+ coregrind/m_syswrap/syswrap-amd64-linux.c    | 2 ++
+ coregrind/m_syswrap/syswrap-arm-linux.c      | 2 ++
+ coregrind/m_syswrap/syswrap-arm64-linux.c    | 2 ++
+ coregrind/m_syswrap/syswrap-mips32-linux.c   | 2 ++
+ coregrind/m_syswrap/syswrap-mips64-linux.c   | 1 +
+ coregrind/m_syswrap/syswrap-nanomips-linux.c | 1 +
+ coregrind/m_syswrap/syswrap-ppc32-linux.c    | 2 ++
+ coregrind/m_syswrap/syswrap-ppc64-linux.c    | 2 ++
+ coregrind/m_syswrap/syswrap-s390x-linux.c    | 2 ++
+ coregrind/m_syswrap/syswrap-x86-linux.c      | 2 ++
+ include/vki/vki-scnums-shared-linux.h        | 2 ++
+ 11 files changed, 20 insertions(+)
+
+diff --git a/coregrind/m_syswrap/syswrap-amd64-linux.c b/coregrind/m_syswrap/syswrap-amd64-linux.c
+index 45e1f3d1bb..3b2dcb8e30 100644
+--- a/coregrind/m_syswrap/syswrap-amd64-linux.c
++++ b/coregrind/m_syswrap/syswrap-amd64-linux.c
+@@ -874,6 +874,8 @@ static SyscallTableEntry syscall_table[] = {
+    LINXY(__NR_io_uring_enter,    sys_io_uring_enter),    // 426
+    LINXY(__NR_io_uring_register, sys_io_uring_register), // 427
+ 
++   GENX_(__NR_clone3,            sys_ni_syscall),        // 435
++
+    LINX_(__NR_faccessat2,	 sys_faccessat2),        // 439
+ };
+ 
+diff --git a/coregrind/m_syswrap/syswrap-arm-linux.c b/coregrind/m_syswrap/syswrap-arm-linux.c
+index 428cb7c6fc..7f41b07491 100644
+--- a/coregrind/m_syswrap/syswrap-arm-linux.c
++++ b/coregrind/m_syswrap/syswrap-arm-linux.c
+@@ -1051,6 +1051,8 @@ static SyscallTableEntry syscall_main_table[] = {
+    LINXY(__NR_io_uring_enter,    sys_io_uring_enter),    // 426
+    LINXY(__NR_io_uring_register, sys_io_uring_register), // 427
+ 
++   GENX_(__NR_clone3,            sys_ni_syscall),        // 435
++
+    LINX_(__NR_faccessat2,    sys_faccessat2),           // 439
+ };
+ 
+diff --git a/coregrind/m_syswrap/syswrap-arm64-linux.c b/coregrind/m_syswrap/syswrap-arm64-linux.c
+index 024ece27f5..0d717f44be 100644
+--- a/coregrind/m_syswrap/syswrap-arm64-linux.c
++++ b/coregrind/m_syswrap/syswrap-arm64-linux.c
+@@ -830,6 +830,8 @@ static SyscallTableEntry syscall_main_table[] = {
+    LINXY(__NR_io_uring_enter,    sys_io_uring_enter),    // 426
+    LINXY(__NR_io_uring_register, sys_io_uring_register), // 427
+ 
++   GENX_(__NR_clone3,            sys_ni_syscall),        // 435
++
+    LINX_(__NR_faccessat2,        sys_faccessat2),        // 439
+ };
+ 
+diff --git a/coregrind/m_syswrap/syswrap-mips32-linux.c b/coregrind/m_syswrap/syswrap-mips32-linux.c
+index 62b085ea21..b62129111b 100644
+--- a/coregrind/m_syswrap/syswrap-mips32-linux.c
++++ b/coregrind/m_syswrap/syswrap-mips32-linux.c
+@@ -1136,6 +1136,8 @@ static SyscallTableEntry syscall_main_table[] = {
+    LINXY(__NR_io_uring_enter,          sys_io_uring_enter),          // 426
+    LINXY(__NR_io_uring_register,       sys_io_uring_register),       // 427
+ 
++   GENX_(__NR_clone3,                  sys_ni_syscall),              // 435
++
+    LINX_ (__NR_faccessat2,             sys_faccessat2),              // 439
+ };
+ 
+diff --git a/coregrind/m_syswrap/syswrap-mips64-linux.c b/coregrind/m_syswrap/syswrap-mips64-linux.c
+index b73c03da16..94f38366f0 100644
+--- a/coregrind/m_syswrap/syswrap-mips64-linux.c
++++ b/coregrind/m_syswrap/syswrap-mips64-linux.c
+@@ -815,6 +815,7 @@ static SyscallTableEntry syscall_main_table[] = {
+    LINXY (__NR_io_uring_setup, sys_io_uring_setup),
+    LINXY (__NR_io_uring_enter, sys_io_uring_enter),
+    LINXY (__NR_io_uring_register, sys_io_uring_register),
++   GENX_ (__NR_clone3, sys_ni_syscall),
+    LINX_ (__NR_faccessat2, sys_faccessat2),
+ };
+ 
+diff --git a/coregrind/m_syswrap/syswrap-nanomips-linux.c b/coregrind/m_syswrap/syswrap-nanomips-linux.c
+index 14127b181a..102c155507 100644
+--- a/coregrind/m_syswrap/syswrap-nanomips-linux.c
++++ b/coregrind/m_syswrap/syswrap-nanomips-linux.c
+@@ -824,6 +824,7 @@ static SyscallTableEntry syscall_main_table[] = {
+    LINXY (__NR_io_uring_setup,         sys_io_uring_setup),
+    LINXY (__NR_io_uring_enter,         sys_io_uring_enter),
+    LINXY (__NR_io_uring_register,      sys_io_uring_register),
++   GENX_ (__NR_clone3,                 sys_ni_syscall),
+    LINX_ (__NR_faccessat2,             sys_faccessat2),
+ };
+ 
+diff --git a/coregrind/m_syswrap/syswrap-ppc32-linux.c b/coregrind/m_syswrap/syswrap-ppc32-linux.c
+index aad14f8ba4..1e2efc6777 100644
+--- a/coregrind/m_syswrap/syswrap-ppc32-linux.c
++++ b/coregrind/m_syswrap/syswrap-ppc32-linux.c
+@@ -1054,6 +1054,8 @@ static SyscallTableEntry syscall_table[] = {
+    LINXY(__NR_io_uring_enter,    sys_io_uring_enter),    // 426
+    LINXY(__NR_io_uring_register, sys_io_uring_register), // 427
+ 
++   GENX_(__NR_clone3,            sys_ni_syscall),        // 435
++
+    LINX_(__NR_faccessat2,        sys_faccessat2),       // 439
+ };
+ 
+diff --git a/coregrind/m_syswrap/syswrap-ppc64-linux.c b/coregrind/m_syswrap/syswrap-ppc64-linux.c
+index c0e3f55491..76610e1423 100644
+--- a/coregrind/m_syswrap/syswrap-ppc64-linux.c
++++ b/coregrind/m_syswrap/syswrap-ppc64-linux.c
+@@ -1023,6 +1023,8 @@ static SyscallTableEntry syscall_table[] = {
+    LINXY(__NR_io_uring_enter,    sys_io_uring_enter),    // 426
+    LINXY(__NR_io_uring_register, sys_io_uring_register), // 427
+ 
++   GENX_(__NR_clone3,            sys_ni_syscall),        // 435
++
+    LINX_(__NR_faccessat2,        sys_faccessat2),       // 439
+ };
+ 
+diff --git a/coregrind/m_syswrap/syswrap-s390x-linux.c b/coregrind/m_syswrap/syswrap-s390x-linux.c
+index af6c4eb210..5283c19fe4 100644
+--- a/coregrind/m_syswrap/syswrap-s390x-linux.c
++++ b/coregrind/m_syswrap/syswrap-s390x-linux.c
+@@ -864,6 +864,8 @@ static SyscallTableEntry syscall_table[] = {
+    LINXY(__NR_io_uring_enter, sys_io_uring_enter),                    // 426
+    LINXY(__NR_io_uring_register, sys_io_uring_register),              // 427
+ 
++   GENX_(__NR_clone3, sys_ni_syscall),                                // 435
++
+    LINX_(__NR_faccessat2,  sys_faccessat2),                           // 439
+ };
+ 
+diff --git a/coregrind/m_syswrap/syswrap-x86-linux.c b/coregrind/m_syswrap/syswrap-x86-linux.c
+index 67d866497d..418c769750 100644
+--- a/coregrind/m_syswrap/syswrap-x86-linux.c
++++ b/coregrind/m_syswrap/syswrap-x86-linux.c
+@@ -1645,6 +1645,8 @@ static SyscallTableEntry syscall_table[] = {
+    LINXY(__NR_io_uring_enter,    sys_io_uring_enter),   // 426
+    LINXY(__NR_io_uring_register, sys_io_uring_register),// 427
+ 
++   GENX_(__NR_clone3,            sys_ni_syscall),       // 435
++
+    LINX_(__NR_faccessat2,	 sys_faccessat2),       // 439
+ };
+ 
+diff --git a/include/vki/vki-scnums-shared-linux.h b/include/vki/vki-scnums-shared-linux.h
+index c8bc31b4b3..6c70c9981d 100644
+--- a/include/vki/vki-scnums-shared-linux.h
++++ b/include/vki/vki-scnums-shared-linux.h
+@@ -39,6 +39,8 @@
+ #define __NR_fsmount		432
+ #define __NR_fspick		433
+ 
++#define __NR_clone3		435
++
+ #define __NR_faccessat2		439
+ 
+ #endif
+-- 
+2.27.0
+
diff --git a/poky/meta/recipes-devtools/valgrind/valgrind/6da22a4d246519cd1a638cfc7eff00cdd74413c4.patch b/poky/meta/recipes-devtools/valgrind/valgrind/6da22a4d246519cd1a638cfc7eff00cdd74413c4.patch
new file mode 100644
index 0000000..fce66b9
--- /dev/null
+++ b/poky/meta/recipes-devtools/valgrind/valgrind/6da22a4d246519cd1a638cfc7eff00cdd74413c4.patch
@@ -0,0 +1,43 @@
+From 6da22a4d246519cd1a638cfc7eff00cdd74413c4 Mon Sep 17 00:00:00 2001
+From: Mark Wielaard <mark@klomp.org>
+Date: Fri, 16 Jul 2021 21:37:21 +0200
+Subject: [PATCH] gdbserver_tests: update filters for newer glibc/gdb
+
+With newer glibc/gdb we might see a __select call without anything
+following on the line. Also when gdb cannot find a file it might
+now print "Inappropriate ioctl for device" instead of the message
+"No such file or directory"
+
+Upstream-Status: Backport
+---
+ gdbserver_tests/filter_gdb  | 1 +
+ gdbserver_tests/filter_vgdb | 1 +
+ 2 files changed, 2 insertions(+)
+
+diff --git a/gdbserver_tests/filter_gdb b/gdbserver_tests/filter_gdb
+index 3bcd26d86c..4a5b5d7a5b 100755
+--- a/gdbserver_tests/filter_gdb
++++ b/gdbserver_tests/filter_gdb
+@@ -111,6 +111,7 @@ s/\(0x........\) in ?? ()$/\1 in syscall .../
+ #         If select.c sources are present, we can also get a line containing:
+ #              return SYSCALL_CANCEL....
+ s/in __select .*/in syscall .../
++s/in __select$/in syscall .../
+ /exceptfds/d
+ /sysv\/linux\/select\.c/d
+ /return SYSCALL_CANCEL /d
+diff --git a/gdbserver_tests/filter_vgdb b/gdbserver_tests/filter_vgdb
+index f8028a39ad..679ca4b31c 100755
+--- a/gdbserver_tests/filter_vgdb
++++ b/gdbserver_tests/filter_vgdb
+@@ -18,6 +18,7 @@ sed -e '/relaying data between gdb and process/d'                        \
+     
+ # filter some debuginfo problems with ld.so and SLES11
+ sed -e '/^1	rtld.c: No such file or directory\./d' |
++sed -e '/rtld.c: Inappropriate ioctl for device\./d' |
+ 
+ # and filter out any remaining empty lines
+ sed -e '/^$/d'
+-- 
+2.27.0
+
diff --git a/poky/meta/recipes-devtools/valgrind/valgrind/a1364805fc74b5690f763033c0c9b43f27613572.patch b/poky/meta/recipes-devtools/valgrind/valgrind/a1364805fc74b5690f763033c0c9b43f27613572.patch
new file mode 100644
index 0000000..ece8840
--- /dev/null
+++ b/poky/meta/recipes-devtools/valgrind/valgrind/a1364805fc74b5690f763033c0c9b43f27613572.patch
@@ -0,0 +1,1422 @@
+From a1364805fc74b5690f763033c0c9b43f27613572 Mon Sep 17 00:00:00 2001
+From: Mark Wielaard <mark@klomp.org>
+Date: Fri, 16 Jul 2021 15:47:08 -0400
+Subject: [PATCH] Update helgrind and drd suppression libc and libpthread paths
+ in glibc 2.34
+
+glibc 2.34 moved all pthread functions into the main libc library.
+And it changed the (in memory) path of the main libc library to
+libc.so.6 (before it was libc-2.xx.so).
+
+This breaks various standard suppressions for helgrind and drd.
+Fix this by doing a configure check for whether we are using glibc
+2.34 by checking whether pthread_create is in libc instead of in
+libpthread. If we are using glibc then define GLIBC_LIBC_PATH and
+GLIBC_LIBPTHREAD_PATH variables that point to the (regexp) path
+of the library that contains all libc functions and pthread functions
+(which will be the same path for glibc 2.34+).
+
+Rename glibc-2.34567-NPTL-helgrind.supp to glibc-2.X-helgrind.supp.in
+and glibc-2.X-drd.supp to glibc-2.X-drd.supp.in and replace the
+GLIBC_LIBC_PATH and GLIBC_LIBPTHREAD_PATH at configure time.
+
+The same could be done for the glibc-2.X.supp.in file, but hasn't
+yet because it looks like most suppressions in that file are obsolete.
+
+Upstream-Status: Backport
+---
+ Makefile.am                                   |  2 +-
+ configure.ac                                  | 37 +++++++++++++++++--
+ glibc-2.X-drd.supp => glibc-2.X-drd.supp.in   |  6 ++-
+ ...elgrind.supp => glibc-2.X-helgrind.supp.in | 16 ++++----
+ 4 files changed, 47 insertions(+), 14 deletions(-)
+ rename glibc-2.X-drd.supp => glibc-2.X-drd.supp.in (97%)
+ rename glibc-2.34567-NPTL-helgrind.supp => glibc-2.X-helgrind.supp.in (95%)
+
+Index: valgrind-3.17.0/Makefile.am
+===================================================================
+--- valgrind-3.17.0.orig/Makefile.am
++++ valgrind-3.17.0/Makefile.am
+@@ -41,7 +41,7 @@ SUPP_FILES = \
+ 	glibc-2.2.supp glibc-2.3.supp glibc-2.4.supp glibc-2.5.supp \
+ 	glibc-2.6.supp glibc-2.7.supp glibc-2.X.supp.in \
+ 	xfree-3.supp xfree-4.supp \
+-	glibc-2.34567-NPTL-helgrind.supp \
++	glibc-2.X-helgrind.supp \
+ 	glibc-2.2-LinuxThreads-helgrind.supp \
+ 	glibc-2.X-drd.supp \
+ 	darwin9.supp darwin9-drd.supp \
+Index: valgrind-3.17.0/configure.ac
+===================================================================
+--- valgrind-3.17.0.orig/configure.ac
++++ valgrind-3.17.0/configure.ac
+@@ -1090,6 +1090,31 @@ if test x$GLIBC_VERSION = x; then
+     fi
+ fi
+ 
++# If this is glibc then figure out the generic (in file) libc.so and
++# libpthread.so file paths to use in suppressions. Before 2.34 libpthread
++# was a separate library, afterwards it was merged into libc.so and
++# the library is called libc.so.6 (before it was libc-2.[0-9]+.so).
++# Use this fact to set GLIBC_LIBC_PATH and GLIBC_LIBPTHREAD_PATH.
++case ${GLIBC_VERSION} in
++2*)
++  AC_MSG_CHECKING([whether pthread_create needs libpthread])
++  AC_LINK_IFELSE([AC_LANG_CALL([], [pthread_create])],
++  [
++    AC_MSG_RESULT([no])
++    GLIBC_LIBC_PATH="*/lib*/libc.so.6"
++    GLIBC_LIBPTHREAD_PATH="$GLIBC_LIBC_PATH"
++  ], [
++    AC_MSG_RESULT([yes])
++    GLIBC_LIBC_PATH="*/lib*/libc-2.*so*"
++    GLIBC_LIBPTHREAD_PATH="*/lib*/libpthread-2.*so*"
++  ])
++  ;;
++*)
++  AC_MSG_CHECKING([not glibc...])
++  AC_MSG_RESULT([${GLIBC_VERSION}])
++  ;;
++esac
++
+ AC_MSG_CHECKING([the glibc version])
+ 
+ case "${GLIBC_VERSION}" in
+@@ -1102,13 +1127,13 @@ case "${GLIBC_VERSION}" in
+      2.[[3-6]])
+ 	AC_MSG_RESULT(${GLIBC_VERSION} family)
+         DEFAULT_SUPP="$srcdir/glibc-${GLIBC_VERSION}.supp ${DEFAULT_SUPP}"
+-        DEFAULT_SUPP="$srcdir/glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
++        DEFAULT_SUPP="$srcdir/glibc-2.X-helgrind.supp ${DEFAULT_SUPP}"
+         DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}"
+ 	;;
+      2.[[7-9]])
+ 	AC_MSG_RESULT(${GLIBC_VERSION} family)
+ 	DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}"
+-        DEFAULT_SUPP="$srcdir/glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
++        DEFAULT_SUPP="$srcdir/glibc-2.X-helgrind.supp ${DEFAULT_SUPP}"
+         DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}"
+ 	;;
+      2.10|2.11)
+@@ -1116,7 +1141,7 @@ case "${GLIBC_VERSION}" in
+ 	AC_DEFINE([GLIBC_MANDATORY_STRLEN_REDIRECT], 1,
+ 		  [Define to 1 if strlen() has been optimized heavily (amd64 glibc >= 2.10)])
+ 	DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}"
+-        DEFAULT_SUPP="$srcdir/glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
++        DEFAULT_SUPP="$srcdir/glibc-2.X-helgrind.supp ${DEFAULT_SUPP}"
+         DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}"
+ 	;;
+      2.*)
+@@ -1126,7 +1151,7 @@ case "${GLIBC_VERSION}" in
+ 	AC_DEFINE([GLIBC_MANDATORY_INDEX_AND_STRLEN_REDIRECT], 1,
+ 		  [Define to 1 if index() and strlen() have been optimized heavily (x86 glibc >= 2.12)])
+ 	DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}"
+-        DEFAULT_SUPP="$srcdir/glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
++        DEFAULT_SUPP="$srcdir/glibc-2.X-helgrind.supp ${DEFAULT_SUPP}"
+         DEFAULT_SUPP="$srcdir/glibc-2.X-drd.supp ${DEFAULT_SUPP}"
+ 	;;
+      darwin)
+@@ -1157,6 +1182,8 @@ case "${GLIBC_VERSION}" in
+ esac
+ 
+ AC_SUBST(GLIBC_VERSION)
++AC_SUBST(GLIBC_LIBC_PATH)
++AC_SUBST(GLIBC_LIBPTHREAD_PATH)
+ 
+ 
+ if test "$VGCONF_OS" != "solaris"; then
+@@ -4910,6 +4937,8 @@ AC_CONFIG_FILES([
+    valgrind.spec
+    valgrind.pc
+    glibc-2.X.supp
++   glibc-2.X-helgrind.supp
++   glibc-2.X-drd.supp
+    docs/Makefile 
+    tests/Makefile 
+    tests/vg_regtest 
+Index: valgrind-3.17.0/glibc-2.X-drd.supp
+===================================================================
+--- valgrind-3.17.0.orig/glibc-2.X-drd.supp
++++ /dev/null
+@@ -1,330 +0,0 @@
+-#
+-# Suppression patterns for ld, the dynamic loader.
+-#
+-
+-# Suppress all data races triggered by ld.
+-{
+-   drd-ld
+-   drd:ConflictingAccess
+-   obj:*/lib*/ld-*.so
+-}
+-
+-#
+-# Suppression patterns for libc.
+-#
+-
+-# Suppress all data races where the topmost frame is inside libc.so. Although
+-# this could hide some real data races, unfortunately this is the only way to
+-# not report any false positives on stdio functions. The glibc functions
+-# manipulating FILE objects use locking primitives that cannot be intercepted
+-# easily. See also the definitions of _IO_lock_lock() etc. in the file
+-# nptl/sysdeps/pthread/bits/stdio-lock.h in the glibc source tree.
+-{
+-   drd-libc-stdio
+-   drd:ConflictingAccess
+-   obj:*/lib*/libc-*
+-}
+-{
+-   drd-libc-thread-cancellation-test
+-   drd:ConflictingAccess
+-   fun:write
+-}
+-{
+-   drd-libc-random
+-   drd:ConflictingAccess
+-   fun:random_r
+-   fun:random
+-}
+-
+-#
+-# Suppression patterns for libstdc++, the implementation of the standard C++
+-# library included with the gcc compiler.
+-#
+-# Note: several versions of the libstdc++ library (4.2.2, 4.3.2, 4.4.0, 4.5.0
+-# and their predecessors) contain an implementation of the std::string class
+-# that triggers conflicting memory accesses. See also
+-# http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40518
+-#
+-
+-# {
+-#    drd-libstdc++-std::string::string()
+-#    drd:ConflictingAccess
+-#    fun:_ZNSsC1ERKSs
+-# }
+-
+-{
+-   drd-libstdc++-cxa_guard_release
+-   drd:CondErr
+-   fun:pthread_cond_broadcast@*
+-   fun:__cxa_guard_release
+-}
+-{
+-   drd-libstdc++-std::__ostream_insert()
+-   drd:ConflictingAccess
+-   fun:_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
+-   fun:_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
+-}
+-{
+-   drd-libstdc++-std::ostream::_M_insert<long>()
+-   drd:ConflictingAccess
+-   ...
+-   fun:_ZNSo9_M_insertIlEERSoT_
+-}
+-
+-
+-#
+-# Suppression patterns for libpthread.
+-#
+-
+-{
+-   drd-libpthread-pthread_create
+-   drd:ConflictingAccess
+-   ...
+-   fun:pthread_create*
+-}
+-{
+-   drd-libpthread-pthread_join
+-   drd:ConflictingAccess
+-   fun:pthread_join
+-   fun:pthread_join
+-}
+-{
+-   drd-libpthread-__deallocate_stack
+-   drd:ConflictingAccess
+-   ...
+-   fun:__deallocate_stack
+-}
+-{
+-   drd-libpthread-__free_stacks
+-   drd:ConflictingAccess
+-   fun:__free_stacks
+-}
+-{
+-   drd-libpthread-__free_tcb
+-   drd:ConflictingAccess
+-   ...
+-   fun:__free_tcb
+-}
+-{
+-   drd-libpthread-__nptl_deallocate_tsd
+-   drd:ConflictingAccess
+-   fun:__nptl_deallocate_tsd
+-}
+-{
+-   drd-libpthread-pthread_detach
+-   drd:ConflictingAccess
+-   fun:pthread_detach
+-   fun:pthread_detach
+-}
+-{
+-   drd-libpthread-pthread_once
+-   drd:ConflictingAccess
+-   fun:pthread_once
+-}
+-{
+-   drd-libpthread-pthread_cancel_init
+-   drd:ConflictingAccess
+-   fun:pthread_cancel_init
+-}
+-{
+-   drd-libpthread-pthread_cancel
+-   drd:ConflictingAccess
+-   fun:pthread_cancel
+-   fun:pthread_cancel_intercept
+-}
+-{
+-   drd-libpthread-_Unwind_ForcedUnwind
+-   drd:ConflictingAccess
+-   ...
+-   fun:_Unwind_ForcedUnwind
+-}
+-{
+-   drd-libpthread-_Unwind_GetCFA
+-   drd:ConflictingAccess
+-   fun:_Unwind_GetCFA
+-}
+-{
+-   drd-libpthread-_Unwind_Resume
+-   drd:ConflictingAccess
+-   ...
+-   fun:_Unwind_Resume
+-}
+-{
+-   drd-libpthread-?
+-   drd:ConflictingAccess
+-   obj:*/lib/libgcc_s.so.1
+-}
+-{
+-   drd-libpthread-nanosleep
+-   drd:ConflictingAccess
+-   fun:nanosleep
+-}
+-
+-#
+-# Suppression patterns for libgomp.
+-#
+-
+-# Unfortunately many statements in libgomp trigger conflicting accesses. It is
+-# not clear to me which of these are safe and which ones not. See also
+-# http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40362
+-{
+-   drd-libgomp
+-   drd:ConflictingAccess
+-   obj:/usr/lib*/libgomp.so*
+-}
+-
+-#
+-# Suppression patterns for libX11.
+-#
+-
+-{
+-   drd-libX11-XCreateFontSet
+-   drd:CondErr
+-   fun:pthread_cond_init*
+-   fun:_XReply
+-   fun:XListFontsWithInfo
+-   obj:/usr/lib*/libX11.so*
+-   fun:XCreateOC
+-   fun:XCreateFontSet
+-}
+-
+-#
+-# Suppression patterns for libxcb.
+-#
+-
+-{
+-   drd-libxcb-xcb_wait_for_reply
+-   drd:CondErr
+-   ...
+-   fun:pthread_cond_destroy*
+-   fun:xcb_wait_for_reply
+-}
+-
+-#
+-# Suppression patterns for libglib.
+-#
+-
+-{
+-   drd-libglib-access-g_threads_got_initialized
+-   drd:ConflictingAccess
+-   ...
+-   fun:g_slice_alloc
+-   fun:g_ptr_array_sized_new
+-}
+-{
+-   drd-libglib-access-g_threads_got_initialized
+-   drd:ConflictingAccess
+-   ...
+-   fun:_ZN27QEventDispatcherGlibPrivateC1EP13_GMainContext
+-   fun:_ZN20QEventDispatcherGlibC1EP7QObject
+-   obj:/usr/lib*/libQtCore.so.4.*
+-   obj:/usr/lib*/libQtCore.so.4.*
+-}
+-{
+-   drd-libglib-access-g_mem_initialized
+-   drd:ConflictingAccess
+-   fun:g_malloc0
+-}
+-{
+-   drd-libglib-g_private_get_posix_impl
+-   drd:ConflictingAccess
+-   fun:g_private_get_posix_impl
+-}
+-{
+-   drd-libglib-g_private_set_posix_impl
+-   drd:ConflictingAccess
+-   fun:g_private_set_posix_impl
+-}
+-{
+-   drd-libglib-g_get_language_names
+-   drd:ConflictingAccess
+-   fun:g_slice_free_chain_with_offset
+-}
+-{
+-   drd-libglib-g_main_context_new
+-   drd:ConflictingAccess
+-   fun:fcntl
+-   obj:/usr/lib*/libglib-*.so*
+-   fun:g_main_context_new
+-}
+-
+-#
+-# Suppression patterns for libQtCore.
+-#
+-
+-{
+-   drd-libQtCore-deref-that-calls-QThreadData-destructor
+-   drd:ConflictingAccess
+-   fun:_ZN11QThreadDataD1Ev
+-   obj:/usr/lib*/libQtCore.so.4.*
+-}
+-{
+-   drd-libQtCore-4.0/4.1-Q_GLOBAL_STATIC-connectionList
+-   drd:ConflictingAccess
+-   obj:/usr/lib*/libQtCore.so.4.*
+-   fun:_ZN11QMetaObject8activateEP7QObjectiiPPv
+-   fun:_ZN11QMetaObject8activateEP7QObjectPKS_iPPv
+-}
+-{
+-   drd-libQtCore-QObjectPrivate::clearGuards(QObject*)
+-   drd:ConflictingAccess
+-   fun:_ZN14QReadWriteLock12lockForWriteEv
+-   fun:_ZN14QObjectPrivate11clearGuardsEP7QObject
+-   fun:_ZN7QObjectD2Ev
+-}
+-{
+-   drd-libQtCore-QObjectPrivate::clearGuards(QObject*)
+-   drd:ConflictingAccess
+-   fun:_ZN14QReadWriteLock12lockForWriteEv
+-   fun:_ZN12QWriteLocker6relockEv
+-   fun:_ZN12QWriteLockerC1EP14QReadWriteLock
+-   fun:_ZN14QObjectPrivate11clearGuardsEP7QObject
+-   fun:_ZN7QObjectD2Ev
+-   fun:_ZN24QAbstractEventDispatcherD2Ev
+-   fun:_ZN20QEventDispatcherGlibD0Ev
+-}
+-{
+-   drd-libQtCore-QMutexPool::get(void const*)
+-   drd:ConflictingAccess
+-   fun:_ZN10QMutexPool3getEPKv
+-}
+-{
+-   drd-libQtCore-qt_gettime_is_monotonic()
+-   drd:ConflictingAccess
+-   fun:_Z23qt_gettime_is_monotonicv
+-}
+-
+-#
+-# Suppression patterns for libboost.
+-#
+-
+-# Suppress the races on boost::once_flag::epoch and on
+-# boost::detail::this_thread_epoch. See also the source file
+-# boost/thread/pthread/once.hpp in the Boost source tree
+-# (https://svn.boost.org/trac/boost/browser/trunk/boost/thread/pthread/once.hpp).
+-{
+-   drd-libboost-boost::call_once<void (*)()>(boost::once_flag&, void (*)())
+-   drd:ConflictingAccess
+-   ...
+-   fun:_ZN5boost9call_onceIPFvvEEEvRNS_9once_flagET_
+-}
+-{
+-   drd-libboost-boost::detail::get_once_per_thread_epoch()
+-   drd:ConflictingAccess
+-   fun:_ZN5boost6detail25get_once_per_thread_epochEv
+-}
+-# Suppress the race reports on boost::detail::current_thread_tls_key. See also
+-# https://svn.boost.org/trac/boost/ticket/3526 for more information about why
+-# the access pattern of current_thread_tls_key is safe.
+-{
+-   drd-libboost-boost::detail::get_current_thread_data()
+-   drd:ConflictingAccess
+-   ...
+-   fun:_ZN5boost6detail23get_current_thread_dataEv
+-}
+-{
+-   drd-libboost-boost::detail::set_current_thread_data(boost::detail::thread_data_base*)
+-   drd:ConflictingAccess
+-   ...
+-   fun:_ZN5boost6detail23set_current_thread_dataEPNS0_16thread_data_baseE
+-}
+Index: valgrind-3.17.0/glibc-2.X-drd.supp.in
+===================================================================
+--- /dev/null
++++ valgrind-3.17.0/glibc-2.X-drd.supp.in
+@@ -0,0 +1,332 @@
++# IMPORTANT: DO NOT EDIT glibc-2.X-drd.supp, as it is as a generated
++# file.  Instead edit glibc-2.X-drd.supp.in.
++#
++# Suppression patterns for ld, the dynamic loader.
++#
++
++# Suppress all data races triggered by ld.
++{
++   drd-ld
++   drd:ConflictingAccess
++   obj:*/lib*/ld*.so*
++}
++
++#
++# Suppression patterns for libc.
++#
++
++# Suppress all data races where the topmost frame is inside libc.so. Although
++# this could hide some real data races, unfortunately this is the only way to
++# not report any false positives on stdio functions. The glibc functions
++# manipulating FILE objects use locking primitives that cannot be intercepted
++# easily. See also the definitions of _IO_lock_lock() etc. in the file
++# nptl/sysdeps/pthread/bits/stdio-lock.h in the glibc source tree.
++{
++   drd-libc-stdio
++   drd:ConflictingAccess
++   obj:@GLIBC_LIBC_PATH@
++}
++{
++   drd-libc-thread-cancellation-test
++   drd:ConflictingAccess
++   fun:write
++}
++{
++   drd-libc-random
++   drd:ConflictingAccess
++   fun:random_r
++   fun:random
++}
++
++#
++# Suppression patterns for libstdc++, the implementation of the standard C++
++# library included with the gcc compiler.
++#
++# Note: several versions of the libstdc++ library (4.2.2, 4.3.2, 4.4.0, 4.5.0
++# and their predecessors) contain an implementation of the std::string class
++# that triggers conflicting memory accesses. See also
++# http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40518
++#
++
++# {
++#    drd-libstdc++-std::string::string()
++#    drd:ConflictingAccess
++#    fun:_ZNSsC1ERKSs
++# }
++
++{
++   drd-libstdc++-cxa_guard_release
++   drd:CondErr
++   fun:pthread_cond_broadcast@*
++   fun:__cxa_guard_release
++}
++{
++   drd-libstdc++-std::__ostream_insert()
++   drd:ConflictingAccess
++   fun:_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l
++   fun:_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc
++}
++{
++   drd-libstdc++-std::ostream::_M_insert<long>()
++   drd:ConflictingAccess
++   ...
++   fun:_ZNSo9_M_insertIlEERSoT_
++}
++
++
++#
++# Suppression patterns for libpthread.
++#
++
++{
++   drd-libpthread-pthread_create
++   drd:ConflictingAccess
++   ...
++   fun:pthread_create*
++}
++{
++   drd-libpthread-pthread_join
++   drd:ConflictingAccess
++   fun:pthread_join
++   fun:pthread_join
++}
++{
++   drd-libpthread-__deallocate_stack
++   drd:ConflictingAccess
++   ...
++   fun:__deallocate_stack
++}
++{
++   drd-libpthread-__free_stacks
++   drd:ConflictingAccess
++   fun:__free_stacks
++}
++{
++   drd-libpthread-__free_tcb
++   drd:ConflictingAccess
++   ...
++   fun:__free_tcb
++}
++{
++   drd-libpthread-__nptl_deallocate_tsd
++   drd:ConflictingAccess
++   fun:__nptl_deallocate_tsd
++}
++{
++   drd-libpthread-pthread_detach
++   drd:ConflictingAccess
++   fun:pthread_detach
++   fun:pthread_detach
++}
++{
++   drd-libpthread-pthread_once
++   drd:ConflictingAccess
++   fun:pthread_once
++}
++{
++   drd-libpthread-pthread_cancel_init
++   drd:ConflictingAccess
++   fun:pthread_cancel_init
++}
++{
++   drd-libpthread-pthread_cancel
++   drd:ConflictingAccess
++   fun:pthread_cancel
++   fun:pthread_cancel_intercept
++}
++{
++   drd-libpthread-_Unwind_ForcedUnwind
++   drd:ConflictingAccess
++   ...
++   fun:_Unwind_ForcedUnwind
++}
++{
++   drd-libpthread-_Unwind_GetCFA
++   drd:ConflictingAccess
++   fun:_Unwind_GetCFA
++}
++{
++   drd-libpthread-_Unwind_Resume
++   drd:ConflictingAccess
++   ...
++   fun:_Unwind_Resume
++}
++{
++   drd-libpthread-?
++   drd:ConflictingAccess
++   obj:*/lib/libgcc_s.so.1
++}
++{
++   drd-libpthread-nanosleep
++   drd:ConflictingAccess
++   fun:nanosleep
++}
++
++#
++# Suppression patterns for libgomp.
++#
++
++# Unfortunately many statements in libgomp trigger conflicting accesses. It is
++# not clear to me which of these are safe and which ones not. See also
++# http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40362
++{
++   drd-libgomp
++   drd:ConflictingAccess
++   obj:/usr/lib*/libgomp.so*
++}
++
++#
++# Suppression patterns for libX11.
++#
++
++{
++   drd-libX11-XCreateFontSet
++   drd:CondErr
++   fun:pthread_cond_init*
++   fun:_XReply
++   fun:XListFontsWithInfo
++   obj:/usr/lib*/libX11.so*
++   fun:XCreateOC
++   fun:XCreateFontSet
++}
++
++#
++# Suppression patterns for libxcb.
++#
++
++{
++   drd-libxcb-xcb_wait_for_reply
++   drd:CondErr
++   ...
++   fun:pthread_cond_destroy*
++   fun:xcb_wait_for_reply
++}
++
++#
++# Suppression patterns for libglib.
++#
++
++{
++   drd-libglib-access-g_threads_got_initialized
++   drd:ConflictingAccess
++   ...
++   fun:g_slice_alloc
++   fun:g_ptr_array_sized_new
++}
++{
++   drd-libglib-access-g_threads_got_initialized
++   drd:ConflictingAccess
++   ...
++   fun:_ZN27QEventDispatcherGlibPrivateC1EP13_GMainContext
++   fun:_ZN20QEventDispatcherGlibC1EP7QObject
++   obj:/usr/lib*/libQtCore.so.4.*
++   obj:/usr/lib*/libQtCore.so.4.*
++}
++{
++   drd-libglib-access-g_mem_initialized
++   drd:ConflictingAccess
++   fun:g_malloc0
++}
++{
++   drd-libglib-g_private_get_posix_impl
++   drd:ConflictingAccess
++   fun:g_private_get_posix_impl
++}
++{
++   drd-libglib-g_private_set_posix_impl
++   drd:ConflictingAccess
++   fun:g_private_set_posix_impl
++}
++{
++   drd-libglib-g_get_language_names
++   drd:ConflictingAccess
++   fun:g_slice_free_chain_with_offset
++}
++{
++   drd-libglib-g_main_context_new
++   drd:ConflictingAccess
++   fun:fcntl
++   obj:/usr/lib*/libglib-*.so*
++   fun:g_main_context_new
++}
++
++#
++# Suppression patterns for libQtCore.
++#
++
++{
++   drd-libQtCore-deref-that-calls-QThreadData-destructor
++   drd:ConflictingAccess
++   fun:_ZN11QThreadDataD1Ev
++   obj:/usr/lib*/libQtCore.so.4.*
++}
++{
++   drd-libQtCore-4.0/4.1-Q_GLOBAL_STATIC-connectionList
++   drd:ConflictingAccess
++   obj:/usr/lib*/libQtCore.so.4.*
++   fun:_ZN11QMetaObject8activateEP7QObjectiiPPv
++   fun:_ZN11QMetaObject8activateEP7QObjectPKS_iPPv
++}
++{
++   drd-libQtCore-QObjectPrivate::clearGuards(QObject*)
++   drd:ConflictingAccess
++   fun:_ZN14QReadWriteLock12lockForWriteEv
++   fun:_ZN14QObjectPrivate11clearGuardsEP7QObject
++   fun:_ZN7QObjectD2Ev
++}
++{
++   drd-libQtCore-QObjectPrivate::clearGuards(QObject*)
++   drd:ConflictingAccess
++   fun:_ZN14QReadWriteLock12lockForWriteEv
++   fun:_ZN12QWriteLocker6relockEv
++   fun:_ZN12QWriteLockerC1EP14QReadWriteLock
++   fun:_ZN14QObjectPrivate11clearGuardsEP7QObject
++   fun:_ZN7QObjectD2Ev
++   fun:_ZN24QAbstractEventDispatcherD2Ev
++   fun:_ZN20QEventDispatcherGlibD0Ev
++}
++{
++   drd-libQtCore-QMutexPool::get(void const*)
++   drd:ConflictingAccess
++   fun:_ZN10QMutexPool3getEPKv
++}
++{
++   drd-libQtCore-qt_gettime_is_monotonic()
++   drd:ConflictingAccess
++   fun:_Z23qt_gettime_is_monotonicv
++}
++
++#
++# Suppression patterns for libboost.
++#
++
++# Suppress the races on boost::once_flag::epoch and on
++# boost::detail::this_thread_epoch. See also the source file
++# boost/thread/pthread/once.hpp in the Boost source tree
++# (https://svn.boost.org/trac/boost/browser/trunk/boost/thread/pthread/once.hpp).
++{
++   drd-libboost-boost::call_once<void (*)()>(boost::once_flag&, void (*)())
++   drd:ConflictingAccess
++   ...
++   fun:_ZN5boost9call_onceIPFvvEEEvRNS_9once_flagET_
++}
++{
++   drd-libboost-boost::detail::get_once_per_thread_epoch()
++   drd:ConflictingAccess
++   fun:_ZN5boost6detail25get_once_per_thread_epochEv
++}
++# Suppress the race reports on boost::detail::current_thread_tls_key. See also
++# https://svn.boost.org/trac/boost/ticket/3526 for more information about why
++# the access pattern of current_thread_tls_key is safe.
++{
++   drd-libboost-boost::detail::get_current_thread_data()
++   drd:ConflictingAccess
++   ...
++   fun:_ZN5boost6detail23get_current_thread_dataEv
++}
++{
++   drd-libboost-boost::detail::set_current_thread_data(boost::detail::thread_data_base*)
++   drd:ConflictingAccess
++   ...
++   fun:_ZN5boost6detail23set_current_thread_dataEPNS0_16thread_data_baseE
++}
+Index: valgrind-3.17.0/glibc-2.34567-NPTL-helgrind.supp
+===================================================================
+--- valgrind-3.17.0.orig/glibc-2.34567-NPTL-helgrind.supp
++++ /dev/null
+@@ -1,301 +0,0 @@
+-
+-# FIXME 22 Jan 09: helgrind-glibc2X-005 overlaps with a lot of
+-# other stuff.  They should be removed.
+-
+-##----------------------------------------------------------------------##
+-# Suppressions for the Helgrind tool when using 
+-# a glibc-2.{3,4,5,6,7,8,9} system
+-
+-####################################################
+-# glibc-2.X specific
+-# These are generic cover-alls which catch a lot of stuff
+-# in various combinations of ld, libc and libpthread
+-#
+-# Note this is heavyhanded and not very clever:
+-#
+-# - suppress anything that has its top frame in ld.so
+-#   That's fine, since it's mostly dynamic linking stuff,
+-#   which has various deliberate (harmless) races
+-#
+-# - suppress anything that has its top frame in libc.so.
+-#   This really isn't clever, since it could hide some 
+-#   legitimate races.  But the problem is, if we don't do
+-#   this, then loads of errors to do with stdio are reported, because
+-#   H fails to see glibc's internal locking/unlocking of FILE*s
+-#   as required by POSIX.  A better solution is needed.
+-#
+-# - some of the stdio functions in newer glibc manipulate stdio
+-#   FILE*s state through mempcpy, which we intercept, so we also need
+-#   to suppress such manipulations.
+-
+-#{
+-#   helgrind-glibc2X-001
+-#   Helgrind:Race
+-#   obj:*/lib*/ld-2.*so*
+-#}
+-
+-# helgrind-glibc2X-002 was merged into helgrind-glibc2X-001
+-
+-# helgrind-glibc2X-003 was merged into helgrind-glibc2X-001
+-
+-{
+-   helgrind-glibc2X-004
+-   Helgrind:Race
+-   obj:*/lib*/libc-2.*so*
+-}
+-
+-{
+-   helgrind-glibc-io-xsputn-mempcpy
+-   Helgrind:Race
+-   fun:__GI_mempcpy
+-   fun:_IO_*xsputn*
+-   obj:*/lib*/libc-2.*so*
+-}
+-
+-{
+-   helgrind-glibc2X-005
+-   Helgrind:Race
+-   obj:*/lib*/libpthread-2.*so*
+-}
+-
+-# helgrind-glibc2X-006 was merged into helgrind-glibc2X-005
+-
+-# helgrind-glibc2X-007 was merged into helgrind-glibc2X-001
+-
+-# helgrind-glibc2X-008 was merged into helgrind-glibc2X-004
+-
+-# helgrind-glibc2X-009 was merged into helgrind-glibc2X-004
+-
+-# helgrind-glibc2X-010 was merged into helgrind-glibc2X-001
+-
+-# helgrind-glibc2X-011 was merged into helgrind-glibc2X-004
+-
+-# helgrind-glibc2X-012 was merged into helgrind-glibc2X-001
+-
+-# helgrind-glibc2X-013 was merged into helgrind-glibc2X-001
+-
+-# helgrind-glibc2X-014 was merged into helgrind-glibc2X-001
+-
+-# helgrind-glibc2X-015 was merged into helgrind-glibc2X-004
+-
+-# helgrind-glibc2X-016 was merged into helgrind-glibc2X-004
+-
+-# These are very ugly.  They are needed to suppress errors inside (eg)
+-# NPTL's pthread_cond_signal.  Why only one stack frame -- at least we
+-# should see the wrapper calling the real functions, right?
+-# Unfortunately, no: the real functions are handwritten assembly (in
+-# the glibc-2.5 sources) and does not create a proper stack frame.
+-# Therefore it's only one level of unwinding before we're back out in
+-# user code rather than the 2 levels you'd expect.
+-{
+-   helgrind-glibc2X-101
+-   Helgrind:Race
+-   obj:*/lib*/libpthread-2.*so*
+-   fun:pthread_*
+-}
+-{
+-   helgrind-glibc2X-102
+-   Helgrind:Race
+-   fun:mythread_wrapper
+-   obj:*/lib*/libpthread-2.*so*
+-}
+-{
+-   helgrind-glibc2X-103
+-   Helgrind:Race
+-   fun:pthread_cond_*@@GLIBC_2.*
+-}
+-{
+-   helgrind-glibc2X-104
+-   Helgrind:Race
+-   fun:__lll_mutex_*
+-}
+-{
+-   helgrind-glibc2X-105
+-   Helgrind:Race
+-   fun:pthread_rwlock_*lock*
+-}
+-{
+-   helgrind-glibc2X-106
+-   Helgrind:Race
+-   fun:__lll_lock_wait
+-}
+-{
+-   helgrind-glibc2X-107
+-   Helgrind:Race
+-   obj:*/lib*/libpthread-2.*so*
+-   fun:sem_*
+-}
+-{
+-   helgrind-glibc2X-108
+-   Helgrind:Race
+-   fun:clone
+-}
+-{
+-   helgrind-glibc2X-109
+-   Helgrind:Race
+-   fun:start_thread
+-}
+-{
+-   helgrind-glibc2X-110
+-   Helgrind:Race
+-   obj:*/lib*/libc-2.*so*
+-   fun:pthread_*
+-}
+-{
+-   helgrind-glibc2X-111
+-   Helgrind:Race
+-   fun:__lll_*lock_*
+-}
+-{
+-   helgrind-glibc2X-113
+-   Helgrind:Race
+-   fun:pthread_barrier_wait*
+-}
+-
+-
+-####################################################
+-# qt4 specific (GNU mangling)
+-#
+-{
+-   helgrind-qt4---QMutex::lock()-QMutex::lock()
+-   Helgrind:Race
+-   ...
+-   fun:_ZN6QMutex4lockEv
+-   fun:_ZN6QMutex4lockEv
+-}
+-
+-{                                                               
+-   helgrind-qt4---QMutex::unlock()-QMutex::unlock()
+-   Helgrind:Race                                                
+-   ...
+-   fun:_ZN6QMutex6unlockEv                                      
+-   fun:_ZN6QMutex6unlockEv
+-}
+-
+-{
+-   helgrind-qt4---pthread_setspecific-QThreadPrivate::start(void*)
+-   Helgrind:Race
+-   fun:pthread_setspecific
+-   fun:_ZN14QThreadPrivate5startEPv
+-}
+-
+-
+-####################################################
+-# Other stuff.
+-#
+-# pthread_exit apparently calls some kind of unwind
+-# mechanism - maybe to remove some number of frames
+-# from the thread's stack, so as to get back to the 
+-# outermost frame for the thread?  Anyway..
+-
+-{
+-   helgrind---*Unwind*-...-pthread_exit
+-   Helgrind:Race
+-   fun:*Unwind*
+-   ...
+-   fun:pthread_exit
+-}
+-
+-{
+-   helgrind---...-*Unwind*-*pthread_unwind*
+-   Helgrind:Race
+-   ...
+-   fun:*Unwind*
+-   fun:*pthread_unwind*
+-}
+-
+-{
+-   helgrind---...-*Unwind*-*pthread_unwind*
+-   Helgrind:Race
+-   ...
+-   fun:_Unwind*
+-   ...
+-   fun:_Unwind_Backtrace
+-}
+-
+-
+-
+-
+-####################################################
+-# To do with thread stack allocation and deallocation?
+-#
+-{
+-   helgrind---free_stacks-__deallocate_stack
+-   Helgrind:Race
+-   fun:free_stacks
+-   fun:__deallocate_stack
+-}
+-
+-{
+-   helgrind---__deallocate_stack-start_thread-clone
+-   Helgrind:Race
+-   fun:__deallocate_stack
+-   fun:start_thread
+-   fun:clone
+-}
+-
+-
+-####################################################
+-# To do with pthread_{set,get}specific
+-#
+-{
+-   helgrind---pthread_setspecific
+-   Helgrind:Race
+-   fun:pthread_setspecific
+-}
+-
+-{
+-   helgrind---pthread_getspecific
+-   Helgrind:Race
+-   fun:pthread_getspecific
+-}
+-
+-
+-####################################################
+-# To do with dynamic linking
+-#
+-# helgrind---ld.so-...-dlsym was merged into helgrind-glibc2X-001
+-
+-{
+-   helgrind---_dl_allocate_tls 
+-   Helgrind:Race
+-   fun:mempcpy
+-   fun:_dl_allocate_tls_init
+-   ...
+-   fun:pthread_create@@GLIBC_2.2*
+-   fun:pthread_create_WRK
+-   fun:pthread_create@*
+-}
+-
+-{
+-   helgrind---_dl_allocate_tls2
+-   Helgrind:Race
+-   fun:memcpy
+-   fun:__mempcpy_inline
+-   fun:_dl_allocate_tls_init
+-   ...
+-   fun:pthread_create@@GLIBC_2.2*
+-   fun:pthread_create_WRK
+-   fun:pthread_create@*
+-}
+-
+-####################################################
+-# To do with GNU libgomp
+-#
+-{
+-   helgrind---libgomp43-1
+-   Helgrind:Race
+-   fun:gomp_ordered_sync
+-}
+-
+-{
+-   helgrind---libgomp43-1
+-   Helgrind:Race
+-   fun:gomp_ordered_next
+-}
+-
+-{
+-   helgrind---libgomp43-1
+-   Helgrind:Race
+-   fun:gomp_ordered_last
+-}
+Index: valgrind-3.17.0/glibc-2.X-helgrind.supp.in
+===================================================================
+--- /dev/null
++++ valgrind-3.17.0/glibc-2.X-helgrind.supp.in
+@@ -0,0 +1,303 @@
++# IMPORTANT: DO NOT EDIT glibc-2.X-helgrind.supp, as it is as a generated
++# file.  Instead edit glibc-2.X-helgrind.supp.in.
++
++# FIXME 22 Jan 09: helgrind-glibc2X-005 overlaps with a lot of
++# other stuff.  They should be removed.
++
++##----------------------------------------------------------------------##
++# Suppressions for the Helgrind tool when using 
++# a glibc-2.{3,4,5,6,7,8,9} system
++
++####################################################
++# glibc-2.X specific
++# These are generic cover-alls which catch a lot of stuff
++# in various combinations of ld, libc and libpthread
++#
++# Note this is heavyhanded and not very clever:
++#
++# - suppress anything that has its top frame in ld.so
++#   That's fine, since it's mostly dynamic linking stuff,
++#   which has various deliberate (harmless) races
++#
++# - suppress anything that has its top frame in libc.so.
++#   This really isn't clever, since it could hide some 
++#   legitimate races.  But the problem is, if we don't do
++#   this, then loads of errors to do with stdio are reported, because
++#   H fails to see glibc's internal locking/unlocking of FILE*s
++#   as required by POSIX.  A better solution is needed.
++#
++# - some of the stdio functions in newer glibc manipulate stdio
++#   FILE*s state through mempcpy, which we intercept, so we also need
++#   to suppress such manipulations.
++
++#{
++#   helgrind-glibc2X-001
++#   Helgrind:Race
++#   obj:*/lib*/ld-2.*so*
++#}
++
++# helgrind-glibc2X-002 was merged into helgrind-glibc2X-001
++
++# helgrind-glibc2X-003 was merged into helgrind-glibc2X-001
++
++{
++   helgrind-glibc2X-004
++   Helgrind:Race
++   obj:@GLIBC_LIBC_PATH@
++}
++
++{
++   helgrind-glibc-io-xsputn-mempcpy
++   Helgrind:Race
++   fun:__GI_mempcpy
++   fun:_IO_*xsputn*
++   obj:@GLIBC_LIBC_PATH@
++}
++
++{
++   helgrind-glibc2X-005
++   Helgrind:Race
++   obj:@GLIBC_LIBPTHREAD_PATH@
++}
++
++# helgrind-glibc2X-006 was merged into helgrind-glibc2X-005
++
++# helgrind-glibc2X-007 was merged into helgrind-glibc2X-001
++
++# helgrind-glibc2X-008 was merged into helgrind-glibc2X-004
++
++# helgrind-glibc2X-009 was merged into helgrind-glibc2X-004
++
++# helgrind-glibc2X-010 was merged into helgrind-glibc2X-001
++
++# helgrind-glibc2X-011 was merged into helgrind-glibc2X-004
++
++# helgrind-glibc2X-012 was merged into helgrind-glibc2X-001
++
++# helgrind-glibc2X-013 was merged into helgrind-glibc2X-001
++
++# helgrind-glibc2X-014 was merged into helgrind-glibc2X-001
++
++# helgrind-glibc2X-015 was merged into helgrind-glibc2X-004
++
++# helgrind-glibc2X-016 was merged into helgrind-glibc2X-004
++
++# These are very ugly.  They are needed to suppress errors inside (eg)
++# NPTL's pthread_cond_signal.  Why only one stack frame -- at least we
++# should see the wrapper calling the real functions, right?
++# Unfortunately, no: the real functions are handwritten assembly (in
++# the glibc-2.5 sources) and does not create a proper stack frame.
++# Therefore it's only one level of unwinding before we're back out in
++# user code rather than the 2 levels you'd expect.
++{
++   helgrind-glibc2X-101
++   Helgrind:Race
++   obj:@GLIBC_LIBPTHREAD_PATH@
++   fun:pthread_*
++}
++{
++   helgrind-glibc2X-102
++   Helgrind:Race
++   fun:mythread_wrapper
++   obj:@GLIBC_LIBPTHREAD_PATH@
++}
++{
++   helgrind-glibc2X-103
++   Helgrind:Race
++   fun:pthread_cond_*@@GLIBC_2.*
++}
++{
++   helgrind-glibc2X-104
++   Helgrind:Race
++   fun:__lll_mutex_*
++}
++{
++   helgrind-glibc2X-105
++   Helgrind:Race
++   fun:pthread_rwlock_*lock*
++}
++{
++   helgrind-glibc2X-106
++   Helgrind:Race
++   fun:__lll_lock_wait
++}
++{
++   helgrind-glibc2X-107
++   Helgrind:Race
++   obj:@GLIBC_LIBPTHREAD_PATH@
++   fun:sem_*
++}
++{
++   helgrind-glibc2X-108
++   Helgrind:Race
++   fun:clone
++}
++{
++   helgrind-glibc2X-109
++   Helgrind:Race
++   fun:start_thread
++}
++{
++   helgrind-glibc2X-110
++   Helgrind:Race
++   obj:@GLIBC_LIBC_PATH@
++   fun:pthread_*
++}
++{
++   helgrind-glibc2X-111
++   Helgrind:Race
++   fun:__lll_*lock_*
++}
++{
++   helgrind-glibc2X-113
++   Helgrind:Race
++   fun:pthread_barrier_wait*
++}
++
++
++####################################################
++# qt4 specific (GNU mangling)
++#
++{
++   helgrind-qt4---QMutex::lock()-QMutex::lock()
++   Helgrind:Race
++   ...
++   fun:_ZN6QMutex4lockEv
++   fun:_ZN6QMutex4lockEv
++}
++
++{                                                               
++   helgrind-qt4---QMutex::unlock()-QMutex::unlock()
++   Helgrind:Race                                                
++   ...
++   fun:_ZN6QMutex6unlockEv                                      
++   fun:_ZN6QMutex6unlockEv
++}
++
++{
++   helgrind-qt4---pthread_setspecific-QThreadPrivate::start(void*)
++   Helgrind:Race
++   fun:pthread_setspecific
++   fun:_ZN14QThreadPrivate5startEPv
++}
++
++
++####################################################
++# Other stuff.
++#
++# pthread_exit apparently calls some kind of unwind
++# mechanism - maybe to remove some number of frames
++# from the thread's stack, so as to get back to the 
++# outermost frame for the thread?  Anyway..
++
++{
++   helgrind---*Unwind*-...-pthread_exit
++   Helgrind:Race
++   fun:*Unwind*
++   ...
++   fun:pthread_exit
++}
++
++{
++   helgrind---...-*Unwind*-*pthread_unwind*
++   Helgrind:Race
++   ...
++   fun:*Unwind*
++   fun:*pthread_unwind*
++}
++
++{
++   helgrind---...-*Unwind*-*pthread_unwind*
++   Helgrind:Race
++   ...
++   fun:_Unwind*
++   ...
++   fun:_Unwind_Backtrace
++}
++
++
++
++
++####################################################
++# To do with thread stack allocation and deallocation?
++#
++{
++   helgrind---free_stacks-__deallocate_stack
++   Helgrind:Race
++   fun:free_stacks
++   fun:__deallocate_stack
++}
++
++{
++   helgrind---__deallocate_stack-start_thread-clone
++   Helgrind:Race
++   fun:__deallocate_stack
++   fun:start_thread
++   fun:clone
++}
++
++
++####################################################
++# To do with pthread_{set,get}specific
++#
++{
++   helgrind---pthread_setspecific
++   Helgrind:Race
++   fun:pthread_setspecific
++}
++
++{
++   helgrind---pthread_getspecific
++   Helgrind:Race
++   fun:pthread_getspecific
++}
++
++
++####################################################
++# To do with dynamic linking
++#
++# helgrind---ld.so-...-dlsym was merged into helgrind-glibc2X-001
++
++{
++   helgrind---_dl_allocate_tls 
++   Helgrind:Race
++   fun:mempcpy
++   fun:_dl_allocate_tls_init
++   ...
++   fun:pthread_create@@GLIBC_2.2*
++   fun:pthread_create_WRK
++   fun:pthread_create@*
++}
++
++{
++   helgrind---_dl_allocate_tls2
++   Helgrind:Race
++   fun:memcpy
++   fun:__mempcpy_inline
++   fun:_dl_allocate_tls_init
++   ...
++   fun:pthread_create@@GLIBC_2.2*
++   fun:pthread_create_WRK
++   fun:pthread_create@*
++}
++
++####################################################
++# To do with GNU libgomp
++#
++{
++   helgrind---libgomp43-1
++   Helgrind:Race
++   fun:gomp_ordered_sync
++}
++
++{
++   helgrind---libgomp43-1
++   Helgrind:Race
++   fun:gomp_ordered_next
++}
++
++{
++   helgrind---libgomp43-1
++   Helgrind:Race
++   fun:gomp_ordered_last
++}
diff --git a/poky/meta/recipes-devtools/valgrind/valgrind_3.17.0.bb b/poky/meta/recipes-devtools/valgrind/valgrind_3.17.0.bb
index 60b2486..2805ad0 100644
--- a/poky/meta/recipes-devtools/valgrind/valgrind_3.17.0.bb
+++ b/poky/meta/recipes-devtools/valgrind/valgrind_3.17.0.bb
@@ -45,6 +45,10 @@
            file://0001-memcheck-tests-Fix-timerfd-syscall-test.patch \
            file://0001-Add-missing-musl.supp.patch \
            file://0001-drd-tests-swapcontext-Add-SIGALRM-handler-to-avoid-s.patch \
+           file://6da22a4d246519cd1a638cfc7eff00cdd74413c4.patch \
+           file://200b6a5a0ea3e1e154663b0fc575bfe2becf177d.patch \
+           file://a1364805fc74b5690f763033c0c9b43f27613572.patch \
+           file://52ed51fc35f8a6148c2940eb46932b02dd3b9b23.patch \
            "
 SRC_URI[md5sum] = "afe11b5572c3121a781433b7c0ab741b"
 SRC_URI[sha256sum] = "ad3aec668e813e40f238995f60796d9590eee64a16dff88421430630e69285a2"
@@ -54,7 +58,7 @@
 
 # patch 0001-memcheck-vgtests-remove-fullpath-after-flags.patch removes relative path
 # argument. Change expected stderr files accordingly.
-do_patch_append() {
+do_patch:append() {
     bb.build.exec_func('do_sed_paths', d)
 }
 
@@ -64,23 +68,23 @@
 }
 
 # valgrind supports armv7 and above
-COMPATIBLE_HOST_armv4 = 'null'
-COMPATIBLE_HOST_armv5 = 'null'
-COMPATIBLE_HOST_armv6 = 'null'
+COMPATIBLE_HOST:armv4 = 'null'
+COMPATIBLE_HOST:armv5 = 'null'
+COMPATIBLE_HOST:armv6 = 'null'
 
 # valgrind fails with powerpc soft-float
-COMPATIBLE_HOST_powerpc = "${@bb.utils.contains('TARGET_FPU', 'soft', 'null', '.*-linux', d)}"
+COMPATIBLE_HOST:powerpc = "${@bb.utils.contains('TARGET_FPU', 'soft', 'null', '.*-linux', d)}"
 
 # X32 isn't supported by valgrind at this time
-COMPATIBLE_HOST_linux-gnux32 = 'null'
-COMPATIBLE_HOST_linux-muslx32 = 'null'
+COMPATIBLE_HOST:linux-gnux32 = 'null'
+COMPATIBLE_HOST:linux-muslx32 = 'null'
 
 # Disable for some MIPS variants
-COMPATIBLE_HOST_mipsarchr6 = 'null'
-COMPATIBLE_HOST_linux-gnun32 = 'null'
+COMPATIBLE_HOST:mipsarchr6 = 'null'
+COMPATIBLE_HOST:linux-gnun32 = 'null'
 
 # Disable for powerpc64 with musl
-COMPATIBLE_HOST_libc-musl_powerpc64 = 'null'
+COMPATIBLE_HOST:libc-musl:powerpc64 = 'null'
 
 # brokenseip is unfortunately required by ptests to pass
 inherit autotools-brokensep ptest multilib_header
@@ -89,7 +93,7 @@
 EXTRA_OECONF += "${@['--enable-only32bit','--enable-only64bit'][d.getVar('SITEINFO_BITS') != '32']}"
 
 # valgrind checks host_cpu "armv7*)", so we need to over-ride the autotools.bbclass default --host option
-EXTRA_OECONF_append_arm = " --host=armv7${HOST_VENDOR}-${HOST_OS}"
+EXTRA_OECONF:append:arm = " --host=armv7${HOST_VENDOR}-${HOST_OS}"
 
 EXTRA_OEMAKE = "-w"
 
@@ -101,49 +105,49 @@
 # which fixes build path issue in DWARF.
 SELECTED_OPTIMIZATION = "${DEBUG_FLAGS}"
 
-do_configure_prepend () {
+do_configure:prepend () {
     rm -rf ${S}/config.h
     sed -i -e 's:$(abs_top_builddir):$(pkglibdir)/ptest:g' ${S}/none/tests/Makefile.am
     sed -i -e 's:$(top_builddir):$(pkglibdir)/ptest:g' ${S}/memcheck/tests/Makefile.am
 }
 
-do_install_append () {
+do_install:append () {
     install -m 644 ${B}/default.supp ${D}/${libexecdir}/valgrind/
     oe_multilib_header valgrind/config.h
 }
 
 VALGRINDARCH ?= "${TARGET_ARCH}"
-VALGRINDARCH_aarch64 = "arm64"
-VALGRINDARCH_x86-64 = "amd64"
-VALGRINDARCH_x86 = "x86"
-VALGRINDARCH_mips = "mips32"
-VALGRINDARCH_mipsel = "mips32"
-VALGRINDARCH_mips64el = "mips64"
-VALGRINDARCH_powerpc = "ppc"
-VALGRINDARCH_powerpc64 = "ppc64"
-VALGRINDARCH_powerpc64le = "ppc64le"
+VALGRINDARCH:aarch64 = "arm64"
+VALGRINDARCH:x86-64 = "amd64"
+VALGRINDARCH:x86 = "x86"
+VALGRINDARCH:mips = "mips32"
+VALGRINDARCH:mipsel = "mips32"
+VALGRINDARCH:mips64el = "mips64"
+VALGRINDARCH:powerpc = "ppc"
+VALGRINDARCH:powerpc64 = "ppc64"
+VALGRINDARCH:powerpc64le = "ppc64le"
 
 INHIBIT_PACKAGE_STRIP_FILES = "${PKGD}${libexecdir}/valgrind/vgpreload_memcheck-${VALGRINDARCH}-linux.so"
 
-RDEPENDS_${PN} += "perl"
+RDEPENDS:${PN} += "perl"
 
 # valgrind needs debug information for ld.so at runtime in order to
 # redirect functions like strlen.
-RRECOMMENDS_${PN} += "${TCLIBC}-dbg"
+RRECOMMENDS:${PN} += "${TCLIBC}-dbg"
 
-RDEPENDS_${PN}-ptest += " bash coreutils curl file \
+RDEPENDS:${PN}-ptest += " bash coreutils curl file \
    gdb libgomp \
    perl \
    perl-module-file-basename perl-module-file-glob perl-module-getopt-long \
    perl-module-overloading perl-module-cwd perl-module-ipc-open3 \
    perl-module-carp perl-module-symbol \
    procps sed ${PN}-dbg ${PN}-src ${TCLIBC}-src gcc-runtime-dbg"
-RDEPENDS_${PN}-ptest_append_libc-glibc = " glibc-utils"
+RDEPENDS:${PN}-ptest:append:libc-glibc = " glibc-utils"
 
 # One of the tests contains a bogus interpreter path on purpose.
 # Skip file dependency check
-SKIP_FILEDEPS_${PN}-ptest = '1'
-INSANE_SKIP_${PN}-ptest = "debug-deps"
+SKIP_FILEDEPS:${PN}-ptest = '1'
+INSANE_SKIP:${PN}-ptest = "debug-deps"
 
 do_compile_ptest() {
     oe_runmake check
diff --git a/poky/meta/recipes-devtools/xmlto/xmlto_0.0.28.bb b/poky/meta/recipes-devtools/xmlto/xmlto_0.0.28.bb
index d988e1f..1214901 100644
--- a/poky/meta/recipes-devtools/xmlto/xmlto_0.0.28.bb
+++ b/poky/meta/recipes-devtools/xmlto/xmlto_0.0.28.bb
@@ -18,14 +18,14 @@
 
 DEPENDS = "libxml2-native"
 
-RDEPENDS_${PN} = "docbook-xml-dtd4 \
+RDEPENDS:${PN} = "docbook-xml-dtd4 \
                   docbook-xsl-stylesheets \
                   util-linux \
                   libxml2 \
                   libxslt \
                   bash \
 "
-RDEPENDS_${PN}_append_class-target = " \
+RDEPENDS:${PN}:append:class-target = " \
                   libxml2-utils \
                   libxslt-bin \
                   coreutils \
@@ -34,9 +34,9 @@
 
 BBCLASSEXTEND = "native"
 
-EXTRA_OECONF_append = " BASH=/bin/bash GCP=/bin/cp XMLLINT=xmllint XSLTPROC=xsltproc"
+EXTRA_OECONF:append = " BASH=/bin/bash GCP=/bin/cp XMLLINT=xmllint XSLTPROC=xsltproc"
 
-do_install_append_class-native() {
+do_install:append:class-native() {
     create_wrapper ${D}${bindir}/xmlto XML_CATALOG_FILES=${sysconfdir}/xml/catalog
 }
 
diff --git a/poky/meta/recipes-extended/acpica/acpica_20210331.bb b/poky/meta/recipes-extended/acpica/acpica_20210331.bb
index e17bc94..35f8ecd 100644
--- a/poky/meta/recipes-extended/acpica/acpica_20210331.bb
+++ b/poky/meta/recipes-extended/acpica/acpica_20210331.bb
@@ -26,7 +26,7 @@
 inherit update-alternatives
 
 ALTERNATIVE_PRIORITY = "100"
-ALTERNATIVE_${PN} = "acpixtract acpidump"
+ALTERNATIVE:${PN} = "acpixtract acpidump"
 
 EXTRA_OEMAKE = "CC='${CC}' \
                 OPT_CFLAGS=-Wall \
@@ -44,8 +44,8 @@
 
 # iasl*.bb is a subset of this recipe, so RREPLACE it
 PROVIDES = "iasl"
-RPROVIDES_${PN} += "iasl"
-RREPLACES_${PN} += "iasl"
-RCONFLICTS_${PN} += "iasl"
+RPROVIDES:${PN} += "iasl"
+RREPLACES:${PN} += "iasl"
+RCONFLICTS:${PN} += "iasl"
 
 BBCLASSEXTEND = "native"
diff --git a/poky/meta/recipes-extended/asciidoc/asciidoc_9.1.0.bb b/poky/meta/recipes-extended/asciidoc/asciidoc_9.1.0.bb
index 523bf33..dd9f8e3 100644
--- a/poky/meta/recipes-extended/asciidoc/asciidoc_9.1.0.bb
+++ b/poky/meta/recipes-extended/asciidoc/asciidoc_9.1.0.bb
@@ -24,8 +24,8 @@
 CLEANBROKEN = "1"
 
 # target and nativesdk needs python3, but for native we can use the host.
-RDEPENDS_${PN} += "python3"
-RDEPENDS_remove_class-native = "python3"
+RDEPENDS:${PN} += "python3"
+RDEPENDS:remove:class-native = "python3"
 
 BBCLASSEXTEND = "native nativesdk"
 
diff --git a/poky/meta/recipes-extended/at/at_3.2.2.bb b/poky/meta/recipes-extended/at/at_3.2.2.bb
index 5c20187..efe5694 100644
--- a/poky/meta/recipes-extended/at/at_3.2.2.bb
+++ b/poky/meta/recipes-extended/at/at_3.2.2.bb
@@ -14,13 +14,13 @@
 
 PACKAGECONFIG[selinux] = "--with-selinux,--without-selinux,libselinux,"
 
-RDEPENDS_${PN} = "${@bb.utils.contains('DISTRO_FEATURES', 'pam', '${PAM_DEPS}', '', d)} \
+RDEPENDS:${PN} = "${@bb.utils.contains('DISTRO_FEATURES', 'pam', '${PAM_DEPS}', '', d)} \
 "
 
 PAM_DEPS = "libpam libpam-runtime pam-plugin-env pam-plugin-limits"
 
-RCONFLICTS_${PN} = "atd"
-RREPLACES_${PN} = "atd"
+RCONFLICTS:${PN} = "atd"
+RREPLACES:${PN} = "atd"
 
 SRC_URI = "http://software.calhariz.com/at/${BPN}_${PV}.orig.tar.gz \
     file://fix_parallel_build_error.patch \
@@ -51,7 +51,7 @@
 INITSCRIPT_NAME = "atd"
 INITSCRIPT_PARAMS = "defaults"
 
-SYSTEMD_SERVICE_${PN} = "atd.service"
+SYSTEMD_SERVICE:${PN} = "atd.service"
 
 copy_sources() {
 	cp -f ${WORKDIR}/posixtm.[ch] ${S}
diff --git a/poky/meta/recipes-extended/bash/bash.inc b/poky/meta/recipes-extended/bash/bash.inc
index 7350601..ca788e1 100644
--- a/poky/meta/recipes-extended/bash/bash.inc
+++ b/poky/meta/recipes-extended/bash/bash.inc
@@ -22,18 +22,18 @@
 # causes a lot of garbage in non-interactive shells
 CFLAGS += "-DBRACKETED_PASTE_DEFAULT=0"
 
-ALTERNATIVE_${PN} = "bash sh"
+ALTERNATIVE:${PN} = "bash sh"
 ALTERNATIVE_LINK_NAME[bash] = "${base_bindir}/bash"
 ALTERNATIVE_TARGET[bash] = "${base_bindir}/bash"
 ALTERNATIVE_LINK_NAME[sh] = "${base_bindir}/sh"
 ALTERNATIVE_TARGET[sh] = "${base_bindir}/bash.${BPN}"
 ALTERNATIVE_PRIORITY = "100"
 
-RDEPENDS_${PN} += "base-files"
-RDEPENDS_${PN}_class-nativesdk = ""
-RDEPENDS_${PN}-ptest += "make coreutils perl sed shadow util-linux-setpriv"
+RDEPENDS:${PN} += "base-files"
+RDEPENDS:${PN}:class-nativesdk = ""
+RDEPENDS:${PN}-ptest += "make coreutils perl sed shadow util-linux-setpriv"
 
-RDEPENDS_${PN}-ptest_append_libc-glibc = " \
+RDEPENDS:${PN}-ptest:append:libc-glibc = " \
 	glibc-gconv-big5hkscs \
 	glibc-gconv-iso8859-1 \
 	glibc-utils \
@@ -46,13 +46,13 @@
 
 CACHED_CONFIGUREVARS += "headersdir=${includedir}/${PN}"
 
-do_configure_prepend () {
+do_configure:prepend () {
     if [ ! -e ${S}/acinclude.m4 ]; then
        cat ${S}/aclocal.m4 > ${S}/acinclude.m4
     fi
 }
 
-do_compile_prepend() {
+do_compile:prepend() {
     # Remove any leftover .build files. This ensures that bash always has the
     # same version number and keeps builds reproducible
     rm -f ${B}/.build
@@ -62,14 +62,14 @@
 	oe_runmake buildtest
 }
 
-do_install_append () {
+do_install:append () {
 	# Move /usr/bin/bash to /bin/bash, if need
 	if [ "${base_bindir}" != "${bindir}" ]; then
 		mkdir -p ${D}${base_bindir}
 		mv ${D}${bindir}/bash ${D}${base_bindir}
 	fi
 }
-do_install_append_class-target () {
+do_install:append:class-target () {
 	# Clean buildhost references in bashbug
 	sed -i -e "s,--sysroot=${STAGING_DIR_TARGET},,g" \
 		-e "s,-I${WORKDIR}/\S* ,,g" \
@@ -107,20 +107,20 @@
 # hash
 do_install_ptest[vardepsexclude] += "UNINATIVE_LOADER"
 
-pkg_postinst_${PN} () {
+pkg_postinst:${PN} () {
 	grep -q "^${base_bindir}/bash$" $D${sysconfdir}/shells || echo ${base_bindir}/bash >> $D${sysconfdir}/shells
 }
 
-pkg_postrm_${PN} () {
+pkg_postrm:${PN} () {
 	printf "$(grep -v "^${base_bindir}/bash$" $D${sysconfdir}/shells)\n" > $D${sysconfdir}/shells
 }
 
 PACKAGES += "${PN}-bashbug"
-FILES_${PN} = "${bindir}/bash ${base_bindir}/bash.bash"
-FILES_${PN}-bashbug = "${bindir}/bashbug"
+FILES:${PN} = "${bindir}/bash ${base_bindir}/bash.bash"
+FILES:${PN}-bashbug = "${bindir}/bashbug"
 
 PACKAGE_BEFORE_PN += "${PN}-loadable"
-RDEPENDS_${PN}-loadable += "${PN}"
-FILES_${PN}-loadable += "${libdir}/bash/*"
+RDEPENDS:${PN}-loadable += "${PN}"
+FILES:${PN}-loadable += "${libdir}/bash/*"
 
-RPROVIDES_${PN} += "${@bb.utils.contains('DISTRO_FEATURES', 'usrmerge', '/bin/sh /bin/bash', '', d)}"
+RPROVIDES:${PN} += "${@bb.utils.contains('DISTRO_FEATURES', 'usrmerge', '/bin/sh /bin/bash', '', d)}"
diff --git a/poky/meta/recipes-extended/bash/bash_5.1.8.bb b/poky/meta/recipes-extended/bash/bash_5.1.8.bb
index 5d7704a..9400835 100644
--- a/poky/meta/recipes-extended/bash/bash_5.1.8.bb
+++ b/poky/meta/recipes-extended/bash/bash_5.1.8.bb
@@ -19,7 +19,7 @@
 
 SRC_URI[tarball.sha256sum] = "0cfb5c9bb1a29f800a97bd242d19511c997a1013815b805e0fdd32214113d6be"
 
-DEBUG_OPTIMIZATION_append_armv4 = " ${@bb.utils.contains('TUNE_CCARGS', '-mthumb', '-fomit-frame-pointer', '', d)}"
-DEBUG_OPTIMIZATION_append_armv5 = " ${@bb.utils.contains('TUNE_CCARGS', '-mthumb', '-fomit-frame-pointer', '', d)}"
+DEBUG_OPTIMIZATION:append:armv4 = " ${@bb.utils.contains('TUNE_CCARGS', '-mthumb', '-fomit-frame-pointer', '', d)}"
+DEBUG_OPTIMIZATION:append:armv5 = " ${@bb.utils.contains('TUNE_CCARGS', '-mthumb', '-fomit-frame-pointer', '', d)}"
 
 BBCLASSEXTEND = "nativesdk"
diff --git a/poky/meta/recipes-extended/bc/bc_1.07.1.bb b/poky/meta/recipes-extended/bc/bc_1.07.1.bb
index ff3e8f4..37f06b7 100644
--- a/poky/meta/recipes-extended/bc/bc_1.07.1.bb
+++ b/poky/meta/recipes-extended/bc/bc_1.07.1.bb
@@ -25,11 +25,11 @@
 PACKAGECONFIG[readline] = "--with-readline,--without-readline,readline"
 PACKAGECONFIG[libedit] = "--with-libedit,--without-libedit,libedit"
 
-do_compile_prepend() {
+do_compile:prepend() {
     cp -f ${WORKDIR}/libmath.h ${B}/bc/libmath.h
 }
 
-ALTERNATIVE_${PN} = "bc dc"
+ALTERNATIVE:${PN} = "bc dc"
 ALTERNATIVE_PRIORITY = "100"
 
 BBCLASSEXTEND = "native"
diff --git a/poky/meta/recipes-extended/bzip2/bzip2_1.0.8.bb b/poky/meta/recipes-extended/bzip2/bzip2_1.0.8.bb
index 70eb67f..296bc68 100644
--- a/poky/meta/recipes-extended/bzip2/bzip2_1.0.8.bb
+++ b/poky/meta/recipes-extended/bzip2/bzip2_1.0.8.bb
@@ -5,13 +5,13 @@
 HOMEPAGE = "https://sourceware.org/bzip2/"
 SECTION = "console/utils"
 LICENSE = "bzip2-1.0.6 & GPLv3+ & Apache-2.0 & MS-PL & BSD-3-Clause & Zlib"
-LICENSE_${PN} = "bzip2-1.0.6"
-LICENSE_${PN}-dev = "bzip2-1.0.6"
-LICENSE_${PN}-dbg = "bzip2-1.0.6"
-LICENSE_${PN}-doc = "bzip2-1.0.6"
-LICENSE_${PN}-src = "bzip2-1.0.6"
-LICENSE_libbz2 = "bzip2-1.0.6"
-LICENSE_${PN}-ptest = "bzip2-1.0.6 & GPLv3+ & Apache-2.0 & MS-PL & BSD-3-Clause & Zlib"
+LICENSE:${PN} = "bzip2-1.0.6"
+LICENSE:${PN}-dev = "bzip2-1.0.6"
+LICENSE:${PN}-dbg = "bzip2-1.0.6"
+LICENSE:${PN}-doc = "bzip2-1.0.6"
+LICENSE:${PN}-src = "bzip2-1.0.6"
+LICENSE:libbz2 = "bzip2-1.0.6"
+LICENSE:${PN}-ptest = "bzip2-1.0.6 & GPLv3+ & Apache-2.0 & MS-PL & BSD-3-Clause & Zlib"
 
 LIC_FILES_CHKSUM = "file://LICENSE;beginline=4;endline=37;md5=600af43c50f1fcb82e32f19b32df4664 \
                     file://${WORKDIR}/git/commons-compress/LICENSE.txt;md5=86d3f3a95c324c9479bd8986968f4327 \
@@ -36,17 +36,17 @@
 
 PACKAGES =+ "libbz2"
 
-CFLAGS_append = " -fPIC -fpic -Winline -fno-strength-reduce -D_FILE_OFFSET_BITS=64"
+CFLAGS:append = " -fPIC -fpic -Winline -fno-strength-reduce -D_FILE_OFFSET_BITS=64"
 
 inherit autotools update-alternatives ptest relative_symlinks
 
 ALTERNATIVE_PRIORITY = "100"
-ALTERNATIVE_${PN} = "bunzip2 bzcat bzip2"
+ALTERNATIVE:${PN} = "bunzip2 bzcat bzip2"
 
 #install binaries to bzip2-native under sysroot for replacement-native
-EXTRA_OECONF_append_class-native = " --bindir=${STAGING_BINDIR_NATIVE}/${PN}"
+EXTRA_OECONF:append:class-native = " --bindir=${STAGING_BINDIR_NATIVE}/${PN}"
 
-do_configure_prepend () {
+do_configure:prepend () {
     sed -i -e "s|%BZIP2_VERSION%|${PV}|" ${S}/configure.ac
 }
 
@@ -62,9 +62,9 @@
 	sed -i -e "s|^Makefile:|_Makefile:|" ${D}${PTEST_PATH}/Makefile
 }
 
-FILES_libbz2 = "${libdir}/lib*${SOLIBS}"
+FILES:libbz2 = "${libdir}/lib*${SOLIBS}"
 
-RDEPENDS_${PN}-ptest += "make bash"
+RDEPENDS:${PN}-ptest += "make bash"
 
-PROVIDES_append_class-native = " bzip2-replacement-native"
+PROVIDES:append:class-native = " bzip2-replacement-native"
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-extended/cpio/cpio_2.13.bb b/poky/meta/recipes-extended/cpio/cpio_2.13.bb
index f4df826..20ea3c2 100644
--- a/poky/meta/recipes-extended/cpio/cpio_2.13.bb
+++ b/poky/meta/recipes-extended/cpio/cpio_2.13.bb
@@ -37,14 +37,14 @@
 
 PACKAGES =+ "${PN}-rmt"
 
-FILES_${PN}-rmt = "${sbindir}/rmt*"
+FILES:${PN}-rmt = "${sbindir}/rmt*"
 
 inherit update-alternatives
 
 ALTERNATIVE_PRIORITY = "100"
 
-ALTERNATIVE_${PN} = "cpio"
-ALTERNATIVE_${PN}-rmt = "rmt"
+ALTERNATIVE:${PN} = "cpio"
+ALTERNATIVE:${PN}-rmt = "rmt"
 
 ALTERNATIVE_LINK_NAME[cpio] = "${base_bindir}/cpio"
 
diff --git a/poky/meta/recipes-extended/cracklib/cracklib_2.9.5.bb b/poky/meta/recipes-extended/cracklib/cracklib_2.9.5.bb
index 9cdb71f..c267718 100644
--- a/poky/meta/recipes-extended/cracklib/cracklib_2.9.5.bb
+++ b/poky/meta/recipes-extended/cracklib/cracklib_2.9.5.bb
@@ -22,7 +22,7 @@
 
 inherit autotools gettext
 
-do_install_append_class-target() {
+do_install:append:class-target() {
 	create-cracklib-dict -o ${D}${datadir}/cracklib/pw_dict ${D}${datadir}/cracklib/cracklib-small
 }
 
diff --git a/poky/meta/recipes-extended/cronie/cronie_1.5.7.bb b/poky/meta/recipes-extended/cronie/cronie_1.5.7.bb
index d0abdd8..2cbae59 100644
--- a/poky/meta/recipes-extended/cronie/cronie_1.5.7.bb
+++ b/poky/meta/recipes-extended/cronie/cronie_1.5.7.bb
@@ -39,11 +39,11 @@
 INITSCRIPT_PARAMS = "start 90 2 3 4 5 . stop 60 0 1 6 ."
 
 USERADD_PACKAGES = "${PN}"
-GROUPADD_PARAM_${PN} = "--system crontab"
+GROUPADD_PARAM:${PN} = "--system crontab"
 
-SYSTEMD_SERVICE_${PN} = "crond.service"
+SYSTEMD_SERVICE:${PN} = "crond.service"
 
-do_install_append () {
+do_install:append () {
 	install -d ${D}${sysconfdir}/sysconfig/
 	install -d ${D}${sysconfdir}/init.d/
 	install -m 0644 ${S}/crond.sysconfig ${D}${sysconfdir}/sysconfig/crond
@@ -79,5 +79,5 @@
 	chmod 600 ${D}${sysconfdir}/crontab
 }
 
-FILES_${PN} += "${sysconfdir}/cron*"
-CONFFILES_${PN} += "${sysconfdir}/crontab"
+FILES:${PN} += "${sysconfdir}/cron*"
+CONFFILES:${PN} += "${sysconfdir}/crontab"
diff --git a/poky/meta/recipes-extended/cups/cups.inc b/poky/meta/recipes-extended/cups/cups.inc
index df23825..f6f8637 100644
--- a/poky/meta/recipes-extended/cups/cups.inc
+++ b/poky/meta/recipes-extended/cups/cups.inc
@@ -34,9 +34,9 @@
 inherit autotools-brokensep binconfig useradd systemd pkgconfig multilib_script
 
 USERADD_PACKAGES = "${PN}"
-GROUPADD_PARAM_${PN} = "--system lpadmin"
+GROUPADD_PARAM:${PN} = "--system lpadmin"
 
-SYSTEMD_SERVICE_${PN} = "cups.socket cups.path cups.service cups-lpd.socket"
+SYSTEMD_SERVICE:${PN} = "cups.socket cups.path cups.service cups-lpd.socket"
 
 PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'zeroconf', 'avahi', '', d)} \
                    ${@bb.utils.filter('DISTRO_FEATURES', 'pam systemd', d)}"
@@ -91,21 +91,21 @@
 
 PACKAGES =+ "${PN}-lib ${PN}-libimage"
 
-RDEPENDS_${PN} += "${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'procps', '', d)}"
-FILES_${PN} += "${libexecdir}/cups/"
+RDEPENDS:${PN} += "${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'procps', '', d)}"
+FILES:${PN} += "${libexecdir}/cups/"
 
-FILES_${PN}-lib = "${libdir}/libcups.so.*"
+FILES:${PN}-lib = "${libdir}/libcups.so.*"
 
-FILES_${PN}-libimage = "${libdir}/libcupsimage.so.*"
+FILES:${PN}-libimage = "${libdir}/libcupsimage.so.*"
 
 #package the html for the webgui inside the main packages (~1MB uncompressed)
 
-FILES_${PN} += "${datadir}/doc/cups/images \
+FILES:${PN} += "${datadir}/doc/cups/images \
                 ${datadir}/doc/cups/*html \
                 ${datadir}/doc/cups/*.css \
                 ${datadir}/icons/ \
                "
-CONFFILES_${PN} += "${sysconfdir}/cups/cupsd.conf"
+CONFFILES:${PN} += "${sysconfdir}/cups/cupsd.conf"
 
 MULTILIB_SCRIPTS = "${PN}-dev:${bindir}/cups-config"
 
diff --git a/poky/meta/recipes-extended/diffutils/diffutils.inc b/poky/meta/recipes-extended/diffutils/diffutils.inc
index c9e3130..194d6e5 100644
--- a/poky/meta/recipes-extended/diffutils/diffutils.inc
+++ b/poky/meta/recipes-extended/diffutils/diffutils.inc
@@ -7,7 +7,7 @@
 
 inherit autotools texinfo update-alternatives gettext
 
-ALTERNATIVE_${PN} = "diff cmp"
+ALTERNATIVE:${PN} = "diff cmp"
 ALTERNATIVE_PRIORITY = "100"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-extended/diffutils/diffutils_3.7.bb b/poky/meta/recipes-extended/diffutils/diffutils_3.7.bb
index b9a54fe..7b4ae16 100644
--- a/poky/meta/recipes-extended/diffutils/diffutils_3.7.bb
+++ b/poky/meta/recipes-extended/diffutils/diffutils_3.7.bb
@@ -19,7 +19,7 @@
 
 inherit ptest
 
-RDEPENDS_${PN}-ptest += "make perl"
+RDEPENDS:${PN}-ptest += "make perl"
 
 do_install_ptest() {
 	t=${D}${PTEST_PATH}
diff --git a/poky/meta/recipes-extended/ethtool/ethtool_5.13.bb b/poky/meta/recipes-extended/ethtool/ethtool_5.13.bb
index 8f6a790..3c99deb 100644
--- a/poky/meta/recipes-extended/ethtool/ethtool_5.13.bb
+++ b/poky/meta/recipes-extended/ethtool/ethtool_5.13.bb
@@ -17,7 +17,7 @@
 
 inherit autotools ptest bash-completion pkgconfig
 
-RDEPENDS_${PN}-ptest += "make"
+RDEPENDS:${PN}-ptest += "make"
 
 PACKAGECONFIG ?= "netlink"
 PACKAGECONFIG[netlink] = "--enable-netlink,--disable-netlink,libmnl,"
diff --git a/poky/meta/recipes-extended/findutils/findutils.inc b/poky/meta/recipes-extended/findutils/findutils.inc
index 9aa7239..ea8a1b7 100644
--- a/poky/meta/recipes-extended/findutils/findutils.inc
+++ b/poky/meta/recipes-extended/findutils/findutils.inc
@@ -10,7 +10,7 @@
 
 inherit autotools gettext texinfo update-alternatives
 
-ALTERNATIVE_${PN} = "find xargs"
+ALTERNATIVE:${PN} = "find xargs"
 ALTERNATIVE_PRIORITY = "100"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-extended/gawk/gawk_5.1.0.bb b/poky/meta/recipes-extended/gawk/gawk_5.1.0.bb
index ae897be..3c801e8 100644
--- a/poky/meta/recipes-extended/gawk/gawk_5.1.0.bb
+++ b/poky/meta/recipes-extended/gawk/gawk_5.1.0.bb
@@ -25,14 +25,14 @@
 
 inherit autotools gettext texinfo update-alternatives
 
-FILES_${PN} += "${datadir}/awk"
-FILES_${PN}-dev += "${libdir}/${BPN}/*.la"
+FILES:${PN} += "${datadir}/awk"
+FILES:${PN}-dev += "${libdir}/${BPN}/*.la"
 
-ALTERNATIVE_${PN} = "awk"
+ALTERNATIVE:${PN} = "awk"
 ALTERNATIVE_TARGET[awk] = "${bindir}/gawk"
 ALTERNATIVE_PRIORITY = "100"
 
-do_install_append() {
+do_install:append() {
 	# remove the link since we don't package it
 	rm ${D}${bindir}/awk
 }
@@ -51,9 +51,9 @@
         sed -i -e "s|GAWKLOCALE|LANG|g" ${D}${PTEST_PATH}/test/Maketests
 }
 
-RDEPENDS_${PN}-ptest += "make"
+RDEPENDS:${PN}-ptest += "make"
 
-RDEPENDS_${PN}-ptest_append_libc-glibc = "\
+RDEPENDS:${PN}-ptest:append:libc-glibc = "\
      locale-base-en-us.iso-8859-1 \
 "
 
diff --git a/poky/meta/recipes-extended/ghostscript/ghostscript_9.54.0.bb b/poky/meta/recipes-extended/ghostscript/ghostscript_9.54.0.bb
index 81f8d61..59cc560 100644
--- a/poky/meta/recipes-extended/ghostscript/ghostscript_9.54.0.bb
+++ b/poky/meta/recipes-extended/ghostscript/ghostscript_9.54.0.bb
@@ -14,7 +14,7 @@
 LIC_FILES_CHKSUM = "file://LICENSE;md5=70dc2bac4d0ce4448da873cd86b123fc"
 
 DEPENDS = "ghostscript-native tiff jpeg fontconfig cups libpng"
-DEPENDS_class-native = "libpng-native"
+DEPENDS:class-native = "libpng-native"
 
 UPSTREAM_CHECK_URI = "https://github.com/ArtifexSoftware/ghostpdl-downloads/releases"
 UPSTREAM_CHECK_REGEX = "(?P<pver>\d+(\.\d+)+)\.tar"
@@ -40,7 +40,7 @@
            file://cups-no-gcrypt.patch \
            "
 
-SRC_URI_class-native = "${SRC_URI_BASE} \
+SRC_URI:class-native = "${SRC_URI_BASE} \
                         file://ghostscript-9.21-native-fix-disable-system-libtiff.patch \
                         file://base-genht.c-add-a-preprocessor-define-to-allow-fope.patch \
                         "
@@ -49,13 +49,13 @@
 
 # Put something like
 #
-#   PACKAGECONFIG_append_pn-ghostscript = " x11"
+#   PACKAGECONFIG:append:pn-ghostscript = " x11"
 #
 # in local.conf to enable building with X11.  Be careful.  The order
 # of the overrides matters!
 #
 #PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}"
-PACKAGECONFIG_class-native = ""
+PACKAGECONFIG:class-native = ""
 
 PACKAGECONFIG[x11] = "--with-x --x-includes=${STAGING_INCDIR} --x-libraries=${STAGING_LIBDIR}, \
                       --without-x, virtual/libx11 libxext libxt gtk+3\
@@ -68,11 +68,11 @@
                 CUPSCONFIG="${STAGING_BINDIR_CROSS}/cups-config" \
                 "
 
-EXTRA_OECONF_append_mipsarcho32 = " --with-large_color_index=0"
+EXTRA_OECONF:append:mipsarcho32 = " --with-large_color_index=0"
 
 # Explicity disable libtiff, fontconfig,
 # freetype, cups for ghostscript-native
-EXTRA_OECONF_class-native = "--without-x --with-system-libtiff=no \
+EXTRA_OECONF:class-native = "--without-x --with-system-libtiff=no \
                              --without-jbig2dec --without-libpaper \
                              --with-fontpath=${datadir}/fonts \
                              --without-libidn --disable-fontconfig \
@@ -86,11 +86,11 @@
 
 inherit autotools-brokensep
 
-do_configure_prepend_class-target () {
+do_configure:prepend:class-target () {
         rm -rf ${S}/jpeg/
 }
 
-do_configure_append () {
+do_configure:append () {
 	# copy tools from the native ghostscript build
 	if [ "${PN}" != "ghostscript-native" ]; then
 		mkdir -p obj/aux soobj
@@ -100,20 +100,20 @@
 	fi
 }
 
-do_install_append () {
+do_install:append () {
     mkdir -p ${D}${datadir}/ghostscript/${PV}/
     cp -r ${S}/Resource ${D}${datadir}/ghostscript/${PV}/
     cp -r ${S}/iccprofiles ${D}${datadir}/ghostscript/${PV}/
 }
 
-do_compile_class-native () {
+do_compile:class-native () {
     mkdir -p obj
     for i in genarch genconf mkromfs echogs gendev genht packps; do
         oe_runmake obj/aux/$i
     done
 }
 
-do_install_class-native () {
+do_install:class-native () {
     install -d ${D}${bindir}/ghostscript-${PV}
     for i in genarch genconf mkromfs echogs gendev genht packps; do
         install -m 755 obj/aux/$i ${D}${bindir}/ghostscript-${PV}/$i
diff --git a/poky/meta/recipes-extended/go-examples/go-helloworld_0.1.bb b/poky/meta/recipes-extended/go-examples/go-helloworld_0.1.bb
index c51f163..aeff482 100644
--- a/poky/meta/recipes-extended/go-examples/go-helloworld_0.1.bb
+++ b/poky/meta/recipes-extended/go-examples/go-helloworld_0.1.bb
@@ -17,6 +17,6 @@
 inherit go
 
 # This is just to make clear where this example is
-do_install_append() {
+do_install:append() {
     mv ${D}${bindir}/hello ${D}${bindir}/${BPN}
 }
diff --git a/poky/meta/recipes-extended/grep/grep_3.6.bb b/poky/meta/recipes-extended/grep/grep_3.6.bb
index c17b96d..750575e 100644
--- a/poky/meta/recipes-extended/grep/grep_3.6.bb
+++ b/poky/meta/recipes-extended/grep/grep_3.6.bb
@@ -15,7 +15,7 @@
 # Fix "Argument list too long" error when len(TMPDIR) = 410
 acpaths = "-I ./m4"
 
-do_configure_prepend () {
+do_configure:prepend () {
 	sed -i -e '1s,#!@SHELL@,#!/bin/sh,' ${S}/src/egrep.sh
 	rm -f ${S}/m4/init.m4
 }
@@ -38,7 +38,7 @@
 
 ALTERNATIVE_PRIORITY = "100"
 
-ALTERNATIVE_${PN} = "grep egrep fgrep"
+ALTERNATIVE:${PN} = "grep egrep fgrep"
 ALTERNATIVE_LINK_NAME[grep] = "${base_bindir}/grep"
 ALTERNATIVE_LINK_NAME[egrep] = "${base_bindir}/egrep"
 ALTERNATIVE_LINK_NAME[fgrep] = "${base_bindir}/fgrep"
diff --git a/poky/meta/recipes-extended/groff/groff_1.22.4.bb b/poky/meta/recipes-extended/groff/groff_1.22.4.bb
index f0e9eb6..d0b543a 100644
--- a/poky/meta/recipes-extended/groff/groff_1.22.4.bb
+++ b/poky/meta/recipes-extended/groff/groff_1.22.4.bb
@@ -22,7 +22,7 @@
 PR = "r1"
 
 DEPENDS = "bison-native"
-RDEPENDS_${PN} += "perl sed"
+RDEPENDS:${PN} += "perl sed"
 
 inherit autotools-brokensep texinfo multilib_script pkgconfig
 
@@ -35,12 +35,12 @@
 
 # Delete these generated files since we depend on bison-native
 # and regenerate them. Do it deterministically (always).
-do_configure_prepend() {
+do_configure:prepend() {
 	rm -f ${S}/src/preproc/eqn/eqn.cpp
 	rm -f ${S}/src/preproc/eqn/eqn.hpp
 }
 
-do_install_append() {
+do_install:append() {
 	# Some distros have both /bin/perl and /usr/bin/perl, but we set perl location
 	# for target as /usr/bin/perl, so fix it to /usr/bin/perl.
 	for i in afmtodit mmroff gropdf pdfmom grog; do
@@ -68,13 +68,13 @@
 	rm -rf ${D}${mandir}/man1/grap2graph*
 }
 
-do_install_append_class-native() {
+do_install:append:class-native() {
 	create_cmdline_wrapper ${D}/${bindir}/groff \
 		-F${STAGING_DIR_NATIVE}${datadir_native}/groff/${PV}/font \
 		-M${STAGING_DIR_NATIVE}${datadir_native}/groff/${PV}/tmac
 }
 
-FILES_${PN} += "${libdir}/${BPN}/site-tmac \
+FILES:${PN} += "${libdir}/${BPN}/site-tmac \
                 ${libdir}/${BPN}/groffer/"
 
 BBCLASSEXTEND = "native"
diff --git a/poky/meta/recipes-extended/gzip/gzip.inc b/poky/meta/recipes-extended/gzip/gzip.inc
index 04f8f95..15fd665 100644
--- a/poky/meta/recipes-extended/gzip/gzip.inc
+++ b/poky/meta/recipes-extended/gzip/gzip.inc
@@ -8,10 +8,10 @@
 inherit autotools texinfo
 export DEFS="NO_ASM"
 
-EXTRA_OEMAKE_class-target = "GREP=${base_bindir}/grep"
-EXTRA_OECONF_append_libc-musl = " gl_cv_func_fflush_stdin=yes "
+EXTRA_OEMAKE:class-target = "GREP=${base_bindir}/grep"
+EXTRA_OECONF:append:libc-musl = " gl_cv_func_fflush_stdin=yes "
 
-do_install_append () {
+do_install:append () {
 	if [ "${base_bindir}" != "${bindir}" ]; then
 		# Rename and move files into /bin (FHS), which is typical place for gzip
 		install -d ${D}${base_bindir}
@@ -25,7 +25,7 @@
 inherit update-alternatives
 
 ALTERNATIVE_PRIORITY = "100"
-ALTERNATIVE_${PN} = "gunzip gzip zcat"
+ALTERNATIVE:${PN} = "gunzip gzip zcat"
 ALTERNATIVE_LINK_NAME[gunzip] = "${base_bindir}/gunzip"
 ALTERNATIVE_LINK_NAME[gzip] = "${base_bindir}/gzip"
 ALTERNATIVE_LINK_NAME[zcat] = "${base_bindir}/zcat"
diff --git a/poky/meta/recipes-extended/gzip/gzip_1.10.bb b/poky/meta/recipes-extended/gzip/gzip_1.10.bb
index 9778e68..120e1d4 100644
--- a/poky/meta/recipes-extended/gzip/gzip_1.10.bb
+++ b/poky/meta/recipes-extended/gzip/gzip_1.10.bb
@@ -5,14 +5,14 @@
 SRC_URI = "${GNU_MIRROR}/gzip/${BP}.tar.gz \
            file://run-ptest \
           "
-SRC_URI_append_class-target = " file://wrong-path-fix.patch"
+SRC_URI:append:class-target = " file://wrong-path-fix.patch"
 
 LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \
                     file://gzip.h;beginline=8;endline=20;md5=6e47caaa630e0c8bf9f1bc8d94a8ed0e"
 
-PROVIDES_append_class-native = " gzip-replacement-native"
+PROVIDES:append:class-native = " gzip-replacement-native"
 
-RDEPENDS_${PN}-ptest += "make perl grep diffutils"
+RDEPENDS:${PN}-ptest += "make perl grep diffutils"
 
 BBCLASSEXTEND = "native nativesdk"
 
diff --git a/poky/meta/recipes-extended/hdparm/hdparm_9.62.bb b/poky/meta/recipes-extended/hdparm/hdparm_9.62.bb
index 0267723..3d4081c 100644
--- a/poky/meta/recipes-extended/hdparm/hdparm_9.62.bb
+++ b/poky/meta/recipes-extended/hdparm/hdparm_9.62.bb
@@ -5,9 +5,9 @@
 SECTION = "console/utils"
 
 LICENSE = "BSD & GPLv2"
-LICENSE_${PN} = "BSD"
-LICENSE_${PN}-dbg = "BSD"
-LICENSE_wiper = "GPLv2"
+LICENSE:${PN} = "BSD"
+LICENSE:${PN}-dbg = "BSD"
+LICENSE:wiper = "GPLv2"
 
 LIC_FILES_CHKSUM = "file://LICENSE.TXT;md5=495d03e50dc6c89d6a30107ab0df5b03 \
                     file://debian/copyright;md5=a82d7ba3ade9e8ec902749db98c592f3 \
@@ -17,9 +17,9 @@
 
 PACKAGES =+ "wiper"
 
-FILES_wiper = "${bindir}/wiper.sh"
+FILES:wiper = "${bindir}/wiper.sh"
 
-RDEPENDS_wiper = "bash gawk coreutils"
+RDEPENDS:wiper = "bash gawk coreutils"
 
 SRC_URI = "${SOURCEFORGE_MIRROR}/hdparm/${BP}.tar.gz \
            file://wiper.sh-fix-stat-path.patch \
@@ -31,7 +31,7 @@
 
 inherit update-alternatives
 
-ALTERNATIVE_${PN} = "hdparm"
+ALTERNATIVE:${PN} = "hdparm"
 ALTERNATIVE_LINK_NAME[hdparm] = "${base_sbindir}/hdparm"
 ALTERNATIVE_PRIORITY = "100"
 
diff --git a/poky/meta/recipes-extended/images/core-image-kernel-dev.bb b/poky/meta/recipes-extended/images/core-image-kernel-dev.bb
index 4d16da1..4018af7 100644
--- a/poky/meta/recipes-extended/images/core-image-kernel-dev.bb
+++ b/poky/meta/recipes-extended/images/core-image-kernel-dev.bb
@@ -15,7 +15,7 @@
                             "
 
 # We need extra space for things like kernel builds, etc.
-IMAGE_ROOTFS_EXTRA_SPACE_append = " + 3000000"
+IMAGE_ROOTFS_EXTRA_SPACE:append = " + 3000000"
 
 # Let's define our own subset to test, we can later add a on-target kernel build even!
 DEFAULT_TEST_SUITES = "ping ssh df connman syslog scp date parselogs"
diff --git a/poky/meta/recipes-extended/iptables/iptables_1.8.7.bb b/poky/meta/recipes-extended/iptables/iptables_1.8.7.bb
index 621f87f..93af96b 100644
--- a/poky/meta/recipes-extended/iptables/iptables_1.8.7.bb
+++ b/poky/meta/recipes-extended/iptables/iptables_1.8.7.bb
@@ -18,7 +18,7 @@
            "
 SRC_URI[sha256sum] = "c109c96bb04998cd44156622d36f8e04b140701ec60531a10668cfdff5e8d8f0"
 
-SYSTEMD_SERVICE_${PN} = "\
+SYSTEMD_SERVICE:${PN} = "\
     iptables.service \
     ${@bb.utils.contains('PACKAGECONFIG', 'ipv6', 'ip6tables.service', '', d)} \
 "
@@ -36,7 +36,7 @@
 # libnftnl recipe is in meta-networking layer(previously known as libnftables)
 PACKAGECONFIG[libnftnl] = "--enable-nftables,--disable-nftables,libnftnl"
 
-do_configure_prepend() {
+do_configure:prepend() {
     # Remove some libtool m4 files
     # Keep ax_check_linker_flags.m4 which belongs to autoconf-archive.
     rm -f libtool.m4 lt~obsolete.m4 ltoptions.m4 ltsugar.m4 ltversion.m4
@@ -44,7 +44,7 @@
 
 IPTABLES_RULES_DIR ?= "${sysconfdir}/${BPN}"
 
-do_install_append() {
+do_install:append() {
     install -d ${D}${IPTABLES_RULES_DIR}
     install -m 0644 ${WORKDIR}/iptables.rules ${D}${IPTABLES_RULES_DIR}
 
@@ -70,15 +70,15 @@
 PACKAGES =+ "${PN}-modules ${PN}-apply"
 PACKAGES_DYNAMIC += "^${PN}-module-.*"
 
-python populate_packages_prepend() {
+python populate_packages:prepend() {
     modules = do_split_packages(d, '${libdir}/xtables', r'lib(.*)\.so$', '${PN}-module-%s', '${PN} module %s', extra_depends='')
     if modules:
         metapkg = d.getVar('PN') + '-modules'
-        d.appendVar('RDEPENDS_' + metapkg, ' ' + ' '.join(modules))
+        d.appendVar('RDEPENDS:' + metapkg, ' ' + ' '.join(modules))
 }
 
-RDEPENDS_${PN} = "${PN}-module-xt-standard"
-RRECOMMENDS_${PN} = " \
+RDEPENDS:${PN} = "${PN}-module-xt-standard"
+RRECOMMENDS:${PN} = " \
     ${PN}-modules \
     kernel-module-x-tables \
     kernel-module-ip-tables \
@@ -95,16 +95,16 @@
     ', '', d)} \
 "
 
-FILES_${PN} += "${datadir}/xtables"
+FILES:${PN} += "${datadir}/xtables"
 
-FILES_${PN}-apply = "${sbindir}/ip*-apply"
-RDEPENDS_${PN}-apply = "${PN} bash"
+FILES:${PN}-apply = "${sbindir}/ip*-apply"
+RDEPENDS:${PN}-apply = "${PN} bash"
 
 # Include the symlinks as well in respective packages
-FILES_${PN}-module-xt-conntrack += "${libdir}/xtables/libxt_state.so"
-FILES_${PN}-module-xt-ct += "${libdir}/xtables/libxt_NOTRACK.so"
+FILES:${PN}-module-xt-conntrack += "${libdir}/xtables/libxt_state.so"
+FILES:${PN}-module-xt-ct += "${libdir}/xtables/libxt_NOTRACK.so"
 
-ALLOW_EMPTY_${PN}-modules = "1"
+ALLOW_EMPTY:${PN}-modules = "1"
 
-INSANE_SKIP_${PN}-module-xt-conntrack = "dev-so"
-INSANE_SKIP_${PN}-module-xt-ct = "dev-so"
+INSANE_SKIP:${PN}-module-xt-conntrack = "dev-so"
+INSANE_SKIP:${PN}-module-xt-ct = "dev-so"
diff --git a/poky/meta/recipes-extended/iputils/iputils/0001-meson-Make-tests-optional.patch b/poky/meta/recipes-extended/iputils/iputils/0001-meson-Make-tests-optional.patch
new file mode 100644
index 0000000..9f17cbd
--- /dev/null
+++ b/poky/meta/recipes-extended/iputils/iputils/0001-meson-Make-tests-optional.patch
@@ -0,0 +1,220 @@
+From d8048d60d30a2efe7883b36626123630ce69b9fc Mon Sep 17 00:00:00 2001
+From: Heiko Becker <heirecka@exherbo.org>
+Date: Fri, 23 Jul 2021 16:32:46 +0200
+Subject: [PATCH] meson: Make tests optional
+
+Now can be disabled with -DSKIP_TESTS=true.
+
+It allows to avoid meson error during build when ip isn't installed.
+
+Closes: #359
+
+Reviewed-by: Petr Vorel <petr.vorel@gmail.com>
+Signed-off-by: Heiko Becker <heirecka@exherbo.org>
+[ pvorel: Rename variable TEST => SKIP_TESTS, default false, adjust
+the description ]
+Signed-off-by: Petr Vorel <petr.vorel@gmail.com>
+
+Upstream-Status: Backport [3163c49f9f4ad473a00d8a345ee334a028376011]
+Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
+---
+ meson_options.txt     |  3 ++
+ ping/meson.build      | 84 ++-----------------------------------------
+ ping/test/meson.build | 81 +++++++++++++++++++++++++++++++++++++++++
+ 3 files changed, 86 insertions(+), 82 deletions(-)
+ create mode 100644 ping/test/meson.build
+
+diff --git a/meson_options.txt b/meson_options.txt
+index ac5f5d9..517667f 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -72,3 +72,6 @@ option('INSTALL_SYSTEMD_UNITS', type: 'boolean', value: false,
+ 
+ option('USE_GETTEXT', type: 'boolean', value: true,
+ 	description: 'Enable I18N')
++
++option('SKIP_TESTS', type: 'boolean', value: false,
++	description: 'Skip tests during build')
+diff --git a/ping/meson.build b/ping/meson.build
+index 1e678ec..83ea353 100644
+--- a/ping/meson.build
++++ b/ping/meson.build
+@@ -27,86 +27,6 @@ if (setcap_ping)
+ 	)
+ endif
+ 
+-##### TESTS #####
+-
+-# TODO: ::1 generates DEPRECATION: ":" is not allowed in test name "ping -c1 ::1", it has been replaced with "_"
+-
+-# GitHub CI does not have working IPv6
+-# https://github.com/actions/virtual-environments/issues/668
+-ipv6_dst = []
+-ipv6_switch = []
+-r = run_command('ip', '-6', 'a')
+-if r.stdout().strip().contains('::1')
+-  message('IPv6 enabled')
+-  ipv6_dst = [ '::1' ]
+-  ipv6_switch = [ '-6' ]
+-else
+-  message('WARNING: IPv6 disabled')
++if not get_option('SKIP_TESTS')
++	subdir('test')
+ endif
+-
+-run_as_root = false
+-r = run_command('id', '-u')
+-if r.stdout().strip().to_int() == 0
+-  message('running as root')
+-  run_as_root = true
+-else
+-  message('running as normal user')
+-endif
+-
+-foreach dst : [ 'localhost', '127.0.0.1' ] + ipv6_dst
+-  foreach switch : [ '', '-4' ] + ipv6_switch
+-	args = [ '-c1', dst ]
+-	should_fail = false
+-
+-	if switch != ''
+-	  args = [switch] + args
+-	  if (switch == '-4' and dst == '::1') or (switch == '-6' and dst == '127.0.0.1')
+-		 should_fail = true
+-	  endif
+-	endif
+-
+-	name = 'ping ' + ' '.join(args)
+-	test(name, ping, args : args, should_fail : should_fail)
+-  endforeach
+-endforeach
+-
+-ping_tests_opt = [
+-  [ '-c1' ],
+-  [ '-c5', '-i0.1' ],
+-  [ '-c1', '-I', 'lo' ],
+-  [ '-c1', '-w1' ],
+-  [ '-c1', '-W1' ],
+-  [ '-c1', '-W1.1' ],
+-]
+-foreach dst : [ '127.0.0.1' ] + ipv6_dst
+-  foreach args : ping_tests_opt
+-	args += [ dst ]
+-	name = 'ping ' + ' '.join(args)
+-	test(name, ping, args : args)
+-  endforeach
+-endforeach
+-
+-ping_tests_opt_fail = [
+-  [ '-c1.1' ],
+-  [ '-I', 'nonexisting' ],
+-  [ '-w0.1' ],
+-  [ '-w0,1' ],
+-]
+-foreach dst : [ '127.0.0.1' ] + ipv6_dst
+-  foreach args : ping_tests_opt_fail
+-	args += [ dst ]
+-	name = 'ping ' + ' '.join(args)
+-	test(name, ping, args : args, should_fail : true)
+-  endforeach
+-endforeach
+-
+-ping_tests_user_fail = [
+-  [ '-c1', '-i0.001' ], # -c1 required to quit ping when running as root
+-]
+-foreach dst : [ '127.0.0.1' ] + ipv6_dst
+-  foreach args : ping_tests_user_fail
+-	args += [ dst ]
+-	name = 'ping ' + ' '.join(args)
+-	test(name, ping, args : args, should_fail : not run_as_root)
+-  endforeach
+-endforeach
+diff --git a/ping/test/meson.build b/ping/test/meson.build
+new file mode 100644
+index 0000000..43aed75
+--- /dev/null
++++ b/ping/test/meson.build
+@@ -0,0 +1,81 @@
++# TODO: ::1 generates DEPRECATION: ":" is not allowed in test name "ping -c1 ::1", it has been replaced with "_"
++
++# GitHub CI does not have working IPv6
++# https://github.com/actions/virtual-environments/issues/668
++ipv6_dst = []
++ipv6_switch = []
++r = run_command('ip', '-6', 'a')
++if r.stdout().strip().contains('::1')
++  message('IPv6 enabled')
++  ipv6_dst = [ '::1' ]
++  ipv6_switch = [ '-6' ]
++else
++  message('WARNING: IPv6 disabled')
++endif
++
++run_as_root = false
++r = run_command('id', '-u')
++if r.stdout().strip().to_int() == 0
++  message('running as root')
++  run_as_root = true
++else
++  message('running as normal user')
++endif
++
++foreach dst : [ 'localhost', '127.0.0.1' ] + ipv6_dst
++  foreach switch : [ '', '-4' ] + ipv6_switch
++	args = [ '-c1', dst ]
++	should_fail = false
++
++	if switch != ''
++	  args = [switch] + args
++	  if (switch == '-4' and dst == '::1') or (switch == '-6' and dst == '127.0.0.1')
++		 should_fail = true
++	  endif
++	endif
++
++	name = 'ping ' + ' '.join(args)
++	test(name, ping, args : args, should_fail : should_fail)
++  endforeach
++endforeach
++
++ping_tests_opt = [
++  [ '-c1' ],
++  [ '-c5', '-i0.1' ],
++  [ '-c1', '-I', 'lo' ],
++  [ '-c1', '-w1' ],
++  [ '-c1', '-W1' ],
++  [ '-c1', '-W1.1' ],
++]
++foreach dst : [ '127.0.0.1' ] + ipv6_dst
++  foreach args : ping_tests_opt
++	args += [ dst ]
++	name = 'ping ' + ' '.join(args)
++	test(name, ping, args : args)
++  endforeach
++endforeach
++
++ping_tests_opt_fail = [
++  [ '-c1.1' ],
++  [ '-I', 'nonexisting' ],
++  [ '-w0.1' ],
++  [ '-w0,1' ],
++]
++foreach dst : [ '127.0.0.1' ] + ipv6_dst
++  foreach args : ping_tests_opt_fail
++	args += [ dst ]
++	name = 'ping ' + ' '.join(args)
++	test(name, ping, args : args, should_fail : true)
++  endforeach
++endforeach
++
++ping_tests_user_fail = [
++  [ '-c1', '-i0.001' ], # -c1 required to quit ping when running as root
++]
++foreach dst : [ '127.0.0.1' ] + ipv6_dst
++  foreach args : ping_tests_user_fail
++	args += [ dst ]
++	name = 'ping ' + ' '.join(args)
++	test(name, ping, args : args, should_fail : not run_as_root)
++  endforeach
++endforeach
+-- 
+2.30.2
+
diff --git a/poky/meta/recipes-extended/iputils/iputils/0001-rarpd-rdisc-Drop-PrivateUsers.patch b/poky/meta/recipes-extended/iputils/iputils/0001-rarpd-rdisc-Drop-PrivateUsers.patch
index d7367ca..c61e39d 100644
--- a/poky/meta/recipes-extended/iputils/iputils/0001-rarpd-rdisc-Drop-PrivateUsers.patch
+++ b/poky/meta/recipes-extended/iputils/iputils/0001-rarpd-rdisc-Drop-PrivateUsers.patch
@@ -1,20 +1,20 @@
-From 6e51d529988cfc0bb357751fd767e9f1478e2b81 Mon Sep 17 00:00:00 2001
+From dfeeb3f1328d09f516edeb6349bd63e3c87f9397 Mon Sep 17 00:00:00 2001
 From: Alex Kiernan <alex.kiernan@gmail.com>
 Date: Thu, 13 Feb 2020 06:08:45 +0000
-Subject: [PATCH] rarpd: rdisc: Drop PrivateUsers
+Subject: [PATCH] rarpd:Drop PrivateUsers
 
-Neither rarpd nor rdisc can gain the necessary capabilities with
+rarpd cannot gain the necessary capabilities with
 PrivateUsers enabled.
 
 Upstream-Status: Pending
 Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
+
 ---
  systemd/rarpd.service.in | 1 -
- systemd/rdisc.service.in | 3 ++-
- 2 files changed, 2 insertions(+), 2 deletions(-)
+ 1 file changed, 1 deletion(-)
 
 diff --git a/systemd/rarpd.service.in b/systemd/rarpd.service.in
-index e600c10c93e6..f5d7621a7ce8 100644
+index e600c10..f5d7621 100644
 --- a/systemd/rarpd.service.in
 +++ b/systemd/rarpd.service.in
 @@ -12,7 +12,6 @@ AmbientCapabilities=CAP_NET_RAW
@@ -25,22 +25,3 @@
  ProtectSystem=strict
  ProtectHome=yes
  ProtectControlGroups=yes
-diff --git a/systemd/rdisc.service.in b/systemd/rdisc.service.in
-index 4e2a1ec9d0e5..a71b87d36b37 100644
---- a/systemd/rdisc.service.in
-+++ b/systemd/rdisc.service.in
-@@ -8,9 +8,10 @@ After=network.target
- EnvironmentFile=-/etc/sysconfig/rdisc
- ExecStart=@sbindir@/rdisc -f -t $OPTIONS $SEND_ADDRESS $RECEIVE_ADDRESS
- 
-+CapabilityBoundingSet=CAP_NET_RAW
- AmbientCapabilities=CAP_NET_RAW
- PrivateTmp=yes
--PrivateUsers=yes
-+DynamicUser=yes
- ProtectSystem=strict
- ProtectHome=yes
- ProtectControlGroups=yes
--- 
-2.17.1
-
diff --git a/poky/meta/recipes-extended/iputils/iputils_20210202.bb b/poky/meta/recipes-extended/iputils/iputils_20210722.bb
similarity index 72%
rename from poky/meta/recipes-extended/iputils/iputils_20210202.bb
rename to poky/meta/recipes-extended/iputils/iputils_20210722.bb
index 02a3037..2e8d903 100644
--- a/poky/meta/recipes-extended/iputils/iputils_20210202.bb
+++ b/poky/meta/recipes-extended/iputils/iputils_20210722.bb
@@ -12,8 +12,9 @@
 
 SRC_URI = "git://github.com/iputils/iputils \
            file://0001-rarpd-rdisc-Drop-PrivateUsers.patch \
+           file://0001-meson-Make-tests-optional.patch \
            "
-SRCREV = "cc16da6b574ce6637f3e6e9ab3c1a728663006ff"
+SRCREV = "71bb2a6c72e9f658e90ac618c73d873a76bbaa81"
 
 S = "${WORKDIR}/git"
 
@@ -38,11 +39,11 @@
 
 inherit meson systemd update-alternatives
 
-EXTRA_OEMESON += "--prefix=${root_prefix}/"
+EXTRA_OEMESON += "--prefix=${root_prefix}/ -DSKIP_TESTS=true"
 
 ALTERNATIVE_PRIORITY = "100"
 
-ALTERNATIVE_${PN}-ping = "ping"
+ALTERNATIVE:${PN}-ping = "ping"
 ALTERNATIVE_LINK_NAME[ping] = "${base_bindir}/ping"
 
 SPLITPKGS = "${PN}-ping ${PN}-arping ${PN}-tracepath ${PN}-clockdiff ${PN}-rdisc \
@@ -51,21 +52,21 @@
              ${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', '${PN}-traceroute6 ${PN}-ninfod', '', d)}"
 PACKAGES += "${SPLITPKGS}"
 
-ALLOW_EMPTY_${PN} = "1"
-RDEPENDS_${PN} += "${SPLITPKGS}"
+ALLOW_EMPTY:${PN} = "1"
+RDEPENDS:${PN} += "${SPLITPKGS}"
 
-FILES_${PN} = ""
-FILES_${PN}-ping = "${base_bindir}/ping.${BPN}"
-FILES_${PN}-arping = "${base_bindir}/arping"
-FILES_${PN}-tracepath = "${base_bindir}/tracepath"
-FILES_${PN}-traceroute6	= "${base_bindir}/traceroute6"
-FILES_${PN}-clockdiff = "${base_bindir}/clockdiff"
-FILES_${PN}-tftpd = "${base_bindir}/tftpd ${sysconfdir}/xinetd.d/tftp"
-FILES_${PN}-rarpd = "${base_sbindir}/rarpd  ${systemd_unitdir}/system/rarpd@.service"
-FILES_${PN}-rdisc = "${base_sbindir}/rdisc"
-FILES_${PN}-ninfod = "${base_sbindir}/ninfod ${sysconfdir}/init.d/ninfod.sh"
+FILES:${PN} = ""
+FILES:${PN}-ping = "${base_bindir}/ping.${BPN}"
+FILES:${PN}-arping = "${base_bindir}/arping"
+FILES:${PN}-tracepath = "${base_bindir}/tracepath"
+FILES:${PN}-traceroute6	= "${base_bindir}/traceroute6"
+FILES:${PN}-clockdiff = "${base_bindir}/clockdiff"
+FILES:${PN}-tftpd = "${base_bindir}/tftpd ${sysconfdir}/xinetd.d/tftp"
+FILES:${PN}-rarpd = "${base_sbindir}/rarpd  ${systemd_unitdir}/system/rarpd@.service"
+FILES:${PN}-rdisc = "${base_sbindir}/rdisc"
+FILES:${PN}-ninfod = "${base_sbindir}/ninfod ${sysconfdir}/init.d/ninfod.sh"
 
 SYSTEMD_PACKAGES = "${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', '${PN}-ninfod', '', d)} \
                     ${PN}-rdisc"
-SYSTEMD_SERVICE_${PN}-ninfod = "ninfod.service"
-SYSTEMD_SERVICE_${PN}-rdisc = "rdisc.service"
+SYSTEMD_SERVICE:${PN}-ninfod = "ninfod.service"
+SYSTEMD_SERVICE:${PN}-rdisc = "rdisc.service"
diff --git a/poky/meta/recipes-extended/less/less_590.bb b/poky/meta/recipes-extended/less/less_590.bb
index 82a2312..5d0d0a5 100644
--- a/poky/meta/recipes-extended/less/less_590.bb
+++ b/poky/meta/recipes-extended/less/less_590.bb
@@ -38,5 +38,5 @@
         oe_runmake 'bindir=${D}${bindir}' 'mandir=${D}${mandir}' install
 }
 
-ALTERNATIVE_${PN} = "less"
+ALTERNATIVE:${PN} = "less"
 ALTERNATIVE_PRIORITY = "100"
diff --git a/poky/meta/recipes-extended/libarchive/libarchive_3.5.1.bb b/poky/meta/recipes-extended/libarchive/libarchive_3.5.1.bb
index ebecee1..7d98e57 100644
--- a/poky/meta/recipes-extended/libarchive/libarchive_3.5.1.bb
+++ b/poky/meta/recipes-extended/libarchive/libarchive_3.5.1.bb
@@ -9,12 +9,12 @@
 
 PACKAGECONFIG ?= "zlib bz2 xz lzo zstd"
 
-PACKAGECONFIG_append_class-target = "\
+PACKAGECONFIG:append:class-target = "\
 	${@bb.utils.filter('DISTRO_FEATURES', 'acl xattr', d)} \
 "
 
 DEPENDS_BZIP2 = "bzip2-replacement-native"
-DEPENDS_BZIP2_class-target = "bzip2"
+DEPENDS_BZIP2:class-target = "bzip2"
 
 PACKAGECONFIG[acl] = "--enable-acl,--disable-acl,acl,"
 PACKAGECONFIG[xattr] = "--enable-xattr,--disable-xattr,attr,"
@@ -41,7 +41,7 @@
 CPPFLAGS += "-I${WORKDIR}/extra-includes"
 
 do_configure[cleandirs] += "${WORKDIR}/extra-includes"
-do_configure_prepend() {
+do_configure:prepend() {
 	# We just need the headers for some type constants, so no need to
 	# build all of e2fsprogs for the target
 	cp -R ${STAGING_INCDIR_NATIVE}/ext2fs ${WORKDIR}/extra-includes/
@@ -50,16 +50,16 @@
 ALTERNATIVE_PRIORITY = "80"
 
 PACKAGES =+ "bsdtar"
-FILES_bsdtar = "${bindir}/bsdtar"
+FILES:bsdtar = "${bindir}/bsdtar"
 
-ALTERNATIVE_bsdtar = "tar"
+ALTERNATIVE:bsdtar = "tar"
 ALTERNATIVE_LINK_NAME[tar] = "${base_bindir}/tar"
 ALTERNATIVE_TARGET[tar] = "${bindir}/bsdtar"
 
 PACKAGES =+ "bsdcpio"
-FILES_bsdcpio = "${bindir}/bsdcpio"
+FILES:bsdcpio = "${bindir}/bsdcpio"
 
-ALTERNATIVE_bsdcpio = "cpio"
+ALTERNATIVE:bsdcpio = "cpio"
 ALTERNATIVE_LINK_NAME[cpio] = "${base_bindir}/cpio"
 ALTERNATIVE_TARGET[cpio] = "${bindir}/bsdcpio"
 
diff --git a/poky/meta/recipes-extended/libidn/libidn2_2.3.1.bb b/poky/meta/recipes-extended/libidn/libidn2_2.3.1.bb
index d33d6a7..0778194 100644
--- a/poky/meta/recipes-extended/libidn/libidn2_2.3.1.bb
+++ b/poky/meta/recipes-extended/libidn/libidn2_2.3.1.bb
@@ -21,12 +21,12 @@
                  --with-libunistring-prefix=${STAGING_EXECPREFIXDIR} \
                  "
 
-do_install_append() {
+do_install:append() {
 	# Need to remove any duplicate whitespace too for reproducibility
 	sed -i -e 's|-L${STAGING_LIBDIR}||' -e 's/  */ /g' ${D}${libdir}/pkgconfig/libidn2.pc
 }
 
-LICENSE_${PN} = "(GPLv2+ | LGPLv3)"
-LICENSE_${PN}-bin = "GPLv3+"
+LICENSE:${PN} = "(GPLv2+ | LGPLv3)"
+LICENSE:${PN}-bin = "GPLv3+"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-extended/libnss-nis/libnss-nis.bb b/poky/meta/recipes-extended/libnss-nis/libnss-nis.bb
index a1d914e..3410342 100644
--- a/poky/meta/recipes-extended/libnss-nis/libnss-nis.bb
+++ b/poky/meta/recipes-extended/libnss-nis/libnss-nis.bb
@@ -28,4 +28,4 @@
 #
 # We will skip parsing this packagegeoup for non-glibc systems
 #
-COMPATIBLE_HOST_libc-musl = 'null'
+COMPATIBLE_HOST:libc-musl = 'null'
diff --git a/poky/meta/recipes-extended/libsolv/libsolv_0.7.19.bb b/poky/meta/recipes-extended/libsolv/libsolv_0.7.19.bb
index 0c69636..bb92507 100644
--- a/poky/meta/recipes-extended/libsolv/libsolv_0.7.19.bb
+++ b/poky/meta/recipes-extended/libsolv/libsolv_0.7.19.bb
@@ -26,7 +26,7 @@
 
 PACKAGES =+ "${PN}-tools ${PN}ext"
 
-FILES_${PN}-tools = "${bindir}/*"
-FILES_${PN}ext = "${libdir}/${PN}ext.so.*"
+FILES:${PN}-tools = "${bindir}/*"
+FILES:${PN}ext = "${libdir}/${PN}ext.so.*"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-extended/libtirpc/libtirpc_1.3.2.bb b/poky/meta/recipes-extended/libtirpc/libtirpc_1.3.2.bb
index b666263..45b3d2b 100644
--- a/poky/meta/recipes-extended/libtirpc/libtirpc_1.3.2.bb
+++ b/poky/meta/recipes-extended/libtirpc/libtirpc_1.3.2.bb
@@ -18,7 +18,7 @@
 
 EXTRA_OECONF = "--disable-gssapi"
 
-do_install_append() {
+do_install:append() {
 	chown root:root ${D}${sysconfdir}/netconfig
 }
 
diff --git a/poky/meta/recipes-extended/lighttpd/lighttpd_1.4.59.bb b/poky/meta/recipes-extended/lighttpd/lighttpd_1.4.59.bb
index cf7f478..f97c591 100644
--- a/poky/meta/recipes-extended/lighttpd/lighttpd_1.4.59.bb
+++ b/poky/meta/recipes-extended/lighttpd/lighttpd_1.4.59.bb
@@ -7,10 +7,10 @@
 LIC_FILES_CHKSUM = "file://COPYING;md5=e4dac5c6ab169aa212feb5028853a579"
 
 SECTION = "net"
-RDEPENDS_${PN} = "lighttpd-module-dirlisting \
+RDEPENDS:${PN} = "lighttpd-module-dirlisting \
                   lighttpd-module-indexfile \
                   lighttpd-module-staticfile"
-RRECOMMENDS_${PN} = "lighttpd-module-access \
+RRECOMMENDS:${PN} = "lighttpd-module-access \
                      lighttpd-module-accesslog"
 
 SRC_URI = "http://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-${PV}.tar.xz \
@@ -52,9 +52,9 @@
 INITSCRIPT_NAME = "lighttpd"
 INITSCRIPT_PARAMS = "defaults 70"
 
-SYSTEMD_SERVICE_${PN} = "lighttpd.service"
+SYSTEMD_SERVICE:${PN} = "lighttpd.service"
 
-do_install_append() {
+do_install:append() {
 	install -d ${D}${sysconfdir}/init.d ${D}${sysconfdir}/lighttpd ${D}${sysconfdir}/lighttpd.d ${D}/www/pages/dav
 	install -m 0755 ${WORKDIR}/lighttpd ${D}${sysconfdir}/init.d
 	install -m 0644 ${WORKDIR}/lighttpd.conf ${D}${sysconfdir}/lighttpd
@@ -71,13 +71,13 @@
 	ln -sf ${localstatedir}/tmp ${D}/www/var
 }
 
-FILES_${PN} += "${sysconfdir} /www"
+FILES:${PN} += "${sysconfdir} /www"
 
-CONFFILES_${PN} = "${sysconfdir}/lighttpd/lighttpd.conf"
+CONFFILES:${PN} = "${sysconfdir}/lighttpd/lighttpd.conf"
 
 PACKAGES_DYNAMIC += "^lighttpd-module-.*"
 
-python populate_packages_prepend () {
+python populate_packages:prepend () {
     lighttpd_libdir = d.expand('${libdir}')
     do_split_packages(d, lighttpd_libdir, r'^mod_(.*)\.so$', 'lighttpd-module-%s', 'Lighttpd module for %s', extra_depends='')
 }
diff --git a/poky/meta/recipes-extended/logrotate/logrotate_3.18.1.bb b/poky/meta/recipes-extended/logrotate/logrotate_3.18.1.bb
index d853f7b..bca4787 100644
--- a/poky/meta/recipes-extended/logrotate/logrotate_3.18.1.bb
+++ b/poky/meta/recipes-extended/logrotate/logrotate_3.18.1.bb
@@ -29,7 +29,7 @@
 PACKAGECONFIG[acl] = ",,acl"
 PACKAGECONFIG[selinux] = ",,libselinux"
 
-CONFFILES_${PN} += "${localstatedir}/lib/logrotate.status \
+CONFFILES:${PN} += "${localstatedir}/lib/logrotate.status \
                     ${sysconfdir}/logrotate.conf \
                     ${sysconfdir}/logrotate.d/btmp \
                     ${sysconfdir}/logrotate.d/wtmp"
@@ -53,7 +53,7 @@
 
 inherit autotools systemd
 
-SYSTEMD_SERVICE_${PN} = "\
+SYSTEMD_SERVICE:${PN} = "\
     ${BPN}.service \
     ${BPN}.timer \
 "
diff --git a/poky/meta/recipes-extended/lsb/lsb-release_1.4.bb b/poky/meta/recipes-extended/lsb/lsb-release_1.4.bb
index bafc18f..a3bcaf5 100644
--- a/poky/meta/recipes-extended/lsb/lsb-release_1.4.bb
+++ b/poky/meta/recipes-extended/lsb/lsb-release_1.4.bb
@@ -4,7 +4,7 @@
 LICENSE = "GPLv2+"
 
 # lsb_release needs getopt
-RDEPENDS_${PN} += "${VIRTUAL-RUNTIME_getopt}"
+RDEPENDS:${PN} += "${VIRTUAL-RUNTIME_getopt}"
 
 LIC_FILES_CHKSUM = "file://README;md5=12da544b1a3a5a1795a21160b49471cf"
 
@@ -35,4 +35,4 @@
 	echo "DISTRIB_DESCRIPTION=\"${DISTRO_NAME} ${DISTRO_VERSION}\"" >> ${D}${sysconfdir}/lsb-release
 }
 
-FILES_${PN} += "${base_libdir}"
+FILES:${PN} += "${base_libdir}"
diff --git a/poky/meta/recipes-extended/ltp/ltp_20210524.bb b/poky/meta/recipes-extended/ltp/ltp_20210524.bb
index 26fd9ac..702fa62 100644
--- a/poky/meta/recipes-extended/ltp/ltp_20210524.bb
+++ b/poky/meta/recipes-extended/ltp/ltp_20210524.bb
@@ -15,18 +15,18 @@
 "
 
 DEPENDS = "attr libaio libcap acl openssl zip-native"
-DEPENDS_append_libc-musl = " fts "
-EXTRA_OEMAKE_append_libc-musl = " LIBC=musl "
-EXTRA_OECONF_append_libc-musl = " LIBS=-lfts "
+DEPENDS:append:libc-musl = " fts "
+EXTRA_OEMAKE:append:libc-musl = " LIBC=musl "
+EXTRA_OECONF:append:libc-musl = " LIBS=-lfts "
 
 # since ltp contains x86-64 assembler which uses the frame-pointer register,
 # set -fomit-frame-pointer x86-64 to handle cases where optimisation
 # is set to -O0 or frame pointers have been enabled by -fno-omit-frame-pointer
 # earlier in CFLAGS, etc.
-CFLAGS_append_x86-64 = " -fomit-frame-pointer"
+CFLAGS:append:x86-64 = " -fomit-frame-pointer"
 
-CFLAGS_append_powerpc64 = " -D__SANE_USERSPACE_TYPES__"
-CFLAGS_append_mipsarchn64 = " -D__SANE_USERSPACE_TYPES__"
+CFLAGS:append:powerpc64 = " -D__SANE_USERSPACE_TYPES__"
+CFLAGS:append:mipsarchn64 = " -D__SANE_USERSPACE_TYPES__"
 SRCREV = "0fb171f2beddaf64bd27597577c206c0f892b3cd"
 
 SRC_URI = "git://github.com/linux-test-project/ltp.git \
@@ -75,7 +75,7 @@
     sed -e '/^memcg_stress/d' -i ${D}${prefix}/runtest/controllers
 }
 
-RDEPENDS_${PN} = "\
+RDEPENDS:${PN} = "\
     attr \
     bash \
     bc \
@@ -105,11 +105,11 @@
     tar \
 "
 
-FILES_${PN} += "${prefix}/* ${prefix}/runtest/* ${prefix}/scenario_groups/* ${prefix}/testcases/bin/* ${prefix}/testcases/bin/*/bin/* ${prefix}/testscripts/* ${prefix}/testcases/open_posix_testsuite/* ${prefix}/testcases/open_posix_testsuite/conformance/* ${prefix}/testcases/open_posix_testsuite/Documentation/* ${prefix}/testcases/open_posix_testsuite/functional/* ${prefix}/testcases/open_posix_testsuite/include/* ${prefix}/testcases/open_posix_testsuite/scripts/* ${prefix}/testcases/open_posix_testsuite/stress/* ${prefix}/testcases/open_posix_testsuite/tools/* ${prefix}/testcases/data/nm01/lib.a ${prefix}/lib/libmem.a"
+FILES:${PN} += "${prefix}/* ${prefix}/runtest/* ${prefix}/scenario_groups/* ${prefix}/testcases/bin/* ${prefix}/testcases/bin/*/bin/* ${prefix}/testscripts/* ${prefix}/testcases/open_posix_testsuite/* ${prefix}/testcases/open_posix_testsuite/conformance/* ${prefix}/testcases/open_posix_testsuite/Documentation/* ${prefix}/testcases/open_posix_testsuite/functional/* ${prefix}/testcases/open_posix_testsuite/include/* ${prefix}/testcases/open_posix_testsuite/scripts/* ${prefix}/testcases/open_posix_testsuite/stress/* ${prefix}/testcases/open_posix_testsuite/tools/* ${prefix}/testcases/data/nm01/lib.a ${prefix}/lib/libmem.a"
 
 # Avoid stripping some generated binaries otherwise some of the ltp tests such as ldd01 & nm01 fail
 INHIBIT_PACKAGE_STRIP_FILES = "${prefix}/testcases/bin/nm01 ${prefix}/testcases/bin/ldd01"
-INSANE_SKIP_${PN} += "already-stripped staticdev"
+INSANE_SKIP:${PN} += "already-stripped staticdev"
 
 remove_broken_musl_sources() {
 	[ "${TCLIBC}" = "musl" ] || return 0
@@ -135,4 +135,4 @@
 # exist on the running system.  For instance it has specific checks for
 # csh and ksh which are not typically part of OpenEmbedded systems (but
 # can be added via additional layers.)
-SKIP_FILEDEPS_${PN} = '1'
+SKIP_FILEDEPS:${PN} = '1'
diff --git a/poky/meta/recipes-extended/man-db/man-db_2.9.4.bb b/poky/meta/recipes-extended/man-db/man-db_2.9.4.bb
index cfa6561..c4cdbcc 100644
--- a/poky/meta/recipes-extended/man-db/man-db_2.9.4.bb
+++ b/poky/meta/recipes-extended/man-db/man-db_2.9.4.bb
@@ -11,11 +11,11 @@
 SRC_URI[sha256sum] = "b66c99edfad16ad928c889f87cf76380263c1609323c280b3a9e6963fdb16756"
 
 DEPENDS = "libpipeline gdbm groff-native base-passwd"
-RDEPENDS_${PN} += "base-passwd"
+RDEPENDS:${PN} += "base-passwd"
 PACKAGE_WRITE_DEPS += "base-passwd"
 
 # | /usr/src/debug/man-db/2.8.0-r0/man-db-2.8.0/src/whatis.c:939: undefined reference to `_nl_msg_cat_cntr'
-USE_NLS_libc-musl = "no"
+USE_NLS:libc-musl = "no"
 
 inherit gettext pkgconfig autotools systemd
 
@@ -31,17 +31,17 @@
 	fi
 }
 
-do_install_append_libc-musl() {
+do_install:append:libc-musl() {
         rm -f ${D}${libdir}/charset.alias
 }
 
-FILES_${PN} += "${prefix}/lib/tmpfiles.d"
+FILES:${PN} += "${prefix}/lib/tmpfiles.d"
 
-FILES_${PN}-dev += "${libdir}/man-db/libman.so ${libdir}/${BPN}/libmandb.so"
+FILES:${PN}-dev += "${libdir}/man-db/libman.so ${libdir}/${BPN}/libmandb.so"
 
-RDEPENDS_${PN} += "groff"
-RRECOMMENDS_${PN} += "less"
-RPROVIDES_${PN} += " man"
+RDEPENDS:${PN} += "groff"
+RRECOMMENDS:${PN} += "less"
+RPROVIDES:${PN} += " man"
 
 def compress_pkg(d):
     if bb.utils.contains("INHERIT", "compress_doc", True, False, d):
@@ -54,7 +54,7 @@
              return "xz"
     return ""
 
-RDEPENDS_${PN} += "${@compress_pkg(d)}"
+RDEPENDS:${PN} += "${@compress_pkg(d)}"
 
-SYSTEMD_SERVICE_${PN} = "man-db.timer man-db.service"
+SYSTEMD_SERVICE:${PN} = "man-db.timer man-db.service"
 SYSTEMD_AUTO_ENABLE ?= "disable"
diff --git a/poky/meta/recipes-extended/man-pages/man-pages_5.12.bb b/poky/meta/recipes-extended/man-pages/man-pages_5.12.bb
index a5b2c30..ed30103 100644
--- a/poky/meta/recipes-extended/man-pages/man-pages_5.12.bb
+++ b/poky/meta/recipes-extended/man-pages/man-pages_5.12.bb
@@ -23,14 +23,14 @@
         oe_runmake install prefix=${prefix} DESTDIR=${D}
 }
 
-# Only deliveres man-pages so FILES_${PN} gets everything
-FILES_${PN}-doc = ""
-FILES_${PN} = "${mandir}/*"
+# Only deliveres man-pages so FILES:${PN} gets everything
+FILES:${PN}-doc = ""
+FILES:${PN} = "${mandir}/*"
 
 inherit update-alternatives
 
 ALTERNATIVE_PRIORITY = "100"
-ALTERNATIVE_${PN} = "passwd.5 getspnam.3 crypt.3"
+ALTERNATIVE:${PN} = "passwd.5 getspnam.3 crypt.3"
 ALTERNATIVE_LINK_NAME[passwd.5] = "${mandir}/man5/passwd.5"
 ALTERNATIVE_LINK_NAME[getspnam.3] = "${mandir}/man3/getspnam.3"
 ALTERNATIVE_LINK_NAME[crypt.3] = "${mandir}/man3/crypt.3"
diff --git a/poky/meta/recipes-extended/mc/mc_4.8.26.bb b/poky/meta/recipes-extended/mc/mc_4.8.26.bb
index 5c5e679..d561967 100644
--- a/poky/meta/recipes-extended/mc/mc_4.8.26.bb
+++ b/poky/meta/recipes-extended/mc/mc_4.8.26.bb
@@ -5,8 +5,8 @@
 LIC_FILES_CHKSUM = "file://COPYING;md5=270bbafe360e73f9840bd7981621f9c2"
 SECTION = "console/utils"
 DEPENDS = "ncurses glib-2.0 util-linux"
-RDEPENDS_${PN} = "ncurses-terminfo-base"
-RRECOMMENDS_${PN} = "ncurses-terminfo"
+RDEPENDS:${PN} = "ncurses-terminfo-base"
+RRECOMMENDS:${PN} = "ncurses-terminfo"
 
 SRC_URI = "http://www.midnight-commander.org/downloads/${BPN}-${PV}.tar.bz2 \
            file://0001-mc-replace-perl-w-with-use-warnings.patch \
@@ -23,7 +23,7 @@
 PACKAGECONFIG[smb] = "--enable-vfs-smb,--disable-vfs-smb,samba,"
 PACKAGECONFIG[sftp] = "--enable-vfs-sftp,--disable-vfs-sftp,libssh2,"
 
-CFLAGS_append_libc-musl = ' -DNCURSES_WIDECHAR=1 '
+CFLAGS:append:libc-musl = ' -DNCURSES_WIDECHAR=1 '
 EXTRA_OECONF = "--with-screen=ncurses --without-gpm-mouse --without-x --disable-configure-args"
 
 CACHED_CONFIGUREVARS += "ac_cv_path_PERL='/usr/bin/env perl'"
@@ -31,7 +31,7 @@
 CACHED_CONFIGUREVARS += "ac_cv_path_GREP='/usr/bin/env grep'"
 CACHED_CONFIGUREVARS += "mc_cv_have_zipinfo=yes"
 
-do_install_append () {
+do_install:append () {
 	sed -i -e '1s,#!.*perl,#!${bindir}/env perl,' ${D}${libexecdir}/mc/extfs.d/*
         
         rm ${D}${libexecdir}/mc/extfs.d/s3+ ${D}${libexecdir}/mc/extfs.d/uc1541
@@ -39,17 +39,17 @@
 
 PACKAGES =+ "${BPN}-helpers-perl ${BPN}-helpers ${BPN}-fish"
 
-SUMMARY_${BPN}-helpers-perl = "Midnight Commander Perl-based helper scripts"
-FILES_${BPN}-helpers-perl = "${libexecdir}/mc/extfs.d/a+ ${libexecdir}/mc/extfs.d/apt+ \
+SUMMARY:${BPN}-helpers-perl = "Midnight Commander Perl-based helper scripts"
+FILES:${BPN}-helpers-perl = "${libexecdir}/mc/extfs.d/a+ ${libexecdir}/mc/extfs.d/apt+ \
                              ${libexecdir}/mc/extfs.d/deb ${libexecdir}/mc/extfs.d/deba \
                              ${libexecdir}/mc/extfs.d/debd ${libexecdir}/mc/extfs.d/dpkg+ \
                              ${libexecdir}/mc/extfs.d/mailfs ${libexecdir}/mc/extfs.d/patchfs \ 
                              ${libexecdir}/mc/extfs.d/rpms+ ${libexecdir}/mc/extfs.d/ulib \ 
                              ${libexecdir}/mc/extfs.d/uzip"
-RDEPENDS_${BPN}-helpers-perl = "perl"
+RDEPENDS:${BPN}-helpers-perl = "perl"
 
-SUMMARY_${BPN}-helpers = "Midnight Commander shell helper scripts"
-FILES_${BPN}-helpers = "${libexecdir}/mc/extfs.d/* ${libexecdir}/mc/ext.d/*"
+SUMMARY:${BPN}-helpers = "Midnight Commander shell helper scripts"
+FILES:${BPN}-helpers = "${libexecdir}/mc/extfs.d/* ${libexecdir}/mc/ext.d/*"
 
-SUMMARY_${BPN}-fish = "Midnight Commander Fish scripts"
-FILES_${BPN}-fish = "${libexecdir}/mc/fish"
+SUMMARY:${BPN}-fish = "Midnight Commander Fish scripts"
+FILES:${BPN}-fish = "${libexecdir}/mc/fish"
diff --git a/poky/meta/recipes-extended/mdadm/mdadm_4.1.bb b/poky/meta/recipes-extended/mdadm/mdadm_4.1.bb
index bb77759..062797a 100644
--- a/poky/meta/recipes-extended/mdadm/mdadm_4.1.bb
+++ b/poky/meta/recipes-extended/mdadm/mdadm_4.1.bb
@@ -31,23 +31,23 @@
 
 inherit autotools-brokensep ptest systemd
 
-SYSTEMD_SERVICE_${PN} = "mdmonitor.service"
+SYSTEMD_SERVICE:${PN} = "mdmonitor.service"
 SYSTEMD_AUTO_ENABLE = "disable"
 
-CFLAGS_append_toolchain-clang = " -Wno-error=address-of-packed-member"
+CFLAGS:append:toolchain-clang = " -Wno-error=address-of-packed-member"
 
 # PPC64 and MIPS64 uses long long for u64 in the kernel, but powerpc's asm/types.h
 # prevents 64-bit userland from seeing this definition, instead defaulting
 # to u64 == long in userspace. Define __SANE_USERSPACE_TYPES__ to get
 # int-ll64.h included
-CFLAGS_append_powerpc64 = ' -D__SANE_USERSPACE_TYPES__'
-CFLAGS_append_mipsarchn64 = ' -D__SANE_USERSPACE_TYPES__'
-CFLAGS_append_mipsarchn32 = ' -D__SANE_USERSPACE_TYPES__'
+CFLAGS:append:powerpc64 = ' -D__SANE_USERSPACE_TYPES__'
+CFLAGS:append:mipsarchn64 = ' -D__SANE_USERSPACE_TYPES__'
+CFLAGS:append:mipsarchn32 = ' -D__SANE_USERSPACE_TYPES__'
 
 EXTRA_OEMAKE = 'CHECK_RUN_DIR=0 CXFLAGS="${CFLAGS}" SYSTEMD_DIR=${systemd_unitdir}/system \
                 BINDIR="${base_sbindir}" UDEVDIR="${nonarch_base_libdir}/udev"'
 
-DEBUG_OPTIMIZATION_append = " -Wno-error"
+DEBUG_OPTIMIZATION:append = " -Wno-error"
 
 do_compile() {
 	oe_runmake SYSROOT="${STAGING_DIR_TARGET}"
@@ -58,14 +58,14 @@
 	autotools_do_install
 }
 
-do_install_append() {
+do_install:append() {
         install -d ${D}/${sysconfdir}/
         install -m 644 ${S}/mdadm.conf-example ${D}${sysconfdir}/mdadm.conf
         install -d ${D}/${sysconfdir}/init.d
         install -m 755 ${WORKDIR}/mdadm.init ${D}${sysconfdir}/init.d/mdmonitor
 }
 
-do_install_append() {
+do_install:append() {
         oe_runmake install-systemd DESTDIR=${D}
 }
 
@@ -93,8 +93,8 @@
 	done
 }
 
-RDEPENDS_${PN}-ptest += "bash e2fsprogs-mke2fs"
-RRECOMMENDS_${PN}-ptest += " \
+RDEPENDS:${PN}-ptest += "bash e2fsprogs-mke2fs"
+RRECOMMENDS:${PN}-ptest += " \
     coreutils \
     util-linux \
     kernel-module-loop \
@@ -105,4 +105,4 @@
     kernel-module-raid456 \
 "
 
-FILES_${PN} += "${systemd_unitdir}/*"
+FILES:${PN} += "${systemd_unitdir}/*"
diff --git a/poky/meta/recipes-extended/mingetty/mingetty_1.08.bb b/poky/meta/recipes-extended/mingetty/mingetty_1.08.bb
index 9822e86..27feaa8 100644
--- a/poky/meta/recipes-extended/mingetty/mingetty_1.08.bb
+++ b/poky/meta/recipes-extended/mingetty/mingetty_1.08.bb
@@ -24,7 +24,7 @@
 
 inherit update-alternatives
 
-ALTERNATIVE_${PN} = "getty"
+ALTERNATIVE:${PN} = "getty"
 ALTERNATIVE_LINK_NAME[getty] = "${base_sbindir}/getty"
 ALTERNATIVE_TARGET[getty] = "${base_sbindir}/mingetty"
 ALTERNATIVE_PRIORITY = "10"
diff --git a/poky/meta/recipes-extended/minicom/minicom_2.7.1.bb b/poky/meta/recipes-extended/minicom/minicom_2.7.1.bb
index 12003ff..4f715cb 100644
--- a/poky/meta/recipes-extended/minicom/minicom_2.7.1.bb
+++ b/poky/meta/recipes-extended/minicom/minicom_2.7.1.bb
@@ -28,6 +28,6 @@
 	for d in doc extras man lib src; do make -C $d DESTDIR=${D} install; done
 }
 
-RRECOMMENDS_${PN} += "lrzsz"
+RRECOMMENDS:${PN} += "lrzsz"
 
-RDEPENDS_${PN} += "ncurses-terminfo-base"
+RDEPENDS:${PN} += "ncurses-terminfo-base"
diff --git a/poky/meta/recipes-extended/msmtp/msmtp_1.8.15.bb b/poky/meta/recipes-extended/msmtp/msmtp_1.8.15.bb
index e85873e..bb56a2e 100644
--- a/poky/meta/recipes-extended/msmtp/msmtp_1.8.15.bb
+++ b/poky/meta/recipes-extended/msmtp/msmtp_1.8.15.bb
@@ -17,9 +17,9 @@
 
 EXTRA_OECONF += "--without-libsecret --without-libgsasl --without-libidn"
 
-ALTERNATIVE_${PN} = "sendmail"
+ALTERNATIVE:${PN} = "sendmail"
 # /usr/lib/sendmial is required by LSB core test
-ALTERNATIVE_${PN}_linuxstdbase = "sendmail usr-lib-sendmail"
+ALTERNATIVE:${PN}:linuxstdbase = "sendmail usr-lib-sendmail"
 ALTERNATIVE_TARGET[sendmail] = "${bindir}/msmtp"
 ALTERNATIVE_LINK_NAME[sendmail] = "${sbindir}/sendmail"
 ALTERNATIVE_TARGET[usr-lib-sendmail] = "${bindir}/msmtp"
diff --git a/poky/meta/recipes-extended/net-tools/net-tools_2.10.bb b/poky/meta/recipes-extended/net-tools/net-tools_2.10.bb
index de4a715..00caccd 100644
--- a/poky/meta/recipes-extended/net-tools/net-tools_2.10.bb
+++ b/poky/meta/recipes-extended/net-tools/net-tools_2.10.bb
@@ -90,8 +90,8 @@
     ${@bb.utils.contains('PACKAGECONFIG', 'hostname', 'dnsdomainname domainname hostname nisdomainname ypdomainname', '', d)} \
 "
 
-ALTERNATIVE_${PN} = "${base_sbindir_progs} ${base_bindir_progs}"
-ALTERNATIVE_${PN}-doc += "${@bb.utils.contains('PACKAGECONFIG', 'hostname', 'hostname.1 dnsdomainname.1', '', d)}"
+ALTERNATIVE:${PN} = "${base_sbindir_progs} ${base_bindir_progs}"
+ALTERNATIVE:${PN}-doc += "${@bb.utils.contains('PACKAGECONFIG', 'hostname', 'hostname.1 dnsdomainname.1', '', d)}"
 ALTERNATIVE_LINK_NAME[hostname.1] = "${mandir}/man1/hostname.1"
 ALTERNATIVE_LINK_NAME[dnsdomainname.1] = "${mandir}/man1/dnsdomainname.1"
 ALTERNATIVE_PRIORITY[hostname.1] = "10"
@@ -105,16 +105,16 @@
 ALTERNATIVE_PRIORITY = "100"
 
 NETTOOLS_PACKAGES = "${PN}-mii-tool"
-NETTOOLS_PACKAGES_class-native = ""
+NETTOOLS_PACKAGES:class-native = ""
 
 PACKAGE_BEFORE_PN = "${NETTOOLS_PACKAGES}"
-RDEPENDS_${PN} += "${NETTOOLS_PACKAGES}"
+RDEPENDS:${PN} += "${NETTOOLS_PACKAGES}"
 
-FILES_${PN}-mii-tool = "${base_sbindir}/mii-tool"
+FILES:${PN}-mii-tool = "${base_sbindir}/mii-tool"
 
-ALTERNATIVE_${PN}_remove = "mii-tool"
+ALTERNATIVE:${PN}:remove = "mii-tool"
 
-ALTERNATIVE_${PN}-mii-tool = "mii-tool"
+ALTERNATIVE:${PN}-mii-tool = "mii-tool"
 ALTERNATIVE_TARGET[mii-tool] = "${base_sbindir}/mii-tool"
 ALTERNATIVE_LINK_NAME[mii-tool] = "${base_sbindir}/mii-tool"
 
diff --git a/poky/meta/recipes-extended/newt/libnewt_0.52.21.bb b/poky/meta/recipes-extended/newt/libnewt_0.52.21.bb
index 88b4cf4..84d327c 100644
--- a/poky/meta/recipes-extended/newt/libnewt_0.52.21.bb
+++ b/poky/meta/recipes-extended/newt/libnewt_0.52.21.bb
@@ -39,20 +39,20 @@
 
 export CPPFLAGS
 
-PACKAGES_prepend = "whiptail ${PN}-python "
+PACKAGES:prepend = "whiptail ${PN}-python "
 
-RDEPENDS_${PN}-python += "python3-core"
-FILES_${PN}-python = "${PYTHON_SITEPACKAGES_DIR}/*"
+RDEPENDS:${PN}-python += "python3-core"
+FILES:${PN}-python = "${PYTHON_SITEPACKAGES_DIR}/*"
 
-do_configure_prepend() {
+do_configure:prepend() {
     sh autogen.sh
 }
 
-do_compile_prepend() {
+do_compile:prepend() {
     # Make sure the recompile is OK
     rm -f ${B}/.depend
 }
 
-FILES_whiptail = "${bindir}/whiptail"
+FILES:whiptail = "${bindir}/whiptail"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-extended/packagegroups/packagegroup-core-base-utils.bb b/poky/meta/recipes-extended/packagegroups/packagegroup-core-base-utils.bb
index 1e63da7..b17cba4 100644
--- a/poky/meta/recipes-extended/packagegroups/packagegroup-core-base-utils.bb
+++ b/poky/meta/recipes-extended/packagegroups/packagegroup-core-base-utils.bb
@@ -13,7 +13,7 @@
 
 PACKAGE_ARCH = "${MACHINE_ARCH}"
 
-RDEPENDS_${PN} = "\
+RDEPENDS:${PN} = "\
     base-passwd \
     bash \
     bind-utils \
diff --git a/poky/meta/recipes-extended/packagegroups/packagegroup-core-full-cmdline.bb b/poky/meta/recipes-extended/packagegroups/packagegroup-core-full-cmdline.bb
index 16c2f9f..14a7bde 100644
--- a/poky/meta/recipes-extended/packagegroups/packagegroup-core-full-cmdline.bb
+++ b/poky/meta/recipes-extended/packagegroups/packagegroup-core-full-cmdline.bb
@@ -49,13 +49,13 @@
         if mapped:
             oldtaskname = mapped.replace("packagegroup-core", "task-core")
             mapstr = " %s%s %s%s" % (mlprefix, mapped, mlprefix, oldtaskname)
-            d.appendVar("RPROVIDES_%s" % pkg, mapstr)
-            d.appendVar("RREPLACES_%s" % pkg, mapstr)
-            d.appendVar("RCONFLICTS_%s" % pkg, mapstr)
+            d.appendVar("RPROVIDES:%s" % pkg, mapstr)
+            d.appendVar("RREPLACES:%s" % pkg, mapstr)
+            d.appendVar("RCONFLICTS:%s" % pkg, mapstr)
 }
 
 
-RDEPENDS_packagegroup-core-full-cmdline = "\
+RDEPENDS:packagegroup-core-full-cmdline = "\
     packagegroup-core-full-cmdline-libs \
     packagegroup-core-full-cmdline-utils \
     packagegroup-core-full-cmdline-extended \
@@ -65,11 +65,11 @@
     packagegroup-core-full-cmdline-sys-services \
     "
 
-RDEPENDS_packagegroup-core-full-cmdline-libs = "\
+RDEPENDS:packagegroup-core-full-cmdline-libs = "\
     glib-2.0 \
     "
 
-RDEPENDS_packagegroup-core-full-cmdline-utils = "\
+RDEPENDS:packagegroup-core-full-cmdline-utils = "\
     bash \
     acl \
     attr \
@@ -99,7 +99,7 @@
     util-linux \
     "
 
-RDEPENDS_packagegroup-core-full-cmdline-extended = "\
+RDEPENDS:packagegroup-core-full-cmdline-extended = "\
     iproute2 \
     iputils \
     iptables \
@@ -107,7 +107,7 @@
     openssl \
     "
 
-RDEPENDS_packagegroup-core-full-cmdline-dev-utils = "\
+RDEPENDS:packagegroup-core-full-cmdline-dev-utils = "\
     diffutils \
     m4 \
     make \
@@ -115,7 +115,7 @@
     "
 
 VIRTUAL-RUNTIME_syslog ?= "sysklogd"
-RDEPENDS_packagegroup-core-full-cmdline-initscripts = "\
+RDEPENDS:packagegroup-core-full-cmdline-initscripts = "\
     ${VIRTUAL-RUNTIME_initscripts} \
     ${VIRTUAL-RUNTIME_init_manager} \
     ethtool \
@@ -123,7 +123,7 @@
     ${VIRTUAL-RUNTIME_syslog} \
     "
 
-RDEPENDS_packagegroup-core-full-cmdline-multiuser = "\
+RDEPENDS:packagegroup-core-full-cmdline-multiuser = "\
     bzip2 \
     cracklib \
     gzip \
@@ -131,7 +131,7 @@
     sudo \
     "
 
-RDEPENDS_packagegroup-core-full-cmdline-sys-services = "\
+RDEPENDS:packagegroup-core-full-cmdline-sys-services = "\
     at \
     cronie \
     logrotate \
diff --git a/poky/meta/recipes-extended/pam/libpam/0001-modules-pam_namespace-Makefile.am-correctly-install-.patch b/poky/meta/recipes-extended/pam/libpam/0001-modules-pam_namespace-Makefile.am-correctly-install-.patch
new file mode 100644
index 0000000..b41d1e5
--- /dev/null
+++ b/poky/meta/recipes-extended/pam/libpam/0001-modules-pam_namespace-Makefile.am-correctly-install-.patch
@@ -0,0 +1,28 @@
+From e2db4082f6b988f1d5803028e9e47aee5f3519ac Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Sun, 27 Dec 2020 00:30:45 +0100
+Subject: [PATCH] modules/pam_namespace/Makefile.am: correctly install systemd
+ unit file
+
+Upstream-Status: Pending
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+---
+ modules/pam_namespace/Makefile.am | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/modules/pam_namespace/Makefile.am b/modules/pam_namespace/Makefile.am
+index 21e1b33..ddd5fc0 100644
+--- a/modules/pam_namespace/Makefile.am
++++ b/modules/pam_namespace/Makefile.am
+@@ -18,7 +18,7 @@ TESTS = $(dist_check_SCRIPTS)
+ securelibdir = $(SECUREDIR)
+ secureconfdir = $(SCONFIGDIR)
+ namespaceddir = $(SCONFIGDIR)/namespace.d
+-servicedir = $(prefix)/lib/systemd/system
++servicedir = /lib/systemd/system
+ 
+ AM_CFLAGS = -I$(top_srcdir)/libpam/include -I$(top_srcdir)/libpamc/include \
+         -DSECURECONF_DIR=\"$(SCONFIGDIR)/\" $(WARN_CFLAGS)
+-- 
+2.24.0
+
diff --git a/poky/meta/recipes-extended/pam/libpam_1.3.1.bb b/poky/meta/recipes-extended/pam/libpam_1.3.1.bb
index 43db08e..9b5b1e1 100644
--- a/poky/meta/recipes-extended/pam/libpam_1.3.1.bb
+++ b/poky/meta/recipes-extended/pam/libpam_1.3.1.bb
@@ -87,10 +87,10 @@
 python populate_packages:prepend () {
     def pam_plugin_append_file(pn, dir, file):
         nf = os.path.join(dir, file)
-        of = d.getVar('FILES_' + pn)
+        of = d.getVar('FILES:' + pn)
         if of:
             nf = of + " " + nf
-        d.setVar('FILES_' + pn, nf)
+        d.setVar('FILES:' + pn, nf)
 
     def pam_plugin_hook(file, pkg, pattern, format, basename):
         pn = d.getVar('PN')
diff --git a/poky/meta/recipes-extended/parted/parted_3.4.bb b/poky/meta/recipes-extended/parted/parted_3.4.bb
index d9b3ffb..8924bdb 100644
--- a/poky/meta/recipes-extended/parted/parted_3.4.bb
+++ b/poky/meta/recipes-extended/parted/parted_3.4.bb
@@ -49,9 +49,9 @@
 	sed -e 's| ../parted||' -i $t/tests/*.sh
 }
 
-RDEPENDS_${PN}-ptest = "bash coreutils perl util-linux-losetup util-linux-mkswap python3 make gawk e2fsprogs-mke2fs e2fsprogs-tune2fs python3-core dosfstools"
-RRECOMMENDS_${PN}-ptest += "kernel-module-scsi-debug kernel-module-loop kernel-module-vfat"
-RDEPENDS_${PN}-ptest_append_libc-glibc = "\
+RDEPENDS:${PN}-ptest = "bash coreutils perl util-linux-losetup util-linux-mkswap python3 make gawk e2fsprogs-mke2fs e2fsprogs-tune2fs python3-core dosfstools"
+RRECOMMENDS:${PN}-ptest += "kernel-module-scsi-debug kernel-module-loop kernel-module-vfat"
+RDEPENDS:${PN}-ptest:append:libc-glibc = "\
         glibc-utils \
         locale-base-en-us \
         "
@@ -59,5 +59,5 @@
 inherit update-alternatives
 
 ALTERNATIVE_PRIORITY = "100"
-ALTERNATIVE_${PN} = "partprobe"
+ALTERNATIVE:${PN} = "partprobe"
 ALTERNATIVE_LINK_NAME[partprobe] = "${sbindir}/partprobe"
diff --git a/poky/meta/recipes-extended/pbzip2/pbzip2_1.1.13.bb b/poky/meta/recipes-extended/pbzip2/pbzip2_1.1.13.bb
index ed21d81..3fa89de 100644
--- a/poky/meta/recipes-extended/pbzip2/pbzip2_1.1.13.bb
+++ b/poky/meta/recipes-extended/pbzip2/pbzip2_1.1.13.bb
@@ -9,7 +9,7 @@
 LIC_FILES_CHKSUM = "file://COPYING;md5=398b8832c6f840cfebd20ab2be6a3743"
 
 DEPENDS = "bzip2"
-DEPENDS_append_class-native = " bzip2-replacement-native"
+DEPENDS:append:class-native = " bzip2-replacement-native"
 
 SRC_URI = "https://launchpad.net/${BPN}/1.1/${PV}/+download/${BP}.tar.gz \
            file://0001-pbzip2-Fix-invalid-suffix-on-literal-C-11-warning.patch \
diff --git a/poky/meta/recipes-extended/perl/libconvert-asn1-perl_0.27.bb b/poky/meta/recipes-extended/perl/libconvert-asn1-perl_0.27.bb
index 409a8f3..cdc43b5 100644
--- a/poky/meta/recipes-extended/perl/libconvert-asn1-perl_0.27.bb
+++ b/poky/meta/recipes-extended/perl/libconvert-asn1-perl_0.27.bb
@@ -16,7 +16,7 @@
 
 EXTRA_PERLFLAGS = "-I ${PERLHOSTLIB}"
 
-RDEPENDS_${PN} += "perl-module-exporter perl-module-constant perl-module-encode perl-module-encode-encoding perl-module-utf8 perl-module-socket perl-module-time-local perl-module-posix"
-RDEPENDS_${PN}-ptest += "perl-module-math-bigint perl-module-io-socket perl-module-data-dumper perl-module-math-bigint-calc"
+RDEPENDS:${PN} += "perl-module-exporter perl-module-constant perl-module-encode perl-module-encode-encoding perl-module-utf8 perl-module-socket perl-module-time-local perl-module-posix"
+RDEPENDS:${PN}-ptest += "perl-module-math-bigint perl-module-io-socket perl-module-data-dumper perl-module-math-bigint-calc"
 
 BBCLASSEXTEND = "native"
diff --git a/poky/meta/recipes-extended/perl/libtimedate-perl_2.30.bb b/poky/meta/recipes-extended/perl/libtimedate-perl_2.30.bb
index 46843bf..7c5e990 100644
--- a/poky/meta/recipes-extended/perl/libtimedate-perl_2.30.bb
+++ b/poky/meta/recipes-extended/perl/libtimedate-perl_2.30.bb
@@ -14,8 +14,8 @@
 
 BBCLASSEXTEND = "native"
 
-RDEPENDS_${PN} += "perl-module-carp perl-module-exporter perl-module-strict perl-module-time-local"
-RDEPENDS_${PN}-ptest += "perl-module-test-more perl-module-utf8"
+RDEPENDS:${PN} += "perl-module-carp perl-module-exporter perl-module-strict perl-module-time-local"
+RDEPENDS:${PN}-ptest += "perl-module-test-more perl-module-utf8"
 
 SRC_URI[md5sum] = "b1d91153ac971347aee84292ed886c1c"
 SRC_URI[sha256sum] = "75bd254871cb5853a6aa0403ac0be270cdd75c9d1b6639f18ecba63c15298e86"
diff --git a/poky/meta/recipes-extended/perl/libxml-namespacesupport-perl_1.12.bb b/poky/meta/recipes-extended/perl/libxml-namespacesupport-perl_1.12.bb
index 57c407e..03bf0b6 100644
--- a/poky/meta/recipes-extended/perl/libxml-namespacesupport-perl_1.12.bb
+++ b/poky/meta/recipes-extended/perl/libxml-namespacesupport-perl_1.12.bb
@@ -21,7 +21,7 @@
 
 inherit cpan ptest-perl
 
-RDEPENDS_${PN}-ptest += "perl-module-test-more"
+RDEPENDS:${PN}-ptest += "perl-module-test-more"
 
 BBCLASSEXTEND="native nativesdk"
 
diff --git a/poky/meta/recipes-extended/perl/libxml-sax-base-perl_1.09.bb b/poky/meta/recipes-extended/perl/libxml-sax-base-perl_1.09.bb
index 2bff65a..790ff51 100644
--- a/poky/meta/recipes-extended/perl/libxml-sax-base-perl_1.09.bb
+++ b/poky/meta/recipes-extended/perl/libxml-sax-base-perl_1.09.bb
@@ -8,7 +8,7 @@
 
 SECTION = "libs"
 LICENSE = "Artistic-1.0 | GPL-1.0+"
-RDEPENDS_${PN} += "perl-module-extutils-makemaker"
+RDEPENDS:${PN} += "perl-module-extutils-makemaker"
 
 LIC_FILES_CHKSUM = "file://dist.ini;endline=5;md5=8f9c9a55340aefaee6e9704c88466446"
 
@@ -21,6 +21,6 @@
 
 inherit cpan ptest-perl
 
-RDEPENDS_${PN}-ptest += "perl-module-test perl-module-test-more"
+RDEPENDS:${PN}-ptest += "perl-module-test perl-module-test-more"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-extended/perl/libxml-sax-perl_1.02.bb b/poky/meta/recipes-extended/perl/libxml-sax-perl_1.02.bb
index 02ee34e..9aa6fd0 100644
--- a/poky/meta/recipes-extended/perl/libxml-sax-perl_1.02.bb
+++ b/poky/meta/recipes-extended/perl/libxml-sax-perl_1.02.bb
@@ -11,7 +11,7 @@
 SECTION = "libs"
 LICENSE = "Artistic-1.0 | GPL-1.0+"
 DEPENDS += "libxml-namespacesupport-perl-native"
-RDEPENDS_${PN} += "libxml-namespacesupport-perl libxml-sax-base-perl perl-module-file-temp"
+RDEPENDS:${PN} += "libxml-namespacesupport-perl libxml-sax-base-perl perl-module-file-temp"
 
 LIC_FILES_CHKSUM = "file://LICENSE;md5=65c4cd8f39c24c7135ed70dacbcb09e3"
 
@@ -29,9 +29,9 @@
 	chown -R root:root ${D}${PTEST_PATH}/testfiles
 }
 
-RDEPENDS_${PN} += "perl-module-encode perl-module-perlio"
+RDEPENDS:${PN} += "perl-module-encode perl-module-perlio"
 
-RDEPENDS_${PN}-ptest += " \
+RDEPENDS:${PN}-ptest += " \
     perl-module-base  \
     perl-module-encode-byte \
     perl-module-encode-unicode \
diff --git a/poky/meta/recipes-extended/pigz/pigz_2.6.bb b/poky/meta/recipes-extended/pigz/pigz_2.6.bb
index 05be9b7..3566e18 100644
--- a/poky/meta/recipes-extended/pigz/pigz_2.6.bb
+++ b/poky/meta/recipes-extended/pigz/pigz_2.6.bb
@@ -10,7 +10,7 @@
 
 SRC_URI = "http://zlib.net/${BPN}/fossils/${BP}.tar.gz"
 SRC_URI[sha256sum] = "2eed7b0d7449d1d70903f2a62cd6005d262eb3a8c9e98687bc8cbb5809db2a7d"
-PROVIDES_class-native += "gzip-native"
+PROVIDES:class-native += "gzip-native"
 
 # Point this at the homepage in case /fossils/ isn't updated
 UPSTREAM_CHECK_URI = "http://zlib.net/${BPN}/"
@@ -30,7 +30,7 @@
 	ln -nsf pigz ${D}${base_bindir}/pigzcat
 }
 
-do_install_append_class-native() {
+do_install:append:class-native() {
 	install -d ${D}${bindir}
 	install ${B}/pigz ${D}${bindir}/gzip
 	ln -nsf gzip ${D}${bindir}/gunzip
@@ -38,8 +38,8 @@
 }
 
 ALTERNATIVE_PRIORITY = "110"
-ALTERNATIVE_${PN} = "gunzip gzip zcat"
-ALTERNATIVE_${PN}_class-nativesdk = ""
+ALTERNATIVE:${PN} = "gunzip gzip zcat"
+ALTERNATIVE:${PN}:class-nativesdk = ""
 ALTERNATIVE_LINK_NAME[gunzip] = "${base_bindir}/gunzip"
 ALTERNATIVE_LINK_NAME[gzip] = "${base_bindir}/gzip"
 ALTERNATIVE_LINK_NAME[zcat] = "${base_bindir}/zcat"
diff --git a/poky/meta/recipes-extended/procps/procps_3.3.17.bb b/poky/meta/recipes-extended/procps/procps_3.3.17.bb
index c74a901..64a2d15 100644
--- a/poky/meta/recipes-extended/procps/procps_3.3.17.bb
+++ b/poky/meta/recipes-extended/procps/procps_3.3.17.bb
@@ -24,7 +24,7 @@
 # Upstream has a custom autogen.sh which invokes po/update-potfiles as they
 # don't ship a po/POTFILES.in (which is silly).  Without that file gettext
 # doesn't believe po/ is a gettext directory and won't generate po/Makefile.
-do_configure_prepend() {
+do_configure:prepend() {
     ( cd ${S} && po/update-potfiles )
 }
 
@@ -33,7 +33,7 @@
 PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}"
 PACKAGECONFIG[systemd] = "--with-systemd,--without-systemd,systemd"
 
-do_install_append () {
+do_install:append () {
 	install -d ${D}${base_bindir}
 	[ "${bindir}" != "${base_bindir}" ] && for i in ${base_bindir_progs}; do mv ${D}${bindir}/$i ${D}${base_bindir}/$i; done
 	install -d ${D}${base_sbindir}
@@ -50,7 +50,7 @@
         fi
 }
 
-CONFFILES_${PN} = "${sysconfdir}/sysctl.conf"
+CONFFILES:${PN} = "${sysconfdir}/sysctl.conf"
 
 bindir_progs = "free pkill pmap pgrep pwdx skill snice top uptime w"
 base_bindir_progs += "kill pidof ps watch"
@@ -59,9 +59,9 @@
 ALTERNATIVE_PRIORITY = "200"
 ALTERNATIVE_PRIORITY[pidof] = "150"
 
-ALTERNATIVE_${PN} = "${bindir_progs} ${base_bindir_progs} ${base_sbindir_progs}"
+ALTERNATIVE:${PN} = "${bindir_progs} ${base_bindir_progs} ${base_sbindir_progs}"
 
-ALTERNATIVE_${PN}-doc = "kill.1 uptime.1"
+ALTERNATIVE:${PN}-doc = "kill.1 uptime.1"
 ALTERNATIVE_LINK_NAME[kill.1] = "${mandir}/man1/kill.1"
 ALTERNATIVE_LINK_NAME[uptime.1] = "${mandir}/man1/uptime.1"
 
@@ -82,22 +82,22 @@
                    ${PN}-sysctl"
 
 PACKAGE_BEFORE_PN = "${PROCPS_PACKAGES}"
-RDEPENDS_${PN} += "${PROCPS_PACKAGES}"
+RDEPENDS:${PN} += "${PROCPS_PACKAGES}"
 
-RDEPENDS_${PN}-ps += "${PN}-lib"
-RDEPENDS_${PN}-sysctl += "${PN}-lib"
+RDEPENDS:${PN}-ps += "${PN}-lib"
+RDEPENDS:${PN}-sysctl += "${PN}-lib"
 
-FILES_${PN}-lib = "${libdir}"
-FILES_${PN}-ps = "${base_bindir}/ps.${BPN}"
-FILES_${PN}-sysctl = "${base_sbindir}/sysctl.${BPN} ${sysconfdir}/sysctl.conf ${sysconfdir}/sysctl.d"
+FILES:${PN}-lib = "${libdir}"
+FILES:${PN}-ps = "${base_bindir}/ps.${BPN}"
+FILES:${PN}-sysctl = "${base_sbindir}/sysctl.${BPN} ${sysconfdir}/sysctl.conf ${sysconfdir}/sysctl.d"
 
-ALTERNATIVE_${PN}_remove = "ps"
-ALTERNATIVE_${PN}_remove = "sysctl"
+ALTERNATIVE:${PN}:remove = "ps"
+ALTERNATIVE:${PN}:remove = "sysctl"
 
-ALTERNATIVE_${PN}-ps = "ps"
+ALTERNATIVE:${PN}-ps = "ps"
 ALTERNATIVE_TARGET[ps] = "${base_bindir}/ps"
 ALTERNATIVE_LINK_NAME[ps] = "${base_bindir}/ps"
 
-ALTERNATIVE_${PN}-sysctl = "sysctl"
+ALTERNATIVE:${PN}-sysctl = "sysctl"
 ALTERNATIVE_TARGET[sysctl] = "${base_sbindir}/sysctl"
 ALTERNATIVE_LINK_NAME[sysctl] = "${base_sbindir}/sysctl"
\ No newline at end of file
diff --git a/poky/meta/recipes-extended/psmisc/psmisc.inc b/poky/meta/recipes-extended/psmisc/psmisc.inc
index 6ab1288..ad6263e 100644
--- a/poky/meta/recipes-extended/psmisc/psmisc.inc
+++ b/poky/meta/recipes-extended/psmisc/psmisc.inc
@@ -19,7 +19,7 @@
 # Upstream has a custom autogen.sh which invokes po/update-potfiles as they 
 # don't ship a po/POTFILES.in (which is silly).  Without that file gettext 
 # doesn't believe po/ is a gettext directory and won't generate po/Makefile.
-do_configure_prepend() {
+do_configure:prepend() {
     ( cd ${S} && po/update-potfiles )
 }
 
@@ -27,30 +27,30 @@
 PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}"
 PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6,"
 
-ALLOW_EMPTY_${PN} = "1"
+ALLOW_EMPTY:${PN} = "1"
 
 PACKAGES =+ "fuser fuser-doc killall killall-doc pstree pstree-doc"
 PACKAGES += "psmisc-extras"
 
-FILES_${PN} = ""
-RDEPENDS_${PN} = "fuser killall pstree"
+FILES:${PN} = ""
+RDEPENDS:${PN} = "fuser killall pstree"
 
-FILES_fuser = "${bindir}/fuser.${BPN}"
-FILES_fuser-doc = "${mandir}/man1/fuser*"
+FILES:fuser = "${bindir}/fuser.${BPN}"
+FILES:fuser-doc = "${mandir}/man1/fuser*"
 
-FILES_killall = "${bindir}/killall.${BPN}"
-FILES_killall-doc = "${mandir}/man1/killall*"
+FILES:killall = "${bindir}/killall.${BPN}"
+FILES:killall-doc = "${mandir}/man1/killall*"
 
-FILES_pstree = "${bindir}/pstree"
-FILES_pstree-doc = "${mandir}/man1/pstree*"
+FILES:pstree = "${bindir}/pstree"
+FILES:pstree-doc = "${mandir}/man1/pstree*"
 
-FILES_psmisc-extras = "${bindir}"
-FILES_psmisc-extras-doc = "${mandir}"
+FILES:psmisc-extras = "${bindir}"
+FILES:psmisc-extras-doc = "${mandir}"
 
 inherit update-alternatives
 
 ALTERNATIVE_PRIORITY = "90"
 
-ALTERNATIVE_killall = "killall"
+ALTERNATIVE:killall = "killall"
 
-ALTERNATIVE_fuser = "fuser"
+ALTERNATIVE:fuser = "fuser"
diff --git a/poky/meta/recipes-extended/quota/quota_4.06.bb b/poky/meta/recipes-extended/quota/quota_4.06.bb
index 027b081..5115cb3 100644
--- a/poky/meta/recipes-extended/quota/quota_4.06.bb
+++ b/poky/meta/recipes-extended/quota/quota_4.06.bb
@@ -27,7 +27,7 @@
 ASNEEDED = ""
 
 PACKAGECONFIG ??= "tcp-wrappers rpc bsd"
-PACKAGECONFIG_libc-musl = "tcp-wrappers rpc"
+PACKAGECONFIG:libc-musl = "tcp-wrappers rpc"
 
 PACKAGECONFIG[tcp-wrappers] = "--enable-libwrap,--disable-libwrap,tcp-wrappers"
 PACKAGECONFIG[rpc] = "--enable-rpc,--disable-rpc,libtirpc"
diff --git a/poky/meta/recipes-extended/rpcbind/rpcbind_1.2.6.bb b/poky/meta/recipes-extended/rpcbind/rpcbind_1.2.6.bb
index b02638b..e58214d 100644
--- a/poky/meta/recipes-extended/rpcbind/rpcbind_1.2.6.bb
+++ b/poky/meta/recipes-extended/rpcbind/rpcbind_1.2.6.bb
@@ -26,12 +26,12 @@
 INITSCRIPT_NAME = "rpcbind"
 INITSCRIPT_PARAMS = "start 12 2 3 4 5 . stop 60 0 1 6 ."
 
-SYSTEMD_SERVICE_${PN} = "rpcbind.service rpcbind.socket"
+SYSTEMD_SERVICE:${PN} = "rpcbind.service rpcbind.socket"
 
 inherit useradd
 
 USERADD_PACKAGES = "${PN}"
-USERADD_PARAM_${PN} = "--system --no-create-home --home-dir / \
+USERADD_PARAM:${PN} = "--system --no-create-home --home-dir / \
                        --shell /bin/false --user-group rpc"
 
 PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}"
@@ -42,7 +42,7 @@
 
 EXTRA_OECONF += " --enable-warmstarts --with-rpcuser=rpc"
 
-do_install_append () {
+do_install:append () {
 	install -d ${D}${sysconfdir}/init.d
 	sed -e 's,/etc/,${sysconfdir}/,g' \
 		-e 's,/sbin/,${sbindir}/,g' \
@@ -50,5 +50,5 @@
 	chmod 0755 ${D}${sysconfdir}/init.d/rpcbind
 }
 
-ALTERNATIVE_${PN} = "rpcinfo"
+ALTERNATIVE:${PN} = "rpcinfo"
 ALTERNATIVE_LINK_NAME[rpcinfo] = "${bindir}/rpcinfo"
diff --git a/poky/meta/recipes-extended/rpcsvc-proto/rpcsvc-proto.bb b/poky/meta/recipes-extended/rpcsvc-proto/rpcsvc-proto.bb
index 5aff2b5..678632a 100644
--- a/poky/meta/recipes-extended/rpcsvc-proto/rpcsvc-proto.bb
+++ b/poky/meta/recipes-extended/rpcsvc-proto/rpcsvc-proto.bb
@@ -27,13 +27,13 @@
 
 inherit autotools gettext
 
-EXTRA_OEMAKE_class-native = " -C rpcgen"
+EXTRA_OEMAKE:class-native = " -C rpcgen"
 
-do_configure_prepend() {
+do_configure:prepend() {
 	touch ${S}/ABOUT-NLS
 }
 
-do_install_append() {
+do_install:append() {
 	# They come from quota recipe
 	rm -rf ${D}${includedir}/rpcsvc/rquota.[hx]
 }
diff --git a/poky/meta/recipes-extended/screen/screen_4.8.0.bb b/poky/meta/recipes-extended/screen/screen_4.8.0.bb
index fe640c2..6d307d5 100644
--- a/poky/meta/recipes-extended/screen/screen_4.8.0.bb
+++ b/poky/meta/recipes-extended/screen/screen_4.8.0.bb
@@ -14,7 +14,7 @@
 
 DEPENDS = "ncurses virtual/crypt \
           ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}"
-RDEPENDS_${PN} = "base-files"
+RDEPENDS:${PN} = "base-files"
 
 SRC_URI = "${GNU_MIRROR}/screen/screen-${PV}.tar.gz \
            ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'file://screen.pam', '', d)} \
@@ -35,17 +35,17 @@
 EXTRA_OECONF = "--with-pty-mode=0620 --with-pty-group=5 --with-sys-screenrc=${sysconfdir}/screenrc \
                ${@bb.utils.contains('DISTRO_FEATURES', 'pam', '--enable-pam', '--disable-pam', d)}"
 
-do_install_append () {
+do_install:append () {
 	install -D -m 644 ${S}/etc/etcscreenrc ${D}/${sysconfdir}/screenrc
 	if [ "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}" ]; then
 		install -D -m 644 ${WORKDIR}/screen.pam ${D}/${sysconfdir}/pam.d/screen
 	fi
 }
 
-pkg_postinst_${PN} () {
+pkg_postinst:${PN} () {
 	grep -q "^${bindir}/screen$" $D${sysconfdir}/shells || echo ${bindir}/screen >> $D${sysconfdir}/shells
 }
 
-pkg_postrm_${PN} () {
+pkg_postrm:${PN} () {
 	printf "$(grep -v "^${bindir}/screen$" $D${sysconfdir}/shells)\n" > $D${sysconfdir}/shells
 }
diff --git a/poky/meta/recipes-extended/sed/sed_4.8.bb b/poky/meta/recipes-extended/sed/sed_4.8.bb
index 57a769e..1f68214 100644
--- a/poky/meta/recipes-extended/sed/sed_4.8.bb
+++ b/poky/meta/recipes-extended/sed/sed_4.8.bb
@@ -18,8 +18,8 @@
 
 PACKAGECONFIG[selinux] = "--with-selinux,--without-selinux,libselinux"
 
-RDEPENDS_${PN}-ptest += "make gawk perl perl-module-filehandle perl-module-file-compare perl-module-file-find perl-module-file-temp perl-module-file-stat"
-RRECOMMENDS_${PN}-ptest_append_libc-glibc = " locale-base-ru-ru locale-base-en-us locale-base-el-gr.iso-8859-7"
+RDEPENDS:${PN}-ptest += "make gawk perl perl-module-filehandle perl-module-file-compare perl-module-file-find perl-module-file-temp perl-module-file-stat"
+RRECOMMENDS:${PN}-ptest:append:libc-glibc = " locale-base-ru-ru locale-base-en-us locale-base-el-gr.iso-8859-7"
 
 EXTRA_OECONF = "--disable-acl \
                "
@@ -33,7 +33,7 @@
 	fi
 }
 
-ALTERNATIVE_${PN} = "sed"
+ALTERNATIVE:${PN} = "sed"
 ALTERNATIVE_LINK_NAME[sed] = "${base_bindir}/sed"
 ALTERNATIVE_PRIORITY = "100"
 
@@ -63,6 +63,6 @@
 	    -i ${D}${PTEST_PATH}/Makefile
 }
 
-RPROVIDES_${PN} += "${@bb.utils.contains('DISTRO_FEATURES', 'usrmerge', '/bin/sed', '', d)}"
+RPROVIDES:${PN} += "${@bb.utils.contains('DISTRO_FEATURES', 'usrmerge', '/bin/sed', '', d)}"
 
 BBCLASSEXTEND = "nativesdk"
diff --git a/poky/meta/recipes-extended/shadow/files/0001-Disable-use-of-syslog-for-sysroot.patch b/poky/meta/recipes-extended/shadow/files/0001-Disable-use-of-syslog-for-sysroot.patch
index ab317b9..95728bc 100644
--- a/poky/meta/recipes-extended/shadow/files/0001-Disable-use-of-syslog-for-sysroot.patch
+++ b/poky/meta/recipes-extended/shadow/files/0001-Disable-use-of-syslog-for-sysroot.patch
@@ -1,4 +1,4 @@
-From fa2d9453656641002802d8165e80adb9e6a729d2 Mon Sep 17 00:00:00 2001
+From 30a3906a0a21120fa6bbc918b6258ab9303fbeaa Mon Sep 17 00:00:00 2001
 From: Scott Garman <scott.a.garman@intel.com>
 Date: Thu, 14 Apr 2016 12:28:57 +0200
 Subject: [PATCH] Disable use of syslog for sysroot
@@ -19,12 +19,12 @@
  src/groupmems.c | 3 +++
  src/groupmod.c  | 3 +++
  src/useradd.c   | 3 +++
- src/userdel.c   | 3 +++
+ src/userdel.c   | 4 ++++
  src/usermod.c   | 3 +++
- 7 files changed, 21 insertions(+)
+ 7 files changed, 22 insertions(+)
 
 diff --git a/src/groupadd.c b/src/groupadd.c
-index 2dd8eec..e9c4bb7 100644
+index d7f68b1..5fe5f43 100644
 --- a/src/groupadd.c
 +++ b/src/groupadd.c
 @@ -34,6 +34,9 @@
@@ -38,7 +38,7 @@
  #include <fcntl.h>
  #include <getopt.h>
 diff --git a/src/groupdel.c b/src/groupdel.c
-index f941a84..5a70056 100644
+index 5c89312..2aefc5a 100644
 --- a/src/groupdel.c
 +++ b/src/groupdel.c
 @@ -34,6 +34,9 @@
@@ -52,7 +52,7 @@
  #include <fcntl.h>
  #include <grp.h>
 diff --git a/src/groupmems.c b/src/groupmems.c
-index fc91c8b..2842514 100644
+index 654a8f3..6b2026b 100644
 --- a/src/groupmems.c
 +++ b/src/groupmems.c
 @@ -32,6 +32,9 @@
@@ -66,7 +66,7 @@
  #include <getopt.h>
  #include <grp.h>
 diff --git a/src/groupmod.c b/src/groupmod.c
-index 1dca5fc..bc14438 100644
+index acd6f35..a2c5247 100644
 --- a/src/groupmod.c
 +++ b/src/groupmod.c
 @@ -34,6 +34,9 @@
@@ -80,7 +80,7 @@
  #include <fcntl.h>
  #include <getopt.h>
 diff --git a/src/useradd.c b/src/useradd.c
-index 4af0f7c..1b7bf06 100644
+index 127177e..b80e505 100644
 --- a/src/useradd.c
 +++ b/src/useradd.c
 @@ -34,6 +34,9 @@
@@ -94,21 +94,22 @@
  #include <ctype.h>
  #include <errno.h>
 diff --git a/src/userdel.c b/src/userdel.c
-index cc951e5..153e0be 100644
+index 79a7c89..c1e010a 100644
 --- a/src/userdel.c
 +++ b/src/userdel.c
-@@ -34,6 +34,9 @@
+@@ -31,6 +31,10 @@
+  */
  
- #ident "$Id$"
- 
+ #include <config.h>
++
 +/* Disable use of syslog since we're running this command against a sysroot */
 +#undef USE_SYSLOG
 +
  #include <assert.h>
+ #include <dirent.h>
  #include <errno.h>
- #include <fcntl.h>
 diff --git a/src/usermod.c b/src/usermod.c
-index 05b9871..21c6da9 100644
+index 03bb9b9..e15fdd4 100644
 --- a/src/usermod.c
 +++ b/src/usermod.c
 @@ -34,6 +34,9 @@
diff --git a/poky/meta/recipes-extended/shadow/files/0001-Fix-out-of-tree-builds-with-respect-to-libsubid-incl.patch b/poky/meta/recipes-extended/shadow/files/0001-Fix-out-of-tree-builds-with-respect-to-libsubid-incl.patch
new file mode 100644
index 0000000..c577be6
--- /dev/null
+++ b/poky/meta/recipes-extended/shadow/files/0001-Fix-out-of-tree-builds-with-respect-to-libsubid-incl.patch
@@ -0,0 +1,114 @@
+From eced8077b57946fe0b723e7c6c510e8f344ce89b Mon Sep 17 00:00:00 2001
+From: Serge Hallyn <serge@hallyn.com>
+Date: Fri, 23 Jul 2021 17:51:13 -0500
+Subject: [PATCH] Fix out of tree builds with respect to libsubid includes
+
+There's a better way to do this, and I hope to clean that up,
+but this fixes out of tree builds for me right now.
+
+Closes #386
+
+Signed-off-by: Serge Hallyn <serge@hallyn.com>
+Upstream-Status: Backport [https://github.com/shadow-maint/shadow/commit/537b8cd90be7b47b45c45cfd27765ef85eb0ebf1]
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+---
+ lib/Makefile.am      | 2 ++
+ libmisc/Makefile.am  | 2 +-
+ libsubid/Makefile.am | 4 ++--
+ src/Makefile.am      | 6 ++++++
+ 4 files changed, 11 insertions(+), 3 deletions(-)
+
+diff --git a/lib/Makefile.am b/lib/Makefile.am
+index ecf3ee25..5ac2e111 100644
+--- a/lib/Makefile.am
++++ b/lib/Makefile.am
+@@ -10,6 +10,8 @@ if HAVE_VENDORDIR
+ libshadow_la_CPPFLAGS += -DVENDORDIR=\"$(VENDORDIR)\"
+ endif
+ 
++libshadow_la_CPPFLAGS += -I$(top_srcdir)
++
+ libshadow_la_SOURCES = \
+ 	commonio.c \
+ 	commonio.h \
+diff --git a/libmisc/Makefile.am b/libmisc/Makefile.am
+index 9766a7ec..9f237e0d 100644
+--- a/libmisc/Makefile.am
++++ b/libmisc/Makefile.am
+@@ -1,7 +1,7 @@
+ 
+ EXTRA_DIST = .indent.pro xgetXXbyYY.c
+ 
+-AM_CPPFLAGS = -I$(top_srcdir)/lib $(ECONF_CPPFLAGS)
++AM_CPPFLAGS = -I$(top_srcdir)/lib -I$(top_srcdir) $(ECONF_CPPFLAGS)
+ 
+ noinst_LTLIBRARIES = libmisc.la
+ 
+diff --git a/libsubid/Makefile.am b/libsubid/Makefile.am
+index 189165b0..cdc41fe6 100644
+--- a/libsubid/Makefile.am
++++ b/libsubid/Makefile.am
+@@ -19,8 +19,8 @@ MISCLIBS = \
+ 	$(LIBTCB)
+ 
+ libsubid_la_LIBADD = \
+-	$(top_srcdir)/lib/libshadow.la \
+-	$(top_srcdir)/libmisc/libmisc.la \
++	$(top_builddir)/lib/libshadow.la \
++	$(top_builddir)/libmisc/libmisc.la \
+ 	$(MISCLIBS) -ldl
+ 
+ AM_CPPFLAGS = \
+diff --git a/src/Makefile.am b/src/Makefile.am
+index 35027013..7c1a3491 100644
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -10,6 +10,7 @@ sgidperms = 2755
+ AM_CPPFLAGS = \
+ 	-I${top_srcdir}/lib \
+ 	-I$(top_srcdir)/libmisc \
++	-I$(top_srcdir) \
+ 	-DLOCALEDIR=\"$(datadir)/locale\"
+ 
+ # XXX why are login and su in /bin anyway (other than for
+@@ -183,6 +184,7 @@ list_subid_ranges_LDADD = \
+ list_subid_ranges_CPPFLAGS = \
+ 	-I$(top_srcdir)/lib \
+ 	-I$(top_srcdir)/libmisc \
++	-I$(top_srcdir) \
+ 	-I$(top_srcdir)/libsubid
+ 
+ get_subid_owners_LDADD = \
+@@ -194,11 +196,13 @@ get_subid_owners_LDADD = \
+ get_subid_owners_CPPFLAGS = \
+ 	-I$(top_srcdir)/lib \
+ 	-I$(top_srcdir)/libmisc \
++	-I$(top_srcdir) \
+ 	-I$(top_srcdir)/libsubid
+ 
+ new_subid_range_CPPFLAGS = \
+ 	-I$(top_srcdir)/lib \
+ 	-I$(top_srcdir)/libmisc \
++	-I$(top_srcdir) \
+ 	-I$(top_srcdir)/libsubid
+ 
+ new_subid_range_LDADD = \
+@@ -210,6 +214,7 @@ new_subid_range_LDADD = \
+ free_subid_range_CPPFLAGS = \
+ 	-I$(top_srcdir)/lib \
+ 	-I$(top_srcdir)/libmisc \
++	-I$(top_srcdir) \
+ 	-I$(top_srcdir)/libsubid
+ 
+ free_subid_range_LDADD = \
+@@ -220,6 +225,7 @@ free_subid_range_LDADD = \
+ 
+ check_subid_range_CPPFLAGS = \
+ 	-I$(top_srcdir)/lib \
++	-I$(top_srcdir) \
+ 	-I$(top_srcdir)/libmisc
+ 
+ check_subid_range_LDADD = \
+-- 
+2.31.1
+
diff --git a/poky/meta/recipes-extended/shadow/files/0001-libsubid-link-to-PAM-libraries.patch b/poky/meta/recipes-extended/shadow/files/0001-libsubid-link-to-PAM-libraries.patch
new file mode 100644
index 0000000..ea7a99d
--- /dev/null
+++ b/poky/meta/recipes-extended/shadow/files/0001-libsubid-link-to-PAM-libraries.patch
@@ -0,0 +1,31 @@
+From 4f44617af3a0c59be267ac5fcc33586e3783f5e6 Mon Sep 17 00:00:00 2001
+From: Xi Ruoyao <xry111@mengyan1223.wang>
+Date: Fri, 23 Jul 2021 14:38:08 +0800
+Subject: [PATCH] libsubid: link to PAM libraries
+
+libsubid.so links to libmisc.a, which contains several routines referring to
+PAM functions.
+
+Upstream-Status: Backport [https://github.com/shadow-maint/shadow/commit/f4a84efb468b8be21be124700ce35159c444e9d6]
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+---
+ libsubid/Makefile.am | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/libsubid/Makefile.am b/libsubid/Makefile.am
+index cdc41fe6..99308c1f 100644
+--- a/libsubid/Makefile.am
++++ b/libsubid/Makefile.am
+@@ -16,7 +16,8 @@ MISCLIBS = \
+ 	$(LIBCRYPT) \
+ 	$(LIBACL) \
+ 	$(LIBATTR) \
+-	$(LIBTCB)
++	$(LIBTCB) \
++	$(LIBPAM)
+ 
+ libsubid_la_LIBADD = \
+ 	$(top_builddir)/lib/libshadow.la \
+-- 
+2.31.1
+
diff --git a/poky/meta/recipes-extended/shadow/files/0002-Allow-for-setting-password-in-clear-text.patch b/poky/meta/recipes-extended/shadow/files/0002-Allow-for-setting-password-in-clear-text.patch
deleted file mode 100644
index c6332e4..0000000
--- a/poky/meta/recipes-extended/shadow/files/0002-Allow-for-setting-password-in-clear-text.patch
+++ /dev/null
@@ -1,301 +0,0 @@
-From a7d995228491ad5255ad86c1f04ba071f6880897 Mon Sep 17 00:00:00 2001
-From: Chen Qi <Qi.Chen@windriver.com>
-Date: Sat, 16 Nov 2013 15:27:47 +0800
-Subject: [PATCH] Allow for setting password in clear text
-
-Upstream-Status: Inappropriate [OE specific]
-
-Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
-
----
- src/Makefile.am |  8 ++++----
- src/groupadd.c  | 20 +++++++++++++++-----
- src/groupmod.c  | 20 +++++++++++++++-----
- src/useradd.c   | 21 +++++++++++++++------
- src/usermod.c   | 20 +++++++++++++++-----
- 5 files changed, 64 insertions(+), 25 deletions(-)
-
-diff --git a/src/Makefile.am b/src/Makefile.am
-index f31fd7a..4a317a3 100644
---- a/src/Makefile.am
-+++ b/src/Makefile.am
-@@ -103,10 +103,10 @@ chsh_LDADD     = $(LDADD) $(LIBPAM) $(LIBAUDIT) $(LIBSELINUX) $(LIBCRYPT_NOPAM)
- chpasswd_LDADD = $(LDADD) $(LIBPAM) $(LIBAUDIT) $(LIBSELINUX) $(LIBCRYPT) $(LIBECONF)
- expiry_LDADD = $(LDADD) $(LIBECONF)
- gpasswd_LDADD  = $(LDADD) $(LIBAUDIT) $(LIBSELINUX) $(LIBCRYPT) $(LIBECONF)
--groupadd_LDADD = $(LDADD) $(LIBPAM_SUID) $(LIBAUDIT) $(LIBSELINUX) $(LIBECONF)
-+groupadd_LDADD = $(LDADD) $(LIBPAM_SUID) $(LIBAUDIT) $(LIBSELINUX) $(LIBECONF) $(LIBCRYPT)
- groupdel_LDADD = $(LDADD) $(LIBPAM_SUID) $(LIBAUDIT) $(LIBSELINUX) $(LIBECONF)
- groupmems_LDADD = $(LDADD) $(LIBPAM) $(LIBAUDIT) $(LIBSELINUX) $(LIBECONF)
--groupmod_LDADD = $(LDADD) $(LIBPAM_SUID) $(LIBAUDIT) $(LIBSELINUX) $(LIBECONF)
-+groupmod_LDADD = $(LDADD) $(LIBPAM_SUID) $(LIBAUDIT) $(LIBSELINUX) $(LIBECONF) $(LIBCRYPT)
- grpck_LDADD    = $(LDADD) $(LIBAUDIT) $(LIBSELINUX) $(LIBECONF)
- grpconv_LDADD  = $(LDADD) $(LIBAUDIT) $(LIBSELINUX) $(LIBECONF)
- grpunconv_LDADD = $(LDADD) $(LIBAUDIT) $(LIBSELINUX) $(LIBECONF)
-@@ -127,9 +127,9 @@ su_SOURCES     = \
- 	suauth.c
- su_LDADD       = $(LDADD) $(LIBPAM) $(LIBAUDIT) $(LIBCRYPT_NOPAM) $(LIBSKEY) $(LIBMD) $(LIBECONF)
- sulogin_LDADD  = $(LDADD) $(LIBCRYPT) $(LIBECONF)
--useradd_LDADD  = $(LDADD) $(LIBPAM_SUID) $(LIBAUDIT) $(LIBSELINUX) $(LIBSEMANAGE) $(LIBACL) $(LIBATTR) $(LIBECONF)
-+useradd_LDADD  = $(LDADD) $(LIBPAM_SUID) $(LIBAUDIT) $(LIBSELINUX) $(LIBSEMANAGE) $(LIBACL) $(LIBATTR) $(LIBECONF) $(LIBCRYPT)
- userdel_LDADD  = $(LDADD) $(LIBPAM_SUID) $(LIBAUDIT) $(LIBSELINUX) $(LIBSEMANAGE) $(LIBECONF)
--usermod_LDADD  = $(LDADD) $(LIBPAM_SUID) $(LIBAUDIT) $(LIBSELINUX) $(LIBSEMANAGE) $(LIBACL) $(LIBATTR) $(LIBECONF)
-+usermod_LDADD  = $(LDADD) $(LIBPAM_SUID) $(LIBAUDIT) $(LIBSELINUX) $(LIBSEMANAGE) $(LIBACL) $(LIBATTR) $(LIBECONF) $(LIBCRYPT)
- vipw_LDADD     = $(LDADD) $(LIBAUDIT) $(LIBSELINUX) $(LIBECONF)
- 
- install-am: all-am
-diff --git a/src/groupadd.c b/src/groupadd.c
-index e9c4bb7..d572c00 100644
---- a/src/groupadd.c
-+++ b/src/groupadd.c
-@@ -127,9 +127,10 @@ static /*@noreturn@*/void usage (int status)
- 	(void) fputs (_("  -o, --non-unique              allow to create groups with duplicate\n"
- 	                "                                (non-unique) GID\n"), usageout);
- 	(void) fputs (_("  -p, --password PASSWORD       use this encrypted password for the new group\n"), usageout);
-+	(void) fputs (_("  -P, --clear-password PASSWORD use this clear password for the new group\n"), usageout);
- 	(void) fputs (_("  -r, --system                  create a system account\n"), usageout);
- 	(void) fputs (_("  -R, --root CHROOT_DIR         directory to chroot into\n"), usageout);
--	(void) fputs (_("  -P, --prefix PREFIX_DIR       directory prefix\n"), usageout);
-+	(void) fputs (_("  -A, --prefix PREFIX_DIR       directory prefix\n"), usageout);
- 	(void) fputs ("\n", usageout);
- 	exit (status);
- }
-@@ -391,13 +392,14 @@ static void process_flags (int argc, char **argv)
- 		{"key",        required_argument, NULL, 'K'},
- 		{"non-unique", no_argument,       NULL, 'o'},
- 		{"password",   required_argument, NULL, 'p'},
-+		{"clear-password", required_argument, NULL, 'P'},
- 		{"system",     no_argument,       NULL, 'r'},
- 		{"root",       required_argument, NULL, 'R'},
--		{"prefix",     required_argument, NULL, 'P'},
-+		{"prefix",     required_argument, NULL, 'A'},
- 		{NULL, 0, NULL, '\0'}
- 	};
- 
--	while ((c = getopt_long (argc, argv, "fg:hK:op:rR:P:",
-+	while ((c = getopt_long (argc, argv, "fg:hK:op:P:rR:A:",
- 		                 long_options, NULL)) != -1) {
- 		switch (c) {
- 		case 'f':
-@@ -449,12 +451,20 @@ static void process_flags (int argc, char **argv)
- 			pflg = true;
- 			group_passwd = optarg;
- 			break;
-+		case 'P':
-+			pflg = true;
-+			group_passwd = pw_encrypt (optarg, crypt_make_salt (NULL, NULL));
-+			break;
- 		case 'r':
- 			rflg = true;
- 			break;
- 		case 'R': /* no-op, handled in process_root_flag () */
- 			break;
--		case 'P': /* no-op, handled in process_prefix_flag () */
-+		case 'A': /* no-op, handled in process_prefix_flag () */
-+			fprintf (stderr,
-+				 _("%s: -A is deliberately not supported \n"),
-+				 Prog);
-+			exit (E_BAD_ARG);
- 			break;
- 		default:
- 			usage (E_USAGE);
-@@ -588,7 +598,7 @@ int main (int argc, char **argv)
- 	(void) textdomain (PACKAGE);
- 
- 	process_root_flag ("-R", argc, argv);
--	prefix = process_prefix_flag ("-P", argc, argv);
-+	prefix = process_prefix_flag ("-A", argc, argv);
- 
- 	OPENLOG ("groupadd");
- #ifdef WITH_AUDIT
-diff --git a/src/groupmod.c b/src/groupmod.c
-index bc14438..25ccb44 100644
---- a/src/groupmod.c
-+++ b/src/groupmod.c
-@@ -138,8 +138,9 @@ static void usage (int status)
- 	(void) fputs (_("  -o, --non-unique              allow to use a duplicate (non-unique) GID\n"), usageout);
- 	(void) fputs (_("  -p, --password PASSWORD       change the password to this (encrypted)\n"
- 	                "                                PASSWORD\n"), usageout);
-+	(void) fputs (_("  -P, --clear-password PASSWORD change the password to this clear PASSWORD\n"), usageout);
- 	(void) fputs (_("  -R, --root CHROOT_DIR         directory to chroot into\n"), usageout);
--	(void) fputs (_("  -P, --prefix PREFIX_DIR       prefix directory where are located the /etc/* files\n"), usageout);
-+	(void) fputs (_("  -A, --prefix PREFIX_DIR       prefix directory where are located the /etc/* files\n"), usageout);
- 	(void) fputs ("\n", usageout);
- 	exit (status);
- }
-@@ -387,11 +388,12 @@ static void process_flags (int argc, char **argv)
- 		{"new-name",   required_argument, NULL, 'n'},
- 		{"non-unique", no_argument,       NULL, 'o'},
- 		{"password",   required_argument, NULL, 'p'},
-+		{"clear-password", required_argument, NULL, 'P'},
- 		{"root",       required_argument, NULL, 'R'},
--		{"prefix",     required_argument, NULL, 'P'},
-+		{"prefix",     required_argument, NULL, 'A'},
- 		{NULL, 0, NULL, '\0'}
- 	};
--	while ((c = getopt_long (argc, argv, "g:hn:op:R:P:",
-+	while ((c = getopt_long (argc, argv, "g:hn:op:P:R:A:",
- 		                 long_options, NULL)) != -1) {
- 		switch (c) {
- 		case 'g':
-@@ -418,9 +420,17 @@ static void process_flags (int argc, char **argv)
- 			group_passwd = optarg;
- 			pflg = true;
- 			break;
-+		case 'P':
-+			group_passwd = pw_encrypt (optarg, crypt_make_salt (NULL, NULL));
-+			pflg = true;
-+			break;
- 		case 'R': /* no-op, handled in process_root_flag () */
- 			break;
--		case 'P': /* no-op, handled in process_prefix_flag () */
-+		case 'A': /* no-op, handled in process_prefix_flag () */
-+			fprintf (stderr,
-+				 _("%s: -A is deliberately not supported \n"),
-+				 Prog);
-+			exit (E_BAD_ARG);
- 			break;
- 		default:
- 			usage (E_USAGE);
-@@ -761,7 +771,7 @@ int main (int argc, char **argv)
- 	(void) textdomain (PACKAGE);
- 
- 	process_root_flag ("-R", argc, argv);
--	prefix = process_prefix_flag ("-P", argc, argv);
-+	prefix = process_prefix_flag ("-A", argc, argv);
- 
- 	OPENLOG ("groupmod");
- #ifdef WITH_AUDIT
-diff --git a/src/useradd.c b/src/useradd.c
-index 1b7bf06..44f09e2 100644
---- a/src/useradd.c
-+++ b/src/useradd.c
-@@ -853,9 +853,10 @@ static void usage (int status)
- 	(void) fputs (_("  -o, --non-unique              allow to create users with duplicate\n"
- 	                "                                (non-unique) UID\n"), usageout);
- 	(void) fputs (_("  -p, --password PASSWORD       encrypted password of the new account\n"), usageout);
-+	(void) fputs (_("  -P, --clear-password PASSWORD clear password of the new account\n"), usageout);
- 	(void) fputs (_("  -r, --system                  create a system account\n"), usageout);
- 	(void) fputs (_("  -R, --root CHROOT_DIR         directory to chroot into\n"), usageout);
--	(void) fputs (_("  -P, --prefix PREFIX_DIR       prefix directory where are located the /etc/* files\n"), usageout);
-+	(void) fputs (_("  -A, --prefix PREFIX_DIR       prefix directory where are located the /etc/* files\n"), usageout);
- 	(void) fputs (_("  -s, --shell SHELL             login shell of the new account\n"), usageout);
- 	(void) fputs (_("  -u, --uid UID                 user ID of the new account\n"), usageout);
- 	(void) fputs (_("  -U, --user-group              create a group with the same name as the user\n"), usageout);
-@@ -1133,9 +1134,10 @@ static void process_flags (int argc, char **argv)
- 			{"no-user-group",  no_argument,       NULL, 'N'},
- 			{"non-unique",     no_argument,       NULL, 'o'},
- 			{"password",       required_argument, NULL, 'p'},
-+			{"clear-password", required_argument, NULL, 'P'},
- 			{"system",         no_argument,       NULL, 'r'},
- 			{"root",           required_argument, NULL, 'R'},
--			{"prefix",         required_argument, NULL, 'P'},
-+			{"prefix",         required_argument, NULL, 'A'},
- 			{"shell",          required_argument, NULL, 's'},
- 			{"uid",            required_argument, NULL, 'u'},
- 			{"user-group",     no_argument,       NULL, 'U'},
-@@ -1146,9 +1148,9 @@ static void process_flags (int argc, char **argv)
- 		};
- 		while ((c = getopt_long (argc, argv,
- #ifdef WITH_SELINUX
--		                         "b:c:d:De:f:g:G:hk:K:lmMNop:rR:P:s:u:UZ:",
-+		                         "b:c:d:De:f:g:G:hk:K:lmMNop:P:rR:A:s:u:UZ:",
- #else				/* !WITH_SELINUX */
--		                         "b:c:d:De:f:g:G:hk:K:lmMNop:rR:P:s:u:U",
-+		                         "b:c:d:De:f:g:G:hk:K:lmMNop:P:rR:A:s:u:U",
- #endif				/* !WITH_SELINUX */
- 		                         long_options, NULL)) != -1) {
- 			switch (c) {
-@@ -1320,12 +1322,19 @@ static void process_flags (int argc, char **argv)
- 				}
- 				user_pass = optarg;
- 				break;
-+			case 'P': /* set clear text password */
-+				user_pass = pw_encrypt (optarg, crypt_make_salt (NULL, NULL));
-+				break;
- 			case 'r':
- 				rflg = true;
- 				break;
- 			case 'R': /* no-op, handled in process_root_flag () */
- 				break;
--			case 'P': /* no-op, handled in process_prefix_flag () */
-+			case 'A': /* no-op, handled in process_prefix_flag () */
-+				fprintf (stderr,
-+					 _("%s: -A is deliberately not supported \n"),
-+					 Prog);
-+				exit (E_BAD_ARG);
- 				break;
- 			case 's':
- 				if (   ( !VALID (optarg) )
-@@ -2257,7 +2266,7 @@ int main (int argc, char **argv)
- 
- 	process_root_flag ("-R", argc, argv);
- 
--	prefix = process_prefix_flag("-P", argc, argv);
-+	prefix = process_prefix_flag("-A", argc, argv);
- 
- 	OPENLOG ("useradd");
- #ifdef WITH_AUDIT
-diff --git a/src/usermod.c b/src/usermod.c
-index 21c6da9..cffdb3e 100644
---- a/src/usermod.c
-+++ b/src/usermod.c
-@@ -431,8 +431,9 @@ static /*@noreturn@*/void usage (int status)
- 	                "                                new location (use only with -d)\n"), usageout);
- 	(void) fputs (_("  -o, --non-unique              allow using duplicate (non-unique) UID\n"), usageout);
- 	(void) fputs (_("  -p, --password PASSWORD       use encrypted password for the new password\n"), usageout);
-+	(void) fputs (_("  -P, --clear-password PASSWORD use clear password for the new password\n"), usageout);
- 	(void) fputs (_("  -R, --root CHROOT_DIR         directory to chroot into\n"), usageout);
--	(void) fputs (_("  -P, --prefix PREFIX_DIR       prefix directory where are located the /etc/* files\n"), usageout);
-+	(void) fputs (_("  -A, --prefix PREFIX_DIR       prefix directory where are located the /etc/* files\n"), usageout);
- 	(void) fputs (_("  -s, --shell SHELL             new login shell for the user account\n"), usageout);
- 	(void) fputs (_("  -u, --uid UID                 new UID for the user account\n"), usageout);
- 	(void) fputs (_("  -U, --unlock                  unlock the user account\n"), usageout);
-@@ -1010,8 +1011,9 @@ static void process_flags (int argc, char **argv)
- 			{"move-home",    no_argument,       NULL, 'm'},
- 			{"non-unique",   no_argument,       NULL, 'o'},
- 			{"password",     required_argument, NULL, 'p'},
-+			{"clear-password", required_argument, NULL, 'P'},
- 			{"root",         required_argument, NULL, 'R'},
--			{"prefix",       required_argument, NULL, 'P'},
-+			{"prefix",       required_argument, NULL, 'A'},
- 			{"shell",        required_argument, NULL, 's'},
- 			{"uid",          required_argument, NULL, 'u'},
- 			{"unlock",       no_argument,       NULL, 'U'},
-@@ -1027,7 +1029,7 @@ static void process_flags (int argc, char **argv)
- 			{NULL, 0, NULL, '\0'}
- 		};
- 		while ((c = getopt_long (argc, argv,
--		                         "abc:d:e:f:g:G:hl:Lmop:R:s:u:UP:"
-+		                         "abc:d:e:f:g:G:hl:Lmop:P:R:s:u:UA:"
- #ifdef ENABLE_SUBIDS
- 		                         "v:w:V:W:"
- #endif				/* ENABLE_SUBIDS */
-@@ -1130,9 +1132,17 @@ static void process_flags (int argc, char **argv)
- 				user_pass = optarg;
- 				pflg = true;
- 				break;
-+			case 'P':
-+				user_pass = pw_encrypt (optarg, crypt_make_salt (NULL, NULL));
-+				pflg = true;
-+				break;
- 			case 'R': /* no-op, handled in process_root_flag () */
- 				break;
--			case 'P': /* no-op, handled in process_prefix_flag () */
-+			case 'A': /* no-op, handled in process_prefix_flag () */
-+				fprintf (stderr,
-+					 _("%s: -A is deliberately not supported \n"),
-+					 Prog);
-+				exit (E_BAD_ARG);
- 				break;
- 			case 's':
- 				if (!VALID (optarg)) {
-@@ -2127,7 +2137,7 @@ int main (int argc, char **argv)
- 	(void) textdomain (PACKAGE);
- 
- 	process_root_flag ("-R", argc, argv);
--	prefix = process_prefix_flag ("-P", argc, argv);
-+	prefix = process_prefix_flag ("-A", argc, argv);
- 
- 	OPENLOG ("usermod");
- #ifdef WITH_AUDIT
diff --git a/poky/meta/recipes-extended/shadow/files/commonio.c-fix-unexpected-open-failure-in-chroot-env.patch b/poky/meta/recipes-extended/shadow/files/commonio.c-fix-unexpected-open-failure-in-chroot-env.patch
index 9825216..bd24626 100644
--- a/poky/meta/recipes-extended/shadow/files/commonio.c-fix-unexpected-open-failure-in-chroot-env.patch
+++ b/poky/meta/recipes-extended/shadow/files/commonio.c-fix-unexpected-open-failure-in-chroot-env.patch
@@ -1,4 +1,4 @@
-From 66533c7c6f347d257020675a1ed6e0c59cbbc3f0 Mon Sep 17 00:00:00 2001
+From 1422c24f7266b553c82100e3d18a10c55cd91063 Mon Sep 17 00:00:00 2001
 From: Chen Qi <Qi.Chen@windriver.com>
 Date: Thu, 17 Jul 2014 15:53:34 +0800
 Subject: [PATCH] commonio.c-fix-unexpected-open-failure-in-chroot-env
@@ -21,10 +21,10 @@
  1 file changed, 12 insertions(+), 4 deletions(-)
 
 diff --git a/lib/commonio.c b/lib/commonio.c
-index 16fa7e7..d6bc297 100644
+index cef404b..66908fb 100644
 --- a/lib/commonio.c
 +++ b/lib/commonio.c
-@@ -632,10 +632,18 @@ int commonio_open (struct commonio_db *db, int mode)
+@@ -646,10 +646,18 @@ int commonio_open (struct commonio_db *db, int mode)
  	db->cursor = NULL;
  	db->changed = false;
  
diff --git a/poky/meta/recipes-extended/shadow/shadow.inc b/poky/meta/recipes-extended/shadow/shadow.inc
index 2cbdfbc..2834509 100644
--- a/poky/meta/recipes-extended/shadow/shadow.inc
+++ b/poky/meta/recipes-extended/shadow/shadow.inc
@@ -10,28 +10,28 @@
 DEPENDS = "virtual/crypt"
 
 UPSTREAM_CHECK_URI = "https://github.com/shadow-maint/shadow/releases"
-SRC_URI = "https://github.com/shadow-maint/shadow/releases/download/${PV}/${BP}.tar.gz \
+SRC_URI = "https://github.com/shadow-maint/shadow/releases/download/v${PV}/${BP}.tar.gz \
            file://shadow-4.1.3-dots-in-usernames.patch \
            ${@bb.utils.contains('PACKAGECONFIG', 'pam', '${PAM_SRC_URI}', '', d)} \
            file://shadow-relaxed-usernames.patch \
+           file://0001-Fix-out-of-tree-builds-with-respect-to-libsubid-incl.patch \
+           file://0001-libsubid-link-to-PAM-libraries.patch \
            "
 
-SRC_URI_append_class-target = " \
+SRC_URI:append:class-target = " \
            file://login_defs_pam.sed \
            file://shadow-update-pam-conf.patch \
            "
 
-SRC_URI_append_class-native = " \
+SRC_URI:append:class-native = " \
            file://0001-Disable-use-of-syslog-for-sysroot.patch \
-           file://0002-Allow-for-setting-password-in-clear-text.patch \
            file://commonio.c-fix-unexpected-open-failure-in-chroot-env.patch \
            "
-SRC_URI_append_class-nativesdk = " \
+SRC_URI:append:class-nativesdk = " \
            file://0001-Disable-use-of-syslog-for-sysroot.patch \
            "
 
-SRC_URI[md5sum] = "3d97f11e66bfb0b14702b115fa8be480"
-SRC_URI[sha256sum] = "3ee3081fbbcbcfea5c8916419e46bc724807bab271072104f23e7a29e9668f3a"
+SRC_URI[sha256sum] = "6c4627ff9c9422b96664517ae753c944f2902e92809d0698b65f5fef11985212"
 
 # Additional Policy files for PAM
 PAM_SRC_URI = "file://pam.d/chfn \
@@ -55,9 +55,9 @@
                  ${NSCDOPT}"
 
 NSCDOPT = ""
-NSCDOPT_class-native = "--without-nscd"
-NSCDOPT_class-nativesdk = "--without-nscd"
-NSCDOPT_libc-glibc = "--with-nscd"
+NSCDOPT:class-native = "--without-nscd"
+NSCDOPT:class-nativesdk = "--without-nscd"
+NSCDOPT:libc-glibc = "--with-nscd"
 
 PAM_PLUGINS = "libpam-runtime \
                pam-plugin-faildelay \
@@ -72,21 +72,21 @@
                pam-plugin-shells \
                pam-plugin-rootok"
 
-PAM_PLUGINS_remove_libc-musl = "pam-plugin-lastlog"
+PAM_PLUGINS:remove:libc-musl = "pam-plugin-lastlog"
 
 PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)} \
                    ${@bb.utils.contains('DISTRO_FEATURES', 'xattr', 'attr', '', d)}"
-PACKAGECONFIG_class-native ??= "${@bb.utils.contains('DISTRO_FEATURES', 'xattr', 'attr', '', d)}"
-PACKAGECONFIG_class-nativesdk = ""
+PACKAGECONFIG:class-native ??= "${@bb.utils.contains('DISTRO_FEATURES', 'xattr', 'attr', '', d)}"
+PACKAGECONFIG:class-nativesdk = ""
 PACKAGECONFIG[pam] = "--with-libpam,--without-libpam,libpam,${PAM_PLUGINS}"
 PACKAGECONFIG[attr] = "--with-attr,--without-attr,attr"
 PACKAGECONFIG[acl] = "--with-acl,--without-acl,acl"
 
-RDEPENDS_${PN} = "shadow-securetty \
+RDEPENDS:${PN} = "shadow-securetty \
                   base-passwd \
                   util-linux-sulogin"
-RDEPENDS_${PN}_class-native = ""
-RDEPENDS_${PN}_class-nativesdk = ""
+RDEPENDS:${PN}:class-native = ""
+RDEPENDS:${PN}:class-nativesdk = ""
 
 do_install() {
 	oe_runmake DESTDIR="${D}" sbindir="${base_sbindir}" usbindir="${sbindir}" install
@@ -115,15 +115,9 @@
 	# Use proper encryption for passwords
 	sed -i 's/^#ENCRYPT_METHOD.*$/ENCRYPT_METHOD SHA512/' ${D}${sysconfdir}/login.defs
 
-	# Now we don't have a mail system. Disable mail creation for now.
-	sed -i 's:/bin/bash:/bin/sh:g' ${D}${sysconfdir}/default/useradd
-	sed -i '/^CREATE_MAIL_SPOOL/ s:^:#:' ${D}${sysconfdir}/default/useradd
-
-	# Use users group by default
-	sed -i 's,^GROUP=1000,GROUP=100,g' ${D}${sysconfdir}/default/useradd
 }
 
-do_install_append() {
+do_install:append() {
 	# Ensure that the image has as a /var/spool/mail dir so shadow can
 	# put mailboxes there if the user reconfigures shadow to its
 	# defaults (see sed below).
@@ -156,7 +150,7 @@
 }
 
 PACKAGES =+ "${PN}-base"
-FILES_${PN}-base = "\
+FILES:${PN}-base = "\
     ${base_bindir}/login.shadow \
     ${base_bindir}/su.shadow \
     ${bindir}/sg \
@@ -166,13 +160,13 @@
     ${sysconfdir}/pam.d/su \
     ${sysconfdir}/login.defs \
 "
-RDEPENDS_${PN} += "${PN}-base"
+RDEPENDS:${PN} += "${PN}-base"
 
 inherit update-alternatives
 
 ALTERNATIVE_PRIORITY = "200"
 
-ALTERNATIVE_${PN} = "passwd chfn chsh chpasswd vipw vigr nologin"
+ALTERNATIVE:${PN} = "passwd chfn chsh chpasswd vipw vigr nologin"
 ALTERNATIVE_LINK_NAME[chfn] = "${bindir}/chfn"
 ALTERNATIVE_LINK_NAME[chsh] = "${bindir}/chsh"
 ALTERNATIVE_LINK_NAME[chpasswd] = "${sbindir}/chpasswd"
@@ -180,19 +174,12 @@
 ALTERNATIVE_LINK_NAME[vigr] = "${base_sbindir}/vigr"
 ALTERNATIVE_LINK_NAME[nologin] = "${base_sbindir}/nologin"
 
-ALTERNATIVE_${PN}-base = "newgrp groups login su"
+ALTERNATIVE:${PN}-base = "newgrp groups login su"
 ALTERNATIVE_LINK_NAME[login] = "${base_bindir}/login"
 ALTERNATIVE_LINK_NAME[su] = "${base_bindir}/su"
 
-ALTERNATIVE_${PN}-doc = "passwd.5 getspnam.3 groups.1 su.1 nologin.8"
-ALTERNATIVE_LINK_NAME[passwd.5] = "${mandir}/man5/passwd.5"
-ALTERNATIVE_LINK_NAME[getspnam.3] = "${mandir}/man3/getspnam.3"
-ALTERNATIVE_LINK_NAME[groups.1] = "${mandir}/man1/groups.1"
-ALTERNATIVE_LINK_NAME[su.1] = "${mandir}/man1/su.1"
-ALTERNATIVE_LINK_NAME[nologin.8] = "${mandir}/man8/nologin.8"
-
 PACKAGE_WRITE_DEPS += "shadow-native"
-pkg_postinst_${PN}_class-target () {
+pkg_postinst:${PN}:class-target () {
 	if [ "x$D" != "x" ]; then
 	  rootarg="--root $D"
 	else
diff --git a/poky/meta/recipes-extended/shadow/shadow_4.8.1.bb b/poky/meta/recipes-extended/shadow/shadow_4.9.bb
similarity index 84%
rename from poky/meta/recipes-extended/shadow/shadow_4.8.1.bb
rename to poky/meta/recipes-extended/shadow/shadow_4.9.bb
index ff4aad9..2fbd81b 100644
--- a/poky/meta/recipes-extended/shadow/shadow_4.8.1.bb
+++ b/poky/meta/recipes-extended/shadow/shadow_4.9.bb
@@ -2,7 +2,7 @@
 
 # Build falsely assumes that if --enable-libpam is set, we don't need to link against
 # libcrypt. This breaks chsh.
-BUILD_LDFLAGS_append_class-target = " ${@bb.utils.contains('DISTRO_FEATURES', 'pam', '-lcrypt', '', d)}"
+BUILD_LDFLAGS:append:class-target = " ${@bb.utils.contains('DISTRO_FEATURES', 'pam', '-lcrypt', '', d)}"
 
 BBCLASSEXTEND = "native nativesdk"
 
diff --git a/poky/meta/recipes-extended/slang/slang_2.3.2.bb b/poky/meta/recipes-extended/slang/slang_2.3.2.bb
index 99efb16..81d152f 100644
--- a/poky/meta/recipes-extended/slang/slang_2.3.2.bb
+++ b/poky/meta/recipes-extended/slang/slang_2.3.2.bb
@@ -27,7 +27,7 @@
 SRC_URI[sha256sum] = "fc9e3b0fc4f67c3c1f6d43c90c16a5c42d117b8e28457c5b46831b8b5d3ae31a"
 
 UPSTREAM_CHECK_URI = "http://www.jedsoft.org/releases/slang/"
-PREMIRRORS_append = "\n http://www.jedsoft.org/releases/slang/.* http://www.jedsoft.org/releases/slang/old/ \n"
+PREMIRRORS:append = "\n http://www.jedsoft.org/releases/slang/.* http://www.jedsoft.org/releases/slang/old/ \n"
 
 inherit autotools-brokensep ptest
 CLEANBROKEN = "1"
@@ -42,7 +42,7 @@
 PACKAGECONFIG[png] = "--with-png=${STAGING_DIR_HOST}${prefix},--without-png,libpng"
 PACKAGECONFIG[zlib] = "--with-z=${STAGING_DIR_HOST}${prefix},--without-z,zlib"
 
-do_configure_prepend() {
+do_configure:prepend() {
     cd ${S}/autoconf
     # slang keeps configure.ac and rest of autoconf files in autoconf/ directory
     # we have to go there to be able to run gnu-configize cause it expects configure.{in,ac}
@@ -74,9 +74,9 @@
 	sed -i 's/\.\.\/\.\.\/doc\/text\/slangfun\.txt/slangfun\.txt/' ${D}${PTEST_PATH}/test/docfun.sl
 }
 
-FILES_${PN} += "${libdir}/${BPN}/v2/modules/ ${datadir}/slsh/"
+FILES:${PN} += "${libdir}/${BPN}/v2/modules/ ${datadir}/slsh/"
 
-RDEPENDS_${PN}-ptest += "make"
+RDEPENDS:${PN}-ptest += "make"
 
 PARALLEL_MAKE = ""
 PARALLEL_MAKEINST = ""
diff --git a/poky/meta/recipes-extended/stress-ng/stress-ng/0001-Detemine-minimal-stack-size-via-sysconf-then-PTHREAD.patch b/poky/meta/recipes-extended/stress-ng/stress-ng/0001-Detemine-minimal-stack-size-via-sysconf-then-PTHREAD.patch
new file mode 100644
index 0000000..d275e3d
--- /dev/null
+++ b/poky/meta/recipes-extended/stress-ng/stress-ng/0001-Detemine-minimal-stack-size-via-sysconf-then-PTHREAD.patch
@@ -0,0 +1,103 @@
+From f839de283c44ffe46a2d14bfdf854c145abd8ed6 Mon Sep 17 00:00:00 2001
+From: Colin Ian King <colin.king@canonical.com>
+Date: Mon, 19 Jul 2021 20:49:34 +0100
+Subject: [PATCH] Detemine minimal stack size via sysconf, then PTHREAD_STACK_MIN then guess
+
+Don't rely on PTHREAD_STACK_MIN being defined, use sysconf, then
+PTHREAD_STACK_MIN if it is defined, then 8K default.
+
+Upstream-Status: Backport [https://kernel.ubuntu.com/git/cking/stress-ng.git/commit/?id=f839de283c44ffe46a2d14bfdf854c145abd8ed6]
+Signed-off-by: Colin Ian King <colin.king@canonical.com>
+---
+ core-helper.c    | 31 +++++++++++++++++++++++++++++++
+ stress-ng.h      |  1 +
+ stress-pthread.c | 13 ++-----------
+ 3 files changed, 34 insertions(+), 11 deletions(-)
+
+diff --git a/core-helper.c b/core-helper.c
+index 508627f2..97a3b869 100644
+--- a/core-helper.c
++++ b/core-helper.c
+@@ -2494,6 +2494,37 @@ size_t stress_min_sig_stack_size(void)
+ 	return (size_t)sz;
+ }
+
++size_t stress_min_pthread_stack_size(void)
++{
++	static long sz = -1, min;
++
++	/* return cached copy */
++	if (sz > 0)
++		return sz;
++
++	min = stress_min_aux_sig_stack_size();
++#if defined(__SC_THREAD_STACK_MIN_VALUE)
++	sz = sysconf(__SC_THREAD_STACK_MIN_VALUE);
++	if (sz > min)
++		min = sz;
++#endif
++#if defined(_SC_THREAD_STACK_MIN_VALUE)
++	sz = sysconf(_SC_THREAD_STACK_MIN_VALUE);
++	if (sz > min)
++		min = sz;
++#endif
++#if defined(PTHREAD_STACK_MIN)
++	if (PTHREAD_STACK_MIN > min)
++		min = PTHREAD_STACK_MIN;
++#endif
++	if (8192 > min)
++		min = 8192;
++
++	sz = min;
++
++	return (size_t)sz;
++}
++
+ /*
+  *  stress_sig_handler_exit()
+  *	signal handler that exits a process via _exit(0) for
+diff --git a/stress-ng.h b/stress-ng.h
+index 8a8b17ae..cd744756 100644
+--- a/stress-ng.h
++++ b/stress-ng.h
+@@ -4056,6 +4056,7 @@ extern WARN_UNUSED int32_t  stress_get_opt_ionice_class(const char *const str);
+ /* Misc helper funcs */
+ extern WARN_UNUSED size_t stress_sig_stack_size(void);
+ extern WARN_UNUSED size_t stress_min_sig_stack_size(void);
++extern WARN_UNUSED size_t stress_min_pthread_stack_size(void);
+
+ #define STRESS_SIGSTKSZ		(stress_sig_stack_size())
+ #define STRESS_MINSIGSTKSZ	(stress_min_sig_stack_size())
+diff --git a/stress-pthread.c b/stress-pthread.c
+index 0da3aeec..27777af8 100644
+--- a/stress-pthread.c
++++ b/stress-pthread.c
+@@ -69,12 +69,7 @@ static const stress_opt_set_func_t opt_set_funcs[] = {
+
+ #if defined(HAVE_LIB_PTHREAD)
+
+-/* Some systems such as GNU/HURD don't define PTHREAD_STACK_MIN */
+-#if !defined(PTHREAD_STACK_MIN)
+-#define PTHREAD_STACK_MIN		(16 * KB)
+-#endif
+-
+-#define DEFAULT_STACK_MIN		(16 * KB)
++#define DEFAULT_STACK_MIN		(8 * KB)
+
+ #if defined(HAVE_GET_ROBUST_LIST) &&	\
+     defined(HAVE_LINUX_FUTEX_H)
+@@ -404,11 +399,7 @@ static int stress_pthread(const stress_args_t *args)
+ 	stress_pthread_args_t pargs = { args, NULL, 0 };
+ 	sigset_t set;
+ #if defined(HAVE_PTHREAD_ATTR_SETSTACK)
+-#if DEFAULT_STACK_MIN == PTHREAD_STACK_MIN
+-	const size_t stack_size = PTHREAD_STACK_MIN;
+-#else
+-	const size_t stack_size = STRESS_MAXIMUM(DEFAULT_STACK_MIN, PTHREAD_STACK_MIN);
+-#endif
++	const size_t stack_size = STRESS_MAXIMUM(DEFAULT_STACK_MIN, stress_min_pthread_stack_size());
+ #endif
+
+ 	keep_running_flag = true;
+--
+2.32.0
diff --git a/poky/meta/recipes-extended/stress-ng/stress-ng/no_daddr_t.patch b/poky/meta/recipes-extended/stress-ng/stress-ng/no_daddr_t.patch
deleted file mode 100644
index dba4494..0000000
--- a/poky/meta/recipes-extended/stress-ng/stress-ng/no_daddr_t.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 55e11765af2bdc8adfac87dab1fb2682f7e6c236 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Tue, 9 Jun 2020 22:10:28 -0700
-Subject: [PATCH] Define daddr_t if __DADDR_T_TYPE is not defined
-
-glibc defined daddr_t but musl does not, ideally it should not be used
-and simple int type is enough. However, its better to leave glibc behavior
-as it is and only define it to int if daddr_t is not provided by libc
-
-Upstream-Status: Pending
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
----
- stress-ng.h | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/stress-ng.h b/stress-ng.h
-index 1a66293..802dc25 100644
---- a/stress-ng.h
-+++ b/stress-ng.h
-@@ -3763,6 +3763,10 @@ struct shim_statx {
- 	uint64_t __spare2[14];
- };
- 
-+#ifndef __DADDR_T_TYPE
-+typedef int daddr_t;
-+#endif
-+
- /* old ustat struct */
- struct shim_ustat {
- #if defined(HAVE_DADDR_T)
diff --git a/poky/meta/recipes-extended/stress-ng/stress-ng_0.12.12.bb b/poky/meta/recipes-extended/stress-ng/stress-ng_0.12.12.bb
index 97eaa75..afc9ddf 100644
--- a/poky/meta/recipes-extended/stress-ng/stress-ng_0.12.12.bb
+++ b/poky/meta/recipes-extended/stress-ng/stress-ng_0.12.12.bb
@@ -7,16 +7,16 @@
 
 SRC_URI = "https://kernel.ubuntu.com/~cking/tarballs/${BPN}/${BP}.tar.xz \
            file://0001-Do-not-preserve-ownership-when-installing-example-jo.patch \
-           file://no_daddr_t.patch \
+           file://0001-Detemine-minimal-stack-size-via-sysconf-then-PTHREAD.patch \
            "
 SRC_URI[sha256sum] = "f27af50f6f2308e707fef927674bdd209a046b116734281b792aeca35a4e4499"
 
 DEPENDS = "coreutils-native"
 
 PROVIDES = "stress"
-RPROVIDES_${PN} = "stress"
-RREPLACES_${PN} = "stress"
-RCONFLICTS_${PN} = "stress"
+RPROVIDES:${PN} = "stress"
+RREPLACES:${PN} = "stress"
+RCONFLICTS:${PN} = "stress"
 
 inherit bash-completion
 
@@ -24,4 +24,3 @@
     oe_runmake DESTDIR=${D} install
     ln -s stress-ng ${D}${bindir}/stress
 }
-
diff --git a/poky/meta/recipes-extended/sudo/sudo.inc b/poky/meta/recipes-extended/sudo/sudo.inc
index 0bea35a..f109672 100644
--- a/poky/meta/recipes-extended/sudo/sudo.inc
+++ b/poky/meta/recipes-extended/sudo/sudo.inc
@@ -24,14 +24,14 @@
 PACKAGECONFIG[zlib] = "--enable-zlib,--disable-zlib,zlib"
 PACKAGECONFIG[pam-wheel] = ",,,pam-plugin-wheel"
 
-CONFFILES_${PN} = "${sysconfdir}/sudoers"
+CONFFILES:${PN} = "${sysconfdir}/sudoers"
 
 EXTRA_OECONF = "--with-editor=${base_bindir}/vi --with-env-editor"
 
-EXTRA_OECONF_append_libc-musl = " --disable-hardening "
+EXTRA_OECONF:append:libc-musl = " --disable-hardening "
 
 # mksigname/mksiglist are used on build host to generate source files
-do_compile_prepend () {
+do_compile:prepend () {
 	# Remove build host references from sudo_usage.h
 	sed -i  \
 	    -e 's,--with-libtool-sysroot=${STAGING_DIR_TARGET},,g' \
@@ -46,7 +46,7 @@
 # script (from sudo) will recursively create ${localstatedir}/lib/sudo
 # and then chmod each directory with 0700 permissions, which isn't what
 # we want (i.e, users would not be able to access /var/lib).
-do_install_prepend (){
+do_install:prepend (){
 	mkdir -p ${D}/${localstatedir}/lib
 }
 
diff --git a/poky/meta/recipes-extended/sudo/sudo_1.9.7p1.bb b/poky/meta/recipes-extended/sudo/sudo_1.9.7p1.bb
index aba6f4a..8d47c01 100644
--- a/poky/meta/recipes-extended/sudo/sudo_1.9.7p1.bb
+++ b/poky/meta/recipes-extended/sudo/sudo_1.9.7p1.bb
@@ -10,7 +10,7 @@
 SRC_URI[sha256sum] = "391431f454e55121b60c6ded0fcf30ddb80d623d7d16a6d1907cfa6a0b91d8cf"
 
 DEPENDS += " virtual/crypt ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}"
-RDEPENDS_${PN} += " ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'pam-plugin-limits pam-plugin-keyinit', '', d)}"
+RDEPENDS:${PN} += " ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'pam-plugin-limits pam-plugin-keyinit', '', d)}"
 
 CACHED_CONFIGUREVARS = " \
         ac_cv_type_rsize_t=no \
@@ -28,7 +28,7 @@
              --libexecdir=${libdir} \
              "
 
-do_install_append () {
+do_install:append () {
 	if [ "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}" ]; then
 		install -D -m 644 ${WORKDIR}/sudo.pam ${D}/${sysconfdir}/pam.d/sudo
 		if ${@bb.utils.contains('PACKAGECONFIG', 'pam-wheel', 'true', 'false', d)} ; then
@@ -44,7 +44,7 @@
 	rmdir -p --ignore-fail-on-non-empty ${D}/run/sudo
 }
 
-FILES_${PN}-dev += "${libdir}/${BPN}/lib*${SOLIBSDEV} ${libdir}/${BPN}/*.la \
+FILES:${PN}-dev += "${libdir}/${BPN}/lib*${SOLIBSDEV} ${libdir}/${BPN}/*.la \
                     ${libdir}/lib*${SOLIBSDEV} ${libdir}/*.la"
 
 SUDO_PACKAGES = "${PN}-sudo\
@@ -52,8 +52,8 @@
 
 PACKAGE_BEFORE_PN = "${SUDO_PACKAGES}"
 
-RDEPENDS_${PN}-sudo = "${PN}-lib"
-RDEPENDS_${PN} += "${SUDO_PACKAGES}"
+RDEPENDS:${PN}-sudo = "${PN}-lib"
+RDEPENDS:${PN} += "${SUDO_PACKAGES}"
 
-FILES_${PN}-sudo = "${bindir}/sudo ${bindir}/sudoedit"
-FILES_${PN}-lib = "${localstatedir} ${libexecdir} ${sysconfdir} ${libdir} ${nonarch_libdir}"
+FILES:${PN}-sudo = "${bindir}/sudo ${bindir}/sudoedit"
+FILES:${PN}-lib = "${localstatedir} ${libexecdir} ${sysconfdir} ${libdir} ${nonarch_libdir}"
diff --git a/poky/meta/recipes-extended/sysklogd/sysklogd_2.2.3.bb b/poky/meta/recipes-extended/sysklogd/sysklogd_2.2.3.bb
index be34ec7..eca531d 100644
--- a/poky/meta/recipes-extended/sysklogd/sysklogd_2.2.3.bb
+++ b/poky/meta/recipes-extended/sysklogd/sysklogd_2.2.3.bb
@@ -20,7 +20,7 @@
 
 EXTRA_OECONF = "--with-systemd=${systemd_system_unitdir} --without-logger"
 
-do_install_append () {
+do_install:append () {
        install -d ${D}${sysconfdir}
        install -m 644 ${S}/syslog.conf ${D}${sysconfdir}/syslog.conf
        install -d ${D}${sysconfdir}/init.d
@@ -28,21 +28,21 @@
 }
 
 SYSTEMD_PACKAGES = "${PN}"
-SYSTEMD_SERVICE_${PN} = "syslogd.service"
+SYSTEMD_SERVICE:${PN} = "syslogd.service"
 SYSTEMD_AUTO_ENABLE = "enable"
 
 INITSCRIPT_NAME = "syslog"
-CONFFILES_${PN} = "${sysconfdir}/syslog.conf"
-RCONFLICTS_${PN} = "rsyslog busybox-syslog syslog-ng"
+CONFFILES:${PN} = "${sysconfdir}/syslog.conf"
+RCONFLICTS:${PN} = "rsyslog busybox-syslog syslog-ng"
 
-FILES_${PN} += "${@bb.utils.contains('DISTRO_FEATURES','systemd','${exec_prefix}/lib/tmpfiles.d/sysklogd.conf', '', d)}"
+FILES:${PN} += "${@bb.utils.contains('DISTRO_FEATURES','systemd','${exec_prefix}/lib/tmpfiles.d/sysklogd.conf', '', d)}"
 
 ALTERNATIVE_PRIORITY = "100"
 
-ALTERNATIVE_${PN}-doc = "syslogd.8"
+ALTERNATIVE:${PN}-doc = "syslogd.8"
 ALTERNATIVE_LINK_NAME[syslogd.8] = "${mandir}/man8/syslogd.8"
 
-pkg_prerm_${PN} () {
+pkg_prerm:${PN} () {
 	if test "x$D" = "x"; then
 	if test "$1" = "upgrade" -o "$1" = "remove"; then
 		/etc/init.d/syslog stop || :
diff --git a/poky/meta/recipes-extended/sysstat/sysstat.inc b/poky/meta/recipes-extended/sysstat/sysstat.inc
index f97b88d..14c6f07 100644
--- a/poky/meta/recipes-extended/sysstat/sysstat.inc
+++ b/poky/meta/recipes-extended/sysstat/sysstat.inc
@@ -24,10 +24,10 @@
 EXTRA_OECONF += "--disable-stripping"
 
 SYSTEMD_PACKAGES = "${PN}"
-SYSTEMD_SERVICE_${PN} = "sysstat.service"
+SYSTEMD_SERVICE:${PN} = "sysstat.service"
 SYSTEMD_AUTO_ENABLE = "enable"
 
-do_configure_prepend() {
+do_configure:prepend() {
     export sa_lib_dir=${libexecdir}/sa
 }
 
@@ -58,7 +58,7 @@
 	fi
 }
 
-pkg_postinst_${PN} () {
+pkg_postinst:${PN} () {
 	if [  ! -n "$D" ]; then
 		if [ -e /etc/init.d/populate-volatile.sh ]; then
 			/etc/init.d/populate-volatile.sh update
@@ -66,6 +66,6 @@
 	fi
 }
 
-FILES_${PN} += "${systemd_system_unitdir} ${nonarch_base_libdir}/systemd"
+FILES:${PN} += "${systemd_system_unitdir} ${nonarch_base_libdir}/systemd"
 
 TARGET_CC_ARCH += "${LDFLAGS}"
diff --git a/poky/meta/recipes-extended/tar/tar_1.34.bb b/poky/meta/recipes-extended/tar/tar_1.34.bb
index af04919..c096a8c 100644
--- a/poky/meta/recipes-extended/tar/tar_1.34.bb
+++ b/poky/meta/recipes-extended/tar/tar_1.34.bb
@@ -13,7 +13,7 @@
 inherit autotools gettext texinfo
 
 PACKAGECONFIG ??= ""
-PACKAGECONFIG_append_class-target = " ${@bb.utils.filter('DISTRO_FEATURES', 'acl', d)}"
+PACKAGECONFIG:append:class-target = " ${@bb.utils.filter('DISTRO_FEATURES', 'acl', d)}"
 
 PACKAGECONFIG[acl] = "--with-posix-acls,--without-posix-acls,acl"
 
@@ -32,7 +32,7 @@
     ln -s tar ${D}${bindir}/gtar
 }
 
-do_install_append_class-target() {
+do_install:append:class-target() {
     if [ "${base_bindir}" != "${bindir}" ]; then
         install -d ${D}${base_bindir}
         mv ${D}${bindir}/tar ${D}${base_bindir}/tar
@@ -43,21 +43,21 @@
 
 PACKAGES =+ "${PN}-rmt"
 
-FILES_${PN}-rmt = "${sbindir}/rmt*"
+FILES:${PN}-rmt = "${sbindir}/rmt*"
 
 inherit update-alternatives
 
 ALTERNATIVE_PRIORITY = "100"
 
-ALTERNATIVE_${PN} = "tar"
-ALTERNATIVE_${PN}-rmt = "rmt"
-ALTERNATIVE_${PN}_class-nativesdk = ""
-ALTERNATIVE_${PN}-rmt_class-nativesdk = ""
+ALTERNATIVE:${PN} = "tar"
+ALTERNATIVE:${PN}-rmt = "rmt"
+ALTERNATIVE:${PN}:class-nativesdk = ""
+ALTERNATIVE:${PN}-rmt:class-nativesdk = ""
 
 ALTERNATIVE_LINK_NAME[tar] = "${base_bindir}/tar"
 ALTERNATIVE_LINK_NAME[rmt] = "${sbindir}/rmt"
 
-PROVIDES_append_class-native = " tar-replacement-native"
+PROVIDES:append:class-native = " tar-replacement-native"
 NATIVE_PACKAGE_PATH_SUFFIX = "/${PN}"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-extended/tcp-wrappers/tcp-wrappers_7.6.bb b/poky/meta/recipes-extended/tcp-wrappers/tcp-wrappers_7.6.bb
index e903b9d..814d7fd 100644
--- a/poky/meta/recipes-extended/tcp-wrappers/tcp-wrappers_7.6.bb
+++ b/poky/meta/recipes-extended/tcp-wrappers/tcp-wrappers_7.6.bb
@@ -11,12 +11,12 @@
 DEPENDS += "libnsl2"
 
 PACKAGES = "${PN}-dbg libwrap libwrap-doc libwrap-dev libwrap-staticdev ${PN} ${PN}-doc"
-FILES_libwrap = "${base_libdir}/lib*${SOLIBS}"
-FILES_libwrap-doc = "${mandir}/man3 ${mandir}/man5"
-FILES_libwrap-dev = "${libdir}/lib*${SOLIBSDEV} ${includedir}"
-FILES_libwrap-staticdev = "${libdir}/lib*.a"
-FILES_${PN} = "${sbindir}"
-FILES_${PN}-doc = "${mandir}/man8"
+FILES:libwrap = "${base_libdir}/lib*${SOLIBS}"
+FILES:libwrap-doc = "${mandir}/man3 ${mandir}/man5"
+FILES:libwrap-dev = "${libdir}/lib*${SOLIBSDEV} ${includedir}"
+FILES:libwrap-staticdev = "${libdir}/lib*.a"
+FILES:${PN} = "${sbindir}"
+FILES:${PN}-doc = "${mandir}/man8"
 
 SRC_URI = "http://ftp.porcupine.org/pub/security/tcp_wrappers_${PV}.tar.gz \
            file://00_man_quoting.diff \
@@ -78,9 +78,9 @@
                 'EXTRA_CFLAGS=${CFLAGS} -DSYS_ERRLIST_DEFINED -DHAVE_STRERROR -DHAVE_WEAKSYMS -D_REENTRANT -DINET6=1 -Dss_family=__ss_family -Dss_len=__ss_len'"
 
 EXTRA_OEMAKE_NETGROUP = "-DNETGROUP -DUSE_GETDOMAIN"
-EXTRA_OEMAKE_NETGROUP_libc-musl = "-DUSE_GETDOMAIN"
+EXTRA_OEMAKE_NETGROUP:libc-musl = "-DUSE_GETDOMAIN"
 
-EXTRA_OEMAKE_append_libc-musl = " 'LIBS='"
+EXTRA_OEMAKE:append:libc-musl = " 'LIBS='"
 
 do_compile () {
 	oe_runmake 'TABLES=-DHOSTS_DENY=\"${sysconfdir}/hosts.deny\" -DHOSTS_ALLOW=\"${sysconfdir}/hosts.allow\"' \
@@ -133,4 +133,4 @@
 	touch ${D}${sysconfdir}/hosts.deny
 }
 
-FILES_${PN} += "${sysconfdir}/hosts.allow ${sysconfdir}/hosts.deny"
+FILES:${PN} += "${sysconfdir}/hosts.allow ${sysconfdir}/hosts.deny"
diff --git a/poky/meta/recipes-extended/texinfo/texinfo/0001-gnulib-Update.patch b/poky/meta/recipes-extended/texinfo/texinfo/0001-gnulib-Update.patch
new file mode 100644
index 0000000..470212c
--- /dev/null
+++ b/poky/meta/recipes-extended/texinfo/texinfo/0001-gnulib-Update.patch
@@ -0,0 +1,11765 @@
+From 4908050c39dbcdcbd59955ea23d692f25f342307 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 7 Jul 2021 13:42:35 -0700
+Subject: [PATCH] gnulib: Update
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ gnulib/lib/Makefile.am                       | 782 +++++++++++--------
+ gnulib/lib/_Noreturn.h                       |   8 +-
+ gnulib/lib/alloca.in.h                       |  20 +-
+ gnulib/lib/arg-nonnull.h                     |   8 +-
+ gnulib/lib/argz.c                            |  16 +-
+ gnulib/lib/argz.in.h                         |  14 +-
+ gnulib/lib/asnprintf.c                       |  16 +-
+ gnulib/lib/asprintf.c                        |  16 +-
+ gnulib/lib/attribute.h                       |  16 +-
+ gnulib/lib/basename-lgpl.c                   |  14 +-
+ gnulib/lib/basename-lgpl.h                   |  26 +-
+ gnulib/lib/btowc.c                           |  14 +-
+ gnulib/lib/c++defs.h                         |   8 +-
+ gnulib/lib/calloc.c                          |  55 ++
+ gnulib/lib/cdefs.h                           |  26 +-
+ gnulib/lib/cloexec.c                         |  18 +-
+ gnulib/lib/cloexec.h                         |  18 +-
+ gnulib/lib/close.c                           |  14 +-
+ gnulib/lib/dup2.c                            |  14 +-
+ gnulib/lib/dynarray.h                        |  24 +-
+ gnulib/lib/errno.in.h                        |  16 +-
+ gnulib/lib/error.c                           |  14 +-
+ gnulib/lib/error.h                           |  14 +-
+ gnulib/lib/exitfail.c                        |  14 +-
+ gnulib/lib/exitfail.h                        |  14 +-
+ gnulib/lib/fcntl.c                           |  14 +-
+ gnulib/lib/fcntl.in.h                        |  14 +-
+ gnulib/lib/fd-hook.c                         |  16 +-
+ gnulib/lib/fd-hook.h                         |  16 +-
+ gnulib/lib/filename.h                        |   8 +-
+ gnulib/lib/float+.h                          |  16 +-
+ gnulib/lib/float.c                           |  14 +-
+ gnulib/lib/float.in.h                        |  14 +-
+ gnulib/lib/free.c                            |  53 ++
+ gnulib/lib/fstat.c                           |  14 +-
+ gnulib/lib/getdtablesize.c                   |  14 +-
+ gnulib/lib/getopt-cdefs.in.h                 |  21 +-
+ gnulib/lib/getopt-core.h                     |   8 +-
+ gnulib/lib/getopt-ext.h                      |   8 +-
+ gnulib/lib/getopt-pfx-core.h                 |  21 +-
+ gnulib/lib/getopt-pfx-ext.h                  |  21 +-
+ gnulib/lib/getopt.c                          |   8 +-
+ gnulib/lib/getopt.in.h                       |  24 +-
+ gnulib/lib/getopt1.c                         |   8 +-
+ gnulib/lib/getopt_int.h                      |   8 +-
+ gnulib/lib/getprogname.c                     |  18 +-
+ gnulib/lib/getprogname.h                     |   8 +-
+ gnulib/lib/gettext.h                         |  16 +-
+ gnulib/lib/glthread/lock.c                   |  16 +-
+ gnulib/lib/glthread/lock.h                   |  16 +-
+ gnulib/lib/glthread/threadlib.c              |  16 +-
+ gnulib/lib/hard-locale.c                     |  14 +-
+ gnulib/lib/hard-locale.h                     |  14 +-
+ gnulib/lib/ialloc.c                          |  21 +
+ gnulib/lib/ialloc.h                          |  94 +++
+ gnulib/lib/idx.h                             | 114 +++
+ gnulib/lib/intprops.h                        |  26 +-
+ gnulib/lib/inttypes.in.h                     |  14 +-
+ gnulib/lib/iswblank.c                        |  16 +-
+ gnulib/lib/iswdigit.c                        |  16 +-
+ gnulib/lib/iswxdigit.c                       |  16 +-
+ gnulib/lib/itold.c                           |  14 +-
+ gnulib/lib/langinfo.in.h                     |  16 +-
+ gnulib/lib/lc-charset-dispatch.c             |  14 +-
+ gnulib/lib/lc-charset-dispatch.h             |  14 +-
+ gnulib/lib/libc-config.h                     |  25 +-
+ gnulib/lib/limits.in.h                       |  16 +-
+ gnulib/lib/localcharset.c                    |  16 +-
+ gnulib/lib/localcharset.h                    |  16 +-
+ gnulib/lib/locale.in.h                       |  14 +-
+ gnulib/lib/localeconv.c                      |  14 +-
+ gnulib/lib/malloc.c                          |  51 +-
+ gnulib/lib/malloc/dynarray-skeleton.c        |   8 +-
+ gnulib/lib/malloc/dynarray.h                 |   8 +-
+ gnulib/lib/malloc/dynarray_at_failure.c      |   8 +-
+ gnulib/lib/malloc/dynarray_emplace_enlarge.c |   8 +-
+ gnulib/lib/malloc/dynarray_finalize.c        |   8 +-
+ gnulib/lib/malloc/dynarray_resize.c          |   8 +-
+ gnulib/lib/malloc/dynarray_resize_clear.c    |   8 +-
+ gnulib/lib/malloca.c                         |  24 +-
+ gnulib/lib/malloca.h                         |  21 +-
+ gnulib/lib/mbchar.c                          |  14 +-
+ gnulib/lib/mbchar.h                          |  14 +-
+ gnulib/lib/mbiter.c                          |  18 +
+ gnulib/lib/mbiter.h                          |  14 +-
+ gnulib/lib/mbrtowc-impl-utf8.h               |  16 +-
+ gnulib/lib/mbrtowc-impl.h                    |  14 +-
+ gnulib/lib/mbrtowc.c                         |  14 +-
+ gnulib/lib/mbscasecmp.c                      |  14 +-
+ gnulib/lib/mbschr.c                          |  14 +-
+ gnulib/lib/mbsinit.c                         |  14 +-
+ gnulib/lib/mbslen.c                          |  14 +-
+ gnulib/lib/mbsncasecmp.c                     |  14 +-
+ gnulib/lib/mbsstr.c                          |  14 +-
+ gnulib/lib/mbtowc-impl.h                     |  14 +-
+ gnulib/lib/mbtowc-lock.c                     |  14 +-
+ gnulib/lib/mbtowc-lock.h                     |  14 +-
+ gnulib/lib/mbtowc.c                          |  14 +-
+ gnulib/lib/mbuiter.c                         |  17 +
+ gnulib/lib/mbuiter.h                         |  14 +-
+ gnulib/lib/memchr.c                          |  24 +-
+ gnulib/lib/memchr.valgrind                   |  14 +-
+ gnulib/lib/mempcpy.c                         |  16 +-
+ gnulib/lib/memrchr.c                         |  14 +-
+ gnulib/lib/minmax.h                          |  60 ++
+ gnulib/lib/msvc-inval.c                      |  16 +-
+ gnulib/lib/msvc-inval.h                      |  16 +-
+ gnulib/lib/msvc-nothrow.c                    |  16 +-
+ gnulib/lib/msvc-nothrow.h                    |  16 +-
+ gnulib/lib/nl_langinfo-lock.c                |  14 +-
+ gnulib/lib/nl_langinfo.c                     |  14 +-
+ gnulib/lib/open.c                            |  14 +-
+ gnulib/lib/pathmax.h                         |  16 +-
+ gnulib/lib/printf-args.c                     |  16 +-
+ gnulib/lib/printf-args.h                     |  16 +-
+ gnulib/lib/printf-parse.c                    |  27 +-
+ gnulib/lib/printf-parse.h                    |  16 +-
+ gnulib/lib/realloc.c                         |  63 ++
+ gnulib/lib/reallocarray.c                    |  39 +
+ gnulib/lib/regcomp.c                         |   8 +-
+ gnulib/lib/regex.c                           |   8 +-
+ gnulib/lib/regex.h                           |   8 +-
+ gnulib/lib/regex_internal.c                  |   8 +-
+ gnulib/lib/regex_internal.h                  |   8 +-
+ gnulib/lib/regexec.c                         |  20 +-
+ gnulib/lib/setlocale-lock.c                  |  14 +-
+ gnulib/lib/setlocale_null.c                  |  14 +-
+ gnulib/lib/setlocale_null.h                  |  14 +-
+ gnulib/lib/size_max.h                        |  16 +-
+ gnulib/lib/stat-time.c                       |  18 +
+ gnulib/lib/stat-time.h                       |  14 +-
+ gnulib/lib/stat-w32.c                        |  14 +-
+ gnulib/lib/stat-w32.h                        |  14 +-
+ gnulib/lib/stat.c                            |  14 +-
+ gnulib/lib/stdarg.in.h                       |  16 +-
+ gnulib/lib/stdbool.in.h                      |  16 +-
+ gnulib/lib/stddef.in.h                       |  16 +-
+ gnulib/lib/stdint.in.h                       |  20 +-
+ gnulib/lib/stdio.in.h                        |  24 +-
+ gnulib/lib/stdlib.in.h                       | 146 +++-
+ gnulib/lib/stpcpy.c                          |  14 +-
+ gnulib/lib/str-kmp.h                         |  26 +-
+ gnulib/lib/str-two-way.h                     |  16 +-
+ gnulib/lib/strcasecmp.c                      |  16 +-
+ gnulib/lib/strcasestr.c                      |  16 +-
+ gnulib/lib/strdup.c                          |  16 +-
+ gnulib/lib/streq.h                           |  16 +-
+ gnulib/lib/strerror-override.c               | 100 +--
+ gnulib/lib/strerror-override.h               |  15 +-
+ gnulib/lib/strerror.c                        |  14 +-
+ gnulib/lib/string.in.h                       |  18 +-
+ gnulib/lib/strings.in.h                      |  16 +-
+ gnulib/lib/strncasecmp.c                     |  16 +-
+ gnulib/lib/strndup.c                         |  16 +-
+ gnulib/lib/strnlen.c                         |  16 +-
+ gnulib/lib/strnlen1.c                        |  14 +-
+ gnulib/lib/strnlen1.h                        |  14 +-
+ gnulib/lib/strstr.c                          |  16 +-
+ gnulib/lib/sys_stat.in.h                     |  16 +-
+ gnulib/lib/sys_types.in.h                    |  16 +-
+ gnulib/lib/time.in.h                         |  58 +-
+ gnulib/lib/unistd.c                          |  18 +
+ gnulib/lib/unistd.in.h                       |  29 +-
+ gnulib/lib/unitypes.in.h                     |  16 +-
+ gnulib/lib/uniwidth.in.h                     |  16 +-
+ gnulib/lib/uniwidth/cjk.h                    |  16 +-
+ gnulib/lib/uniwidth/width.c                  |  16 +-
+ gnulib/lib/vasnprintf.c                      |  71 +-
+ gnulib/lib/vasnprintf.h                      |  16 +-
+ gnulib/lib/vasprintf.c                       |  16 +-
+ gnulib/lib/verify.h                          |  14 +-
+ gnulib/lib/warn-on-use.h                     |   8 +-
+ gnulib/lib/wchar.in.h                        |  18 +-
+ gnulib/lib/wcrtomb.c                         |  14 +-
+ gnulib/lib/wctype-h.c                        |  19 +
+ gnulib/lib/wctype.in.h                       |  26 +-
+ gnulib/lib/wcwidth.c                         |  14 +-
+ gnulib/lib/windows-initguard.h               |  16 +-
+ gnulib/lib/windows-mutex.c                   |  16 +-
+ gnulib/lib/windows-mutex.h                   |  16 +-
+ gnulib/lib/windows-once.c                    |  16 +-
+ gnulib/lib/windows-once.h                    |  16 +-
+ gnulib/lib/windows-recmutex.c                |  16 +-
+ gnulib/lib/windows-recmutex.h                |  16 +-
+ gnulib/lib/windows-rwlock.c                  |  16 +-
+ gnulib/lib/windows-rwlock.h                  |  16 +-
+ gnulib/lib/xalloc-oversized.h                |  53 +-
+ gnulib/lib/xalloc.h                          | 143 +---
+ gnulib/lib/xmalloc.c                         | 293 +++++--
+ gnulib/lib/xsize.c                           |  18 +
+ gnulib/lib/xsize.h                           |  16 +-
+ gnulib/m4/calloc.m4                          |  82 ++
+ gnulib/m4/fcntl_h.m4                         |  39 +-
+ gnulib/m4/free.m4                            |  52 ++
+ gnulib/m4/fstat.m4                           |   4 +-
+ gnulib/m4/gnulib-common.m4                   |  84 +-
+ gnulib/m4/gnulib-comp.m4                     | 192 ++++-
+ gnulib/m4/inttypes.m4                        |  31 +-
+ gnulib/m4/iswdigit.m4                        |   6 +-
+ gnulib/m4/iswxdigit.m4                       |   4 +-
+ gnulib/m4/langinfo_h.m4                      |  25 +-
+ gnulib/m4/largefile.m4                       |  28 +-
+ gnulib/m4/locale_h.m4                        |  37 +-
+ gnulib/m4/malloc.m4                          | 152 +++-
+ gnulib/m4/math_h.m4                          | 227 +++---
+ gnulib/m4/mbslen.m4                          |   4 +-
+ gnulib/m4/memchr.m4                          |   4 +-
+ gnulib/m4/mempcpy.m4                         |   4 +-
+ gnulib/m4/memrchr.m4                         |   4 +-
+ gnulib/m4/minmax.m4                          |  44 ++
+ gnulib/m4/printf.m4                          |   5 +-
+ gnulib/m4/realloc.m4                         |  63 ++
+ gnulib/m4/reallocarray.m4                    |  23 +
+ gnulib/m4/stat.m4                            |   4 +-
+ gnulib/m4/stddef_h.m4                        |  23 +-
+ gnulib/m4/stdint.m4                          |   6 +-
+ gnulib/m4/stdio_h.m4                         | 168 ++--
+ gnulib/m4/stdlib_h.m4                        | 122 +--
+ gnulib/m4/stpcpy.m4                          |   4 +-
+ gnulib/m4/strcase.m4                         |   6 +-
+ gnulib/m4/strcasestr.m4                      |   4 +-
+ gnulib/m4/strdup.m4                          |   6 +-
+ gnulib/m4/strerror.m4                        |   4 +-
+ gnulib/m4/string_h.m4                        | 124 +--
+ gnulib/m4/strings_h.m4                       |  38 +-
+ gnulib/m4/strndup.m4                         |   4 +-
+ gnulib/m4/strnlen.m4                         |   4 +-
+ gnulib/m4/strstr.m4                          |   4 +-
+ gnulib/m4/sys_socket_h.m4                    |  53 +-
+ gnulib/m4/sys_stat_h.m4                      |  65 +-
+ gnulib/m4/sys_types_h.m4                     |  16 +-
+ gnulib/m4/time_h.m4                          |  62 +-
+ gnulib/m4/unistd_h.m4                        | 194 ++---
+ gnulib/m4/visibility.m4                      |   6 +-
+ gnulib/m4/wchar_h.m4                         | 109 +--
+ gnulib/m4/wctype_h.m4                        |  39 +-
+ gnulib/m4/wint_t.m4                          |  10 +-
+ gnulib/m4/year2038.m4                        | 112 +++
+ 238 files changed, 4521 insertions(+), 2636 deletions(-)
+ create mode 100644 gnulib/lib/calloc.c
+ create mode 100644 gnulib/lib/free.c
+ create mode 100644 gnulib/lib/ialloc.c
+ create mode 100644 gnulib/lib/ialloc.h
+ create mode 100644 gnulib/lib/idx.h
+ create mode 100644 gnulib/lib/minmax.h
+ create mode 100644 gnulib/lib/realloc.c
+ create mode 100644 gnulib/lib/reallocarray.c
+ create mode 100644 gnulib/m4/calloc.m4
+ create mode 100644 gnulib/m4/free.m4
+ create mode 100644 gnulib/m4/minmax.m4
+ create mode 100644 gnulib/m4/realloc.m4
+ create mode 100644 gnulib/m4/reallocarray.m4
+ create mode 100644 gnulib/m4/year2038.m4
+
+--- a/gnulib/lib/Makefile.am
++++ b/gnulib/lib/Makefile.am
+@@ -165,6 +165,24 @@ EXTRA_libgnu_a_SOURCES += btowc.c
+ 
+ ## end   gnulib module btowc
+ 
++## begin gnulib module calloc-gnu
++
++
++EXTRA_DIST += calloc.c
++
++EXTRA_libgnu_a_SOURCES += calloc.c
++
++## end   gnulib module calloc-gnu
++
++## begin gnulib module calloc-posix
++
++
++EXTRA_DIST += calloc.c
++
++EXTRA_libgnu_a_SOURCES += calloc.c
++
++## end   gnulib module calloc-posix
++
+ ## begin gnulib module cloexec
+ 
+ if gl_GNULIB_ENABLED_cloexec
+@@ -200,6 +218,32 @@ EXTRA_libgnu_a_SOURCES += dup2.c
+ ## begin gnulib module dynarray
+ 
+ if gl_GNULIB_ENABLED_dynarray
++BUILT_SOURCES += malloc/dynarray.gl.h malloc/dynarray-skeleton.gl.h
++
++malloc/dynarray.gl.h: malloc/dynarray.h
++	$(AM_V_at)$(MKDIR_P) malloc
++	$(AM_V_GEN)rm -f $@-t $@ && \
++	{ echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
++	  sed -e '/libc_hidden_proto/d' < $(srcdir)/malloc/dynarray.h; \
++	} > $@-t && \
++	mv $@-t $@
++MOSTLYCLEANFILES += malloc/dynarray.gl.h malloc/dynarray.gl.h-t
++
++malloc/dynarray-skeleton.gl.h: malloc/dynarray-skeleton.c
++	$(AM_V_at)$(MKDIR_P) malloc
++	$(AM_V_GEN)rm -f $@-t $@ && \
++	{ echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
++	  sed -e 's|<malloc/dynarray\.h>|<malloc/dynarray.gl.h>|g' \
++	      -e 's|__attribute_maybe_unused__|_GL_ATTRIBUTE_MAYBE_UNUSED|g' \
++	      -e 's|__attribute_nonnull__|_GL_ATTRIBUTE_NONNULL|g' \
++	      -e 's|__attribute_warn_unused_result__|_GL_ATTRIBUTE_NODISCARD|g' \
++	      -e 's|__glibc_likely|_GL_LIKELY|g' \
++	      -e 's|__glibc_unlikely|_GL_UNLIKELY|g' \
++	      < $(srcdir)/malloc/dynarray-skeleton.c; \
++	} > $@-t && \
++	mv $@-t $@
++MOSTLYCLEANFILES += malloc/dynarray-skeleton.gl.h malloc/dynarray-skeleton.gl.h-t
++
+ libgnu_a_SOURCES += malloc/dynarray_at_failure.c                 malloc/dynarray_emplace_enlarge.c                 malloc/dynarray_finalize.c                 malloc/dynarray_resize.c                 malloc/dynarray_resize_clear.c
+ 
+ endif
+@@ -285,13 +329,13 @@ fcntl.h: fcntl.in.h $(top_builddir)/conf
+ 	      -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \
+ 	      -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \
+ 	      -e 's|@''NEXT_FCNTL_H''@|$(NEXT_FCNTL_H)|g' \
+-	      -e 's/@''GNULIB_CREAT''@/$(GNULIB_CREAT)/g' \
+-	      -e 's/@''GNULIB_FCNTL''@/$(GNULIB_FCNTL)/g' \
+-	      -e 's/@''GNULIB_NONBLOCKING''@/$(GNULIB_NONBLOCKING)/g' \
+-	      -e 's/@''GNULIB_OPEN''@/$(GNULIB_OPEN)/g' \
+-	      -e 's/@''GNULIB_OPENAT''@/$(GNULIB_OPENAT)/g' \
+-	      -e 's/@''GNULIB_MDA_CREAT''@/$(GNULIB_MDA_CREAT)/g' \
+-	      -e 's/@''GNULIB_MDA_OPEN''@/$(GNULIB_MDA_OPEN)/g' \
++	      -e 's/@''GNULIB_CREAT''@/$(GL_GNULIB_CREAT)/g' \
++	      -e 's/@''GNULIB_FCNTL''@/$(GL_GNULIB_FCNTL)/g' \
++	      -e 's/@''GNULIB_NONBLOCKING''@/$(GL_GNULIB_NONBLOCKING)/g' \
++	      -e 's/@''GNULIB_OPEN''@/$(GL_GNULIB_OPEN)/g' \
++	      -e 's/@''GNULIB_OPENAT''@/$(GL_GNULIB_OPENAT)/g' \
++	      -e 's/@''GNULIB_MDA_CREAT''@/$(GL_GNULIB_MDA_CREAT)/g' \
++	      -e 's/@''GNULIB_MDA_OPEN''@/$(GL_GNULIB_MDA_OPEN)/g' \
+ 	      -e 's|@''HAVE_FCNTL''@|$(HAVE_FCNTL)|g' \
+ 	      -e 's|@''HAVE_OPENAT''@|$(HAVE_OPENAT)|g' \
+ 	      -e 's|@''REPLACE_CREAT''@|$(REPLACE_CREAT)|g' \
+@@ -358,6 +402,17 @@ EXTRA_libgnu_a_SOURCES += float.c itold.
+ 
+ ## end   gnulib module float
+ 
++## begin gnulib module free-posix
++
++if gl_GNULIB_ENABLED_ef07dc4b3077c11ea9cef586db4e5955
++
++endif
++EXTRA_DIST += free.c
++
++EXTRA_libgnu_a_SOURCES += free.c
++
++## end   gnulib module free-posix
++
+ ## begin gnulib module fstat
+ 
+ if gl_GNULIB_ENABLED_fstat
+@@ -445,11 +500,23 @@ EXTRA_DIST += $(top_srcdir)/build-aux/co
+ 
+ ## end   gnulib module havelib
+ 
++## begin gnulib module ialloc
++
++libgnu_a_SOURCES += ialloc.c
++
++EXTRA_DIST += ialloc.h
++
++## end   gnulib module ialloc
++
++## begin gnulib module idx
++
++libgnu_a_SOURCES += idx.h
++
++## end   gnulib module idx
++
+ ## begin gnulib module intprops
+ 
+-if gl_GNULIB_ENABLED_intprops
+ 
+-endif
+ EXTRA_DIST += intprops.h
+ 
+ ## end   gnulib module intprops
+@@ -470,10 +537,10 @@ inttypes.h: inttypes.in.h $(top_builddir
+ 	      -e 's|@''NEXT_INTTYPES_H''@|$(NEXT_INTTYPES_H)|g' \
+ 	      -e 's/@''APPLE_UNIVERSAL_BUILD''@/$(APPLE_UNIVERSAL_BUILD)/g' \
+ 	      -e 's/@''PRIPTR_PREFIX''@/$(PRIPTR_PREFIX)/g' \
+-	      -e 's/@''GNULIB_IMAXABS''@/$(GNULIB_IMAXABS)/g' \
+-	      -e 's/@''GNULIB_IMAXDIV''@/$(GNULIB_IMAXDIV)/g' \
+-	      -e 's/@''GNULIB_STRTOIMAX''@/$(GNULIB_STRTOIMAX)/g' \
+-	      -e 's/@''GNULIB_STRTOUMAX''@/$(GNULIB_STRTOUMAX)/g' \
++	      -e 's/@''GNULIB_IMAXABS''@/$(GL_GNULIB_IMAXABS)/g' \
++	      -e 's/@''GNULIB_IMAXDIV''@/$(GL_GNULIB_IMAXDIV)/g' \
++	      -e 's/@''GNULIB_STRTOIMAX''@/$(GL_GNULIB_STRTOIMAX)/g' \
++	      -e 's/@''GNULIB_STRTOUMAX''@/$(GL_GNULIB_STRTOUMAX)/g' \
+ 	      -e 's/@''HAVE_DECL_IMAXABS''@/$(HAVE_DECL_IMAXABS)/g' \
+ 	      -e 's/@''HAVE_DECL_IMAXDIV''@/$(HAVE_DECL_IMAXDIV)/g' \
+ 	      -e 's/@''HAVE_DECL_STRTOIMAX''@/$(HAVE_DECL_STRTOIMAX)/g' \
+@@ -540,7 +607,7 @@ langinfo.h: langinfo.in.h $(top_builddir
+ 	      -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \
+ 	      -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \
+ 	      -e 's|@''NEXT_LANGINFO_H''@|$(NEXT_LANGINFO_H)|g' \
+-	      -e 's/@''GNULIB_NL_LANGINFO''@/$(GNULIB_NL_LANGINFO)/g' \
++	      -e 's/@''GNULIB_NL_LANGINFO''@/$(GL_GNULIB_NL_LANGINFO)/g' \
+ 	      -e 's|@''HAVE_LANGINFO_CODESET''@|$(HAVE_LANGINFO_CODESET)|g' \
+ 	      -e 's|@''HAVE_LANGINFO_T_FMT_AMPM''@|$(HAVE_LANGINFO_T_FMT_AMPM)|g' \
+ 	      -e 's|@''HAVE_LANGINFO_ALTMON''@|$(HAVE_LANGINFO_ALTMON)|g' \
+@@ -622,11 +689,11 @@ locale.h: locale.in.h $(top_builddir)/co
+ 	      -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \
+ 	      -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \
+ 	      -e 's|@''NEXT_LOCALE_H''@|$(NEXT_LOCALE_H)|g' \
+-	      -e 's/@''GNULIB_LOCALECONV''@/$(GNULIB_LOCALECONV)/g' \
+-	      -e 's/@''GNULIB_SETLOCALE''@/$(GNULIB_SETLOCALE)/g' \
+-	      -e 's/@''GNULIB_SETLOCALE_NULL''@/$(GNULIB_SETLOCALE_NULL)/g' \
+-	      -e 's/@''GNULIB_DUPLOCALE''@/$(GNULIB_DUPLOCALE)/g' \
+-	      -e 's/@''GNULIB_LOCALENAME''@/$(GNULIB_LOCALENAME)/g' \
++	      -e 's/@''GNULIB_LOCALECONV''@/$(GL_GNULIB_LOCALECONV)/g' \
++	      -e 's/@''GNULIB_SETLOCALE''@/$(GL_GNULIB_SETLOCALE)/g' \
++	      -e 's/@''GNULIB_SETLOCALE_NULL''@/$(GL_GNULIB_SETLOCALE_NULL)/g' \
++	      -e 's/@''GNULIB_DUPLOCALE''@/$(GL_GNULIB_DUPLOCALE)/g' \
++	      -e 's/@''GNULIB_LOCALENAME''@/$(GL_GNULIB_LOCALENAME)/g' \
+ 	      -e 's|@''HAVE_NEWLOCALE''@|$(HAVE_NEWLOCALE)|g' \
+ 	      -e 's|@''HAVE_DUPLOCALE''@|$(HAVE_DUPLOCALE)|g' \
+ 	      -e 's|@''HAVE_FREELOCALE''@|$(HAVE_FREELOCALE)|g' \
+@@ -670,11 +737,18 @@ libgnu_a_SOURCES += glthread/lock.h glth
+ endif
+ ## end   gnulib module lock
+ 
++## begin gnulib module malloc-gnu
++
++
++EXTRA_DIST += malloc.c
++
++EXTRA_libgnu_a_SOURCES += malloc.c
++
++## end   gnulib module malloc-gnu
++
+ ## begin gnulib module malloc-posix
+ 
+-if gl_GNULIB_ENABLED_ef455225c00f5049c808c2eda3e76866
+ 
+-endif
+ EXTRA_DIST += malloc.c
+ 
+ EXTRA_libgnu_a_SOURCES += malloc.c
+@@ -805,6 +879,12 @@ EXTRA_libgnu_a_SOURCES += memrchr.c
+ 
+ ## end   gnulib module memrchr
+ 
++## begin gnulib module minmax
++
++libgnu_a_SOURCES += minmax.h
++
++## end   gnulib module minmax
++
+ ## begin gnulib module msvc-inval
+ 
+ if gl_GNULIB_ENABLED_f691f076f650964c9f5598c3ee487616
+@@ -856,6 +936,33 @@ EXTRA_DIST += pathmax.h
+ 
+ ## end   gnulib module pathmax
+ 
++## begin gnulib module realloc-gnu
++
++
++EXTRA_DIST += realloc.c
++
++EXTRA_libgnu_a_SOURCES += realloc.c
++
++## end   gnulib module realloc-gnu
++
++## begin gnulib module realloc-posix
++
++
++EXTRA_DIST += realloc.c
++
++EXTRA_libgnu_a_SOURCES += realloc.c
++
++## end   gnulib module realloc-posix
++
++## begin gnulib module reallocarray
++
++
++EXTRA_DIST += reallocarray.c
++
++EXTRA_libgnu_a_SOURCES += reallocarray.c
++
++## end   gnulib module reallocarray
++
+ ## begin gnulib module regex
+ 
+ 
+@@ -1072,7 +1179,7 @@ stdint.h: stdint.in.h $(top_builddir)/co
+ 	      -e 's/@''BITSIZEOF_WINT_T''@/$(BITSIZEOF_WINT_T)/g' \
+ 	      -e 's/@''HAVE_SIGNED_WINT_T''@/$(HAVE_SIGNED_WINT_T)/g' \
+ 	      -e 's/@''WINT_T_SUFFIX''@/$(WINT_T_SUFFIX)/g' \
+-	      -e 's/@''GNULIB_OVERRIDES_WINT_T''@/$(GNULIB_OVERRIDES_WINT_T)/g' \
++	      -e 's/@''GNULIBHEADERS_OVERRIDE_WINT_T''@/$(GNULIBHEADERS_OVERRIDE_WINT_T)/g' \
+ 	      < $(srcdir)/stdint.in.h; \
+ 	} > $@-t && \
+ 	mv $@-t $@
+@@ -1100,65 +1207,65 @@ stdio.h: stdio.in.h $(top_builddir)/conf
+ 	      -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \
+ 	      -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \
+ 	      -e 's|@''NEXT_STDIO_H''@|$(NEXT_STDIO_H)|g' \
+-	      -e 's/@''GNULIB_DPRINTF''@/$(GNULIB_DPRINTF)/g' \
+-	      -e 's/@''GNULIB_FCLOSE''@/$(GNULIB_FCLOSE)/g' \
+-	      -e 's/@''GNULIB_FDOPEN''@/$(GNULIB_FDOPEN)/g' \
+-	      -e 's/@''GNULIB_FFLUSH''@/$(GNULIB_FFLUSH)/g' \
+-	      -e 's/@''GNULIB_FGETC''@/$(GNULIB_FGETC)/g' \
+-	      -e 's/@''GNULIB_FGETS''@/$(GNULIB_FGETS)/g' \
+-	      -e 's/@''GNULIB_FOPEN''@/$(GNULIB_FOPEN)/g' \
+-	      -e 's/@''GNULIB_FPRINTF''@/$(GNULIB_FPRINTF)/g' \
+-	      -e 's/@''GNULIB_FPRINTF_POSIX''@/$(GNULIB_FPRINTF_POSIX)/g' \
+-	      -e 's/@''GNULIB_FPURGE''@/$(GNULIB_FPURGE)/g' \
+-	      -e 's/@''GNULIB_FPUTC''@/$(GNULIB_FPUTC)/g' \
+-	      -e 's/@''GNULIB_FPUTS''@/$(GNULIB_FPUTS)/g' \
+-	      -e 's/@''GNULIB_FREAD''@/$(GNULIB_FREAD)/g' \
+-	      -e 's/@''GNULIB_FREOPEN''@/$(GNULIB_FREOPEN)/g' \
+-	      -e 's/@''GNULIB_FSCANF''@/$(GNULIB_FSCANF)/g' \
+-	      -e 's/@''GNULIB_FSEEK''@/$(GNULIB_FSEEK)/g' \
+-	      -e 's/@''GNULIB_FSEEKO''@/$(GNULIB_FSEEKO)/g' \
+-	      -e 's/@''GNULIB_FTELL''@/$(GNULIB_FTELL)/g' \
+-	      -e 's/@''GNULIB_FTELLO''@/$(GNULIB_FTELLO)/g' \
+-	      -e 's/@''GNULIB_FWRITE''@/$(GNULIB_FWRITE)/g' \
+-	      -e 's/@''GNULIB_GETC''@/$(GNULIB_GETC)/g' \
+-	      -e 's/@''GNULIB_GETCHAR''@/$(GNULIB_GETCHAR)/g' \
+-	      -e 's/@''GNULIB_GETDELIM''@/$(GNULIB_GETDELIM)/g' \
+-	      -e 's/@''GNULIB_GETLINE''@/$(GNULIB_GETLINE)/g' \
+-	      -e 's/@''GNULIB_OBSTACK_PRINTF''@/$(GNULIB_OBSTACK_PRINTF)/g' \
+-	      -e 's/@''GNULIB_OBSTACK_PRINTF_POSIX''@/$(GNULIB_OBSTACK_PRINTF_POSIX)/g' \
+-	      -e 's/@''GNULIB_PCLOSE''@/$(GNULIB_PCLOSE)/g' \
+-	      -e 's/@''GNULIB_PERROR''@/$(GNULIB_PERROR)/g' \
+-	      -e 's/@''GNULIB_POPEN''@/$(GNULIB_POPEN)/g' \
+-	      -e 's/@''GNULIB_PRINTF''@/$(GNULIB_PRINTF)/g' \
+-	      -e 's/@''GNULIB_PRINTF_POSIX''@/$(GNULIB_PRINTF_POSIX)/g' \
+-	      -e 's/@''GNULIB_PUTC''@/$(GNULIB_PUTC)/g' \
+-	      -e 's/@''GNULIB_PUTCHAR''@/$(GNULIB_PUTCHAR)/g' \
+-	      -e 's/@''GNULIB_PUTS''@/$(GNULIB_PUTS)/g' \
+-	      -e 's/@''GNULIB_REMOVE''@/$(GNULIB_REMOVE)/g' \
+-	      -e 's/@''GNULIB_RENAME''@/$(GNULIB_RENAME)/g' \
+-	      -e 's/@''GNULIB_RENAMEAT''@/$(GNULIB_RENAMEAT)/g' \
+-	      -e 's/@''GNULIB_SCANF''@/$(GNULIB_SCANF)/g' \
+-	      -e 's/@''GNULIB_SNPRINTF''@/$(GNULIB_SNPRINTF)/g' \
+-	      -e 's/@''GNULIB_SPRINTF_POSIX''@/$(GNULIB_SPRINTF_POSIX)/g' \
+-	      -e 's/@''GNULIB_STDIO_H_NONBLOCKING''@/$(GNULIB_STDIO_H_NONBLOCKING)/g' \
+-	      -e 's/@''GNULIB_STDIO_H_SIGPIPE''@/$(GNULIB_STDIO_H_SIGPIPE)/g' \
+-	      -e 's/@''GNULIB_TMPFILE''@/$(GNULIB_TMPFILE)/g' \
+-	      -e 's/@''GNULIB_VASPRINTF''@/$(GNULIB_VASPRINTF)/g' \
+-	      -e 's/@''GNULIB_VDPRINTF''@/$(GNULIB_VDPRINTF)/g' \
+-	      -e 's/@''GNULIB_VFPRINTF''@/$(GNULIB_VFPRINTF)/g' \
+-	      -e 's/@''GNULIB_VFPRINTF_POSIX''@/$(GNULIB_VFPRINTF_POSIX)/g' \
+-	      -e 's/@''GNULIB_VFSCANF''@/$(GNULIB_VFSCANF)/g' \
+-	      -e 's/@''GNULIB_VSCANF''@/$(GNULIB_VSCANF)/g' \
+-	      -e 's/@''GNULIB_VPRINTF''@/$(GNULIB_VPRINTF)/g' \
+-	      -e 's/@''GNULIB_VPRINTF_POSIX''@/$(GNULIB_VPRINTF_POSIX)/g' \
+-	      -e 's/@''GNULIB_VSNPRINTF''@/$(GNULIB_VSNPRINTF)/g' \
+-	      -e 's/@''GNULIB_VSPRINTF_POSIX''@/$(GNULIB_VSPRINTF_POSIX)/g' \
+-	      -e 's/@''GNULIB_MDA_FCLOSEALL''@/$(GNULIB_MDA_FCLOSEALL)/g' \
+-	      -e 's/@''GNULIB_MDA_FDOPEN''@/$(GNULIB_MDA_FDOPEN)/g' \
+-	      -e 's/@''GNULIB_MDA_FILENO''@/$(GNULIB_MDA_FILENO)/g' \
+-	      -e 's/@''GNULIB_MDA_GETW''@/$(GNULIB_MDA_GETW)/g' \
+-	      -e 's/@''GNULIB_MDA_PUTW''@/$(GNULIB_MDA_PUTW)/g' \
+-	      -e 's/@''GNULIB_MDA_TEMPNAM''@/$(GNULIB_MDA_TEMPNAM)/g' \
++	      -e 's/@''GNULIB_DPRINTF''@/$(GL_GNULIB_DPRINTF)/g' \
++	      -e 's/@''GNULIB_FCLOSE''@/$(GL_GNULIB_FCLOSE)/g' \
++	      -e 's/@''GNULIB_FDOPEN''@/$(GL_GNULIB_FDOPEN)/g' \
++	      -e 's/@''GNULIB_FFLUSH''@/$(GL_GNULIB_FFLUSH)/g' \
++	      -e 's/@''GNULIB_FGETC''@/$(GL_GNULIB_FGETC)/g' \
++	      -e 's/@''GNULIB_FGETS''@/$(GL_GNULIB_FGETS)/g' \
++	      -e 's/@''GNULIB_FOPEN''@/$(GL_GNULIB_FOPEN)/g' \
++	      -e 's/@''GNULIB_FPRINTF''@/$(GL_GNULIB_FPRINTF)/g' \
++	      -e 's/@''GNULIB_FPRINTF_POSIX''@/$(GL_GNULIB_FPRINTF_POSIX)/g' \
++	      -e 's/@''GNULIB_FPURGE''@/$(GL_GNULIB_FPURGE)/g' \
++	      -e 's/@''GNULIB_FPUTC''@/$(GL_GNULIB_FPUTC)/g' \
++	      -e 's/@''GNULIB_FPUTS''@/$(GL_GNULIB_FPUTS)/g' \
++	      -e 's/@''GNULIB_FREAD''@/$(GL_GNULIB_FREAD)/g' \
++	      -e 's/@''GNULIB_FREOPEN''@/$(GL_GNULIB_FREOPEN)/g' \
++	      -e 's/@''GNULIB_FSCANF''@/$(GL_GNULIB_FSCANF)/g' \
++	      -e 's/@''GNULIB_FSEEK''@/$(GL_GNULIB_FSEEK)/g' \
++	      -e 's/@''GNULIB_FSEEKO''@/$(GL_GNULIB_FSEEKO)/g' \
++	      -e 's/@''GNULIB_FTELL''@/$(GL_GNULIB_FTELL)/g' \
++	      -e 's/@''GNULIB_FTELLO''@/$(GL_GNULIB_FTELLO)/g' \
++	      -e 's/@''GNULIB_FWRITE''@/$(GL_GNULIB_FWRITE)/g' \
++	      -e 's/@''GNULIB_GETC''@/$(GL_GNULIB_GETC)/g' \
++	      -e 's/@''GNULIB_GETCHAR''@/$(GL_GNULIB_GETCHAR)/g' \
++	      -e 's/@''GNULIB_GETDELIM''@/$(GL_GNULIB_GETDELIM)/g' \
++	      -e 's/@''GNULIB_GETLINE''@/$(GL_GNULIB_GETLINE)/g' \
++	      -e 's/@''GNULIB_OBSTACK_PRINTF''@/$(GL_GNULIB_OBSTACK_PRINTF)/g' \
++	      -e 's/@''GNULIB_OBSTACK_PRINTF_POSIX''@/$(GL_GNULIB_OBSTACK_PRINTF_POSIX)/g' \
++	      -e 's/@''GNULIB_PCLOSE''@/$(GL_GNULIB_PCLOSE)/g' \
++	      -e 's/@''GNULIB_PERROR''@/$(GL_GNULIB_PERROR)/g' \
++	      -e 's/@''GNULIB_POPEN''@/$(GL_GNULIB_POPEN)/g' \
++	      -e 's/@''GNULIB_PRINTF''@/$(GL_GNULIB_PRINTF)/g' \
++	      -e 's/@''GNULIB_PRINTF_POSIX''@/$(GL_GNULIB_PRINTF_POSIX)/g' \
++	      -e 's/@''GNULIB_PUTC''@/$(GL_GNULIB_PUTC)/g' \
++	      -e 's/@''GNULIB_PUTCHAR''@/$(GL_GNULIB_PUTCHAR)/g' \
++	      -e 's/@''GNULIB_PUTS''@/$(GL_GNULIB_PUTS)/g' \
++	      -e 's/@''GNULIB_REMOVE''@/$(GL_GNULIB_REMOVE)/g' \
++	      -e 's/@''GNULIB_RENAME''@/$(GL_GNULIB_RENAME)/g' \
++	      -e 's/@''GNULIB_RENAMEAT''@/$(GL_GNULIB_RENAMEAT)/g' \
++	      -e 's/@''GNULIB_SCANF''@/$(GL_GNULIB_SCANF)/g' \
++	      -e 's/@''GNULIB_SNPRINTF''@/$(GL_GNULIB_SNPRINTF)/g' \
++	      -e 's/@''GNULIB_SPRINTF_POSIX''@/$(GL_GNULIB_SPRINTF_POSIX)/g' \
++	      -e 's/@''GNULIB_STDIO_H_NONBLOCKING''@/$(GL_GNULIB_STDIO_H_NONBLOCKING)/g' \
++	      -e 's/@''GNULIB_STDIO_H_SIGPIPE''@/$(GL_GNULIB_STDIO_H_SIGPIPE)/g' \
++	      -e 's/@''GNULIB_TMPFILE''@/$(GL_GNULIB_TMPFILE)/g' \
++	      -e 's/@''GNULIB_VASPRINTF''@/$(GL_GNULIB_VASPRINTF)/g' \
++	      -e 's/@''GNULIB_VDPRINTF''@/$(GL_GNULIB_VDPRINTF)/g' \
++	      -e 's/@''GNULIB_VFPRINTF''@/$(GL_GNULIB_VFPRINTF)/g' \
++	      -e 's/@''GNULIB_VFPRINTF_POSIX''@/$(GL_GNULIB_VFPRINTF_POSIX)/g' \
++	      -e 's/@''GNULIB_VFSCANF''@/$(GL_GNULIB_VFSCANF)/g' \
++	      -e 's/@''GNULIB_VSCANF''@/$(GL_GNULIB_VSCANF)/g' \
++	      -e 's/@''GNULIB_VPRINTF''@/$(GL_GNULIB_VPRINTF)/g' \
++	      -e 's/@''GNULIB_VPRINTF_POSIX''@/$(GL_GNULIB_VPRINTF_POSIX)/g' \
++	      -e 's/@''GNULIB_VSNPRINTF''@/$(GL_GNULIB_VSNPRINTF)/g' \
++	      -e 's/@''GNULIB_VSPRINTF_POSIX''@/$(GL_GNULIB_VSPRINTF_POSIX)/g' \
++	      -e 's/@''GNULIB_MDA_FCLOSEALL''@/$(GL_GNULIB_MDA_FCLOSEALL)/g' \
++	      -e 's/@''GNULIB_MDA_FDOPEN''@/$(GL_GNULIB_MDA_FDOPEN)/g' \
++	      -e 's/@''GNULIB_MDA_FILENO''@/$(GL_GNULIB_MDA_FILENO)/g' \
++	      -e 's/@''GNULIB_MDA_GETW''@/$(GL_GNULIB_MDA_GETW)/g' \
++	      -e 's/@''GNULIB_MDA_PUTW''@/$(GL_GNULIB_MDA_PUTW)/g' \
++	      -e 's/@''GNULIB_MDA_TEMPNAM''@/$(GL_GNULIB_MDA_TEMPNAM)/g' \
+ 	      < $(srcdir)/stdio.in.h | \
+ 	  sed -e 's|@''HAVE_DECL_FCLOSEALL''@|$(HAVE_DECL_FCLOSEALL)|g' \
+ 	      -e 's|@''HAVE_DECL_FPURGE''@|$(HAVE_DECL_FPURGE)|g' \
+@@ -1236,49 +1343,51 @@ stdlib.h: stdlib.in.h $(top_builddir)/co
+ 	      -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \
+ 	      -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \
+ 	      -e 's|@''NEXT_STDLIB_H''@|$(NEXT_STDLIB_H)|g' \
+-	      -e 's/@''GNULIB__EXIT''@/$(GNULIB__EXIT)/g' \
+-	      -e 's/@''GNULIB_ALIGNED_ALLOC''@/$(GNULIB_ALIGNED_ALLOC)/g' \
+-	      -e 's/@''GNULIB_ATOLL''@/$(GNULIB_ATOLL)/g' \
+-	      -e 's/@''GNULIB_CALLOC_POSIX''@/$(GNULIB_CALLOC_POSIX)/g' \
+-	      -e 's/@''GNULIB_CANONICALIZE_FILE_NAME''@/$(GNULIB_CANONICALIZE_FILE_NAME)/g' \
+-	      -e 's/@''GNULIB_FREE_POSIX''@/$(GNULIB_FREE_POSIX)/g' \
+-	      -e 's/@''GNULIB_GETLOADAVG''@/$(GNULIB_GETLOADAVG)/g' \
+-	      -e 's/@''GNULIB_GETSUBOPT''@/$(GNULIB_GETSUBOPT)/g' \
+-	      -e 's/@''GNULIB_GRANTPT''@/$(GNULIB_GRANTPT)/g' \
+-	      -e 's/@''GNULIB_MALLOC_POSIX''@/$(GNULIB_MALLOC_POSIX)/g' \
+-	      -e 's/@''GNULIB_MBTOWC''@/$(GNULIB_MBTOWC)/g' \
+-	      -e 's/@''GNULIB_MKDTEMP''@/$(GNULIB_MKDTEMP)/g' \
+-	      -e 's/@''GNULIB_MKOSTEMP''@/$(GNULIB_MKOSTEMP)/g' \
+-	      -e 's/@''GNULIB_MKOSTEMPS''@/$(GNULIB_MKOSTEMPS)/g' \
+-	      -e 's/@''GNULIB_MKSTEMP''@/$(GNULIB_MKSTEMP)/g' \
+-	      -e 's/@''GNULIB_MKSTEMPS''@/$(GNULIB_MKSTEMPS)/g' \
+-	      -e 's/@''GNULIB_POSIX_MEMALIGN''@/$(GNULIB_POSIX_MEMALIGN)/g' \
+-	      -e 's/@''GNULIB_POSIX_OPENPT''@/$(GNULIB_POSIX_OPENPT)/g' \
+-	      -e 's/@''GNULIB_PTSNAME''@/$(GNULIB_PTSNAME)/g' \
+-	      -e 's/@''GNULIB_PTSNAME_R''@/$(GNULIB_PTSNAME_R)/g' \
+-	      -e 's/@''GNULIB_PUTENV''@/$(GNULIB_PUTENV)/g' \
+-	      -e 's/@''GNULIB_QSORT_R''@/$(GNULIB_QSORT_R)/g' \
+-	      -e 's/@''GNULIB_RANDOM''@/$(GNULIB_RANDOM)/g' \
+-	      -e 's/@''GNULIB_RANDOM_R''@/$(GNULIB_RANDOM_R)/g' \
+-	      -e 's/@''GNULIB_REALLOC_POSIX''@/$(GNULIB_REALLOC_POSIX)/g' \
+-	      -e 's/@''GNULIB_REALLOCARRAY''@/$(GNULIB_REALLOCARRAY)/g' \
+-	      -e 's/@''GNULIB_REALPATH''@/$(GNULIB_REALPATH)/g' \
+-	      -e 's/@''GNULIB_RPMATCH''@/$(GNULIB_RPMATCH)/g' \
+-	      -e 's/@''GNULIB_SECURE_GETENV''@/$(GNULIB_SECURE_GETENV)/g' \
+-	      -e 's/@''GNULIB_SETENV''@/$(GNULIB_SETENV)/g' \
+-	      -e 's/@''GNULIB_STRTOD''@/$(GNULIB_STRTOD)/g' \
+-	      -e 's/@''GNULIB_STRTOLD''@/$(GNULIB_STRTOLD)/g' \
+-	      -e 's/@''GNULIB_STRTOLL''@/$(GNULIB_STRTOLL)/g' \
+-	      -e 's/@''GNULIB_STRTOULL''@/$(GNULIB_STRTOULL)/g' \
+-	      -e 's/@''GNULIB_SYSTEM_POSIX''@/$(GNULIB_SYSTEM_POSIX)/g' \
+-	      -e 's/@''GNULIB_UNLOCKPT''@/$(GNULIB_UNLOCKPT)/g' \
+-	      -e 's/@''GNULIB_UNSETENV''@/$(GNULIB_UNSETENV)/g' \
+-	      -e 's/@''GNULIB_WCTOMB''@/$(GNULIB_WCTOMB)/g' \
+-	      -e 's/@''GNULIB_MDA_ECVT''@/$(GNULIB_MDA_ECVT)/g' \
+-	      -e 's/@''GNULIB_MDA_FCVT''@/$(GNULIB_MDA_FCVT)/g' \
+-	      -e 's/@''GNULIB_MDA_GCVT''@/$(GNULIB_MDA_GCVT)/g' \
+-	      -e 's/@''GNULIB_MDA_MKTEMP''@/$(GNULIB_MDA_MKTEMP)/g' \
+-	      -e 's/@''GNULIB_MDA_PUTENV''@/$(GNULIB_MDA_PUTENV)/g' \
++	      -e 's/@''GNULIB__EXIT''@/$(GL_GNULIB__EXIT)/g' \
++	      -e 's/@''GNULIB_ALIGNED_ALLOC''@/$(GL_GNULIB_ALIGNED_ALLOC)/g' \
++	      -e 's/@''GNULIB_ATOLL''@/$(GL_GNULIB_ATOLL)/g' \
++	      -e 's/@''GNULIB_CALLOC_POSIX''@/$(GL_GNULIB_CALLOC_POSIX)/g' \
++	      -e 's/@''GNULIB_CANONICALIZE_FILE_NAME''@/$(GL_GNULIB_CANONICALIZE_FILE_NAME)/g' \
++	      -e 's/@''GNULIB_FREE_POSIX''@/$(GL_GNULIB_FREE_POSIX)/g' \
++	      -e 's/@''GNULIB_GETLOADAVG''@/$(GL_GNULIB_GETLOADAVG)/g' \
++	      -e 's/@''GNULIB_GETSUBOPT''@/$(GL_GNULIB_GETSUBOPT)/g' \
++	      -e 's/@''GNULIB_GRANTPT''@/$(GL_GNULIB_GRANTPT)/g' \
++	      -e 's/@''GNULIB_MALLOC_POSIX''@/$(GL_GNULIB_MALLOC_POSIX)/g' \
++	      -e 's/@''GNULIB_MBTOWC''@/$(GL_GNULIB_MBTOWC)/g' \
++	      -e 's/@''GNULIB_MKDTEMP''@/$(GL_GNULIB_MKDTEMP)/g' \
++	      -e 's/@''GNULIB_MKOSTEMP''@/$(GL_GNULIB_MKOSTEMP)/g' \
++	      -e 's/@''GNULIB_MKOSTEMPS''@/$(GL_GNULIB_MKOSTEMPS)/g' \
++	      -e 's/@''GNULIB_MKSTEMP''@/$(GL_GNULIB_MKSTEMP)/g' \
++	      -e 's/@''GNULIB_MKSTEMPS''@/$(GL_GNULIB_MKSTEMPS)/g' \
++	      -e 's/@''GNULIB_POSIX_MEMALIGN''@/$(GL_GNULIB_POSIX_MEMALIGN)/g' \
++	      -e 's/@''GNULIB_POSIX_OPENPT''@/$(GL_GNULIB_POSIX_OPENPT)/g' \
++	      -e 's/@''GNULIB_PTSNAME''@/$(GL_GNULIB_PTSNAME)/g' \
++	      -e 's/@''GNULIB_PTSNAME_R''@/$(GL_GNULIB_PTSNAME_R)/g' \
++	      -e 's/@''GNULIB_PUTENV''@/$(GL_GNULIB_PUTENV)/g' \
++	      -e 's/@''GNULIB_QSORT_R''@/$(GL_GNULIB_QSORT_R)/g' \
++	      -e 's/@''GNULIB_RANDOM''@/$(GL_GNULIB_RANDOM)/g' \
++	      -e 's/@''GNULIB_RANDOM_R''@/$(GL_GNULIB_RANDOM_R)/g' \
++	      -e 's/@''GNULIB_REALLOC_POSIX''@/$(GL_GNULIB_REALLOC_POSIX)/g' \
++	      -e 's/@''GNULIB_REALLOCARRAY''@/$(GL_GNULIB_REALLOCARRAY)/g' \
++	      -e 's/@''GNULIB_REALPATH''@/$(GL_GNULIB_REALPATH)/g' \
++	      -e 's/@''GNULIB_RPMATCH''@/$(GL_GNULIB_RPMATCH)/g' \
++	      -e 's/@''GNULIB_SECURE_GETENV''@/$(GL_GNULIB_SECURE_GETENV)/g' \
++	      -e 's/@''GNULIB_SETENV''@/$(GL_GNULIB_SETENV)/g' \
++	      -e 's/@''GNULIB_STRTOD''@/$(GL_GNULIB_STRTOD)/g' \
++	      -e 's/@''GNULIB_STRTOL''@/$(GL_GNULIB_STRTOL)/g' \
++	      -e 's/@''GNULIB_STRTOLD''@/$(GL_GNULIB_STRTOLD)/g' \
++	      -e 's/@''GNULIB_STRTOLL''@/$(GL_GNULIB_STRTOLL)/g' \
++	      -e 's/@''GNULIB_STRTOUL''@/$(GL_GNULIB_STRTOUL)/g' \
++	      -e 's/@''GNULIB_STRTOULL''@/$(GL_GNULIB_STRTOULL)/g' \
++	      -e 's/@''GNULIB_SYSTEM_POSIX''@/$(GL_GNULIB_SYSTEM_POSIX)/g' \
++	      -e 's/@''GNULIB_UNLOCKPT''@/$(GL_GNULIB_UNLOCKPT)/g' \
++	      -e 's/@''GNULIB_UNSETENV''@/$(GL_GNULIB_UNSETENV)/g' \
++	      -e 's/@''GNULIB_WCTOMB''@/$(GL_GNULIB_WCTOMB)/g' \
++	      -e 's/@''GNULIB_MDA_ECVT''@/$(GL_GNULIB_MDA_ECVT)/g' \
++	      -e 's/@''GNULIB_MDA_FCVT''@/$(GL_GNULIB_MDA_FCVT)/g' \
++	      -e 's/@''GNULIB_MDA_GCVT''@/$(GL_GNULIB_MDA_GCVT)/g' \
++	      -e 's/@''GNULIB_MDA_MKTEMP''@/$(GL_GNULIB_MDA_MKTEMP)/g' \
++	      -e 's/@''GNULIB_MDA_PUTENV''@/$(GL_GNULIB_MDA_PUTENV)/g' \
+ 	      < $(srcdir)/stdlib.in.h | \
+ 	  sed -e 's|@''HAVE__EXIT''@|$(HAVE__EXIT)|g' \
+ 	      -e 's|@''HAVE_ALIGNED_ALLOC''@|$(HAVE_ALIGNED_ALLOC)|g' \
+@@ -1314,8 +1423,10 @@ stdlib.h: stdlib.in.h $(top_builddir)/co
+ 	      -e 's|@''HAVE_SETSTATE''@|$(HAVE_SETSTATE)|g' \
+ 	      -e 's|@''HAVE_DECL_SETSTATE''@|$(HAVE_DECL_SETSTATE)|g' \
+ 	      -e 's|@''HAVE_STRTOD''@|$(HAVE_STRTOD)|g' \
++	      -e 's|@''HAVE_STRTOL''@|$(HAVE_STRTOL)|g' \
+ 	      -e 's|@''HAVE_STRTOLD''@|$(HAVE_STRTOLD)|g' \
+ 	      -e 's|@''HAVE_STRTOLL''@|$(HAVE_STRTOLL)|g' \
++	      -e 's|@''HAVE_STRTOUL''@|$(HAVE_STRTOUL)|g' \
+ 	      -e 's|@''HAVE_STRTOULL''@|$(HAVE_STRTOULL)|g' \
+ 	      -e 's|@''HAVE_STRUCT_RANDOM_DATA''@|$(HAVE_STRUCT_RANDOM_DATA)|g' \
+ 	      -e 's|@''HAVE_SYS_LOADAVG_H''@|$(HAVE_SYS_LOADAVG_H)|g' \
+@@ -1337,11 +1448,16 @@ stdlib.h: stdlib.in.h $(top_builddir)/co
+ 	      -e 's|@''REPLACE_RANDOM''@|$(REPLACE_RANDOM)|g' \
+ 	      -e 's|@''REPLACE_RANDOM_R''@|$(REPLACE_RANDOM_R)|g' \
+ 	      -e 's|@''REPLACE_REALLOC''@|$(REPLACE_REALLOC)|g' \
++	      -e 's|@''REPLACE_REALLOCARRAY''@|$(REPLACE_REALLOCARRAY)|g' \
+ 	      -e 's|@''REPLACE_REALPATH''@|$(REPLACE_REALPATH)|g' \
+ 	      -e 's|@''REPLACE_SETENV''@|$(REPLACE_SETENV)|g' \
+ 	      -e 's|@''REPLACE_SETSTATE''@|$(REPLACE_SETSTATE)|g' \
+ 	      -e 's|@''REPLACE_STRTOD''@|$(REPLACE_STRTOD)|g' \
++	      -e 's|@''REPLACE_STRTOL''@|$(REPLACE_STRTOL)|g' \
+ 	      -e 's|@''REPLACE_STRTOLD''@|$(REPLACE_STRTOLD)|g' \
++	      -e 's|@''REPLACE_STRTOLL''@|$(REPLACE_STRTOLL)|g' \
++	      -e 's|@''REPLACE_STRTOUL''@|$(REPLACE_STRTOUL)|g' \
++	      -e 's|@''REPLACE_STRTOULL''@|$(REPLACE_STRTOULL)|g' \
+ 	      -e 's|@''REPLACE_UNSETENV''@|$(REPLACE_UNSETENV)|g' \
+ 	      -e 's|@''REPLACE_WCTOMB''@|$(REPLACE_WCTOMB)|g' \
+ 	      -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \
+@@ -1444,49 +1560,49 @@ string.h: string.in.h $(top_builddir)/co
+ 	      -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \
+ 	      -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \
+ 	      -e 's|@''NEXT_STRING_H''@|$(NEXT_STRING_H)|g' \
+-	      -e 's/@''GNULIB_EXPLICIT_BZERO''@/$(GNULIB_EXPLICIT_BZERO)/g' \
+-	      -e 's/@''GNULIB_FFSL''@/$(GNULIB_FFSL)/g' \
+-	      -e 's/@''GNULIB_FFSLL''@/$(GNULIB_FFSLL)/g' \
+-	      -e 's/@''GNULIB_MBSLEN''@/$(GNULIB_MBSLEN)/g' \
+-	      -e 's/@''GNULIB_MBSNLEN''@/$(GNULIB_MBSNLEN)/g' \
+-	      -e 's/@''GNULIB_MBSCHR''@/$(GNULIB_MBSCHR)/g' \
+-	      -e 's/@''GNULIB_MBSRCHR''@/$(GNULIB_MBSRCHR)/g' \
+-	      -e 's/@''GNULIB_MBSSTR''@/$(GNULIB_MBSSTR)/g' \
+-	      -e 's/@''GNULIB_MBSCASECMP''@/$(GNULIB_MBSCASECMP)/g' \
+-	      -e 's/@''GNULIB_MBSNCASECMP''@/$(GNULIB_MBSNCASECMP)/g' \
+-	      -e 's/@''GNULIB_MBSPCASECMP''@/$(GNULIB_MBSPCASECMP)/g' \
+-	      -e 's/@''GNULIB_MBSCASESTR''@/$(GNULIB_MBSCASESTR)/g' \
+-	      -e 's/@''GNULIB_MBSCSPN''@/$(GNULIB_MBSCSPN)/g' \
+-	      -e 's/@''GNULIB_MBSPBRK''@/$(GNULIB_MBSPBRK)/g' \
+-	      -e 's/@''GNULIB_MBSSPN''@/$(GNULIB_MBSSPN)/g' \
+-	      -e 's/@''GNULIB_MBSSEP''@/$(GNULIB_MBSSEP)/g' \
+-	      -e 's/@''GNULIB_MBSTOK_R''@/$(GNULIB_MBSTOK_R)/g' \
+-	      -e 's/@''GNULIB_MEMCHR''@/$(GNULIB_MEMCHR)/g' \
+-	      -e 's/@''GNULIB_MEMMEM''@/$(GNULIB_MEMMEM)/g' \
+-	      -e 's/@''GNULIB_MEMPCPY''@/$(GNULIB_MEMPCPY)/g' \
+-	      -e 's/@''GNULIB_MEMRCHR''@/$(GNULIB_MEMRCHR)/g' \
+-	      -e 's/@''GNULIB_RAWMEMCHR''@/$(GNULIB_RAWMEMCHR)/g' \
+-	      -e 's/@''GNULIB_STPCPY''@/$(GNULIB_STPCPY)/g' \
+-	      -e 's/@''GNULIB_STPNCPY''@/$(GNULIB_STPNCPY)/g' \
+-	      -e 's/@''GNULIB_STRCHRNUL''@/$(GNULIB_STRCHRNUL)/g' \
+-	      -e 's/@''GNULIB_STRDUP''@/$(GNULIB_STRDUP)/g' \
+-	      -e 's/@''GNULIB_STRNCAT''@/$(GNULIB_STRNCAT)/g' \
+-	      -e 's/@''GNULIB_STRNDUP''@/$(GNULIB_STRNDUP)/g' \
+-	      -e 's/@''GNULIB_STRNLEN''@/$(GNULIB_STRNLEN)/g' \
+-	      -e 's/@''GNULIB_STRPBRK''@/$(GNULIB_STRPBRK)/g' \
+-	      -e 's/@''GNULIB_STRSEP''@/$(GNULIB_STRSEP)/g' \
+-	      -e 's/@''GNULIB_STRSTR''@/$(GNULIB_STRSTR)/g' \
+-	      -e 's/@''GNULIB_STRCASESTR''@/$(GNULIB_STRCASESTR)/g' \
+-	      -e 's/@''GNULIB_STRTOK_R''@/$(GNULIB_STRTOK_R)/g' \
+-	      -e 's/@''GNULIB_STRERROR''@/$(GNULIB_STRERROR)/g' \
+-	      -e 's/@''GNULIB_STRERROR_R''@/$(GNULIB_STRERROR_R)/g' \
+-	      -e 's/@''GNULIB_STRERRORNAME_NP''@/$(GNULIB_STRERRORNAME_NP)/g' \
+-	      -e 's/@''GNULIB_SIGABBREV_NP''@/$(GNULIB_SIGABBREV_NP)/g' \
+-	      -e 's/@''GNULIB_SIGDESCR_NP''@/$(GNULIB_SIGDESCR_NP)/g' \
+-	      -e 's/@''GNULIB_STRSIGNAL''@/$(GNULIB_STRSIGNAL)/g' \
+-	      -e 's/@''GNULIB_STRVERSCMP''@/$(GNULIB_STRVERSCMP)/g' \
+-	      -e 's/@''GNULIB_MDA_MEMCCPY''@/$(GNULIB_MDA_MEMCCPY)/g' \
+-	      -e 's/@''GNULIB_MDA_STRDUP''@/$(GNULIB_MDA_STRDUP)/g' \
++	      -e 's/@''GNULIB_EXPLICIT_BZERO''@/$(GL_GNULIB_EXPLICIT_BZERO)/g' \
++	      -e 's/@''GNULIB_FFSL''@/$(GL_GNULIB_FFSL)/g' \
++	      -e 's/@''GNULIB_FFSLL''@/$(GL_GNULIB_FFSLL)/g' \
++	      -e 's/@''GNULIB_MBSLEN''@/$(GL_GNULIB_MBSLEN)/g' \
++	      -e 's/@''GNULIB_MBSNLEN''@/$(GL_GNULIB_MBSNLEN)/g' \
++	      -e 's/@''GNULIB_MBSCHR''@/$(GL_GNULIB_MBSCHR)/g' \
++	      -e 's/@''GNULIB_MBSRCHR''@/$(GL_GNULIB_MBSRCHR)/g' \
++	      -e 's/@''GNULIB_MBSSTR''@/$(GL_GNULIB_MBSSTR)/g' \
++	      -e 's/@''GNULIB_MBSCASECMP''@/$(GL_GNULIB_MBSCASECMP)/g' \
++	      -e 's/@''GNULIB_MBSNCASECMP''@/$(GL_GNULIB_MBSNCASECMP)/g' \
++	      -e 's/@''GNULIB_MBSPCASECMP''@/$(GL_GNULIB_MBSPCASECMP)/g' \
++	      -e 's/@''GNULIB_MBSCASESTR''@/$(GL_GNULIB_MBSCASESTR)/g' \
++	      -e 's/@''GNULIB_MBSCSPN''@/$(GL_GNULIB_MBSCSPN)/g' \
++	      -e 's/@''GNULIB_MBSPBRK''@/$(GL_GNULIB_MBSPBRK)/g' \
++	      -e 's/@''GNULIB_MBSSPN''@/$(GL_GNULIB_MBSSPN)/g' \
++	      -e 's/@''GNULIB_MBSSEP''@/$(GL_GNULIB_MBSSEP)/g' \
++	      -e 's/@''GNULIB_MBSTOK_R''@/$(GL_GNULIB_MBSTOK_R)/g' \
++	      -e 's/@''GNULIB_MEMCHR''@/$(GL_GNULIB_MEMCHR)/g' \
++	      -e 's/@''GNULIB_MEMMEM''@/$(GL_GNULIB_MEMMEM)/g' \
++	      -e 's/@''GNULIB_MEMPCPY''@/$(GL_GNULIB_MEMPCPY)/g' \
++	      -e 's/@''GNULIB_MEMRCHR''@/$(GL_GNULIB_MEMRCHR)/g' \
++	      -e 's/@''GNULIB_RAWMEMCHR''@/$(GL_GNULIB_RAWMEMCHR)/g' \
++	      -e 's/@''GNULIB_STPCPY''@/$(GL_GNULIB_STPCPY)/g' \
++	      -e 's/@''GNULIB_STPNCPY''@/$(GL_GNULIB_STPNCPY)/g' \
++	      -e 's/@''GNULIB_STRCHRNUL''@/$(GL_GNULIB_STRCHRNUL)/g' \
++	      -e 's/@''GNULIB_STRDUP''@/$(GL_GNULIB_STRDUP)/g' \
++	      -e 's/@''GNULIB_STRNCAT''@/$(GL_GNULIB_STRNCAT)/g' \
++	      -e 's/@''GNULIB_STRNDUP''@/$(GL_GNULIB_STRNDUP)/g' \
++	      -e 's/@''GNULIB_STRNLEN''@/$(GL_GNULIB_STRNLEN)/g' \
++	      -e 's/@''GNULIB_STRPBRK''@/$(GL_GNULIB_STRPBRK)/g' \
++	      -e 's/@''GNULIB_STRSEP''@/$(GL_GNULIB_STRSEP)/g' \
++	      -e 's/@''GNULIB_STRSTR''@/$(GL_GNULIB_STRSTR)/g' \
++	      -e 's/@''GNULIB_STRCASESTR''@/$(GL_GNULIB_STRCASESTR)/g' \
++	      -e 's/@''GNULIB_STRTOK_R''@/$(GL_GNULIB_STRTOK_R)/g' \
++	      -e 's/@''GNULIB_STRERROR''@/$(GL_GNULIB_STRERROR)/g' \
++	      -e 's/@''GNULIB_STRERROR_R''@/$(GL_GNULIB_STRERROR_R)/g' \
++	      -e 's/@''GNULIB_STRERRORNAME_NP''@/$(GL_GNULIB_STRERRORNAME_NP)/g' \
++	      -e 's/@''GNULIB_SIGABBREV_NP''@/$(GL_GNULIB_SIGABBREV_NP)/g' \
++	      -e 's/@''GNULIB_SIGDESCR_NP''@/$(GL_GNULIB_SIGDESCR_NP)/g' \
++	      -e 's/@''GNULIB_STRSIGNAL''@/$(GL_GNULIB_STRSIGNAL)/g' \
++	      -e 's/@''GNULIB_STRVERSCMP''@/$(GL_GNULIB_STRVERSCMP)/g' \
++	      -e 's/@''GNULIB_MDA_MEMCCPY''@/$(GL_GNULIB_MDA_MEMCCPY)/g' \
++	      -e 's/@''GNULIB_MDA_STRDUP''@/$(GL_GNULIB_MDA_STRDUP)/g' \
+ 	      < $(srcdir)/string.in.h | \
+ 	  sed -e 's|@''HAVE_EXPLICIT_BZERO''@|$(HAVE_EXPLICIT_BZERO)|g' \
+ 	      -e 's|@''HAVE_FFSL''@|$(HAVE_FFSL)|g' \
+@@ -1556,7 +1672,7 @@ strings.h: strings.in.h $(top_builddir)/
+ 	      -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \
+ 	      -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \
+ 	      -e 's|@''NEXT_STRINGS_H''@|$(NEXT_STRINGS_H)|g' \
+-	      -e 's/@''GNULIB_FFS''@/$(GNULIB_FFS)/g' \
++	      -e 's/@''GNULIB_FFS''@/$(GL_GNULIB_FFS)/g' \
+ 	      -e 's|@''HAVE_FFS''@|$(HAVE_FFS)|g' \
+ 	      -e 's|@''HAVE_STRCASECMP''@|$(HAVE_STRCASECMP)|g' \
+ 	      -e 's|@''HAVE_DECL_STRNCASECMP''@|$(HAVE_DECL_STRNCASECMP)|g' \
+@@ -1638,25 +1754,25 @@ sys/stat.h: sys_stat.in.h $(top_builddir
+ 	      -e 's|@''NEXT_SYS_STAT_H''@|$(NEXT_SYS_STAT_H)|g' \
+ 	      -e 's|@''WINDOWS_64_BIT_ST_SIZE''@|$(WINDOWS_64_BIT_ST_SIZE)|g' \
+ 	      -e 's|@''WINDOWS_STAT_TIMESPEC''@|$(WINDOWS_STAT_TIMESPEC)|g' \
+-	      -e 's/@''GNULIB_FCHMODAT''@/$(GNULIB_FCHMODAT)/g' \
+-	      -e 's/@''GNULIB_FSTAT''@/$(GNULIB_FSTAT)/g' \
+-	      -e 's/@''GNULIB_FSTATAT''@/$(GNULIB_FSTATAT)/g' \
+-	      -e 's/@''GNULIB_FUTIMENS''@/$(GNULIB_FUTIMENS)/g' \
+-	      -e 's/@''GNULIB_GETUMASK''@/$(GNULIB_GETUMASK)/g' \
+-	      -e 's/@''GNULIB_LCHMOD''@/$(GNULIB_LCHMOD)/g' \
+-	      -e 's/@''GNULIB_LSTAT''@/$(GNULIB_LSTAT)/g' \
+-	      -e 's/@''GNULIB_MKDIR''@/$(GNULIB_MKDIR)/g' \
+-	      -e 's/@''GNULIB_MKDIRAT''@/$(GNULIB_MKDIRAT)/g' \
+-	      -e 's/@''GNULIB_MKFIFO''@/$(GNULIB_MKFIFO)/g' \
+-	      -e 's/@''GNULIB_MKFIFOAT''@/$(GNULIB_MKFIFOAT)/g' \
+-	      -e 's/@''GNULIB_MKNOD''@/$(GNULIB_MKNOD)/g' \
+-	      -e 's/@''GNULIB_MKNODAT''@/$(GNULIB_MKNODAT)/g' \
+-	      -e 's/@''GNULIB_STAT''@/$(GNULIB_STAT)/g' \
+-	      -e 's/@''GNULIB_UTIMENSAT''@/$(GNULIB_UTIMENSAT)/g' \
+-	      -e 's/@''GNULIB_OVERRIDES_STRUCT_STAT''@/$(GNULIB_OVERRIDES_STRUCT_STAT)/g' \
+-	      -e 's/@''GNULIB_MDA_CHMOD''@/$(GNULIB_MDA_CHMOD)/g' \
+-	      -e 's/@''GNULIB_MDA_MKDIR''@/$(GNULIB_MDA_MKDIR)/g' \
+-	      -e 's/@''GNULIB_MDA_UMASK''@/$(GNULIB_MDA_UMASK)/g' \
++	      -e 's/@''GNULIB_FCHMODAT''@/$(GL_GNULIB_FCHMODAT)/g' \
++	      -e 's/@''GNULIB_FSTAT''@/$(GL_GNULIB_FSTAT)/g' \
++	      -e 's/@''GNULIB_FSTATAT''@/$(GL_GNULIB_FSTATAT)/g' \
++	      -e 's/@''GNULIB_FUTIMENS''@/$(GL_GNULIB_FUTIMENS)/g' \
++	      -e 's/@''GNULIB_GETUMASK''@/$(GL_GNULIB_GETUMASK)/g' \
++	      -e 's/@''GNULIB_LCHMOD''@/$(GL_GNULIB_LCHMOD)/g' \
++	      -e 's/@''GNULIB_LSTAT''@/$(GL_GNULIB_LSTAT)/g' \
++	      -e 's/@''GNULIB_MKDIR''@/$(GL_GNULIB_MKDIR)/g' \
++	      -e 's/@''GNULIB_MKDIRAT''@/$(GL_GNULIB_MKDIRAT)/g' \
++	      -e 's/@''GNULIB_MKFIFO''@/$(GL_GNULIB_MKFIFO)/g' \
++	      -e 's/@''GNULIB_MKFIFOAT''@/$(GL_GNULIB_MKFIFOAT)/g' \
++	      -e 's/@''GNULIB_MKNOD''@/$(GL_GNULIB_MKNOD)/g' \
++	      -e 's/@''GNULIB_MKNODAT''@/$(GL_GNULIB_MKNODAT)/g' \
++	      -e 's/@''GNULIB_STAT''@/$(GL_GNULIB_STAT)/g' \
++	      -e 's/@''GNULIB_UTIMENSAT''@/$(GL_GNULIB_UTIMENSAT)/g' \
++	      -e 's/@''GNULIB_OVERRIDES_STRUCT_STAT''@/$(GL_GNULIB_OVERRIDES_STRUCT_STAT)/g' \
++	      -e 's/@''GNULIB_MDA_CHMOD''@/$(GL_GNULIB_MDA_CHMOD)/g' \
++	      -e 's/@''GNULIB_MDA_MKDIR''@/$(GL_GNULIB_MDA_MKDIR)/g' \
++	      -e 's/@''GNULIB_MDA_UMASK''@/$(GL_GNULIB_MDA_UMASK)/g' \
+ 	      -e 's|@''HAVE_FCHMODAT''@|$(HAVE_FCHMODAT)|g' \
+ 	      -e 's|@''HAVE_FSTATAT''@|$(HAVE_FSTATAT)|g' \
+ 	      -e 's|@''HAVE_FUTIMENS''@|$(HAVE_FUTIMENS)|g' \
+@@ -1744,18 +1860,18 @@ time.h: time.in.h $(top_builddir)/config
+ 	      -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \
+ 	      -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \
+ 	      -e 's|@''NEXT_TIME_H''@|$(NEXT_TIME_H)|g' \
+-	      -e 's/@''GNULIB_CTIME''@/$(GNULIB_CTIME)/g' \
+-	      -e 's/@''GNULIB_LOCALTIME''@/$(GNULIB_LOCALTIME)/g' \
+-	      -e 's/@''GNULIB_MKTIME''@/$(GNULIB_MKTIME)/g' \
+-	      -e 's/@''GNULIB_NANOSLEEP''@/$(GNULIB_NANOSLEEP)/g' \
+-	      -e 's/@''GNULIB_STRFTIME''@/$(GNULIB_STRFTIME)/g' \
+-	      -e 's/@''GNULIB_STRPTIME''@/$(GNULIB_STRPTIME)/g' \
+-	      -e 's/@''GNULIB_TIMEGM''@/$(GNULIB_TIMEGM)/g' \
+-	      -e 's/@''GNULIB_TIMESPEC_GET''@/$(GNULIB_TIMESPEC_GET)/g' \
+-	      -e 's/@''GNULIB_TIME_R''@/$(GNULIB_TIME_R)/g' \
+-	      -e 's/@''GNULIB_TIME_RZ''@/$(GNULIB_TIME_RZ)/g' \
+-	      -e 's/@''GNULIB_TZSET''@/$(GNULIB_TZSET)/g' \
+-	      -e 's/@''GNULIB_MDA_TZSET''@/$(GNULIB_MDA_TZSET)/g' \
++	      -e 's/@''GNULIB_CTIME''@/$(GL_GNULIB_CTIME)/g' \
++	      -e 's/@''GNULIB_LOCALTIME''@/$(GL_GNULIB_LOCALTIME)/g' \
++	      -e 's/@''GNULIB_MKTIME''@/$(GL_GNULIB_MKTIME)/g' \
++	      -e 's/@''GNULIB_NANOSLEEP''@/$(GL_GNULIB_NANOSLEEP)/g' \
++	      -e 's/@''GNULIB_STRFTIME''@/$(GL_GNULIB_STRFTIME)/g' \
++	      -e 's/@''GNULIB_STRPTIME''@/$(GL_GNULIB_STRPTIME)/g' \
++	      -e 's/@''GNULIB_TIMEGM''@/$(GL_GNULIB_TIMEGM)/g' \
++	      -e 's/@''GNULIB_TIMESPEC_GET''@/$(GL_GNULIB_TIMESPEC_GET)/g' \
++	      -e 's/@''GNULIB_TIME_R''@/$(GL_GNULIB_TIME_R)/g' \
++	      -e 's/@''GNULIB_TIME_RZ''@/$(GL_GNULIB_TIME_RZ)/g' \
++	      -e 's/@''GNULIB_TZSET''@/$(GL_GNULIB_TZSET)/g' \
++	      -e 's/@''GNULIB_MDA_TZSET''@/$(GL_GNULIB_MDA_TZSET)/g' \
+ 	      -e 's|@''HAVE_DECL_LOCALTIME_R''@|$(HAVE_DECL_LOCALTIME_R)|g' \
+ 	      -e 's|@''HAVE_NANOSLEEP''@|$(HAVE_NANOSLEEP)|g' \
+ 	      -e 's|@''HAVE_STRPTIME''@|$(HAVE_STRPTIME)|g' \
+@@ -1806,89 +1922,89 @@ unistd.h: unistd.in.h $(top_builddir)/co
+ 	      -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \
+ 	      -e 's|@''NEXT_UNISTD_H''@|$(NEXT_UNISTD_H)|g' \
+ 	      -e 's|@''WINDOWS_64_BIT_OFF_T''@|$(WINDOWS_64_BIT_OFF_T)|g' \
+-	      -e 's/@''GNULIB_ACCESS''@/$(GNULIB_ACCESS)/g' \
+-	      -e 's/@''GNULIB_CHDIR''@/$(GNULIB_CHDIR)/g' \
+-	      -e 's/@''GNULIB_CHOWN''@/$(GNULIB_CHOWN)/g' \
+-	      -e 's/@''GNULIB_CLOSE''@/$(GNULIB_CLOSE)/g' \
+-	      -e 's/@''GNULIB_COPY_FILE_RANGE''@/$(GNULIB_COPY_FILE_RANGE)/g' \
+-	      -e 's/@''GNULIB_DUP''@/$(GNULIB_DUP)/g' \
+-	      -e 's/@''GNULIB_DUP2''@/$(GNULIB_DUP2)/g' \
+-	      -e 's/@''GNULIB_DUP3''@/$(GNULIB_DUP3)/g' \
+-	      -e 's/@''GNULIB_ENVIRON''@/$(GNULIB_ENVIRON)/g' \
+-	      -e 's/@''GNULIB_EUIDACCESS''@/$(GNULIB_EUIDACCESS)/g' \
+-	      -e 's/@''GNULIB_EXECL''@/$(GNULIB_EXECL)/g' \
+-	      -e 's/@''GNULIB_EXECLE''@/$(GNULIB_EXECLE)/g' \
+-	      -e 's/@''GNULIB_EXECLP''@/$(GNULIB_EXECLP)/g' \
+-	      -e 's/@''GNULIB_EXECV''@/$(GNULIB_EXECV)/g' \
+-	      -e 's/@''GNULIB_EXECVE''@/$(GNULIB_EXECVE)/g' \
+-	      -e 's/@''GNULIB_EXECVP''@/$(GNULIB_EXECVP)/g' \
+-	      -e 's/@''GNULIB_EXECVPE''@/$(GNULIB_EXECVPE)/g' \
+-	      -e 's/@''GNULIB_FACCESSAT''@/$(GNULIB_FACCESSAT)/g' \
+-	      -e 's/@''GNULIB_FCHDIR''@/$(GNULIB_FCHDIR)/g' \
+-	      -e 's/@''GNULIB_FCHOWNAT''@/$(GNULIB_FCHOWNAT)/g' \
+-	      -e 's/@''GNULIB_FDATASYNC''@/$(GNULIB_FDATASYNC)/g' \
+-	      -e 's/@''GNULIB_FSYNC''@/$(GNULIB_FSYNC)/g' \
+-	      -e 's/@''GNULIB_FTRUNCATE''@/$(GNULIB_FTRUNCATE)/g' \
+-	      -e 's/@''GNULIB_GETCWD''@/$(GNULIB_GETCWD)/g' \
+-	      -e 's/@''GNULIB_GETDOMAINNAME''@/$(GNULIB_GETDOMAINNAME)/g' \
+-	      -e 's/@''GNULIB_GETDTABLESIZE''@/$(GNULIB_GETDTABLESIZE)/g' \
+-	      -e 's/@''GNULIB_GETENTROPY''@/$(GNULIB_GETENTROPY)/g' \
+-	      -e 's/@''GNULIB_GETGROUPS''@/$(GNULIB_GETGROUPS)/g' \
+-	      -e 's/@''GNULIB_GETHOSTNAME''@/$(GNULIB_GETHOSTNAME)/g' \
+-	      -e 's/@''GNULIB_GETLOGIN''@/$(GNULIB_GETLOGIN)/g' \
+-	      -e 's/@''GNULIB_GETLOGIN_R''@/$(GNULIB_GETLOGIN_R)/g' \
+-	      -e 's/@''GNULIB_GETOPT_POSIX''@/$(GNULIB_GETOPT_POSIX)/g' \
+-	      -e 's/@''GNULIB_GETPAGESIZE''@/$(GNULIB_GETPAGESIZE)/g' \
+-	      -e 's/@''GNULIB_GETPASS''@/$(GNULIB_GETPASS)/g' \
+-	      -e 's/@''GNULIB_GETUSERSHELL''@/$(GNULIB_GETUSERSHELL)/g' \
+-	      -e 's/@''GNULIB_GROUP_MEMBER''@/$(GNULIB_GROUP_MEMBER)/g' \
+-	      -e 's/@''GNULIB_ISATTY''@/$(GNULIB_ISATTY)/g' \
+-	      -e 's/@''GNULIB_LCHOWN''@/$(GNULIB_LCHOWN)/g' \
+-	      -e 's/@''GNULIB_LINK''@/$(GNULIB_LINK)/g' \
+-	      -e 's/@''GNULIB_LINKAT''@/$(GNULIB_LINKAT)/g' \
+-	      -e 's/@''GNULIB_LSEEK''@/$(GNULIB_LSEEK)/g' \
+-	      -e 's/@''GNULIB_PIPE''@/$(GNULIB_PIPE)/g' \
+-	      -e 's/@''GNULIB_PIPE2''@/$(GNULIB_PIPE2)/g' \
+-	      -e 's/@''GNULIB_PREAD''@/$(GNULIB_PREAD)/g' \
+-	      -e 's/@''GNULIB_PWRITE''@/$(GNULIB_PWRITE)/g' \
+-	      -e 's/@''GNULIB_READ''@/$(GNULIB_READ)/g' \
+-	      -e 's/@''GNULIB_READLINK''@/$(GNULIB_READLINK)/g' \
+-	      -e 's/@''GNULIB_READLINKAT''@/$(GNULIB_READLINKAT)/g' \
+-	      -e 's/@''GNULIB_RMDIR''@/$(GNULIB_RMDIR)/g' \
+-	      -e 's/@''GNULIB_SETHOSTNAME''@/$(GNULIB_SETHOSTNAME)/g' \
+-	      -e 's/@''GNULIB_SLEEP''@/$(GNULIB_SLEEP)/g' \
+-	      -e 's/@''GNULIB_SYMLINK''@/$(GNULIB_SYMLINK)/g' \
+-	      -e 's/@''GNULIB_SYMLINKAT''@/$(GNULIB_SYMLINKAT)/g' \
+-	      -e 's/@''GNULIB_TRUNCATE''@/$(GNULIB_TRUNCATE)/g' \
+-	      -e 's/@''GNULIB_TTYNAME_R''@/$(GNULIB_TTYNAME_R)/g' \
+-	      -e 's/@''GNULIB_UNISTD_H_GETOPT''@/0$(GNULIB_GL_UNISTD_H_GETOPT)/g' \
+-	      -e 's/@''GNULIB_UNISTD_H_NONBLOCKING''@/$(GNULIB_UNISTD_H_NONBLOCKING)/g' \
+-	      -e 's/@''GNULIB_UNISTD_H_SIGPIPE''@/$(GNULIB_UNISTD_H_SIGPIPE)/g' \
+-	      -e 's/@''GNULIB_UNLINK''@/$(GNULIB_UNLINK)/g' \
+-	      -e 's/@''GNULIB_UNLINKAT''@/$(GNULIB_UNLINKAT)/g' \
+-	      -e 's/@''GNULIB_USLEEP''@/$(GNULIB_USLEEP)/g' \
+-	      -e 's/@''GNULIB_WRITE''@/$(GNULIB_WRITE)/g' \
+-	      -e 's/@''GNULIB_MDA_ACCESS''@/$(GNULIB_MDA_ACCESS)/g' \
+-	      -e 's/@''GNULIB_MDA_CHDIR''@/$(GNULIB_MDA_CHDIR)/g' \
+-	      -e 's/@''GNULIB_MDA_CLOSE''@/$(GNULIB_MDA_CLOSE)/g' \
+-	      -e 's/@''GNULIB_MDA_DUP''@/$(GNULIB_MDA_DUP)/g' \
+-	      -e 's/@''GNULIB_MDA_DUP2''@/$(GNULIB_MDA_DUP2)/g' \
+-	      -e 's/@''GNULIB_MDA_EXECL''@/$(GNULIB_MDA_EXECL)/g' \
+-	      -e 's/@''GNULIB_MDA_EXECLE''@/$(GNULIB_MDA_EXECLE)/g' \
+-	      -e 's/@''GNULIB_MDA_EXECLP''@/$(GNULIB_MDA_EXECLP)/g' \
+-	      -e 's/@''GNULIB_MDA_EXECV''@/$(GNULIB_MDA_EXECV)/g' \
+-	      -e 's/@''GNULIB_MDA_EXECVE''@/$(GNULIB_MDA_EXECVE)/g' \
+-	      -e 's/@''GNULIB_MDA_EXECVP''@/$(GNULIB_MDA_EXECVP)/g' \
+-	      -e 's/@''GNULIB_MDA_EXECVPE''@/$(GNULIB_MDA_EXECVPE)/g' \
+-	      -e 's/@''GNULIB_MDA_GETCWD''@/$(GNULIB_MDA_GETCWD)/g' \
+-	      -e 's/@''GNULIB_MDA_GETPID''@/$(GNULIB_MDA_GETPID)/g' \
+-	      -e 's/@''GNULIB_MDA_ISATTY''@/$(GNULIB_MDA_ISATTY)/g' \
+-	      -e 's/@''GNULIB_MDA_LSEEK''@/$(GNULIB_MDA_LSEEK)/g' \
+-	      -e 's/@''GNULIB_MDA_READ''@/$(GNULIB_MDA_READ)/g' \
+-	      -e 's/@''GNULIB_MDA_RMDIR''@/$(GNULIB_MDA_RMDIR)/g' \
+-	      -e 's/@''GNULIB_MDA_SWAB''@/$(GNULIB_MDA_SWAB)/g' \
+-	      -e 's/@''GNULIB_MDA_UNLINK''@/$(GNULIB_MDA_UNLINK)/g' \
+-	      -e 's/@''GNULIB_MDA_WRITE''@/$(GNULIB_MDA_WRITE)/g' \
++	      -e 's/@''GNULIB_ACCESS''@/$(GL_GNULIB_ACCESS)/g' \
++	      -e 's/@''GNULIB_CHDIR''@/$(GL_GNULIB_CHDIR)/g' \
++	      -e 's/@''GNULIB_CHOWN''@/$(GL_GNULIB_CHOWN)/g' \
++	      -e 's/@''GNULIB_CLOSE''@/$(GL_GNULIB_CLOSE)/g' \
++	      -e 's/@''GNULIB_COPY_FILE_RANGE''@/$(GL_GNULIB_COPY_FILE_RANGE)/g' \
++	      -e 's/@''GNULIB_DUP''@/$(GL_GNULIB_DUP)/g' \
++	      -e 's/@''GNULIB_DUP2''@/$(GL_GNULIB_DUP2)/g' \
++	      -e 's/@''GNULIB_DUP3''@/$(GL_GNULIB_DUP3)/g' \
++	      -e 's/@''GNULIB_ENVIRON''@/$(GL_GNULIB_ENVIRON)/g' \
++	      -e 's/@''GNULIB_EUIDACCESS''@/$(GL_GNULIB_EUIDACCESS)/g' \
++	      -e 's/@''GNULIB_EXECL''@/$(GL_GNULIB_EXECL)/g' \
++	      -e 's/@''GNULIB_EXECLE''@/$(GL_GNULIB_EXECLE)/g' \
++	      -e 's/@''GNULIB_EXECLP''@/$(GL_GNULIB_EXECLP)/g' \
++	      -e 's/@''GNULIB_EXECV''@/$(GL_GNULIB_EXECV)/g' \
++	      -e 's/@''GNULIB_EXECVE''@/$(GL_GNULIB_EXECVE)/g' \
++	      -e 's/@''GNULIB_EXECVP''@/$(GL_GNULIB_EXECVP)/g' \
++	      -e 's/@''GNULIB_EXECVPE''@/$(GL_GNULIB_EXECVPE)/g' \
++	      -e 's/@''GNULIB_FACCESSAT''@/$(GL_GNULIB_FACCESSAT)/g' \
++	      -e 's/@''GNULIB_FCHDIR''@/$(GL_GNULIB_FCHDIR)/g' \
++	      -e 's/@''GNULIB_FCHOWNAT''@/$(GL_GNULIB_FCHOWNAT)/g' \
++	      -e 's/@''GNULIB_FDATASYNC''@/$(GL_GNULIB_FDATASYNC)/g' \
++	      -e 's/@''GNULIB_FSYNC''@/$(GL_GNULIB_FSYNC)/g' \
++	      -e 's/@''GNULIB_FTRUNCATE''@/$(GL_GNULIB_FTRUNCATE)/g' \
++	      -e 's/@''GNULIB_GETCWD''@/$(GL_GNULIB_GETCWD)/g' \
++	      -e 's/@''GNULIB_GETDOMAINNAME''@/$(GL_GNULIB_GETDOMAINNAME)/g' \
++	      -e 's/@''GNULIB_GETDTABLESIZE''@/$(GL_GNULIB_GETDTABLESIZE)/g' \
++	      -e 's/@''GNULIB_GETENTROPY''@/$(GL_GNULIB_GETENTROPY)/g' \
++	      -e 's/@''GNULIB_GETGROUPS''@/$(GL_GNULIB_GETGROUPS)/g' \
++	      -e 's/@''GNULIB_GETHOSTNAME''@/$(GL_GNULIB_GETHOSTNAME)/g' \
++	      -e 's/@''GNULIB_GETLOGIN''@/$(GL_GNULIB_GETLOGIN)/g' \
++	      -e 's/@''GNULIB_GETLOGIN_R''@/$(GL_GNULIB_GETLOGIN_R)/g' \
++	      -e 's/@''GNULIB_GETOPT_POSIX''@/$(GL_GNULIB_GETOPT_POSIX)/g' \
++	      -e 's/@''GNULIB_GETPAGESIZE''@/$(GL_GNULIB_GETPAGESIZE)/g' \
++	      -e 's/@''GNULIB_GETPASS''@/$(GL_GNULIB_GETPASS)/g' \
++	      -e 's/@''GNULIB_GETUSERSHELL''@/$(GL_GNULIB_GETUSERSHELL)/g' \
++	      -e 's/@''GNULIB_GROUP_MEMBER''@/$(GL_GNULIB_GROUP_MEMBER)/g' \
++	      -e 's/@''GNULIB_ISATTY''@/$(GL_GNULIB_ISATTY)/g' \
++	      -e 's/@''GNULIB_LCHOWN''@/$(GL_GNULIB_LCHOWN)/g' \
++	      -e 's/@''GNULIB_LINK''@/$(GL_GNULIB_LINK)/g' \
++	      -e 's/@''GNULIB_LINKAT''@/$(GL_GNULIB_LINKAT)/g' \
++	      -e 's/@''GNULIB_LSEEK''@/$(GL_GNULIB_LSEEK)/g' \
++	      -e 's/@''GNULIB_PIPE''@/$(GL_GNULIB_PIPE)/g' \
++	      -e 's/@''GNULIB_PIPE2''@/$(GL_GNULIB_PIPE2)/g' \
++	      -e 's/@''GNULIB_PREAD''@/$(GL_GNULIB_PREAD)/g' \
++	      -e 's/@''GNULIB_PWRITE''@/$(GL_GNULIB_PWRITE)/g' \
++	      -e 's/@''GNULIB_READ''@/$(GL_GNULIB_READ)/g' \
++	      -e 's/@''GNULIB_READLINK''@/$(GL_GNULIB_READLINK)/g' \
++	      -e 's/@''GNULIB_READLINKAT''@/$(GL_GNULIB_READLINKAT)/g' \
++	      -e 's/@''GNULIB_RMDIR''@/$(GL_GNULIB_RMDIR)/g' \
++	      -e 's/@''GNULIB_SETHOSTNAME''@/$(GL_GNULIB_SETHOSTNAME)/g' \
++	      -e 's/@''GNULIB_SLEEP''@/$(GL_GNULIB_SLEEP)/g' \
++	      -e 's/@''GNULIB_SYMLINK''@/$(GL_GNULIB_SYMLINK)/g' \
++	      -e 's/@''GNULIB_SYMLINKAT''@/$(GL_GNULIB_SYMLINKAT)/g' \
++	      -e 's/@''GNULIB_TRUNCATE''@/$(GL_GNULIB_TRUNCATE)/g' \
++	      -e 's/@''GNULIB_TTYNAME_R''@/$(GL_GNULIB_TTYNAME_R)/g' \
++	      -e 's/@''GNULIB_UNISTD_H_GETOPT''@/0$(GL_GNULIB_UNISTD_H_GETOPT)/g' \
++	      -e 's/@''GNULIB_UNISTD_H_NONBLOCKING''@/$(GL_GNULIB_UNISTD_H_NONBLOCKING)/g' \
++	      -e 's/@''GNULIB_UNISTD_H_SIGPIPE''@/$(GL_GNULIB_UNISTD_H_SIGPIPE)/g' \
++	      -e 's/@''GNULIB_UNLINK''@/$(GL_GNULIB_UNLINK)/g' \
++	      -e 's/@''GNULIB_UNLINKAT''@/$(GL_GNULIB_UNLINKAT)/g' \
++	      -e 's/@''GNULIB_USLEEP''@/$(GL_GNULIB_USLEEP)/g' \
++	      -e 's/@''GNULIB_WRITE''@/$(GL_GNULIB_WRITE)/g' \
++	      -e 's/@''GNULIB_MDA_ACCESS''@/$(GL_GNULIB_MDA_ACCESS)/g' \
++	      -e 's/@''GNULIB_MDA_CHDIR''@/$(GL_GNULIB_MDA_CHDIR)/g' \
++	      -e 's/@''GNULIB_MDA_CLOSE''@/$(GL_GNULIB_MDA_CLOSE)/g' \
++	      -e 's/@''GNULIB_MDA_DUP''@/$(GL_GNULIB_MDA_DUP)/g' \
++	      -e 's/@''GNULIB_MDA_DUP2''@/$(GL_GNULIB_MDA_DUP2)/g' \
++	      -e 's/@''GNULIB_MDA_EXECL''@/$(GL_GNULIB_MDA_EXECL)/g' \
++	      -e 's/@''GNULIB_MDA_EXECLE''@/$(GL_GNULIB_MDA_EXECLE)/g' \
++	      -e 's/@''GNULIB_MDA_EXECLP''@/$(GL_GNULIB_MDA_EXECLP)/g' \
++	      -e 's/@''GNULIB_MDA_EXECV''@/$(GL_GNULIB_MDA_EXECV)/g' \
++	      -e 's/@''GNULIB_MDA_EXECVE''@/$(GL_GNULIB_MDA_EXECVE)/g' \
++	      -e 's/@''GNULIB_MDA_EXECVP''@/$(GL_GNULIB_MDA_EXECVP)/g' \
++	      -e 's/@''GNULIB_MDA_EXECVPE''@/$(GL_GNULIB_MDA_EXECVPE)/g' \
++	      -e 's/@''GNULIB_MDA_GETCWD''@/$(GL_GNULIB_MDA_GETCWD)/g' \
++	      -e 's/@''GNULIB_MDA_GETPID''@/$(GL_GNULIB_MDA_GETPID)/g' \
++	      -e 's/@''GNULIB_MDA_ISATTY''@/$(GL_GNULIB_MDA_ISATTY)/g' \
++	      -e 's/@''GNULIB_MDA_LSEEK''@/$(GL_GNULIB_MDA_LSEEK)/g' \
++	      -e 's/@''GNULIB_MDA_READ''@/$(GL_GNULIB_MDA_READ)/g' \
++	      -e 's/@''GNULIB_MDA_RMDIR''@/$(GL_GNULIB_MDA_RMDIR)/g' \
++	      -e 's/@''GNULIB_MDA_SWAB''@/$(GL_GNULIB_MDA_SWAB)/g' \
++	      -e 's/@''GNULIB_MDA_UNLINK''@/$(GL_GNULIB_MDA_UNLINK)/g' \
++	      -e 's/@''GNULIB_MDA_WRITE''@/$(GL_GNULIB_MDA_WRITE)/g' \
+ 	      < $(srcdir)/unistd.in.h | \
+ 	  sed -e 's|@''HAVE_CHOWN''@|$(HAVE_CHOWN)|g' \
+ 	      -e 's|@''HAVE_COPY_FILE_RANGE''@|$(HAVE_COPY_FILE_RANGE)|g' \
+@@ -2080,49 +2196,49 @@ wchar.h: wchar.in.h $(top_builddir)/conf
+ 	      -e 's|@''NEXT_WCHAR_H''@|$(NEXT_WCHAR_H)|g' \
+ 	      -e 's|@''HAVE_WCHAR_H''@|$(HAVE_WCHAR_H)|g' \
+ 	      -e 's/@''HAVE_CRTDEFS_H''@/$(HAVE_CRTDEFS_H)/g' \
+-	      -e 's/@''GNULIB_OVERRIDES_WINT_T''@/$(GNULIB_OVERRIDES_WINT_T)/g' \
+-	      -e 's/@''GNULIB_BTOWC''@/$(GNULIB_BTOWC)/g' \
+-	      -e 's/@''GNULIB_WCTOB''@/$(GNULIB_WCTOB)/g' \
+-	      -e 's/@''GNULIB_MBSINIT''@/$(GNULIB_MBSINIT)/g' \
+-	      -e 's/@''GNULIB_MBRTOWC''@/$(GNULIB_MBRTOWC)/g' \
+-	      -e 's/@''GNULIB_MBRLEN''@/$(GNULIB_MBRLEN)/g' \
+-	      -e 's/@''GNULIB_MBSRTOWCS''@/$(GNULIB_MBSRTOWCS)/g' \
+-	      -e 's/@''GNULIB_MBSNRTOWCS''@/$(GNULIB_MBSNRTOWCS)/g' \
+-	      -e 's/@''GNULIB_WCRTOMB''@/$(GNULIB_WCRTOMB)/g' \
+-	      -e 's/@''GNULIB_WCSRTOMBS''@/$(GNULIB_WCSRTOMBS)/g' \
+-	      -e 's/@''GNULIB_WCSNRTOMBS''@/$(GNULIB_WCSNRTOMBS)/g' \
+-	      -e 's/@''GNULIB_WCWIDTH''@/$(GNULIB_WCWIDTH)/g' \
+-	      -e 's/@''GNULIB_WMEMCHR''@/$(GNULIB_WMEMCHR)/g' \
+-	      -e 's/@''GNULIB_WMEMCMP''@/$(GNULIB_WMEMCMP)/g' \
+-	      -e 's/@''GNULIB_WMEMCPY''@/$(GNULIB_WMEMCPY)/g' \
+-	      -e 's/@''GNULIB_WMEMMOVE''@/$(GNULIB_WMEMMOVE)/g' \
+-	      -e 's/@''GNULIB_WMEMPCPY''@/$(GNULIB_WMEMPCPY)/g' \
+-	      -e 's/@''GNULIB_WMEMSET''@/$(GNULIB_WMEMSET)/g' \
+-	      -e 's/@''GNULIB_WCSLEN''@/$(GNULIB_WCSLEN)/g' \
+-	      -e 's/@''GNULIB_WCSNLEN''@/$(GNULIB_WCSNLEN)/g' \
+-	      -e 's/@''GNULIB_WCSCPY''@/$(GNULIB_WCSCPY)/g' \
+-	      -e 's/@''GNULIB_WCPCPY''@/$(GNULIB_WCPCPY)/g' \
+-	      -e 's/@''GNULIB_WCSNCPY''@/$(GNULIB_WCSNCPY)/g' \
+-	      -e 's/@''GNULIB_WCPNCPY''@/$(GNULIB_WCPNCPY)/g' \
+-	      -e 's/@''GNULIB_WCSCAT''@/$(GNULIB_WCSCAT)/g' \
+-	      -e 's/@''GNULIB_WCSNCAT''@/$(GNULIB_WCSNCAT)/g' \
+-	      -e 's/@''GNULIB_WCSCMP''@/$(GNULIB_WCSCMP)/g' \
+-	      -e 's/@''GNULIB_WCSNCMP''@/$(GNULIB_WCSNCMP)/g' \
+-	      -e 's/@''GNULIB_WCSCASECMP''@/$(GNULIB_WCSCASECMP)/g' \
+-	      -e 's/@''GNULIB_WCSNCASECMP''@/$(GNULIB_WCSNCASECMP)/g' \
+-	      -e 's/@''GNULIB_WCSCOLL''@/$(GNULIB_WCSCOLL)/g' \
+-	      -e 's/@''GNULIB_WCSXFRM''@/$(GNULIB_WCSXFRM)/g' \
+-	      -e 's/@''GNULIB_WCSDUP''@/$(GNULIB_WCSDUP)/g' \
+-	      -e 's/@''GNULIB_WCSCHR''@/$(GNULIB_WCSCHR)/g' \
+-	      -e 's/@''GNULIB_WCSRCHR''@/$(GNULIB_WCSRCHR)/g' \
+-	      -e 's/@''GNULIB_WCSCSPN''@/$(GNULIB_WCSCSPN)/g' \
+-	      -e 's/@''GNULIB_WCSSPN''@/$(GNULIB_WCSSPN)/g' \
+-	      -e 's/@''GNULIB_WCSPBRK''@/$(GNULIB_WCSPBRK)/g' \
+-	      -e 's/@''GNULIB_WCSSTR''@/$(GNULIB_WCSSTR)/g' \
+-	      -e 's/@''GNULIB_WCSTOK''@/$(GNULIB_WCSTOK)/g' \
+-	      -e 's/@''GNULIB_WCSWIDTH''@/$(GNULIB_WCSWIDTH)/g' \
+-	      -e 's/@''GNULIB_WCSFTIME''@/$(GNULIB_WCSFTIME)/g' \
+-	      -e 's/@''GNULIB_MDA_WCSDUP''@/$(GNULIB_MDA_WCSDUP)/g' \
++	      -e 's/@''GNULIBHEADERS_OVERRIDE_WINT_T''@/$(GNULIBHEADERS_OVERRIDE_WINT_T)/g' \
++	      -e 's/@''GNULIB_BTOWC''@/$(GL_GNULIB_BTOWC)/g' \
++	      -e 's/@''GNULIB_WCTOB''@/$(GL_GNULIB_WCTOB)/g' \
++	      -e 's/@''GNULIB_MBSINIT''@/$(GL_GNULIB_MBSINIT)/g' \
++	      -e 's/@''GNULIB_MBRTOWC''@/$(GL_GNULIB_MBRTOWC)/g' \
++	      -e 's/@''GNULIB_MBRLEN''@/$(GL_GNULIB_MBRLEN)/g' \
++	      -e 's/@''GNULIB_MBSRTOWCS''@/$(GL_GNULIB_MBSRTOWCS)/g' \
++	      -e 's/@''GNULIB_MBSNRTOWCS''@/$(GL_GNULIB_MBSNRTOWCS)/g' \
++	      -e 's/@''GNULIB_WCRTOMB''@/$(GL_GNULIB_WCRTOMB)/g' \
++	      -e 's/@''GNULIB_WCSRTOMBS''@/$(GL_GNULIB_WCSRTOMBS)/g' \
++	      -e 's/@''GNULIB_WCSNRTOMBS''@/$(GL_GNULIB_WCSNRTOMBS)/g' \
++	      -e 's/@''GNULIB_WCWIDTH''@/$(GL_GNULIB_WCWIDTH)/g' \
++	      -e 's/@''GNULIB_WMEMCHR''@/$(GL_GNULIB_WMEMCHR)/g' \
++	      -e 's/@''GNULIB_WMEMCMP''@/$(GL_GNULIB_WMEMCMP)/g' \
++	      -e 's/@''GNULIB_WMEMCPY''@/$(GL_GNULIB_WMEMCPY)/g' \
++	      -e 's/@''GNULIB_WMEMMOVE''@/$(GL_GNULIB_WMEMMOVE)/g' \
++	      -e 's/@''GNULIB_WMEMPCPY''@/$(GL_GNULIB_WMEMPCPY)/g' \
++	      -e 's/@''GNULIB_WMEMSET''@/$(GL_GNULIB_WMEMSET)/g' \
++	      -e 's/@''GNULIB_WCSLEN''@/$(GL_GNULIB_WCSLEN)/g' \
++	      -e 's/@''GNULIB_WCSNLEN''@/$(GL_GNULIB_WCSNLEN)/g' \
++	      -e 's/@''GNULIB_WCSCPY''@/$(GL_GNULIB_WCSCPY)/g' \
++	      -e 's/@''GNULIB_WCPCPY''@/$(GL_GNULIB_WCPCPY)/g' \
++	      -e 's/@''GNULIB_WCSNCPY''@/$(GL_GNULIB_WCSNCPY)/g' \
++	      -e 's/@''GNULIB_WCPNCPY''@/$(GL_GNULIB_WCPNCPY)/g' \
++	      -e 's/@''GNULIB_WCSCAT''@/$(GL_GNULIB_WCSCAT)/g' \
++	      -e 's/@''GNULIB_WCSNCAT''@/$(GL_GNULIB_WCSNCAT)/g' \
++	      -e 's/@''GNULIB_WCSCMP''@/$(GL_GNULIB_WCSCMP)/g' \
++	      -e 's/@''GNULIB_WCSNCMP''@/$(GL_GNULIB_WCSNCMP)/g' \
++	      -e 's/@''GNULIB_WCSCASECMP''@/$(GL_GNULIB_WCSCASECMP)/g' \
++	      -e 's/@''GNULIB_WCSNCASECMP''@/$(GL_GNULIB_WCSNCASECMP)/g' \
++	      -e 's/@''GNULIB_WCSCOLL''@/$(GL_GNULIB_WCSCOLL)/g' \
++	      -e 's/@''GNULIB_WCSXFRM''@/$(GL_GNULIB_WCSXFRM)/g' \
++	      -e 's/@''GNULIB_WCSDUP''@/$(GL_GNULIB_WCSDUP)/g' \
++	      -e 's/@''GNULIB_WCSCHR''@/$(GL_GNULIB_WCSCHR)/g' \
++	      -e 's/@''GNULIB_WCSRCHR''@/$(GL_GNULIB_WCSRCHR)/g' \
++	      -e 's/@''GNULIB_WCSCSPN''@/$(GL_GNULIB_WCSCSPN)/g' \
++	      -e 's/@''GNULIB_WCSSPN''@/$(GL_GNULIB_WCSSPN)/g' \
++	      -e 's/@''GNULIB_WCSPBRK''@/$(GL_GNULIB_WCSPBRK)/g' \
++	      -e 's/@''GNULIB_WCSSTR''@/$(GL_GNULIB_WCSSTR)/g' \
++	      -e 's/@''GNULIB_WCSTOK''@/$(GL_GNULIB_WCSTOK)/g' \
++	      -e 's/@''GNULIB_WCSWIDTH''@/$(GL_GNULIB_WCSWIDTH)/g' \
++	      -e 's/@''GNULIB_WCSFTIME''@/$(GL_GNULIB_WCSFTIME)/g' \
++	      -e 's/@''GNULIB_MDA_WCSDUP''@/$(GL_GNULIB_MDA_WCSDUP)/g' \
+ 	      < $(srcdir)/wchar.in.h | \
+ 	  sed -e 's|@''HAVE_WINT_T''@|$(HAVE_WINT_T)|g' \
+ 	      -e 's|@''HAVE_BTOWC''@|$(HAVE_BTOWC)|g' \
+@@ -2222,14 +2338,14 @@ wctype.h: wctype.in.h $(top_builddir)/co
+ 	      -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \
+ 	      -e 's|@''NEXT_WCTYPE_H''@|$(NEXT_WCTYPE_H)|g' \
+ 	      -e 's/@''HAVE_CRTDEFS_H''@/$(HAVE_CRTDEFS_H)/g' \
+-	      -e 's/@''GNULIB_OVERRIDES_WINT_T''@/$(GNULIB_OVERRIDES_WINT_T)/g' \
+-	      -e 's/@''GNULIB_ISWBLANK''@/$(GNULIB_ISWBLANK)/g' \
+-	      -e 's/@''GNULIB_ISWDIGIT''@/$(GNULIB_ISWDIGIT)/g' \
+-	      -e 's/@''GNULIB_ISWXDIGIT''@/$(GNULIB_ISWXDIGIT)/g' \
+-	      -e 's/@''GNULIB_WCTYPE''@/$(GNULIB_WCTYPE)/g' \
+-	      -e 's/@''GNULIB_ISWCTYPE''@/$(GNULIB_ISWCTYPE)/g' \
+-	      -e 's/@''GNULIB_WCTRANS''@/$(GNULIB_WCTRANS)/g' \
+-	      -e 's/@''GNULIB_TOWCTRANS''@/$(GNULIB_TOWCTRANS)/g' \
++	      -e 's/@''GNULIBHEADERS_OVERRIDE_WINT_T''@/$(GNULIBHEADERS_OVERRIDE_WINT_T)/g' \
++	      -e 's/@''GNULIB_ISWBLANK''@/$(GL_GNULIB_ISWBLANK)/g' \
++	      -e 's/@''GNULIB_ISWDIGIT''@/$(GL_GNULIB_ISWDIGIT)/g' \
++	      -e 's/@''GNULIB_ISWXDIGIT''@/$(GL_GNULIB_ISWXDIGIT)/g' \
++	      -e 's/@''GNULIB_WCTYPE''@/$(GL_GNULIB_WCTYPE)/g' \
++	      -e 's/@''GNULIB_ISWCTYPE''@/$(GL_GNULIB_ISWCTYPE)/g' \
++	      -e 's/@''GNULIB_WCTRANS''@/$(GL_GNULIB_WCTRANS)/g' \
++	      -e 's/@''GNULIB_TOWCTRANS''@/$(GL_GNULIB_TOWCTRANS)/g' \
+ 	      -e 's/@''HAVE_ISWBLANK''@/$(HAVE_ISWBLANK)/g' \
+ 	      -e 's/@''HAVE_ISWCNTRL''@/$(HAVE_ISWCNTRL)/g' \
+ 	      -e 's/@''HAVE_WCTYPE_T''@/$(HAVE_WCTYPE_T)/g' \
+--- a/gnulib/lib/_Noreturn.h
++++ b/gnulib/lib/_Noreturn.h
+@@ -2,16 +2,16 @@
+    Copyright (C) 2011-2021 Free Software Foundation, Inc.
+ 
+    This program is free software: you can redistribute it and/or modify it
+-   under the terms of the GNU General Public License as published
+-   by the Free Software Foundation; either version 3 of the License, or
++   under the terms of the GNU Lesser General Public License as published
++   by the Free Software Foundation; either version 2 of the License, or
+    (at your option) any later version.
+ 
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   General Public License for more details.
++   Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #ifndef _Noreturn
+--- a/gnulib/lib/alloca.in.h
++++ b/gnulib/lib/alloca.in.h
+@@ -3,20 +3,18 @@
+    Copyright (C) 1995, 1999, 2001-2004, 2006-2021 Free Software Foundation,
+    Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify it
+-   under the terms of the GNU General Public License as published
+-   by the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   General Public License for more details.
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public
+-   License along with this program; if not, see
+-   <https://www.gnu.org/licenses/>.
+-  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Avoid using the symbol _ALLOCA_H here, as Bison assumes _ALLOCA_H
+    means there is a real alloca function.  */
+--- a/gnulib/lib/arg-nonnull.h
++++ b/gnulib/lib/arg-nonnull.h
+@@ -2,16 +2,16 @@
+    Copyright (C) 2009-2021 Free Software Foundation, Inc.
+ 
+    This program is free software: you can redistribute it and/or modify it
+-   under the terms of the GNU General Public License as published
+-   by the Free Software Foundation; either version 3 of the License, or
++   under the terms of the GNU Lesser General Public License as published
++   by the Free Software Foundation; either version 2 of the License, or
+    (at your option) any later version.
+ 
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   General Public License for more details.
++   Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* _GL_ARG_NONNULL((n,...,m)) tells the compiler and static analyzer tools
+--- a/gnulib/lib/argz.c
++++ b/gnulib/lib/argz.c
+@@ -3,18 +3,18 @@
+    Foundation, Inc.
+    This file is part of the GNU C Library.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License along
+-   with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+ 
+--- a/gnulib/lib/argz.in.h
++++ b/gnulib/lib/argz.in.h
+@@ -3,17 +3,17 @@
+    Inc.
+    This file is part of the GNU C Library.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #ifndef _ARGZ_H
+--- a/gnulib/lib/asnprintf.c
++++ b/gnulib/lib/asnprintf.c
+@@ -1,18 +1,18 @@
+ /* Formatted output to strings.
+    Copyright (C) 1999, 2002, 2006, 2009-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License along
+-   with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+ 
+--- a/gnulib/lib/asprintf.c
++++ b/gnulib/lib/asprintf.c
+@@ -2,18 +2,18 @@
+    Copyright (C) 1999, 2002, 2006-2007, 2009-2021 Free Software Foundation,
+    Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License along
+-   with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+ 
+--- a/gnulib/lib/attribute.h
++++ b/gnulib/lib/attribute.h
+@@ -2,17 +2,17 @@
+ 
+    Copyright 2020-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify it
+-   under the terms of the GNU General Public License as published
+-   by the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   General Public License for more details.
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Paul Eggert.  */
+--- a/gnulib/lib/basename-lgpl.c
++++ b/gnulib/lib/basename-lgpl.c
+@@ -3,17 +3,17 @@
+    Copyright (C) 1990, 1998-2001, 2003-2006, 2009-2021 Free Software
+    Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+--- a/gnulib/lib/basename-lgpl.h
++++ b/gnulib/lib/basename-lgpl.h
+@@ -1,20 +1,20 @@
+-/*  Extract the last component (base name) of a file name.
++/* Extract the last component (base name) of a file name.
+ 
+-    Copyright (C) 1998, 2001, 2003-2006, 2009-2021 Free Software Foundation,
+-    Inc.
++   Copyright (C) 1998, 2001, 2003-2006, 2009-2021 Free Software Foundation,
++   Inc.
+ 
+-    This program is free software: you can redistribute it and/or modify
+-    it under the terms of the GNU General Public License as published by
+-    the Free Software Foundation; either version 3 of the License, or
+-    (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-    This program is distributed in the hope that it will be useful,
+-    but WITHOUT ANY WARRANTY; without even the implied warranty of
+-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-    GNU General Public License for more details.
++   This file is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++   GNU Lesser General Public License for more details.
+ 
+-    You should have received a copy of the GNU General Public License
+-    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #ifndef _BASENAME_LGPL_H
+ #define _BASENAME_LGPL_H
+--- a/gnulib/lib/btowc.c
++++ b/gnulib/lib/btowc.c
+@@ -2,17 +2,17 @@
+    Copyright (C) 2008, 2010-2021 Free Software Foundation, Inc.
+    Written by Bruno Haible <bruno@clisp.org>, 2008.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+--- a/gnulib/lib/c++defs.h
++++ b/gnulib/lib/c++defs.h
+@@ -2,16 +2,16 @@
+    Copyright (C) 2010-2021 Free Software Foundation, Inc.
+ 
+    This program is free software: you can redistribute it and/or modify it
+-   under the terms of the GNU General Public License as published
+-   by the Free Software Foundation; either version 3 of the License, or
++   under the terms of the GNU Lesser General Public License as published
++   by the Free Software Foundation; either version 2 of the License, or
+    (at your option) any later version.
+ 
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   General Public License for more details.
++   Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #ifndef _GL_CXXDEFS_H
+--- /dev/null
++++ b/gnulib/lib/calloc.c
+@@ -0,0 +1,55 @@
++/* calloc() function that is glibc compatible.
++   This wrapper function is required at least on Tru64 UNIX 5.1 and mingw.
++   Copyright (C) 2004-2007, 2009-2021 Free Software Foundation, Inc.
++
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
++
++   This file is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++   GNU Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
++
++/* written by Jim Meyering and Bruno Haible */
++
++#include <config.h>
++
++/* Specification.  */
++#include <stdlib.h>
++
++#include <errno.h>
++
++#include "xalloc-oversized.h"
++
++/* Call the system's calloc below.  */
++#undef calloc
++
++/* Allocate and zero-fill an NxS-byte block of memory from the heap,
++   even if N or S is zero.  */
++
++void *
++rpl_calloc (size_t n, size_t s)
++{
++  if (n == 0 || s == 0)
++    n = s = 1;
++
++  if (xalloc_oversized (n, s))
++    {
++      errno = ENOMEM;
++      return NULL;
++    }
++
++  void *result = calloc (n, s);
++
++#if !HAVE_MALLOC_POSIX
++  if (result == NULL)
++    errno = ENOMEM;
++#endif
++
++  return result;
++}
+--- a/gnulib/lib/cdefs.h
++++ b/gnulib/lib/cdefs.h
+@@ -2,16 +2,16 @@
+    This file is part of the GNU C Library.
+ 
+    The GNU C Library is free software; you can redistribute it and/or
+-   modify it under the terms of the GNU General Public
++   modify it under the terms of the GNU Lesser General Public
+    License as published by the Free Software Foundation; either
+-   version 3 of the License, or (at your option) any later version.
++   version 2.1 of the License, or (at your option) any later version.
+ 
+    The GNU C Library is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   General Public License for more details.
++   Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public
++   You should have received a copy of the GNU Lesser General Public
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+@@ -259,10 +259,12 @@
+ # define __attribute_const__ /* Ignore */
+ #endif
+ 
+-#if defined __STDC_VERSION__ && 201710L < __STDC_VERSION__
+-# define __attribute_maybe_unused__ [[__maybe_unused__]]
+-#elif __GNUC_PREREQ (2,7) || __glibc_has_attribute (__unused__)
++#if __GNUC_PREREQ (2,7) || __glibc_has_attribute (__unused__)
+ # define __attribute_maybe_unused__ __attribute__ ((__unused__))
++/* Once the next version of the C standard comes out, we can
++   do something like the following here:
++   #elif defined __STDC_VERSION__ && 202???L <= __STDC_VERSION__
++   # define __attribute_maybe_unused__ [[__maybe_unused__]]   */
+ #else
+ # define __attribute_maybe_unused__ /* Ignore */
+ #endif
+@@ -320,7 +322,9 @@
+ #endif
+ 
+ /* The nonnull function attribute marks pointer parameters that
+-   must not be NULL.  */
++   must not be NULL.  This has the name __nonnull in glibc,
++   and __attribute_nonnull__ in files shared with Gnulib to avoid
++   collision with a different __nonnull in DragonFlyBSD 5.9.  */
+ #ifndef __attribute_nonnull__
+ # if __GNUC_PREREQ (3,3) || __glibc_has_attribute (__nonnull__)
+ #  define __attribute_nonnull__(params) __attribute__ ((__nonnull__ params))
+@@ -485,9 +489,9 @@
+       [!!sizeof (struct { int __error_if_negative: (expr) ? 2 : -1; })]
+ #endif
+ 
+-/* The #ifndef lets Gnulib avoid including these on non-glibc
+-   platforms, where the includes typically do not exist.  */
+-#ifndef __WORDSIZE
++/* Gnulib avoids including these, as they don't work on non-glibc or
++   older glibc platforms.  */
++#ifndef __GNULIB_CDEFS
+ # include <bits/wordsize.h>
+ # include <bits/long-double.h>
+ #endif
+--- a/gnulib/lib/cloexec.c
++++ b/gnulib/lib/cloexec.c
+@@ -2,20 +2,20 @@
+ 
+    Copyright (C) 1991, 2004-2006, 2009-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program.  If not, see <https://www.gnu.org/licenses/>.
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+-   The code is taken from glibc/manual/llio.texi  */
++/* The code is taken from glibc/manual/llio.texi  */
+ 
+ #include <config.h>
+ 
+--- a/gnulib/lib/cloexec.h
++++ b/gnulib/lib/cloexec.h
+@@ -2,20 +2,18 @@
+ 
+    Copyright (C) 2004, 2009-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program.  If not, see <https://www.gnu.org/licenses/>.
+-
+-*/
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <stdbool.h>
+ 
+--- a/gnulib/lib/close.c
++++ b/gnulib/lib/close.c
+@@ -1,17 +1,17 @@
+ /* close replacement.
+    Copyright (C) 2008-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+--- a/gnulib/lib/dup2.c
++++ b/gnulib/lib/dup2.c
+@@ -2,17 +2,17 @@
+ 
+    Copyright (C) 1999, 2004-2007, 2009-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* written by Paul Eggert */
+--- a/gnulib/lib/dynarray.h
++++ b/gnulib/lib/dynarray.h
+@@ -1,17 +1,17 @@
+ /* Type-safe arrays which grow dynamically.
+    Copyright 2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Paul Eggert and Bruno Haible, 2021.  */
+@@ -257,18 +257,22 @@ static DYNARRAY_ELEMENT *
+ 
+ #if defined DYNARRAY_STRUCT || defined DYNARRAY_ELEMENT || defined DYNARRAY_PREFIX
+ 
+-# include <libc-config.h>
++# ifndef _GL_LIKELY
++/* Rely on __builtin_expect, as provided by the module 'builtin-expect'.  */
++#  define _GL_LIKELY(cond) __builtin_expect ((cond), 1)
++#  define _GL_UNLIKELY(cond) __builtin_expect ((cond), 0)
++# endif
+ 
+ /* Define auxiliary structs and declare auxiliary functions, common to all
+    instantiations of dynarray.  */
+-# include <malloc/dynarray.h>
++# include <malloc/dynarray.gl.h>
+ 
+ /* Define the instantiation, specified through
+      DYNARRAY_STRUCT
+      DYNARRAY_ELEMENT
+      DYNARRAY_PREFIX
+    etc.  */
+-# include <malloc/dynarray-skeleton.c>
++# include <malloc/dynarray-skeleton.gl.h>
+ 
+ #else
+ 
+--- a/gnulib/lib/errno.in.h
++++ b/gnulib/lib/errno.in.h
+@@ -2,18 +2,18 @@
+ 
+    Copyright (C) 2008-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #ifndef _@GUARD_PREFIX@_ERRNO_H
+ 
+--- a/gnulib/lib/error.c
++++ b/gnulib/lib/error.c
+@@ -2,17 +2,17 @@
+    Copyright (C) 1990-1998, 2000-2007, 2009-2021 Free Software Foundation, Inc.
+    This file is part of the GNU C Library.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by David MacKenzie <djm@gnu.ai.mit.edu>.  */
+--- a/gnulib/lib/error.h
++++ b/gnulib/lib/error.h
+@@ -3,17 +3,17 @@
+    Inc.
+    This file is part of the GNU C Library.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #ifndef _ERROR_H
+--- a/gnulib/lib/exitfail.c
++++ b/gnulib/lib/exitfail.c
+@@ -2,17 +2,17 @@
+ 
+    Copyright (C) 2002-2003, 2005-2007, 2009-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+--- a/gnulib/lib/exitfail.h
++++ b/gnulib/lib/exitfail.h
+@@ -2,17 +2,17 @@
+ 
+    Copyright (C) 2002, 2009-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ extern int volatile exit_failure;
+--- a/gnulib/lib/fcntl.c
++++ b/gnulib/lib/fcntl.c
+@@ -2,17 +2,17 @@
+ 
+    Copyright (C) 2009-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Eric Blake <ebb9@byu.net>.  */
+--- a/gnulib/lib/fcntl.in.h
++++ b/gnulib/lib/fcntl.in.h
+@@ -2,17 +2,17 @@
+ 
+    Copyright (C) 2006-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* written by Paul Eggert */
+--- a/gnulib/lib/fd-hook.c
++++ b/gnulib/lib/fd-hook.c
+@@ -2,17 +2,17 @@
+    Copyright (C) 2009-2021 Free Software Foundation, Inc.
+    Written by Bruno Haible <bruno@clisp.org>, 2009.
+ 
+-   This program is free software: you can redistribute it and/or modify it
+-   under the terms of the GNU General Public License as published
+-   by the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   General Public License for more details.
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+--- a/gnulib/lib/fd-hook.h
++++ b/gnulib/lib/fd-hook.h
+@@ -1,17 +1,17 @@
+ /* Hook for making file descriptor functions close(), ioctl() extensible.
+    Copyright (C) 2009-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify it
+-   under the terms of the GNU General Public License as published
+-   by the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   General Public License for more details.
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ 
+--- a/gnulib/lib/filename.h
++++ b/gnulib/lib/filename.h
+@@ -3,16 +3,16 @@
+    This file is part of the GNU C Library.
+ 
+    The GNU C Library is free software; you can redistribute it and/or
+-   modify it under the terms of the GNU General Public
++   modify it under the terms of the GNU Lesser General Public
+    License as published by the Free Software Foundation; either
+-   version 3 of the License, or (at your option) any later version.
++   version 2.1 of the License, or (at your option) any later version.
+ 
+    The GNU C Library is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   General Public License for more details.
++   Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public
++   You should have received a copy of the GNU Lesser General Public
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+--- a/gnulib/lib/float+.h
++++ b/gnulib/lib/float+.h
+@@ -2,18 +2,18 @@
+    Copyright (C) 2007, 2009-2021 Free Software Foundation, Inc.
+    Written by Bruno Haible <bruno@clisp.org>, 2007.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #ifndef _FLOATPLUS_H
+ #define _FLOATPLUS_H
+--- a/gnulib/lib/float.c
++++ b/gnulib/lib/float.c
+@@ -2,17 +2,17 @@
+    Copyright (C) 2011-2021 Free Software Foundation, Inc.
+    Written by Bruno Haible <bruno@clisp.org>, 2011.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+--- a/gnulib/lib/float.in.h
++++ b/gnulib/lib/float.in.h
+@@ -2,17 +2,17 @@
+ 
+    Copyright (C) 2007-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #ifndef _@GUARD_PREFIX@_FLOAT_H
+--- /dev/null
++++ b/gnulib/lib/free.c
+@@ -0,0 +1,53 @@
++/* Make free() preserve errno.
++
++   Copyright (C) 2003, 2006, 2009-2021 Free Software Foundation, Inc.
++
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
++
++   This file is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++   GNU Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
++
++/* written by Paul Eggert */
++
++#include <config.h>
++
++/* Specification.  */
++#include <stdlib.h>
++
++/* A function definition is only needed if HAVE_FREE_POSIX is not defined.  */
++#if !HAVE_FREE_POSIX
++
++# include <errno.h>
++
++void
++rpl_free (void *p)
++# undef free
++{
++# if defined __GNUC__ && !defined __clang__
++  /* An invalid GCC optimization
++     <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98396>
++     would optimize away the assignments in the code below, when link-time
++     optimization (LTO) is enabled.  Make the code more complicated, so that
++     GCC does not grok how to optimize it.  */
++  int err[2];
++  err[0] = errno;
++  err[1] = errno;
++  errno = 0;
++  free (p);
++  errno = err[errno == 0];
++# else
++  int err = errno;
++  free (p);
++  errno = err;
++# endif
++}
++
++#endif
+--- a/gnulib/lib/fstat.c
++++ b/gnulib/lib/fstat.c
+@@ -1,17 +1,17 @@
+ /* fstat() replacement.
+    Copyright (C) 2011-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* If the user's config.h happens to include <sys/stat.h>, let it include only
+--- a/gnulib/lib/getdtablesize.c
++++ b/gnulib/lib/getdtablesize.c
+@@ -2,17 +2,17 @@
+    Copyright (C) 2008-2021 Free Software Foundation, Inc.
+    Written by Bruno Haible <bruno@clisp.org>, 2008.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+--- a/gnulib/lib/getopt-cdefs.in.h
++++ b/gnulib/lib/getopt-cdefs.in.h
+@@ -4,19 +4,18 @@
+    Unlike most of the getopt implementation, it is NOT shared
+    with the GNU C Library.
+ 
+-   This file is free software; you can redistribute it and/or modify it
+-   under the terms of the GNU General Public License as
+-   published by the Free Software Foundation; either version 3 of
+-   the License, or (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This file is distributed in the hope that it will be useful, but
+-   WITHOUT ANY WARRANTY; without even the implied warranty of
+-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   General Public License for more details.
++   This file is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public
+-   License along with gnulib; if not, see
+-   <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #ifndef _GETOPT_CDEFS_H
+ #define _GETOPT_CDEFS_H 1
+--- a/gnulib/lib/getopt-core.h
++++ b/gnulib/lib/getopt-core.h
+@@ -4,16 +4,16 @@
+    Patches to this file should be submitted to both projects.
+ 
+    The GNU C Library is free software; you can redistribute it and/or
+-   modify it under the terms of the GNU General Public
++   modify it under the terms of the GNU Lesser General Public
+    License as published by the Free Software Foundation; either
+-   version 3 of the License, or (at your option) any later version.
++   version 2.1 of the License, or (at your option) any later version.
+ 
+    The GNU C Library is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   General Public License for more details.
++   Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public
++   You should have received a copy of the GNU Lesser General Public
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+--- a/gnulib/lib/getopt-ext.h
++++ b/gnulib/lib/getopt-ext.h
+@@ -4,16 +4,16 @@
+    Patches to this file should be submitted to both projects.
+ 
+    The GNU C Library is free software; you can redistribute it and/or
+-   modify it under the terms of the GNU General Public
++   modify it under the terms of the GNU Lesser General Public
+    License as published by the Free Software Foundation; either
+-   version 3 of the License, or (at your option) any later version.
++   version 2.1 of the License, or (at your option) any later version.
+ 
+    The GNU C Library is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   General Public License for more details.
++   Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public
++   You should have received a copy of the GNU Lesser General Public
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+--- a/gnulib/lib/getopt-pfx-core.h
++++ b/gnulib/lib/getopt-pfx-core.h
+@@ -4,19 +4,18 @@
+    Unlike most of the getopt implementation, it is NOT shared
+    with the GNU C Library.
+ 
+-   This file is free software; you can redistribute it and/or modify it
+-   under the terms of the GNU General Public License as
+-   published by the Free Software Foundation; either version 3 of
+-   the License, or (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This file is distributed in the hope that it will be useful, but
+-   WITHOUT ANY WARRANTY; without even the implied warranty of
+-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   General Public License for more details.
++   This file is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public
+-   License along with gnulib; if not, see
+-   <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #ifndef _GETOPT_PFX_CORE_H
+ #define _GETOPT_PFX_CORE_H 1
+--- a/gnulib/lib/getopt-pfx-ext.h
++++ b/gnulib/lib/getopt-pfx-ext.h
+@@ -4,19 +4,18 @@
+    Unlike most of the getopt implementation, it is NOT shared
+    with the GNU C Library.
+ 
+-   This file is free software; you can redistribute it and/or modify it
+-   under the terms of the GNU General Public License as
+-   published by the Free Software Foundation; either version 3 of
+-   the License, or (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This file is distributed in the hope that it will be useful, but
+-   WITHOUT ANY WARRANTY; without even the implied warranty of
+-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   General Public License for more details.
++   This file is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public
+-   License along with gnulib; if not, see
+-   <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #ifndef _GETOPT_PFX_EXT_H
+ #define _GETOPT_PFX_EXT_H 1
+--- a/gnulib/lib/getopt.c
++++ b/gnulib/lib/getopt.c
+@@ -4,16 +4,16 @@
+    Patches to this file should be submitted to both projects.
+ 
+    The GNU C Library is free software; you can redistribute it and/or
+-   modify it under the terms of the GNU General Public
++   modify it under the terms of the GNU Lesser General Public
+    License as published by the Free Software Foundation; either
+-   version 3 of the License, or (at your option) any later version.
++   version 2.1 of the License, or (at your option) any later version.
+ 
+    The GNU C Library is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   General Public License for more details.
++   Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public
++   You should have received a copy of the GNU Lesser General Public
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+--- a/gnulib/lib/getopt.in.h
++++ b/gnulib/lib/getopt.in.h
+@@ -5,18 +5,18 @@
+    with the GNU C Library, which supplies a different version of
+    this file.
+ 
+-   This file is free software; you can redistribute it and/or modify it
+-   under the terms of the GNU General Public License as
+-   published by the Free Software Foundation; either version 3 of
+-   the License, or (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This file is distributed in the hope that it will be useful, but
+-   WITHOUT ANY WARRANTY; without even the implied warranty of
+-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   General Public License for more details.
++   This file is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public
+-   License along with gnulib; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #ifndef _@GUARD_PREFIX@_GETOPT_H
+ 
+--- a/gnulib/lib/getopt1.c
++++ b/gnulib/lib/getopt1.c
+@@ -4,16 +4,16 @@
+    Patches to this file should be submitted to both projects.
+ 
+    The GNU C Library is free software; you can redistribute it and/or
+-   modify it under the terms of the GNU General Public
++   modify it under the terms of the GNU Lesser General Public
+    License as published by the Free Software Foundation; either
+-   version 3 of the License, or (at your option) any later version.
++   version 2.1 of the License, or (at your option) any later version.
+ 
+    The GNU C Library is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   General Public License for more details.
++   Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public
++   You should have received a copy of the GNU Lesser General Public
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+--- a/gnulib/lib/getopt_int.h
++++ b/gnulib/lib/getopt_int.h
+@@ -4,16 +4,16 @@
+    Patches to this file should be submitted to both projects.
+ 
+    The GNU C Library is free software; you can redistribute it and/or
+-   modify it under the terms of the GNU General Public
++   modify it under the terms of the GNU Lesser General Public
+    License as published by the Free Software Foundation; either
+-   version 3 of the License, or (at your option) any later version.
++   version 2.1 of the License, or (at your option) any later version.
+ 
+    The GNU C Library is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   General Public License for more details.
++   Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public
++   You should have received a copy of the GNU Lesser General Public
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+--- a/gnulib/lib/getprogname.c
++++ b/gnulib/lib/getprogname.c
+@@ -2,16 +2,16 @@
+    Copyright (C) 2016-2021 Free Software Foundation, Inc.
+ 
+    This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
++   it under the terms of the GNU Lesser General Public License as published by
++   the Free Software Foundation; either version 2.1 of the License, or
+    (at your option) any later version.
+ 
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+@@ -43,7 +43,7 @@
+ # include <string.h>
+ #endif
+ 
+-#ifdef __sgi
++#if defined __sgi || defined __osf__
+ # include <string.h>
+ # include <unistd.h>
+ # include <stdio.h>
+@@ -224,11 +224,15 @@ getprogname (void)
+       free (buf.ps_pathptr);
+     }
+   return p;
+-# elif defined __sgi                                        /* IRIX */
++# elif defined __sgi || defined __osf__                     /* IRIX or Tru64 */
+   char filename[50];
+   int fd;
+ 
+-  sprintf (filename, "/proc/pinfo/%d", (int) getpid ());
++  # if defined __sgi
++    sprintf (filename, "/proc/pinfo/%d", (int) getpid ());
++  # else
++    sprintf (filename, "/proc/%d", (int) getpid ());
++  # endif
+   fd = open (filename, O_RDONLY | O_CLOEXEC);
+   if (0 <= fd)
+     {
+--- a/gnulib/lib/getprogname.h
++++ b/gnulib/lib/getprogname.h
+@@ -2,16 +2,16 @@
+    Copyright (C) 2016-2021 Free Software Foundation, Inc.
+ 
+    This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
++   it under the terms of the GNU Lesser General Public License as published by
++   the Free Software Foundation; either version 2.1 of the License, or
+    (at your option) any later version.
+ 
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #ifndef _GL_GETPROGNAME_H
+--- a/gnulib/lib/gettext.h
++++ b/gnulib/lib/gettext.h
+@@ -2,18 +2,18 @@
+    Copyright (C) 1995-1998, 2000-2002, 2004-2006, 2009-2021 Free Software
+    Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License along
+-   with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #ifndef _LIBGETTEXT_H
+ #define _LIBGETTEXT_H 1
+--- a/gnulib/lib/glthread/lock.c
++++ b/gnulib/lib/glthread/lock.c
+@@ -1,18 +1,18 @@
+ /* Locking in multithreaded situations.
+    Copyright (C) 2005-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Bruno Haible <bruno@clisp.org>, 2005.
+    Based on GCC's gthr-posix.h, gthr-posix95.h.  */
+--- a/gnulib/lib/glthread/lock.h
++++ b/gnulib/lib/glthread/lock.h
+@@ -1,18 +1,18 @@
+ /* Locking in multithreaded situations.
+    Copyright (C) 2005-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Bruno Haible <bruno@clisp.org>, 2005.
+    Based on GCC's gthr-posix.h, gthr-posix95.h, gthr-win32.h.  */
+--- a/gnulib/lib/glthread/threadlib.c
++++ b/gnulib/lib/glthread/threadlib.c
+@@ -1,18 +1,18 @@
+ /* Multithreading primitives.
+    Copyright (C) 2005-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Bruno Haible <bruno@clisp.org>, 2005.  */
+ 
+--- a/gnulib/lib/hard-locale.c
++++ b/gnulib/lib/hard-locale.c
+@@ -3,17 +3,17 @@
+    Copyright (C) 1997-1999, 2002-2004, 2006-2007, 2009-2021 Free Software
+    Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+--- a/gnulib/lib/hard-locale.h
++++ b/gnulib/lib/hard-locale.h
+@@ -2,17 +2,17 @@
+ 
+    Copyright (C) 1999, 2003-2004, 2009-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #ifndef HARD_LOCALE_H_
+--- /dev/null
++++ b/gnulib/lib/ialloc.c
+@@ -0,0 +1,21 @@
++/* malloc with idx_t rather than size_t
++
++   Copyright 2021 Free Software Foundation, Inc.
++
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 3 of the
++   License, or (at your option) any later version.
++
++   This file is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++   GNU Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
++
++#include <config.h>
++
++#define IALLOC_INLINE _GL_EXTERN_INLINE
++#include "ialloc.h"
+--- /dev/null
++++ b/gnulib/lib/ialloc.h
+@@ -0,0 +1,94 @@
++/* ialloc.h -- malloc with idx_t rather than size_t
++
++   Copyright 2021 Free Software Foundation, Inc.
++
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 3 of the
++   License, or (at your option) any later version.
++
++   This file is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++   GNU Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
++
++#ifndef IALLOC_H_
++#define IALLOC_H_
++
++#include "idx.h"
++
++#include <errno.h>
++#include <stdint.h>
++#include <stdlib.h>
++
++#ifndef _GL_INLINE_HEADER_BEGIN
++ #error "Please include config.h first."
++#endif
++_GL_INLINE_HEADER_BEGIN
++#ifndef IALLOC_INLINE
++# define IALLOC_INLINE _GL_INLINE
++#endif
++
++#ifdef __cplusplus
++extern "C" {
++#endif
++
++IALLOC_INLINE void * _GL_ATTRIBUTE_COLD
++_gl_alloc_nomem (void)
++{
++  errno = ENOMEM;
++  return NULL;
++}
++
++IALLOC_INLINE void *
++imalloc (idx_t s)
++{
++  return s <= SIZE_MAX ? malloc (s) : _gl_alloc_nomem ();
++}
++
++IALLOC_INLINE void *
++irealloc (void *p, idx_t s)
++{
++  /* Work around GNU realloc glitch by treating a zero size as if it
++     were 1, so that returning NULL is equivalent to failing.  */
++  return s <= SIZE_MAX ? realloc (p, s | !s) : _gl_alloc_nomem ();
++}
++
++IALLOC_INLINE void *
++icalloc (idx_t n, idx_t s)
++{
++  if (SIZE_MAX < n)
++    {
++      if (s != 0)
++        return _gl_alloc_nomem ();
++      n = 0;
++    }
++  if (SIZE_MAX < s)
++    {
++      if (n != 0)
++        return _gl_alloc_nomem ();
++      s = 0;
++    }
++  return calloc (n, s);
++}
++
++IALLOC_INLINE void *
++ireallocarray (void *p, idx_t n, idx_t s)
++{
++  /* Work around GNU reallocarray glitch by treating a zero size as if
++     it were 1, so that returning NULL is equivalent to failing.  */
++  if (n == 0 || s == 0)
++    n = s = 1;
++  return (n <= SIZE_MAX && s <= SIZE_MAX
++          ? reallocarray (p, n, s)
++          : _gl_alloc_nomem ());
++}
++
++#ifdef __cplusplus
++}
++#endif
++
++#endif
+--- /dev/null
++++ b/gnulib/lib/idx.h
+@@ -0,0 +1,114 @@
++/* A type for indices and sizes.
++   Copyright (C) 2020-2021 Free Software Foundation, Inc.
++   This file is part of the GNU C Library.
++
++   The GNU C Library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU Lesser General Public
++   License as published by the Free Software Foundation; either
++   version 2.1 of the License, or (at your option) any later version.
++
++   The GNU C Library is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++   Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public
++   License along with the GNU C Library; if not, see
++   <https://www.gnu.org/licenses/>.  */
++
++#ifndef _IDX_H
++#define _IDX_H
++
++/* Get ptrdiff_t.  */
++#include <stddef.h>
++
++/* Get PTRDIFF_MAX.  */
++#include <stdint.h>
++
++/* The type 'idx_t' holds an (array) index or an (object) size.
++   Its implementation promotes to a signed integer type,
++   which can hold the values
++     0..2^63-1 (on 64-bit platforms) or
++     0..2^31-1 (on 32-bit platforms).
++
++   Why a signed integer type?
++
++     * Security: Signed types can be checked for overflow via
++       '-fsanitize=undefined', but unsigned types cannot.
++
++     * Comparisons without surprises: ISO C99 § 6.3.1.8 specifies a few
++       surprising results for comparisons, such as
++
++           (int) -3 < (unsigned long) 7  =>  false
++           (int) -3 < (unsigned int) 7   =>  false
++       and on 32-bit machines:
++           (long) -3 < (unsigned int) 7  =>  false
++
++       This is surprising because the natural comparison order is by
++       value in the realm of infinite-precision signed integers (ℤ).
++
++       The best way to get rid of such surprises is to use signed types
++       for numerical integer values, and use unsigned types only for
++       bit masks and enums.
++
++   Why not use 'size_t' directly?
++
++     * Because 'size_t' is an unsigned type, and a signed type is better.
++       See above.
++
++   Why not use 'ptrdiff_t' directly?
++
++     * Maintainability: When reading and modifying code, it helps to know that
++       a certain variable cannot have negative values.  For example, when you
++       have a loop
++
++         int n = ...;
++         for (int i = 0; i < n; i++) ...
++
++       or
++
++         ptrdiff_t n = ...;
++         for (ptrdiff_t i = 0; i < n; i++) ...
++
++       you have to ask yourself "what if n < 0?".  Whereas in
++
++         idx_t n = ...;
++         for (idx_t i = 0; i < n; i++) ...
++
++       you know that this case cannot happen.
++
++       Similarly, when a programmer writes
++
++         idx_t = ptr2 - ptr1;
++
++       there is an implied assertion that ptr1 and ptr2 point into the same
++       object and that ptr1 <= ptr2.
++
++     * Being future-proof: In the future, range types (integers which are
++       constrained to a certain range of values) may be added to C compilers
++       or to the C standard.  Several programming languages (Ada, Haskell,
++       Common Lisp, Pascal) already have range types.  Such range types may
++       help producing good code and good warnings.  The type 'idx_t' could
++       then be typedef'ed to a range type that is signed after promotion.  */
++
++/* In the future, idx_t could be typedef'ed to a signed range type.
++   The clang "extended integer types", supported in Clang 11 or newer
++   <https://clang.llvm.org/docs/LanguageExtensions.html#extended-integer-types>,
++   are a special case of range types.  However, these types don't support binary
++   operators with plain integer types (e.g. expressions such as x > 1).
++   Therefore, they don't behave like signed types (and not like unsigned types
++   either).  So, we cannot use them here.  */
++
++/* Use the signed type 'ptrdiff_t'.  */
++/* Note: ISO C does not mandate that 'size_t' and 'ptrdiff_t' have the same
++   size, but it is so on all platforms we have seen since 1990.  */
++typedef ptrdiff_t idx_t;
++
++/* IDX_MAX is the maximum value of an idx_t.  */
++#define IDX_MAX PTRDIFF_MAX
++
++/* So far no need has been found for an IDX_WIDTH macro.
++   Perhaps there should be another macro IDX_VALUE_BITS that does not
++   count the sign bit and is therefore one less than PTRDIFF_WIDTH.  */
++
++#endif /* _IDX_H */
+--- a/gnulib/lib/intprops.h
++++ b/gnulib/lib/intprops.h
+@@ -3,16 +3,16 @@
+    Copyright (C) 2001-2021 Free Software Foundation, Inc.
+ 
+    This program is free software: you can redistribute it and/or modify it
+-   under the terms of the GNU General Public License as published
+-   by the Free Software Foundation; either version 3 of the License, or
++   under the terms of the GNU Lesser General Public License as published
++   by the Free Software Foundation; either version 2.1 of the License, or
+    (at your option) any later version.
+ 
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Paul Eggert.  */
+@@ -133,7 +133,8 @@
+    operators might not yield numerically correct answers due to
+    arithmetic overflow.  They do not rely on undefined or
+    implementation-defined behavior.  Their implementations are simple
+-   and straightforward, but they are a bit harder to use than the
++   and straightforward, but they are harder to use and may be less
++   efficient than the INT_<op>_WRAPV, INT_<op>_OK, and
+    INT_<op>_OVERFLOW macros described below.
+ 
+    Example usage:
+@@ -158,6 +159,9 @@
+    must have minimum value MIN and maximum MAX.  Unsigned types should
+    use a zero MIN of the proper type.
+ 
++   Because all arguments are subject to integer promotions, these
++   macros typically do not work on types narrower than 'int'.
++
+    These macros are tuned for constant MIN and MAX.  For commutative
+    operations such as A + B, they are also tuned for constant B.  */
+ 
+@@ -339,9 +343,15 @@
+    arguments should not have side effects.
+ 
+    The WRAPV macros are not constant expressions.  They support only
+-   +, binary -, and *.  Because the WRAPV macros convert the result,
+-   they report overflow in different circumstances than the OVERFLOW
+-   macros do.
++   +, binary -, and *.
++
++   Because the WRAPV macros convert the result, they report overflow
++   in different circumstances than the OVERFLOW macros do.  For
++   example, in the typical case with 16-bit 'short' and 32-bit 'int',
++   if A, B and R are all of type 'short' then INT_ADD_OVERFLOW (A, B)
++   returns false because the addition cannot overflow after A and B
++   are converted to 'int', whereas INT_ADD_WRAPV (A, B, &R) returns
++   true or false depending on whether the sum fits into 'short'.
+ 
+    These macros are tuned for their last input argument being a constant.
+ 
+--- a/gnulib/lib/inttypes.in.h
++++ b/gnulib/lib/inttypes.in.h
+@@ -2,17 +2,17 @@
+    Written by Paul Eggert, Bruno Haible, Derek Price.
+    This file is part of gnulib.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /*
+--- a/gnulib/lib/iswblank.c
++++ b/gnulib/lib/iswblank.c
+@@ -1,18 +1,18 @@
+ /* Test wide character for being blank.
+    Copyright (C) 2008-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License along
+-   with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+ 
+--- a/gnulib/lib/iswdigit.c
++++ b/gnulib/lib/iswdigit.c
+@@ -1,18 +1,18 @@
+ /* Test wide character for being a digit.
+    Copyright (C) 2020-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License along
+-   with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+ 
+--- a/gnulib/lib/iswxdigit.c
++++ b/gnulib/lib/iswxdigit.c
+@@ -1,18 +1,18 @@
+ /* Test wide character for being a hexadecimal digit.
+    Copyright (C) 2020-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License along
+-   with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+ 
+--- a/gnulib/lib/itold.c
++++ b/gnulib/lib/itold.c
+@@ -2,17 +2,17 @@
+    Copyright (C) 2011-2021 Free Software Foundation, Inc.
+    Written by Bruno Haible <bruno@clisp.org>, 2011.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+--- a/gnulib/lib/langinfo.in.h
++++ b/gnulib/lib/langinfo.in.h
+@@ -1,18 +1,18 @@
+ /* Substitute for and wrapper around <langinfo.h>.
+    Copyright (C) 2009-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /*
+  * POSIX <langinfo.h> for platforms that lack it or have an incomplete one.
+--- a/gnulib/lib/lc-charset-dispatch.c
++++ b/gnulib/lib/lc-charset-dispatch.c
+@@ -1,17 +1,17 @@
+ /* Dispatching based on the current locale's character encoding.
+    Copyright (C) 2018-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Bruno Haible <bruno@clisp.org>, 2018.  */
+--- a/gnulib/lib/lc-charset-dispatch.h
++++ b/gnulib/lib/lc-charset-dispatch.h
+@@ -1,17 +1,17 @@
+ /* Dispatching based on the current locale's character encoding.
+    Copyright (C) 2018-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Bruno Haible <bruno@clisp.org>, 2018.  */
+--- a/gnulib/lib/libc-config.h
++++ b/gnulib/lib/libc-config.h
+@@ -3,16 +3,16 @@
+    Copyright 2017-2021 Free Software Foundation, Inc.
+ 
+    This program is free software; you can redistribute it and/or
+-   modify it under the terms of the GNU General Public
++   modify it under the terms of the GNU Lesser General Public
+    License as published by the Free Software Foundation; either
+-   version 3 of the License, or (at your option) any later version.
++   version 2.1 of the License, or (at your option) any later version.
+ 
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   General Public License for more details.
++   Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public
++   You should have received a copy of the GNU Lesser General Public
+    License along with this program; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+@@ -28,7 +28,10 @@
+ 
+    When compiled as part of glibc this is a no-op; when compiled as
+    part of Gnulib this includes Gnulib's <config.h> and defines macros
+-   that glibc library code would normally assume.  */
++   that glibc library code would normally assume.
++
++   Note: This header file MUST NOT be included by public header files
++   of Gnulib.  */
+ 
+ #include <config.h>
+ 
+@@ -71,7 +74,7 @@
+ # endif
+ #endif
+ 
+-#ifndef __attribute_maybe_unused__
++#ifndef __attribute_nonnull__
+ /* <sys/cdefs.h> either does not exist, or is too old for Gnulib.
+    Prepare to include <cdefs.h>, which is Gnulib's version of a
+    more-recent glibc <sys/cdefs.h>.  */
+@@ -80,13 +83,9 @@
+ # ifndef _FEATURES_H
+ #  define _FEATURES_H 1
+ # endif
+-/* Define __WORDSIZE so that <cdefs.h> does not attempt to include
+-   nonexistent files.  Make it a syntax error, since Gnulib does not
+-   use __WORDSIZE now, and if Gnulib uses it later the syntax error
+-   will let us know that __WORDSIZE needs configuring.  */
+-# ifndef __WORDSIZE
+-#  define __WORDSIZE %%%
+-# endif
++/* Define __GNULIB_CDEFS so that <cdefs.h> does not attempt to include
++   nonexistent files.  */
++# define __GNULIB_CDEFS
+ /* Undef the macros unconditionally defined by our copy of glibc
+    <sys/cdefs.h>, so that they do not clash with any system-defined
+    versions.  */
+--- a/gnulib/lib/limits.in.h
++++ b/gnulib/lib/limits.in.h
+@@ -2,18 +2,18 @@
+ 
+    Copyright 2016-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or
+-   modify it under the terms of the GNU General Public License
+-   as published by the Free Software Foundation; either version 3, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #if __GNUC__ >= 3
+ @PRAGMA_SYSTEM_HEADER@
+--- a/gnulib/lib/localcharset.c
++++ b/gnulib/lib/localcharset.c
+@@ -2,18 +2,18 @@
+ 
+    Copyright (C) 2000-2006, 2008-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License along
+-   with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Bruno Haible <bruno@clisp.org>.  */
+ 
+--- a/gnulib/lib/localcharset.h
++++ b/gnulib/lib/localcharset.h
+@@ -2,18 +2,18 @@
+    Copyright (C) 2000-2003, 2009-2021 Free Software Foundation, Inc.
+    This file is part of the GNU CHARSET Library.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License along
+-   with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #ifndef _LOCALCHARSET_H
+ #define _LOCALCHARSET_H
+--- a/gnulib/lib/locale.in.h
++++ b/gnulib/lib/locale.in.h
+@@ -1,17 +1,17 @@
+ /* A POSIX <locale.h>.
+    Copyright (C) 2007-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #if __GNUC__ >= 3
+--- a/gnulib/lib/localeconv.c
++++ b/gnulib/lib/localeconv.c
+@@ -1,17 +1,17 @@
+ /* Query locale dependent information for formatting numbers.
+    Copyright (C) 2012-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+--- a/gnulib/lib/malloc.c
++++ b/gnulib/lib/malloc.c
+@@ -2,61 +2,50 @@
+ 
+    Copyright (C) 1997-1998, 2006-2007, 2009-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* written by Jim Meyering and Bruno Haible */
+ 
+ #define _GL_USE_STDLIB_ALLOC 1
+ #include <config.h>
+-/* Only the AC_FUNC_MALLOC macro defines 'malloc' already in config.h.  */
+-#ifdef malloc
+-# define NEED_MALLOC_GNU 1
+-# undef malloc
+-/* Whereas the gnulib module 'malloc-gnu' defines HAVE_MALLOC_GNU.  */
+-#elif GNULIB_MALLOC_GNU && !HAVE_MALLOC_GNU
+-# define NEED_MALLOC_GNU 1
+-#endif
+ 
+ #include <stdlib.h>
+ 
+-/* A function definition is only needed if NEED_MALLOC_GNU is defined above
+-   or if the module 'malloc-posix' requests it.  */
+-#if NEED_MALLOC_GNU || (GNULIB_MALLOC_POSIX && !HAVE_MALLOC_POSIX)
++#include <errno.h>
+ 
+-# include <errno.h>
++#include "xalloc-oversized.h"
+ 
+-/* Allocate an N-byte block of memory from the heap.
+-   If N is zero, allocate a 1-byte block.  */
++/* Allocate an N-byte block of memory from the heap, even if N is 0.  */
+ 
+ void *
+ rpl_malloc (size_t n)
+ {
+-  void *result;
+-
+-# if NEED_MALLOC_GNU
+   if (n == 0)
+     n = 1;
+-# endif
+ 
+-  result = malloc (n);
++  if (xalloc_oversized (n, 1))
++    {
++      errno = ENOMEM;
++      return NULL;
++    }
++
++  void *result = malloc (n);
+ 
+-# if !HAVE_MALLOC_POSIX
++#if !HAVE_MALLOC_POSIX
+   if (result == NULL)
+     errno = ENOMEM;
+-# endif
++#endif
+ 
+   return result;
+ }
+-
+-#endif
+--- a/gnulib/lib/malloc/dynarray-skeleton.c
++++ b/gnulib/lib/malloc/dynarray-skeleton.c
+@@ -3,16 +3,16 @@
+    This file is part of the GNU C Library.
+ 
+    The GNU C Library is free software; you can redistribute it and/or
+-   modify it under the terms of the GNU General Public
++   modify it under the terms of the GNU Lesser General Public
+    License as published by the Free Software Foundation; either
+-   version 3 of the License, or (at your option) any later version.
++   version 2.1 of the License, or (at your option) any later version.
+ 
+    The GNU C Library is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   General Public License for more details.
++   Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public
++   You should have received a copy of the GNU Lesser General Public
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+--- a/gnulib/lib/malloc/dynarray.h
++++ b/gnulib/lib/malloc/dynarray.h
+@@ -3,16 +3,16 @@
+    This file is part of the GNU C Library.
+ 
+    The GNU C Library is free software; you can redistribute it and/or
+-   modify it under the terms of the GNU General Public
++   modify it under the terms of the GNU Lesser General Public
+    License as published by the Free Software Foundation; either
+-   version 3 of the License, or (at your option) any later version.
++   version 2.1 of the License, or (at your option) any later version.
+ 
+    The GNU C Library is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   General Public License for more details.
++   Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public
++   You should have received a copy of the GNU Lesser General Public
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+--- a/gnulib/lib/malloc/dynarray_at_failure.c
++++ b/gnulib/lib/malloc/dynarray_at_failure.c
+@@ -3,16 +3,16 @@
+    This file is part of the GNU C Library.
+ 
+    The GNU C Library is free software; you can redistribute it and/or
+-   modify it under the terms of the GNU General Public
++   modify it under the terms of the GNU Lesser General Public
+    License as published by the Free Software Foundation; either
+-   version 3 of the License, or (at your option) any later version.
++   version 2.1 of the License, or (at your option) any later version.
+ 
+    The GNU C Library is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   General Public License for more details.
++   Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public
++   You should have received a copy of the GNU Lesser General Public
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+--- a/gnulib/lib/malloc/dynarray_emplace_enlarge.c
++++ b/gnulib/lib/malloc/dynarray_emplace_enlarge.c
+@@ -3,16 +3,16 @@
+    This file is part of the GNU C Library.
+ 
+    The GNU C Library is free software; you can redistribute it and/or
+-   modify it under the terms of the GNU General Public
++   modify it under the terms of the GNU Lesser General Public
+    License as published by the Free Software Foundation; either
+-   version 3 of the License, or (at your option) any later version.
++   version 2.1 of the License, or (at your option) any later version.
+ 
+    The GNU C Library is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   General Public License for more details.
++   Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public
++   You should have received a copy of the GNU Lesser General Public
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+--- a/gnulib/lib/malloc/dynarray_finalize.c
++++ b/gnulib/lib/malloc/dynarray_finalize.c
+@@ -3,16 +3,16 @@
+    This file is part of the GNU C Library.
+ 
+    The GNU C Library is free software; you can redistribute it and/or
+-   modify it under the terms of the GNU General Public
++   modify it under the terms of the GNU Lesser General Public
+    License as published by the Free Software Foundation; either
+-   version 3 of the License, or (at your option) any later version.
++   version 2.1 of the License, or (at your option) any later version.
+ 
+    The GNU C Library is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   General Public License for more details.
++   Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public
++   You should have received a copy of the GNU Lesser General Public
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+--- a/gnulib/lib/malloc/dynarray_resize.c
++++ b/gnulib/lib/malloc/dynarray_resize.c
+@@ -3,16 +3,16 @@
+    This file is part of the GNU C Library.
+ 
+    The GNU C Library is free software; you can redistribute it and/or
+-   modify it under the terms of the GNU General Public
++   modify it under the terms of the GNU Lesser General Public
+    License as published by the Free Software Foundation; either
+-   version 3 of the License, or (at your option) any later version.
++   version 2.1 of the License, or (at your option) any later version.
+ 
+    The GNU C Library is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   General Public License for more details.
++   Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public
++   You should have received a copy of the GNU Lesser General Public
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+--- a/gnulib/lib/malloc/dynarray_resize_clear.c
++++ b/gnulib/lib/malloc/dynarray_resize_clear.c
+@@ -3,16 +3,16 @@
+    This file is part of the GNU C Library.
+ 
+    The GNU C Library is free software; you can redistribute it and/or
+-   modify it under the terms of the GNU General Public
++   modify it under the terms of the GNU Lesser General Public
+    License as published by the Free Software Foundation; either
+-   version 3 of the License, or (at your option) any later version.
++   version 2.1 of the License, or (at your option) any later version.
+ 
+    The GNU C Library is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   General Public License for more details.
++   Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public
++   You should have received a copy of the GNU Lesser General Public
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+--- a/gnulib/lib/malloca.c
++++ b/gnulib/lib/malloca.c
+@@ -2,18 +2,18 @@
+    Copyright (C) 2003, 2006-2007, 2009-2021 Free Software Foundation, Inc.
+    Written by Bruno Haible <bruno@clisp.org>, 2003, 2018.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #define _GL_USE_STDLIB_ALLOC 1
+ #include <config.h>
+@@ -21,6 +21,8 @@
+ /* Specification.  */
+ #include "malloca.h"
+ 
++#include "idx.h"
++#include "intprops.h"
+ #include "verify.h"
+ 
+ /* The speed critical point in this file is freea() applied to an alloca()
+@@ -45,9 +47,9 @@ mmalloca (size_t n)
+ #if HAVE_ALLOCA
+   /* Allocate one more word, used to determine the address to pass to freea(),
+      and room for the alignment ≡ sa_alignment_max mod 2*sa_alignment_max.  */
+-  size_t nplus = n + sizeof (small_t) + 2 * sa_alignment_max - 1;
+-
+-  if (nplus >= n)
++  int plus = sizeof (small_t) + 2 * sa_alignment_max - 1;
++  idx_t nplus;
++  if (!INT_ADD_WRAPV (n, plus, &nplus) && !xalloc_oversized (nplus, 1))
+     {
+       char *mem = (char *) malloc (nplus);
+ 
+--- a/gnulib/lib/malloca.h
++++ b/gnulib/lib/malloca.h
+@@ -2,18 +2,18 @@
+    Copyright (C) 2003-2007, 2009-2021 Free Software Foundation, Inc.
+    Written by Bruno Haible <bruno@clisp.org>, 2003.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #ifndef _MALLOCA_H
+ #define _MALLOCA_H
+@@ -76,9 +76,10 @@ extern void freea (void *p);
+ 
+ /* nmalloca(N,S) is an overflow-safe variant of malloca (N * S).
+    It allocates an array of N objects, each with S bytes of memory,
+-   on the stack.  S must be positive and N must be nonnegative.
++   on the stack.  N and S should be nonnegative and free of side effects.
+    The array must be freed using freea() before the function returns.  */
+-#define nmalloca(n, s) (xalloc_oversized (n, s) ? NULL : malloca ((n) * (s)))
++#define nmalloca(n, s) \
++  (xalloc_oversized (n, s) ? NULL : malloca ((n) * (size_t) (s)))
+ 
+ 
+ #ifdef __cplusplus
+--- a/gnulib/lib/mbchar.c
++++ b/gnulib/lib/mbchar.c
+@@ -1,16 +1,16 @@
+ /* Copyright (C) 2001, 2006, 2009-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ 
+--- a/gnulib/lib/mbchar.h
++++ b/gnulib/lib/mbchar.h
+@@ -1,17 +1,17 @@
+ /* Multibyte character data type.
+    Copyright (C) 2001, 2005-2007, 2009-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Bruno Haible <bruno@clisp.org>.  */
+--- a/gnulib/lib/mbiter.c
++++ b/gnulib/lib/mbiter.c
+@@ -1,3 +1,21 @@
++/* Iterating through multibyte strings: macros for multi-byte encodings.
++
++   Copyright (C) 2012-2021 Free Software Foundation, Inc.
++
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
++
++   This file is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++   GNU Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
++
+ #include <config.h>
++
+ #define MBITER_INLINE _GL_EXTERN_INLINE
+ #include "mbiter.h"
+--- a/gnulib/lib/mbiter.h
++++ b/gnulib/lib/mbiter.h
+@@ -1,17 +1,17 @@
+ /* Iterating through multibyte strings: macros for multi-byte encodings.
+    Copyright (C) 2001, 2005, 2007, 2009-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Bruno Haible <bruno@clisp.org>.  */
+--- a/gnulib/lib/mbrtowc-impl-utf8.h
++++ b/gnulib/lib/mbrtowc-impl-utf8.h
+@@ -1,17 +1,17 @@
+ /* Convert multibyte character to wide character.
+    Copyright (C) 1999-2002, 2005-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Bruno Haible <bruno@clisp.org>, 2008.  */
+@@ -96,7 +96,7 @@
+ 
+                     if ((c2 ^ 0x80) < 0x40
+                         && (c >= 0xf1 || c2 >= 0x90)
+-                        && (c < 0xf4 || (c == 0xf4 && c2 < 0x90)))
++                        && (c < 0xf4 || (/* c == 0xf4 && */ c2 < 0x90)))
+                       {
+                         if (m == 2)
+                           goto incomplete;
+--- a/gnulib/lib/mbrtowc-impl.h
++++ b/gnulib/lib/mbrtowc-impl.h
+@@ -1,17 +1,17 @@
+ /* Convert multibyte character to wide character.
+    Copyright (C) 1999-2002, 2005-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Bruno Haible <bruno@clisp.org>, 2008.  */
+--- a/gnulib/lib/mbrtowc.c
++++ b/gnulib/lib/mbrtowc.c
+@@ -2,17 +2,17 @@
+    Copyright (C) 1999-2002, 2005-2021 Free Software Foundation, Inc.
+    Written by Bruno Haible <bruno@clisp.org>, 2008.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+--- a/gnulib/lib/mbscasecmp.c
++++ b/gnulib/lib/mbscasecmp.c
+@@ -3,17 +3,17 @@
+    Written by Bruno Haible <bruno@clisp.org>, 2005,
+    based on earlier glibc code.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 3 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+--- a/gnulib/lib/mbschr.c
++++ b/gnulib/lib/mbschr.c
+@@ -2,17 +2,17 @@
+    Copyright (C) 2007-2021 Free Software Foundation, Inc.
+    Written by Bruno Haible <bruno@clisp.org>, 2007.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 3 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+--- a/gnulib/lib/mbsinit.c
++++ b/gnulib/lib/mbsinit.c
+@@ -2,17 +2,17 @@
+    Copyright (C) 2008-2021 Free Software Foundation, Inc.
+    Written by Bruno Haible <bruno@clisp.org>, 2008.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+--- a/gnulib/lib/mbslen.c
++++ b/gnulib/lib/mbslen.c
+@@ -2,17 +2,17 @@
+    Copyright (C) 2007-2021 Free Software Foundation, Inc.
+    Written by Bruno Haible <bruno@clisp.org>, 2007.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 3 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+--- a/gnulib/lib/mbsncasecmp.c
++++ b/gnulib/lib/mbsncasecmp.c
+@@ -3,17 +3,17 @@
+    Written by Bruno Haible <bruno@clisp.org>, 2005,
+    based on earlier glibc code.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 3 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+--- a/gnulib/lib/mbsstr.c
++++ b/gnulib/lib/mbsstr.c
+@@ -2,17 +2,17 @@
+    Copyright (C) 2005-2021 Free Software Foundation, Inc.
+    Written by Bruno Haible <bruno@clisp.org>, 2005.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 3 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+--- a/gnulib/lib/mbtowc-impl.h
++++ b/gnulib/lib/mbtowc-impl.h
+@@ -2,17 +2,17 @@
+    Copyright (C) 2011-2021 Free Software Foundation, Inc.
+    Written by Bruno Haible <bruno@clisp.org>, 2011.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* We don't need a static internal state, because the encoding is not state
+--- a/gnulib/lib/mbtowc-lock.c
++++ b/gnulib/lib/mbtowc-lock.c
+@@ -1,17 +1,17 @@
+ /* Return the internal lock used by mbrtowc and mbrtoc32.
+    Copyright (C) 2019-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Bruno Haible <bruno@clisp.org>, 2019-2020.  */
+--- a/gnulib/lib/mbtowc-lock.h
++++ b/gnulib/lib/mbtowc-lock.h
+@@ -1,17 +1,17 @@
+ /* Use the internal lock used by mbrtowc and mbrtoc32.
+    Copyright (C) 2019-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Bruno Haible <bruno@clisp.org>, 2019-2020.  */
+--- a/gnulib/lib/mbtowc.c
++++ b/gnulib/lib/mbtowc.c
+@@ -2,17 +2,17 @@
+    Copyright (C) 2011-2021 Free Software Foundation, Inc.
+    Written by Bruno Haible <bruno@clisp.org>, 2011.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+--- a/gnulib/lib/mbuiter.c
++++ b/gnulib/lib/mbuiter.c
+@@ -1,3 +1,20 @@
++/* Iterating through multibyte strings: macros for multi-byte encodings.
++   Copyright (C) 2012-2021 Free Software Foundation, Inc.
++
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 3 of the
++   License, or (at your option) any later version.
++
++   This file is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++   GNU Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
++
+ #include <config.h>
++
+ #define MBUITER_INLINE _GL_EXTERN_INLINE
+ #include "mbuiter.h"
+--- a/gnulib/lib/mbuiter.h
++++ b/gnulib/lib/mbuiter.h
+@@ -1,17 +1,17 @@
+ /* Iterating through multibyte strings: macros for multi-byte encodings.
+    Copyright (C) 2001, 2005, 2007, 2009-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 3 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Bruno Haible <bruno@clisp.org>.  */
+--- a/gnulib/lib/memchr.c
++++ b/gnulib/lib/memchr.c
+@@ -7,21 +7,21 @@
+    adaptation to memchr suggested by Dick Karpinski (dick@cca.ucsf.edu),
+    and implemented by Roland McGrath (roland@ai.mit.edu).
+ 
+-NOTE: The canonical source of this file is maintained with the GNU C Library.
+-Bugs can be reported to bug-glibc@prep.ai.mit.edu.
++   NOTE: The canonical source of this file is maintained with the GNU C Library.
++   Bugs can be reported to bug-glibc@prep.ai.mit.edu.
+ 
+-This program is free software: you can redistribute it and/or modify it
+-under the terms of the GNU General Public License as published by the
+-Free Software Foundation; either version 3 of the License, or any
+-later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-This program is distributed in the hope that it will be useful,
+-but WITHOUT ANY WARRANTY; without even the implied warranty of
+-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-GNU General Public License for more details.
++   This file is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++   GNU Lesser General Public License for more details.
+ 
+-You should have received a copy of the GNU General Public License
+-along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #ifndef _LIBC
+ # include <config.h>
+--- a/gnulib/lib/memchr.valgrind
++++ b/gnulib/lib/memchr.valgrind
+@@ -2,17 +2,17 @@
+ 
+ # Copyright (C) 2009-2021 Free Software Foundation, Inc.
+ #
+-# This program is free software: you can redistribute it and/or modify
+-# it under the terms of the GNU General Public License as published by
+-# the Free Software Foundation; either version 3 of the License, or
+-# (at your option) any later version.
++# This file is free software: you can redistribute it and/or modify
++# it under the terms of the GNU Lesser General Public License as
++# published by the Free Software Foundation; either version 2.1 of the
++# License, or (at your option) any later version.
+ #
+-# This program is distributed in the hope that it will be useful,
++# This file is distributed in the hope that it will be useful,
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-# GNU General Public License for more details.
++# GNU Lesser General Public License for more details.
+ #
+-# You should have received a copy of the GNU General Public License
++# You should have received a copy of the GNU Lesser General Public License
+ # along with this program.  If not, see <https://www.gnu.org/licenses/>.
+ 
+ # POSIX states that when the character is found, memchr must not read extra
+--- a/gnulib/lib/mempcpy.c
++++ b/gnulib/lib/mempcpy.c
+@@ -1,18 +1,18 @@
+ /* Copy memory area and return pointer after last written byte.
+    Copyright (C) 2003, 2007, 2009-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+ 
+--- a/gnulib/lib/memrchr.c
++++ b/gnulib/lib/memrchr.c
+@@ -9,17 +9,17 @@
+    adaptation to memchr suggested by Dick Karpinski (dick@cca.ucsf.edu),
+    and implemented by Roland McGrath (roland@ai.mit.edu).
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 3 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #if defined _LIBC
+--- /dev/null
++++ b/gnulib/lib/minmax.h
+@@ -0,0 +1,60 @@
++/* MIN, MAX macros.
++   Copyright (C) 1995, 1998, 2001, 2003, 2005, 2009-2021 Free Software
++   Foundation, Inc.
++
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
++
++   This file is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++   GNU Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
++
++#ifndef _MINMAX_H
++#define _MINMAX_H
++
++/* Note: MIN, MAX are also defined in <sys/param.h> on some systems
++   (glibc, IRIX, HP-UX, OSF/1).  Therefore you might get warnings about
++   MIN, MAX macro redefinitions on some systems; the workaround is to
++   #include this file as the last one among the #include list.  */
++
++/* Before we define the following symbols we get the <limits.h> file
++   since otherwise we get redefinitions on some systems if <limits.h> is
++   included after this file.  Likewise for <sys/param.h>.
++   If more than one of these system headers define MIN and MAX, pick just
++   one of the headers (because the definitions most likely are the same).  */
++#if HAVE_MINMAX_IN_LIMITS_H
++# include <limits.h>
++#elif HAVE_MINMAX_IN_SYS_PARAM_H
++# include <sys/param.h>
++#endif
++
++/* Note: MIN and MAX should be used with two arguments of the
++   same type.  They might not return the minimum and maximum of their two
++   arguments, if the arguments have different types or have unusual
++   floating-point values.  For example, on a typical host with 32-bit 'int',
++   64-bit 'long long', and 64-bit IEEE 754 'double' types:
++
++     MAX (-1, 2147483648) returns 4294967295.
++     MAX (9007199254740992.0, 9007199254740993) returns 9007199254740992.0.
++     MAX (NaN, 0.0) returns 0.0.
++     MAX (+0.0, -0.0) returns -0.0.
++
++   and in each case the answer is in some sense bogus.  */
++
++/* MAX(a,b) returns the maximum of A and B.  */
++#ifndef MAX
++# define MAX(a,b) ((a) > (b) ? (a) : (b))
++#endif
++
++/* MIN(a,b) returns the minimum of A and B.  */
++#ifndef MIN
++# define MIN(a,b) ((a) < (b) ? (a) : (b))
++#endif
++
++#endif /* _MINMAX_H */
+--- a/gnulib/lib/msvc-inval.c
++++ b/gnulib/lib/msvc-inval.c
+@@ -1,18 +1,18 @@
+ /* Invalid parameter handler for MSVC runtime libraries.
+    Copyright (C) 2011-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License along
+-   with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+ 
+--- a/gnulib/lib/msvc-inval.h
++++ b/gnulib/lib/msvc-inval.h
+@@ -1,18 +1,18 @@
+ /* Invalid parameter handler for MSVC runtime libraries.
+    Copyright (C) 2011-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License along
+-   with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #ifndef _MSVC_INVAL_H
+ #define _MSVC_INVAL_H
+--- a/gnulib/lib/msvc-nothrow.c
++++ b/gnulib/lib/msvc-nothrow.c
+@@ -2,18 +2,18 @@
+    with MSVC runtime libraries.
+    Copyright (C) 2011-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License along
+-   with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+ 
+--- a/gnulib/lib/msvc-nothrow.h
++++ b/gnulib/lib/msvc-nothrow.h
+@@ -2,18 +2,18 @@
+    with MSVC runtime libraries.
+    Copyright (C) 2011-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License along
+-   with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #ifndef _MSVC_NOTHROW_H
+ #define _MSVC_NOTHROW_H
+--- a/gnulib/lib/nl_langinfo-lock.c
++++ b/gnulib/lib/nl_langinfo-lock.c
+@@ -1,17 +1,17 @@
+ /* Return the internal lock used by nl_langinfo.
+    Copyright (C) 2019-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Bruno Haible <bruno@clisp.org>, 2019-2020.  */
+--- a/gnulib/lib/nl_langinfo.c
++++ b/gnulib/lib/nl_langinfo.c
+@@ -2,17 +2,17 @@
+ 
+    Copyright (C) 2007-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+--- a/gnulib/lib/open.c
++++ b/gnulib/lib/open.c
+@@ -1,17 +1,17 @@
+ /* Open a descriptor to a file.
+    Copyright (C) 2007-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Bruno Haible <bruno@clisp.org>, 2007.  */
+--- a/gnulib/lib/pathmax.h
++++ b/gnulib/lib/pathmax.h
+@@ -2,18 +2,18 @@
+    Copyright (C) 1992, 1999, 2001, 2003, 2005, 2009-2021 Free Software
+    Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #ifndef _PATHMAX_H
+ # define _PATHMAX_H
+--- a/gnulib/lib/printf-args.c
++++ b/gnulib/lib/printf-args.c
+@@ -2,18 +2,18 @@
+    Copyright (C) 1999, 2002-2003, 2005-2007, 2009-2021 Free Software
+    Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License along
+-   with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* This file can be parametrized with the following macros:
+      ENABLE_UNISTDIO    Set to 1 to enable the unistdio extensions.
+--- a/gnulib/lib/printf-args.h
++++ b/gnulib/lib/printf-args.h
+@@ -2,18 +2,18 @@
+    Copyright (C) 1999, 2002-2003, 2006-2007, 2011-2021 Free Software
+    Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License along
+-   with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #ifndef _PRINTF_ARGS_H
+ #define _PRINTF_ARGS_H
+--- a/gnulib/lib/printf-parse.c
++++ b/gnulib/lib/printf-parse.c
+@@ -1,18 +1,18 @@
+ /* Formatted output to strings.
+    Copyright (C) 1999-2000, 2002-2003, 2006-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License along
+-   with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* This file can be parametrized with the following macros:
+      CHAR_T             The element type of the format string.
+@@ -48,16 +48,7 @@
+ #include <stddef.h>
+ 
+ /* Get intmax_t.  */
+-#if defined IN_LIBINTL || defined IN_LIBASPRINTF
+-# if HAVE_STDINT_H_WITH_UINTMAX
+-#  include <stdint.h>
+-# endif
+-# if HAVE_INTTYPES_H_WITH_UINTMAX
+-#  include <inttypes.h>
+-# endif
+-#else
+-# include <stdint.h>
+-#endif
++#include <stdint.h>
+ 
+ /* malloc(), realloc(), free().  */
+ #include <stdlib.h>
+--- a/gnulib/lib/printf-parse.h
++++ b/gnulib/lib/printf-parse.h
+@@ -2,18 +2,18 @@
+    Copyright (C) 1999, 2002-2003, 2005, 2007, 2010-2021 Free Software
+    Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License along
+-   with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #ifndef _PRINTF_PARSE_H
+ #define _PRINTF_PARSE_H
+--- /dev/null
++++ b/gnulib/lib/realloc.c
+@@ -0,0 +1,63 @@
++/* realloc() function that is glibc compatible.
++
++   Copyright (C) 1997, 2003-2004, 2006-2007, 2009-2021 Free Software
++   Foundation, Inc.
++
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
++
++   This file is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++   GNU Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
++
++/* written by Jim Meyering and Bruno Haible */
++
++#include <config.h>
++
++#include <stdlib.h>
++
++#include <errno.h>
++
++#include "xalloc-oversized.h"
++
++/* Call the system's realloc below.  This file does not define
++   _GL_USE_STDLIB_ALLOC because it needs Gnulib's malloc if present.  */
++#undef realloc
++
++/* Change the size of an allocated block of memory P to N bytes,
++   with error checking.  If P is NULL, use malloc.  Otherwise if N is zero,
++   free P and return NULL.  */
++
++void *
++rpl_realloc (void *p, size_t n)
++{
++  if (p == NULL)
++    return malloc (n);
++
++  if (n == 0)
++    {
++      free (p);
++      return NULL;
++    }
++
++  if (xalloc_oversized (n, 1))
++    {
++      errno = ENOMEM;
++      return NULL;
++    }
++
++  void *result = realloc (p, n);
++
++#if !HAVE_MALLOC_POSIX
++  if (result == NULL)
++    errno = ENOMEM;
++#endif
++
++  return result;
++}
+--- /dev/null
++++ b/gnulib/lib/reallocarray.c
+@@ -0,0 +1,39 @@
++/* reallocarray function that is glibc compatible.
++
++   Copyright (C) 2017-2021 Free Software Foundation, Inc.
++
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
++
++   This file is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++   GNU Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
++
++/* written by Darshit Shah */
++
++#include <config.h>
++
++#include <stdlib.h>
++#include <errno.h>
++
++#include "intprops.h"
++
++void *
++reallocarray (void *ptr, size_t nmemb, size_t size)
++{
++  size_t nbytes;
++  if (INT_MULTIPLY_WRAPV (nmemb, size, &nbytes))
++    {
++      errno = ENOMEM;
++      return NULL;
++    }
++
++  /* Rely on the semantics of GNU realloc.  */
++  return realloc (ptr, nbytes);
++}
+--- a/gnulib/lib/regcomp.c
++++ b/gnulib/lib/regcomp.c
+@@ -4,16 +4,16 @@
+    Contributed by Isamu Hasegawa <isamu@yamato.ibm.com>.
+ 
+    The GNU C Library is free software; you can redistribute it and/or
+-   modify it under the terms of the GNU General Public
++   modify it under the terms of the GNU Lesser General Public
+    License as published by the Free Software Foundation; either
+-   version 3 of the License, or (at your option) any later version.
++   version 2.1 of the License, or (at your option) any later version.
+ 
+    The GNU C Library is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   General Public License for more details.
++   Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public
++   You should have received a copy of the GNU Lesser General Public
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+--- a/gnulib/lib/regex.c
++++ b/gnulib/lib/regex.c
+@@ -4,16 +4,16 @@
+    Contributed by Isamu Hasegawa <isamu@yamato.ibm.com>.
+ 
+    The GNU C Library is free software; you can redistribute it and/or
+-   modify it under the terms of the GNU General Public
++   modify it under the terms of the GNU Lesser General Public
+    License as published by the Free Software Foundation; either
+-   version 3 of the License, or (at your option) any later version.
++   version 2.1 of the License, or (at your option) any later version.
+ 
+    The GNU C Library is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   General Public License for more details.
++   Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public
++   You should have received a copy of the GNU Lesser General Public
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+--- a/gnulib/lib/regex.h
++++ b/gnulib/lib/regex.h
+@@ -4,16 +4,16 @@
+    This file is part of the GNU C Library.
+ 
+    The GNU C Library is free software; you can redistribute it and/or
+-   modify it under the terms of the GNU General Public
++   modify it under the terms of the GNU Lesser General Public
+    License as published by the Free Software Foundation; either
+-   version 3 of the License, or (at your option) any later version.
++   version 2.1 of the License, or (at your option) any later version.
+ 
+    The GNU C Library is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   General Public License for more details.
++   Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public
++   You should have received a copy of the GNU Lesser General Public
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+--- a/gnulib/lib/regex_internal.c
++++ b/gnulib/lib/regex_internal.c
+@@ -4,16 +4,16 @@
+    Contributed by Isamu Hasegawa <isamu@yamato.ibm.com>.
+ 
+    The GNU C Library is free software; you can redistribute it and/or
+-   modify it under the terms of the GNU General Public
++   modify it under the terms of the GNU Lesser General Public
+    License as published by the Free Software Foundation; either
+-   version 3 of the License, or (at your option) any later version.
++   version 2.1 of the License, or (at your option) any later version.
+ 
+    The GNU C Library is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   General Public License for more details.
++   Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public
++   You should have received a copy of the GNU Lesser General Public
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+--- a/gnulib/lib/regex_internal.h
++++ b/gnulib/lib/regex_internal.h
+@@ -4,16 +4,16 @@
+    Contributed by Isamu Hasegawa <isamu@yamato.ibm.com>.
+ 
+    The GNU C Library is free software; you can redistribute it and/or
+-   modify it under the terms of the GNU General Public
++   modify it under the terms of the GNU Lesser General Public
+    License as published by the Free Software Foundation; either
+-   version 3 of the License, or (at your option) any later version.
++   version 2.1 of the License, or (at your option) any later version.
+ 
+    The GNU C Library is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   General Public License for more details.
++   Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public
++   You should have received a copy of the GNU Lesser General Public
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+--- a/gnulib/lib/regexec.c
++++ b/gnulib/lib/regexec.c
+@@ -4,16 +4,16 @@
+    Contributed by Isamu Hasegawa <isamu@yamato.ibm.com>.
+ 
+    The GNU C Library is free software; you can redistribute it and/or
+-   modify it under the terms of the GNU General Public
++   modify it under the terms of the GNU Lesser General Public
+    License as published by the Free Software Foundation; either
+-   version 3 of the License, or (at your option) any later version.
++   version 2.1 of the License, or (at your option) any later version.
+ 
+    The GNU C Library is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   General Public License for more details.
++   Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public
++   You should have received a copy of the GNU Lesser General Public
+    License along with the GNU C Library; if not, see
+    <https://www.gnu.org/licenses/>.  */
+ 
+@@ -1220,9 +1220,13 @@ proceed_next_node (const re_match_contex
+     {
+       re_node_set *cur_nodes = &mctx->state_log[*pidx]->nodes;
+       re_node_set *edests = &dfa->edests[node];
+-      bool ok = re_node_set_insert (eps_via_nodes, node);
+-      if (__glibc_unlikely (! ok))
+-	return -2;
++
++      if (! re_node_set_contains (eps_via_nodes, node))
++        {
++          bool ok = re_node_set_insert (eps_via_nodes, node);
++          if (__glibc_unlikely (! ok))
++            return -2;
++        }
+ 
+       /* Pick a valid destination, or return -1 if none is found.  */
+       Idx dest_node = -1;
+@@ -1414,7 +1418,7 @@ set_regs (const regex_t *preg, const re_
+       update_regs (dfa, pmatch, prev_idx_match, cur_node, idx, nmatch);
+ 
+       if ((idx == pmatch[0].rm_eo && cur_node == mctx->last_node)
+-	  || re_node_set_contains (&eps_via_nodes, cur_node))
++	  || (fs && re_node_set_contains (&eps_via_nodes, cur_node)))
+ 	{
+ 	  Idx reg_idx;
+ 	  cur_node = -1;
+--- a/gnulib/lib/setlocale-lock.c
++++ b/gnulib/lib/setlocale-lock.c
+@@ -1,17 +1,17 @@
+ /* Return the internal lock used by setlocale_null_r.
+    Copyright (C) 2019-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Bruno Haible <bruno@clisp.org>, 2019.  */
+--- a/gnulib/lib/setlocale_null.c
++++ b/gnulib/lib/setlocale_null.c
+@@ -1,17 +1,17 @@
+ /* Query the name of the current global locale.
+    Copyright (C) 2019-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Bruno Haible <bruno@clisp.org>, 2019.  */
+--- a/gnulib/lib/setlocale_null.h
++++ b/gnulib/lib/setlocale_null.h
+@@ -1,17 +1,17 @@
+ /* Query the name of the current global locale.
+    Copyright (C) 2019-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Bruno Haible <bruno@clisp.org>, 2019.  */
+--- a/gnulib/lib/size_max.h
++++ b/gnulib/lib/size_max.h
+@@ -2,18 +2,18 @@
+    Copyright (C) 2005-2006, 2009-2021 Free Software Foundation, Inc.
+    Written by Simon Josefsson.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #ifndef GNULIB_SIZE_MAX_H
+ #define GNULIB_SIZE_MAX_H
+--- a/gnulib/lib/stat-time.c
++++ b/gnulib/lib/stat-time.c
+@@ -1,3 +1,21 @@
++/* stat-related time functions.
++
++   Copyright (C) 2012-2021 Free Software Foundation, Inc.
++
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
++
++   This file is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++   GNU Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
++
+ #include <config.h>
++
+ #define _GL_STAT_TIME_INLINE _GL_EXTERN_INLINE
+ #include "stat-time.h"
+--- a/gnulib/lib/stat-time.h
++++ b/gnulib/lib/stat-time.h
+@@ -2,17 +2,17 @@
+ 
+    Copyright (C) 2005, 2007, 2009-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Paul Eggert.  */
+--- a/gnulib/lib/stat-w32.c
++++ b/gnulib/lib/stat-w32.c
+@@ -1,17 +1,17 @@
+ /* Core of implementation of fstat and stat for native Windows.
+    Copyright (C) 2017-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Bruno Haible.  */
+--- a/gnulib/lib/stat-w32.h
++++ b/gnulib/lib/stat-w32.h
+@@ -1,17 +1,17 @@
+ /* Core of implementation of fstat and stat for native Windows.
+    Copyright (C) 2017-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #ifndef _STAT_W32_H
+--- a/gnulib/lib/stat.c
++++ b/gnulib/lib/stat.c
+@@ -1,17 +1,17 @@
+ /* Work around platform bugs in stat.
+    Copyright (C) 2009-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Eric Blake and Bruno Haible.  */
+--- a/gnulib/lib/stdarg.in.h
++++ b/gnulib/lib/stdarg.in.h
+@@ -1,18 +1,18 @@
+ /* Substitute for and wrapper around <stdarg.h>.
+    Copyright (C) 2008-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #ifndef _@GUARD_PREFIX@_STDARG_H
+ 
+--- a/gnulib/lib/stdbool.in.h
++++ b/gnulib/lib/stdbool.in.h
+@@ -1,18 +1,18 @@
+ /* Copyright (C) 2001-2003, 2006-2021 Free Software Foundation, Inc.
+    Written by Bruno Haible <haible@clisp.cons.org>, 2001.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #ifndef _GL_STDBOOL_H
+ #define _GL_STDBOOL_H
+--- a/gnulib/lib/stddef.in.h
++++ b/gnulib/lib/stddef.in.h
+@@ -2,18 +2,18 @@
+ 
+    Copyright (C) 2009-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Eric Blake.  */
+ 
+--- a/gnulib/lib/stdint.in.h
++++ b/gnulib/lib/stdint.in.h
+@@ -2,18 +2,18 @@
+    Written by Paul Eggert, Bruno Haible, Sam Steingold, Peter Burwood.
+    This file is part of gnulib.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /*
+  * ISO C 99 <stdint.h> for platforms that lack it.
+@@ -85,7 +85,7 @@
+ 
+ /* Override WINT_MIN and WINT_MAX if gnulib's <wchar.h> or <wctype.h> overrides
+    wint_t.  */
+-#if @GNULIB_OVERRIDES_WINT_T@
++#if @GNULIBHEADERS_OVERRIDE_WINT_T@
+ # undef WINT_MIN
+ # undef WINT_MAX
+ # define WINT_MIN 0x0U
+@@ -598,7 +598,7 @@ typedef int _verify_intmax_size[sizeof (
+ /* wint_t limits */
+ /* If gnulib's <wchar.h> or <wctype.h> overrides wint_t, @WINT_T_SUFFIX@ is not
+    accurate, therefore use the definitions from above.  */
+-# if !@GNULIB_OVERRIDES_WINT_T@
++# if !@GNULIBHEADERS_OVERRIDE_WINT_T@
+ #  undef WINT_MIN
+ #  undef WINT_MAX
+ #  if @HAVE_SIGNED_WINT_T@
+--- a/gnulib/lib/stdio.in.h
++++ b/gnulib/lib/stdio.in.h
+@@ -2,18 +2,18 @@
+ 
+    Copyright (C) 2004, 2007-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #if __GNUC__ >= 3
+ @PRAGMA_SYSTEM_HEADER@
+@@ -242,7 +242,7 @@ _GL_WARN_ON_USE (fclose, "fclose is not
+ _GL_CXXALIAS_MDA (fcloseall, int, (void));
+ # else
+ #  if @HAVE_DECL_FCLOSEALL@
+-#   if defined __FreeBSD__
++#   if defined __FreeBSD__ || defined __DragonFly__
+ _GL_CXXALIAS_SYS (fcloseall, void, (void));
+ #   else
+ _GL_CXXALIAS_SYS (fcloseall, int, (void));
+@@ -1257,6 +1257,7 @@ _GL_CXXALIASWARN (scanf);
+ #  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+ #   define snprintf rpl_snprintf
+ #  endif
++#  define GNULIB_overrides_snprintf 1
+ _GL_FUNCDECL_RPL (snprintf, int,
+                   (char *restrict str, size_t size,
+                    const char *restrict format, ...)
+@@ -1302,6 +1303,7 @@ _GL_WARN_ON_USE (snprintf, "snprintf is
+ #  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+ #   define sprintf rpl_sprintf
+ #  endif
++#  define GNULIB_overrides_sprintf 1
+ _GL_FUNCDECL_RPL (sprintf, int,
+                   (char *restrict str, const char *restrict format, ...)
+                   _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 3)
+@@ -1369,6 +1371,7 @@ _GL_WARN_ON_USE (tmpfile, "tmpfile is no
+ #  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+ #   define asprintf rpl_asprintf
+ #  endif
++#  define GNULIB_overrides_asprintf
+ _GL_FUNCDECL_RPL (asprintf, int,
+                   (char **result, const char *format, ...)
+                   _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 3)
+@@ -1390,6 +1393,7 @@ _GL_CXXALIASWARN (asprintf);
+ #  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+ #   define vasprintf rpl_vasprintf
+ #  endif
++#  define GNULIB_overrides_vasprintf 1
+ _GL_FUNCDECL_RPL (vasprintf, int,
+                   (char **result, const char *format, va_list args)
+                   _GL_ATTRIBUTE_FORMAT_PRINTF_STANDARD (2, 0)
+@@ -1573,6 +1577,7 @@ _GL_CXXALIASWARN (vscanf);
+ #  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+ #   define vsnprintf rpl_vsnprintf
+ #  endif
++#  define GNULIB_overrides_vsnprintf 1
+ _GL_FUNCDECL_RPL (vsnprintf, int,
+                   (char *restrict str, size_t size,
+                    const char *restrict format, va_list args)
+@@ -1609,6 +1614,7 @@ _GL_WARN_ON_USE (vsnprintf, "vsnprintf i
+ #  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+ #   define vsprintf rpl_vsprintf
+ #  endif
++#  define GNULIB_overrides_vsprintf 1
+ _GL_FUNCDECL_RPL (vsprintf, int,
+                   (char *restrict str,
+                    const char *restrict format, va_list args)
+--- a/gnulib/lib/stdlib.in.h
++++ b/gnulib/lib/stdlib.in.h
+@@ -2,17 +2,17 @@
+ 
+    Copyright (C) 1995, 2001-2004, 2006-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #if __GNUC__ >= 3
+@@ -1032,12 +1032,23 @@ _GL_WARN_ON_USE (realloc, "realloc is no
+ 
+ 
+ #if @GNULIB_REALLOCARRAY@
+-# if ! @HAVE_REALLOCARRAY@
++# if @REPLACE_REALLOCARRAY@
++#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
++#   undef reallocarray
++#   define reallocarray rpl_reallocarray
++#  endif
++_GL_FUNCDECL_RPL (reallocarray, void *,
++                  (void *ptr, size_t nmemb, size_t size));
++_GL_CXXALIAS_RPL (reallocarray, void *,
++                  (void *ptr, size_t nmemb, size_t size));
++# else
++#  if ! @HAVE_REALLOCARRAY@
+ _GL_FUNCDECL_SYS (reallocarray, void *,
+                   (void *ptr, size_t nmemb, size_t size));
+-# endif
++#  endif
+ _GL_CXXALIAS_SYS (reallocarray, void *,
+                   (void *ptr, size_t nmemb, size_t size));
++# endif
+ _GL_CXXALIASWARN (reallocarray);
+ #elif defined GNULIB_POSIXCHECK
+ # undef reallocarray
+@@ -1202,6 +1213,47 @@ _GL_WARN_ON_USE (strtold, "strtold is un
+ # endif
+ #endif
+ 
++#if @GNULIB_STRTOL@
++/* Parse a signed integer whose textual representation starts at STRING.
++   The integer is expected to be in base BASE (2 <= BASE <= 36); if BASE == 0,
++   it may be decimal or octal (with prefix "0") or hexadecimal (with prefix
++   "0x").
++   If ENDPTR is not NULL, the address of the first byte after the integer is
++   stored in *ENDPTR.
++   Upon overflow, the return value is LONG_MAX or LONG_MIN, and errno is set
++   to ERANGE.  */
++# if @REPLACE_STRTOL@
++#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
++#   define strtol rpl_strtol
++#  endif
++#  define GNULIB_defined_strtol_function 1
++_GL_FUNCDECL_RPL (strtol, long,
++                  (const char *restrict string, char **restrict endptr,
++                   int base)
++                  _GL_ARG_NONNULL ((1)));
++_GL_CXXALIAS_RPL (strtol, long,
++                  (const char *restrict string, char **restrict endptr,
++                   int base));
++# else
++#  if !@HAVE_STRTOL@
++_GL_FUNCDECL_SYS (strtol, long,
++                  (const char *restrict string, char **restrict endptr,
++                   int base)
++                  _GL_ARG_NONNULL ((1)));
++#  endif
++_GL_CXXALIAS_SYS (strtol, long,
++                  (const char *restrict string, char **restrict endptr,
++                   int base));
++# endif
++_GL_CXXALIASWARN (strtol);
++#elif defined GNULIB_POSIXCHECK
++# undef strtol
++# if HAVE_RAW_DECL_STRTOL
++_GL_WARN_ON_USE (strtol, "strtol is unportable - "
++                 "use gnulib module strtol for portability");
++# endif
++#endif
++
+ #if @GNULIB_STRTOLL@
+ /* Parse a signed integer whose textual representation starts at STRING.
+    The integer is expected to be in base BASE (2 <= BASE <= 36); if BASE == 0,
+@@ -1211,15 +1263,29 @@ _GL_WARN_ON_USE (strtold, "strtold is un
+    stored in *ENDPTR.
+    Upon overflow, the return value is LLONG_MAX or LLONG_MIN, and errno is set
+    to ERANGE.  */
+-# if !@HAVE_STRTOLL@
++# if @REPLACE_STRTOLL@
++#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
++#   define strtoll rpl_strtoll
++#  endif
++#  define GNULIB_defined_strtoll_function 1
++_GL_FUNCDECL_RPL (strtoll, long long,
++                  (const char *restrict string, char **restrict endptr,
++                   int base)
++                  _GL_ARG_NONNULL ((1)));
++_GL_CXXALIAS_RPL (strtoll, long long,
++                  (const char *restrict string, char **restrict endptr,
++                   int base));
++# else
++#  if !@HAVE_STRTOLL@
+ _GL_FUNCDECL_SYS (strtoll, long long,
+                   (const char *restrict string, char **restrict endptr,
+                    int base)
+                   _GL_ARG_NONNULL ((1)));
+-# endif
++#  endif
+ _GL_CXXALIAS_SYS (strtoll, long long,
+                   (const char *restrict string, char **restrict endptr,
+                    int base));
++# endif
+ _GL_CXXALIASWARN (strtoll);
+ #elif defined GNULIB_POSIXCHECK
+ # undef strtoll
+@@ -1229,6 +1295,46 @@ _GL_WARN_ON_USE (strtoll, "strtoll is un
+ # endif
+ #endif
+ 
++#if @GNULIB_STRTOUL@
++/* Parse an unsigned integer whose textual representation starts at STRING.
++   The integer is expected to be in base BASE (2 <= BASE <= 36); if BASE == 0,
++   it may be decimal or octal (with prefix "0") or hexadecimal (with prefix
++   "0x").
++   If ENDPTR is not NULL, the address of the first byte after the integer is
++   stored in *ENDPTR.
++   Upon overflow, the return value is ULONG_MAX, and errno is set to ERANGE.  */
++# if @REPLACE_STRTOUL@
++#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
++#   define strtoul rpl_strtoul
++#  endif
++#  define GNULIB_defined_strtoul_function 1
++_GL_FUNCDECL_RPL (strtoul, unsigned long,
++                  (const char *restrict string, char **restrict endptr,
++                   int base)
++                  _GL_ARG_NONNULL ((1)));
++_GL_CXXALIAS_RPL (strtoul, unsigned long,
++                  (const char *restrict string, char **restrict endptr,
++                   int base));
++# else
++#  if !@HAVE_STRTOUL@
++_GL_FUNCDECL_SYS (strtoul, unsigned long,
++                  (const char *restrict string, char **restrict endptr,
++                   int base)
++                  _GL_ARG_NONNULL ((1)));
++#  endif
++_GL_CXXALIAS_SYS (strtoul, unsigned long,
++                  (const char *restrict string, char **restrict endptr,
++                   int base));
++# endif
++_GL_CXXALIASWARN (strtoul);
++#elif defined GNULIB_POSIXCHECK
++# undef strtoul
++# if HAVE_RAW_DECL_STRTOUL
++_GL_WARN_ON_USE (strtoul, "strtoul is unportable - "
++                 "use gnulib module strtoul for portability");
++# endif
++#endif
++
+ #if @GNULIB_STRTOULL@
+ /* Parse an unsigned integer whose textual representation starts at STRING.
+    The integer is expected to be in base BASE (2 <= BASE <= 36); if BASE == 0,
+@@ -1238,15 +1344,29 @@ _GL_WARN_ON_USE (strtoll, "strtoll is un
+    stored in *ENDPTR.
+    Upon overflow, the return value is ULLONG_MAX, and errno is set to
+    ERANGE.  */
+-# if !@HAVE_STRTOULL@
++# if @REPLACE_STRTOULL@
++#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
++#   define strtoull rpl_strtoull
++#  endif
++#  define GNULIB_defined_strtoull_function 1
++_GL_FUNCDECL_RPL (strtoull, unsigned long long,
++                  (const char *restrict string, char **restrict endptr,
++                   int base)
++                  _GL_ARG_NONNULL ((1)));
++_GL_CXXALIAS_RPL (strtoull, unsigned long long,
++                  (const char *restrict string, char **restrict endptr,
++                   int base));
++# else
++#  if !@HAVE_STRTOULL@
+ _GL_FUNCDECL_SYS (strtoull, unsigned long long,
+                   (const char *restrict string, char **restrict endptr,
+                    int base)
+                   _GL_ARG_NONNULL ((1)));
+-# endif
++#  endif
+ _GL_CXXALIAS_SYS (strtoull, unsigned long long,
+                   (const char *restrict string, char **restrict endptr,
+                    int base));
++# endif
+ _GL_CXXALIASWARN (strtoull);
+ #elif defined GNULIB_POSIXCHECK
+ # undef strtoull
+--- a/gnulib/lib/stpcpy.c
++++ b/gnulib/lib/stpcpy.c
+@@ -5,17 +5,17 @@
+    NOTE: The canonical source of this file is maintained with the GNU C Library.
+    Bugs can be reported to bug-glibc@prep.ai.mit.edu.
+ 
+-   This program is free software: you can redistribute it and/or modify it
+-   under the terms of the GNU General Public License as published by the
+-   Free Software Foundation; either version 3 of the License, or any
+-   later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+--- a/gnulib/lib/str-kmp.h
++++ b/gnulib/lib/str-kmp.h
+@@ -3,18 +3,26 @@
+    Copyright (C) 2005-2021 Free Software Foundation, Inc.
+    Written by Bruno Haible <bruno@clisp.org>, 2005.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software.
++   It is dual-licensed under "the GNU LGPLv3+ or the GNU GPLv2+".
++   You can redistribute it and/or modify it under either
++     - the terms of the GNU Lesser General Public License as published
++       by the Free Software Foundation; either version 3, or (at your
++       option) any later version, or
++     - the terms of the GNU General Public License as published by the
++       Free Software Foundation; either version 2, or (at your option)
++       any later version, or
++     - the same dual license "the GNU LGPLv3+ or the GNU GPLv2+".
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++   Lesser General Public License and the GNU General Public License
++   for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public
++   License and of the GNU General Public License along with this
++   program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Before including this file, you need to define:
+      UNIT                    The element type of the needle and haystack.
+--- a/gnulib/lib/str-two-way.h
++++ b/gnulib/lib/str-two-way.h
+@@ -3,18 +3,18 @@
+    This file is part of the GNU C Library.
+    Written by Eric Blake <ebb9@byu.net>, 2008.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License along
+-   with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Before including this file, you need to include <config.h> and
+    <string.h>, and define:
+--- a/gnulib/lib/strcasecmp.c
++++ b/gnulib/lib/strcasecmp.c
+@@ -1,18 +1,18 @@
+ /* Case-insensitive string comparison function.
+    Copyright (C) 1998-1999, 2005-2007, 2009-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+ 
+--- a/gnulib/lib/strcasestr.c
++++ b/gnulib/lib/strcasestr.c
+@@ -2,18 +2,18 @@
+    Copyright (C) 2005-2021 Free Software Foundation, Inc.
+    Written by Bruno Haible <bruno@clisp.org>, 2005.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+ 
+--- a/gnulib/lib/strdup.c
++++ b/gnulib/lib/strdup.c
+@@ -3,18 +3,18 @@
+ 
+    This file is part of the GNU C Library.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License along
+-   with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #ifndef _LIBC
+ # include <config.h>
+--- a/gnulib/lib/streq.h
++++ b/gnulib/lib/streq.h
+@@ -1,17 +1,17 @@
+ /* Optimized string comparison.
+    Copyright (C) 2001-2002, 2007, 2009-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify it
+-   under the terms of the GNU General Public License as published
+-   by the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   General Public License for more details.
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Bruno Haible <bruno@clisp.org>.  */
+--- a/gnulib/lib/strerror-override.c
++++ b/gnulib/lib/strerror-override.c
+@@ -2,17 +2,17 @@
+ 
+    Copyright (C) 2010-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Bruno Haible <bruno@clisp.org>, 2010.  */
+@@ -29,6 +29,8 @@
+ # endif
+ #endif
+ 
++#if !GNULIB_defined_strerror_override_macro
++
+ /* If ERRNUM maps to an errno value defined by gnulib, return a string
+    describing the error.  Otherwise return NULL.  */
+ const char *
+@@ -37,12 +39,12 @@ strerror_override (int errnum)
+   /* These error messages are taken from glibc/sysdeps/gnu/errlist.c.  */
+   switch (errnum)
+     {
+-#if REPLACE_STRERROR_0
++# if REPLACE_STRERROR_0
+     case 0:
+       return "Success";
+-#endif
++# endif
+ 
+-#if GNULIB_defined_ESOCK /* native Windows platforms with older <errno.h> */
++# if GNULIB_defined_ESOCK /* native Windows platforms with older <errno.h> */
+     case EINPROGRESS:
+       return "Operation now in progress";
+     case EALREADY:
+@@ -89,8 +91,8 @@ strerror_override (int errnum)
+       return "No route to host";
+     case EWOULDBLOCK:
+       return "Operation would block";
+-#endif
+-#if GNULIB_defined_ESTREAMS /* native Windows platforms with older <errno.h> */
++# endif
++# if GNULIB_defined_ESTREAMS /* native Windows platforms with older <errno.h> */
+     case ETXTBSY:
+       return "Text file busy";
+     case ENODATA:
+@@ -103,8 +105,8 @@ strerror_override (int errnum)
+       return "Timer expired";
+     case EOTHER:
+       return "Other error";
+-#endif
+-#if GNULIB_defined_EWINSOCK /* native Windows platforms */
++# endif
++# if GNULIB_defined_EWINSOCK /* native Windows platforms */
+     case ESOCKTNOSUPPORT:
+       return "Socket type not supported";
+     case EPFNOSUPPORT:
+@@ -125,7 +127,7 @@ strerror_override (int errnum)
+       return "Stale NFS file handle";
+     case EREMOTE:
+       return "Object is remote";
+-# if HAVE_WINSOCK2_H
++#  if HAVE_WINSOCK2_H
+       /* WSA_INVALID_HANDLE maps to EBADF */
+       /* WSA_NOT_ENOUGH_MEMORY maps to ENOMEM */
+       /* WSA_INVALID_PARAMETER maps to EINVAL */
+@@ -213,90 +215,92 @@ strerror_override (int errnum)
+     case WSANO_DATA:
+       return "Valid name, no data record of requested type";
+       /* WSA_QOS_* omitted */
++#  endif
+ # endif
+-#endif
+ 
+-#if GNULIB_defined_ENOMSG
++# if GNULIB_defined_ENOMSG
+     case ENOMSG:
+       return "No message of desired type";
+-#endif
++# endif
+ 
+-#if GNULIB_defined_EIDRM
++# if GNULIB_defined_EIDRM
+     case EIDRM:
+       return "Identifier removed";
+-#endif
++# endif
+ 
+-#if GNULIB_defined_ENOLINK
++# if GNULIB_defined_ENOLINK
+     case ENOLINK:
+       return "Link has been severed";
+-#endif
++# endif
+ 
+-#if GNULIB_defined_EPROTO
++# if GNULIB_defined_EPROTO
+     case EPROTO:
+       return "Protocol error";
+-#endif
++# endif
+ 
+-#if GNULIB_defined_EMULTIHOP
++# if GNULIB_defined_EMULTIHOP
+     case EMULTIHOP:
+       return "Multihop attempted";
+-#endif
++# endif
+ 
+-#if GNULIB_defined_EBADMSG
++# if GNULIB_defined_EBADMSG
+     case EBADMSG:
+       return "Bad message";
+-#endif
++# endif
+ 
+-#if GNULIB_defined_EOVERFLOW
++# if GNULIB_defined_EOVERFLOW
+     case EOVERFLOW:
+       return "Value too large for defined data type";
+-#endif
++# endif
+ 
+-#if GNULIB_defined_ENOTSUP
++# if GNULIB_defined_ENOTSUP
+     case ENOTSUP:
+       return "Not supported";
+-#endif
++# endif
+ 
+-#if GNULIB_defined_ENETRESET
++# if GNULIB_defined_ENETRESET
+     case ENETRESET:
+       return "Network dropped connection on reset";
+-#endif
++# endif
+ 
+-#if GNULIB_defined_ECONNABORTED
++# if GNULIB_defined_ECONNABORTED
+     case ECONNABORTED:
+       return "Software caused connection abort";
+-#endif
++# endif
+ 
+-#if GNULIB_defined_ESTALE
++# if GNULIB_defined_ESTALE
+     case ESTALE:
+       return "Stale NFS file handle";
+-#endif
++# endif
+ 
+-#if GNULIB_defined_EDQUOT
++# if GNULIB_defined_EDQUOT
+     case EDQUOT:
+       return "Disk quota exceeded";
+-#endif
++# endif
+ 
+-#if GNULIB_defined_ECANCELED
++# if GNULIB_defined_ECANCELED
+     case ECANCELED:
+       return "Operation canceled";
+-#endif
++# endif
+ 
+-#if GNULIB_defined_EOWNERDEAD
++# if GNULIB_defined_EOWNERDEAD
+     case EOWNERDEAD:
+       return "Owner died";
+-#endif
++# endif
+ 
+-#if GNULIB_defined_ENOTRECOVERABLE
++# if GNULIB_defined_ENOTRECOVERABLE
+     case ENOTRECOVERABLE:
+       return "State not recoverable";
+-#endif
++# endif
+ 
+-#if GNULIB_defined_EILSEQ
++# if GNULIB_defined_EILSEQ
+     case EILSEQ:
+       return "Invalid or incomplete multibyte or wide character";
+-#endif
++# endif
+ 
+     default:
+       return NULL;
+     }
+ }
++
++#endif
+--- a/gnulib/lib/strerror-override.h
++++ b/gnulib/lib/strerror-override.h
+@@ -2,17 +2,17 @@
+ 
+    Copyright (C) 2010-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #ifndef _GL_STRERROR_OVERRIDE_H
+@@ -51,6 +51,7 @@
+ extern const char *strerror_override (int errnum) _GL_ATTRIBUTE_CONST;
+ # else
+ #  define strerror_override(ignored) NULL
++#  define GNULIB_defined_strerror_override_macro 1
+ # endif
+ 
+ #endif /* _GL_STRERROR_OVERRIDE_H */
+--- a/gnulib/lib/strerror.c
++++ b/gnulib/lib/strerror.c
+@@ -2,17 +2,17 @@
+ 
+    Copyright (C) 2007-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+--- a/gnulib/lib/string.in.h
++++ b/gnulib/lib/string.in.h
+@@ -2,18 +2,18 @@
+ 
+    Copyright (C) 1995-1996, 2001-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #if __GNUC__ >= 3
+ @PRAGMA_SYSTEM_HEADER@
+@@ -446,7 +446,7 @@ _GL_WARN_ON_USE (strdup, "strdup is unpo
+ #elif @GNULIB_MDA_STRDUP@
+ /* On native Windows, map 'creat' to '_creat', so that -loldnames is not
+    required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+-   platforms by defining GNULIB_NAMESPACE::creat always.  */
++   platforms by defining GNULIB_NAMESPACE::strdup always.  */
+ # if defined _WIN32 && !defined __CYGWIN__
+ #  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+ #   undef strdup
+--- a/gnulib/lib/strings.in.h
++++ b/gnulib/lib/strings.in.h
+@@ -2,18 +2,18 @@
+ 
+    Copyright (C) 2007-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #ifndef _@GUARD_PREFIX@_STRINGS_H
+ 
+--- a/gnulib/lib/strncasecmp.c
++++ b/gnulib/lib/strncasecmp.c
+@@ -1,18 +1,18 @@
+ /* strncasecmp.c -- case insensitive string comparator
+    Copyright (C) 1998-1999, 2005-2007, 2009-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+ 
+--- a/gnulib/lib/strndup.c
++++ b/gnulib/lib/strndup.c
+@@ -3,18 +3,18 @@
+    Copyright (C) 1996-1998, 2001-2003, 2005-2007, 2009-2021 Free Software
+    Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify it
+-   under the terms of the GNU General Public License as published by the
+-   Free Software Foundation; either version 3, or (at your option) any
+-   later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+ 
+--- a/gnulib/lib/strnlen.c
++++ b/gnulib/lib/strnlen.c
+@@ -2,18 +2,18 @@
+    Copyright (C) 2005-2007, 2009-2021 Free Software Foundation, Inc.
+    Written by Simon Josefsson.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+ 
+--- a/gnulib/lib/strnlen1.c
++++ b/gnulib/lib/strnlen1.c
+@@ -1,17 +1,17 @@
+ /* Find the length of STRING + 1, but scan at most MAXLEN bytes.
+    Copyright (C) 2005-2006, 2009-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+--- a/gnulib/lib/strnlen1.h
++++ b/gnulib/lib/strnlen1.h
+@@ -1,17 +1,17 @@
+ /* Find the length of STRING + 1, but scan at most MAXLEN bytes.
+    Copyright (C) 2005, 2009-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #ifndef _STRNLEN1_H
+--- a/gnulib/lib/strstr.c
++++ b/gnulib/lib/strstr.c
+@@ -2,18 +2,18 @@
+    Foundation, Inc.
+    This file is part of the GNU C Library.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License along
+-   with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* This particular implementation was written by Eric Blake, 2008.  */
+ 
+--- a/gnulib/lib/sys_stat.in.h
++++ b/gnulib/lib/sys_stat.in.h
+@@ -1,18 +1,18 @@
+ /* Provide a more complete sys/stat.h header file.
+    Copyright (C) 2005-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Eric Blake, Paul Eggert, and Jim Meyering.  */
+ 
+--- a/gnulib/lib/sys_types.in.h
++++ b/gnulib/lib/sys_types.in.h
+@@ -2,18 +2,18 @@
+ 
+    Copyright (C) 2011-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #if __GNUC__ >= 3
+ @PRAGMA_SYSTEM_HEADER@
+--- a/gnulib/lib/time.in.h
++++ b/gnulib/lib/time.in.h
+@@ -2,18 +2,18 @@
+ 
+    Copyright (C) 2007-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #if __GNUC__ >= 3
+ @PRAGMA_SYSTEM_HEADER@
+@@ -340,22 +340,60 @@ _GL_CXXALIASWARN (strftime);
+ # endif
+ 
+ # if defined _GNU_SOURCE && @GNULIB_TIME_RZ@ && ! @HAVE_TIMEZONE_T@
++/* Functions that use a first-class time zone data type, instead of
++   relying on an implicit global time zone.
++   Inspired by NetBSD.  */
++
++/* Represents a time zone.
++   (timezone_t) NULL stands for UTC.  */
+ typedef struct tm_zone *timezone_t;
++
++/* tzalloc (name)
++   Returns a time zone object for the given time zone NAME.  This object
++   represents the time zone that other functions would use it the TZ
++   environment variable was set to NAME.
++   If NAME is NULL, the result represents the time zone that other functions
++   would use it the TZ environment variable was unset.
++   May return NULL if NAME is invalid (this is platform dependent) or
++   upon memory allocation failure.  */
+ _GL_FUNCDECL_SYS (tzalloc, timezone_t, (char const *__name));
+ _GL_CXXALIAS_SYS (tzalloc, timezone_t, (char const *__name));
++
++/* tzfree (tz)
++   Frees a time zone object.
++   The argument must have been returned by tzalloc().  */
+ _GL_FUNCDECL_SYS (tzfree, void, (timezone_t __tz));
+ _GL_CXXALIAS_SYS (tzfree, void, (timezone_t __tz));
++
++/* localtime_rz (tz, &t, &result)
++   Converts an absolute time T to a broken-down time RESULT, assuming the
++   time zone TZ.
++   This function is like 'localtime_r', but relies on the argument TZ instead
++   of an implicit global time zone.  */
+ _GL_FUNCDECL_SYS (localtime_rz, struct tm *,
+                   (timezone_t __tz, time_t const *restrict __timer,
+                    struct tm *restrict __result) _GL_ARG_NONNULL ((2, 3)));
+ _GL_CXXALIAS_SYS (localtime_rz, struct tm *,
+                   (timezone_t __tz, time_t const *restrict __timer,
+                    struct tm *restrict __result));
++
++/* mktime_z (tz, &tm)
++   Normalizes the broken-down time TM and converts it to an absolute time,
++   assuming the time zone TZ.  Returns the absolute time.
++   This function is like 'mktime', but relies on the argument TZ instead
++   of an implicit global time zone.  */
+ _GL_FUNCDECL_SYS (mktime_z, time_t,
+-                  (timezone_t __tz, struct tm *restrict __result)
++                  (timezone_t __tz, struct tm *restrict __tm)
+                   _GL_ARG_NONNULL ((2)));
+ _GL_CXXALIAS_SYS (mktime_z, time_t,
+-                  (timezone_t __tz, struct tm *restrict __result));
++                  (timezone_t __tz, struct tm *restrict __tm));
++
++/* Time zone abbreviation strings (returned by 'localtime_rz' or 'mktime_z'
++   in the 'tm_zone' member of 'struct tm') are valid as long as
++     - the 'struct tm' argument is not destroyed or overwritten,
++   and
++     - the 'timezone_t' argument is not freed through tzfree().  */
++
+ # endif
+ 
+ /* Convert TM to a time_t value, assuming UTC.  */
+--- a/gnulib/lib/unistd.c
++++ b/gnulib/lib/unistd.c
+@@ -1,4 +1,22 @@
++/* Inline functions for <unistd.h>.
++
++   Copyright (C) 2012-2021 Free Software Foundation, Inc.
++
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
++
++   This file is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++   GNU Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
++
+ #include <config.h>
++
+ #define _GL_UNISTD_INLINE _GL_EXTERN_INLINE
+ #include "unistd.h"
+ typedef int dummy;
+--- a/gnulib/lib/unistd.in.h
++++ b/gnulib/lib/unistd.in.h
+@@ -1,18 +1,18 @@
+ /* Substitute for and wrapper around <unistd.h>.
+    Copyright (C) 2003-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #ifndef _@GUARD_PREFIX@_UNISTD_H
+ 
+@@ -1521,6 +1521,7 @@ _GL_WARN_ON_USE (group_member, "group_me
+ #   undef isatty
+ #   define isatty rpl_isatty
+ #  endif
++#  define GNULIB_defined_isatty 1
+ _GL_FUNCDECL_RPL (isatty, int, (int fd));
+ _GL_CXXALIAS_RPL (isatty, int, (int fd));
+ # elif defined _WIN32 && !defined __CYGWIN__
+@@ -2027,15 +2028,23 @@ _GL_WARN_ON_USE (sleep, "sleep is unport
+ #if @GNULIB_MDA_SWAB@
+ /* On native Windows, map 'swab' to '_swab', so that -loldnames is not
+    required.  In C++ with GNULIB_NAMESPACE, avoid differences between
+-   platforms by defining GNULIB_NAMESPACE::creat always.  */
++   platforms by defining GNULIB_NAMESPACE::swab always.  */
+ # if defined _WIN32 && !defined __CYGWIN__
+ #  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+ #   undef swab
+ #   define swab _swab
+ #  endif
+-_GL_CXXALIAS_MDA (swab, void, (char *from, char *to, int n));
+-# else
++/* Need to cast, because in old mingw the arguments are
++                             (const char *from, char *to, size_t n).  */
++_GL_CXXALIAS_MDA_CAST (swab, void, (char *from, char *to, int n));
++# else
++#  if defined __hpux /* HP-UX */
++_GL_CXXALIAS_SYS (swab, void, (const char *from, char *to, int n));
++#  elif defined __sun && !defined _XPG4 /* Solaris */
++_GL_CXXALIAS_SYS (swab, void, (const char *from, char *to, ssize_t n));
++#  else
+ _GL_CXXALIAS_SYS (swab, void, (const void *from, void *to, ssize_t n));
++#  endif
+ # endif
+ _GL_CXXALIASWARN (swab);
+ #endif
+--- a/gnulib/lib/unitypes.in.h
++++ b/gnulib/lib/unitypes.in.h
+@@ -1,17 +1,17 @@
+ /* Elementary types and macros for the GNU UniString library.
+    Copyright (C) 2002, 2005-2006, 2009-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify it
+-   under the terms of the GNU General Public License as published
+-   by the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   General Public License for more details.
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #ifndef _UNITYPES_H
+--- a/gnulib/lib/uniwidth.in.h
++++ b/gnulib/lib/uniwidth.in.h
+@@ -2,17 +2,17 @@
+    Copyright (C) 2001-2002, 2005, 2007, 2009-2021 Free Software Foundation,
+    Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify it
+-   under the terms of the GNU General Public License as published
+-   by the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   General Public License for more details.
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #ifndef _UNIWIDTH_H
+--- a/gnulib/lib/uniwidth/cjk.h
++++ b/gnulib/lib/uniwidth/cjk.h
+@@ -2,17 +2,17 @@
+    Copyright (C) 2001-2002, 2005-2007, 2009-2021 Free Software Foundation, Inc.
+    Written by Bruno Haible <bruno@clisp.org>, 2002.
+ 
+-   This program is free software: you can redistribute it and/or modify it
+-   under the terms of the GNU General Public License as published
+-   by the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   General Public License for more details.
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include "streq.h"
+--- a/gnulib/lib/uniwidth/width.c
++++ b/gnulib/lib/uniwidth/width.c
+@@ -2,17 +2,17 @@
+    Copyright (C) 2001-2002, 2006-2021 Free Software Foundation, Inc.
+    Written by Bruno Haible <bruno@clisp.org>, 2002.
+ 
+-   This program is free software: you can redistribute it and/or modify it
+-   under the terms of the GNU General Public License as published
+-   by the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   General Public License for more details.
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+--- a/gnulib/lib/vasnprintf.c
++++ b/gnulib/lib/vasnprintf.c
+@@ -1,18 +1,18 @@
+ /* vsprintf with automatic memory allocation.
+    Copyright (C) 1999, 2002-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License along
+-   with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* This file can be parametrized with the following macros:
+      VASNPRINTF         The name of the function being defined.
+@@ -60,9 +60,7 @@
+ #ifndef VASNPRINTF
+ # include <config.h>
+ #endif
+-#ifndef IN_LIBINTL
+-# include <alloca.h>
+-#endif
++#include <alloca.h>
+ 
+ /* Specification.  */
+ #ifndef VASNPRINTF
+@@ -1859,6 +1857,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *
+     /* errno is already set.  */
+     return NULL;
+ 
++  /* Frees the memory allocated by this function.  Preserves errno.  */
+ #define CLEANUP() \
+   if (d.dir != d.direct_alloc_dir)                                      \
+     free (d.dir);                                                       \
+@@ -1923,7 +1922,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *
+ 
+     /* Ensures that allocated >= needed.  Aborts through a jump to
+        out_of_memory if needed is SIZE_MAX or otherwise too big.  */
+-#define ENSURE_ALLOCATION(needed) \
++#define ENSURE_ALLOCATION_ELSE(needed, oom_statement) \
+     if ((needed) > allocated)                                                \
+       {                                                                      \
+         size_t memory_size;                                                  \
+@@ -1934,17 +1933,19 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *
+           allocated = (needed);                                              \
+         memory_size = xtimes (allocated, sizeof (DCHAR_T));                  \
+         if (size_overflow_p (memory_size))                                   \
+-          goto out_of_memory;                                                \
++          oom_statement                                                      \
+         if (result == resultbuf || result == NULL)                           \
+           memory = (DCHAR_T *) malloc (memory_size);                         \
+         else                                                                 \
+           memory = (DCHAR_T *) realloc (result, memory_size);                \
+         if (memory == NULL)                                                  \
+-          goto out_of_memory;                                                \
++          oom_statement                                                      \
+         if (result == resultbuf && length > 0)                               \
+           DCHAR_CPY (memory, result, length);                                \
+         result = memory;                                                     \
+       }
++#define ENSURE_ALLOCATION(needed) \
++  ENSURE_ALLOCATION_ELSE((needed), goto out_of_memory; )
+ 
+     for (cp = format, i = 0, dp = &d.dir[0]; ; cp = dp->dir_end, i++, dp++)
+       {
+@@ -2183,18 +2184,17 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *
+ #  endif
+                         if (converted == NULL)
+                           {
+-                            int saved_errno = errno;
+                             if (!(result == resultbuf || result == NULL))
+                               free (result);
+                             if (buf_malloced != NULL)
+                               free (buf_malloced);
+                             CLEANUP ();
+-                            errno = saved_errno;
+                             return NULL;
+                           }
+                         if (converted != result + length)
+                           {
+-                            ENSURE_ALLOCATION (xsum (length, converted_len));
++                            ENSURE_ALLOCATION_ELSE (xsum (length, converted_len),
++                                                    { free (converted); goto out_of_memory; });
+                             DCHAR_CPY (result + length, converted, converted_len);
+                             free (converted);
+                           }
+@@ -2309,18 +2309,17 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *
+ #  endif
+                         if (converted == NULL)
+                           {
+-                            int saved_errno = errno;
+                             if (!(result == resultbuf || result == NULL))
+                               free (result);
+                             if (buf_malloced != NULL)
+                               free (buf_malloced);
+                             CLEANUP ();
+-                            errno = saved_errno;
+                             return NULL;
+                           }
+                         if (converted != result + length)
+                           {
+-                            ENSURE_ALLOCATION (xsum (length, converted_len));
++                            ENSURE_ALLOCATION_ELSE (xsum (length, converted_len),
++                                                    { free (converted); goto out_of_memory; });
+                             DCHAR_CPY (result + length, converted, converted_len);
+                             free (converted);
+                           }
+@@ -2435,18 +2434,17 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *
+ #  endif
+                         if (converted == NULL)
+                           {
+-                            int saved_errno = errno;
+                             if (!(result == resultbuf || result == NULL))
+                               free (result);
+                             if (buf_malloced != NULL)
+                               free (buf_malloced);
+                             CLEANUP ();
+-                            errno = saved_errno;
+                             return NULL;
+                           }
+                         if (converted != result + length)
+                           {
+-                            ENSURE_ALLOCATION (xsum (length, converted_len));
++                            ENSURE_ALLOCATION_ELSE (xsum (length, converted_len),
++                                                    { free (converted); goto out_of_memory; });
+                             DCHAR_CPY (result + length, converted, converted_len);
+                             free (converted);
+                           }
+@@ -2852,14 +2850,12 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *
+                                               NULL, &tmpdst_len);
+                   if (tmpdst == NULL)
+                     {
+-                      int saved_errno = errno;
+                       free (tmpsrc);
+                       if (!(result == resultbuf || result == NULL))
+                         free (result);
+                       if (buf_malloced != NULL)
+                         free (buf_malloced);
+                       CLEANUP ();
+-                      errno = saved_errno;
+                       return NULL;
+                     }
+                   free (tmpsrc);
+@@ -2951,7 +2947,8 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *
+                         }
+                     }
+ #  else
+-                  ENSURE_ALLOCATION (xsum (length, tmpdst_len));
++                  ENSURE_ALLOCATION_ELSE (xsum (length, tmpdst_len),
++                                          { free (tmpdst); goto out_of_memory; });
+                   DCHAR_CPY (result + length, tmpdst, tmpdst_len);
+                   free (tmpdst);
+                   length += tmpdst_len;
+@@ -3079,13 +3076,11 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *
+                                               NULL, &tmpdst_len);
+                   if (tmpdst == NULL)
+                     {
+-                      int saved_errno = errno;
+                       if (!(result == resultbuf || result == NULL))
+                         free (result);
+                       if (buf_malloced != NULL)
+                         free (buf_malloced);
+                       CLEANUP ();
+-                      errno = saved_errno;
+                       return NULL;
+                     }
+ # endif
+@@ -3156,7 +3151,8 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *
+                         }
+                     }
+ # else
+-                  ENSURE_ALLOCATION (xsum (length, tmpdst_len));
++                  ENSURE_ALLOCATION_ELSE (xsum (length, tmpdst_len),
++                                          { free (tmpdst); goto out_of_memory; });
+                   DCHAR_CPY (result + length, tmpdst, tmpdst_len);
+                   free (tmpdst);
+                   length += tmpdst_len;
+@@ -5449,15 +5445,14 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *
+                     /* Attempt to handle failure.  */
+                     if (count < 0)
+                       {
+-                        /* SNPRINTF or sprintf failed.  Save and use the errno
+-                           that it has set, if any.  */
+-                        int saved_errno = errno;
+-                        if (saved_errno == 0)
++                        /* SNPRINTF or sprintf failed.  Use the errno that it
++                           has set, if any.  */
++                        if (errno == 0)
+                           {
+                             if (dp->conversion == 'c' || dp->conversion == 's')
+-                              saved_errno = EILSEQ;
++                              errno = EILSEQ;
+                             else
+-                              saved_errno = EINVAL;
++                              errno = EINVAL;
+                           }
+ 
+                         if (!(result == resultbuf || result == NULL))
+@@ -5466,7 +5461,6 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *
+                           free (buf_malloced);
+                         CLEANUP ();
+ 
+-                        errno = saved_errno;
+                         return NULL;
+                       }
+ 
+@@ -5602,16 +5596,15 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *
+                                                     NULL, &tmpdst_len);
+                         if (tmpdst == NULL)
+                           {
+-                            int saved_errno = errno;
+                             if (!(result == resultbuf || result == NULL))
+                               free (result);
+                             if (buf_malloced != NULL)
+                               free (buf_malloced);
+                             CLEANUP ();
+-                            errno = saved_errno;
+                             return NULL;
+                           }
+-                        ENSURE_ALLOCATION (xsum (length, tmpdst_len));
++                        ENSURE_ALLOCATION_ELSE (xsum (length, tmpdst_len),
++                                                { free (tmpdst); goto out_of_memory; });
+                         DCHAR_CPY (result + length, tmpdst, tmpdst_len);
+                         free (tmpdst);
+                         count = tmpdst_len;
+--- a/gnulib/lib/vasnprintf.h
++++ b/gnulib/lib/vasnprintf.h
+@@ -1,18 +1,18 @@
+ /* vsprintf with automatic memory allocation.
+    Copyright (C) 2002-2004, 2007-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License along
+-   with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #ifndef _VASNPRINTF_H
+ #define _VASNPRINTF_H
+--- a/gnulib/lib/vasprintf.c
++++ b/gnulib/lib/vasprintf.c
+@@ -1,18 +1,18 @@
+ /* Formatted output to strings.
+    Copyright (C) 1999, 2002, 2006-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License along
+-   with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+ 
+--- a/gnulib/lib/verify.h
++++ b/gnulib/lib/verify.h
+@@ -2,17 +2,17 @@
+ 
+    Copyright (C) 2005-2006, 2009-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Paul Eggert, Bruno Haible, and Jim Meyering.  */
+--- a/gnulib/lib/warn-on-use.h
++++ b/gnulib/lib/warn-on-use.h
+@@ -2,16 +2,16 @@
+    Copyright (C) 2010-2021 Free Software Foundation, Inc.
+ 
+    This program is free software: you can redistribute it and/or modify it
+-   under the terms of the GNU General Public License as published
+-   by the Free Software Foundation; either version 3 of the License, or
++   under the terms of the GNU Lesser General Public License as published
++   by the Free Software Foundation; either version 2 of the License, or
+    (at your option) any later version.
+ 
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+-   General Public License for more details.
++   Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* _GL_WARN_ON_USE (function, "literal string") issues a declaration
+--- a/gnulib/lib/wchar.in.h
++++ b/gnulib/lib/wchar.in.h
+@@ -2,18 +2,18 @@
+ 
+    Copyright (C) 2007-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Eric Blake.  */
+ 
+@@ -111,7 +111,7 @@
+ /* mingw and MSVC define wint_t as 'unsigned short' in <crtdefs.h> or
+    <stddef.h>.  This is too small: ISO C 99 section 7.24.1.(2) says that
+    wint_t must be "unchanged by default argument promotions".  Override it.  */
+-# if @GNULIB_OVERRIDES_WINT_T@
++# if @GNULIBHEADERS_OVERRIDE_WINT_T@
+ #  if !GNULIB_defined_wint_t
+ #   if @HAVE_CRTDEFS_H@
+ #    include <crtdefs.h>
+--- a/gnulib/lib/wcrtomb.c
++++ b/gnulib/lib/wcrtomb.c
+@@ -2,17 +2,17 @@
+    Copyright (C) 2008-2021 Free Software Foundation, Inc.
+    Written by Bruno Haible <bruno@clisp.org>, 2008.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+--- a/gnulib/lib/wctype-h.c
++++ b/gnulib/lib/wctype-h.c
+@@ -1,4 +1,23 @@
++/* Inline functions for <wctype.h>.
++
++   Copyright (C) 2012-2021 Free Software Foundation, Inc.
++
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
++
++   This file is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++   GNU Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
++
+ /* Normally this would be wctype.c, but that name's already taken.  */
++
+ #include <config.h>
++
+ #define _GL_WCTYPE_INLINE _GL_EXTERN_INLINE
+ #include "wctype.h"
+--- a/gnulib/lib/wctype.in.h
++++ b/gnulib/lib/wctype.in.h
+@@ -2,18 +2,18 @@
+ 
+    Copyright (C) 2006-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Bruno Haible and Paul Eggert.  */
+ 
+@@ -103,7 +103,7 @@ _GL_INLINE_HEADER_BEGIN
+ /* mingw and MSVC define wint_t as 'unsigned short' in <crtdefs.h> or
+    <stddef.h>.  This is too small: ISO C 99 section 7.24.1.(2) says that
+    wint_t must be "unchanged by default argument promotions".  Override it.  */
+-# if @GNULIB_OVERRIDES_WINT_T@
++# if @GNULIBHEADERS_OVERRIDE_WINT_T@
+ #  if !GNULIB_defined_wint_t
+ #   if @HAVE_CRTDEFS_H@
+ #    include <crtdefs.h>
+@@ -132,7 +132,7 @@ typedef unsigned int rpl_wint_t;
+    same way, or not at all.  */
+ # if ! @HAVE_ISWCNTRL@ || @REPLACE_ISWCNTRL@
+ 
+-#  if @GNULIB_OVERRIDES_WINT_T@ /* implies @REPLACE_ISWCNTRL@ */
++#  if @GNULIBHEADERS_OVERRIDE_WINT_T@ /* implies @REPLACE_ISWCNTRL@ */
+ 
+ _GL_WCTYPE_INLINE int
+ rpl_iswalnum (wint_t wc)
+@@ -496,7 +496,7 @@ _GL_FUNCDECL_RPL (iswxdigit, int, (wint_
+ 
+ # endif
+ 
+-# if defined __MINGW32__ && !@GNULIB_OVERRIDES_WINT_T@
++# if defined __MINGW32__ && !@GNULIBHEADERS_OVERRIDE_WINT_T@
+ 
+ /* On native Windows, wchar_t is uint16_t, and wint_t is uint32_t.
+    The functions towlower and towupper are implemented in the MSVCRT library
+@@ -529,7 +529,7 @@ rpl_towupper (wint_t wc)
+ #   define towupper rpl_towupper
+ #  endif
+ 
+-# endif /* __MINGW32__ && !@GNULIB_OVERRIDES_WINT_T@ */
++# endif /* __MINGW32__ && !@GNULIBHEADERS_OVERRIDE_WINT_T@ */
+ 
+ # define GNULIB_defined_wctype_functions 1
+ #endif
+@@ -646,7 +646,7 @@ _GL_WARN_ON_USE (wctype, "wctype is unpo
+    The argument WC must be either a wchar_t value or WEOF.
+    The argument DESC must have been returned by the wctype() function.  */
+ #if @GNULIB_ISWCTYPE@
+-# if @GNULIB_OVERRIDES_WINT_T@
++# if @GNULIBHEADERS_OVERRIDE_WINT_T@
+ #  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+ #   undef iswctype
+ #   define iswctype rpl_iswctype
+--- a/gnulib/lib/wcwidth.c
++++ b/gnulib/lib/wcwidth.c
+@@ -1,17 +1,17 @@
+ /* Determine the number of screen columns needed for a character.
+    Copyright (C) 2006-2007, 2010-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #include <config.h>
+--- a/gnulib/lib/windows-initguard.h
++++ b/gnulib/lib/windows-initguard.h
+@@ -1,18 +1,18 @@
+ /* Init guards, somewhat like spinlocks (native Windows implementation).
+    Copyright (C) 2005-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Bruno Haible <bruno@clisp.org>, 2005.
+    Based on GCC's gthr-win32.h.  */
+--- a/gnulib/lib/windows-mutex.c
++++ b/gnulib/lib/windows-mutex.c
+@@ -1,18 +1,18 @@
+ /* Plain mutexes (native Windows implementation).
+    Copyright (C) 2005-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Bruno Haible <bruno@clisp.org>, 2005.
+    Based on GCC's gthr-win32.h.  */
+--- a/gnulib/lib/windows-mutex.h
++++ b/gnulib/lib/windows-mutex.h
+@@ -1,18 +1,18 @@
+ /* Plain mutexes (native Windows implementation).
+    Copyright (C) 2005-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Bruno Haible <bruno@clisp.org>, 2005.
+    Based on GCC's gthr-win32.h.  */
+--- a/gnulib/lib/windows-once.c
++++ b/gnulib/lib/windows-once.c
+@@ -1,18 +1,18 @@
+ /* Once-only control (native Windows implementation).
+    Copyright (C) 2005-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Bruno Haible <bruno@clisp.org>, 2005.
+    Based on GCC's gthr-win32.h.  */
+--- a/gnulib/lib/windows-once.h
++++ b/gnulib/lib/windows-once.h
+@@ -1,18 +1,18 @@
+ /* Once-only control (native Windows implementation).
+    Copyright (C) 2005-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Bruno Haible <bruno@clisp.org>, 2005.
+    Based on GCC's gthr-win32.h.  */
+--- a/gnulib/lib/windows-recmutex.c
++++ b/gnulib/lib/windows-recmutex.c
+@@ -1,18 +1,18 @@
+ /* Plain recursive mutexes (native Windows implementation).
+    Copyright (C) 2005-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Bruno Haible <bruno@clisp.org>, 2005.
+    Based on GCC's gthr-win32.h.  */
+--- a/gnulib/lib/windows-recmutex.h
++++ b/gnulib/lib/windows-recmutex.h
+@@ -1,18 +1,18 @@
+ /* Plain recursive mutexes (native Windows implementation).
+    Copyright (C) 2005-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Bruno Haible <bruno@clisp.org>, 2005.
+    Based on GCC's gthr-win32.h.  */
+--- a/gnulib/lib/windows-rwlock.c
++++ b/gnulib/lib/windows-rwlock.c
+@@ -1,18 +1,18 @@
+ /* Read-write locks (native Windows implementation).
+    Copyright (C) 2005-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Bruno Haible <bruno@clisp.org>, 2005.
+    Based on GCC's gthr-win32.h.  */
+--- a/gnulib/lib/windows-rwlock.h
++++ b/gnulib/lib/windows-rwlock.h
+@@ -1,18 +1,18 @@
+ /* Read-write locks (native Windows implementation).
+    Copyright (C) 2005-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ /* Written by Bruno Haible <bruno@clisp.org>, 2005.
+    Based on GCC's gthr-win32.h.  */
+--- a/gnulib/lib/xalloc-oversized.h
++++ b/gnulib/lib/xalloc-oversized.h
+@@ -2,17 +2,17 @@
+ 
+    Copyright (C) 1990-2000, 2003-2004, 2006-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software: you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3 of the License, or
+-   (at your option) any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
++   You should have received a copy of the GNU Lesser General Public License
+    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #ifndef XALLOC_OVERSIZED_H_
+@@ -21,34 +21,39 @@
+ #include <stddef.h>
+ #include <stdint.h>
+ 
+-/* True if N * S would overflow in a size_t calculation,
+-   or would generate a value larger than PTRDIFF_MAX.
++/* True if N * S does not fit into both ptrdiff_t and size_t.
++   N and S should be nonnegative and free of side effects.
+    This expands to a constant expression if N and S are both constants.
+-   By gnulib convention, SIZE_MAX represents overflow in size
++   By gnulib convention, SIZE_MAX represents overflow in size_t
+    calculations, so the conservative size_t-based dividend to use here
+    is SIZE_MAX - 1.  */
+ #define __xalloc_oversized(n, s) \
+-  ((size_t) (PTRDIFF_MAX < SIZE_MAX ? PTRDIFF_MAX : SIZE_MAX - 1) / (s) < (n))
+-
+-#if PTRDIFF_MAX < SIZE_MAX
+-typedef ptrdiff_t __xalloc_count_type;
+-#else
+-typedef size_t __xalloc_count_type;
+-#endif
+-
+-/* Return 1 if an array of N objects, each of size S, cannot exist
+-   reliably due to size or ptrdiff_t arithmetic overflow.  S must be
+-   positive and N must be nonnegative.  This is a macro, not a
+-   function, so that it works correctly even when SIZE_MAX < N.  */
+-
+-#if 7 <= __GNUC__ && !defined __clang__
++  ((s) != 0 \
++   && ((size_t) (PTRDIFF_MAX < SIZE_MAX ? PTRDIFF_MAX : SIZE_MAX - 1) / (s) \
++       < (n)))
++
++/* Return 1 if and only if an array of N objects, each of size S,
++   cannot exist reliably because its total size in bytes would exceed
++   MIN (PTRDIFF_MAX, SIZE_MAX - 1).
++
++   N and S should be nonnegative and free of side effects.
++
++   Warning: (xalloc_oversized (N, S) ? NULL : malloc (N * S)) can
++   misbehave if N and S are both narrower than ptrdiff_t and size_t,
++   and can be rewritten as (xalloc_oversized (N, S) ?  NULL
++   : malloc (N * (size_t) S)).
++
++   This is a macro, not a function, so that it works even if an
++   argument exceeds MAX (PTRDIFF_MAX, SIZE_MAX).  */
++#if 7 <= __GNUC__ && !defined __clang__ && PTRDIFF_MAX < SIZE_MAX
+ # define xalloc_oversized(n, s) \
+-   __builtin_mul_overflow_p (n, s, (__xalloc_count_type) 1)
+-#elif 5 <= __GNUC__ && !defined __ICC && !__STRICT_ANSI__
++   __builtin_mul_overflow_p (n, s, (ptrdiff_t) 1)
++#elif (5 <= __GNUC__ && !defined __ICC && !__STRICT_ANSI__ \
++       && PTRDIFF_MAX < SIZE_MAX)
+ # define xalloc_oversized(n, s) \
+    (__builtin_constant_p (n) && __builtin_constant_p (s) \
+     ? __xalloc_oversized (n, s) \
+-    : ({ __xalloc_count_type __xalloc_count; \
++    : ({ ptrdiff_t __xalloc_count; \
+          __builtin_mul_overflow (n, s, &__xalloc_count); }))
+ 
+ /* Other compilers use integer division; this may be slower but is
+--- a/gnulib/lib/xalloc.h
++++ b/gnulib/lib/xalloc.h
+@@ -21,7 +21,10 @@
+ #include <stddef.h>
+ #include <stdint.h>
+ 
+-#include "xalloc-oversized.h"
++#if GNULIB_XALLOC
++# include "idx.h"
++# include "intprops.h"
++#endif
+ 
+ #ifndef _GL_INLINE_HEADER_BEGIN
+  #error "Please include config.h first."
+@@ -50,17 +53,26 @@ extern "C" {
+ 
+ #if GNULIB_XALLOC
+ 
+-void *xmalloc (size_t s)
+-      _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_ALLOC_SIZE ((1));
+-void *xzalloc (size_t s)
+-      _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_ALLOC_SIZE ((1));
++void *xmalloc (size_t s) _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_ALLOC_SIZE ((1));
++void *ximalloc (idx_t s) _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_ALLOC_SIZE ((1));
++void *xzalloc (size_t s) _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_ALLOC_SIZE ((1));
++void *xizalloc (idx_t s) _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_ALLOC_SIZE ((1));
+ void *xcalloc (size_t n, size_t s)
+-      _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_ALLOC_SIZE ((1, 2));
+-void *xrealloc (void *p, size_t s)
+-      _GL_ATTRIBUTE_ALLOC_SIZE ((2));
+-void *x2realloc (void *p, size_t *pn);
+-void *xmemdup (void const *p, size_t s)
+-      _GL_ATTRIBUTE_ALLOC_SIZE ((2));
++  _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_ALLOC_SIZE ((1, 2));
++void *xicalloc (idx_t n, idx_t s)
++  _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_ALLOC_SIZE ((1, 2));
++void *xrealloc (void *p, size_t s) _GL_ATTRIBUTE_ALLOC_SIZE ((2));
++void *xirealloc (void *p, idx_t s) _GL_ATTRIBUTE_ALLOC_SIZE ((2));
++void *xreallocarray (void *p, size_t n, size_t s)
++      _GL_ATTRIBUTE_ALLOC_SIZE ((2, 3));
++void *xireallocarray (void *p, idx_t n, idx_t s)
++      _GL_ATTRIBUTE_ALLOC_SIZE ((2, 3));
++void *x2realloc (void *p, size_t *ps); /* superseded by xpalloc */
++void *x2nrealloc (void *p, size_t *pn, size_t s); /* superseded by xpalloc */
++void *xpalloc (void *pa, idx_t *pn, idx_t n_incr_min, ptrdiff_t n_max, idx_t s);
++void *xmemdup (void const *p, size_t s) _GL_ATTRIBUTE_ALLOC_SIZE ((2));
++void *ximemdup (void const *p, idx_t s) _GL_ATTRIBUTE_ALLOC_SIZE ((2));
++char *ximemdup0 (void const *p, idx_t s) _GL_ATTRIBUTE_MALLOC;
+ char *xstrdup (char const *str)
+       _GL_ATTRIBUTE_MALLOC;
+ 
+@@ -98,11 +110,10 @@ XALLOC_INLINE void *xnmalloc (size_t n,
+ XALLOC_INLINE void *
+ xnmalloc (size_t n, size_t s)
+ {
+-  if (xalloc_oversized (n, s))
+-    xalloc_die ();
+-  return xmalloc (n * s);
++  return xreallocarray (NULL, n, s);
+ }
+ 
++/* FIXME: Deprecate this in favor of xreallocarray?  */
+ /* Change the size of an allocated block of memory P to an array of N
+    objects each of S bytes, with error checking.  S must be nonzero.  */
+ 
+@@ -111,100 +122,7 @@ XALLOC_INLINE void *xnrealloc (void *p,
+ XALLOC_INLINE void *
+ xnrealloc (void *p, size_t n, size_t s)
+ {
+-  if (xalloc_oversized (n, s))
+-    xalloc_die ();
+-  return xrealloc (p, n * s);
+-}
+-
+-/* If P is null, allocate a block of at least *PN such objects;
+-   otherwise, reallocate P so that it contains more than *PN objects
+-   each of S bytes.  S must be nonzero.  Set *PN to the new number of
+-   objects, and return the pointer to the new block.  *PN is never set
+-   to zero, and the returned pointer is never null.
+-
+-   Repeated reallocations are guaranteed to make progress, either by
+-   allocating an initial block with a nonzero size, or by allocating a
+-   larger block.
+-
+-   In the following implementation, nonzero sizes are increased by a
+-   factor of approximately 1.5 so that repeated reallocations have
+-   O(N) overall cost rather than O(N**2) cost, but the
+-   specification for this function does not guarantee that rate.
+-
+-   Here is an example of use:
+-
+-     int *p = NULL;
+-     size_t used = 0;
+-     size_t allocated = 0;
+-
+-     void
+-     append_int (int value)
+-       {
+-         if (used == allocated)
+-           p = x2nrealloc (p, &allocated, sizeof *p);
+-         p[used++] = value;
+-       }
+-
+-   This causes x2nrealloc to allocate a block of some nonzero size the
+-   first time it is called.
+-
+-   To have finer-grained control over the initial size, set *PN to a
+-   nonzero value before calling this function with P == NULL.  For
+-   example:
+-
+-     int *p = NULL;
+-     size_t used = 0;
+-     size_t allocated = 0;
+-     size_t allocated1 = 1000;
+-
+-     void
+-     append_int (int value)
+-       {
+-         if (used == allocated)
+-           {
+-             p = x2nrealloc (p, &allocated1, sizeof *p);
+-             allocated = allocated1;
+-           }
+-         p[used++] = value;
+-       }
+-
+-   */
+-
+-XALLOC_INLINE void *
+-x2nrealloc (void *p, size_t *pn, size_t s)
+-{
+-  size_t n = *pn;
+-
+-  if (! p)
+-    {
+-      if (! n)
+-        {
+-          /* The approximate size to use for initial small allocation
+-             requests, when the invoking code specifies an old size of
+-             zero.  This is the largest "small" request for the GNU C
+-             library malloc.  */
+-          enum { DEFAULT_MXFAST = 64 * sizeof (size_t) / 4 };
+-
+-          n = DEFAULT_MXFAST / s;
+-          n += !n;
+-        }
+-      if (xalloc_oversized (n, s))
+-        xalloc_die ();
+-    }
+-  else
+-    {
+-      /* Set N = floor (1.5 * N) + 1 so that progress is made even if N == 0.
+-         Check for overflow, so that N * S stays in both ptrdiff_t and
+-         size_t range.  The check may be slightly conservative, but an
+-         exact check isn't worth the trouble.  */
+-      if ((PTRDIFF_MAX < SIZE_MAX ? PTRDIFF_MAX : SIZE_MAX) / 3 * 2 / s
+-          <= n)
+-        xalloc_die ();
+-      n += n / 2 + 1;
+-    }
+-
+-  *pn = n;
+-  return xrealloc (p, n * s);
++  return xreallocarray (p, n, s);
+ }
+ 
+ /* Return a pointer to a new buffer of N bytes.  This is like xmalloc,
+@@ -239,9 +157,16 @@ xrealloc (T *p, size_t s)
+ }
+ 
+ template <typename T> inline T *
++xreallocarray (T *p, size_t n, size_t s)
++{
++  return (T *) xreallocarray ((void *) p, n, s);
++}
++
++/* FIXME: Deprecate this in favor of xreallocarray?  */
++template <typename T> inline T *
+ xnrealloc (T *p, size_t n, size_t s)
+ {
+-  return (T *) xnrealloc ((void *) p, n, s);
++  return xreallocarray (p, n, s);
+ }
+ 
+ template <typename T> inline T *
+--- a/gnulib/lib/xmalloc.c
++++ b/gnulib/lib/xmalloc.c
+@@ -21,80 +21,250 @@
+ 
+ #include "xalloc.h"
+ 
++#include "ialloc.h"
++#include "intprops.h"
++#include "minmax.h"
++
+ #include <stdlib.h>
+ #include <string.h>
+ 
+-/* 1 if calloc, malloc and realloc are known to be compatible with GNU.
+-   This matters if we are not also using the calloc-gnu, malloc-gnu
+-   and realloc-gnu modules, which define HAVE_CALLOC_GNU,
+-   HAVE_MALLOC_GNU and HAVE_REALLOC_GNU and support the GNU API even
+-   on non-GNU platforms.  */
+-#if defined HAVE_CALLOC_GNU || (defined __GLIBC__ && !defined __UCLIBC__)
+-enum { HAVE_GNU_CALLOC = 1 };
+-#else
+-enum { HAVE_GNU_CALLOC = 0 };
+-#endif
+-#if defined HAVE_MALLOC_GNU || (defined __GLIBC__ && !defined __UCLIBC__)
+-enum { HAVE_GNU_MALLOC = 1 };
+-#else
+-enum { HAVE_GNU_MALLOC = 0 };
+-#endif
+-#if defined HAVE_REALLOC_GNU || (defined __GLIBC__ && !defined __UCLIBC__)
+-enum { HAVE_GNU_REALLOC = 1 };
+-#else
+-enum { HAVE_GNU_REALLOC = 0 };
+-#endif
++static void * _GL_ATTRIBUTE_PURE
++nonnull (void *p)
++{
++  if (!p)
++    xalloc_die ();
++  return p;
++}
+ 
+-/* Allocate N bytes of memory dynamically, with error checking.  */
++/* Allocate S bytes of memory dynamically, with error checking.  */
+ 
+ void *
+-xmalloc (size_t n)
++xmalloc (size_t s)
+ {
+-  void *p = malloc (n);
+-  if (!p && (HAVE_GNU_MALLOC || n))
+-    xalloc_die ();
+-  return p;
++  return nonnull (malloc (s));
++}
++
++void *
++ximalloc (idx_t s)
++{
++  return nonnull (imalloc (s));
+ }
+ 
+-/* Change the size of an allocated block of memory P to N bytes,
++/* Change the size of an allocated block of memory P to S bytes,
+    with error checking.  */
+ 
+ void *
+-xrealloc (void *p, size_t n)
++xrealloc (void *p, size_t s)
+ {
+-  if (!HAVE_GNU_REALLOC && !n && p)
+-    {
+-      /* The GNU and C99 realloc behaviors disagree here.  Act like GNU.  */
+-      free (p);
+-      return NULL;
+-    }
++  void *r = realloc (p, s);
++  if (!r && (!p || s))
++    xalloc_die ();
++  return r;
++}
++
++void *
++xirealloc (void *p, idx_t s)
++{
++  return nonnull (irealloc (p, s));
++}
++
++/* Change the size of an allocated block of memory P to an array of N
++   objects each of S bytes, with error checking.  */
+ 
+-  void *r = realloc (p, n);
+-  if (!r && (n || (HAVE_GNU_REALLOC && !p)))
++void *
++xreallocarray (void *p, size_t n, size_t s)
++{
++  void *r = reallocarray (p, n, s);
++  if (!r && (!p || (n && s)))
+     xalloc_die ();
+   return r;
+ }
+ 
+-/* If P is null, allocate a block of at least *PN bytes; otherwise,
+-   reallocate P so that it contains more than *PN bytes.  *PN must be
+-   nonzero unless P is null.  Set *PN to the new block's size, and
+-   return the pointer to the new block.  *PN is never set to zero, and
++void *
++xireallocarray (void *p, idx_t n, idx_t s)
++{
++  return nonnull (ireallocarray (p, n, s));
++}
++
++/* If P is null, allocate a block of at least *PS bytes; otherwise,
++   reallocate P so that it contains more than *PS bytes.  *PS must be
++   nonzero unless P is null.  Set *PS to the new block's size, and
++   return the pointer to the new block.  *PS is never set to zero, and
+    the returned pointer is never null.  */
+ 
+ void *
+-x2realloc (void *p, size_t *pn)
++x2realloc (void *p, size_t *ps)
++{
++  return x2nrealloc (p, ps, 1);
++}
++
++/* If P is null, allocate a block of at least *PN such objects;
++   otherwise, reallocate P so that it contains more than *PN objects
++   each of S bytes.  S must be nonzero.  Set *PN to the new number of
++   objects, and return the pointer to the new block.  *PN is never set
++   to zero, and the returned pointer is never null.
++
++   Repeated reallocations are guaranteed to make progress, either by
++   allocating an initial block with a nonzero size, or by allocating a
++   larger block.
++
++   In the following implementation, nonzero sizes are increased by a
++   factor of approximately 1.5 so that repeated reallocations have
++   O(N) overall cost rather than O(N**2) cost, but the
++   specification for this function does not guarantee that rate.
++
++   Here is an example of use:
++
++     int *p = NULL;
++     size_t used = 0;
++     size_t allocated = 0;
++
++     void
++     append_int (int value)
++       {
++         if (used == allocated)
++           p = x2nrealloc (p, &allocated, sizeof *p);
++         p[used++] = value;
++       }
++
++   This causes x2nrealloc to allocate a block of some nonzero size the
++   first time it is called.
++
++   To have finer-grained control over the initial size, set *PN to a
++   nonzero value before calling this function with P == NULL.  For
++   example:
++
++     int *p = NULL;
++     size_t used = 0;
++     size_t allocated = 0;
++     size_t allocated1 = 1000;
++
++     void
++     append_int (int value)
++       {
++         if (used == allocated)
++           {
++             p = x2nrealloc (p, &allocated1, sizeof *p);
++             allocated = allocated1;
++           }
++         p[used++] = value;
++       }
++
++   */
++
++void *
++x2nrealloc (void *p, size_t *pn, size_t s)
+ {
+-  return x2nrealloc (p, pn, 1);
++  size_t n = *pn;
++
++  if (! p)
++    {
++      if (! n)
++        {
++          /* The approximate size to use for initial small allocation
++             requests, when the invoking code specifies an old size of
++             zero.  This is the largest "small" request for the GNU C
++             library malloc.  */
++          enum { DEFAULT_MXFAST = 64 * sizeof (size_t) / 4 };
++
++          n = DEFAULT_MXFAST / s;
++          n += !n;
++        }
++    }
++  else
++    {
++      /* Set N = floor (1.5 * N) + 1 to make progress even if N == 0.  */
++      if (INT_ADD_WRAPV (n, (n >> 1) + 1, &n))
++        xalloc_die ();
++    }
++
++  p = xreallocarray (p, n, s);
++  *pn = n;
++  return p;
+ }
+ 
+-/* Allocate N bytes of zeroed memory dynamically, with error checking.
++/* Grow PA, which points to an array of *PN items, and return the
++   location of the reallocated array, updating *PN to reflect its
++   new size.  The new array will contain at least N_INCR_MIN more
++   items, but will not contain more than N_MAX items total.
++   S is the size of each item, in bytes.
++
++   S and N_INCR_MIN must be positive.  *PN must be
++   nonnegative.  If N_MAX is -1, it is treated as if it were
++   infinity.
++
++   If PA is null, then allocate a new array instead of reallocating
++   the old one.
++
++   Thus, to grow an array A without saving its old contents, do
++   { free (A); A = xpalloc (NULL, &AITEMS, ...); }.  */
++
++void *
++xpalloc (void *pa, idx_t *pn, idx_t n_incr_min, ptrdiff_t n_max, idx_t s)
++{
++  idx_t n0 = *pn;
++
++  /* The approximate size to use for initial small allocation
++     requests.  This is the largest "small" request for the GNU C
++     library malloc.  */
++  enum { DEFAULT_MXFAST = 64 * sizeof (size_t) / 4 };
++
++  /* If the array is tiny, grow it to about (but no greater than)
++     DEFAULT_MXFAST bytes.  Otherwise, grow it by about 50%.
++     Adjust the growth according to three constraints: N_INCR_MIN,
++     N_MAX, and what the C language can represent safely.  */
++
++  idx_t n;
++  if (INT_ADD_WRAPV (n0, n0 >> 1, &n))
++    n = IDX_MAX;
++  if (0 <= n_max && n_max < n)
++    n = n_max;
++
++  /* NBYTES is of a type suitable for holding the count of bytes in an object.
++     This is typically idx_t, but it should be size_t on (theoretical?)
++     platforms where SIZE_MAX < IDX_MAX so xpalloc does not pass
++     values greater than SIZE_MAX to xrealloc.  */
++#if IDX_MAX <= SIZE_MAX
++  idx_t nbytes;
++#else
++  size_t nbytes;
++#endif
++  idx_t adjusted_nbytes
++    = (INT_MULTIPLY_WRAPV (n, s, &nbytes)
++       ? MIN (IDX_MAX, SIZE_MAX)
++       : nbytes < DEFAULT_MXFAST ? DEFAULT_MXFAST : 0);
++  if (adjusted_nbytes)
++    {
++      n = adjusted_nbytes / s;
++      nbytes = adjusted_nbytes - adjusted_nbytes % s;
++    }
++
++  if (! pa)
++    *pn = 0;
++  if (n - n0 < n_incr_min
++      && (INT_ADD_WRAPV (n0, n_incr_min, &n)
++          || (0 <= n_max && n_max < n)
++          || INT_MULTIPLY_WRAPV (n, s, &nbytes)))
++    xalloc_die ();
++  pa = xrealloc (pa, nbytes);
++  *pn = n;
++  return pa;
++}
++
++/* Allocate S bytes of zeroed memory dynamically, with error checking.
+    There's no need for xnzalloc (N, S), since it would be equivalent
+    to xcalloc (N, S).  */
+ 
+ void *
+-xzalloc (size_t n)
++xzalloc (size_t s)
++{
++  return xcalloc (s, 1);
++}
++
++void *
++xizalloc (idx_t s)
+ {
+-  return xcalloc (n, 1);
++  return xicalloc (s, 1);
+ }
+ 
+ /* Allocate zeroed memory for N elements of S bytes, with error
+@@ -103,15 +273,13 @@ xzalloc (size_t n)
+ void *
+ xcalloc (size_t n, size_t s)
+ {
+-  void *p;
+-  /* Test for overflow, since objects with size greater than
+-     PTRDIFF_MAX cause pointer subtraction to go awry.  Omit size-zero
+-     tests if HAVE_GNU_CALLOC, since GNU calloc never returns NULL if
+-     successful.  */
+-  if (xalloc_oversized (n, s)
+-      || (! (p = calloc (n, s)) && (HAVE_GNU_CALLOC || n != 0)))
+-    xalloc_die ();
+-  return p;
++  return nonnull (calloc (n, s));
++}
++
++void *
++xicalloc (idx_t n, idx_t s)
++{
++  return nonnull (icalloc (n, s));
+ }
+ 
+ /* Clone an object P of size S, with error checking.  There's no need
+@@ -124,6 +292,23 @@ xmemdup (void const *p, size_t s)
+   return memcpy (xmalloc (s), p, s);
+ }
+ 
++void *
++ximemdup (void const *p, idx_t s)
++{
++  return memcpy (ximalloc (s), p, s);
++}
++
++/* Clone an object P of size S, with error checking.  Append
++   a terminating NUL byte.  */
++
++char *
++ximemdup0 (void const *p, idx_t s)
++{
++  char *result = ximalloc (s + 1);
++  result[s] = 0;
++  return memcpy (result, p, s);
++}
++
+ /* Clone STRING.  */
+ 
+ char *
+--- a/gnulib/lib/xsize.c
++++ b/gnulib/lib/xsize.c
+@@ -1,3 +1,21 @@
++/* Checked size_t computations.
++
++   Copyright (C) 2012-2021 Free Software Foundation, Inc.
++
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
++
++   This file is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++   GNU Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
++
+ #include <config.h>
++
+ #define XSIZE_INLINE _GL_EXTERN_INLINE
+ #include "xsize.h"
+--- a/gnulib/lib/xsize.h
++++ b/gnulib/lib/xsize.h
+@@ -2,18 +2,18 @@
+ 
+    Copyright (C) 2003, 2008-2021 Free Software Foundation, Inc.
+ 
+-   This program is free software; you can redistribute it and/or modify
+-   it under the terms of the GNU General Public License as published by
+-   the Free Software Foundation; either version 3, or (at your option)
+-   any later version.
++   This file is free software: you can redistribute it and/or modify
++   it under the terms of the GNU Lesser General Public License as
++   published by the Free Software Foundation; either version 2.1 of the
++   License, or (at your option) any later version.
+ 
+-   This program is distributed in the hope that it will be useful,
++   This file is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-   GNU General Public License for more details.
++   GNU Lesser General Public License for more details.
+ 
+-   You should have received a copy of the GNU General Public License
+-   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
++   You should have received a copy of the GNU Lesser General Public License
++   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+ 
+ #ifndef _XSIZE_H
+ #define _XSIZE_H
+--- /dev/null
++++ b/gnulib/m4/calloc.m4
+@@ -0,0 +1,82 @@
++# calloc.m4 serial 27
++
++# Copyright (C) 2004-2021 Free Software Foundation, Inc.
++# This file is free software; the Free Software Foundation
++# gives unlimited permission to copy and/or distribute it,
++# with or without modifications, as long as this notice is preserved.
++
++# Written by Jim Meyering.
++
++# Determine whether calloc (N, S) returns non-NULL when N*S is zero,
++# and returns NULL when N*S overflows.
++# If so, define HAVE_CALLOC.  Otherwise, define calloc to rpl_calloc
++# and arrange to use a calloc wrapper function that does work in that case.
++
++# _AC_FUNC_CALLOC_IF([IF-WORKS], [IF-NOT])
++# -------------------------------------
++# If calloc is compatible with GNU calloc, run IF-WORKS, otherwise, IF-NOT.
++AC_DEFUN([_AC_FUNC_CALLOC_IF],
++[
++  AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
++  AC_CACHE_CHECK([whether calloc (0, n) and calloc (n, 0) return nonnull],
++    [ac_cv_func_calloc_0_nonnull],
++    [if test $cross_compiling != yes; then
++       ac_cv_func_calloc_0_nonnull=yes
++       AC_RUN_IFELSE(
++         [AC_LANG_PROGRAM(
++            [AC_INCLUDES_DEFAULT],
++            [[int result = 0;
++              char * volatile p = calloc (0, 0);
++              if (!p)
++                result |= 1;
++              free (p);
++              return result;
++            ]])],
++         [],
++         [ac_cv_func_calloc_0_nonnull=no])
++     else
++       case "$host_os" in
++                        # Guess yes on glibc systems.
++         *-gnu* | gnu*) ac_cv_func_calloc_0_nonnull="guessing yes" ;;
++                        # Guess yes on musl systems.
++         *-musl*)       ac_cv_func_calloc_0_nonnull="guessing yes" ;;
++                        # Guess yes on native Windows.
++         mingw*)        ac_cv_func_calloc_0_nonnull="guessing yes" ;;
++                        # If we don't know, obey --enable-cross-guesses.
++         *)             ac_cv_func_calloc_0_nonnull="$gl_cross_guess_normal" ;;
++       esac
++     fi
++    ])
++  AS_CASE([$ac_cv_func_calloc_0_nonnull], [*yes], [$1], [$2])
++])
++
++
++# gl_FUNC_CALLOC_GNU
++# ------------------
++# Replace calloc if it is not compatible with GNU libc.
++AC_DEFUN([gl_FUNC_CALLOC_GNU],
++[
++  AC_REQUIRE([gl_STDLIB_H_DEFAULTS])
++  AC_REQUIRE([gl_FUNC_CALLOC_POSIX])
++  if test $REPLACE_CALLOC = 0; then
++    _AC_FUNC_CALLOC_IF([], [REPLACE_CALLOC=1])
++  fi
++])# gl_FUNC_CALLOC_GNU
++
++# gl_FUNC_CALLOC_POSIX
++# --------------------
++# Test whether 'calloc' is POSIX compliant (sets errno to ENOMEM when it
++# fails, and doesn't mess up with ptrdiff_t or size_t overflow),
++# and replace calloc if it is not.
++AC_DEFUN([gl_FUNC_CALLOC_POSIX],
++[
++  AC_REQUIRE([gl_STDLIB_H_DEFAULTS])
++  AC_REQUIRE([gl_FUNC_MALLOC_POSIX])
++  if test $REPLACE_MALLOC = 1; then
++    REPLACE_CALLOC=1
++  fi
++  dnl Although in theory we should also test for size_t overflow,
++  dnl in practice testing for ptrdiff_t overflow suffices
++  dnl since PTRDIFF_MAX <= SIZE_MAX on all known Gnulib porting targets.
++  dnl A separate size_t test would slow down 'configure'.
++])
+--- a/gnulib/m4/fcntl_h.m4
++++ b/gnulib/m4/fcntl_h.m4
+@@ -1,4 +1,4 @@
+-# serial 17
++# serial 20
+ # Configure fcntl.h.
+ dnl Copyright (C) 2006-2007, 2009-2021 Free Software Foundation, Inc.
+ dnl This file is free software; the Free Software Foundation
+@@ -7,7 +7,7 @@ dnl with or without modifications, as lo
+ 
+ dnl Written by Paul Eggert.
+ 
+-AC_DEFUN([gl_FCNTL_H],
++AC_DEFUN_ONCE([gl_FCNTL_H],
+ [
+   AC_REQUIRE([gl_FCNTL_H_DEFAULTS])
+   AC_REQUIRE([gl_FCNTL_O_FLAGS])
+@@ -26,25 +26,40 @@ AC_DEFUN([gl_FCNTL_H],
+     ]], [fcntl openat])
+ ])
+ 
++# gl_FCNTL_MODULE_INDICATOR([modulename])
++# sets the shell variable that indicates the presence of the given module
++# to a C preprocessor expression that will evaluate to 1.
++# This macro invocation must not occur in macros that are AC_REQUIREd.
+ AC_DEFUN([gl_FCNTL_MODULE_INDICATOR],
+ [
+-  dnl Use AC_REQUIRE here, so that the default settings are expanded once only.
+-  AC_REQUIRE([gl_FCNTL_H_DEFAULTS])
++  dnl Ensure to expand the default settings once only.
++  gl_FCNTL_H_REQUIRE_DEFAULTS
+   gl_MODULE_INDICATOR_SET_VARIABLE([$1])
+   dnl Define it also as a C macro, for the benefit of the unit tests.
+   gl_MODULE_INDICATOR_FOR_TESTS([$1])
+ ])
+ 
++# Initializes the default values for AC_SUBSTed shell variables.
++# This macro must not be AC_REQUIREd.  It must only be invoked, and only
++# outside of macros or in macros that are not AC_REQUIREd.
++AC_DEFUN([gl_FCNTL_H_REQUIRE_DEFAULTS],
++[
++  m4_defun(GL_MODULE_INDICATOR_PREFIX[_FCNTL_H_MODULE_INDICATOR_DEFAULTS], [
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_CREAT])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FCNTL])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_NONBLOCKING])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_OPEN])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_OPENAT])
++    dnl Support Microsoft deprecated alias function names by default.
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_CREAT], [1])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_OPEN], [1])
++  ])
++  m4_require(GL_MODULE_INDICATOR_PREFIX[_FCNTL_H_MODULE_INDICATOR_DEFAULTS])
++  AC_REQUIRE([gl_FCNTL_H_DEFAULTS])
++])
++
+ AC_DEFUN([gl_FCNTL_H_DEFAULTS],
+ [
+-  GNULIB_CREAT=0;        AC_SUBST([GNULIB_CREAT])
+-  GNULIB_FCNTL=0;        AC_SUBST([GNULIB_FCNTL])
+-  GNULIB_NONBLOCKING=0;  AC_SUBST([GNULIB_NONBLOCKING])
+-  GNULIB_OPEN=0;         AC_SUBST([GNULIB_OPEN])
+-  GNULIB_OPENAT=0;       AC_SUBST([GNULIB_OPENAT])
+-  dnl Support Microsoft deprecated alias function names by default.
+-  GNULIB_MDA_CREAT=1;    AC_SUBST([GNULIB_MDA_CREAT])
+-  GNULIB_MDA_OPEN=1;     AC_SUBST([GNULIB_MDA_OPEN])
+   dnl Assume proper GNU behavior unless another module says otherwise.
+   HAVE_FCNTL=1;          AC_SUBST([HAVE_FCNTL])
+   HAVE_OPENAT=1;         AC_SUBST([HAVE_OPENAT])
+--- /dev/null
++++ b/gnulib/m4/free.m4
+@@ -0,0 +1,52 @@
++# free.m4 serial 6
++# Copyright (C) 2003-2005, 2009-2021 Free Software Foundation, Inc.
++# This file is free software; the Free Software Foundation
++# gives unlimited permission to copy and/or distribute it,
++# with or without modifications, as long as this notice is preserved.
++
++# Written by Paul Eggert and Bruno Haible.
++
++AC_DEFUN([gl_FUNC_FREE],
++[
++  AC_REQUIRE([gl_STDLIB_H_DEFAULTS])
++
++  dnl In the next release of POSIX, free must preserve errno.
++  dnl https://www.austingroupbugs.net/view.php?id=385
++  dnl https://sourceware.org/bugzilla/show_bug.cgi?id=17924
++  dnl So far, we know of three platforms that do this:
++  dnl * glibc >= 2.33, thanks to the fix for this bug:
++  dnl   <https://sourceware.org/bugzilla/show_bug.cgi?id=17924>
++  dnl * OpenBSD >= 4.5, thanks to this commit:
++  dnl   <https://cvsweb.openbsd.org/cgi-bin/cvsweb/src/lib/libc/stdlib/malloc.c.diff?r1=1.100&r2=1.101&f=h>
++  dnl * Solaris, because its malloc() implementation is based on brk(),
++  dnl   not mmap(); hence its free() implementation makes no system calls.
++  dnl For other platforms, you can only be sure if they state it in their
++  dnl documentation, or by code inspection of the free() implementation in libc.
++  AC_CACHE_CHECK([whether free is known to preserve errno],
++    [gl_cv_func_free_preserves_errno],
++    [AC_COMPILE_IFELSE(
++       [AC_LANG_PROGRAM(
++          [[#include <stdlib.h>
++          ]],
++          [[#if 2 < __GLIBC__ + (33 <= __GLIBC_MINOR__)
++            #elif defined __OpenBSD__
++            #elif defined __sun
++            #else
++              #error "'free' is not known to preserve errno"
++            #endif
++          ]])],
++       [gl_cv_func_free_preserves_errno=yes],
++       [gl_cv_func_free_preserves_errno=no])
++    ])
++
++  case $gl_cv_func_free_preserves_errno in
++   *yes)
++    AC_DEFINE([HAVE_FREE_POSIX], [1],
++      [Define if the 'free' function is guaranteed to preserve errno.])
++    ;;
++   *) REPLACE_FREE=1 ;;
++  esac
++])
++
++# Prerequisites of lib/free.c.
++AC_DEFUN([gl_PREREQ_FREE], [:])
+--- a/gnulib/m4/fstat.m4
++++ b/gnulib/m4/fstat.m4
+@@ -1,4 +1,4 @@
+-# fstat.m4 serial 7
++# fstat.m4 serial 8
+ dnl Copyright (C) 2011-2021 Free Software Foundation, Inc.
+ dnl This file is free software; the Free Software Foundation
+ dnl gives unlimited permission to copy and/or distribute it,
+@@ -34,7 +34,7 @@ AC_DEFUN([gl_FUNC_FSTAT],
+ 
+ # Prerequisites of lib/fstat.c and lib/stat-w32.c.
+ AC_DEFUN([gl_PREREQ_FSTAT], [
+-  AC_REQUIRE([gl_HEADER_SYS_STAT_H])
++  AC_REQUIRE([gl_SYS_STAT_H])
+   AC_REQUIRE([gl_PREREQ_STAT_W32])
+   :
+ ])
+--- a/gnulib/m4/gnulib-common.m4
++++ b/gnulib/m4/gnulib-common.m4
+@@ -1,4 +1,4 @@
+-# gnulib-common.m4 serial 63
++# gnulib-common.m4 serial 66
+ dnl Copyright (C) 2007-2021 Free Software Foundation, Inc.
+ dnl This file is free software; the Free Software Foundation
+ dnl gives unlimited permission to copy and/or distribute it,
+@@ -357,6 +357,16 @@ AC_DEFUN([gl_COMMON_BODY], [
+   export LIBC_FATAL_STDERR_
+ ])
+ 
++# gl_MODULE_INDICATOR_INIT_VARIABLE([variablename])
++# gl_MODULE_INDICATOR_INIT_VARIABLE([variablename], [initialvalue])
++# initializes the shell variable that indicates the presence of the given module
++# as a C preprocessor expression.
++AC_DEFUN([gl_MODULE_INDICATOR_INIT_VARIABLE],
++[
++  GL_MODULE_INDICATOR_PREFIX[]_[$1]=m4_if([$2], , [0], [$2])
++  AC_SUBST(GL_MODULE_INDICATOR_PREFIX[]_[$1])
++])
++
+ # gl_MODULE_INDICATOR_CONDITION
+ # expands to a C preprocessor expression that evaluates to 1 or 0, depending
+ # whether a gnulib module that has been requested shall be considered present
+@@ -369,9 +379,9 @@ m4_define([gl_MODULE_INDICATOR_CONDITION
+ AC_DEFUN([gl_MODULE_INDICATOR_SET_VARIABLE],
+ [
+   gl_MODULE_INDICATOR_SET_VARIABLE_AUX(
+-    [GNULIB_[]m4_translit([[$1]],
+-                          [abcdefghijklmnopqrstuvwxyz./-],
+-                          [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])],
++    [GL_MODULE_INDICATOR_PREFIX[]_GNULIB_[]m4_translit([[$1]],
++                                                       [abcdefghijklmnopqrstuvwxyz./-],
++                                                       [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])],
+     [gl_MODULE_INDICATOR_CONDITION])
+ ])
+ 
+@@ -656,6 +666,72 @@ AC_DEFUN([gl_CACHE_VAL_SILENT],
+   ])
+ ])
+ 
++# gl_CC_ALLOW_WARNINGS
++# sets and substitutes a variable GL_CFLAG_ALLOW_WARNINGS, to a $(CC) option
++# that reverts a preceding '-Werror' option, if available.
++# This is expected to be '-Wno-error' on gcc, clang (except clang/MSVC), xlclang
++# and empty otherwise.
++AC_DEFUN([gl_CC_ALLOW_WARNINGS],
++[
++  AC_REQUIRE([AC_PROG_CC])
++  AC_CACHE_CHECK([for C compiler option to allow warnings],
++    [gl_cv_cc_wallow],
++    [rm -f conftest*
++     echo 'int dummy;' > conftest.c
++     AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS -c conftest.c 2>conftest1.err]) >/dev/null
++     AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS -Wno-error -c conftest.c 2>conftest2.err]) >/dev/null
++     dnl Test the number of error output lines, because AIX xlc accepts the
++     dnl option '-Wno-error', just to produce a warning
++     dnl "Option -Wno-error was incorrectly specified. The option will be ignored."
++     dnl afterwards.
++     if test $? = 0 && test `wc -l < conftest1.err` = `wc -l < conftest2.err`; then
++       gl_cv_cc_wallow='-Wno-error'
++     else
++       gl_cv_cc_wallow=none
++     fi
++     rm -f conftest*
++    ])
++  case "$gl_cv_cc_wallow" in
++    none) GL_CFLAG_ALLOW_WARNINGS='' ;;
++    *)    GL_CFLAG_ALLOW_WARNINGS="$gl_cv_cc_wallow" ;;
++  esac
++  AC_SUBST([GL_CFLAG_ALLOW_WARNINGS])
++])
++
++# gl_CXX_ALLOW_WARNINGS
++# sets and substitutes a variable GL_CXXFLAG_ALLOW_WARNINGS, to a $(CC) option
++# that reverts a preceding '-Werror' option, if available.
++AC_DEFUN([gl_CXX_ALLOW_WARNINGS],
++[
++  dnl Requires AC_PROG_CXX or gl_PROG_ANSI_CXX.
++  if test -n "$CXX" && test "$CXX" != no; then
++    AC_CACHE_CHECK([for C++ compiler option to allow warnings],
++      [gl_cv_cxx_wallow],
++      [rm -f conftest*
++       echo 'int dummy;' > conftest.cc
++       AC_TRY_COMMAND([${CXX-c++} $CXXFLAGS $CPPFLAGS -c conftest.cc 2>conftest1.err]) >/dev/null
++       AC_TRY_COMMAND([${CXX-c++} $CXXFLAGS $CPPFLAGS -Wno-error -c conftest.cc 2>conftest2.err]) >/dev/null
++       dnl Test the number of error output lines, because AIX xlC accepts the
++       dnl option '-Wno-error', just to produce a warning
++       dnl "Option -Wno-error was incorrectly specified. The option will be ignored."
++       dnl afterwards.
++       if test $? = 0 && test `wc -l < conftest1.err` = `wc -l < conftest2.err`; then
++         gl_cv_cxx_wallow='-Wno-error'
++       else
++         gl_cv_cxx_wallow=none
++       fi
++       rm -f conftest*
++      ])
++    case "$gl_cv_cxx_wallow" in
++      none) GL_CXXFLAG_ALLOW_WARNINGS='' ;;
++      *)    GL_CXXFLAG_ALLOW_WARNINGS="$gl_cv_cxx_wallow" ;;
++    esac
++  else
++    GL_CXXFLAG_ALLOW_WARNINGS=''
++  fi
++  AC_SUBST([GL_CXXFLAG_ALLOW_WARNINGS])
++])
++
+ dnl Expands to some code for use in .c programs that, on native Windows, defines
+ dnl the Microsoft deprecated alias function names to the underscore-prefixed
+ dnl actual function names. With this macro, these function names are available
+--- a/gnulib/m4/gnulib-comp.m4
++++ b/gnulib/m4/gnulib-comp.m4
+@@ -51,6 +51,8 @@ AC_DEFUN([gl_EARLY],
+   # Code from module btowc:
+   # Code from module builtin-expect:
+   # Code from module c99:
++  # Code from module calloc-gnu:
++  # Code from module calloc-posix:
+   # Code from module cloexec:
+   # Code from module close:
+   # Code from module double-slash-root:
+@@ -66,6 +68,7 @@ AC_DEFUN([gl_EARLY],
+   # Code from module fd-hook:
+   # Code from module filename:
+   # Code from module float:
++  # Code from module free-posix:
+   # Code from module fstat:
+   # Code from module getdtablesize:
+   # Code from module getopt-gnu:
+@@ -74,7 +77,9 @@ AC_DEFUN([gl_EARLY],
+   # Code from module gettext-h:
+   # Code from module hard-locale:
+   # Code from module havelib:
++  # Code from module ialloc:
+   # Code from module iconv:
++  # Code from module idx:
+   # Code from module include_next:
+   # Code from module intprops:
+   # Code from module inttypes-incomplete:
+@@ -84,12 +89,14 @@ AC_DEFUN([gl_EARLY],
+   # Code from module langinfo:
+   # Code from module largefile:
+   AC_REQUIRE([AC_SYS_LARGEFILE])
++  AC_REQUIRE([gl_YEAR2038_EARLY])
+   # Code from module libc-config:
+   # Code from module limits-h:
+   # Code from module localcharset:
+   # Code from module locale:
+   # Code from module localeconv:
+   # Code from module lock:
++  # Code from module malloc-gnu:
+   # Code from module malloc-posix:
+   # Code from module malloca:
+   # Code from module mbchar:
+@@ -107,6 +114,7 @@ AC_DEFUN([gl_EARLY],
+   # Code from module memchr:
+   # Code from module mempcpy:
+   # Code from module memrchr:
++  # Code from module minmax:
+   # Code from module msvc-inval:
+   # Code from module msvc-nothrow:
+   # Code from module multiarch:
+@@ -114,6 +122,9 @@ AC_DEFUN([gl_EARLY],
+   # Code from module nocrash:
+   # Code from module open:
+   # Code from module pathmax:
++  # Code from module realloc-gnu:
++  # Code from module realloc-posix:
++  # Code from module reallocarray:
+   # Code from module regex:
+   # Code from module setlocale-null:
+   # Code from module size_max:
+@@ -189,6 +200,8 @@ AC_DEFUN([gl_INIT],
+   m4_pushdef([AC_LIBSOURCES], m4_defn([gl_LIBSOURCES]))
+   m4_pushdef([gl_LIBSOURCES_LIST], [])
+   m4_pushdef([gl_LIBSOURCES_DIR], [])
++  m4_pushdef([GL_MACRO_PREFIX], [gl])
++  m4_pushdef([GL_MODULE_INDICATOR_PREFIX], [GL])
+   gl_COMMON
+   gl_source_base='gnulib/lib'
+   gl_FUNC_ALLOCA
+@@ -196,6 +209,15 @@ AC_DEFUN([gl_INIT],
+   if test -n "$ARGZ_H"; then
+     AC_LIBOBJ([argz])
+   fi
++  gl_FUNC_CALLOC_GNU
++  if test $REPLACE_CALLOC = 1; then
++    AC_LIBOBJ([calloc])
++  fi
++  gl_FUNC_CALLOC_POSIX
++  if test $REPLACE_CALLOC = 1; then
++    AC_LIBOBJ([calloc])
++  fi
++  gl_STDLIB_MODULE_INDICATOR([calloc-posix])
+   gl_DOUBLE_SLASH_ROOT
+   gl_HEADER_ERRNO_H
+   gl_ERROR
+@@ -208,6 +230,7 @@ AC_DEFUN([gl_INIT],
+      AM_][XGETTEXT_OPTION([--flag=error_at_line:5:c-format])])
+   AC_REQUIRE([gl_EXTERN_INLINE])
+   gl_FCNTL_H
++  gl_FCNTL_H_REQUIRE_DEFAULTS
+   gl_FLOAT_H
+   if test $REPLACE_FLOAT_LDBL = 1; then
+     AC_LIBOBJ([float])
+@@ -223,10 +246,10 @@ AC_DEFUN([gl_INIT],
+   if test $REPLACE_GETOPT = 1; then
+     AC_LIBOBJ([getopt])
+     AC_LIBOBJ([getopt1])
+-    dnl Arrange for unistd.h to include getopt.h.
+-    GNULIB_GL_UNISTD_H_GETOPT=1
++    dnl Define the substituted variable GNULIB_UNISTD_H_GETOPT to 1.
++    gl_UNISTD_H_REQUIRE_DEFAULTS
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_UNISTD_H_GETOPT], [1])
+   fi
+-  AC_SUBST([GNULIB_GL_UNISTD_H_GETOPT])
+   gl_UNISTD_MODULE_INDICATOR([getopt-posix])
+   gl_FUNC_GETPROGNAME
+   AC_SUBST([LIBINTL])
+@@ -236,6 +259,7 @@ AC_DEFUN([gl_INIT],
+   m4_ifdef([gl_ICONV_MODULE_INDICATOR],
+     [gl_ICONV_MODULE_INDICATOR([iconv])])
+   gl_INTTYPES_INCOMPLETE
++  gl_INTTYPES_H_REQUIRE_DEFAULTS
+   gl_FUNC_ISWBLANK
+   if test $HAVE_ISWCNTRL = 0 || test $REPLACE_ISWCNTRL = 1; then
+     :
+@@ -265,6 +289,15 @@ AC_DEFUN([gl_INIT],
+   gl_WCTYPE_MODULE_INDICATOR([iswxdigit])
+   AC_REQUIRE([gl_LARGEFILE])
+   gl_LIMITS_H
++  gl_FUNC_MALLOC_GNU
++  if test $REPLACE_MALLOC = 1; then
++    AC_LIBOBJ([malloc])
++  fi
++  AC_REQUIRE([gl_FUNC_MALLOC_POSIX])
++  if test $REPLACE_MALLOC = 1; then
++    AC_LIBOBJ([malloc])
++  fi
++  gl_STDLIB_MODULE_INDICATOR([malloc-posix])
+   gl_MALLOCA
+   gl_MBCHAR
+   gl_MBITER
+@@ -305,6 +338,7 @@ AC_DEFUN([gl_INIT],
+     gl_PREREQ_MEMRCHR
+   fi
+   gl_STRING_MODULE_INDICATOR([memrchr])
++  gl_MINMAX
+   gl_MULTIARCH
+   gl_FUNC_OPEN
+   if test $REPLACE_OPEN = 1; then
+@@ -312,6 +346,22 @@ AC_DEFUN([gl_INIT],
+     gl_PREREQ_OPEN
+   fi
+   gl_FCNTL_MODULE_INDICATOR([open])
++  gl_FUNC_REALLOC_GNU
++  if test $REPLACE_REALLOC = 1; then
++    AC_LIBOBJ([realloc])
++  fi
++  gl_FUNC_REALLOC_POSIX
++  if test $REPLACE_REALLOC = 1; then
++    AC_LIBOBJ([realloc])
++  fi
++  gl_STDLIB_MODULE_INDICATOR([realloc-posix])
++  gl_FUNC_REALLOCARRAY
++  if test $HAVE_REALLOCARRAY = 0 || test $REPLACE_REALLOCARRAY = 1; then
++    AC_LIBOBJ([reallocarray])
++    gl_PREREQ_REALLOCARRAY
++  fi
++  gl_MODULE_INDICATOR([reallocarray])
++  gl_STDLIB_MODULE_INDICATOR([reallocarray])
+   gl_REGEX
+   if test $ac_use_included_regex = yes; then
+     AC_LIBOBJ([regex])
+@@ -321,9 +371,35 @@ AC_DEFUN([gl_INIT],
+   gl_STDARG_H
+   AM_STDBOOL_H
+   gl_STDDEF_H
++  gl_STDDEF_H_REQUIRE_DEFAULTS
+   gl_STDINT_H
+   gl_STDIO_H
++  gl_STDIO_H_REQUIRE_DEFAULTS
++  dnl No need to create extra modules for these functions. Everyone who uses
++  dnl <stdio.h> likely needs them.
++  gl_STDIO_MODULE_INDICATOR([fscanf])
++  gl_MODULE_INDICATOR([fscanf])
++  gl_STDIO_MODULE_INDICATOR([scanf])
++  gl_MODULE_INDICATOR([scanf])
++  gl_STDIO_MODULE_INDICATOR([fgetc])
++  gl_STDIO_MODULE_INDICATOR([getc])
++  gl_STDIO_MODULE_INDICATOR([getchar])
++  gl_STDIO_MODULE_INDICATOR([fgets])
++  gl_STDIO_MODULE_INDICATOR([fread])
++  dnl No need to create extra modules for these functions. Everyone who uses
++  dnl <stdio.h> likely needs them.
++  gl_STDIO_MODULE_INDICATOR([fprintf])
++  gl_STDIO_MODULE_INDICATOR([printf])
++  gl_STDIO_MODULE_INDICATOR([vfprintf])
++  gl_STDIO_MODULE_INDICATOR([vprintf])
++  gl_STDIO_MODULE_INDICATOR([fputc])
++  gl_STDIO_MODULE_INDICATOR([putc])
++  gl_STDIO_MODULE_INDICATOR([putchar])
++  gl_STDIO_MODULE_INDICATOR([fputs])
++  gl_STDIO_MODULE_INDICATOR([puts])
++  gl_STDIO_MODULE_INDICATOR([fwrite])
+   gl_STDLIB_H
++  gl_STDLIB_H_REQUIRE_DEFAULTS
+   gl_STRCASE
+   if test $HAVE_STRCASECMP = 0; then
+     AC_LIBOBJ([strcasecmp])
+@@ -356,8 +432,10 @@ AC_DEFUN([gl_INIT],
+   fi
+   gl_MODULE_INDICATOR([strerror])
+   gl_STRING_MODULE_INDICATOR([strerror])
+-  gl_HEADER_STRING_H
+-  gl_HEADER_STRINGS_H
++  gl_STRING_H
++  gl_STRING_H_REQUIRE_DEFAULTS
++  gl_STRINGS_H
++  gl_STRINGS_H_REQUIRE_DEFAULTS
+   gl_FUNC_STRNLEN
+   if test $HAVE_DECL_STRNLEN = 0 || test $REPLACE_STRNLEN = 1; then
+     AC_LIBOBJ([strnlen])
+@@ -365,10 +443,27 @@ AC_DEFUN([gl_INIT],
+   fi
+   gl_STRING_MODULE_INDICATOR([strnlen])
+   gl_SYS_TYPES_H
++  gl_SYS_TYPES_H_REQUIRE_DEFAULTS
+   AC_PROG_MKDIR_P
+   gl_UNISTD_H
+-  gl_LIBUNISTRING_LIBHEADER([0.9.4], [unitypes.h])
+-  gl_LIBUNISTRING_LIBHEADER([0.9.4], [uniwidth.h])
++  gl_UNISTD_H_REQUIRE_DEFAULTS
++  gl_LIBUNISTRING_LIBHEADER([0.9.11], [unitypes.h])
++  AH_VERBATIM([unitypes_restrict], [
++  /* This definition is a duplicate of the one in unitypes.h.
++     It is here so that we can cope with an older version of unitypes.h
++     that does not contain this definition and that is pre-installed among
++     the public header files.  */
++  # if defined __restrict \
++       || 2 < __GNUC__ + (95 <= __GNUC_MINOR__) \
++       || __clang_major__ >= 3
++  #  define _UC_RESTRICT __restrict
++  # elif 199901L <= __STDC_VERSION__ || defined restrict
++  #  define _UC_RESTRICT restrict
++  # else
++  #  define _UC_RESTRICT
++  # endif
++  ])
++  gl_LIBUNISTRING_LIBHEADER([0.9.11], [uniwidth.h])
+   gl_LIBUNISTRING_MODULE([0.9.8], [uniwidth/width])
+   gl_FUNC_VASPRINTF
+   gl_STDIO_MODULE_INDICATOR([vasprintf])
+@@ -376,7 +471,9 @@ AC_DEFUN([gl_INIT],
+     [AM_][XGETTEXT_OPTION([--flag=asprintf:2:c-format])
+      AM_][XGETTEXT_OPTION([--flag=vasprintf:2:c-format])])
+   gl_WCHAR_H
++  gl_WCHAR_H_REQUIRE_DEFAULTS
+   gl_WCTYPE_H
++  gl_WCTYPE_H_REQUIRE_DEFAULTS
+   gl_FUNC_WCWIDTH
+   if test $HAVE_WCWIDTH = 0 || test $REPLACE_WCWIDTH = 1; then
+     AC_LIBOBJ([wcwidth])
+@@ -395,17 +492,16 @@ AC_DEFUN([gl_INIT],
+   gl_gnulib_enabled_dynarray=false
+   gl_gnulib_enabled_fcntl=false
+   gl_gnulib_enabled_43fe87a341d9b4b93c47c3ad819a5239=false
++  gl_gnulib_enabled_ef07dc4b3077c11ea9cef586db4e5955=false
+   gl_gnulib_enabled_fstat=false
+   gl_gnulib_enabled_getdtablesize=false
+   gl_gnulib_enabled_30838f5439487421042f2225bed3af76=false
+-  gl_gnulib_enabled_intprops=false
+   gl_gnulib_enabled_langinfo=false
+   gl_gnulib_enabled_21ee726a3540c09237a8e70c0baf7467=false
+   gl_gnulib_enabled_localcharset=false
+   gl_gnulib_enabled_locale=false
+   gl_gnulib_enabled_localeconv=false
+   gl_gnulib_enabled_lock=false
+-  gl_gnulib_enabled_ef455225c00f5049c808c2eda3e76866=false
+   gl_gnulib_enabled_mbtowc=false
+   gl_gnulib_enabled_mempcpy=false
+   gl_gnulib_enabled_f691f076f650964c9f5598c3ee487616=false
+@@ -506,8 +602,9 @@ AC_DEFUN([gl_INIT],
+   func_gl_gnulib_m4code_dynarray ()
+   {
+     if ! $gl_gnulib_enabled_dynarray; then
++      AC_PROG_MKDIR_P
+       gl_gnulib_enabled_dynarray=true
+-      func_gl_gnulib_m4code_intprops
++      func_gl_gnulib_m4code_37f71b604aa9c54446783d80f42fe547
+       func_gl_gnulib_m4code_21ee726a3540c09237a8e70c0baf7467
+     fi
+   }
+@@ -540,6 +637,18 @@ AC_DEFUN([gl_INIT],
+       gl_gnulib_enabled_43fe87a341d9b4b93c47c3ad819a5239=true
+     fi
+   }
++  func_gl_gnulib_m4code_ef07dc4b3077c11ea9cef586db4e5955 ()
++  {
++    if ! $gl_gnulib_enabled_ef07dc4b3077c11ea9cef586db4e5955; then
++      gl_FUNC_FREE
++      if test $REPLACE_FREE = 1; then
++        AC_LIBOBJ([free])
++        gl_PREREQ_FREE
++      fi
++      gl_STDLIB_MODULE_INDICATOR([free-posix])
++      gl_gnulib_enabled_ef07dc4b3077c11ea9cef586db4e5955=true
++    fi
++  }
+   func_gl_gnulib_m4code_fstat ()
+   {
+     if ! $gl_gnulib_enabled_fstat; then
+@@ -595,16 +704,11 @@ AC_DEFUN([gl_INIT],
+       func_gl_gnulib_m4code_e7e881d32ca02f1c997b13c737c64bbd
+     fi
+   }
+-  func_gl_gnulib_m4code_intprops ()
+-  {
+-    if ! $gl_gnulib_enabled_intprops; then
+-      gl_gnulib_enabled_intprops=true
+-    fi
+-  }
+   func_gl_gnulib_m4code_langinfo ()
+   {
+     if ! $gl_gnulib_enabled_langinfo; then
+       gl_LANGINFO_H
++      gl_LANGINFO_H_REQUIRE_DEFAULTS
+       gl_gnulib_enabled_langinfo=true
+     fi
+   }
+@@ -629,6 +733,7 @@ AC_DEFUN([gl_INIT],
+   {
+     if ! $gl_gnulib_enabled_locale; then
+       gl_LOCALE_H
++      gl_LOCALE_H_REQUIRE_DEFAULTS
+       gl_gnulib_enabled_locale=true
+     fi
+   }
+@@ -666,18 +771,6 @@ AC_DEFUN([gl_INIT],
+       fi
+     fi
+   }
+-  func_gl_gnulib_m4code_ef455225c00f5049c808c2eda3e76866 ()
+-  {
+-    if ! $gl_gnulib_enabled_ef455225c00f5049c808c2eda3e76866; then
+-      gl_FUNC_MALLOC_POSIX
+-      if test $REPLACE_MALLOC = 1; then
+-        AC_LIBOBJ([malloc])
+-      fi
+-      gl_STDLIB_MODULE_INDICATOR([malloc-posix])
+-      gl_MODULE_INDICATOR([malloc-posix])
+-      gl_gnulib_enabled_ef455225c00f5049c808c2eda3e76866=true
+-    fi
+-  }
+   func_gl_gnulib_m4code_mbtowc ()
+   {
+     if ! $gl_gnulib_enabled_mbtowc; then
+@@ -803,7 +896,6 @@ AC_DEFUN([gl_INIT],
+       gl_STAT_TIME
+       gl_STAT_BIRTHTIME
+       gl_gnulib_enabled_0137e3d3638b33e5819d132d0b23165c=true
+-      func_gl_gnulib_m4code_intprops
+       func_gl_gnulib_m4code_time
+     fi
+   }
+@@ -870,7 +962,8 @@ AC_DEFUN([gl_INIT],
+   func_gl_gnulib_m4code_sys_stat ()
+   {
+     if ! $gl_gnulib_enabled_sys_stat; then
+-      gl_HEADER_SYS_STAT_H
++      gl_SYS_STAT_H
++      gl_SYS_STAT_H_REQUIRE_DEFAULTS
+       AC_PROG_MKDIR_P
+       gl_gnulib_enabled_sys_stat=true
+       func_gl_gnulib_m4code_time
+@@ -886,7 +979,8 @@ AC_DEFUN([gl_INIT],
+   func_gl_gnulib_m4code_time ()
+   {
+     if ! $gl_gnulib_enabled_time; then
+-      gl_HEADER_TIME_H
++      gl_TIME_H
++      gl_TIME_H_REQUIRE_DEFAULTS
+       gl_gnulib_enabled_time=true
+     fi
+   }
+@@ -897,6 +991,7 @@ AC_DEFUN([gl_INIT],
+       gl_FUNC_VASNPRINTF
+       gl_gnulib_enabled_vasnprintf=true
+       func_gl_gnulib_m4code_attribute
++      func_gl_gnulib_m4code_ef07dc4b3077c11ea9cef586db4e5955
+       func_gl_gnulib_m4code_xsize
+     fi
+   }
+@@ -1002,6 +1097,9 @@ AC_DEFUN([gl_INIT],
+   if test $REPLACE_OPEN = 1; then
+     func_gl_gnulib_m4code_stat
+   fi
++  if test $REPLACE_REALLOC = 1; then
++    func_gl_gnulib_m4code_ef07dc4b3077c11ea9cef586db4e5955
++  fi
+   if test $ac_use_included_regex = yes; then
+     func_gl_gnulib_m4code_attribute
+   fi
+@@ -1015,9 +1113,6 @@ AC_DEFUN([gl_INIT],
+     func_gl_gnulib_m4code_dynarray
+   fi
+   if test $ac_use_included_regex = yes; then
+-    func_gl_gnulib_m4code_intprops
+-  fi
+-  if test $ac_use_included_regex = yes; then
+     func_gl_gnulib_m4code_langinfo
+   fi
+   if test $ac_use_included_regex = yes; then
+@@ -1032,12 +1127,6 @@ AC_DEFUN([gl_INIT],
+   if test $ac_use_included_regex = yes; then
+     func_gl_gnulib_m4code_wcrtomb
+   fi
+-  if test $REPLACE_STRDUP = 1; then
+-    func_gl_gnulib_m4code_ef455225c00f5049c808c2eda3e76866
+-  fi
+-  if test $REPLACE_STRERROR = 1; then
+-    func_gl_gnulib_m4code_intprops
+-  fi
+   if test $REPLACE_STRERROR = 1; then
+     func_gl_gnulib_m4code_dbb57f49352be8fb86869629a254fb72
+   fi
+@@ -1057,17 +1146,16 @@ AC_DEFUN([gl_INIT],
+   AM_CONDITIONAL([gl_GNULIB_ENABLED_dynarray], [$gl_gnulib_enabled_dynarray])
+   AM_CONDITIONAL([gl_GNULIB_ENABLED_fcntl], [$gl_gnulib_enabled_fcntl])
+   AM_CONDITIONAL([gl_GNULIB_ENABLED_43fe87a341d9b4b93c47c3ad819a5239], [$gl_gnulib_enabled_43fe87a341d9b4b93c47c3ad819a5239])
++  AM_CONDITIONAL([gl_GNULIB_ENABLED_ef07dc4b3077c11ea9cef586db4e5955], [$gl_gnulib_enabled_ef07dc4b3077c11ea9cef586db4e5955])
+   AM_CONDITIONAL([gl_GNULIB_ENABLED_fstat], [$gl_gnulib_enabled_fstat])
+   AM_CONDITIONAL([gl_GNULIB_ENABLED_getdtablesize], [$gl_gnulib_enabled_getdtablesize])
+   AM_CONDITIONAL([gl_GNULIB_ENABLED_30838f5439487421042f2225bed3af76], [$gl_gnulib_enabled_30838f5439487421042f2225bed3af76])
+-  AM_CONDITIONAL([gl_GNULIB_ENABLED_intprops], [$gl_gnulib_enabled_intprops])
+   AM_CONDITIONAL([gl_GNULIB_ENABLED_langinfo], [$gl_gnulib_enabled_langinfo])
+   AM_CONDITIONAL([gl_GNULIB_ENABLED_21ee726a3540c09237a8e70c0baf7467], [$gl_gnulib_enabled_21ee726a3540c09237a8e70c0baf7467])
+   AM_CONDITIONAL([gl_GNULIB_ENABLED_localcharset], [$gl_gnulib_enabled_localcharset])
+   AM_CONDITIONAL([gl_GNULIB_ENABLED_locale], [$gl_gnulib_enabled_locale])
+   AM_CONDITIONAL([gl_GNULIB_ENABLED_localeconv], [$gl_gnulib_enabled_localeconv])
+   AM_CONDITIONAL([gl_GNULIB_ENABLED_lock], [$gl_gnulib_enabled_lock])
+-  AM_CONDITIONAL([gl_GNULIB_ENABLED_ef455225c00f5049c808c2eda3e76866], [$gl_gnulib_enabled_ef455225c00f5049c808c2eda3e76866])
+   AM_CONDITIONAL([gl_GNULIB_ENABLED_mbtowc], [$gl_gnulib_enabled_mbtowc])
+   AM_CONDITIONAL([gl_GNULIB_ENABLED_mempcpy], [$gl_gnulib_enabled_mempcpy])
+   AM_CONDITIONAL([gl_GNULIB_ENABLED_f691f076f650964c9f5598c3ee487616], [$gl_gnulib_enabled_f691f076f650964c9f5598c3ee487616])
+@@ -1105,6 +1193,8 @@ AC_DEFUN([gl_INIT],
+       m4_if(m4_sysval, [0], [],
+         [AC_FATAL([expected source file, required through AC_LIBSOURCES, not found])])
+   ])
++  m4_popdef([GL_MODULE_INDICATOR_PREFIX])
++  m4_popdef([GL_MACRO_PREFIX])
+   m4_popdef([gl_LIBSOURCES_DIR])
+   m4_popdef([gl_LIBSOURCES_LIST])
+   m4_popdef([AC_LIBSOURCES])
+@@ -1131,6 +1221,8 @@ AC_DEFUN([gl_INIT],
+   m4_pushdef([AC_LIBSOURCES], m4_defn([gltests_LIBSOURCES]))
+   m4_pushdef([gltests_LIBSOURCES_LIST], [])
+   m4_pushdef([gltests_LIBSOURCES_DIR], [])
++  m4_pushdef([GL_MACRO_PREFIX], [gltests])
++  m4_pushdef([GL_MODULE_INDICATOR_PREFIX], [GL])
+   gl_COMMON
+   gl_source_base='tests'
+ changequote(,)dnl
+@@ -1152,6 +1244,8 @@ changequote([, ])dnl
+       m4_if(m4_sysval, [0], [],
+         [AC_FATAL([expected source file, required through AC_LIBSOURCES, not found])])
+   ])
++  m4_popdef([GL_MODULE_INDICATOR_PREFIX])
++  m4_popdef([GL_MACRO_PREFIX])
+   m4_popdef([gltests_LIBSOURCES_DIR])
+   m4_popdef([gltests_LIBSOURCES_LIST])
+   m4_popdef([AC_LIBSOURCES])
+@@ -1247,6 +1341,7 @@ AC_DEFUN([gl_FILE_LIST], [
+   lib/basename-lgpl.h
+   lib/btowc.c
+   lib/c++defs.h
++  lib/calloc.c
+   lib/cdefs.h
+   lib/cloexec.c
+   lib/cloexec.h
+@@ -1266,6 +1361,7 @@ AC_DEFUN([gl_FILE_LIST], [
+   lib/float+.h
+   lib/float.c
+   lib/float.in.h
++  lib/free.c
+   lib/fstat.c
+   lib/getdtablesize.c
+   lib/getopt-cdefs.in.h
+@@ -1285,6 +1381,9 @@ AC_DEFUN([gl_FILE_LIST], [
+   lib/glthread/threadlib.c
+   lib/hard-locale.c
+   lib/hard-locale.h
++  lib/ialloc.c
++  lib/ialloc.h
++  lib/idx.h
+   lib/intprops.h
+   lib/inttypes.in.h
+   lib/iswblank.c
+@@ -1335,6 +1434,7 @@ AC_DEFUN([gl_FILE_LIST], [
+   lib/memchr.valgrind
+   lib/mempcpy.c
+   lib/memrchr.c
++  lib/minmax.h
+   lib/msvc-inval.c
+   lib/msvc-inval.h
+   lib/msvc-nothrow.c
+@@ -1347,6 +1447,8 @@ AC_DEFUN([gl_FILE_LIST], [
+   lib/printf-args.h
+   lib/printf-parse.c
+   lib/printf-parse.h
++  lib/realloc.c
++  lib/reallocarray.c
+   lib/regcomp.c
+   lib/regex.c
+   lib/regex.h
+@@ -1427,6 +1529,7 @@ AC_DEFUN([gl_FILE_LIST], [
+   m4/argz.m4
+   m4/btowc.m4
+   m4/builtin-expect.m4
++  m4/calloc.m4
+   m4/close.m4
+   m4/codeset.m4
+   m4/double-slash-root.m4
+@@ -1441,6 +1544,7 @@ AC_DEFUN([gl_FILE_LIST], [
+   m4/fcntl.m4
+   m4/fcntl_h.m4
+   m4/float_h.m4
++  m4/free.m4
+   m4/fstat.m4
+   m4/getdtablesize.m4
+   m4/getopt.m4
+@@ -1483,6 +1587,7 @@ AC_DEFUN([gl_FILE_LIST], [
+   m4/memchr.m4
+   m4/mempcpy.m4
+   m4/memrchr.m4
++  m4/minmax.m4
+   m4/mmap-anon.m4
+   m4/mode_t.m4
+   m4/msvc-inval.m4
+@@ -1498,6 +1603,8 @@ AC_DEFUN([gl_FILE_LIST], [
+   m4/pid_t.m4
+   m4/printf.m4
+   m4/pthread_rwlock_rdlock.m4
++  m4/realloc.m4
++  m4/reallocarray.m4
+   m4/regex.m4
+   m4/setlocale_null.m4
+   m4/size_max.m4
+@@ -1540,5 +1647,6 @@ AC_DEFUN([gl_FILE_LIST], [
+   m4/wint_t.m4
+   m4/xalloc.m4
+   m4/xsize.m4
++  m4/year2038.m4
+   m4/zzgnulib.m4
+ ])
+--- a/gnulib/m4/inttypes.m4
++++ b/gnulib/m4/inttypes.m4
+@@ -1,4 +1,4 @@
+-# inttypes.m4 serial 32
++# inttypes.m4 serial 35
+ dnl Copyright (C) 2006-2021 Free Software Foundation, Inc.
+ dnl This file is free software; the Free Software Foundation
+ dnl gives unlimited permission to copy and/or distribute it,
+@@ -7,7 +7,7 @@ dnl with or without modifications, as lo
+ dnl From Derek Price, Bruno Haible.
+ dnl Test whether <inttypes.h> is supported or must be substituted.
+ 
+-AC_DEFUN([gl_INTTYPES_H],
++AC_DEFUN_ONCE([gl_INTTYPES_H],
+ [
+   AC_REQUIRE([gl_INTTYPES_INCOMPLETE])
+   gl_INTTYPES_PRI_SCN
+@@ -136,19 +136,34 @@ AC_DEFUN([gl_INTTYPES_CHECK_LONG_LONG_IN
+   AC_SUBST([$1])
+ ])
+ 
++# gl_INTTYPES_MODULE_INDICATOR([modulename])
++# sets the shell variable that indicates the presence of the given module
++# to a C preprocessor expression that will evaluate to 1.
++# This macro invocation must not occur in macros that are AC_REQUIREd.
+ AC_DEFUN([gl_INTTYPES_MODULE_INDICATOR],
+ [
+-  dnl Use AC_REQUIRE here, so that the default settings are expanded once only.
+-  AC_REQUIRE([gl_INTTYPES_H_DEFAULTS])
++  dnl Ensure to expand the default settings once only.
++  gl_INTTYPES_H_REQUIRE_DEFAULTS
+   gl_MODULE_INDICATOR_SET_VARIABLE([$1])
+ ])
+ 
++# Initializes the default values for AC_SUBSTed shell variables.
++# This macro must not be AC_REQUIREd.  It must only be invoked, and only
++# outside of macros or in macros that are not AC_REQUIREd.
++AC_DEFUN([gl_INTTYPES_H_REQUIRE_DEFAULTS],
++[
++  m4_defun(GL_MODULE_INDICATOR_PREFIX[_INTTYPES_H_MODULE_INDICATOR_DEFAULTS], [
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_IMAXABS])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_IMAXDIV])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STRTOIMAX])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STRTOUMAX])
++  ])
++  m4_require(GL_MODULE_INDICATOR_PREFIX[_INTTYPES_H_MODULE_INDICATOR_DEFAULTS])
++  AC_REQUIRE([gl_INTTYPES_H_DEFAULTS])
++])
++
+ AC_DEFUN([gl_INTTYPES_H_DEFAULTS],
+ [
+-  GNULIB_IMAXABS=0;      AC_SUBST([GNULIB_IMAXABS])
+-  GNULIB_IMAXDIV=0;      AC_SUBST([GNULIB_IMAXDIV])
+-  GNULIB_STRTOIMAX=0;    AC_SUBST([GNULIB_STRTOIMAX])
+-  GNULIB_STRTOUMAX=0;    AC_SUBST([GNULIB_STRTOUMAX])
+   dnl Assume proper GNU behavior unless another module says otherwise.
+   HAVE_DECL_IMAXABS=1;   AC_SUBST([HAVE_DECL_IMAXABS])
+   HAVE_DECL_IMAXDIV=1;   AC_SUBST([HAVE_DECL_IMAXDIV])
+--- a/gnulib/m4/iswdigit.m4
++++ b/gnulib/m4/iswdigit.m4
+@@ -1,4 +1,4 @@
+-# iswdigit.m4 serial 2
++# iswdigit.m4 serial 3
+ dnl Copyright (C) 2020-2021 Free Software Foundation, Inc.
+ dnl This file is free software; the Free Software Foundation
+ dnl gives unlimited permission to copy and/or distribute it,
+@@ -81,12 +81,12 @@ main (int argc, char *argv[])
+     }
+   if (setlocale (LC_ALL, "$LOCALE_FR_UTF8") != NULL)
+     {
+-      /* This fails on FreeBSD 12, NetBSD 8.0, MSVC 14.  */
++      /* This fails on FreeBSD 13.0, NetBSD 8.0, MSVC 14.  */
+       /* U+0663 ARABIC-INDIC DIGIT THREE */
+       is = for_character ("\331\243", 2);
+       if (!(is == 0))
+         result |= 4;
+-      /* This fails on FreeBSD 12, NetBSD 8.0, MSVC 14.  */
++      /* This fails on FreeBSD 13.0, NetBSD 8.0, MSVC 14.  */
+       /* U+FF11 FULLWIDTH DIGIT ONE */
+       is = for_character ("\357\274\221", 3);
+       if (!(is == 0))
+--- a/gnulib/m4/iswxdigit.m4
++++ b/gnulib/m4/iswxdigit.m4
+@@ -1,4 +1,4 @@
+-# iswxdigit.m4 serial 2
++# iswxdigit.m4 serial 3
+ dnl Copyright (C) 2020-2021 Free Software Foundation, Inc.
+ dnl This file is free software; the Free Software Foundation
+ dnl gives unlimited permission to copy and/or distribute it,
+@@ -72,7 +72,7 @@ main (int argc, char *argv[])
+     }
+   if (setlocale (LC_ALL, "$LOCALE_FR_UTF8") != NULL)
+     {
+-      /* This fails on FreeBSD 12.  */
++      /* This fails on FreeBSD 13.0.  */
+       /* U+0663 ARABIC-INDIC DIGIT THREE */
+       is = for_character ("\331\243", 2);
+       if (!(is == 0))
+--- a/gnulib/m4/langinfo_h.m4
++++ b/gnulib/m4/langinfo_h.m4
+@@ -1,10 +1,10 @@
+-# langinfo_h.m4 serial 9
++# langinfo_h.m4 serial 12
+ dnl Copyright (C) 2009-2021 Free Software Foundation, Inc.
+ dnl This file is free software; the Free Software Foundation
+ dnl gives unlimited permission to copy and/or distribute it,
+ dnl with or without modifications, as long as this notice is preserved.
+ 
+-AC_DEFUN([gl_LANGINFO_H],
++AC_DEFUN_ONCE([gl_LANGINFO_H],
+ [
+   AC_REQUIRE([gl_LANGINFO_H_DEFAULTS])
+ 
+@@ -104,18 +104,33 @@ int a = YESEXPR;
+     ]], [nl_langinfo])
+ ])
+ 
++# gl_LANGINFO_MODULE_INDICATOR([modulename])
++# sets the shell variable that indicates the presence of the given module
++# to a C preprocessor expression that will evaluate to 1.
++# This macro invocation must not occur in macros that are AC_REQUIREd.
+ AC_DEFUN([gl_LANGINFO_MODULE_INDICATOR],
+ [
+-  dnl Use AC_REQUIRE here, so that the default settings are expanded once only.
+-  AC_REQUIRE([gl_LANGINFO_H_DEFAULTS])
++  dnl Ensure to expand the default settings once only.
++  gl_LANGINFO_H_REQUIRE_DEFAULTS
+   gl_MODULE_INDICATOR_SET_VARIABLE([$1])
+   dnl Define it also as a C macro, for the benefit of the unit tests.
+   gl_MODULE_INDICATOR_FOR_TESTS([$1])
+ ])
+ 
++# Initializes the default values for AC_SUBSTed shell variables.
++# This macro must not be AC_REQUIREd.  It must only be invoked, and only
++# outside of macros or in macros that are not AC_REQUIREd.
++AC_DEFUN([gl_LANGINFO_H_REQUIRE_DEFAULTS],
++[
++  m4_defun(GL_MODULE_INDICATOR_PREFIX[_LANGINFO_H_MODULE_INDICATOR_DEFAULTS], [
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_NL_LANGINFO])
++  ])
++  m4_require(GL_MODULE_INDICATOR_PREFIX[_LANGINFO_H_MODULE_INDICATOR_DEFAULTS])
++  AC_REQUIRE([gl_LANGINFO_H_DEFAULTS])
++])
++
+ AC_DEFUN([gl_LANGINFO_H_DEFAULTS],
+ [
+-  GNULIB_NL_LANGINFO=0;  AC_SUBST([GNULIB_NL_LANGINFO])
+   dnl Assume proper GNU behavior unless another module says otherwise.
+   HAVE_NL_LANGINFO=1;    AC_SUBST([HAVE_NL_LANGINFO])
+   REPLACE_NL_LANGINFO=0; AC_SUBST([REPLACE_NL_LANGINFO])
+--- a/gnulib/m4/largefile.m4
++++ b/gnulib/m4/largefile.m4
+@@ -22,7 +22,8 @@ AC_DEFUN([gl_SET_LARGEFILE_SOURCE],
+   esac
+ ])
+ 
+-# The following implementation works around a problem in autoconf <= 2.69;
++# Work around a problem in Autoconf through at least 2.71 on glibc 2.34+
++# with _TIME_BITS.  Also, work around a problem in autoconf <= 2.69:
+ # AC_SYS_LARGEFILE does not configure for large inodes on Mac OS X 10.5,
+ # or configures them incorrectly in some cases.
+ m4_version_prereq([2.70], [], [
+@@ -40,6 +41,7 @@ m4_define([_AC_SYS_LARGEFILE_TEST_INCLUD
+                        && LARGE_OFF_T % 2147483647 == 1)
+                       ? 1 : -1]];[]dnl
+ ])
++])# m4_version_prereq 2.70
+ 
+ 
+ # _AC_SYS_LARGEFILE_MACRO_VALUE(C-MACRO, VALUE,
+@@ -54,7 +56,8 @@ m4_define([_AC_SYS_LARGEFILE_MACRO_VALUE
+     [AC_LANG_PROGRAM([$5], [$6])],
+     [$3=no; break])
+   m4_ifval([$6], [AC_LINK_IFELSE], [AC_COMPILE_IFELSE])(
+-    [AC_LANG_PROGRAM([#define $1 $2
++    [AC_LANG_PROGRAM([#undef $1
++#define $1 $2
+ $5], [$6])],
+     [$3=$2; break])
+   $3=unknown
+@@ -80,9 +83,8 @@ rm -rf conftest*[]dnl
+ AC_DEFUN([AC_SYS_LARGEFILE],
+ [AC_ARG_ENABLE(largefile,
+                [  --disable-largefile     omit support for large files])
+-if test "$enable_largefile" != no; then
+-
+-  AC_CACHE_CHECK([for special C compiler options needed for large files],
++AS_IF([test "$enable_largefile" != no],
++ [AC_CACHE_CHECK([for special C compiler options needed for large files],
+     ac_cv_sys_largefile_CC,
+     [ac_cv_sys_largefile_CC=no
+      if test "$GCC" != yes; then
+@@ -107,15 +109,15 @@ if test "$enable_largefile" != no; then
+     ac_cv_sys_file_offset_bits,
+     [Number of bits in a file offset, on hosts where this is settable.],
+     [_AC_SYS_LARGEFILE_TEST_INCLUDES])
+-  if test $ac_cv_sys_file_offset_bits = unknown; then
+-    _AC_SYS_LARGEFILE_MACRO_VALUE(_LARGE_FILES, 1,
+-      ac_cv_sys_large_files,
+-      [Define for large files, on AIX-style hosts.],
+-      [_AC_SYS_LARGEFILE_TEST_INCLUDES])
+-  fi
+-fi
++  AS_CASE([$ac_cv_sys_file_offset_bits],
++    [unknown],
++      [_AC_SYS_LARGEFILE_MACRO_VALUE([_LARGE_FILES], [1],
++         [ac_cv_sys_large_files],
++         [Define for large files, on AIX-style hosts.],
++         [_AC_SYS_LARGEFILE_TEST_INCLUDES])],
++    [64],
++      [gl_YEAR2038_BODY([])])])
+ ])# AC_SYS_LARGEFILE
+-])# m4_version_prereq 2.70
+ 
+ # Enable large files on systems where this is implemented by Gnulib, not by the
+ # system headers.
+--- a/gnulib/m4/locale_h.m4
++++ b/gnulib/m4/locale_h.m4
+@@ -1,13 +1,13 @@
+-# locale_h.m4 serial 25
++# locale_h.m4 serial 28
+ dnl Copyright (C) 2007, 2009-2021 Free Software Foundation, Inc.
+ dnl This file is free software; the Free Software Foundation
+ dnl gives unlimited permission to copy and/or distribute it,
+ dnl with or without modifications, as long as this notice is preserved.
+ 
+-AC_DEFUN([gl_LOCALE_H],
++AC_DEFUN_ONCE([gl_LOCALE_H],
+ [
+-  dnl Use AC_REQUIRE here, so that the default behavior below is expanded
+-  dnl once only, before all statements that occur in other macros.
++  dnl Ensure to expand the default settings once only, before all statements
++  dnl that occur in other macros.
+   AC_REQUIRE([gl_LOCALE_H_DEFAULTS])
+ 
+   dnl Persuade glibc <locale.h> to define locale_t and the int_p_*, int_n_*
+@@ -129,22 +129,37 @@ AC_DEFUN([gl_LOCALE_T],
+   AC_SUBST([HAVE_XLOCALE_H])
+ ])
+ 
++# gl_LOCALE_MODULE_INDICATOR([modulename])
++# sets the shell variable that indicates the presence of the given module
++# to a C preprocessor expression that will evaluate to 1.
++# This macro invocation must not occur in macros that are AC_REQUIREd.
+ AC_DEFUN([gl_LOCALE_MODULE_INDICATOR],
+ [
+-  dnl Use AC_REQUIRE here, so that the default settings are expanded once only.
+-  AC_REQUIRE([gl_LOCALE_H_DEFAULTS])
++  dnl Ensure to expand the default settings once only.
++  gl_LOCALE_H_REQUIRE_DEFAULTS
+   gl_MODULE_INDICATOR_SET_VARIABLE([$1])
+   dnl Define it also as a C macro, for the benefit of the unit tests.
+   gl_MODULE_INDICATOR_FOR_TESTS([$1])
+ ])
+ 
++# Initializes the default values for AC_SUBSTed shell variables.
++# This macro must not be AC_REQUIREd.  It must only be invoked, and only
++# outside of macros or in macros that are not AC_REQUIREd.
++AC_DEFUN([gl_LOCALE_H_REQUIRE_DEFAULTS],
++[
++  m4_defun(GL_MODULE_INDICATOR_PREFIX[_LOCALE_H_MODULE_INDICATOR_DEFAULTS], [
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_LOCALECONV])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_SETLOCALE])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_SETLOCALE_NULL])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_DUPLOCALE])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_LOCALENAME])
++  ])
++  m4_require(GL_MODULE_INDICATOR_PREFIX[_LOCALE_H_MODULE_INDICATOR_DEFAULTS])
++  AC_REQUIRE([gl_LOCALE_H_DEFAULTS])
++])
++
+ AC_DEFUN([gl_LOCALE_H_DEFAULTS],
+ [
+-  GNULIB_LOCALECONV=0;     AC_SUBST([GNULIB_LOCALECONV])
+-  GNULIB_SETLOCALE=0;      AC_SUBST([GNULIB_SETLOCALE])
+-  GNULIB_SETLOCALE_NULL=0; AC_SUBST([GNULIB_SETLOCALE_NULL])
+-  GNULIB_DUPLOCALE=0;      AC_SUBST([GNULIB_DUPLOCALE])
+-  GNULIB_LOCALENAME=0;     AC_SUBST([GNULIB_LOCALENAME])
+   dnl Assume proper GNU behavior unless another module says otherwise.
+   HAVE_NEWLOCALE=1;       AC_SUBST([HAVE_NEWLOCALE])
+   HAVE_DUPLOCALE=1;       AC_SUBST([HAVE_DUPLOCALE])
+--- a/gnulib/m4/malloc.m4
++++ b/gnulib/m4/malloc.m4
+@@ -1,21 +1,21 @@
+-# malloc.m4 serial 22
++# malloc.m4 serial 27
+ dnl Copyright (C) 2007, 2009-2021 Free Software Foundation, Inc.
+ dnl This file is free software; the Free Software Foundation
+ dnl gives unlimited permission to copy and/or distribute it,
+ dnl with or without modifications, as long as this notice is preserved.
+ 
+ # This is adapted with modifications from upstream Autoconf here:
+-# https://git.savannah.gnu.org/cgit/autoconf.git/commit/?id=04be2b7a29d65d9a08e64e8e56e594c91749598c
++# https://git.savannah.gnu.org/cgit/autoconf.git/tree/lib/autoconf/functions.m4?id=v2.70#n949
+ AC_DEFUN([_AC_FUNC_MALLOC_IF],
+ [
+   AC_REQUIRE([AC_CANONICAL_HOST])dnl for cross-compiles
+-  AC_CACHE_CHECK([for GNU libc compatible malloc],
++  AC_CACHE_CHECK([whether malloc (0) returns nonnull],
+     [ac_cv_func_malloc_0_nonnull],
+     [AC_RUN_IFELSE(
+        [AC_LANG_PROGRAM(
+           [[#include <stdlib.h>
+           ]],
+-          [[char *p = malloc (0);
++          [[void *p = malloc (0);
+             int result = !p;
+             free (p);
+             return result;]])
+@@ -24,75 +24,151 @@ AC_DEFUN([_AC_FUNC_MALLOC_IF],
+        [ac_cv_func_malloc_0_nonnull=no],
+        [case "$host_os" in
+           # Guess yes on platforms where we know the result.
+-          *-gnu* | gnu* | *-musl* | freebsd* | midnightbsd* | netbsd* | openbsd* \
+-          | hpux* | solaris* | cygwin* | mingw*)
++          *-gnu* | freebsd* | netbsd* | openbsd* | bitrig* \
++          | gnu* | *-musl* | midnightbsd* \
++          | hpux* | solaris* | cygwin* | mingw* | msys* )
+             ac_cv_func_malloc_0_nonnull="guessing yes" ;;
+           # If we don't know, obey --enable-cross-guesses.
+           *) ac_cv_func_malloc_0_nonnull="$gl_cross_guess_normal" ;;
+         esac
+        ])
+     ])
+-  case "$ac_cv_func_malloc_0_nonnull" in
+-    *yes)
+-      $1
+-      ;;
+-    *)
+-      $2
+-      ;;
+-  esac
++  AS_CASE([$ac_cv_func_malloc_0_nonnull], [*yes], [$1], [$2])
+ ])# _AC_FUNC_MALLOC_IF
+ 
+ # gl_FUNC_MALLOC_GNU
+ # ------------------
+-# Test whether 'malloc (0)' is handled like in GNU libc, and replace malloc if
+-# it is not.
++# Replace malloc if it is not compatible with GNU libc.
+ AC_DEFUN([gl_FUNC_MALLOC_GNU],
+ [
+   AC_REQUIRE([gl_STDLIB_H_DEFAULTS])
+-  dnl _AC_FUNC_MALLOC_IF is defined in Autoconf.
+-  _AC_FUNC_MALLOC_IF(
+-    [AC_DEFINE([HAVE_MALLOC_GNU], [1],
+-               [Define to 1 if your system has a GNU libc compatible 'malloc'
+-                function, and to 0 otherwise.])],
+-    [AC_DEFINE([HAVE_MALLOC_GNU], [0])
+-     REPLACE_MALLOC=1
++  AC_REQUIRE([gl_FUNC_MALLOC_POSIX])
++  if test $REPLACE_MALLOC = 0; then
++    _AC_FUNC_MALLOC_IF([], [REPLACE_MALLOC=1])
++  fi
++])
++
++# gl_FUNC_MALLOC_PTRDIFF
++# ----------------------
++# Test whether malloc (N) reliably fails when N exceeds PTRDIFF_MAX,
++# and replace malloc otherwise.
++AC_DEFUN([gl_FUNC_MALLOC_PTRDIFF],
++[
++  AC_REQUIRE([gl_STDLIB_H_DEFAULTS])
++  AC_REQUIRE([gl_CHECK_MALLOC_PTRDIFF])
++  test "$gl_cv_malloc_ptrdiff" = yes || REPLACE_MALLOC=1
++])
++
++# Test whether malloc, realloc, calloc refuse to create objects
++# larger than what can be expressed in ptrdiff_t.
++# Set gl_cv_func_malloc_gnu to yes or no accordingly.
++AC_DEFUN([gl_CHECK_MALLOC_PTRDIFF],
++[
++  AC_CACHE_CHECK([whether malloc is ptrdiff_t safe],
++    [gl_cv_malloc_ptrdiff],
++    [AC_COMPILE_IFELSE(
++       [AC_LANG_PROGRAM(
++          [[#include <stdint.h>
++          ]],
++          [[/* 64-bit ptrdiff_t is so wide that no practical platform
++               can exceed it.  */
++            #define WIDE_PTRDIFF (PTRDIFF_MAX >> 31 >> 31 != 0)
++
++            /* On rare machines where size_t fits in ptrdiff_t there
++               is no problem.  */
++            #define NARROW_SIZE (SIZE_MAX <= PTRDIFF_MAX)
++
++            /* glibc 2.30 and later malloc refuses to exceed ptrdiff_t
++               bounds even on 32-bit platforms.  We don't know which
++               non-glibc systems are safe.  */
++            #define KNOWN_SAFE (2 < __GLIBC__ + (30 <= __GLIBC_MINOR__))
++
++            #if WIDE_PTRDIFF || NARROW_SIZE || KNOWN_SAFE
++              return 0;
++            #else
++              #error "malloc might not be ptrdiff_t safe"
++              syntax error
++            #endif
++          ]])],
++       [gl_cv_malloc_ptrdiff=yes],
++       [gl_cv_malloc_ptrdiff=no])
+     ])
+ ])
+ 
+ # gl_FUNC_MALLOC_POSIX
+ # --------------------
+ # Test whether 'malloc' is POSIX compliant (sets errno to ENOMEM when it
+-# fails), and replace malloc if it is not.
++# fails, and doesn't mess up with ptrdiff_t overflow), and replace
++# malloc if it is not.
+ AC_DEFUN([gl_FUNC_MALLOC_POSIX],
+ [
+   AC_REQUIRE([gl_STDLIB_H_DEFAULTS])
++  AC_REQUIRE([gl_FUNC_MALLOC_PTRDIFF])
+   AC_REQUIRE([gl_CHECK_MALLOC_POSIX])
+-  if test $gl_cv_func_malloc_posix = yes; then
++  if test "$gl_cv_func_malloc_posix" = yes; then
+     AC_DEFINE([HAVE_MALLOC_POSIX], [1],
+-      [Define if the 'malloc' function is POSIX compliant.])
++      [Define if malloc, realloc, and calloc set errno on allocation failure.])
+   else
+     REPLACE_MALLOC=1
+   fi
+ ])
+ 
+-# Test whether malloc, realloc, calloc are POSIX compliant,
++# Test whether malloc, realloc, calloc set errno to ENOMEM on failure.
+ # Set gl_cv_func_malloc_posix to yes or no accordingly.
+ AC_DEFUN([gl_CHECK_MALLOC_POSIX],
+ [
+-  AC_CACHE_CHECK([whether malloc, realloc, calloc are POSIX compliant],
++  AC_REQUIRE([AC_CANONICAL_HOST])
++  AC_CACHE_CHECK([whether malloc, realloc, calloc set errno on failure],
+     [gl_cv_func_malloc_posix],
+     [
+       dnl It is too dangerous to try to allocate a large amount of memory:
+       dnl some systems go to their knees when you do that. So assume that
+-      dnl all Unix implementations of the function are POSIX compliant.
+-      AC_COMPILE_IFELSE(
+-        [AC_LANG_PROGRAM(
+-           [[]],
+-           [[#if defined _WIN32 && ! defined __CYGWIN__
+-             choke me
+-             #endif
+-            ]])],
+-        [gl_cv_func_malloc_posix=yes],
+-        [gl_cv_func_malloc_posix=no])
++      dnl all Unix implementations of the function set errno on failure,
++      dnl except on those platforms where we have seen 'test-malloc-gnu',
++      dnl 'test-realloc-gnu', 'test-calloc-gnu' fail.
++      case "$host_os" in
++        mingw*)
++          gl_cv_func_malloc_posix=no ;;
++        irix* | solaris*)
++          dnl On IRIX 6.5, the three functions return NULL with errno unset
++          dnl when the argument is larger than PTRDIFF_MAX.
++          dnl On Solaris 11.3, the three functions return NULL with errno set
++          dnl to EAGAIN, not ENOMEM, when the argument is larger than
++          dnl PTRDIFF_MAX.
++          dnl Here is a test program:
++m4_divert_push([KILL])
++#include <errno.h>
++#include <stdio.h>
++#include <stdlib.h>
++#define ptrdiff_t long
++#ifndef PTRDIFF_MAX
++# define PTRDIFF_MAX ((ptrdiff_t) ((1UL << (8 * sizeof (ptrdiff_t) - 1)) - 1))
++#endif
++
++int main ()
++{
++  void *p;
++
++  fprintf (stderr, "PTRDIFF_MAX = %lu\n", (unsigned long) PTRDIFF_MAX);
++
++  errno = 0;
++  p = malloc ((unsigned long) PTRDIFF_MAX + 1);
++  fprintf (stderr, "p=%p errno=%d\n", p, errno);
++
++  errno = 0;
++  p = calloc (PTRDIFF_MAX / 2 + 1, 2);
++  fprintf (stderr, "p=%p errno=%d\n", p, errno);
++
++  errno = 0;
++  p = realloc (NULL, (unsigned long) PTRDIFF_MAX + 1);
++  fprintf (stderr, "p=%p errno=%d\n", p, errno);
++
++  return 0;
++}
++m4_divert_pop([KILL])
++          gl_cv_func_malloc_posix=no ;;
++        *)
++          gl_cv_func_malloc_posix=yes ;;
++      esac
+     ])
+ ])
+--- a/gnulib/m4/mbslen.m4
++++ b/gnulib/m4/mbslen.m4
+@@ -1,4 +1,4 @@
+-# mbslen.m4 serial 2
++# mbslen.m4 serial 3
+ dnl Copyright (C) 2010-2021 Free Software Foundation, Inc.
+ dnl This file is free software; the Free Software Foundation
+ dnl gives unlimited permission to copy and/or distribute it,
+@@ -6,7 +6,7 @@ dnl with or without modifications, as lo
+ 
+ AC_DEFUN([gl_FUNC_MBSLEN],
+ [
+-  AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
++  AC_REQUIRE([gl_STRING_H_DEFAULTS])
+   AC_CHECK_FUNCS_ONCE([mbslen])
+   if test $ac_cv_func_mbslen = yes; then
+     HAVE_MBSLEN=1
+--- a/gnulib/m4/memchr.m4
++++ b/gnulib/m4/memchr.m4
+@@ -1,4 +1,4 @@
+-# memchr.m4 serial 17
++# memchr.m4 serial 18
+ dnl Copyright (C) 2002-2004, 2009-2021 Free Software Foundation, Inc.
+ dnl This file is free software; the Free Software Foundation
+ dnl gives unlimited permission to copy and/or distribute it,
+@@ -13,7 +13,7 @@ AC_DEFUN_ONCE([gl_FUNC_MEMCHR],
+   AC_CHECK_HEADERS_ONCE([sys/mman.h])
+   AC_CHECK_FUNCS_ONCE([mprotect])
+ 
+-  AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
++  AC_REQUIRE([gl_STRING_H_DEFAULTS])
+   # Detect platform-specific bugs in some versions of glibc:
+   # memchr should not dereference anything with length 0
+   #   https://bugzilla.redhat.com/show_bug.cgi?id=499689
+--- a/gnulib/m4/mempcpy.m4
++++ b/gnulib/m4/mempcpy.m4
+@@ -1,4 +1,4 @@
+-# mempcpy.m4 serial 11
++# mempcpy.m4 serial 12
+ dnl Copyright (C) 2003-2004, 2006-2007, 2009-2021 Free Software Foundation,
+ dnl Inc.
+ dnl This file is free software; the Free Software Foundation
+@@ -13,7 +13,7 @@ AC_DEFUN([gl_FUNC_MEMPCPY],
+   dnl The mempcpy() declaration in lib/string.in.h uses 'restrict'.
+   AC_REQUIRE([AC_C_RESTRICT])
+ 
+-  AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
++  AC_REQUIRE([gl_STRING_H_DEFAULTS])
+   AC_CHECK_FUNCS([mempcpy])
+   if test $ac_cv_func_mempcpy = no; then
+     HAVE_MEMPCPY=0
+--- a/gnulib/m4/memrchr.m4
++++ b/gnulib/m4/memrchr.m4
+@@ -1,4 +1,4 @@
+-# memrchr.m4 serial 10
++# memrchr.m4 serial 11
+ dnl Copyright (C) 2002-2003, 2005-2007, 2009-2021 Free Software Foundation,
+ dnl Inc.
+ dnl This file is free software; the Free Software Foundation
+@@ -10,7 +10,7 @@ AC_DEFUN([gl_FUNC_MEMRCHR],
+   dnl Persuade glibc <string.h> to declare memrchr().
+   AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS])
+ 
+-  AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
++  AC_REQUIRE([gl_STRING_H_DEFAULTS])
+   AC_CHECK_DECLS_ONCE([memrchr])
+   if test $ac_cv_have_decl_memrchr = no; then
+     HAVE_DECL_MEMRCHR=0
+--- /dev/null
++++ b/gnulib/m4/minmax.m4
+@@ -0,0 +1,44 @@
++# minmax.m4 serial 4
++dnl Copyright (C) 2005, 2009-2021 Free Software Foundation, Inc.
++dnl This file is free software; the Free Software Foundation
++dnl gives unlimited permission to copy and/or distribute it,
++dnl with or without modifications, as long as this notice is preserved.
++
++AC_PREREQ([2.53])
++
++AC_DEFUN([gl_MINMAX],
++[
++  AC_REQUIRE([gl_PREREQ_MINMAX])
++])
++
++# Prerequisites of lib/minmax.h.
++AC_DEFUN([gl_PREREQ_MINMAX],
++[
++  gl_MINMAX_IN_HEADER([limits.h])
++  gl_MINMAX_IN_HEADER([sys/param.h])
++])
++
++dnl gl_MINMAX_IN_HEADER(HEADER)
++dnl The parameter has to be a literal header name; it cannot be macro,
++dnl nor a shell variable. (Because autoheader collects only AC_DEFINE
++dnl invocations with a literal macro name.)
++AC_DEFUN([gl_MINMAX_IN_HEADER],
++[
++  m4_pushdef([header], AS_TR_SH([$1]))
++  m4_pushdef([HEADER], AS_TR_CPP([$1]))
++  AC_CACHE_CHECK([whether <$1> defines MIN and MAX],
++    [gl_cv_minmax_in_]header,
++    [AC_COMPILE_IFELSE(
++       [AC_LANG_PROGRAM(
++          [[#include <$1>
++            int x = MIN (42, 17);]],
++          [[]])],
++       [gl_cv_minmax_in_]header[=yes],
++       [gl_cv_minmax_in_]header[=no])])
++  if test $gl_cv_minmax_in_[]header = yes; then
++    AC_DEFINE([HAVE_MINMAX_IN_]HEADER, 1,
++      [Define to 1 if <$1> defines the MIN and MAX macros.])
++  fi
++  m4_popdef([HEADER])
++  m4_popdef([header])
++])
+--- a/gnulib/m4/printf.m4
++++ b/gnulib/m4/printf.m4
+@@ -1,4 +1,4 @@
+-# printf.m4 serial 72
++# printf.m4 serial 73
+ dnl Copyright (C) 2003, 2007-2021 Free Software Foundation, Inc.
+ dnl This file is free software; the Free Software Foundation
+ dnl gives unlimited permission to copy and/or distribute it,
+@@ -537,7 +537,7 @@ int main ()
+           && strcmp (buf, "-0X6.488P-1 33") != 0
+           && strcmp (buf, "-0XC.91P-2 33") != 0))
+     result |= 2;
+-  /* This catches a FreeBSD 6.1 bug: it doesn't round.  */
++  /* This catches a FreeBSD 13.0 bug: it doesn't round.  */
+   if (sprintf (buf, "%.2a %d", 1.51, 33, 44, 55) < 0
+       || (strcmp (buf, "0x1.83p+0 33") != 0
+           && strcmp (buf, "0x3.05p-1 33") != 0
+@@ -1690,6 +1690,7 @@ dnl
+ dnl                                  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20
+ dnl   glibc 2.5                      .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
+ dnl   glibc 2.3.6                    .  .  .  .  #  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
++dnl   FreeBSD 13.0                   .  .  .  .  #  .  .  .  .  .  .  .  .  #  .  .  .  .  .  .
+ dnl   FreeBSD 5.4, 6.1               .  .  .  .  #  .  .  .  .  .  .  #  .  #  .  .  .  .  .  .
+ dnl   Mac OS X 10.13.5               .  .  .  #  #  .  #  .  .  .  .  .  .  .  .  .  .  #  .  .
+ dnl   Mac OS X 10.5.8                .  .  .  #  #  .  .  .  .  .  .  #  .  .  .  .  .  .  .  .
+--- /dev/null
++++ b/gnulib/m4/realloc.m4
+@@ -0,0 +1,63 @@
++# realloc.m4 serial 24
++dnl Copyright (C) 2007, 2009-2021 Free Software Foundation, Inc.
++dnl This file is free software; the Free Software Foundation
++dnl gives unlimited permission to copy and/or distribute it,
++dnl with or without modifications, as long as this notice is preserved.
++
++# This is adapted with modifications from upstream Autoconf here:
++# https://git.savannah.gnu.org/cgit/autoconf.git/tree/lib/autoconf/functions.m4?id=v2.70#n1455
++AC_DEFUN([_AC_FUNC_REALLOC_IF],
++[
++  AC_REQUIRE([AC_CANONICAL_HOST])dnl for cross-compiles
++  AC_CACHE_CHECK([whether realloc (0, 0) returns nonnull],
++    [ac_cv_func_realloc_0_nonnull],
++    [AC_RUN_IFELSE(
++       [AC_LANG_PROGRAM(
++          [[#include <stdlib.h>
++          ]],
++          [[void *p = realloc (0, 0);
++            int result = !p;
++            free (p);
++            return result;]])
++       ],
++       [ac_cv_func_realloc_0_nonnull=yes],
++       [ac_cv_func_realloc_0_nonnull=no],
++       [case "$host_os" in
++          # Guess yes on platforms where we know the result.
++          *-gnu* | freebsd* | netbsd* | openbsd* | bitrig* \
++          | gnu* | *-musl* | midnightbsd* \
++          | hpux* | solaris* | cygwin* | mingw* | msys* )
++            ac_cv_func_realloc_0_nonnull="guessing yes" ;;
++          # If we don't know, obey --enable-cross-guesses.
++          *) ac_cv_func_realloc_0_nonnull="$gl_cross_guess_normal" ;;
++        esac
++       ])
++    ])
++  AS_CASE([$ac_cv_func_realloc_0_nonnull], [*yes], [$1], [$2])
++])# AC_FUNC_REALLOC
++
++# gl_FUNC_REALLOC_GNU
++# -------------------
++# Replace realloc if it is not compatible with GNU libc.
++AC_DEFUN([gl_FUNC_REALLOC_GNU],
++[
++  AC_REQUIRE([gl_STDLIB_H_DEFAULTS])
++  AC_REQUIRE([gl_FUNC_REALLOC_POSIX])
++  if test $REPLACE_REALLOC = 0; then
++    _AC_FUNC_REALLOC_IF([], [REPLACE_REALLOC=1])
++  fi
++])# gl_FUNC_REALLOC_GNU
++
++# gl_FUNC_REALLOC_POSIX
++# ---------------------
++# Test whether 'realloc' is POSIX compliant (sets errno to ENOMEM when it
++# fails, and doesn't mess up with ptrdiff_t overflow),
++# and replace realloc if it is not.
++AC_DEFUN([gl_FUNC_REALLOC_POSIX],
++[
++  AC_REQUIRE([gl_STDLIB_H_DEFAULTS])
++  AC_REQUIRE([gl_FUNC_MALLOC_POSIX])
++  if test $REPLACE_MALLOC = 1; then
++    REPLACE_REALLOC=1
++  fi
++])
+--- /dev/null
++++ b/gnulib/m4/reallocarray.m4
+@@ -0,0 +1,23 @@
++# reallocarray.m4 serial 3
++dnl Copyright (C) 2017-2021 Free Software Foundation, Inc.
++dnl This file is free software; the Free Software Foundation
++dnl gives unlimited permission to copy and/or distribute it,
++dnl with or without modifications, as long as this notice is preserved.
++
++AC_DEFUN([gl_FUNC_REALLOCARRAY],
++[
++  dnl Persuade glibc <stdlib.h> to declare reallocarray.
++  AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS])
++
++  AC_REQUIRE([gl_STDLIB_H_DEFAULTS])
++  AC_REQUIRE([gl_CHECK_MALLOC_PTRDIFF])
++  AC_CHECK_FUNCS([reallocarray])
++  if test "$ac_cv_func_reallocarray" = no; then
++    HAVE_REALLOCARRAY=0
++  elif test "$gl_cv_malloc_ptrdiff" = no; then
++    REPLACE_REALLOCARRAY=1
++  fi
++])
++
++# Prerequisites of lib/reallocarray.c.
++AC_DEFUN([gl_PREREQ_REALLOCARRAY], [:])
+--- a/gnulib/m4/stat.m4
++++ b/gnulib/m4/stat.m4
+@@ -1,4 +1,4 @@
+-# serial 17
++# serial 18
+ 
+ # Copyright (C) 2009-2021 Free Software Foundation, Inc.
+ #
+@@ -69,7 +69,7 @@ AC_DEFUN([gl_FUNC_STAT],
+ 
+ # Prerequisites of lib/stat.c and lib/stat-w32.c.
+ AC_DEFUN([gl_PREREQ_STAT], [
+-  AC_REQUIRE([gl_HEADER_SYS_STAT_H])
++  AC_REQUIRE([gl_SYS_STAT_H])
+   AC_REQUIRE([gl_PREREQ_STAT_W32])
+   :
+ ])
+--- a/gnulib/m4/stddef_h.m4
++++ b/gnulib/m4/stddef_h.m4
+@@ -1,4 +1,4 @@
+-# stddef_h.m4 serial 9
++# stddef_h.m4 serial 11
+ dnl Copyright (C) 2009-2021 Free Software Foundation, Inc.
+ dnl This file is free software; the Free Software Foundation
+ dnl gives unlimited permission to copy and/or distribute it,
+@@ -6,7 +6,7 @@ dnl with or without modifications, as lo
+ 
+ dnl A placeholder for <stddef.h>, for platforms that have issues.
+ 
+-AC_DEFUN([gl_STDDEF_H],
++AC_DEFUN_ONCE([gl_STDDEF_H],
+ [
+   AC_REQUIRE([gl_STDDEF_H_DEFAULTS])
+   AC_REQUIRE([gt_TYPE_WCHAR_T])
+@@ -68,13 +68,28 @@ AC_DEFUN([gl_STDDEF_H],
+   fi
+ ])
+ 
++# gl_STDDEF_MODULE_INDICATOR([modulename])
++# sets the shell variable that indicates the presence of the given module
++# to a C preprocessor expression that will evaluate to 1.
++# This macro invocation must not occur in macros that are AC_REQUIREd.
+ AC_DEFUN([gl_STDDEF_MODULE_INDICATOR],
+ [
+-  dnl Use AC_REQUIRE here, so that the default settings are expanded once only.
+-  AC_REQUIRE([gl_STDDEF_H_DEFAULTS])
++  dnl Ensure to expand the default settings once only.
++  gl_STDDEF_H_REQUIRE_DEFAULTS
+   gl_MODULE_INDICATOR_SET_VARIABLE([$1])
+ ])
+ 
++# Initializes the default values for AC_SUBSTed shell variables.
++# This macro must not be AC_REQUIREd.  It must only be invoked, and only
++# outside of macros or in macros that are not AC_REQUIREd.
++AC_DEFUN([gl_STDDEF_H_REQUIRE_DEFAULTS],
++[
++  m4_defun(GL_MODULE_INDICATOR_PREFIX[_STDDEF_H_MODULE_INDICATOR_DEFAULTS], [
++  ])
++  m4_require(GL_MODULE_INDICATOR_PREFIX[_STDDEF_H_MODULE_INDICATOR_DEFAULTS])
++  AC_REQUIRE([gl_STDDEF_H_DEFAULTS])
++])
++
+ AC_DEFUN([gl_STDDEF_H_DEFAULTS],
+ [
+   dnl Assume proper GNU behavior unless another module says otherwise.
+--- a/gnulib/m4/stdint.m4
++++ b/gnulib/m4/stdint.m4
+@@ -1,4 +1,4 @@
+-# stdint.m4 serial 58
++# stdint.m4 serial 60
+ dnl Copyright (C) 2001-2021 Free Software Foundation, Inc.
+ dnl This file is free software; the Free Software Foundation
+ dnl gives unlimited permission to copy and/or distribute it,
+@@ -170,7 +170,7 @@ struct s {
+       PTRDIFF_MIN == TYPE_MINIMUM (ptrdiff_t)
+       && PTRDIFF_MAX == TYPE_MAXIMUM (ptrdiff_t)
+       ? 1 : -1;
+-  /* Detect bug in FreeBSD 6.0 / ia64.  */
++  /* Detect bug in FreeBSD 6.0/ia64 and FreeBSD 13.0/arm64.  */
+   int check_SIG_ATOMIC:
+       SIG_ATOMIC_MIN == TYPE_MINIMUM (sig_atomic_t)
+       && SIG_ATOMIC_MAX == TYPE_MAXIMUM (sig_atomic_t)
+@@ -527,7 +527,7 @@ AC_DEFUN([gl_STDINT_TYPE_PROPERTIES],
+   dnl requirement that wint_t is "unchanged by default argument promotions".
+   dnl In this case gnulib's <wchar.h> and <wctype.h> override wint_t.
+   dnl Set the variable BITSIZEOF_WINT_T accordingly.
+-  if test $GNULIB_OVERRIDES_WINT_T = 1; then
++  if test $GNULIBHEADERS_OVERRIDE_WINT_T = 1; then
+     BITSIZEOF_WINT_T=32
+   fi
+ ])
+--- a/gnulib/m4/stdio_h.m4
++++ b/gnulib/m4/stdio_h.m4
+@@ -1,11 +1,12 @@
+-# stdio_h.m4 serial 52
++# stdio_h.m4 serial 56
+ dnl Copyright (C) 2007-2021 Free Software Foundation, Inc.
+ dnl This file is free software; the Free Software Foundation
+ dnl gives unlimited permission to copy and/or distribute it,
+ dnl with or without modifications, as long as this notice is preserved.
+ 
+-AC_DEFUN([gl_STDIO_H],
++AC_DEFUN_ONCE([gl_STDIO_H],
+ [
++  AC_REQUIRE([gl_STDIO_H_DEFAULTS])
+   AH_VERBATIM([MINGW_ANSI_STDIO],
+ [/* Use GNU style printf and scanf.  */
+ #ifndef __USE_MINGW_ANSI_STDIO
+@@ -13,7 +14,6 @@ AC_DEFUN([gl_STDIO_H],
+ #endif
+ ])
+   AC_DEFINE([__USE_MINGW_ANSI_STDIO])
+-  AC_REQUIRE([gl_STDIO_H_DEFAULTS])
+   gl_NEXT_HEADERS([stdio.h])
+ 
+   dnl Determine whether __USE_MINGW_ANSI_STDIO makes printf and
+@@ -40,17 +40,6 @@ AC_DEFUN([gl_STDIO_H],
+        attribute "__gnu_printf__" instead of "__printf__"])
+   fi
+ 
+-  dnl No need to create extra modules for these functions. Everyone who uses
+-  dnl <stdio.h> likely needs them.
+-  GNULIB_FSCANF=1
+-  gl_MODULE_INDICATOR([fscanf])
+-  GNULIB_SCANF=1
+-  gl_MODULE_INDICATOR([scanf])
+-  GNULIB_FGETC=1
+-  GNULIB_GETC=1
+-  GNULIB_GETCHAR=1
+-  GNULIB_FGETS=1
+-  GNULIB_FREAD=1
+   dnl This ifdef is necessary to avoid an error "missing file lib/stdio-read.c"
+   dnl "expected source file, required through AC_LIBSOURCES, not found". It is
+   dnl also an optimization, to avoid performing a configure check whose result
+@@ -64,18 +53,6 @@ AC_DEFUN([gl_STDIO_H],
+     fi
+   ])
+ 
+-  dnl No need to create extra modules for these functions. Everyone who uses
+-  dnl <stdio.h> likely needs them.
+-  GNULIB_FPRINTF=1
+-  GNULIB_PRINTF=1
+-  GNULIB_VFPRINTF=1
+-  GNULIB_VPRINTF=1
+-  GNULIB_FPUTC=1
+-  GNULIB_PUTC=1
+-  GNULIB_PUTCHAR=1
+-  GNULIB_FPUTS=1
+-  GNULIB_PUTS=1
+-  GNULIB_FWRITE=1
+   dnl This ifdef is necessary to avoid an error "missing file lib/stdio-write.c"
+   dnl "expected source file, required through AC_LIBSOURCES, not found". It is
+   dnl also an optimization, to avoid performing a configure check whose result
+@@ -116,77 +93,92 @@ AC_DEFUN([gl_STDIO_H],
+   fi
+ ])
+ 
++# gl_STDIO_MODULE_INDICATOR([modulename])
++# sets the shell variable that indicates the presence of the given module
++# to a C preprocessor expression that will evaluate to 1.
++# This macro invocation must not occur in macros that are AC_REQUIREd.
+ AC_DEFUN([gl_STDIO_MODULE_INDICATOR],
+ [
+-  dnl Use AC_REQUIRE here, so that the default settings are expanded once only.
+-  AC_REQUIRE([gl_STDIO_H_DEFAULTS])
++  dnl Ensure to expand the default settings once only.
++  gl_STDIO_H_REQUIRE_DEFAULTS
+   gl_MODULE_INDICATOR_SET_VARIABLE([$1])
+   dnl Define it also as a C macro, for the benefit of the unit tests.
+   gl_MODULE_INDICATOR_FOR_TESTS([$1])
+ ])
+ 
++# Initializes the default values for AC_SUBSTed shell variables.
++# This macro must not be AC_REQUIREd.  It must only be invoked, and only
++# outside of macros or in macros that are not AC_REQUIREd.
++AC_DEFUN([gl_STDIO_H_REQUIRE_DEFAULTS],
++[
++  m4_defun(GL_MODULE_INDICATOR_PREFIX[_STDIO_H_MODULE_INDICATOR_DEFAULTS], [
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_DPRINTF])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FCLOSE])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FDOPEN])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FFLUSH])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FGETC])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FGETS])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FOPEN])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FPRINTF])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FPRINTF_POSIX])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FPURGE])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FPUTC])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FPUTS])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FREAD])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FREOPEN])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FSCANF])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FSEEK])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FSEEKO])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FTELL])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FTELLO])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FWRITE])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_GETC])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_GETCHAR])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_GETDELIM])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_GETLINE])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_OBSTACK_PRINTF])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_OBSTACK_PRINTF_POSIX])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_PCLOSE])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_PERROR])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_POPEN])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_PRINTF])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_PRINTF_POSIX])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_PUTC])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_PUTCHAR])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_PUTS])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_REMOVE])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_RENAME])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_RENAMEAT])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_SCANF])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_SNPRINTF])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_SPRINTF_POSIX])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STDIO_H_NONBLOCKING])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STDIO_H_SIGPIPE])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_TMPFILE])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_VASPRINTF])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_VFSCANF])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_VSCANF])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_VDPRINTF])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_VFPRINTF])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_VFPRINTF_POSIX])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_VPRINTF])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_VPRINTF_POSIX])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_VSNPRINTF])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_VSPRINTF_POSIX])
++    dnl Support Microsoft deprecated alias function names by default.
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_FCLOSEALL], [1])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_FDOPEN], [1])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_FILENO], [1])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_GETW], [1])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_PUTW], [1])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_TEMPNAM], [1])
++  ])
++  m4_require(GL_MODULE_INDICATOR_PREFIX[_STDIO_H_MODULE_INDICATOR_DEFAULTS])
++  AC_REQUIRE([gl_STDIO_H_DEFAULTS])
++])
++
+ AC_DEFUN([gl_STDIO_H_DEFAULTS],
+ [
+-  GNULIB_DPRINTF=0;              AC_SUBST([GNULIB_DPRINTF])
+-  GNULIB_FCLOSE=0;               AC_SUBST([GNULIB_FCLOSE])
+-  GNULIB_FDOPEN=0;               AC_SUBST([GNULIB_FDOPEN])
+-  GNULIB_FFLUSH=0;               AC_SUBST([GNULIB_FFLUSH])
+-  GNULIB_FGETC=0;                AC_SUBST([GNULIB_FGETC])
+-  GNULIB_FGETS=0;                AC_SUBST([GNULIB_FGETS])
+-  GNULIB_FOPEN=0;                AC_SUBST([GNULIB_FOPEN])
+-  GNULIB_FPRINTF=0;              AC_SUBST([GNULIB_FPRINTF])
+-  GNULIB_FPRINTF_POSIX=0;        AC_SUBST([GNULIB_FPRINTF_POSIX])
+-  GNULIB_FPURGE=0;               AC_SUBST([GNULIB_FPURGE])
+-  GNULIB_FPUTC=0;                AC_SUBST([GNULIB_FPUTC])
+-  GNULIB_FPUTS=0;                AC_SUBST([GNULIB_FPUTS])
+-  GNULIB_FREAD=0;                AC_SUBST([GNULIB_FREAD])
+-  GNULIB_FREOPEN=0;              AC_SUBST([GNULIB_FREOPEN])
+-  GNULIB_FSCANF=0;               AC_SUBST([GNULIB_FSCANF])
+-  GNULIB_FSEEK=0;                AC_SUBST([GNULIB_FSEEK])
+-  GNULIB_FSEEKO=0;               AC_SUBST([GNULIB_FSEEKO])
+-  GNULIB_FTELL=0;                AC_SUBST([GNULIB_FTELL])
+-  GNULIB_FTELLO=0;               AC_SUBST([GNULIB_FTELLO])
+-  GNULIB_FWRITE=0;               AC_SUBST([GNULIB_FWRITE])
+-  GNULIB_GETC=0;                 AC_SUBST([GNULIB_GETC])
+-  GNULIB_GETCHAR=0;              AC_SUBST([GNULIB_GETCHAR])
+-  GNULIB_GETDELIM=0;             AC_SUBST([GNULIB_GETDELIM])
+-  GNULIB_GETLINE=0;              AC_SUBST([GNULIB_GETLINE])
+-  GNULIB_OBSTACK_PRINTF=0;       AC_SUBST([GNULIB_OBSTACK_PRINTF])
+-  GNULIB_OBSTACK_PRINTF_POSIX=0; AC_SUBST([GNULIB_OBSTACK_PRINTF_POSIX])
+-  GNULIB_PCLOSE=0;               AC_SUBST([GNULIB_PCLOSE])
+-  GNULIB_PERROR=0;               AC_SUBST([GNULIB_PERROR])
+-  GNULIB_POPEN=0;                AC_SUBST([GNULIB_POPEN])
+-  GNULIB_PRINTF=0;               AC_SUBST([GNULIB_PRINTF])
+-  GNULIB_PRINTF_POSIX=0;         AC_SUBST([GNULIB_PRINTF_POSIX])
+-  GNULIB_PUTC=0;                 AC_SUBST([GNULIB_PUTC])
+-  GNULIB_PUTCHAR=0;              AC_SUBST([GNULIB_PUTCHAR])
+-  GNULIB_PUTS=0;                 AC_SUBST([GNULIB_PUTS])
+-  GNULIB_REMOVE=0;               AC_SUBST([GNULIB_REMOVE])
+-  GNULIB_RENAME=0;               AC_SUBST([GNULIB_RENAME])
+-  GNULIB_RENAMEAT=0;             AC_SUBST([GNULIB_RENAMEAT])
+-  GNULIB_SCANF=0;                AC_SUBST([GNULIB_SCANF])
+-  GNULIB_SNPRINTF=0;             AC_SUBST([GNULIB_SNPRINTF])
+-  GNULIB_SPRINTF_POSIX=0;        AC_SUBST([GNULIB_SPRINTF_POSIX])
+-  GNULIB_STDIO_H_NONBLOCKING=0;  AC_SUBST([GNULIB_STDIO_H_NONBLOCKING])
+-  GNULIB_STDIO_H_SIGPIPE=0;      AC_SUBST([GNULIB_STDIO_H_SIGPIPE])
+-  GNULIB_TMPFILE=0;              AC_SUBST([GNULIB_TMPFILE])
+-  GNULIB_VASPRINTF=0;            AC_SUBST([GNULIB_VASPRINTF])
+-  GNULIB_VFSCANF=0;              AC_SUBST([GNULIB_VFSCANF])
+-  GNULIB_VSCANF=0;               AC_SUBST([GNULIB_VSCANF])
+-  GNULIB_VDPRINTF=0;             AC_SUBST([GNULIB_VDPRINTF])
+-  GNULIB_VFPRINTF=0;             AC_SUBST([GNULIB_VFPRINTF])
+-  GNULIB_VFPRINTF_POSIX=0;       AC_SUBST([GNULIB_VFPRINTF_POSIX])
+-  GNULIB_VPRINTF=0;              AC_SUBST([GNULIB_VPRINTF])
+-  GNULIB_VPRINTF_POSIX=0;        AC_SUBST([GNULIB_VPRINTF_POSIX])
+-  GNULIB_VSNPRINTF=0;            AC_SUBST([GNULIB_VSNPRINTF])
+-  GNULIB_VSPRINTF_POSIX=0;       AC_SUBST([GNULIB_VSPRINTF_POSIX])
+-  dnl Support Microsoft deprecated alias function names by default.
+-  GNULIB_MDA_FCLOSEALL=1;        AC_SUBST([GNULIB_MDA_FCLOSEALL])
+-  GNULIB_MDA_FDOPEN=1;           AC_SUBST([GNULIB_MDA_FDOPEN])
+-  GNULIB_MDA_FILENO=1;           AC_SUBST([GNULIB_MDA_FILENO])
+-  GNULIB_MDA_GETW=1;             AC_SUBST([GNULIB_MDA_GETW])
+-  GNULIB_MDA_PUTW=1;             AC_SUBST([GNULIB_MDA_PUTW])
+-  GNULIB_MDA_TEMPNAM=1;          AC_SUBST([GNULIB_MDA_TEMPNAM])
+   dnl Assume proper GNU behavior unless another module says otherwise.
+   HAVE_DECL_FCLOSEALL=1;         AC_SUBST([HAVE_DECL_FCLOSEALL])
+   HAVE_DECL_FPURGE=1;            AC_SUBST([HAVE_DECL_FPURGE])
+--- a/gnulib/m4/stdlib_h.m4
++++ b/gnulib/m4/stdlib_h.m4
+@@ -1,10 +1,10 @@
+-# stdlib_h.m4 serial 55
++# stdlib_h.m4 serial 63
+ dnl Copyright (C) 2007-2021 Free Software Foundation, Inc.
+ dnl This file is free software; the Free Software Foundation
+ dnl gives unlimited permission to copy and/or distribute it,
+ dnl with or without modifications, as long as this notice is preserved.
+ 
+-AC_DEFUN([gl_STDLIB_H],
++AC_DEFUN_ONCE([gl_STDLIB_H],
+ [
+   AC_REQUIRE([gl_STDLIB_H_DEFAULTS])
+   gl_NEXT_HEADERS([stdlib.h])
+@@ -28,7 +28,7 @@ AC_DEFUN([gl_STDLIB_H],
+     posix_memalign posix_openpt ptsname ptsname_r qsort_r
+     random random_r reallocarray realpath rpmatch secure_getenv setenv
+     setstate setstate_r srandom srandom_r
+-    strtod strtold strtoll strtoull unlockpt unsetenv])
++    strtod strtol strtold strtoll strtoul strtoull unlockpt unsetenv])
+ 
+   AC_REQUIRE([AC_C_RESTRICT])
+ 
+@@ -46,61 +46,78 @@ AC_DEFUN([gl_STDLIB_H],
+   fi
+ ])
+ 
++# gl_STDLIB_MODULE_INDICATOR([modulename])
++# sets the shell variable that indicates the presence of the given module
++# to a C preprocessor expression that will evaluate to 1.
++# This macro invocation must not occur in macros that are AC_REQUIREd.
+ AC_DEFUN([gl_STDLIB_MODULE_INDICATOR],
+ [
+-  dnl Use AC_REQUIRE here, so that the default settings are expanded once only.
+-  AC_REQUIRE([gl_STDLIB_H_DEFAULTS])
++  dnl Ensure to expand the default settings once only.
++  gl_STDLIB_H_REQUIRE_DEFAULTS
+   gl_MODULE_INDICATOR_SET_VARIABLE([$1])
+   dnl Define it also as a C macro, for the benefit of the unit tests.
+   gl_MODULE_INDICATOR_FOR_TESTS([$1])
+ ])
+ 
++# Initializes the default values for AC_SUBSTed shell variables.
++# This macro must not be AC_REQUIREd.  It must only be invoked, and only
++# outside of macros or in macros that are not AC_REQUIREd.
++AC_DEFUN([gl_STDLIB_H_REQUIRE_DEFAULTS],
++[
++  m4_defun(GL_MODULE_INDICATOR_PREFIX[_STDLIB_H_MODULE_INDICATOR_DEFAULTS], [
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB__EXIT])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ALIGNED_ALLOC])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ATOLL])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_CALLOC_POSIX])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_CANONICALIZE_FILE_NAME])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FREE_POSIX])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_GETLOADAVG])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_GETSUBOPT])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_GRANTPT])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MALLOC_POSIX])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MBTOWC])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MKDTEMP])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MKOSTEMP])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MKOSTEMPS])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MKSTEMP])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MKSTEMPS])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_POSIX_MEMALIGN])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_POSIX_OPENPT])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_PTSNAME])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_PTSNAME_R])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_PUTENV])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_QSORT_R])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_RANDOM])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_RANDOM_R])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_REALLOCARRAY])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_REALLOC_POSIX])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_REALPATH])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_RPMATCH])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_SECURE_GETENV])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_SETENV])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STRTOD])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STRTOL])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STRTOLD])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STRTOLL])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STRTOUL])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STRTOULL])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_SYSTEM_POSIX])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_UNLOCKPT])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_UNSETENV])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WCTOMB])
++    dnl Support Microsoft deprecated alias function names by default.
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_ECVT], [1])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_FCVT], [1])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_GCVT], [1])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_MKTEMP], [1])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_PUTENV], [1])
++  ])
++  m4_require(GL_MODULE_INDICATOR_PREFIX[_STDLIB_H_MODULE_INDICATOR_DEFAULTS])
++  AC_REQUIRE([gl_STDLIB_H_DEFAULTS])
++])
++
+ AC_DEFUN([gl_STDLIB_H_DEFAULTS],
+ [
+-  GNULIB__EXIT=0;         AC_SUBST([GNULIB__EXIT])
+-  GNULIB_ALIGNED_ALLOC=0; AC_SUBST([GNULIB_ALIGNED_ALLOC])
+-  GNULIB_ATOLL=0;         AC_SUBST([GNULIB_ATOLL])
+-  GNULIB_CALLOC_POSIX=0;  AC_SUBST([GNULIB_CALLOC_POSIX])
+-  GNULIB_CANONICALIZE_FILE_NAME=0;  AC_SUBST([GNULIB_CANONICALIZE_FILE_NAME])
+-  GNULIB_FREE_POSIX=0;    AC_SUBST([GNULIB_FREE_POSIX])
+-  GNULIB_GETLOADAVG=0;    AC_SUBST([GNULIB_GETLOADAVG])
+-  GNULIB_GETSUBOPT=0;     AC_SUBST([GNULIB_GETSUBOPT])
+-  GNULIB_GRANTPT=0;       AC_SUBST([GNULIB_GRANTPT])
+-  GNULIB_MALLOC_POSIX=0;  AC_SUBST([GNULIB_MALLOC_POSIX])
+-  GNULIB_MBTOWC=0;        AC_SUBST([GNULIB_MBTOWC])
+-  GNULIB_MKDTEMP=0;       AC_SUBST([GNULIB_MKDTEMP])
+-  GNULIB_MKOSTEMP=0;      AC_SUBST([GNULIB_MKOSTEMP])
+-  GNULIB_MKOSTEMPS=0;     AC_SUBST([GNULIB_MKOSTEMPS])
+-  GNULIB_MKSTEMP=0;       AC_SUBST([GNULIB_MKSTEMP])
+-  GNULIB_MKSTEMPS=0;      AC_SUBST([GNULIB_MKSTEMPS])
+-  GNULIB_POSIX_MEMALIGN=0;AC_SUBST([GNULIB_POSIX_MEMALIGN])
+-  GNULIB_POSIX_OPENPT=0;  AC_SUBST([GNULIB_POSIX_OPENPT])
+-  GNULIB_PTSNAME=0;       AC_SUBST([GNULIB_PTSNAME])
+-  GNULIB_PTSNAME_R=0;     AC_SUBST([GNULIB_PTSNAME_R])
+-  GNULIB_PUTENV=0;        AC_SUBST([GNULIB_PUTENV])
+-  GNULIB_QSORT_R=0;       AC_SUBST([GNULIB_QSORT_R])
+-  GNULIB_RANDOM=0;        AC_SUBST([GNULIB_RANDOM])
+-  GNULIB_RANDOM_R=0;      AC_SUBST([GNULIB_RANDOM_R])
+-  GNULIB_REALLOCARRAY=0;  AC_SUBST([GNULIB_REALLOCARRAY])
+-  GNULIB_REALLOC_POSIX=0; AC_SUBST([GNULIB_REALLOC_POSIX])
+-  GNULIB_REALPATH=0;      AC_SUBST([GNULIB_REALPATH])
+-  GNULIB_RPMATCH=0;       AC_SUBST([GNULIB_RPMATCH])
+-  GNULIB_SECURE_GETENV=0; AC_SUBST([GNULIB_SECURE_GETENV])
+-  GNULIB_SETENV=0;        AC_SUBST([GNULIB_SETENV])
+-  GNULIB_STRTOD=0;        AC_SUBST([GNULIB_STRTOD])
+-  GNULIB_STRTOLD=0;       AC_SUBST([GNULIB_STRTOLD])
+-  GNULIB_STRTOLL=0;       AC_SUBST([GNULIB_STRTOLL])
+-  GNULIB_STRTOULL=0;      AC_SUBST([GNULIB_STRTOULL])
+-  GNULIB_SYSTEM_POSIX=0;  AC_SUBST([GNULIB_SYSTEM_POSIX])
+-  GNULIB_UNLOCKPT=0;      AC_SUBST([GNULIB_UNLOCKPT])
+-  GNULIB_UNSETENV=0;      AC_SUBST([GNULIB_UNSETENV])
+-  GNULIB_WCTOMB=0;        AC_SUBST([GNULIB_WCTOMB])
+-  dnl Support Microsoft deprecated alias function names by default.
+-  GNULIB_MDA_ECVT=1;      AC_SUBST([GNULIB_MDA_ECVT])
+-  GNULIB_MDA_FCVT=1;      AC_SUBST([GNULIB_MDA_FCVT])
+-  GNULIB_MDA_GCVT=1;      AC_SUBST([GNULIB_MDA_GCVT])
+-  GNULIB_MDA_MKTEMP=1;    AC_SUBST([GNULIB_MDA_MKTEMP])
+-  GNULIB_MDA_PUTENV=1;    AC_SUBST([GNULIB_MDA_PUTENV])
+   dnl Assume proper GNU behavior unless another module says otherwise.
+   HAVE__EXIT=1;              AC_SUBST([HAVE__EXIT])
+   HAVE_ALIGNED_ALLOC=1;      AC_SUBST([HAVE_ALIGNED_ALLOC])
+@@ -137,8 +154,10 @@ AC_DEFUN([gl_STDLIB_H_DEFAULTS],
+   HAVE_SETSTATE=1;           AC_SUBST([HAVE_SETSTATE])
+   HAVE_DECL_SETSTATE=1;      AC_SUBST([HAVE_DECL_SETSTATE])
+   HAVE_STRTOD=1;             AC_SUBST([HAVE_STRTOD])
++  HAVE_STRTOL=1;             AC_SUBST([HAVE_STRTOL])
+   HAVE_STRTOLD=1;            AC_SUBST([HAVE_STRTOLD])
+   HAVE_STRTOLL=1;            AC_SUBST([HAVE_STRTOLL])
++  HAVE_STRTOUL=1;            AC_SUBST([HAVE_STRTOUL])
+   HAVE_STRTOULL=1;           AC_SUBST([HAVE_STRTOULL])
+   HAVE_STRUCT_RANDOM_DATA=1; AC_SUBST([HAVE_STRUCT_RANDOM_DATA])
+   HAVE_SYS_LOADAVG_H=0;      AC_SUBST([HAVE_SYS_LOADAVG_H])
+@@ -160,11 +179,16 @@ AC_DEFUN([gl_STDLIB_H_DEFAULTS],
+   REPLACE_RANDOM=0;          AC_SUBST([REPLACE_RANDOM])
+   REPLACE_RANDOM_R=0;        AC_SUBST([REPLACE_RANDOM_R])
+   REPLACE_REALLOC=0;         AC_SUBST([REPLACE_REALLOC])
++  REPLACE_REALLOCARRAY=0;    AC_SUBST([REPLACE_REALLOCARRAY])
+   REPLACE_REALPATH=0;        AC_SUBST([REPLACE_REALPATH])
+   REPLACE_SETENV=0;          AC_SUBST([REPLACE_SETENV])
+   REPLACE_SETSTATE=0;        AC_SUBST([REPLACE_SETSTATE])
+   REPLACE_STRTOD=0;          AC_SUBST([REPLACE_STRTOD])
++  REPLACE_STRTOL=0;          AC_SUBST([REPLACE_STRTOL])
+   REPLACE_STRTOLD=0;         AC_SUBST([REPLACE_STRTOLD])
++  REPLACE_STRTOLL=0;         AC_SUBST([REPLACE_STRTOLL])
++  REPLACE_STRTOUL=0;         AC_SUBST([REPLACE_STRTOUL])
++  REPLACE_STRTOULL=0;        AC_SUBST([REPLACE_STRTOULL])
+   REPLACE_UNSETENV=0;        AC_SUBST([REPLACE_UNSETENV])
+   REPLACE_WCTOMB=0;          AC_SUBST([REPLACE_WCTOMB])
+ ])
+--- a/gnulib/m4/stpcpy.m4
++++ b/gnulib/m4/stpcpy.m4
+@@ -1,4 +1,4 @@
+-# stpcpy.m4 serial 8
++# stpcpy.m4 serial 9
+ dnl Copyright (C) 2002, 2007, 2009-2021 Free Software Foundation, Inc.
+ dnl This file is free software; the Free Software Foundation
+ dnl gives unlimited permission to copy and/or distribute it,
+@@ -12,7 +12,7 @@ AC_DEFUN([gl_FUNC_STPCPY],
+   dnl The stpcpy() declaration in lib/string.in.h uses 'restrict'.
+   AC_REQUIRE([AC_C_RESTRICT])
+ 
+-  AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
++  AC_REQUIRE([gl_STRING_H_DEFAULTS])
+   AC_CHECK_FUNCS([stpcpy])
+   if test $ac_cv_func_stpcpy = no; then
+     HAVE_STPCPY=0
+--- a/gnulib/m4/strcase.m4
++++ b/gnulib/m4/strcase.m4
+@@ -1,4 +1,4 @@
+-# strcase.m4 serial 11
++# strcase.m4 serial 12
+ dnl Copyright (C) 2002, 2005-2021 Free Software Foundation, Inc.
+ dnl This file is free software; the Free Software Foundation
+ dnl gives unlimited permission to copy and/or distribute it,
+@@ -12,7 +12,7 @@ AC_DEFUN([gl_STRCASE],
+ 
+ AC_DEFUN([gl_FUNC_STRCASECMP],
+ [
+-  AC_REQUIRE([gl_HEADER_STRINGS_H_DEFAULTS])
++  AC_REQUIRE([gl_STRINGS_H_DEFAULTS])
+   AC_CHECK_FUNCS([strcasecmp])
+   if test $ac_cv_func_strcasecmp = no; then
+     HAVE_STRCASECMP=0
+@@ -21,7 +21,7 @@ AC_DEFUN([gl_FUNC_STRCASECMP],
+ 
+ AC_DEFUN([gl_FUNC_STRNCASECMP],
+ [
+-  AC_REQUIRE([gl_HEADER_STRINGS_H_DEFAULTS])
++  AC_REQUIRE([gl_STRINGS_H_DEFAULTS])
+   AC_CHECK_FUNCS([strncasecmp])
+   if test $ac_cv_func_strncasecmp = yes; then
+     HAVE_STRNCASECMP=1
+--- a/gnulib/m4/strcasestr.m4
++++ b/gnulib/m4/strcasestr.m4
+@@ -1,4 +1,4 @@
+-# strcasestr.m4 serial 26
++# strcasestr.m4 serial 27
+ dnl Copyright (C) 2005, 2007-2021 Free Software Foundation, Inc.
+ dnl This file is free software; the Free Software Foundation
+ dnl gives unlimited permission to copy and/or distribute it,
+@@ -7,7 +7,7 @@ dnl with or without modifications, as lo
+ dnl Check that strcasestr is present and works.
+ AC_DEFUN([gl_FUNC_STRCASESTR_SIMPLE],
+ [
+-  AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
++  AC_REQUIRE([gl_STRING_H_DEFAULTS])
+ 
+   dnl Persuade glibc <string.h> to declare strcasestr().
+   AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS])
+--- a/gnulib/m4/strdup.m4
++++ b/gnulib/m4/strdup.m4
+@@ -1,4 +1,4 @@
+-# strdup.m4 serial 14
++# strdup.m4 serial 15
+ 
+ dnl Copyright (C) 2002-2021 Free Software Foundation, Inc.
+ 
+@@ -8,7 +8,7 @@ dnl with or without modifications, as lo
+ 
+ AC_DEFUN([gl_FUNC_STRDUP],
+ [
+-  AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
++  AC_REQUIRE([gl_STRING_H_DEFAULTS])
+   AC_CHECK_DECLS_ONCE([strdup])
+   if test $ac_cv_have_decl_strdup = no; then
+     HAVE_DECL_STRDUP=0
+@@ -17,7 +17,7 @@ AC_DEFUN([gl_FUNC_STRDUP],
+ 
+ AC_DEFUN([gl_FUNC_STRDUP_POSIX],
+ [
+-  AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
++  AC_REQUIRE([gl_STRING_H_DEFAULTS])
+   AC_REQUIRE([gl_CHECK_MALLOC_POSIX])
+   if test $gl_cv_func_malloc_posix != yes; then
+     REPLACE_STRDUP=1
+--- a/gnulib/m4/strerror.m4
++++ b/gnulib/m4/strerror.m4
+@@ -1,4 +1,4 @@
+-# strerror.m4 serial 21
++# strerror.m4 serial 22
+ dnl Copyright (C) 2002, 2007-2021 Free Software Foundation, Inc.
+ dnl This file is free software; the Free Software Foundation
+ dnl gives unlimited permission to copy and/or distribute it,
+@@ -6,7 +6,7 @@ dnl with or without modifications, as lo
+ 
+ AC_DEFUN([gl_FUNC_STRERROR],
+ [
+-  AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
++  AC_REQUIRE([gl_STRING_H_DEFAULTS])
+   AC_REQUIRE([gl_HEADER_ERRNO_H])
+   AC_REQUIRE([gl_FUNC_STRERROR_0])
+   AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
+--- a/gnulib/m4/string_h.m4
++++ b/gnulib/m4/string_h.m4
+@@ -5,20 +5,15 @@
+ # gives unlimited permission to copy and/or distribute it,
+ # with or without modifications, as long as this notice is preserved.
+ 
+-# serial 29
++# serial 32
+ 
+ # Written by Paul Eggert.
+ 
+-AC_DEFUN([gl_HEADER_STRING_H],
++AC_DEFUN_ONCE([gl_STRING_H],
+ [
+-  dnl Use AC_REQUIRE here, so that the default behavior below is expanded
+-  dnl once only, before all statements that occur in other macros.
+-  AC_REQUIRE([gl_HEADER_STRING_H_BODY])
+-])
+-
+-AC_DEFUN([gl_HEADER_STRING_H_BODY],
+-[
+-  AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
++  dnl Ensure to expand the default settings once only, before all statements
++  dnl that occur in other macros.
++  AC_REQUIRE([gl_STRING_H_DEFAULTS])
+   gl_NEXT_HEADERS([string.h])
+ 
+   dnl Check for declarations of anything we want to poison if the
+@@ -33,62 +28,77 @@ AC_DEFUN([gl_HEADER_STRING_H_BODY],
+   AC_REQUIRE([AC_C_RESTRICT])
+ ])
+ 
++# gl_STRING_MODULE_INDICATOR([modulename])
++# sets the shell variable that indicates the presence of the given module
++# to a C preprocessor expression that will evaluate to 1.
++# This macro invocation must not occur in macros that are AC_REQUIREd.
+ AC_DEFUN([gl_STRING_MODULE_INDICATOR],
+ [
+-  dnl Use AC_REQUIRE here, so that the default settings are expanded once only.
+-  AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
++  dnl Ensure to expand the default settings once only.
++  gl_STRING_H_REQUIRE_DEFAULTS
+   gl_MODULE_INDICATOR_SET_VARIABLE([$1])
+   dnl Define it also as a C macro, for the benefit of the unit tests.
+   gl_MODULE_INDICATOR_FOR_TESTS([$1])
+ ])
+ 
+-AC_DEFUN([gl_HEADER_STRING_H_DEFAULTS],
++# Initializes the default values for AC_SUBSTed shell variables.
++# This macro must not be AC_REQUIREd.  It must only be invoked, and only
++# outside of macros or in macros that are not AC_REQUIREd.
++AC_DEFUN([gl_STRING_H_REQUIRE_DEFAULTS],
++[
++  m4_defun(GL_MODULE_INDICATOR_PREFIX[_STRING_H_MODULE_INDICATOR_DEFAULTS], [
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_EXPLICIT_BZERO])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FFSL])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FFSLL])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MEMCHR])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MEMMEM])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MEMPCPY])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MEMRCHR])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_RAWMEMCHR])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STPCPY])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STPNCPY])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STRCHRNUL])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STRDUP])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STRNCAT])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STRNDUP])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STRNLEN])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STRPBRK])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STRSEP])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STRSTR])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STRCASESTR])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STRTOK_R])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MBSLEN])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MBSNLEN])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MBSCHR])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MBSRCHR])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MBSSTR])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MBSCASECMP])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MBSNCASECMP])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MBSPCASECMP])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MBSCASESTR])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MBSCSPN])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MBSPBRK])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MBSSPN])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MBSSEP])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MBSTOK_R])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STRERROR])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STRERROR_R])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STRERRORNAME_NP])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_SIGABBREV_NP])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_SIGDESCR_NP])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STRSIGNAL])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STRVERSCMP])
++    dnl Support Microsoft deprecated alias function names by default.
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_MEMCCPY], [1])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_STRDUP], [1])
++  ])
++  m4_require(GL_MODULE_INDICATOR_PREFIX[_STRING_H_MODULE_INDICATOR_DEFAULTS])
++  AC_REQUIRE([gl_STRING_H_DEFAULTS])
++])
++
++AC_DEFUN([gl_STRING_H_DEFAULTS],
+ [
+-  GNULIB_EXPLICIT_BZERO=0;   AC_SUBST([GNULIB_EXPLICIT_BZERO])
+-  GNULIB_FFSL=0;             AC_SUBST([GNULIB_FFSL])
+-  GNULIB_FFSLL=0;            AC_SUBST([GNULIB_FFSLL])
+-  GNULIB_MEMCHR=0;           AC_SUBST([GNULIB_MEMCHR])
+-  GNULIB_MEMMEM=0;           AC_SUBST([GNULIB_MEMMEM])
+-  GNULIB_MEMPCPY=0;          AC_SUBST([GNULIB_MEMPCPY])
+-  GNULIB_MEMRCHR=0;          AC_SUBST([GNULIB_MEMRCHR])
+-  GNULIB_RAWMEMCHR=0;        AC_SUBST([GNULIB_RAWMEMCHR])
+-  GNULIB_STPCPY=0;           AC_SUBST([GNULIB_STPCPY])
+-  GNULIB_STPNCPY=0;          AC_SUBST([GNULIB_STPNCPY])
+-  GNULIB_STRCHRNUL=0;        AC_SUBST([GNULIB_STRCHRNUL])
+-  GNULIB_STRDUP=0;           AC_SUBST([GNULIB_STRDUP])
+-  GNULIB_STRNCAT=0;          AC_SUBST([GNULIB_STRNCAT])
+-  GNULIB_STRNDUP=0;          AC_SUBST([GNULIB_STRNDUP])
+-  GNULIB_STRNLEN=0;          AC_SUBST([GNULIB_STRNLEN])
+-  GNULIB_STRPBRK=0;          AC_SUBST([GNULIB_STRPBRK])
+-  GNULIB_STRSEP=0;           AC_SUBST([GNULIB_STRSEP])
+-  GNULIB_STRSTR=0;           AC_SUBST([GNULIB_STRSTR])
+-  GNULIB_STRCASESTR=0;       AC_SUBST([GNULIB_STRCASESTR])
+-  GNULIB_STRTOK_R=0;         AC_SUBST([GNULIB_STRTOK_R])
+-  GNULIB_MBSLEN=0;           AC_SUBST([GNULIB_MBSLEN])
+-  GNULIB_MBSNLEN=0;          AC_SUBST([GNULIB_MBSNLEN])
+-  GNULIB_MBSCHR=0;           AC_SUBST([GNULIB_MBSCHR])
+-  GNULIB_MBSRCHR=0;          AC_SUBST([GNULIB_MBSRCHR])
+-  GNULIB_MBSSTR=0;           AC_SUBST([GNULIB_MBSSTR])
+-  GNULIB_MBSCASECMP=0;       AC_SUBST([GNULIB_MBSCASECMP])
+-  GNULIB_MBSNCASECMP=0;      AC_SUBST([GNULIB_MBSNCASECMP])
+-  GNULIB_MBSPCASECMP=0;      AC_SUBST([GNULIB_MBSPCASECMP])
+-  GNULIB_MBSCASESTR=0;       AC_SUBST([GNULIB_MBSCASESTR])
+-  GNULIB_MBSCSPN=0;          AC_SUBST([GNULIB_MBSCSPN])
+-  GNULIB_MBSPBRK=0;          AC_SUBST([GNULIB_MBSPBRK])
+-  GNULIB_MBSSPN=0;           AC_SUBST([GNULIB_MBSSPN])
+-  GNULIB_MBSSEP=0;           AC_SUBST([GNULIB_MBSSEP])
+-  GNULIB_MBSTOK_R=0;         AC_SUBST([GNULIB_MBSTOK_R])
+-  GNULIB_STRERROR=0;         AC_SUBST([GNULIB_STRERROR])
+-  GNULIB_STRERROR_R=0;       AC_SUBST([GNULIB_STRERROR_R])
+-  GNULIB_STRERRORNAME_NP=0;  AC_SUBST([GNULIB_STRERRORNAME_NP])
+-  GNULIB_SIGABBREV_NP=0;     AC_SUBST([GNULIB_SIGABBREV_NP])
+-  GNULIB_SIGDESCR_NP=0;      AC_SUBST([GNULIB_SIGDESCR_NP])
+-  GNULIB_STRSIGNAL=0;        AC_SUBST([GNULIB_STRSIGNAL])
+-  GNULIB_STRVERSCMP=0;       AC_SUBST([GNULIB_STRVERSCMP])
+   HAVE_MBSLEN=0;             AC_SUBST([HAVE_MBSLEN])
+-  dnl Support Microsoft deprecated alias function names by default.
+-  GNULIB_MDA_MEMCCPY=1;      AC_SUBST([GNULIB_MDA_MEMCCPY])
+-  GNULIB_MDA_STRDUP=1;       AC_SUBST([GNULIB_MDA_STRDUP])
+   dnl Assume proper GNU behavior unless another module says otherwise.
+   HAVE_EXPLICIT_BZERO=1;        AC_SUBST([HAVE_EXPLICIT_BZERO])
+   HAVE_FFSL=1;                  AC_SUBST([HAVE_FFSL])
+--- a/gnulib/m4/strings_h.m4
++++ b/gnulib/m4/strings_h.m4
+@@ -1,21 +1,16 @@
+ # Configure a replacement for <strings.h>.
+-# serial 6
++# serial 9
+ 
+ # Copyright (C) 2007, 2009-2021 Free Software Foundation, Inc.
+ # This file is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+ # with or without modifications, as long as this notice is preserved.
+ 
+-AC_DEFUN([gl_HEADER_STRINGS_H],
++AC_DEFUN_ONCE([gl_STRINGS_H],
+ [
+-  dnl Use AC_REQUIRE here, so that the default behavior below is expanded
+-  dnl once only, before all statements that occur in other macros.
+-  AC_REQUIRE([gl_HEADER_STRINGS_H_BODY])
+-])
+-
+-AC_DEFUN([gl_HEADER_STRINGS_H_BODY],
+-[
+-  AC_REQUIRE([gl_HEADER_STRINGS_H_DEFAULTS])
++  dnl Ensure to expand the default settings once only, before all statements
++  dnl that occur in other macros.
++  AC_REQUIRE([gl_STRINGS_H_DEFAULTS])
+ 
+   gl_CHECK_NEXT_HEADERS([strings.h])
+   if test $ac_cv_header_strings_h = yes; then
+@@ -35,16 +30,31 @@ AC_DEFUN([gl_HEADER_STRINGS_H_BODY],
+     ]], [ffs strcasecmp strncasecmp])
+ ])
+ 
++# gl_STRINGS_MODULE_INDICATOR([modulename])
++# sets the shell variable that indicates the presence of the given module
++# to a C preprocessor expression that will evaluate to 1.
++# This macro invocation must not occur in macros that are AC_REQUIREd.
+ AC_DEFUN([gl_STRINGS_MODULE_INDICATOR],
+ [
+-  dnl Use AC_REQUIRE here, so that the default settings are expanded once only.
+-  AC_REQUIRE([gl_HEADER_STRINGS_H_DEFAULTS])
++  dnl Ensure to expand the default settings once only.
++  gl_STRINGS_H_REQUIRE_DEFAULTS
+   gl_MODULE_INDICATOR_SET_VARIABLE([$1])
+ ])
+ 
+-AC_DEFUN([gl_HEADER_STRINGS_H_DEFAULTS],
++# Initializes the default values for AC_SUBSTed shell variables.
++# This macro must not be AC_REQUIREd.  It must only be invoked, and only
++# outside of macros or in macros that are not AC_REQUIREd.
++AC_DEFUN([gl_STRINGS_H_REQUIRE_DEFAULTS],
++[
++  m4_defun(GL_MODULE_INDICATOR_PREFIX[_STRINGS_H_MODULE_INDICATOR_DEFAULTS], [
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FFS])
++  ])
++  m4_require(GL_MODULE_INDICATOR_PREFIX[_STRINGS_H_MODULE_INDICATOR_DEFAULTS])
++  AC_REQUIRE([gl_STRINGS_H_DEFAULTS])
++])
++
++AC_DEFUN([gl_STRINGS_H_DEFAULTS],
+ [
+-  GNULIB_FFS=0;            AC_SUBST([GNULIB_FFS])
+   dnl Assume proper GNU behavior unless another module says otherwise.
+   HAVE_FFS=1;              AC_SUBST([HAVE_FFS])
+   HAVE_STRCASECMP=1;       AC_SUBST([HAVE_STRCASECMP])
+--- a/gnulib/m4/strndup.m4
++++ b/gnulib/m4/strndup.m4
+@@ -1,4 +1,4 @@
+-# strndup.m4 serial 22
++# strndup.m4 serial 23
+ dnl Copyright (C) 2002-2003, 2005-2021 Free Software Foundation, Inc.
+ dnl This file is free software; the Free Software Foundation
+ dnl gives unlimited permission to copy and/or distribute it,
+@@ -10,7 +10,7 @@ AC_DEFUN([gl_FUNC_STRNDUP],
+   AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS])
+ 
+   AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
+-  AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
++  AC_REQUIRE([gl_STRING_H_DEFAULTS])
+   AC_CHECK_DECLS_ONCE([strndup])
+   AC_CHECK_FUNCS_ONCE([strndup])
+   if test $ac_cv_have_decl_strndup = no; then
+--- a/gnulib/m4/strnlen.m4
++++ b/gnulib/m4/strnlen.m4
+@@ -1,4 +1,4 @@
+-# strnlen.m4 serial 13
++# strnlen.m4 serial 14
+ dnl Copyright (C) 2002-2003, 2005-2007, 2009-2021 Free Software Foundation,
+ dnl Inc.
+ dnl This file is free software; the Free Software Foundation
+@@ -7,7 +7,7 @@ dnl with or without modifications, as lo
+ 
+ AC_DEFUN([gl_FUNC_STRNLEN],
+ [
+-  AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
++  AC_REQUIRE([gl_STRING_H_DEFAULTS])
+ 
+   dnl Persuade glibc <string.h> to declare strnlen().
+   AC_REQUIRE([AC_USE_SYSTEM_EXTENSIONS])
+--- a/gnulib/m4/strstr.m4
++++ b/gnulib/m4/strstr.m4
+@@ -1,4 +1,4 @@
+-# strstr.m4 serial 22
++# strstr.m4 serial 23
+ dnl Copyright (C) 2008-2021 Free Software Foundation, Inc.
+ dnl This file is free software; the Free Software Foundation
+ dnl gives unlimited permission to copy and/or distribute it,
+@@ -7,7 +7,7 @@ dnl with or without modifications, as lo
+ dnl Check that strstr works.
+ AC_DEFUN([gl_FUNC_STRSTR_SIMPLE],
+ [
+-  AC_REQUIRE([gl_HEADER_STRING_H_DEFAULTS])
++  AC_REQUIRE([gl_STRING_H_DEFAULTS])
+   AC_REQUIRE([gl_FUNC_MEMCHR])
+   if test $REPLACE_MEMCHR = 1; then
+     REPLACE_STRSTR=1
+--- a/gnulib/m4/sys_socket_h.m4
++++ b/gnulib/m4/sys_socket_h.m4
+@@ -1,4 +1,4 @@
+-# sys_socket_h.m4 serial 25
++# sys_socket_h.m4 serial 28
+ dnl Copyright (C) 2005-2021 Free Software Foundation, Inc.
+ dnl This file is free software; the Free Software Foundation
+ dnl gives unlimited permission to copy and/or distribute it,
+@@ -6,7 +6,7 @@ dnl with or without modifications, as lo
+ 
+ dnl From Simon Josefsson.
+ 
+-AC_DEFUN([gl_HEADER_SYS_SOCKET],
++AC_DEFUN_ONCE([gl_SYS_SOCKET_H],
+ [
+   AC_REQUIRE([gl_SYS_SOCKET_H_DEFAULTS])
+   AC_REQUIRE([AC_CANONICAL_HOST])
+@@ -156,32 +156,47 @@ AC_DEFUN([gl_PREREQ_SYS_H_WS2TCPIP],
+   AC_SUBST([HAVE_WS2TCPIP_H])
+ ])
+ 
++# gl_SYS_SOCKET_MODULE_INDICATOR([modulename])
++# sets the shell variable that indicates the presence of the given module
++# to a C preprocessor expression that will evaluate to 1.
++# This macro invocation must not occur in macros that are AC_REQUIREd.
+ AC_DEFUN([gl_SYS_SOCKET_MODULE_INDICATOR],
+ [
+-  dnl Use AC_REQUIRE here, so that the default settings are expanded once only.
+-  AC_REQUIRE([gl_SYS_SOCKET_H_DEFAULTS])
++  dnl Ensure to expand the default settings once only.
++  gl_SYS_SOCKET_H_REQUIRE_DEFAULTS
+   gl_MODULE_INDICATOR_SET_VARIABLE([$1])
+   dnl Define it also as a C macro, for the benefit of the unit tests.
+   gl_MODULE_INDICATOR_FOR_TESTS([$1])
+ ])
+ 
++# Initializes the default values for AC_SUBSTed shell variables.
++# This macro must not be AC_REQUIREd.  It must only be invoked, and only
++# outside of macros or in macros that are not AC_REQUIREd.
++AC_DEFUN([gl_SYS_SOCKET_H_REQUIRE_DEFAULTS],
++[
++  m4_defun(GL_MODULE_INDICATOR_PREFIX[_SYS_SOCKET_H_MODULE_INDICATOR_DEFAULTS], [
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_SOCKET])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_CONNECT])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ACCEPT])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_BIND])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_GETPEERNAME])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_GETSOCKNAME])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_GETSOCKOPT])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_LISTEN])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_RECV])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_SEND])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_RECVFROM])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_SENDTO])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_SETSOCKOPT])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_SHUTDOWN])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ACCEPT4])
++  ])
++  m4_require(GL_MODULE_INDICATOR_PREFIX[_SYS_SOCKET_H_MODULE_INDICATOR_DEFAULTS])
++  AC_REQUIRE([gl_SYS_SOCKET_H_DEFAULTS])
++])
++
+ AC_DEFUN([gl_SYS_SOCKET_H_DEFAULTS],
+ [
+-  GNULIB_SOCKET=0;      AC_SUBST([GNULIB_SOCKET])
+-  GNULIB_CONNECT=0;     AC_SUBST([GNULIB_CONNECT])
+-  GNULIB_ACCEPT=0;      AC_SUBST([GNULIB_ACCEPT])
+-  GNULIB_BIND=0;        AC_SUBST([GNULIB_BIND])
+-  GNULIB_GETPEERNAME=0; AC_SUBST([GNULIB_GETPEERNAME])
+-  GNULIB_GETSOCKNAME=0; AC_SUBST([GNULIB_GETSOCKNAME])
+-  GNULIB_GETSOCKOPT=0;  AC_SUBST([GNULIB_GETSOCKOPT])
+-  GNULIB_LISTEN=0;      AC_SUBST([GNULIB_LISTEN])
+-  GNULIB_RECV=0;        AC_SUBST([GNULIB_RECV])
+-  GNULIB_SEND=0;        AC_SUBST([GNULIB_SEND])
+-  GNULIB_RECVFROM=0;    AC_SUBST([GNULIB_RECVFROM])
+-  GNULIB_SENDTO=0;      AC_SUBST([GNULIB_SENDTO])
+-  GNULIB_SETSOCKOPT=0;  AC_SUBST([GNULIB_SETSOCKOPT])
+-  GNULIB_SHUTDOWN=0;    AC_SUBST([GNULIB_SHUTDOWN])
+-  GNULIB_ACCEPT4=0;     AC_SUBST([GNULIB_ACCEPT4])
+   HAVE_STRUCT_SOCKADDR_STORAGE=1; AC_SUBST([HAVE_STRUCT_SOCKADDR_STORAGE])
+   HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY=1;
+                         AC_SUBST([HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY])
+--- a/gnulib/m4/sys_stat_h.m4
++++ b/gnulib/m4/sys_stat_h.m4
+@@ -1,4 +1,4 @@
+-# sys_stat_h.m4 serial 38   -*- Autoconf -*-
++# sys_stat_h.m4 serial 41   -*- Autoconf -*-
+ dnl Copyright (C) 2006-2021 Free Software Foundation, Inc.
+ dnl This file is free software; the Free Software Foundation
+ dnl gives unlimited permission to copy and/or distribute it,
+@@ -7,7 +7,7 @@ dnl with or without modifications, as lo
+ dnl From Eric Blake.
+ dnl Provide a GNU-like <sys/stat.h>.
+ 
+-AC_DEFUN([gl_HEADER_SYS_STAT_H],
++AC_DEFUN_ONCE([gl_SYS_STAT_H],
+ [
+   AC_REQUIRE([gl_SYS_STAT_H_DEFAULTS])
+ 
+@@ -52,38 +52,53 @@ AC_DEFUN([gl_HEADER_SYS_STAT_H],
+   AC_REQUIRE([AC_C_RESTRICT])
+ ])
+ 
++# gl_SYS_STAT_MODULE_INDICATOR([modulename])
++# sets the shell variable that indicates the presence of the given module
++# to a C preprocessor expression that will evaluate to 1.
++# This macro invocation must not occur in macros that are AC_REQUIREd.
+ AC_DEFUN([gl_SYS_STAT_MODULE_INDICATOR],
+ [
+-  dnl Use AC_REQUIRE here, so that the default settings are expanded once only.
+-  AC_REQUIRE([gl_SYS_STAT_H_DEFAULTS])
++  dnl Ensure to expand the default settings once only.
++  gl_SYS_STAT_H_REQUIRE_DEFAULTS
+   gl_MODULE_INDICATOR_SET_VARIABLE([$1])
+   dnl Define it also as a C macro, for the benefit of the unit tests.
+   gl_MODULE_INDICATOR_FOR_TESTS([$1])
+ ])
+ 
++# Initializes the default values for AC_SUBSTed shell variables.
++# This macro must not be AC_REQUIREd.  It must only be invoked, and only
++# outside of macros or in macros that are not AC_REQUIREd.
++AC_DEFUN([gl_SYS_STAT_H_REQUIRE_DEFAULTS],
++[
++  m4_defun(GL_MODULE_INDICATOR_PREFIX[_SYS_STAT_H_MODULE_INDICATOR_DEFAULTS], [
++    gl_UNISTD_H_REQUIRE_DEFAULTS dnl for REPLACE_FCHDIR
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FCHMODAT])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FSTAT])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FSTATAT])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FUTIMENS])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_GETUMASK])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_LCHMOD])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_LSTAT])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MKDIR])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MKDIRAT])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MKFIFO])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MKFIFOAT])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MKNOD])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MKNODAT])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STAT])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_UTIMENSAT])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_OVERRIDES_STRUCT_STAT])
++    dnl Support Microsoft deprecated alias function names by default.
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_CHMOD], [1])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_MKDIR], [1])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_UMASK], [1])
++  ])
++  m4_require(GL_MODULE_INDICATOR_PREFIX[_SYS_STAT_H_MODULE_INDICATOR_DEFAULTS])
++  AC_REQUIRE([gl_SYS_STAT_H_DEFAULTS])
++])
++
+ AC_DEFUN([gl_SYS_STAT_H_DEFAULTS],
+ [
+-  AC_REQUIRE([gl_UNISTD_H_DEFAULTS]) dnl for REPLACE_FCHDIR
+-  GNULIB_FCHMODAT=0;    AC_SUBST([GNULIB_FCHMODAT])
+-  GNULIB_FSTAT=0;       AC_SUBST([GNULIB_FSTAT])
+-  GNULIB_FSTATAT=0;     AC_SUBST([GNULIB_FSTATAT])
+-  GNULIB_FUTIMENS=0;    AC_SUBST([GNULIB_FUTIMENS])
+-  GNULIB_GETUMASK=0;    AC_SUBST([GNULIB_GETUMASK])
+-  GNULIB_LCHMOD=0;      AC_SUBST([GNULIB_LCHMOD])
+-  GNULIB_LSTAT=0;       AC_SUBST([GNULIB_LSTAT])
+-  GNULIB_MKDIR=0;       AC_SUBST([GNULIB_MKDIR])
+-  GNULIB_MKDIRAT=0;     AC_SUBST([GNULIB_MKDIRAT])
+-  GNULIB_MKFIFO=0;      AC_SUBST([GNULIB_MKFIFO])
+-  GNULIB_MKFIFOAT=0;    AC_SUBST([GNULIB_MKFIFOAT])
+-  GNULIB_MKNOD=0;       AC_SUBST([GNULIB_MKNOD])
+-  GNULIB_MKNODAT=0;     AC_SUBST([GNULIB_MKNODAT])
+-  GNULIB_STAT=0;        AC_SUBST([GNULIB_STAT])
+-  GNULIB_UTIMENSAT=0;   AC_SUBST([GNULIB_UTIMENSAT])
+-  GNULIB_OVERRIDES_STRUCT_STAT=0; AC_SUBST([GNULIB_OVERRIDES_STRUCT_STAT])
+-  dnl Support Microsoft deprecated alias function names by default.
+-  GNULIB_MDA_CHMOD=1;   AC_SUBST([GNULIB_MDA_CHMOD])
+-  GNULIB_MDA_MKDIR=1;   AC_SUBST([GNULIB_MDA_MKDIR])
+-  GNULIB_MDA_UMASK=1;   AC_SUBST([GNULIB_MDA_UMASK])
+   dnl Assume proper GNU behavior unless another module says otherwise.
+   HAVE_FCHMODAT=1;      AC_SUBST([HAVE_FCHMODAT])
+   HAVE_FSTATAT=1;       AC_SUBST([HAVE_FSTATAT])
+--- a/gnulib/m4/sys_types_h.m4
++++ b/gnulib/m4/sys_types_h.m4
+@@ -1,4 +1,4 @@
+-# sys_types_h.m4 serial 11
++# sys_types_h.m4 serial 13
+ dnl Copyright (C) 2011-2021 Free Software Foundation, Inc.
+ dnl This file is free software; the Free Software Foundation
+ dnl gives unlimited permission to copy and/or distribute it,
+@@ -6,10 +6,11 @@ dnl with or without modifications, as lo
+ 
+ AC_DEFUN_ONCE([gl_SYS_TYPES_H],
+ [
++  AC_REQUIRE([gl_SYS_TYPES_H_DEFAULTS])
++
+   dnl Use sane struct stat types in OpenVMS 8.2 and later.
+   AC_DEFINE([_USE_STD_STAT], 1, [For standard stat data types on VMS.])
+ 
+-  AC_REQUIRE([gl_SYS_TYPES_H_DEFAULTS])
+   gl_NEXT_HEADERS([sys/types.h])
+ 
+   dnl Ensure the type pid_t gets defined.
+@@ -30,6 +31,17 @@ AC_DEFUN_ONCE([gl_SYS_TYPES_H],
+   AC_SUBST([WINDOWS_STAT_INODES])
+ ])
+ 
++# Initializes the default values for AC_SUBSTed shell variables.
++# This macro must not be AC_REQUIREd.  It must only be invoked, and only
++# outside of macros or in macros that are not AC_REQUIREd.
++AC_DEFUN([gl_SYS_TYPES_H_REQUIRE_DEFAULTS],
++[
++  m4_defun(GL_MODULE_INDICATOR_PREFIX[_SYS_TYPE_H_MODULE_INDICATOR_DEFAULTS], [
++  ])
++  m4_require(GL_MODULE_INDICATOR_PREFIX[_SYS_TYPE_H_MODULE_INDICATOR_DEFAULTS])
++  AC_REQUIRE([gl_SYS_TYPES_H_DEFAULTS])
++])
++
+ AC_DEFUN([gl_SYS_TYPES_H_DEFAULTS],
+ [
+ ])
+--- a/gnulib/m4/time_h.m4
++++ b/gnulib/m4/time_h.m4
+@@ -2,7 +2,7 @@
+ 
+ # Copyright (C) 2000-2001, 2003-2007, 2009-2021 Free Software Foundation, Inc.
+ 
+-# serial 15
++# serial 18
+ 
+ # This file is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -10,16 +10,11 @@
+ 
+ # Written by Paul Eggert and Jim Meyering.
+ 
+-AC_DEFUN([gl_HEADER_TIME_H],
++AC_DEFUN_ONCE([gl_TIME_H],
+ [
+-  dnl Use AC_REQUIRE here, so that the default behavior below is expanded
+-  dnl once only, before all statements that occur in other macros.
+-  AC_REQUIRE([gl_HEADER_TIME_H_BODY])
+-])
+-
+-AC_DEFUN([gl_HEADER_TIME_H_BODY],
+-[
+-  AC_REQUIRE([gl_HEADER_TIME_H_DEFAULTS])
++  dnl Ensure to expand the default settings once only, before all statements
++  dnl that occur in other macros.
++  AC_REQUIRE([gl_TIME_H_DEFAULTS])
+ 
+   gl_NEXT_HEADERS([time.h])
+   AC_REQUIRE([gl_CHECK_TYPE_STRUCT_TIMESPEC])
+@@ -111,30 +106,45 @@ AC_DEFUN([gl_CHECK_TYPE_STRUCT_TIMESPEC]
+   AC_SUBST([UNISTD_H_DEFINES_STRUCT_TIMESPEC])
+ ])
+ 
++# gl_TIME_MODULE_INDICATOR([modulename])
++# sets the shell variable that indicates the presence of the given module
++# to a C preprocessor expression that will evaluate to 1.
++# This macro invocation must not occur in macros that are AC_REQUIREd.
+ AC_DEFUN([gl_TIME_MODULE_INDICATOR],
+ [
+-  dnl Use AC_REQUIRE here, so that the default settings are expanded once only.
+-  AC_REQUIRE([gl_HEADER_TIME_H_DEFAULTS])
++  dnl Ensure to expand the default settings once only.
++  gl_TIME_H_REQUIRE_DEFAULTS
+   gl_MODULE_INDICATOR_SET_VARIABLE([$1])
+   dnl Define it also as a C macro, for the benefit of the unit tests.
+   gl_MODULE_INDICATOR_FOR_TESTS([$1])
+ ])
+ 
+-AC_DEFUN([gl_HEADER_TIME_H_DEFAULTS],
++# Initializes the default values for AC_SUBSTed shell variables.
++# This macro must not be AC_REQUIREd.  It must only be invoked, and only
++# outside of macros or in macros that are not AC_REQUIREd.
++AC_DEFUN([gl_TIME_H_REQUIRE_DEFAULTS],
++[
++  m4_defun(GL_MODULE_INDICATOR_PREFIX[_TIME_H_MODULE_INDICATOR_DEFAULTS], [
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_CTIME])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MKTIME])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_LOCALTIME])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_NANOSLEEP])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STRFTIME])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_STRPTIME])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_TIMEGM])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_TIMESPEC_GET])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_TIME_R])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_TIME_RZ])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_TZSET])
++    dnl Support Microsoft deprecated alias function names by default.
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_TZSET], [1])
++  ])
++  m4_require(GL_MODULE_INDICATOR_PREFIX[_TIME_H_MODULE_INDICATOR_DEFAULTS])
++  AC_REQUIRE([gl_TIME_H_DEFAULTS])
++])
++
++AC_DEFUN([gl_TIME_H_DEFAULTS],
+ [
+-  GNULIB_CTIME=0;                        AC_SUBST([GNULIB_CTIME])
+-  GNULIB_MKTIME=0;                       AC_SUBST([GNULIB_MKTIME])
+-  GNULIB_LOCALTIME=0;                    AC_SUBST([GNULIB_LOCALTIME])
+-  GNULIB_NANOSLEEP=0;                    AC_SUBST([GNULIB_NANOSLEEP])
+-  GNULIB_STRFTIME=0;                     AC_SUBST([GNULIB_STRFTIME])
+-  GNULIB_STRPTIME=0;                     AC_SUBST([GNULIB_STRPTIME])
+-  GNULIB_TIMEGM=0;                       AC_SUBST([GNULIB_TIMEGM])
+-  GNULIB_TIMESPEC_GET=0;                 AC_SUBST([GNULIB_TIMESPEC_GET])
+-  GNULIB_TIME_R=0;                       AC_SUBST([GNULIB_TIME_R])
+-  GNULIB_TIME_RZ=0;                      AC_SUBST([GNULIB_TIME_RZ])
+-  GNULIB_TZSET=0;                        AC_SUBST([GNULIB_TZSET])
+-  dnl Support Microsoft deprecated alias function names by default.
+-  GNULIB_MDA_TZSET=1;                    AC_SUBST([GNULIB_MDA_TZSET])
+   dnl Assume proper GNU behavior unless another module says otherwise.
+   HAVE_DECL_LOCALTIME_R=1;               AC_SUBST([HAVE_DECL_LOCALTIME_R])
+   HAVE_NANOSLEEP=1;                      AC_SUBST([HAVE_NANOSLEEP])
+--- a/gnulib/m4/unistd_h.m4
++++ b/gnulib/m4/unistd_h.m4
+@@ -1,4 +1,4 @@
+-# unistd_h.m4 serial 85
++# unistd_h.m4 serial 89
+ dnl Copyright (C) 2006-2021 Free Software Foundation, Inc.
+ dnl This file is free software; the Free Software Foundation
+ dnl gives unlimited permission to copy and/or distribute it,
+@@ -6,10 +6,10 @@ dnl with or without modifications, as lo
+ 
+ dnl Written by Simon Josefsson, Bruno Haible.
+ 
+-AC_DEFUN([gl_UNISTD_H],
++AC_DEFUN_ONCE([gl_UNISTD_H],
+ [
+-  dnl Use AC_REQUIRE here, so that the default behavior below is expanded
+-  dnl once only, before all statements that occur in other macros.
++  dnl Ensure to expand the default settings once only, before all statements
++  dnl that occur in other macros.
+   AC_REQUIRE([gl_UNISTD_H_DEFAULTS])
+ 
+   gl_CHECK_NEXT_HEADERS([unistd.h])
+@@ -59,100 +59,116 @@ AC_DEFUN([gl_UNISTD_H],
+   fi
+ ])
+ 
++# gl_UNISTD_MODULE_INDICATOR([modulename])
++# sets the shell variable that indicates the presence of the given module
++# to a C preprocessor expression that will evaluate to 1.
++# This macro invocation must not occur in macros that are AC_REQUIREd.
+ AC_DEFUN([gl_UNISTD_MODULE_INDICATOR],
+ [
+-  dnl Use AC_REQUIRE here, so that the default settings are expanded once only.
+-  AC_REQUIRE([gl_UNISTD_H_DEFAULTS])
++  dnl Ensure to expand the default settings once only.
++  gl_UNISTD_H_REQUIRE_DEFAULTS
+   gl_MODULE_INDICATOR_SET_VARIABLE([$1])
+   dnl Define it also as a C macro, for the benefit of the unit tests.
+   gl_MODULE_INDICATOR_FOR_TESTS([$1])
+ ])
+ 
++# Initializes the default values for AC_SUBSTed shell variables.
++# This macro must not be AC_REQUIREd.  It must only be invoked, and only
++# outside of macros or in macros that are not AC_REQUIREd.
++AC_DEFUN([gl_UNISTD_H_REQUIRE_DEFAULTS],
++[
++  m4_defun(GL_MODULE_INDICATOR_PREFIX[_UNISTD_H_MODULE_INDICATOR_DEFAULTS], [
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ACCESS])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_CHDIR])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_CHOWN])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_CLOSE])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_COPY_FILE_RANGE])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_DUP])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_DUP2])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_DUP3])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ENVIRON])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_EUIDACCESS])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_EXECL])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_EXECLE])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_EXECLP])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_EXECV])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_EXECVE])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_EXECVP])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_EXECVPE])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FACCESSAT])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FCHDIR])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FCHOWNAT])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FDATASYNC])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FSYNC])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_FTRUNCATE])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_GETCWD])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_GETDOMAINNAME])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_GETDTABLESIZE])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_GETENTROPY])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_GETGROUPS])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_GETHOSTNAME])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_GETLOGIN])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_GETLOGIN_R])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_GETOPT_POSIX])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_GETPAGESIZE])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_GETPASS])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_GETUSERSHELL])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_GROUP_MEMBER])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ISATTY])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_LCHOWN])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_LINK])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_LINKAT])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_LSEEK])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_PIPE])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_PIPE2])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_PREAD])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_PWRITE])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_READ])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_READLINK])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_READLINKAT])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_RMDIR])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_SETHOSTNAME])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_SLEEP])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_SYMLINK])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_SYMLINKAT])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_TRUNCATE])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_TTYNAME_R])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_UNISTD_H_GETOPT])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_UNISTD_H_NONBLOCKING])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_UNISTD_H_SIGPIPE])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_UNLINK])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_UNLINKAT])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_USLEEP])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WRITE])
++    dnl Support Microsoft deprecated alias function names by default.
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_ACCESS], [1])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_CHDIR], [1])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_CLOSE], [1])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_DUP], [1])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_DUP2], [1])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_EXECL], [1])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_EXECLE], [1])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_EXECLP], [1])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_EXECV], [1])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_EXECVE], [1])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_EXECVP], [1])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_EXECVPE], [1])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_GETCWD], [1])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_GETPID], [1])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_ISATTY], [1])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_LSEEK], [1])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_READ], [1])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_RMDIR], [1])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_SWAB], [1])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_UNLINK], [1])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_WRITE], [1])
++  ])
++  m4_require(GL_MODULE_INDICATOR_PREFIX[_UNISTD_H_MODULE_INDICATOR_DEFAULTS])
++  AC_REQUIRE([gl_UNISTD_H_DEFAULTS])
++])
++
+ AC_DEFUN([gl_UNISTD_H_DEFAULTS],
+ [
+-  GNULIB_ACCESS=0;               AC_SUBST([GNULIB_ACCESS])
+-  GNULIB_CHDIR=0;                AC_SUBST([GNULIB_CHDIR])
+-  GNULIB_CHOWN=0;                AC_SUBST([GNULIB_CHOWN])
+-  GNULIB_CLOSE=0;                AC_SUBST([GNULIB_CLOSE])
+-  GNULIB_COPY_FILE_RANGE=0;      AC_SUBST([GNULIB_COPY_FILE_RANGE])
+-  GNULIB_DUP=0;                  AC_SUBST([GNULIB_DUP])
+-  GNULIB_DUP2=0;                 AC_SUBST([GNULIB_DUP2])
+-  GNULIB_DUP3=0;                 AC_SUBST([GNULIB_DUP3])
+-  GNULIB_ENVIRON=0;              AC_SUBST([GNULIB_ENVIRON])
+-  GNULIB_EUIDACCESS=0;           AC_SUBST([GNULIB_EUIDACCESS])
+-  GNULIB_EXECL=0;                AC_SUBST([GNULIB_EXECL])
+-  GNULIB_EXECLE=0;               AC_SUBST([GNULIB_EXECLE])
+-  GNULIB_EXECLP=0;               AC_SUBST([GNULIB_EXECLP])
+-  GNULIB_EXECV=0;                AC_SUBST([GNULIB_EXECV])
+-  GNULIB_EXECVE=0;               AC_SUBST([GNULIB_EXECVE])
+-  GNULIB_EXECVP=0;               AC_SUBST([GNULIB_EXECVP])
+-  GNULIB_EXECVPE=0;              AC_SUBST([GNULIB_EXECVPE])
+-  GNULIB_FACCESSAT=0;            AC_SUBST([GNULIB_FACCESSAT])
+-  GNULIB_FCHDIR=0;               AC_SUBST([GNULIB_FCHDIR])
+-  GNULIB_FCHOWNAT=0;             AC_SUBST([GNULIB_FCHOWNAT])
+-  GNULIB_FDATASYNC=0;            AC_SUBST([GNULIB_FDATASYNC])
+-  GNULIB_FSYNC=0;                AC_SUBST([GNULIB_FSYNC])
+-  GNULIB_FTRUNCATE=0;            AC_SUBST([GNULIB_FTRUNCATE])
+-  GNULIB_GETCWD=0;               AC_SUBST([GNULIB_GETCWD])
+-  GNULIB_GETDOMAINNAME=0;        AC_SUBST([GNULIB_GETDOMAINNAME])
+-  GNULIB_GETDTABLESIZE=0;        AC_SUBST([GNULIB_GETDTABLESIZE])
+-  GNULIB_GETENTROPY=0;           AC_SUBST([GNULIB_GETENTROPY])
+-  GNULIB_GETGROUPS=0;            AC_SUBST([GNULIB_GETGROUPS])
+-  GNULIB_GETHOSTNAME=0;          AC_SUBST([GNULIB_GETHOSTNAME])
+-  GNULIB_GETLOGIN=0;             AC_SUBST([GNULIB_GETLOGIN])
+-  GNULIB_GETLOGIN_R=0;           AC_SUBST([GNULIB_GETLOGIN_R])
+-  GNULIB_GETOPT_POSIX=0;         AC_SUBST([GNULIB_GETOPT_POSIX])
+-  GNULIB_GETPAGESIZE=0;          AC_SUBST([GNULIB_GETPAGESIZE])
+-  GNULIB_GETPASS=0;              AC_SUBST([GNULIB_GETPASS])
+-  GNULIB_GETUSERSHELL=0;         AC_SUBST([GNULIB_GETUSERSHELL])
+-  GNULIB_GROUP_MEMBER=0;         AC_SUBST([GNULIB_GROUP_MEMBER])
+-  GNULIB_ISATTY=0;               AC_SUBST([GNULIB_ISATTY])
+-  GNULIB_LCHOWN=0;               AC_SUBST([GNULIB_LCHOWN])
+-  GNULIB_LINK=0;                 AC_SUBST([GNULIB_LINK])
+-  GNULIB_LINKAT=0;               AC_SUBST([GNULIB_LINKAT])
+-  GNULIB_LSEEK=0;                AC_SUBST([GNULIB_LSEEK])
+-  GNULIB_PIPE=0;                 AC_SUBST([GNULIB_PIPE])
+-  GNULIB_PIPE2=0;                AC_SUBST([GNULIB_PIPE2])
+-  GNULIB_PREAD=0;                AC_SUBST([GNULIB_PREAD])
+-  GNULIB_PWRITE=0;               AC_SUBST([GNULIB_PWRITE])
+-  GNULIB_READ=0;                 AC_SUBST([GNULIB_READ])
+-  GNULIB_READLINK=0;             AC_SUBST([GNULIB_READLINK])
+-  GNULIB_READLINKAT=0;           AC_SUBST([GNULIB_READLINKAT])
+-  GNULIB_RMDIR=0;                AC_SUBST([GNULIB_RMDIR])
+-  GNULIB_SETHOSTNAME=0;          AC_SUBST([GNULIB_SETHOSTNAME])
+-  GNULIB_SLEEP=0;                AC_SUBST([GNULIB_SLEEP])
+-  GNULIB_SYMLINK=0;              AC_SUBST([GNULIB_SYMLINK])
+-  GNULIB_SYMLINKAT=0;            AC_SUBST([GNULIB_SYMLINKAT])
+-  GNULIB_TRUNCATE=0;             AC_SUBST([GNULIB_TRUNCATE])
+-  GNULIB_TTYNAME_R=0;            AC_SUBST([GNULIB_TTYNAME_R])
+-  GNULIB_UNISTD_H_NONBLOCKING=0; AC_SUBST([GNULIB_UNISTD_H_NONBLOCKING])
+-  GNULIB_UNISTD_H_SIGPIPE=0;     AC_SUBST([GNULIB_UNISTD_H_SIGPIPE])
+-  GNULIB_UNLINK=0;               AC_SUBST([GNULIB_UNLINK])
+-  GNULIB_UNLINKAT=0;             AC_SUBST([GNULIB_UNLINKAT])
+-  GNULIB_USLEEP=0;               AC_SUBST([GNULIB_USLEEP])
+-  GNULIB_WRITE=0;                AC_SUBST([GNULIB_WRITE])
+-  dnl Support Microsoft deprecated alias function names by default.
+-  GNULIB_MDA_ACCESS=1;           AC_SUBST([GNULIB_MDA_ACCESS])
+-  GNULIB_MDA_CHDIR=1;            AC_SUBST([GNULIB_MDA_CHDIR])
+-  GNULIB_MDA_CLOSE=1;            AC_SUBST([GNULIB_MDA_CLOSE])
+-  GNULIB_MDA_DUP=1;              AC_SUBST([GNULIB_MDA_DUP])
+-  GNULIB_MDA_DUP2=1;             AC_SUBST([GNULIB_MDA_DUP2])
+-  GNULIB_MDA_EXECL=1;            AC_SUBST([GNULIB_MDA_EXECL])
+-  GNULIB_MDA_EXECLE=1;           AC_SUBST([GNULIB_MDA_EXECLE])
+-  GNULIB_MDA_EXECLP=1;           AC_SUBST([GNULIB_MDA_EXECLP])
+-  GNULIB_MDA_EXECV=1;            AC_SUBST([GNULIB_MDA_EXECV])
+-  GNULIB_MDA_EXECVE=1;           AC_SUBST([GNULIB_MDA_EXECVE])
+-  GNULIB_MDA_EXECVP=1;           AC_SUBST([GNULIB_MDA_EXECVP])
+-  GNULIB_MDA_EXECVPE=1;          AC_SUBST([GNULIB_MDA_EXECVPE])
+-  GNULIB_MDA_GETCWD=1;           AC_SUBST([GNULIB_MDA_GETCWD])
+-  GNULIB_MDA_GETPID=1;           AC_SUBST([GNULIB_MDA_GETPID])
+-  GNULIB_MDA_ISATTY=1;           AC_SUBST([GNULIB_MDA_ISATTY])
+-  GNULIB_MDA_LSEEK=1;            AC_SUBST([GNULIB_MDA_LSEEK])
+-  GNULIB_MDA_READ=1;             AC_SUBST([GNULIB_MDA_READ])
+-  GNULIB_MDA_RMDIR=1;            AC_SUBST([GNULIB_MDA_RMDIR])
+-  GNULIB_MDA_SWAB=1;             AC_SUBST([GNULIB_MDA_SWAB])
+-  GNULIB_MDA_UNLINK=1;           AC_SUBST([GNULIB_MDA_UNLINK])
+-  GNULIB_MDA_WRITE=1;            AC_SUBST([GNULIB_MDA_WRITE])
+   dnl Assume proper GNU behavior unless another module says otherwise.
+   HAVE_CHOWN=1;           AC_SUBST([HAVE_CHOWN])
+   HAVE_COPY_FILE_RANGE=1; AC_SUBST([HAVE_COPY_FILE_RANGE])
+--- a/gnulib/m4/visibility.m4
++++ b/gnulib/m4/visibility.m4
+@@ -1,4 +1,4 @@
+-# visibility.m4 serial 7
++# visibility.m4 serial 8
+ dnl Copyright (C) 2005, 2008, 2010-2021 Free Software Foundation, Inc.
+ dnl This file is free software; the Free Software Foundation
+ dnl gives unlimited permission to copy and/or distribute it,
+@@ -59,6 +59,10 @@ AC_DEFUN([gl_VISIBILITY],
+               extern __attribute__((__visibility__("hidden"))) int hiddenfunc (void);
+               extern __attribute__((__visibility__("default"))) int exportedfunc (void);
+               void dummyfunc (void);
++              int hiddenvar;
++              int exportedvar;
++              int hiddenfunc (void) { return 51; }
++              int exportedfunc (void) { return 1225736919; }
+               void dummyfunc (void) {}
+             ]],
+             [[]])],
+--- a/gnulib/m4/wchar_h.m4
++++ b/gnulib/m4/wchar_h.m4
+@@ -7,9 +7,9 @@ dnl with or without modifications, as lo
+ 
+ dnl Written by Eric Blake.
+ 
+-# wchar_h.m4 serial 50
++# wchar_h.m4 serial 53
+ 
+-AC_DEFUN([gl_WCHAR_H],
++AC_DEFUN_ONCE([gl_WCHAR_H],
+ [
+   AC_REQUIRE([gl_WCHAR_H_DEFAULTS])
+   AC_REQUIRE([gl_WCHAR_H_INLINE_OK])
+@@ -125,60 +125,75 @@ Configuration aborted.])
+   fi
+ ])
+ 
++# gl_WCHAR_MODULE_INDICATOR([modulename])
++# sets the shell variable that indicates the presence of the given module
++# to a C preprocessor expression that will evaluate to 1.
++# This macro invocation must not occur in macros that are AC_REQUIREd.
+ AC_DEFUN([gl_WCHAR_MODULE_INDICATOR],
+ [
+-  dnl Use AC_REQUIRE here, so that the default settings are expanded once only.
+-  AC_REQUIRE([gl_WCHAR_H_DEFAULTS])
++  dnl Ensure to expand the default settings once only.
++  gl_WCHAR_H_REQUIRE_DEFAULTS
+   gl_MODULE_INDICATOR_SET_VARIABLE([$1])
+   dnl Define it also as a C macro, for the benefit of the unit tests.
+   gl_MODULE_INDICATOR_FOR_TESTS([$1])
+ ])
+ 
++# Initializes the default values for AC_SUBSTed shell variables.
++# This macro must not be AC_REQUIREd.  It must only be invoked, and only
++# outside of macros or in macros that are not AC_REQUIREd.
++AC_DEFUN([gl_WCHAR_H_REQUIRE_DEFAULTS],
++[
++  m4_defun(GL_MODULE_INDICATOR_PREFIX[_WCHAR_H_MODULE_INDICATOR_DEFAULTS], [
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_BTOWC])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WCTOB])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MBSINIT])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MBRTOWC])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MBRLEN])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MBSRTOWCS])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MBSNRTOWCS])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WCRTOMB])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WCSRTOMBS])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WCSNRTOMBS])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WCWIDTH])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WMEMCHR])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WMEMCMP])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WMEMCPY])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WMEMMOVE])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WMEMPCPY])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WMEMSET])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WCSLEN])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WCSNLEN])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WCSCPY])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WCPCPY])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WCSNCPY])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WCPNCPY])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WCSCAT])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WCSNCAT])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WCSCMP])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WCSNCMP])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WCSCASECMP])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WCSNCASECMP])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WCSCOLL])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WCSXFRM])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WCSDUP])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WCSCHR])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WCSRCHR])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WCSCSPN])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WCSSPN])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WCSPBRK])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WCSSTR])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WCSTOK])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WCSWIDTH])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WCSFTIME])
++    dnl Support Microsoft deprecated alias function names by default.
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_MDA_WCSDUP], [1])
++  ])
++  m4_require(GL_MODULE_INDICATOR_PREFIX[_WCHAR_H_MODULE_INDICATOR_DEFAULTS])
++  AC_REQUIRE([gl_WCHAR_H_DEFAULTS])
++])
++
+ AC_DEFUN([gl_WCHAR_H_DEFAULTS],
+ [
+-  GNULIB_BTOWC=0;       AC_SUBST([GNULIB_BTOWC])
+-  GNULIB_WCTOB=0;       AC_SUBST([GNULIB_WCTOB])
+-  GNULIB_MBSINIT=0;     AC_SUBST([GNULIB_MBSINIT])
+-  GNULIB_MBRTOWC=0;     AC_SUBST([GNULIB_MBRTOWC])
+-  GNULIB_MBRLEN=0;      AC_SUBST([GNULIB_MBRLEN])
+-  GNULIB_MBSRTOWCS=0;   AC_SUBST([GNULIB_MBSRTOWCS])
+-  GNULIB_MBSNRTOWCS=0;  AC_SUBST([GNULIB_MBSNRTOWCS])
+-  GNULIB_WCRTOMB=0;     AC_SUBST([GNULIB_WCRTOMB])
+-  GNULIB_WCSRTOMBS=0;   AC_SUBST([GNULIB_WCSRTOMBS])
+-  GNULIB_WCSNRTOMBS=0;  AC_SUBST([GNULIB_WCSNRTOMBS])
+-  GNULIB_WCWIDTH=0;     AC_SUBST([GNULIB_WCWIDTH])
+-  GNULIB_WMEMCHR=0;     AC_SUBST([GNULIB_WMEMCHR])
+-  GNULIB_WMEMCMP=0;     AC_SUBST([GNULIB_WMEMCMP])
+-  GNULIB_WMEMCPY=0;     AC_SUBST([GNULIB_WMEMCPY])
+-  GNULIB_WMEMMOVE=0;    AC_SUBST([GNULIB_WMEMMOVE])
+-  GNULIB_WMEMPCPY=0;    AC_SUBST([GNULIB_WMEMPCPY])
+-  GNULIB_WMEMSET=0;     AC_SUBST([GNULIB_WMEMSET])
+-  GNULIB_WCSLEN=0;      AC_SUBST([GNULIB_WCSLEN])
+-  GNULIB_WCSNLEN=0;     AC_SUBST([GNULIB_WCSNLEN])
+-  GNULIB_WCSCPY=0;      AC_SUBST([GNULIB_WCSCPY])
+-  GNULIB_WCPCPY=0;      AC_SUBST([GNULIB_WCPCPY])
+-  GNULIB_WCSNCPY=0;     AC_SUBST([GNULIB_WCSNCPY])
+-  GNULIB_WCPNCPY=0;     AC_SUBST([GNULIB_WCPNCPY])
+-  GNULIB_WCSCAT=0;      AC_SUBST([GNULIB_WCSCAT])
+-  GNULIB_WCSNCAT=0;     AC_SUBST([GNULIB_WCSNCAT])
+-  GNULIB_WCSCMP=0;      AC_SUBST([GNULIB_WCSCMP])
+-  GNULIB_WCSNCMP=0;     AC_SUBST([GNULIB_WCSNCMP])
+-  GNULIB_WCSCASECMP=0;  AC_SUBST([GNULIB_WCSCASECMP])
+-  GNULIB_WCSNCASECMP=0; AC_SUBST([GNULIB_WCSNCASECMP])
+-  GNULIB_WCSCOLL=0;     AC_SUBST([GNULIB_WCSCOLL])
+-  GNULIB_WCSXFRM=0;     AC_SUBST([GNULIB_WCSXFRM])
+-  GNULIB_WCSDUP=0;      AC_SUBST([GNULIB_WCSDUP])
+-  GNULIB_WCSCHR=0;      AC_SUBST([GNULIB_WCSCHR])
+-  GNULIB_WCSRCHR=0;     AC_SUBST([GNULIB_WCSRCHR])
+-  GNULIB_WCSCSPN=0;     AC_SUBST([GNULIB_WCSCSPN])
+-  GNULIB_WCSSPN=0;      AC_SUBST([GNULIB_WCSSPN])
+-  GNULIB_WCSPBRK=0;     AC_SUBST([GNULIB_WCSPBRK])
+-  GNULIB_WCSSTR=0;      AC_SUBST([GNULIB_WCSSTR])
+-  GNULIB_WCSTOK=0;      AC_SUBST([GNULIB_WCSTOK])
+-  GNULIB_WCSWIDTH=0;    AC_SUBST([GNULIB_WCSWIDTH])
+-  GNULIB_WCSFTIME=0;    AC_SUBST([GNULIB_WCSFTIME])
+-  dnl Support Microsoft deprecated alias function names by default.
+-  GNULIB_MDA_WCSDUP=1;  AC_SUBST([GNULIB_MDA_WCSDUP])
+   dnl Assume proper GNU behavior unless another module says otherwise.
+   HAVE_BTOWC=1;         AC_SUBST([HAVE_BTOWC])
+   HAVE_MBSINIT=1;       AC_SUBST([HAVE_MBSINIT])
+--- a/gnulib/m4/wctype_h.m4
++++ b/gnulib/m4/wctype_h.m4
+@@ -1,4 +1,4 @@
+-# wctype_h.m4 serial 26
++# wctype_h.m4 serial 30
+ 
+ dnl A placeholder for ISO C99 <wctype.h>, for platforms that lack it.
+ 
+@@ -9,7 +9,7 @@ dnl with or without modifications, as lo
+ 
+ dnl Written by Paul Eggert.
+ 
+-AC_DEFUN([gl_WCTYPE_H],
++AC_DEFUN_ONCE([gl_WCTYPE_H],
+ [
+   AC_REQUIRE([gl_WCTYPE_H_DEFAULTS])
+   AC_REQUIRE([AC_PROG_CC])
+@@ -62,7 +62,7 @@ AC_DEFUN([gl_WCTYPE_H],
+   fi
+   AC_SUBST([HAVE_WCTYPE_H])
+ 
+-  if test $GNULIB_OVERRIDES_WINT_T = 1; then
++  if test $GNULIBHEADERS_OVERRIDE_WINT_T = 1; then
+     REPLACE_ISWCNTRL=1
+   else
+     case "$gl_cv_func_iswcntrl_works" in
+@@ -157,24 +157,39 @@ AC_DEFUN([gl_WCTYPE_H],
+     ])
+ ])
+ 
++# gl_WCTYPE_MODULE_INDICATOR([modulename])
++# sets the shell variable that indicates the presence of the given module
++# to a C preprocessor expression that will evaluate to 1.
++# This macro invocation must not occur in macros that are AC_REQUIREd.
+ AC_DEFUN([gl_WCTYPE_MODULE_INDICATOR],
+ [
+-  dnl Use AC_REQUIRE here, so that the default settings are expanded once only.
+-  AC_REQUIRE([gl_WCTYPE_H_DEFAULTS])
++  dnl Ensure to expand the default settings once only.
++  gl_WCTYPE_H_REQUIRE_DEFAULTS
+   gl_MODULE_INDICATOR_SET_VARIABLE([$1])
+   dnl Define it also as a C macro, for the benefit of the unit tests.
+   gl_MODULE_INDICATOR_FOR_TESTS([$1])
+ ])
+ 
++# Initializes the default values for AC_SUBSTed shell variables.
++# This macro must not be AC_REQUIREd.  It must only be invoked, and only
++# outside of macros or in macros that are not AC_REQUIREd.
++AC_DEFUN([gl_WCTYPE_H_REQUIRE_DEFAULTS],
++[
++  m4_defun(GL_MODULE_INDICATOR_PREFIX[_WCTYPE_H_MODULE_INDICATOR_DEFAULTS], [
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ISWBLANK])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ISWDIGIT])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ISWXDIGIT])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WCTYPE])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_ISWCTYPE])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_WCTRANS])
++    gl_MODULE_INDICATOR_INIT_VARIABLE([GNULIB_TOWCTRANS])
++  ])
++  m4_require(GL_MODULE_INDICATOR_PREFIX[_WCTYPE_H_MODULE_INDICATOR_DEFAULTS])
++  AC_REQUIRE([gl_WCTYPE_H_DEFAULTS])
++])
++
+ AC_DEFUN([gl_WCTYPE_H_DEFAULTS],
+ [
+-  GNULIB_ISWBLANK=0;    AC_SUBST([GNULIB_ISWBLANK])
+-  GNULIB_ISWDIGIT=0;    AC_SUBST([GNULIB_ISWDIGIT])
+-  GNULIB_ISWXDIGIT=0;   AC_SUBST([GNULIB_ISWXDIGIT])
+-  GNULIB_WCTYPE=0;      AC_SUBST([GNULIB_WCTYPE])
+-  GNULIB_ISWCTYPE=0;    AC_SUBST([GNULIB_ISWCTYPE])
+-  GNULIB_WCTRANS=0;     AC_SUBST([GNULIB_WCTRANS])
+-  GNULIB_TOWCTRANS=0;   AC_SUBST([GNULIB_TOWCTRANS])
+   dnl Assume proper GNU behavior unless another module says otherwise.
+   HAVE_ISWBLANK=1;      AC_SUBST([HAVE_ISWBLANK])
+   HAVE_WCTYPE_T=1;      AC_SUBST([HAVE_WCTYPE_T])
+--- a/gnulib/m4/wint_t.m4
++++ b/gnulib/m4/wint_t.m4
+@@ -1,4 +1,4 @@
+-# wint_t.m4 serial 10
++# wint_t.m4 serial 11
+ dnl Copyright (C) 2003, 2007-2021 Free Software Foundation, Inc.
+ dnl This file is free software; the Free Software Foundation
+ dnl gives unlimited permission to copy and/or distribute it,
+@@ -34,14 +34,14 @@ AC_DEFUN([gt_TYPE_WINT_T],
+          [gl_cv_type_wint_t_large_enough=yes],
+          [gl_cv_type_wint_t_large_enough=no])])
+     if test $gl_cv_type_wint_t_large_enough = no; then
+-      GNULIB_OVERRIDES_WINT_T=1
++      GNULIBHEADERS_OVERRIDE_WINT_T=1
+     else
+-      GNULIB_OVERRIDES_WINT_T=0
++      GNULIBHEADERS_OVERRIDE_WINT_T=0
+     fi
+   else
+-    GNULIB_OVERRIDES_WINT_T=0
++    GNULIBHEADERS_OVERRIDE_WINT_T=0
+   fi
+-  AC_SUBST([GNULIB_OVERRIDES_WINT_T])
++  AC_SUBST([GNULIBHEADERS_OVERRIDE_WINT_T])
+ ])
+ 
+ dnl Prerequisites of the 'wint_t' override.
+--- /dev/null
++++ b/gnulib/m4/year2038.m4
+@@ -0,0 +1,112 @@
++# year2038.m4 serial 5
++dnl Copyright (C) 2017-2021 Free Software Foundation, Inc.
++dnl This file is free software; the Free Software Foundation
++dnl gives unlimited permission to copy and/or distribute it,
++dnl with or without modifications, as long as this notice is preserved.
++
++dnl Attempt to ensure that 'time_t' is a 64-bit type
++dnl and that the functions time(), stat(), etc. return 64-bit times.
++
++AC_DEFUN([gl_YEAR2038_EARLY],
++[
++  AC_REQUIRE([AC_CANONICAL_HOST])
++  case "$host_os" in
++    mingw*)
++      AC_DEFINE([__MINGW_USE_VC2005_COMPAT], [1],
++        [For 64-bit time_t on 32-bit mingw.])
++      ;;
++  esac
++])
++
++# gl_YEAR2038_TEST_INCLUDES
++# -------------------------
++AC_DEFUN([gl_YEAR2038_TEST_INCLUDES],
++[[
++  #include <time.h>
++  /* Check that time_t can represent 2**63 - 1 correctly.
++     We can't simply define LARGE_TIME_T to be 9223372036854775807,
++     since some C++ compilers masquerading as C compilers
++     incorrectly reject 9223372036854775807.  */
++  #define LARGE_TIME_T (((time_t) 1 << 31 << 31) - 1 + ((time_t) 1 << 31 << 31))
++  int verify_time_t_range[(LARGE_TIME_T % 2147483629 == 721
++                           && LARGE_TIME_T % 2147483647 == 1)
++                          ? 1 : -1];
++]])
++
++# gl_YEAR2038_BODY(REQUIRE-64-BIT)
++----------------------------------
++AC_DEFUN([gl_YEAR2038_BODY],
++[
++ AC_ARG_ENABLE([year2038],
++   [  --disable-year2038      omit support for timestamps past the year 2038])
++ AS_IF([test "$enable_year2038" != no],
++ [
++  dnl On many systems, time_t is already a 64-bit type.
++  dnl On those systems where time_t is still 32-bit, it requires kernel
++  dnl and libc support to make it 64-bit. For glibc 2.34 and later on Linux,
++  dnl defining _TIME_BITS=64 and _FILE_OFFSET_BITS=64 is needed on x86 and ARM.
++  dnl
++  dnl On native Windows, the system include files define types __time32_t
++  dnl and __time64_t. By default, time_t is an alias of
++  dnl   - __time32_t on 32-bit mingw,
++  dnl   - __time64_t on 64-bit mingw and on MSVC (since MSVC 8).
++  dnl But when compiling with -D__MINGW_USE_VC2005_COMPAT, time_t is an
++  dnl alias of __time64_t.
++  dnl And when compiling with -D_USE_32BIT_TIME_T, time_t is an alias of
++  dnl __time32_t.
++  AC_CACHE_CHECK([for 64-bit time_t], [gl_cv_type_time_t_64],
++    [AC_COMPILE_IFELSE(
++       [AC_LANG_SOURCE([gl_YEAR2038_TEST_INCLUDES])],
++       [gl_cv_type_time_t_64=yes], [gl_cv_type_time_t_64=no])
++    ])
++  if test "$gl_cv_type_time_t_64" = no; then
++    AC_CACHE_CHECK([for 64-bit time_t with _TIME_BITS=64],
++      [gl_cv_type_time_t_bits_macro],
++      [AC_COMPILE_IFELSE(
++         [AC_LANG_SOURCE([[#define _TIME_BITS 64
++                           #define _FILE_OFFSET_BITS 64
++                           ]gl_YEAR2038_TEST_INCLUDES])],
++         [gl_cv_type_time_t_bits_macro=yes],
++         [gl_cv_type_time_t_bits_macro=no])
++      ])
++    if test "$gl_cv_type_time_t_bits_macro" = yes; then
++      AC_DEFINE([_TIME_BITS], [64],
++        [Number of bits in a timestamp, on hosts where this is settable.])
++      dnl AC_SYS_LARGFILE also defines this; it's OK if we do too.
++      AC_DEFINE([_FILE_OFFSET_BITS], [64],
++        [Number of bits in a file offset, on hosts where this is settable.])
++      gl_cv_type_time_t_64=yes
++    fi
++  fi
++  if test $gl_cv_type_time_t_64 = no; then
++    AC_COMPILE_IFELSE(
++      [AC_LANG_SOURCE(
++         [[#ifdef _USE_32BIT_TIME_T
++             int ok;
++           #else
++             error fail
++           #endif
++         ]])],
++      [AC_MSG_FAILURE([This package requires a 64-bit 'time_t' type. Remove _USE_32BIT_TIME_T from the compiler flags.])],
++      [# If not cross-compiling and $1 says we should check,
++       # and 'touch' works with a large timestamp, then evidently 64-bit time_t
++       # is desired and supported, so fail and ask the builder to fix the
++       # problem.  Otherwise, just warn the builder.
++       m4_ifval([$1],
++         [if test $cross_compiling = no \
++             && TZ=UTC0 touch -t 210602070628.16 conftest.time 2>/dev/null; then
++            rm -f conftest.time
++            AC_MSG_FAILURE([This package requires a 64-bit 'time_t' type, which your system appears to support. You might try configuring with 'CPPFLAGS="-m64" LDFLAGS="-m64"'. To build with a 32-bit time_t anyway (not recommended), configure with '--disable-year2038'.])
++          fi])
++       if test "$gl_warned_about_64_bit_time_t" != yes; then
++         AC_MSG_WARN([This package requires a 64-bit 'time_t' type if there is any way to access timestamps outside the year range 1901-2038 on your platform. Perhaps you should configure with 'CPPFLAGS="-m64" LDFLAGS="-m64"'?])
++         gl_warned_about_64_bit_time_t=yes
++       fi
++      ])
++  fi])
++])
++
++AC_DEFUN([gl_YEAR2038],
++[
++  gl_YEAR2038_BODY([require-64-bit])
++])
diff --git a/poky/meta/recipes-extended/texinfo/texinfo_6.8.bb b/poky/meta/recipes-extended/texinfo/texinfo_6.8.bb
index e5046ff..5a7cbef 100644
--- a/poky/meta/recipes-extended/texinfo/texinfo_6.8.bb
+++ b/poky/meta/recipes-extended/texinfo/texinfo_6.8.bb
@@ -7,7 +7,7 @@
 LICENSE = "GPLv3+"
 LIC_FILES_CHKSUM = "file://COPYING;md5=1ebbd3e34237af26da5dc08a4e440464"
 
-PROVIDES_append_class-native = " texinfo-replacement-native"
+PROVIDES:append:class-native = " texinfo-replacement-native"
 
 def compress_pkg(d):
     if bb.data.inherits_class('compress_doc', d):
@@ -20,15 +20,16 @@
              return "xz"
     return ""
 
-RDEPENDS_info += "${@compress_pkg(d)}"
+RDEPENDS:info += "${@compress_pkg(d)}"
 
 DEPENDS = "zlib ncurses texinfo-replacement-native"
-DEPENDS_class-native = "zlib-native ncurses-native"
+DEPENDS:class-native = "zlib-native ncurses-native"
 
 TARGET_PATCH = "file://use_host_makedoc.patch"
-TARGET_PATCH_class-native = ""
+TARGET_PATCH:class-native = ""
 
 SRC_URI = "${GNU_MIRROR}/texinfo/${BP}.tar.gz \
+           file://0001-gnulib-Update.patch \
            file://disable-native-tools.patch \
            file://link-zip.patch \
            file://dont-depend-on-help2man.patch \
@@ -45,38 +46,38 @@
 
 EXTRA_AUTORECONF += "-I ${S}/gnulib/m4"
 
-do_configure_prepend () {
+do_configure:prepend () {
 	# autotools_do_configure updates po/Makefile.in.in, we also need
 	# update po_document.
 	cp -f ${STAGING_DATADIR_NATIVE}/gettext/po/Makefile.in.in ${S}/po_document/
 }
 
-do_compile_prepend() {
+do_compile:prepend() {
 	if [ -d tools ];then
 		oe_runmake -C tools/gnulib/lib
 	fi
 }
 
-do_install_append() {
+do_install:append() {
 	mkdir -p ${D}${datadir}/${tex_texinfo}
 	install -p -m644 ${S}/doc/texinfo.tex ${S}/doc/txi-??.tex ${D}${datadir}/${tex_texinfo}
 	sed -i -e '1s,#!.*perl,#! ${USRBINPATH}/env perl,' ${D}${bindir}/texi2any ${D}${bindir}/pod2texi
 }
 
-do_install_append_class-native() {
+do_install:append:class-native() {
 	install -m 755 info/makedoc ${D}${bindir}
 }
 
 PACKAGES += "info info-doc"
 
-FILES_info = "${bindir}/info ${bindir}/infokey ${bindir}/install-info"
-FILES_info-doc = "${infodir}/info.info* ${infodir}/dir ${infodir}/info-*.info* \
+FILES:info = "${bindir}/info ${bindir}/infokey ${bindir}/install-info"
+FILES:info-doc = "${infodir}/info.info* ${infodir}/dir ${infodir}/info-*.info* \
                   ${mandir}/man1/info.1* ${mandir}/man5/info.5* \
                   ${mandir}/man1/infokey.1* ${mandir}/man1/install-info.1*"
 
-FILES_${PN} = "${bindir}/makeinfo ${bindir}/texi* ${bindir}/pdftexi2dvi ${bindir}/pod2texi ${datadir}/texinfo"
-RDEPENDS_${PN} = "perl"
-FILES_${PN}-doc = "${infodir}/texinfo* \
+FILES:${PN} = "${bindir}/makeinfo ${bindir}/texi* ${bindir}/pdftexi2dvi ${bindir}/pod2texi ${datadir}/texinfo"
+RDEPENDS:${PN} = "perl"
+FILES:${PN}-doc = "${infodir}/texinfo* \
                    ${datadir}/${tex_texinfo} \
                    ${mandir}/man1 ${mandir}/man5"
 
@@ -84,6 +85,6 @@
 # but the code will test for it and if not found use Locale::gettext_pp instead.
 # However, this causes a file dependency on perl(Locale::gettext_xs) to be
 # generated, which must be satisfied.
-RPROVIDES_${PN} += "perl(Locale::gettext_xs)"
+RPROVIDES:${PN} += "perl(Locale::gettext_xs)"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-extended/time/time_1.9.bb b/poky/meta/recipes-extended/time/time_1.9.bb
index e2b084c..abd00f0 100644
--- a/poky/meta/recipes-extended/time/time_1.9.bb
+++ b/poky/meta/recipes-extended/time/time_1.9.bb
@@ -8,7 +8,7 @@
 
 inherit texinfo update-alternatives
 
-ALTERNATIVE_${PN} = "time"
+ALTERNATIVE:${PN} = "time"
 ALTERNATIVE_PRIORITY = "100"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-extended/timezone/tzdata.bb b/poky/meta/recipes-extended/timezone/tzdata.bb
index 09145e1..c2b0199 100644
--- a/poky/meta/recipes-extended/timezone/tzdata.bb
+++ b/poky/meta/recipes-extended/timezone/tzdata.bb
@@ -4,7 +4,7 @@
 
 inherit allarch
 
-RCONFLICTS_${PN} = "timezones timezone-africa timezone-america timezone-antarctica \
+RCONFLICTS:${PN} = "timezones timezone-africa timezone-america timezone-antarctica \
              timezone-arctic timezone-asia timezone-atlantic \
              timezone-australia timezone-europe timezone-indian \
              timezone-iso3166.tab timezone-pacific timezone-zone.tab"
@@ -59,7 +59,7 @@
         chown -R root:root ${D}
 }
 
-pkg_postinst_${PN} () {
+pkg_postinst:${PN} () {
 	etc_lt="$D${sysconfdir}/localtime"
 	src="$D${sysconfdir}/timezone"
 
@@ -88,47 +88,47 @@
     tzdata-atlantic tzdata-australia tzdata-europe tzdata-pacific"
 PACKAGES = "${TZ_PACKAGES} ${PN}"
 
-FILES_tzdata-africa += "${datadir}/zoneinfo/Africa/*"
-RPROVIDES_tzdata-africa = "tzdata-africa"
+FILES:tzdata-africa += "${datadir}/zoneinfo/Africa/*"
+RPROVIDES:tzdata-africa = "tzdata-africa"
 
-FILES_tzdata-americas += "${datadir}/zoneinfo/America/*  \
+FILES:tzdata-americas += "${datadir}/zoneinfo/America/*  \
                 ${datadir}/zoneinfo/US/*                \
                 ${datadir}/zoneinfo/Brazil/*            \
                 ${datadir}/zoneinfo/Canada/*            \
                 ${datadir}/zoneinfo/Mexico/*            \
                 ${datadir}/zoneinfo/Chile/*"
-RPROVIDES_tzdata-americas = "tzdata-americas"
+RPROVIDES:tzdata-americas = "tzdata-americas"
 
-FILES_tzdata-antarctica += "${datadir}/zoneinfo/Antarctica/*"
-RPROVIDES_tzdata-antarctica = "tzdata-antarctica"
+FILES:tzdata-antarctica += "${datadir}/zoneinfo/Antarctica/*"
+RPROVIDES:tzdata-antarctica = "tzdata-antarctica"
 
-FILES_tzdata-arctic += "${datadir}/zoneinfo/Arctic/*"
-RPROVIDES_tzdata-arctic = "tzdata-arctic"
+FILES:tzdata-arctic += "${datadir}/zoneinfo/Arctic/*"
+RPROVIDES:tzdata-arctic = "tzdata-arctic"
 
-FILES_tzdata-asia += "${datadir}/zoneinfo/Asia/*        \
+FILES:tzdata-asia += "${datadir}/zoneinfo/Asia/*        \
                 ${datadir}/zoneinfo/Indian/*            \
                 ${datadir}/zoneinfo/Mideast/*"
-RPROVIDES_tzdata-asia = "tzdata-asia"
+RPROVIDES:tzdata-asia = "tzdata-asia"
 
-FILES_tzdata-atlantic += "${datadir}/zoneinfo/Atlantic/*"
-RPROVIDES_tzdata-atlantic = "tzdata-atlantic"
+FILES:tzdata-atlantic += "${datadir}/zoneinfo/Atlantic/*"
+RPROVIDES:tzdata-atlantic = "tzdata-atlantic"
 
-FILES_tzdata-australia += "${datadir}/zoneinfo/Australia/*"
-RPROVIDES_tzdata-australia = "tzdata-australia"
+FILES:tzdata-australia += "${datadir}/zoneinfo/Australia/*"
+RPROVIDES:tzdata-australia = "tzdata-australia"
 
-FILES_tzdata-europe += "${datadir}/zoneinfo/Europe/*"
-RPROVIDES_tzdata-europe = "tzdata-europe"
+FILES:tzdata-europe += "${datadir}/zoneinfo/Europe/*"
+RPROVIDES:tzdata-europe = "tzdata-europe"
 
-FILES_tzdata-pacific += "${datadir}/zoneinfo/Pacific/*"
-RPROVIDES_tzdata-pacific = "tzdata-pacific"
+FILES:tzdata-pacific += "${datadir}/zoneinfo/Pacific/*"
+RPROVIDES:tzdata-pacific = "tzdata-pacific"
 
-FILES_tzdata-posix += "${datadir}/zoneinfo/posix/*"
-RPROVIDES_tzdata-posix = "tzdata-posix"
+FILES:tzdata-posix += "${datadir}/zoneinfo/posix/*"
+RPROVIDES:tzdata-posix = "tzdata-posix"
 
-FILES_tzdata-right += "${datadir}/zoneinfo/right/*"
-RPROVIDES_tzdata-right = "tzdata-right"
+FILES:tzdata-right += "${datadir}/zoneinfo/right/*"
+RPROVIDES:tzdata-right = "tzdata-right"
 
-FILES_tzdata-misc += "${datadir}/zoneinfo/Cuba           \
+FILES:tzdata-misc += "${datadir}/zoneinfo/Cuba           \
                 ${datadir}/zoneinfo/Egypt                \
                 ${datadir}/zoneinfo/Eire                 \
                 ${datadir}/zoneinfo/Factory              \
@@ -146,9 +146,9 @@
                 ${datadir}/zoneinfo/Portugal             \
                 ${datadir}/zoneinfo/Singapore            \
                 ${datadir}/zoneinfo/Turkey"
-RPROVIDES_tzdata-misc = "tzdata-misc"
+RPROVIDES:tzdata-misc = "tzdata-misc"
 
-FILES_tzdata-core += " \
+FILES:tzdata-core += " \
                 ${sysconfdir}/localtime                  \
                 ${sysconfdir}/timezone                   \
                 ${datadir}/zoneinfo/leapseconds          \
@@ -208,7 +208,7 @@
                 ${datadir}/zoneinfo/iso3166.tab          \
                 ${datadir}/zoneinfo/Etc/*"
 
-CONFFILES_tzdata-core = "${sysconfdir}/localtime ${sysconfdir}/timezone"
+CONFFILES:tzdata-core = "${sysconfdir}/localtime ${sysconfdir}/timezone"
 
-ALLOW_EMPTY_${PN} = "1"
-RDEPENDS_${PN} = "${TZ_PACKAGES}"
+ALLOW_EMPTY:${PN} = "1"
+RDEPENDS:${PN} = "${TZ_PACKAGES}"
diff --git a/poky/meta/recipes-extended/unzip/unzip_6.0.bb b/poky/meta/recipes-extended/unzip/unzip_6.0.bb
index 40f0346..0bc6abc 100644
--- a/poky/meta/recipes-extended/unzip/unzip_6.0.bb
+++ b/poky/meta/recipes-extended/unzip/unzip_6.0.bb
@@ -49,7 +49,7 @@
                 'CF_NOOPT=-I. -Ibzip2 -DUNIX ${CFLAGS}'"
 
 export LD = "${CC}"
-LD_class-native = "${CC}"
+LD:class-native = "${CC}"
 
 do_compile() {
         oe_runmake -f unix/Makefile generic
@@ -66,7 +66,7 @@
 
 ALTERNATIVE_PRIORITY = "100"
 
-ALTERNATIVE_${PN} = "unzip"
+ALTERNATIVE:${PN} = "unzip"
 ALTERNATIVE_LINK_NAME[unzip] = "${bindir}/unzip"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-extended/watchdog/watchdog_5.16.bb b/poky/meta/recipes-extended/watchdog/watchdog_5.16.bb
index 19e9475..66373c9 100644
--- a/poky/meta/recipes-extended/watchdog/watchdog_5.16.bb
+++ b/poky/meta/recipes-extended/watchdog/watchdog_5.16.bb
@@ -36,20 +36,20 @@
 
 INITSCRIPT_PACKAGES = "${PN} ${PN}-keepalive"
 
-INITSCRIPT_NAME_${PN} = "watchdog"
-INITSCRIPT_PARAMS_${PN} = "start 25 1 2 3 4 5 . stop 85 0 6 ."
+INITSCRIPT_NAME:${PN} = "watchdog"
+INITSCRIPT_PARAMS:${PN} = "start 25 1 2 3 4 5 . stop 85 0 6 ."
 
-INITSCRIPT_NAME_${PN}-keepalive = "wd_keepalive"
-INITSCRIPT_PARAMS_${PN}-keepalive = "start 25 1 2 3 4 5 . stop 85 0 6 ."
+INITSCRIPT_NAME:${PN}-keepalive = "wd_keepalive"
+INITSCRIPT_PARAMS:${PN}-keepalive = "start 25 1 2 3 4 5 . stop 85 0 6 ."
 
 SYSTEMD_PACKAGES = "${PN} ${PN}-keepalive"
-SYSTEMD_SERVICE_${PN} = "watchdog.service"
-SYSTEMD_SERVICE_${PN}-keepalive = "wd_keepalive.service"
+SYSTEMD_SERVICE:${PN} = "watchdog.service"
+SYSTEMD_SERVICE:${PN}-keepalive = "wd_keepalive.service"
 # When using systemd, consider making use of internal watchdog support of systemd.
 # See RuntimeWatchdogSec in /etc/systemd/system.conf.
 SYSTEMD_AUTO_ENABLE = "disable"
 
-do_install_append() {
+do_install:append() {
 	install -d ${D}${systemd_system_unitdir}
 	install -m 0644 ${S}/debian/watchdog.service ${D}${systemd_system_unitdir}
 	install -m 0644 ${S}/debian/wd_keepalive.service ${D}${systemd_system_unitdir}
@@ -63,15 +63,15 @@
 
 PACKAGES =+ "${PN}-keepalive"
 
-FILES_${PN}-keepalive = " \
+FILES:${PN}-keepalive = " \
     ${sysconfdir}/init.d/wd_keepalive \
     ${systemd_system_unitdir}/wd_keepalive.service \
     ${sbindir}/wd_keepalive \
 "
 
-RDEPENDS_${PN} += "${PN}-config"
-RRECOMMENDS_${PN} += "kernel-module-softdog"
+RDEPENDS:${PN} += "${PN}-config"
+RRECOMMENDS:${PN} += "kernel-module-softdog"
 
-RDEPENDS_${PN}-keepalive += "${PN}-config"
-RCONFLICTS_${PN}-keepalive += "${PN}"
-RRECOMMENDS_${PN}-keepalive += "kernel-module-softdog"
+RDEPENDS:${PN}-keepalive += "${PN}-config"
+RCONFLICTS:${PN}-keepalive += "${PN}"
+RRECOMMENDS:${PN}-keepalive += "kernel-module-softdog"
diff --git a/poky/meta/recipes-extended/wget/wget.inc b/poky/meta/recipes-extended/wget/wget.inc
index 2338328..cd7290b 100644
--- a/poky/meta/recipes-extended/wget/wget.inc
+++ b/poky/meta/recipes-extended/wget/wget.inc
@@ -17,11 +17,11 @@
 EXTRA_OEMAKE += 'TOOLCHAIN_OPTIONS="${TOOLCHAIN_OPTIONS}" \
                  DEBUG_PREFIX_MAP="${DEBUG_PREFIX_MAP}"'
 
-ALTERNATIVE_${PN} = "wget"
-ALTERNATIVE_${PN}_class-nativesdk = ""
+ALTERNATIVE:${PN} = "wget"
+ALTERNATIVE:${PN}:class-nativesdk = ""
 ALTERNATIVE_PRIORITY = "100"
 
-RRECOMMENDS_${PN} += "ca-certificates"
+RRECOMMENDS:${PN} += "ca-certificates"
 
 BBCLASSEXTEND = "nativesdk"
 
diff --git a/poky/meta/recipes-extended/which/which_2.21.bb b/poky/meta/recipes-extended/which/which_2.21.bb
index 1da69c5..d3c3f69 100644
--- a/poky/meta/recipes-extended/which/which_2.21.bb
+++ b/poky/meta/recipes-extended/which/which_2.21.bb
@@ -24,14 +24,14 @@
 SRC_URI[md5sum] = "097ff1a324ae02e0a3b0369f07a7544a"
 SRC_URI[sha256sum] = "f4a245b94124b377d8b49646bf421f9155d36aa7614b6ebf83705d3ffc76eaad"
 
-do_configure_prepend() {
+do_configure:prepend() {
 	sed -i -e 's%@ACLOCAL_CWFLAGS@%-I ${STAGING_DIR_NATIVE}/usr/share/cwautomacros/m4%g' ${S}/Makefile.am ${S}/tilde/Makefile.am
 }
 
-ALTERNATIVE_${PN} = "which"
+ALTERNATIVE:${PN} = "which"
 ALTERNATIVE_PRIORITY = "100"
 
-ALTERNATIVE_${PN}-doc = "which.1"
+ALTERNATIVE:${PN}-doc = "which.1"
 ALTERNATIVE_LINK_NAME[which.1] = "${mandir}/man1/which.1"
 
 BBCLASSEXTEND = "nativesdk"
diff --git a/poky/meta/recipes-extended/xdg-utils/xdg-utils_1.1.3.bb b/poky/meta/recipes-extended/xdg-utils/xdg-utils_1.1.3.bb
index d371c5c..108e7b8 100644
--- a/poky/meta/recipes-extended/xdg-utils/xdg-utils_1.1.3.bb
+++ b/poky/meta/recipes-extended/xdg-utils/xdg-utils_1.1.3.bb
@@ -34,4 +34,4 @@
 REQUIRED_DISTRO_FEATURES = "x11"
 
 DEPENDS = "xmlto-native libxslt-native"
-RDEPENDS_${PN} += "xprop"
+RDEPENDS:${PN} += "xprop"
diff --git a/poky/meta/recipes-extended/xinetd/xinetd_2.3.15.4.bb b/poky/meta/recipes-extended/xinetd/xinetd_2.3.15.4.bb
index 69d5b2f..e6ef5cf 100644
--- a/poky/meta/recipes-extended/xinetd/xinetd_2.3.15.4.bb
+++ b/poky/meta/recipes-extended/xinetd/xinetd_2.3.15.4.bb
@@ -24,7 +24,7 @@
 
 inherit autotools update-rc.d systemd pkgconfig
 
-SYSTEMD_SERVICE_${PN} = "xinetd.service"
+SYSTEMD_SERVICE:${PN} = "xinetd.service"
 
 INITSCRIPT_NAME = "xinetd"
 INITSCRIPT_PARAMS = "defaults"
@@ -32,9 +32,9 @@
 PACKAGECONFIG ??= "tcp-wrappers"
 PACKAGECONFIG[tcp-wrappers] = "--with-libwrap,,tcp-wrappers"
 
-CONFFILES_${PN} = "${sysconfdir}/xinetd.conf"
+CONFFILES:${PN} = "${sysconfdir}/xinetd.conf"
 
-do_install_append() {
+do_install:append() {
        install -d "${D}${sysconfdir}/init.d"
        install -d "${D}${sysconfdir}/default"
        install -m 755 "${WORKDIR}/xinetd.init" "${D}${sysconfdir}/init.d/xinetd"
@@ -48,4 +48,4 @@
               ${D}${systemd_unitdir}/system/xinetd.service
 }
 
-RDEPENDS_${PN} += "perl"
+RDEPENDS:${PN} += "perl"
diff --git a/poky/meta/recipes-extended/xz/xz_5.2.5.bb b/poky/meta/recipes-extended/xz/xz_5.2.5.bb
index f5f5c31..8021ebd 100644
--- a/poky/meta/recipes-extended/xz/xz_5.2.5.bb
+++ b/poky/meta/recipes-extended/xz/xz_5.2.5.bb
@@ -8,13 +8,13 @@
 # and the LGPL bits are under lib/, which appears to be used for libgnu, which
 # appears to be used for DOS builds. So we're left with GPLv2+ and PD.
 LICENSE = "GPLv2+ & GPL-3.0-with-autoconf-exception & LGPLv2.1+ & PD"
-LICENSE_${PN} = "GPLv2+"
-LICENSE_${PN}-dev = "GPLv2+"
-LICENSE_${PN}-staticdev = "GPLv2+"
-LICENSE_${PN}-doc = "GPLv2+"
-LICENSE_${PN}-dbg = "GPLv2+"
-LICENSE_${PN}-locale = "GPLv2+"
-LICENSE_liblzma = "PD"
+LICENSE:${PN} = "GPLv2+"
+LICENSE:${PN}-dev = "GPLv2+"
+LICENSE:${PN}-staticdev = "GPLv2+"
+LICENSE:${PN}-doc = "GPLv2+"
+LICENSE:${PN}-dbg = "GPLv2+"
+LICENSE:${PN}-locale = "GPLv2+"
+LICENSE:liblzma = "PD"
 
 LIC_FILES_CHKSUM = "file://COPYING;md5=97d554a32881fee0aa283d96e47cb24a \
                     file://COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
@@ -34,11 +34,11 @@
 
 PACKAGES =+ "liblzma"
 
-FILES_liblzma = "${libdir}/liblzma*${SOLIBS}"
+FILES:liblzma = "${libdir}/liblzma*${SOLIBS}"
 
 inherit update-alternatives
 ALTERNATIVE_PRIORITY = "100"
-ALTERNATIVE_${PN} = "xz xzcat unxz \
+ALTERNATIVE:${PN} = "xz xzcat unxz \
                      lzma lzcat unlzma"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-extended/zstd/zstd_1.5.0.bb b/poky/meta/recipes-extended/zstd/zstd_1.5.0.bb
index 3786058..978812f 100644
--- a/poky/meta/recipes-extended/zstd/zstd_1.5.0.bb
+++ b/poky/meta/recipes-extended/zstd/zstd_1.5.0.bb
@@ -17,6 +17,8 @@
 SRCREV = "a488ba114ec17ea1054b9057c26a046fc122b3b6"
 UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>\d+(\.\d+)+)"
 
+CVE_PRODUCT = "zstandard"
+
 S = "${WORKDIR}/git"
 
 PACKAGECONFIG ??= ""
diff --git a/poky/meta/recipes-gnome/epiphany/epiphany_40.2.bb b/poky/meta/recipes-gnome/epiphany/epiphany_40.2.bb
index abd4ad0..a7ce162 100644
--- a/poky/meta/recipes-gnome/epiphany/epiphany_40.2.bb
+++ b/poky/meta/recipes-gnome/epiphany/epiphany_40.2.bb
@@ -25,5 +25,5 @@
 # Developer mode enables debugging
 PACKAGECONFIG[developer-mode] = "-Ddeveloper_mode=true,-Ddeveloper_mode=false"
 
-FILES_${PN} += "${datadir}/dbus-1 ${datadir}/gnome-shell/search-providers ${datadir}/metainfo"
-RDEPENDS_${PN} = "iso-codes adwaita-icon-theme gsettings-desktop-schemas"
+FILES:${PN} += "${datadir}/dbus-1 ${datadir}/gnome-shell/search-providers ${datadir}/metainfo"
+RDEPENDS:${PN} = "iso-codes adwaita-icon-theme gsettings-desktop-schemas"
diff --git a/poky/meta/recipes-gnome/gcr/gcr_3.40.0.bb b/poky/meta/recipes-gnome/gcr/gcr_3.40.0.bb
index 14072ef..a05e753 100644
--- a/poky/meta/recipes-gnome/gcr/gcr_3.40.0.bb
+++ b/poky/meta/recipes-gnome/gcr/gcr_3.40.0.bb
@@ -24,18 +24,18 @@
 PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'gtk', '', d)}"
 PACKAGECONFIG[gtk] = "-Dgtk=true,-Dgtk=false,gtk+3"
 
-FILES_${PN} += " \
+FILES:${PN} += " \
     ${datadir}/dbus-1 \
     ${datadir}/gcr-3 \
 "
 
 # http://errors.yoctoproject.org/Errors/Details/20229/
-ARM_INSTRUCTION_SET_armv4 = "arm"
-ARM_INSTRUCTION_SET_armv5 = "arm"
-ARM_INSTRUCTION_SET_armv6 = "arm"
+ARM_INSTRUCTION_SET:armv4 = "arm"
+ARM_INSTRUCTION_SET:armv5 = "arm"
+ARM_INSTRUCTION_SET:armv6 = "arm"
 
 EXTRA_OEMESON += "--cross-file ${WORKDIR}/meson-${PN}.cross"
-do_write_config_append() {
+do_write_config:append() {
     cat >${WORKDIR}/meson-${PN}.cross <<EOF
 [binaries]
 gpg2 = '${bindir}/gpg2'
diff --git a/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.42.6.bb b/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.42.6.bb
index 50d58ef..21816ab 100644
--- a/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.42.6.bb
+++ b/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.42.6.bb
@@ -13,7 +13,7 @@
 SECTION = "libs"
 
 DEPENDS = "glib-2.0 gdk-pixbuf-native shared-mime-info"
-DEPENDS_remove_class-native = "gdk-pixbuf-native"
+DEPENDS:remove:class-native = "gdk-pixbuf-native"
 
 MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}"
 
@@ -37,34 +37,34 @@
 
 PACKAGECONFIG = "${GDK_PIXBUF_LOADERS} \
                  ${@bb.utils.contains('PTEST_ENABLED', '1', 'tests', '', d)}"
-PACKAGECONFIG_class-native = "${GDK_PIXBUF_LOADERS}"
+PACKAGECONFIG:class-native = "${GDK_PIXBUF_LOADERS}"
 
 PACKAGECONFIG[png] = "-Dpng=true,-Dpng=false,libpng"
 PACKAGECONFIG[jpeg] = "-Djpeg=true,-Djpeg=false,jpeg"
 PACKAGECONFIG[tiff] = "-Dtiff=true,-Dtiff=false,tiff"
 PACKAGECONFIG[tests] = "-Dinstalled_tests=true,-Dinstalled_tests=false"
 
-EXTRA_OEMESON_class-target = " \
+EXTRA_OEMESON:class-target = " \
     -Duse_prebuilt_tools=true \
 "
 
-EXTRA_OEMESON_class-nativesdk = " \
+EXTRA_OEMESON:class-nativesdk = " \
     -Duse_prebuilt_tools=true \
 "
 
 PACKAGES =+ "${PN}-xlib"
 
 # For GIO image type sniffing
-RDEPENDS_${PN} = "shared-mime-info"
+RDEPENDS:${PN} = "shared-mime-info"
 
-FILES_${PN}-xlib = "${libdir}/*pixbuf_xlib*${SOLIBS}"
-ALLOW_EMPTY_${PN}-xlib = "1"
+FILES:${PN}-xlib = "${libdir}/*pixbuf_xlib*${SOLIBS}"
+ALLOW_EMPTY:${PN}-xlib = "1"
 
-FILES_${PN} += "${libdir}/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders"
+FILES:${PN} += "${libdir}/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders"
 
-FILES_${PN}-bin += "${datadir}/thumbnailers/gdk-pixbuf-thumbnailer.thumbnailer"
+FILES:${PN}-bin += "${datadir}/thumbnailers/gdk-pixbuf-thumbnailer.thumbnailer"
 
-FILES_${PN}-dev += " \
+FILES:${PN}-dev += " \
 	${bindir}/gdk-pixbuf-csource \
 	${bindir}/gdk-pixbuf-pixdata \
         ${bindir}/gdk-pixbuf-print-mime-types \
@@ -73,9 +73,9 @@
 "
 
 PACKAGES_DYNAMIC += "^gdk-pixbuf-loader-.*"
-PACKAGES_DYNAMIC_class-native = ""
+PACKAGES_DYNAMIC:class-native = ""
 
-python populate_packages_prepend () {
+python populate_packages:prepend () {
     postinst_pixbufloader = d.getVar("postinst_pixbufloader")
 
     loaders_root = d.expand('${libdir}/gdk-pixbuf-2.0/${LIBV}/loaders')
@@ -85,10 +85,10 @@
 
     # The test suite exercises all the loaders, so ensure they are all
     # dependencies of the ptest package.
-    d.appendVar("RDEPENDS_%s-ptest" % d.getVar('PN'), " " + packages)
+    d.appendVar("RDEPENDS:%s-ptest" % d.getVar('PN'), " " + packages)
 }
 
-do_install_append() {
+do_install:append() {
 	# Copy gdk-pixbuf-query-loaders into libdir so it is always available
 	# in multilib builds.
 	cp ${D}/${bindir}/gdk-pixbuf-query-loaders ${D}/${libdir}/gdk-pixbuf-2.0/
@@ -100,7 +100,7 @@
 	rm ${D}/${datadir}/installed-tests/gdk-pixbuf/pixbuf-randomly-modified.test
 }
 
-do_install_append_class-native() {
+do_install:append:class-native() {
 	find ${D}${libdir} -name "libpixbufloader-*.la" -exec rm \{\} \;
 
 	create_wrapper ${D}/${bindir}/gdk-pixbuf-csource \
diff --git a/poky/meta/recipes-gnome/gi-docgen/gi-docgen_git.bb b/poky/meta/recipes-gnome/gi-docgen/gi-docgen_git.bb
index b6721dc..8f33bec 100644
--- a/poky/meta/recipes-gnome/gi-docgen/gi-docgen_git.bb
+++ b/poky/meta/recipes-gnome/gi-docgen/gi-docgen_git.bb
@@ -17,6 +17,6 @@
 
 inherit setuptools3
 
-RDEPENDS_${PN} += "python3-asyncio python3-core python3-jinja2 python3-json python3-markdown python3-markupsafe python3-pygments python3-toml python3-typogrify python3-xml"
+RDEPENDS:${PN} += "python3-asyncio python3-core python3-jinja2 python3-json python3-markdown python3-markupsafe python3-pygments python3-toml python3-typogrify python3-xml"
 
 BBCLASSEXTEND = "native"
diff --git a/poky/meta/recipes-gnome/gnome/adwaita-icon-theme_3.34.3.bb b/poky/meta/recipes-gnome/gnome/adwaita-icon-theme_3.34.3.bb
index 61927c0..f98f20c 100644
--- a/poky/meta/recipes-gnome/gnome/adwaita-icon-theme_3.34.3.bb
+++ b/poky/meta/recipes-gnome/gnome/adwaita-icon-theme_3.34.3.bb
@@ -23,21 +23,21 @@
 
 PACKAGES = "${PN}-cursors ${PN}-symbolic-hires ${PN}-symbolic ${PN}-hires ${PN}"
 
-RREPLACES_${PN} = "gnome-icon-theme"
-RCONFLICTS_${PN} = "gnome-icon-theme"
-RPROVIDES_${PN} = "gnome-icon-theme"
+RREPLACES:${PN} = "gnome-icon-theme"
+RCONFLICTS:${PN} = "gnome-icon-theme"
+RPROVIDES:${PN} = "gnome-icon-theme"
 
-FILES_${PN}-cursors = "${prefix}/share/icons/Adwaita/cursors/"
-FILES_${PN}-symbolic-hires = "${prefix}/share/icons/Adwaita/96x96/*/*.symbolic.png \
+FILES:${PN}-cursors = "${prefix}/share/icons/Adwaita/cursors/"
+FILES:${PN}-symbolic-hires = "${prefix}/share/icons/Adwaita/96x96/*/*.symbolic.png \
                               ${prefix}/share/icons/Adwaita/64x64/*/*.symbolic.png \
                               ${prefix}/share/icons/Adwaita/48x48/*/*.symbolic.png \
                               ${prefix}/share/icons/Adwaita/32x32/*/*.symbolic.png"
-FILES_${PN}-symbolic = "${prefix}/share/icons/Adwaita/16x16/*/*.symbolic.png \
+FILES:${PN}-symbolic = "${prefix}/share/icons/Adwaita/16x16/*/*.symbolic.png \
                         ${prefix}/share/icons/Adwaita/24x24/*/*.symbolic.png \
                         ${prefix}/share/icons/Adwaita/scalable/*/*-symbolic*.svg"
-FILES_${PN}-hires = "${prefix}/share/icons/Adwaita/256x256/ \
+FILES:${PN}-hires = "${prefix}/share/icons/Adwaita/256x256/ \
                      ${prefix}/share/icons/Adwaita/512x512/"
-FILES_${PN} = "${prefix}/share/icons/Adwaita/ \
+FILES:${PN} = "${prefix}/share/icons/Adwaita/ \
                ${prefix}/share/pkgconfig/adwaita-icon-theme.pc"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-gnome/gnome/adwaita-icon-theme_3.38.0.bb b/poky/meta/recipes-gnome/gnome/adwaita-icon-theme_3.38.0.bb
index 672fbd2..f9e52ca 100644
--- a/poky/meta/recipes-gnome/gnome/adwaita-icon-theme_3.38.0.bb
+++ b/poky/meta/recipes-gnome/gnome/adwaita-icon-theme_3.38.0.bb
@@ -24,21 +24,21 @@
 
 PACKAGES = "${PN}-cursors ${PN}-symbolic-hires ${PN}-symbolic ${PN}-hires ${PN}"
 
-RREPLACES_${PN} = "gnome-icon-theme"
-RCONFLICTS_${PN} = "gnome-icon-theme"
-RPROVIDES_${PN} = "gnome-icon-theme"
+RREPLACES:${PN} = "gnome-icon-theme"
+RCONFLICTS:${PN} = "gnome-icon-theme"
+RPROVIDES:${PN} = "gnome-icon-theme"
 
-FILES_${PN}-cursors = "${prefix}/share/icons/Adwaita/cursors/"
-FILES_${PN}-symbolic-hires = "${prefix}/share/icons/Adwaita/96x96/*/*.symbolic.png \
+FILES:${PN}-cursors = "${prefix}/share/icons/Adwaita/cursors/"
+FILES:${PN}-symbolic-hires = "${prefix}/share/icons/Adwaita/96x96/*/*.symbolic.png \
                               ${prefix}/share/icons/Adwaita/64x64/*/*.symbolic.png \
                               ${prefix}/share/icons/Adwaita/48x48/*/*.symbolic.png \
                               ${prefix}/share/icons/Adwaita/32x32/*/*.symbolic.png"
-FILES_${PN}-symbolic = "${prefix}/share/icons/Adwaita/16x16/*/*.symbolic.png \
+FILES:${PN}-symbolic = "${prefix}/share/icons/Adwaita/16x16/*/*.symbolic.png \
                         ${prefix}/share/icons/Adwaita/24x24/*/*.symbolic.png \
                         ${prefix}/share/icons/Adwaita/scalable/*/*-symbolic*.svg"
-FILES_${PN}-hires = "${prefix}/share/icons/Adwaita/256x256/ \
+FILES:${PN}-hires = "${prefix}/share/icons/Adwaita/256x256/ \
                      ${prefix}/share/icons/Adwaita/512x512/"
-FILES_${PN} = "${prefix}/share/icons/Adwaita/ \
+FILES:${PN} = "${prefix}/share/icons/Adwaita/ \
                ${prefix}/share/pkgconfig/adwaita-icon-theme.pc"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-gnome/gnome/gconf_3.2.6.bb b/poky/meta/recipes-gnome/gnome/gconf_3.2.6.bb
index ade9364..dd760b9 100644
--- a/poky/meta/recipes-gnome/gnome/gconf_3.2.6.bb
+++ b/poky/meta/recipes-gnome/gnome/gconf_3.2.6.bb
@@ -28,12 +28,12 @@
 
 PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'polkit', d)}"
 # We really don't want Polkit for native
-PACKAGECONFIG_class-native = ""
+PACKAGECONFIG:class-native = ""
 
 PACKAGECONFIG[polkit] = "--enable-defaults-service,--disable-defaults-service,polkit"
 PACKAGECONFIG[debug] = "--enable-debug=yes, --enable-debug=minimum"
 
-do_install_append() {
+do_install:append() {
 	# this directory need to be created to avoid an Error 256 at gdm launch
 	install -d ${D}${sysconfdir}/gconf/gconf.xml.system
 
@@ -42,19 +42,19 @@
 	rm -f ${D}${libdir}/gio/*/*.*a
 }
 
-do_install_append_class-native() {
+do_install:append:class-native() {
 	create_wrapper ${D}/${bindir}/gconftool-2 \
 		GCONF_BACKEND_DIR=${STAGING_LIBDIR_NATIVE}/GConf/2
 }
 
-FILES_${PN} += "${libdir}/GConf/* \
+FILES:${PN} += "${libdir}/GConf/* \
                 ${libdir}/gio/*/*.so \
                 ${datadir}/polkit* \
                 ${datadir}/dbus-1/services/*.service \
                 ${datadir}/dbus-1/system-services/*.service \
                "
-RDEPENDS_${PN} = "python3-xml"
+RDEPENDS:${PN} = "python3-xml"
 
-FILES_${PN}-dev += "${datadir}/sgml/gconf/gconf-1.0.dtd"
+FILES:${PN}-dev += "${datadir}/sgml/gconf/gconf-1.0.dtd"
 
 BBCLASSEXTEND = "native"
diff --git a/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.68.0.bb b/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.68.0.bb
index 048deab..cf1349f 100644
--- a/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.68.0.bb
+++ b/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.68.0.bb
@@ -19,7 +19,7 @@
 
 SRC_URI[sha256sum] = "d229242481a201b84a0c66716de1752bca41db4133672cfcfb37c93eb6e54a27"
 
-SRC_URI_append_class-native = " file://0001-Relocate-the-repository-directory-for-native-builds.patch"
+SRC_URI:append:class-native = " file://0001-Relocate-the-repository-directory-for-native-builds.patch"
 
 inherit meson pkgconfig gtk-doc python3native qemu gobject-introspection-data upstream-version-is-even multilib_script
 
@@ -34,7 +34,7 @@
 # native versions of its own tools during build.
 # Also prelink-rtld is used to find out library dependencies of introspection binaries
 # (standard ldd doesn't work when cross-compiling).
-DEPENDS_append_class-target = " gobject-introspection-native qemu-native prelink-native"
+DEPENDS:append:class-target = " gobject-introspection-native qemu-native prelink-native"
 
 # needed for writing out the qemu wrapper script
 export STAGING_DIR_HOST
@@ -45,7 +45,7 @@
 
 # Configure target build to use native tools of itself and to use a qemu wrapper
 # and optionally to generate introspection data
-EXTRA_OEMESON_class-target = " \
+EXTRA_OEMESON:class-target = " \
     -Dgi_cross_use_prebuilt_gi=true \
     -Dgi_cross_binary_wrapper=${B}/g-ir-scanner-qemuwrapper \
     -Dgi_cross_ldd_wrapper=${B}/g-ir-scanner-lddwrapper \
@@ -61,14 +61,14 @@
     oe.utils.write_ld_so_conf(d)
 }
 
-do_configure_prepend_class-native() {
+do_configure:prepend:class-native() {
         # Tweak the native python scripts so that they don't refer to the
         # full path of native python binary (the solution is taken from glib-2.0 recipe)
         # This removes the risk of exceeding Linux kernel's shebang line limit (128 bytes)
         sed -i -e '1s,#!.*,#!${USRBINPATH}/env python3,' ${S}/tools/g-ir-tool-template.in
 }
 
-do_configure_prepend_class-target() {
+do_configure:prepend:class-target() {
         # Write out a qemu wrapper that will be given to gi-scanner so that it
         # can run target helper binaries through that.
         qemu_binary="${@qemu_wrapper_cmdline(d, '$STAGING_DIR_HOST', ['\\$GIR_EXTRA_LIBS_PATH','.libs','$STAGING_DIR_HOST/${libdir}','$STAGING_DIR_HOST/${base_libdir}'])}"
@@ -121,7 +121,7 @@
         sed -i -e '1s,#!.*,#!${USRBINPATH}/env python3,' ${S}/tools/g-ir-tool-template.in
 }
 
-do_compile_prepend() {
+do_compile:prepend() {
         # This prevents g-ir-scanner from writing cache data to $HOME
         export GI_SCANNER_DISABLE_CACHE=1
 
@@ -129,14 +129,14 @@
         export GIR_EXTRA_LIBS_PATH=$B/.libs
 }
 
-do_install_prepend() {
+do_install:prepend() {
         # This prevents g-ir-scanner from writing cache data to $HOME
         export GI_SCANNER_DISABLE_CACHE=1
 }
 
 # Our wrappers need to be available system-wide, because they will be used
 # to build introspection files for all other gobject-based packages
-do_install_append_class-target() {
+do_install:append:class-target() {
         install -d ${D}${bindir}/
         install ${B}/g-ir-scanner-qemuwrapper ${D}${bindir}/
         install ${B}/g-ir-scanner-wrapper ${D}${bindir}/
@@ -146,9 +146,9 @@
 
 # we need target versions of introspection tools in sysroot so that they can be run via qemu
 # when building introspection files in other packages
-SYSROOT_DIRS_append_class-target = " ${bindir}"
+SYSROOT_DIRS:append:class-target = " ${bindir}"
 
-SYSROOT_PREPROCESS_FUNCS_append_class-target = " gi_binaries_sysroot_preprocess"
+SYSROOT_PREPROCESS_FUNCS:append:class-target = " gi_binaries_sysroot_preprocess"
 gi_binaries_sysroot_preprocess() {
         # Tweak the binary names in the introspection pkgconfig file, so that it
         # picks up our wrappers which do the cross-compile and qemu magic.
@@ -158,7 +158,7 @@
            ${SYSROOT_DESTDIR}${libdir}/pkgconfig/gobject-introspection-1.0.pc
 }
 
-SYSROOT_PREPROCESS_FUNCS_append = " gi_ldsoconf_sysroot_preprocess"
+SYSROOT_PREPROCESS_FUNCS:append = " gi_ldsoconf_sysroot_preprocess"
 gi_ldsoconf_sysroot_preprocess () {
 	mkdir -p ${SYSROOT_DESTDIR}${bindir}
 	dest=${SYSROOT_DESTDIR}${bindir}/postinst-ldsoconf-${PN}
@@ -181,26 +181,26 @@
 SSTATE_SCAN_FILES += "g-ir-scanner-qemuwrapper g-ir-scanner-wrapper g-ir-compiler-wrapper g-ir-scanner-lddwrapper Gio-2.0.gir postinst-ldsoconf-${PN}"
 
 # .typelib files are needed at runtime and so they go to the main package
-FILES_${PN}_append = " ${libdir}/girepository-*/*.typelib"
+FILES:${PN}:append = " ${libdir}/girepository-*/*.typelib"
 
 # .gir files go to dev package, as they're needed for developing (but not for running)
 # things that depends on introspection.
-FILES_${PN}-dev_append = " ${datadir}/gir-*/*.gir ${libdir}/gir-*/*.gir"
-FILES_${PN}-dev_append = " ${datadir}/gir-*/*.rnc"
+FILES:${PN}-dev:append = " ${datadir}/gir-*/*.gir ${libdir}/gir-*/*.gir"
+FILES:${PN}-dev:append = " ${datadir}/gir-*/*.rnc"
 
 # These are used by gobject-based packages
 # to generate transient introspection binaries
-FILES_${PN}-dev_append = " ${datadir}/gobject-introspection-1.0/gdump.c \
+FILES:${PN}-dev:append = " ${datadir}/gobject-introspection-1.0/gdump.c \
                            ${datadir}/gobject-introspection-1.0/Makefile.introspection"
 
 # These are used by dependent packages (e.g. pygobject) to build their
 # testsuites.
-FILES_${PN}-dev_append = " ${datadir}/gobject-introspection-1.0/tests/*.c \
+FILES:${PN}-dev:append = " ${datadir}/gobject-introspection-1.0/tests/*.c \
                            ${datadir}/gobject-introspection-1.0/tests/*.h"
 
-FILES_${PN}-dbg += "${libdir}/gobject-introspection/giscanner/.debug/"
-FILES_${PN}-staticdev += "${libdir}/gobject-introspection/giscanner/*.a"
+FILES:${PN}-dbg += "${libdir}/gobject-introspection/giscanner/.debug/"
+FILES:${PN}-staticdev += "${libdir}/gobject-introspection/giscanner/*.a"
 
-RDEPENDS_${PN} = "python3-pickle python3-xml"
+RDEPENDS:${PN} = "python3-pickle python3-xml"
 
 BBCLASSEXTEND = "native"
diff --git a/poky/meta/recipes-gnome/gtk+/gtk+3.inc b/poky/meta/recipes-gnome/gtk+/gtk+3.inc
index 1445c40..47cdb83 100644
--- a/poky/meta/recipes-gnome/gtk+/gtk+3.inc
+++ b/poky/meta/recipes-gnome/gtk+/gtk+3.inc
@@ -15,7 +15,7 @@
 
 BBCLASSEXTEND = "native nativesdk"
 
-GSETTINGS_PACKAGE_class-native = ""
+GSETTINGS_PACKAGE:class-native = ""
 
 # versions >= 3.90 are development versions, otherwise like upstream-version-is-even
 UPSTREAM_CHECK_REGEX = "[^\d\.](?P<pver>3\.([1-8]?[02468])+(\.\d+)+)\.tar"
@@ -26,7 +26,7 @@
 # it here avoids rebuilding everything.
 export PKG_CONFIG_FOR_BUILD = "${STAGING_BINDIR_NATIVE}/pkg-config-native"
 
-do_configure_prepend() {
+do_configure:prepend() {
     # Do this because the configure script is running ./libtool directly
     rm -f libtool
     ln -s ${TARGET_PREFIX}libtool libtool
@@ -48,14 +48,14 @@
                  ${@bb.utils.contains("DISTRO_FEATURES", "x11", "", "--disable-gtk-doc", d)} \
                  "
 
-do_compile_prepend() {
+do_compile:prepend() {
         export GIR_EXTRA_LIBS_PATH="${B}/gdk/.libs"
 }
 
 PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'opengl wayland x11', d)} \
                    ${@bb.utils.contains('DISTRO_FEATURES', 'opengl x11', 'glx', '', d)}"
-PACKAGECONFIG_class-native = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}"
-PACKAGECONFIG_class-nativesdk = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}"
+PACKAGECONFIG:class-native = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}"
+PACKAGECONFIG:class-nativesdk = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}"
 
 PACKAGECONFIG[x11] = "--enable-x11-backend,--disable-x11-backend,at-spi2-atk fontconfig libx11 libxext libxcursor libxi libxdamage libxrandr libxrender libxcomposite libxfixes"
 # this is provided by oe-core patch that removes epoxy/gl dependency from a X11 build
@@ -73,15 +73,15 @@
     ln ${D}${bindir}/gtk-query-immodules-3.0 ${D}${libexecdir}/${MLPREFIX}gtk-query-immodules-3.0
 }
 
-do_install_append_class-target() {
+do_install:append:class-target() {
     prepare_gtk_scripts
 }
 
-do_install_append_class-nativesdk() {
+do_install:append:class-nativesdk() {
     prepare_gtk_scripts
 }
 
-do_install_append_class-native() {
+do_install:append:class-native() {
         create_wrapper ${D}/${bindir}/gtk-update-icon-cache \
                 GDK_PIXBUF_MODULE_FILE=${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/2.10.0/loaders.cache
         create_wrapper ${D}/${bindir}/gtk-encode-symbolic-svg \
@@ -92,7 +92,7 @@
 PACKAGES =+ "${PN}-demo"
 LIBV = "3.0.0"
 
-FILES_${PN}-demo = "${bindir}/gtk3-demo \
+FILES:${PN}-demo = "${bindir}/gtk3-demo \
                     ${bindir}/gtk3-demo-application \
                     ${bindir}/gtk3-icon-browser \
                     ${bindir}/gtk3-widget-factory \
@@ -103,14 +103,14 @@
                     ${datadir}/icons/hicolor/*/apps/gtk3-demo*.png \
                     ${datadir}/icons/hicolor/*/apps/gtk3-widget-factory*.png"
 
-FILES_${PN}_append = " ${bindir}/gtk-update-icon-cache-3.0 \
+FILES:${PN}:append = " ${bindir}/gtk-update-icon-cache-3.0 \
                ${bindir}/gtk-query-immodules-3.0 \
                ${bindir}/gtk-launch \
                ${datadir}/themes ${sysconfdir} ${datadir}/glib-2.0/schemas/ \
                ${libdir}/gtk-3.0/${LIBV}/engines/libpixmap.so \
                ${libdir}/gtk-3.0/modules/*.so"
 
-FILES_${PN}-dev += " \
+FILES:${PN}-dev += " \
                     ${datadir}/gtk-3.0/gtkbuilder.rng \
                     ${datadir}/gtk-3.0/include \
                     ${datadir}/gtk-3.0/valgrind \
@@ -136,22 +136,22 @@
                         adwaita-icon-theme-symbolic \
                         "
 
-GTKBASE_RRECOMMENDS_class-native ?= "\
+GTKBASE_RRECOMMENDS:class-native ?= "\
                         "
 
 GTKGLIBC_RRECOMMENDS ?= "${GTKBASE_RRECOMMENDS} glibc-gconv-iso8859-1"
 
-RRECOMMENDS_${PN} = "${GTKBASE_RRECOMMENDS}"
-RRECOMMENDS_${PN}_libc-glibc = "${GTKGLIBC_RRECOMMENDS}"
-RDEPENDS_${PN}-dev += "${@bb.utils.contains("PACKAGECONFIG", "wayland", "wayland-protocols", "", d)}"
+RRECOMMENDS:${PN} = "${GTKBASE_RRECOMMENDS}"
+RRECOMMENDS:${PN}:libc-glibc = "${GTKGLIBC_RRECOMMENDS}"
+RDEPENDS:${PN}-dev += "${@bb.utils.contains("PACKAGECONFIG", "wayland", "wayland-protocols", "", d)}"
 
 PACKAGES_DYNAMIC += "^gtk3-immodule-.* ^gtk3-printbackend-.*"
 
-ALTERNATIVE_${PN} = "gtk-update-icon-cache"
+ALTERNATIVE:${PN} = "gtk-update-icon-cache"
 ALTERNATIVE_TARGET[gtk-update-icon-cache] = "${bindir}/gtk-update-icon-cache-3.0"
 ALTERNATIVE_PRIORITY = "30"
 
-python populate_packages_prepend () {
+python populate_packages:prepend () {
     import os.path
 
     gtk_libdir = d.expand('${libdir}/gtk-3.0/${LIBV}')
@@ -165,5 +165,5 @@
     do_split_packages(d, printmodules_root, r'^libprintbackend-(.*)\.so$', 'gtk3-printbackend-%s', 'GTK printbackend module for %s')
 
     if (d.getVar('DEBIAN_NAMES')):
-        d.setVar(d.expand('PKG_${PN}'), '${MLPREFIX}libgtk-3.0')
+        d.setVar(d.expand('PKG:${PN}'), '${MLPREFIX}libgtk-3.0')
 }
diff --git a/poky/meta/recipes-gnome/gtk-doc/gtk-doc_1.33.2.bb b/poky/meta/recipes-gnome/gtk-doc/gtk-doc_1.33.2.bb
index 23cd259..1c9d517 100644
--- a/poky/meta/recipes-gnome/gtk-doc/gtk-doc_1.33.2.bb
+++ b/poky/meta/recipes-gnome/gtk-doc/gtk-doc_1.33.2.bb
@@ -24,18 +24,18 @@
            file://conditionaltests.patch \
            file://no-clobber.patch \
            "
-SRC_URI_append_class-native = " file://pkg-config-native.patch"
+SRC_URI:append:class-native = " file://pkg-config-native.patch"
 
 BBCLASSEXTEND = "native nativesdk"
 
 # Do not check for XML catalogs when building because that
 # information is not used for anything during build. Recipe
 # dependencies make sure we have all the right bits.
-do_configure_prepend() {
+do_configure:prepend() {
         sed -i -e 's,^JH_CHECK_XML_CATALOG.*,,' ${S}/configure.ac
 }
 
-do_install_append () {
+do_install:append () {
     # configure values for python3 and pkg-config encoded in scripts
     for fn in ${bindir}/gtkdoc-depscan \
         ${bindir}/gtkdoc-mkhtml2 \
@@ -47,10 +47,10 @@
     done
 }
 
-FILES_${PN} += "${datadir}/sgml"
-FILES_${PN}-doc = ""
+FILES:${PN} += "${datadir}/sgml"
+FILES:${PN}-doc = ""
 
-SYSROOT_PREPROCESS_FUNCS_append_class-native = " gtkdoc_makefiles_sysroot_preprocess"
+SYSROOT_PREPROCESS_FUNCS:append:class-native = " gtkdoc_makefiles_sysroot_preprocess"
 gtkdoc_makefiles_sysroot_preprocess() {
         # Patch the gtk-doc makefiles so that the qemu wrapper is used to run transient binaries
         # instead of libtool wrapper or running them directly
diff --git a/poky/meta/recipes-gnome/hicolor-icon-theme/hicolor-icon-theme_0.17.bb b/poky/meta/recipes-gnome/hicolor-icon-theme/hicolor-icon-theme_0.17.bb
index 74e3430..5a9f675 100644
--- a/poky/meta/recipes-gnome/hicolor-icon-theme/hicolor-icon-theme_0.17.bb
+++ b/poky/meta/recipes-gnome/hicolor-icon-theme/hicolor-icon-theme_0.17.bb
@@ -13,6 +13,6 @@
 
 inherit allarch autotools
 
-FILES_${PN} += "${datadir}/icons"
+FILES:${PN} += "${datadir}/icons"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-gnome/json-glib/json-glib_1.6.2.bb b/poky/meta/recipes-gnome/json-glib/json-glib_1.6.2.bb
index fdf3b24..3f37078 100644
--- a/poky/meta/recipes-gnome/json-glib/json-glib_1.6.2.bb
+++ b/poky/meta/recipes-gnome/json-glib/json-glib_1.6.2.bb
@@ -30,4 +30,4 @@
 
 # Currently it's not possible to disable gettext in Meson, so we need to force
 # this back on.
-USE_NLS_class-native = "yes"
+USE_NLS:class-native = "yes"
diff --git a/poky/meta/recipes-gnome/libgudev/libgudev_236.bb b/poky/meta/recipes-gnome/libgudev/libgudev_236.bb
index 5d1d2d7..169b19e 100644
--- a/poky/meta/recipes-gnome/libgudev/libgudev_236.bb
+++ b/poky/meta/recipes-gnome/libgudev/libgudev_236.bb
@@ -7,11 +7,11 @@
 BUGTRACKER = "https://gitlab.gnome.org/GNOME/libgudev/issues"
 SRC_URI[archive.sha256sum] = "e50369d06d594bae615eb7aeb787de304ebaad07a26d1043cef8e9c7ab7c9524"
 
-SRC_URI_append = " file://0001-gudevenumtypes-make-deterministic.patch"
+SRC_URI:append = " file://0001-gudevenumtypes-make-deterministic.patch"
 
 DEPENDS = "glib-2.0 udev"
 
-RCONFLICTS_${PN} = "systemd (<= 220)"
+RCONFLICTS:${PN} = "systemd (<= 220)"
 
 LICENSE = "LGPLv2.1"
 LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
diff --git a/poky/meta/recipes-gnome/libhandy/libhandy_1.2.3.bb b/poky/meta/recipes-gnome/libhandy/libhandy_1.2.3.bb
index acb6e53..3921099 100644
--- a/poky/meta/recipes-gnome/libhandy/libhandy_1.2.3.bb
+++ b/poky/meta/recipes-gnome/libhandy/libhandy_1.2.3.bb
@@ -24,4 +24,4 @@
 DEPENDS += "gtk+3"
 
 PACKAGES =+ "${PN}-examples"
-FILES_${PN}-examples = "${bindir}"
+FILES:${PN}-examples = "${bindir}"
diff --git a/poky/meta/recipes-gnome/libnotify/libnotify_0.7.9.bb b/poky/meta/recipes-gnome/libnotify/libnotify_0.7.9.bb
index d2be715..dd081f9 100644
--- a/poky/meta/recipes-gnome/libnotify/libnotify_0.7.9.bb
+++ b/poky/meta/recipes-gnome/libnotify/libnotify_0.7.9.bb
@@ -30,9 +30,9 @@
 # there were times, we had two versions of libnotify (oe-core libnotify:0.6.x /
 # meta-gnome libnotify3: 0.7.x)
 PROVIDES += "libnotify3"
-RPROVIDES_${PN} += "libnotify3"
-RCONFLICTS_${PN} += "libnotify3"
-RREPLACES_${PN} += "libnotify3"
+RPROVIDES:${PN} += "libnotify3"
+RCONFLICTS:${PN} += "libnotify3"
+RREPLACES:${PN} += "libnotify3"
 
 # -7381 is specific to the NodeJS bindings
 CVE_CHECK_WHITELIST += "CVE-2013-7381"
diff --git a/poky/meta/recipes-gnome/librsvg/librsvg_2.40.21.bb b/poky/meta/recipes-gnome/librsvg/librsvg_2.40.21.bb
index 59de80a..39b9aec 100644
--- a/poky/meta/recipes-gnome/librsvg/librsvg_2.40.21.bb
+++ b/poky/meta/recipes-gnome/librsvg/librsvg_2.40.21.bb
@@ -36,17 +36,17 @@
 # GTK+ test application (rsvg-view)
 PACKAGECONFIG[gtk] = "--with-gtk3,--without-gtk3,gtk+3"
 
-do_install_append() {
+do_install:append() {
 	# Loadable modules don't need .a or .la on Linux
 	rm -f ${D}${libdir}/gdk-pixbuf-2.0/*/loaders/*.a ${D}${libdir}/gdk-pixbuf-2.0/*/loaders/*.la
 }
 
 PACKAGES =+ "librsvg-gtk rsvg"
-FILES_rsvg = "${bindir}/rsvg* \
+FILES:rsvg = "${bindir}/rsvg* \
 	      ${datadir}/pixmaps/svg-viewer.svg \
 	      ${datadir}/themes"
-FILES_librsvg-gtk = "${libdir}/gdk-pixbuf-2.0/*/*/*.so \
+FILES:librsvg-gtk = "${libdir}/gdk-pixbuf-2.0/*/*/*.so \
                      ${datadir}/thumbnailers/librsvg.thumbnailer"
-RRECOMMENDS_librsvg-gtk = "gdk-pixbuf-bin"
+RRECOMMENDS:librsvg-gtk = "gdk-pixbuf-bin"
 
 PIXBUF_PACKAGES = "librsvg-gtk"
diff --git a/poky/meta/recipes-gnome/libsecret/libsecret_0.20.4.bb b/poky/meta/recipes-gnome/libsecret/libsecret_0.20.4.bb
index 287ac70..9c1f97b 100644
--- a/poky/meta/recipes-gnome/libsecret/libsecret_0.20.4.bb
+++ b/poky/meta/recipes-gnome/libsecret/libsecret_0.20.4.bb
@@ -23,6 +23,6 @@
 PACKAGECONFIG[manpages] = "-Dmanpage=true,-Dmanpage=false,libxslt-native xmlto-native"
 
 # http://errors.yoctoproject.org/Errors/Details/20228/
-ARM_INSTRUCTION_SET_armv4 = "arm"
-ARM_INSTRUCTION_SET_armv5 = "arm"
-ARM_INSTRUCTION_SET_armv6 = "arm"
+ARM_INSTRUCTION_SET:armv4 = "arm"
+ARM_INSTRUCTION_SET:armv5 = "arm"
+ARM_INSTRUCTION_SET:armv6 = "arm"
diff --git a/poky/meta/recipes-graphics/builder/builder_0.1.bb b/poky/meta/recipes-graphics/builder/builder_0.1.bb
index 9d5cd8c..f448465 100644
--- a/poky/meta/recipes-graphics/builder/builder_0.1.bb
+++ b/poky/meta/recipes-graphics/builder/builder_0.1.bb
@@ -10,14 +10,14 @@
 
 S = "${WORKDIR}"
 
-RDEPENDS_${PN} = "mini-x-session"
+RDEPENDS:${PN} = "mini-x-session"
 
 inherit useradd
 
 # builder user password is "builder"
 BUILDER_PASSWORD ?= ".gLibiNXn0P12"
 USERADD_PACKAGES = "${PN}"
-USERADD_PARAM_${PN} = "--system --create-home \
+USERADD_PARAM:${PN} = "--system --create-home \
                        --groups video,tty,audio \
                        --password ${BUILDER_PASSWORD} \
                        --user-group builder"
diff --git a/poky/meta/recipes-graphics/cairo/cairo_1.16.0.bb b/poky/meta/recipes-graphics/cairo/cairo_1.16.0.bb
index 9d9fbfb..d76d935 100644
--- a/poky/meta/recipes-graphics/cairo/cairo_1.16.0.bb
+++ b/poky/meta/recipes-graphics/cairo/cairo_1.16.0.bb
@@ -11,12 +11,12 @@
 SECTION = "libs"
 
 LICENSE = "(MPL-1.1 | LGPLv2.1) & GPLv3+"
-LICENSE_${PN} = "MPL-1.1 | LGPLv2.1"
-LICENSE_${PN}-dev = "MPL-1.1 | LGPLv2.1"
-LICENSE_${PN}-doc = "MPL-1.1 | LGPLv2.1"
-LICENSE_${PN}-gobject = "MPL-1.1 | LGPLv2.1"
-LICENSE_${PN}-script-interpreter = "MPL-1.1 | LGPLv2.1"
-LICENSE_${PN}-perf-utils = "GPLv3+"
+LICENSE:${PN} = "MPL-1.1 | LGPLv2.1"
+LICENSE:${PN}-dev = "MPL-1.1 | LGPLv2.1"
+LICENSE:${PN}-doc = "MPL-1.1 | LGPLv2.1"
+LICENSE:${PN}-gobject = "MPL-1.1 | LGPLv2.1"
+LICENSE:${PN}-script-interpreter = "MPL-1.1 | LGPLv2.1"
+LICENSE:${PN}-perf-utils = "GPLv3+"
 
 LIC_FILES_CHKSUM = "file://COPYING;md5=e73e999e0c72b5ac9012424fa157ad77"
 
@@ -43,8 +43,8 @@
                    ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 xcb', '', d)} \
                    ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'opengl', '', d)} \
                    trace"
-PACKAGECONFIG_class-native = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 xcb', '', d)}"
-PACKAGECONFIG_class-nativesdk = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 xcb', '', d)}"
+PACKAGECONFIG:class-native = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 xcb', '', d)}"
+PACKAGECONFIG:class-nativesdk = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 xcb', '', d)}"
 
 PACKAGECONFIG[x11] = "--with-x=yes -enable-xlib,--with-x=no --disable-xlib,${X11DEPENDS}"
 PACKAGECONFIG[xcb] = "--enable-xcb,--disable-xcb,libxcb"
@@ -65,7 +65,7 @@
 # Ensure we don't depend on LZO
 export ac_cv_lib_lzo2_lzo2a_decompress="no"
 
-do_install_append () {
+do_install:append () {
 	rm -rf ${D}${bindir}/cairo-sphinx
 	rm -rf ${D}${libdir}/cairo/cairo-fdr*
 	rm -rf ${D}${libdir}/cairo/cairo-sphinx*
@@ -79,20 +79,20 @@
 
 PACKAGES =+ "cairo-gobject cairo-script-interpreter cairo-perf-utils"
 
-SUMMARY_cairo-gobject = "The Cairo library GObject wrapper library"
-DESCRIPTION_cairo-gobject = "A GObject wrapper library for the Cairo API."
+SUMMARY:cairo-gobject = "The Cairo library GObject wrapper library"
+DESCRIPTION:cairo-gobject = "A GObject wrapper library for the Cairo API."
 
-SUMMARY_cairo-script-interpreter = "The Cairo library script interpreter"
-DESCRIPTION_cairo-script-interpreter = "The Cairo script interpreter implements \
+SUMMARY:cairo-script-interpreter = "The Cairo library script interpreter"
+DESCRIPTION:cairo-script-interpreter = "The Cairo script interpreter implements \
 CairoScript.  CairoScript is used by tracing utilities to enable the ability \
 to replay rendering."
 
-DESCRIPTION_cairo-perf-utils = "The Cairo library performance utilities"
+DESCRIPTION:cairo-perf-utils = "The Cairo library performance utilities"
 
-FILES_${PN} = "${libdir}/libcairo.so.*"
-FILES_${PN}-gobject = "${libdir}/libcairo-gobject.so.*"
-FILES_${PN}-script-interpreter = "${libdir}/libcairo-script-interpreter.so.*"
-FILES_${PN}-perf-utils = "${bindir}/cairo-trace* ${libdir}/cairo/*.la ${libdir}/cairo/libcairo-trace.so"
+FILES:${PN} = "${libdir}/libcairo.so.*"
+FILES:${PN}-gobject = "${libdir}/libcairo-gobject.so.*"
+FILES:${PN}-script-interpreter = "${libdir}/libcairo-script-interpreter.so.*"
+FILES:${PN}-perf-utils = "${bindir}/cairo-trace* ${libdir}/cairo/*.la ${libdir}/cairo/libcairo-trace.so"
 
 BBCLASSEXTEND = "native nativesdk"
 
diff --git a/poky/meta/recipes-graphics/cantarell-fonts/cantarell-fonts_0.301.bb b/poky/meta/recipes-graphics/cantarell-fonts/cantarell-fonts_0.301.bb
index b0ce561..8e39ef0 100644
--- a/poky/meta/recipes-graphics/cantarell-fonts/cantarell-fonts_0.301.bb
+++ b/poky/meta/recipes-graphics/cantarell-fonts/cantarell-fonts_0.301.bb
@@ -19,7 +19,7 @@
 
 EXTRA_OEMESON += "-Duseprebuilt=true -Dbuildappstream=false"
 
-FILES_${PN} = "${datadir}/fonts ${datadir}/fontconfig"
+FILES:${PN} = "${datadir}/fonts ${datadir}/fontconfig"
 
 # This isn't a GNOME-style version do gnome_verdir fails. Just return the
 # version as that is how the directory is structured.
diff --git a/poky/meta/recipes-graphics/drm/libdrm_2.4.107.bb b/poky/meta/recipes-graphics/drm/libdrm_2.4.107.bb
index 1dd0704..b645898 100644
--- a/poky/meta/recipes-graphics/drm/libdrm_2.4.107.bb
+++ b/poky/meta/recipes-graphics/drm/libdrm_2.4.107.bb
@@ -37,24 +37,24 @@
 PACKAGECONFIG[udev] = "-Dudev=true,-Dudev=false,udev"
 PACKAGECONFIG[manpages] = "-Dman-pages=true,-Dman-pages=false,libxslt-native xmlto-native python3-docutils-native"
 
-ALLOW_EMPTY_${PN}-drivers = "1"
+ALLOW_EMPTY:${PN}-drivers = "1"
 PACKAGES =+ "${PN}-tests ${PN}-drivers ${PN}-radeon ${PN}-nouveau ${PN}-omap \
              ${PN}-intel ${PN}-exynos ${PN}-kms ${PN}-freedreno ${PN}-amdgpu \
              ${PN}-etnaviv"
 
-RRECOMMENDS_${PN}-drivers = "${PN}-radeon ${PN}-nouveau ${PN}-omap ${PN}-intel \
+RRECOMMENDS:${PN}-drivers = "${PN}-radeon ${PN}-nouveau ${PN}-omap ${PN}-intel \
                              ${PN}-exynos ${PN}-freedreno ${PN}-amdgpu \
                              ${PN}-etnaviv"
 
-FILES_${PN}-tests = "${bindir}/*"
-FILES_${PN}-radeon = "${libdir}/libdrm_radeon.so.*"
-FILES_${PN}-nouveau = "${libdir}/libdrm_nouveau.so.*"
-FILES_${PN}-omap = "${libdir}/libdrm_omap.so.*"
-FILES_${PN}-intel = "${libdir}/libdrm_intel.so.*"
-FILES_${PN}-exynos = "${libdir}/libdrm_exynos.so.*"
-FILES_${PN}-kms = "${libdir}/libkms*.so.*"
-FILES_${PN}-freedreno = "${libdir}/libdrm_freedreno.so.*"
-FILES_${PN}-amdgpu = "${libdir}/libdrm_amdgpu.so.* ${datadir}/${PN}/amdgpu.ids"
-FILES_${PN}-etnaviv = "${libdir}/libdrm_etnaviv.so.*"
+FILES:${PN}-tests = "${bindir}/*"
+FILES:${PN}-radeon = "${libdir}/libdrm_radeon.so.*"
+FILES:${PN}-nouveau = "${libdir}/libdrm_nouveau.so.*"
+FILES:${PN}-omap = "${libdir}/libdrm_omap.so.*"
+FILES:${PN}-intel = "${libdir}/libdrm_intel.so.*"
+FILES:${PN}-exynos = "${libdir}/libdrm_exynos.so.*"
+FILES:${PN}-kms = "${libdir}/libkms*.so.*"
+FILES:${PN}-freedreno = "${libdir}/libdrm_freedreno.so.*"
+FILES:${PN}-amdgpu = "${libdir}/libdrm_amdgpu.so.* ${datadir}/${PN}/amdgpu.ids"
+FILES:${PN}-etnaviv = "${libdir}/libdrm_etnaviv.so.*"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-graphics/fontconfig/fontconfig_2.13.1.bb b/poky/meta/recipes-graphics/fontconfig/fontconfig_2.13.1.bb
index d0da419..63e4062 100644
--- a/poky/meta/recipes-graphics/fontconfig/fontconfig_2.13.1.bb
+++ b/poky/meta/recipes-graphics/fontconfig/fontconfig_2.13.1.bb
@@ -29,33 +29,33 @@
 
 UPSTREAM_CHECK_REGEX = "fontconfig-(?P<pver>\d+\.\d+\.(?!9\d+)\d+)"
 
-do_configure_prepend() {
+do_configure:prepend() {
     # work around https://bugs.freedesktop.org/show_bug.cgi?id=101280
     rm -f ${S}/src/fcobjshash.h ${S}/src/fcobjshash.gperf
 }
 
-do_install_append_class-target() {
+do_install:append:class-target() {
     # duplicate fc-cache for postinstall script
     mkdir -p ${D}${libexecdir}
     ln ${D}${bindir}/fc-cache ${D}${libexecdir}/${MLPREFIX}fc-cache
 }
 
-do_install_append_class-nativesdk() {
+do_install:append:class-nativesdk() {
     # duplicate fc-cache for postinstall script
     mkdir -p ${D}${libexecdir}
     ln ${D}${bindir}/fc-cache ${D}${libexecdir}/${MLPREFIX}fc-cache
 }
 
 PACKAGES =+ "fontconfig-utils"
-FILES_${PN} =+ "${datadir}/xml/*"
-FILES_${PN}-dev += "${datadir}/gettext/*"
-FILES_fontconfig-utils = "${bindir}/* ${libexecdir}/*"
+FILES:${PN} =+ "${datadir}/xml/*"
+FILES:${PN}-dev += "${datadir}/gettext/*"
+FILES:fontconfig-utils = "${bindir}/* ${libexecdir}/*"
 
 # Work around past breakage in debian.bbclass
-RPROVIDES_fontconfig-utils = "libfontconfig-utils"
-RREPLACES_fontconfig-utils = "libfontconfig-utils"
-RCONFLICTS_fontconfig-utils = "libfontconfig-utils"
-DEBIAN_NOAUTONAME_fontconfig-utils = "1"
+RPROVIDES:fontconfig-utils = "libfontconfig-utils"
+RREPLACES:fontconfig-utils = "libfontconfig-utils"
+RCONFLICTS:fontconfig-utils = "libfontconfig-utils"
+DEBIAN_NOAUTONAME:fontconfig-utils = "1"
 
 inherit autotools pkgconfig relative_symlinks gettext
 
diff --git a/poky/meta/recipes-graphics/freetype/freetype/use-right-libtool.patch b/poky/meta/recipes-graphics/freetype/freetype/use-right-libtool.patch
index 3368f7d..b389455 100644
--- a/poky/meta/recipes-graphics/freetype/freetype/use-right-libtool.patch
+++ b/poky/meta/recipes-graphics/freetype/freetype/use-right-libtool.patch
@@ -1,3 +1,8 @@
+From 50499e4482d40cff2ef05905c658ba4380e7e6fc Mon Sep 17 00:00:00 2001
+From: Ross Burton <ross.burton@intel.com>
+Date: Thu, 7 Jan 2016 21:13:07 +0000
+Subject: [PATCH] freetype: enable out-of-tree builds, and use host zlib
+
 Freetype think that it knows best about where libtool is, and explicitly the
 libtool autoconf macros telling it where to find the libtool script.  Of course
 we prefix the script with the target triplet, so it's wrong.  Fix this by
@@ -7,8 +12,20 @@
 Upstream-Status: Pending
 Signed-off-by: Ross Burton <ross.burton@intel.com>
 
---- freetype-2.6/builds/unix/unix-cc.in.orig	2016-01-07 19:21:45.244943479 +0000
-+++ freetype-2.6/builds/unix/unix-cc.in	2016-01-07 19:21:50.213112131 +0000
-@@ -19,1 +18,1 @@
+---
+ builds/unix/unix-cc.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/builds/unix/unix-cc.in b/builds/unix/unix-cc.in
+index 89be450..72609d3 100644
+--- a/builds/unix/unix-cc.in
++++ b/builds/unix/unix-cc.in
+@@ -16,7 +16,7 @@ CC           := @CC@
+ COMPILER_SEP := $(SEP)
+ FT_LIBTOOL_DIR ?= $(PLATFORM_DIR)
+ 
 -LIBTOOL := $(FT_LIBTOOL_DIR)/libtool
 +LIBTOOL := $(FT_LIBTOOL_DIR)/@LIBTOOL@ --tag CC
+ 
+ 
+ # The object file extension (for standard and static libraries).  This can be
diff --git a/poky/meta/recipes-graphics/freetype/freetype_2.10.4.bb b/poky/meta/recipes-graphics/freetype/freetype_2.11.0.bb
similarity index 89%
rename from poky/meta/recipes-graphics/freetype/freetype_2.10.4.bb
rename to poky/meta/recipes-graphics/freetype/freetype_2.11.0.bb
index 8462cd3..1ec34e7 100644
--- a/poky/meta/recipes-graphics/freetype/freetype_2.10.4.bb
+++ b/poky/meta/recipes-graphics/freetype/freetype_2.11.0.bb
@@ -8,14 +8,14 @@
 SECTION = "libs"
 
 LICENSE = "FreeType | GPLv2+"
-LIC_FILES_CHKSUM = "file://docs/LICENSE.TXT;md5=4af6221506f202774ef74f64932878a1 \
+LIC_FILES_CHKSUM = "file://LICENSE.TXT;md5=a5927784d823d443c6cae55701d01553 \
                     file://docs/FTL.TXT;md5=9f37b4e6afa3fef9dba8932b16bd3f97 \
                     file://docs/GPLv2.TXT;md5=8ef380476f642c20ebf40fecb0add2ec"
 
 SRC_URI = "${SAVANNAH_NONGNU_MIRROR}/${BPN}/${BP}.tar.xz \
            file://use-right-libtool.patch \
           "
-SRC_URI[sha256sum] = "86a854d8905b19698bbc8f23b860bc104246ce4854dcea8e3b0fb21284f75784"
+SRC_URI[sha256sum] = "8bee39bd3968c4804b70614a0a3ad597299ad0e824bc8aad5ce8aaf48067bde7"
 
 UPSTREAM_CHECK_REGEX = "freetype-(?P<pver>\d+(\.\d+)+)"
 
@@ -39,7 +39,7 @@
 
 TARGET_CPPFLAGS += "-D_FILE_OFFSET_BITS=64"
 
-do_install_append() {
+do_install:append() {
 	oe_multilib_header freetype2/freetype/config/ftconfig.h
 }
 
diff --git a/poky/meta/recipes-graphics/glew/glew/0001-Fix-build-race-in-Makefile.patch b/poky/meta/recipes-graphics/glew/glew/0001-Fix-build-race-in-Makefile.patch
new file mode 100644
index 0000000..7edcfe8
--- /dev/null
+++ b/poky/meta/recipes-graphics/glew/glew/0001-Fix-build-race-in-Makefile.patch
@@ -0,0 +1,56 @@
+Upstream-Status: Submitted [https://github.com/nigels-com/glew/pull/311]
+Signed-off-by: Ross Burton <ross.burton@arm.com>
+
+From 0ce0a85597db48a2fca619bd95e34af091e54ae8 Mon Sep 17 00:00:00 2001
+From: Ross Burton <ross.burton@arm.com>
+Date: Thu, 22 Jul 2021 16:31:11 +0100
+Subject: [PATCH] Fix build race in Makefile
+
+The current rule for the binaries is:
+
+glew.bin: glew.lib bin bin/$(GLEWINFO.BIN) bin/$(VISUALINFO.BIN)
+
+In parallel builds, all of those targets happen at the same time. This
+means that 'bin' can happen *after* 'bin/$(GLEWINFO.BIN)', which is a
+problem as the 'bin' target's responsibility is to create the directory
+that the other target writes into.
+
+Solve this by not having a separate 'create directory' target which is
+fundamentally racy, and simply mkdir in each target which writes into it.
+---
+ Makefile | 9 ++++-----
+ 1 file changed, 4 insertions(+), 5 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index d0e4614..04af44c 100644
+--- a/Makefile
++++ b/Makefile
+@@ -171,21 +171,20 @@ VISUALINFO.BIN.OBJ := $(VISUALINFO.BIN.OBJ:.c=.o)
+ # Don't build glewinfo or visualinfo for NaCL, yet.
+ 
+ ifneq ($(filter nacl%,$(SYSTEM)),)
+-glew.bin: glew.lib bin
++glew.bin: glew.lib
+ else
+-glew.bin: glew.lib bin bin/$(GLEWINFO.BIN) bin/$(VISUALINFO.BIN) 
++glew.bin: glew.lib bin/$(GLEWINFO.BIN) bin/$(VISUALINFO.BIN)
+ endif
+ 
+-bin:
+-	mkdir bin
+-
+ bin/$(GLEWINFO.BIN): $(GLEWINFO.BIN.OBJ) $(LIB.SHARED.DIR)/$(LIB.SHARED)
++	@mkdir -p $(dir $@)
+ 	$(CC) $(CFLAGS) -o $@ $(GLEWINFO.BIN.OBJ) $(BIN.LIBS)
+ ifneq ($(STRIP),)
+ 	$(STRIP) -x $@
+ endif
+ 
+ bin/$(VISUALINFO.BIN): $(VISUALINFO.BIN.OBJ) $(LIB.SHARED.DIR)/$(LIB.SHARED)
++	@mkdir -p $(dir $@)
+ 	$(CC) $(CFLAGS) -o $@ $(VISUALINFO.BIN.OBJ) $(BIN.LIBS)
+ ifneq ($(STRIP),)
+ 	$(STRIP) -x $@
+-- 
+2.25.1
+
diff --git a/poky/meta/recipes-graphics/glew/glew_2.2.0.bb b/poky/meta/recipes-graphics/glew/glew_2.2.0.bb
index 8948444..92b6083 100644
--- a/poky/meta/recipes-graphics/glew/glew_2.2.0.bb
+++ b/poky/meta/recipes-graphics/glew/glew_2.2.0.bb
@@ -6,6 +6,7 @@
 LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=2ac251558de685c6b9478d89be3149c2"
 
 SRC_URI = "${SOURCEFORGE_MIRROR}/project/glew/glew/${PV}/glew-${PV}.tgz \
+           file://0001-Fix-build-race-in-Makefile.patch \
            file://no-strip.patch"
 
 SRC_URI[md5sum] = "3579164bccaef09e36c0af7f4fd5c7c7"
diff --git a/poky/meta/recipes-graphics/glslang/glslang_11.5.0.bb b/poky/meta/recipes-graphics/glslang/glslang_11.5.0.bb
index e3eaa2a..2f076e5 100644
--- a/poky/meta/recipes-graphics/glslang/glslang_11.5.0.bb
+++ b/poky/meta/recipes-graphics/glslang/glslang_11.5.0.bb
@@ -26,6 +26,6 @@
 
 SOLIBSDEV = "glslang.so"
 # all the other libraries are unversioned, so pack it on PN
-FILES_${PN} += "${libdir}/*.so"
+FILES:${PN} += "${libdir}/*.so"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-graphics/harfbuzz/harfbuzz_2.8.2.bb b/poky/meta/recipes-graphics/harfbuzz/harfbuzz_2.8.2.bb
index 6da76ad..48b0c77 100644
--- a/poky/meta/recipes-graphics/harfbuzz/harfbuzz_2.8.2.bb
+++ b/poky/meta/recipes-graphics/harfbuzz/harfbuzz_2.8.2.bb
@@ -32,17 +32,17 @@
 
 LEAD_SONAME = "libharfbuzz.so"
 
-do_install_append() {
+do_install:append() {
     # If no tools are installed due to PACKAGECONFIG then this directory is
     #still installed, so remove it to stop packaging wanings.
     rmdir --ignore-fail-on-non-empty ${D}${bindir}
 }
 
-FILES_${PN}-icu = "${libdir}/libharfbuzz-icu.so.*"
-FILES_${PN}-icu-dev = "${libdir}/libharfbuzz-icu.la \
+FILES:${PN}-icu = "${libdir}/libharfbuzz-icu.so.*"
+FILES:${PN}-icu-dev = "${libdir}/libharfbuzz-icu.la \
                        ${libdir}/libharfbuzz-icu.so \
                        ${libdir}/pkgconfig/harfbuzz-icu.pc \
 "
-FILES_${PN}-subset = "${libdir}/libharfbuzz-subset.so.*"
+FILES:${PN}-subset = "${libdir}/libharfbuzz-subset.so.*"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-graphics/igt-gpu-tools/igt-gpu-tools_git.bb b/poky/meta/recipes-graphics/igt-gpu-tools/igt-gpu-tools_git.bb
index 5ab0498..79fab7a 100644
--- a/poky/meta/recipes-graphics/igt-gpu-tools/igt-gpu-tools_git.bb
+++ b/poky/meta/recipes-graphics/igt-gpu-tools/igt-gpu-tools_git.bb
@@ -17,8 +17,8 @@
 S = "${WORKDIR}/git"
 
 DEPENDS += "libdrm libpciaccess cairo udev glib-2.0 procps libunwind kmod openssl elfutils alsa-lib json-c bison-native"
-RDEPENDS_${PN} += "bash"
-RDEPENDS_${PN}-tests += "bash"
+RDEPENDS:${PN} += "bash"
+RDEPENDS:${PN}-tests += "bash"
 
 PACKAGE_BEFORE_PN = "${PN}-benchmarks ${PN}-tests"
 
@@ -26,7 +26,7 @@
 
 EXTRA_OEMESON = "-Ddocs=disabled -Drunner=enabled -Dsrcdir=/usr/src/debug/${PN}/${PV}-${PR}/git/"
 COMPATIBLE_HOST = "(x86_64.*|i.86.*|arm.*|aarch64).*-linux"
-COMPATIBLE_HOST_libc-musl_class-target = "null"
+COMPATIBLE_HOST:libc-musl:class-target = "null"
 SECURITY_LDFLAGS = "${SECURITY_X_LDFLAGS}"
 
 gputools_sysroot_preprocess() {
@@ -34,7 +34,7 @@
 }
 SYSROOT_PREPROCESS_FUNCS += "gputools_sysroot_preprocess"
 
-do_install_append() {
+do_install:append() {
     install -d ${D}/usr/share/${BPN}/scripts
     install ${S}/scripts/run-tests.sh ${D}/usr/share/${BPN}/scripts
     install -d ${D}/usr/share/${BPN}/runner
@@ -42,8 +42,8 @@
     install -D ${B}/runner/igt_resume ${D}/usr/share/${BPN}/runner
 }
 
-FILES_${PN}-benchmarks += "${libexecdir}/${BPN}/benchmarks"
-FILES_${PN}-tests += "\
+FILES:${PN}-benchmarks += "${libexecdir}/${BPN}/benchmarks"
+FILES:${PN}-tests += "\
         ${libexecdir}/${BPN}/*\
         ${datadir}/${BPN}/1080p-right.png\
         ${datadir}/${BPN}/1080p-left.png\
diff --git a/poky/meta/recipes-graphics/jpeg/libjpeg-turbo_2.0.6.bb b/poky/meta/recipes-graphics/jpeg/libjpeg-turbo_2.0.6.bb
deleted file mode 100644
index 7d0c434..0000000
--- a/poky/meta/recipes-graphics/jpeg/libjpeg-turbo_2.0.6.bb
+++ /dev/null
@@ -1,62 +0,0 @@
-SUMMARY = "Hardware accelerated JPEG compression/decompression library"
-DESCRIPTION = "libjpeg-turbo is a derivative of libjpeg that uses SIMD instructions (MMX, SSE2, NEON) to accelerate baseline JPEG compression and decompression"
-HOMEPAGE = "http://libjpeg-turbo.org/"
-
-LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://cdjpeg.h;endline=13;md5=8184bcc7c4ac7b9edc6a7bc00f231d0b \
-                    file://jpeglib.h;endline=16;md5=52b5eaade8d5b6a452a7693dfe52c084 \
-                    file://djpeg.c;endline=11;md5=302e980133b5c0c7f4dcb4ca0df41090 \
-"
-DEPENDS_append_x86-64_class-target = " nasm-native"
-DEPENDS_append_x86_class-target = " nasm-native"
-
-SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}-${PV}.tar.gz \
-           file://0001-libjpeg-turbo-fix-package_qa-error.patch \
-           "
-
-SRC_URI[md5sum] = "4cada3f0bdc93d826fa31bf9e4469ef6"
-SRC_URI[sha256sum] = "d74b92ac33b0e3657123ddcf6728788c90dc84dcb6a52013d758af3c4af481bb"
-UPSTREAM_CHECK_URI = "http://sourceforge.net/projects/libjpeg-turbo/files/"
-UPSTREAM_CHECK_REGEX = "/libjpeg-turbo/files/(?P<pver>(\d+[\.\-_]*)+)/"
-
-PE = "1"
-
-# Drop-in replacement for jpeg
-PROVIDES = "jpeg"
-RPROVIDES_${PN} += "jpeg"
-RREPLACES_${PN} += "jpeg"
-RCONFLICTS_${PN} += "jpeg"
-
-inherit cmake pkgconfig
-
-export NASMENV = "--reproducible --debug-prefix-map=${WORKDIR}=/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR}"
-
-# Add nasm-native dependency consistently for all build arches is hard
-EXTRA_OECMAKE_append_class-native = " -DWITH_SIMD=False"
-EXTRA_OECMAKE_append_class-nativesdk = " -DWITH_SIMD=False"
-
-# Work around missing x32 ABI support
-EXTRA_OECMAKE_append_class-target = " ${@bb.utils.contains("TUNE_FEATURES", "mx32", "-DWITH_SIMD=False", "", d)}"
-
-# Work around missing non-floating point ABI support in MIPS
-EXTRA_OECMAKE_append_class-target = " ${@bb.utils.contains("MIPSPKGSFX_FPU", "-nf", "-DWITH_SIMD=False", "", d)}"
-
-EXTRA_OECMAKE_append_class-target_arm = " ${@bb.utils.contains("TUNE_FEATURES", "neon", "", "-DWITH_SIMD=False", d)}"
-EXTRA_OECMAKE_append_class-target_armeb = " ${@bb.utils.contains("TUNE_FEATURES", "neon", "", "-DWITH_SIMD=False", d)}"
-
-# Provide a workaround if Altivec unit is not present in PPC
-EXTRA_OECMAKE_append_class-target_powerpc = " ${@bb.utils.contains("TUNE_FEATURES", "altivec", "", "-DWITH_SIMD=False", d)}"
-EXTRA_OECMAKE_append_class-target_powerpc64 = " ${@bb.utils.contains("TUNE_FEATURES", "altivec", "", "-DWITH_SIMD=False", d)}"
-
-DEBUG_OPTIMIZATION_append_armv4 = " ${@bb.utils.contains('TUNE_CCARGS', '-mthumb', '-fomit-frame-pointer', '', d)}"
-DEBUG_OPTIMIZATION_append_armv5 = " ${@bb.utils.contains('TUNE_CCARGS', '-mthumb', '-fomit-frame-pointer', '', d)}"
-
-PACKAGES =+ "jpeg-tools libturbojpeg"
-
-DESCRIPTION_jpeg-tools = "The jpeg-tools package includes client programs to access libjpeg functionality.  These tools allow for the compression, decompression, transformation and display of JPEG files and benchmarking of the libjpeg library."
-FILES_jpeg-tools = "${bindir}/*"
-
-DESCRIPTION_libturbojpeg = "A SIMD-accelerated JPEG codec which provides only TurboJPEG APIs"
-FILES_libturbojpeg = "${libdir}/libturbojpeg.so.*"
-
-BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-graphics/jpeg/libjpeg-turbo_2.1.0.bb b/poky/meta/recipes-graphics/jpeg/libjpeg-turbo_2.1.0.bb
new file mode 100644
index 0000000..3b8130a
--- /dev/null
+++ b/poky/meta/recipes-graphics/jpeg/libjpeg-turbo_2.1.0.bb
@@ -0,0 +1,61 @@
+SUMMARY = "Hardware accelerated JPEG compression/decompression library"
+DESCRIPTION = "libjpeg-turbo is a derivative of libjpeg that uses SIMD instructions (MMX, SSE2, NEON) to accelerate baseline JPEG compression and decompression"
+HOMEPAGE = "http://libjpeg-turbo.org/"
+
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://cdjpeg.h;endline=13;md5=8a61af33cc1c681cd5cc297150bbb5bd \
+                    file://jpeglib.h;endline=16;md5=52b5eaade8d5b6a452a7693dfe52c084 \
+                    file://djpeg.c;endline=11;md5=b61f01ad6aff437b34d1f9e8004280a4 \
+                    "
+DEPENDS:append:x86-64:class-target = " nasm-native"
+DEPENDS:append:x86:class-target = " nasm-native"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}-${PV}.tar.gz \
+           file://0001-libjpeg-turbo-fix-package_qa-error.patch \
+           "
+
+SRC_URI[sha256sum] = "bef89803e506f27715c5627b1e3219c95b80fc31465d4452de2a909d382e4444"
+UPSTREAM_CHECK_URI = "http://sourceforge.net/projects/libjpeg-turbo/files/"
+UPSTREAM_CHECK_REGEX = "/libjpeg-turbo/files/(?P<pver>(\d+[\.\-_]*)+)/"
+
+PE = "1"
+
+# Drop-in replacement for jpeg
+PROVIDES = "jpeg"
+RPROVIDES:${PN} += "jpeg"
+RREPLACES:${PN} += "jpeg"
+RCONFLICTS:${PN} += "jpeg"
+
+inherit cmake pkgconfig
+
+export NASMENV = "--reproducible --debug-prefix-map=${WORKDIR}=/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR}"
+
+# Add nasm-native dependency consistently for all build arches is hard
+EXTRA_OECMAKE:append:class-native = " -DWITH_SIMD=False"
+EXTRA_OECMAKE:append:class-nativesdk = " -DWITH_SIMD=False"
+
+# Work around missing x32 ABI support
+EXTRA_OECMAKE:append:class-target = " ${@bb.utils.contains("TUNE_FEATURES", "mx32", "-DWITH_SIMD=False", "", d)}"
+
+# Work around missing non-floating point ABI support in MIPS
+EXTRA_OECMAKE:append:class-target = " ${@bb.utils.contains("MIPSPKGSFX_FPU", "-nf", "-DWITH_SIMD=False", "", d)}"
+
+EXTRA_OECMAKE:append:class-target:arm = " ${@bb.utils.contains("TUNE_FEATURES", "neon", "", "-DWITH_SIMD=False", d)}"
+EXTRA_OECMAKE:append:class-target:armeb = " ${@bb.utils.contains("TUNE_FEATURES", "neon", "", "-DWITH_SIMD=False", d)}"
+
+# Provide a workaround if Altivec unit is not present in PPC
+EXTRA_OECMAKE:append:class-target:powerpc = " ${@bb.utils.contains("TUNE_FEATURES", "altivec", "", "-DWITH_SIMD=False", d)}"
+EXTRA_OECMAKE:append:class-target:powerpc64 = " ${@bb.utils.contains("TUNE_FEATURES", "altivec", "", "-DWITH_SIMD=False", d)}"
+
+DEBUG_OPTIMIZATION:append:armv4 = " ${@bb.utils.contains('TUNE_CCARGS', '-mthumb', '-fomit-frame-pointer', '', d)}"
+DEBUG_OPTIMIZATION:append:armv5 = " ${@bb.utils.contains('TUNE_CCARGS', '-mthumb', '-fomit-frame-pointer', '', d)}"
+
+PACKAGES =+ "jpeg-tools libturbojpeg"
+
+DESCRIPTION:jpeg-tools = "The jpeg-tools package includes client programs to access libjpeg functionality.  These tools allow for the compression, decompression, transformation and display of JPEG files and benchmarking of the libjpeg library."
+FILES:jpeg-tools = "${bindir}/*"
+
+DESCRIPTION:libturbojpeg = "A SIMD-accelerated JPEG codec which provides only TurboJPEG APIs"
+FILES:libturbojpeg = "${libdir}/libturbojpeg.so.*"
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-graphics/libepoxy/libepoxy_1.5.8.bb b/poky/meta/recipes-graphics/libepoxy/libepoxy_1.5.8.bb
index 2cd096a..dd621b1 100644
--- a/poky/meta/recipes-graphics/libepoxy/libepoxy_1.5.8.bb
+++ b/poky/meta/recipes-graphics/libepoxy/libepoxy_1.5.8.bb
@@ -25,8 +25,8 @@
 
 EXTRA_OEMESON += "-Dtests=false"
 
-PACKAGECONFIG_class-native = "egl x11"
-PACKAGECONFIG_class-nativesdk = "egl x11"
+PACKAGECONFIG:class-native = "egl x11"
+PACKAGECONFIG:class-nativesdk = "egl x11"
 
 BBCLASSEXTEND = "native nativesdk"
 
diff --git a/poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.14.bb b/poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.14.bb
index 3aac321..86b2fc1 100644
--- a/poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.14.bb
+++ b/poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.14.bb
@@ -11,8 +11,8 @@
 LIC_FILES_CHKSUM = "file://COPYING.txt;md5=2d4af6adb4d89aad0cdedbcc18c9a32f"
 
 # arm-neon adds MIT license
-LICENSE_append = " ${@bb.utils.contains('PACKAGECONFIG', 'arm-neon', '& MIT', '', d)}"
-LIC_FILES_CHKSUM_append = " ${@bb.utils.contains('PACKAGECONFIG', 'arm-neon', 'file://src/video/arm/pixman-arm-neon-asm.h;md5=9a9cc1e51abbf1da58f4d9528ec9d49b;beginline=1;endline=24', '', d)}"
+LICENSE:append = " ${@bb.utils.contains('PACKAGECONFIG', 'arm-neon', '& MIT', '', d)}"
+LIC_FILES_CHKSUM:append = " ${@bb.utils.contains('PACKAGECONFIG', 'arm-neon', 'file://src/video/arm/pixman-arm-neon-asm.h;md5=9a9cc1e51abbf1da58f4d9528ec9d49b;beginline=1;endline=24', '', d)}"
 
 PROVIDES = "virtual/libsdl2"
 
@@ -45,8 +45,8 @@
 # and BSP layers to pick either (desktop) opengl, gles2, or no GL
 PACKAGECONFIG_GL ?= "${@bb.utils.filter('DISTRO_FEATURES', 'opengl', d)}"
 
-PACKAGECONFIG_class-native = "x11 ${PACKAGECONFIG_GL}"
-PACKAGECONFIG_class-nativesdk = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)} ${PACKAGECONFIG_GL}"
+PACKAGECONFIG:class-native = "x11 ${PACKAGECONFIG_GL}"
+PACKAGECONFIG:class-nativesdk = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)} ${PACKAGECONFIG_GL}"
 PACKAGECONFIG ??= " \
     ${PACKAGECONFIG_GL} \
     ${@bb.utils.filter('DISTRO_FEATURES', 'alsa directfb pulseaudio x11', d)} \
@@ -65,9 +65,9 @@
 PACKAGECONFIG[x11]        = "--enable-video-x11,--disable-video-x11,virtual/libx11 libxext libxrandr libxrender"
 
 EXTRA_AUTORECONF += "--include=acinclude --exclude=autoheader"
-CFLAGS_append_class-native = " -DNO_SHARED_MEMORY"
+CFLAGS:append:class-native = " -DNO_SHARED_MEMORY"
 
-do_configure_prepend() {
+do_configure:prepend() {
         # Remove old libtool macros.
         MACROS="libtool.m4 lt~obsolete.m4 ltoptions.m4 ltsugar.m4 ltversion.m4"
         for i in ${MACROS}; do
diff --git a/poky/meta/recipes-graphics/libva/libva-initial_2.12.0.bb b/poky/meta/recipes-graphics/libva/libva-initial_2.12.0.bb
index 5c6abea..4c3045b 100644
--- a/poky/meta/recipes-graphics/libva/libva-initial_2.12.0.bb
+++ b/poky/meta/recipes-graphics/libva/libva-initial_2.12.0.bb
@@ -1,5 +1,5 @@
 require libva.inc
 
-do_install_append () {
+do_install:append () {
 	rm -f ${D}${libdir}/*.so*
 }
diff --git a/poky/meta/recipes-graphics/libva/libva_2.12.0.bb b/poky/meta/recipes-graphics/libva/libva_2.12.0.bb
index 4d3fa50..ed2be28 100644
--- a/poky/meta/recipes-graphics/libva/libva_2.12.0.bb
+++ b/poky/meta/recipes-graphics/libva/libva_2.12.0.bb
@@ -12,9 +12,9 @@
 
 PACKAGES =+ "${PN}-x11 ${PN}-glx ${PN}-wayland"
 
-RDEPENDS_${PN}-x11 =+ "${PN}"
-RDEPENDS_${PN}-glx =+ "${PN}-x11"
+RDEPENDS:${PN}-x11 =+ "${PN}"
+RDEPENDS:${PN}-glx =+ "${PN}-x11"
 
-FILES_${PN}-x11 =+ "${libdir}/libva-x11*${SOLIBS}"
-FILES_${PN}-glx =+ "${libdir}/libva-glx*${SOLIBS}"
-FILES_${PN}-wayland =+ "${libdir}/libva-wayland*${SOLIBS}"
+FILES:${PN}-x11 =+ "${libdir}/libva-x11*${SOLIBS}"
+FILES:${PN}-glx =+ "${libdir}/libva-glx*${SOLIBS}"
+FILES:${PN}-wayland =+ "${libdir}/libva-wayland*${SOLIBS}"
diff --git a/poky/meta/recipes-graphics/matchbox-session/matchbox-session_0.1.bb b/poky/meta/recipes-graphics/matchbox-session/matchbox-session_0.1.bb
index 57a3024..53229f2 100644
--- a/poky/meta/recipes-graphics/matchbox-session/matchbox-session_0.1.bb
+++ b/poky/meta/recipes-graphics/matchbox-session/matchbox-session_0.1.bb
@@ -7,7 +7,7 @@
 LIC_FILES_CHKSUM = "file://matchbox-session;endline=20;md5=180f1c169a15d059a56c30094f6fb5ea"
 
 SECTION = "x11"
-RCONFLICTS_${PN} = "matchbox-common"
+RCONFLICTS:${PN} = "matchbox-common"
 
 SRC_URI = "file://matchbox-session"
 S = "${WORKDIR}"
@@ -16,7 +16,7 @@
 
 inherit update-alternatives
 
-ALTERNATIVE_${PN} = "x-session-manager"
+ALTERNATIVE:${PN} = "x-session-manager"
 ALTERNATIVE_TARGET[x-session-manager] = "${bindir}/matchbox-session"
 ALTERNATIVE_PRIORITY = "100"
 
diff --git a/poky/meta/recipes-graphics/matchbox-wm/matchbox-wm_1.2.2.bb b/poky/meta/recipes-graphics/matchbox-wm/matchbox-wm_1.2.2.bb
index a08eb25..95a0604 100644
--- a/poky/meta/recipes-graphics/matchbox-wm/matchbox-wm_1.2.2.bb
+++ b/poky/meta/recipes-graphics/matchbox-wm/matchbox-wm_1.2.2.bb
@@ -22,7 +22,7 @@
 # depends on virtual/libx11
 REQUIRED_DISTRO_FEATURES = "x11"
 
-FILES_${PN} = "${bindir}/* \
+FILES:${PN} = "${bindir}/* \
                ${datadir}/matchbox \
                ${sysconfdir}/matchbox \
                ${datadir}/themes/blondie/matchbox \
@@ -35,6 +35,6 @@
                  --with-expat-lib=${STAGING_LIBDIR} \
                  --with-expat-includes=${STAGING_INCDIR}"
 
-do_install_prepend() {
+do_install:prepend() {
 	install ${WORKDIR}/kbdconfig ${S}/data/kbdconfig
 }
diff --git a/poky/meta/recipes-graphics/mesa/files/0001-v3d-vc4-Fix-dmabuf-import-for-non-scanout-buffers.patch b/poky/meta/recipes-graphics/mesa/files/0001-v3d-vc4-Fix-dmabuf-import-for-non-scanout-buffers.patch
new file mode 100644
index 0000000..1a87710
--- /dev/null
+++ b/poky/meta/recipes-graphics/mesa/files/0001-v3d-vc4-Fix-dmabuf-import-for-non-scanout-buffers.patch
@@ -0,0 +1,72 @@
+From 303c02a31df4e2b8f6090e75982922a9cba33e4c Mon Sep 17 00:00:00 2001
+From: Joshua Watt <JPEWhacker@gmail.com>
+Date: Tue, 27 Jul 2021 11:41:53 -0500
+Subject: [PATCH] v3d, vc4: Fix dmabuf import for non-scanout buffers
+
+Failure to create a buffer for scanout should not be fatal when
+importing a buffer. Buffers allocated from a render-only device may not
+be able to scanned out directly but can still be used for other
+rendering purposes (e.g. as a texture).
+
+Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
+Upstream-Status: Submitted [https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12081]
+---
+ src/gallium/drivers/v3d/v3d_resource.c | 13 +++++--------
+ src/gallium/drivers/vc4/vc4_resource.c |  3 ---
+ 2 files changed, 5 insertions(+), 11 deletions(-)
+
+diff --git a/src/gallium/drivers/v3d/v3d_resource.c b/src/gallium/drivers/v3d/v3d_resource.c
+index 602ba6d8447..02dc29ae6a0 100644
+--- a/src/gallium/drivers/v3d/v3d_resource.c
++++ b/src/gallium/drivers/v3d/v3d_resource.c
+@@ -433,10 +433,11 @@ v3d_resource_get_handle(struct pipe_screen *pscreen,
+                 return v3d_bo_flink(bo, &whandle->handle);
+         case WINSYS_HANDLE_TYPE_KMS:
+                 if (screen->ro) {
+-                        assert(rsc->scanout);
+-                        bool ok = renderonly_get_handle(rsc->scanout, whandle);
+-                        whandle->stride = rsc->slices[0].stride;
+-                        return ok;
++                        if (renderonly_get_handle(rsc->scanout, whandle)) {
++                                whandle->stride = rsc->slices[0].stride;
++                                return true;
++                        }
++                        return false;
+                 }
+                 whandle->handle = bo->handle;
+                 return true;
+@@ -929,10 +930,6 @@ v3d_resource_from_handle(struct pipe_screen *pscreen,
+                         renderonly_create_gpu_import_for_resource(prsc,
+                                                                   screen->ro,
+                                                                   NULL);
+-                if (!rsc->scanout) {
+-                        fprintf(stderr, "Failed to create scanout resource.\n");
+-                        goto fail;
+-                }
+         }
+ 
+         if (rsc->tiled && whandle->stride != slice->stride) {
+diff --git a/src/gallium/drivers/vc4/vc4_resource.c b/src/gallium/drivers/vc4/vc4_resource.c
+index 61e5fd7e5a6..bf3f7656ff8 100644
+--- a/src/gallium/drivers/vc4/vc4_resource.c
++++ b/src/gallium/drivers/vc4/vc4_resource.c
+@@ -320,7 +320,6 @@ vc4_resource_get_handle(struct pipe_screen *pscreen,
+                 return vc4_bo_flink(rsc->bo, &whandle->handle);
+         case WINSYS_HANDLE_TYPE_KMS:
+                 if (screen->ro) {
+-                        assert(rsc->scanout);
+                         return renderonly_get_handle(rsc->scanout, whandle);
+                 }
+                 whandle->handle = rsc->bo->handle;
+@@ -689,8 +688,6 @@ vc4_resource_from_handle(struct pipe_screen *pscreen,
+                         renderonly_create_gpu_import_for_resource(prsc,
+                                                                   screen->ro,
+                                                                   NULL);
+-                if (!rsc->scanout)
+-                        goto fail;
+         }
+ 
+         if (rsc->tiled && whandle->stride != slice->stride) {
+-- 
+2.32.0
+
diff --git a/poky/meta/recipes-graphics/mesa/libglu_9.0.2.bb b/poky/meta/recipes-graphics/mesa/libglu_9.0.2.bb
index ae18f86..64fa82e 100644
--- a/poky/meta/recipes-graphics/mesa/libglu_9.0.2.bb
+++ b/poky/meta/recipes-graphics/mesa/libglu_9.0.2.bb
@@ -25,4 +25,4 @@
 REQUIRED_DISTRO_FEATURES = "x11 opengl"
 
 # Remove the mesa-glu dependency in mesa-glu-dev, as mesa-glu is empty
-RDEPENDS_${PN}-dev = ""
+RDEPENDS:${PN}-dev = ""
diff --git a/poky/meta/recipes-graphics/mesa/mesa-demos_8.4.0.bb b/poky/meta/recipes-graphics/mesa/mesa-demos_8.4.0.bb
index 38bdbde..368af4e 100644
--- a/poky/meta/recipes-graphics/mesa/mesa-demos_8.4.0.bb
+++ b/poky/meta/recipes-graphics/mesa/mesa-demos_8.4.0.bb
@@ -49,7 +49,7 @@
 PACKAGECONFIG[glu] = "--enable-glu,--disable-glu,virtual/libgl"
 PACKAGECONFIG[glx] = "--enable-glx-demos,--disable-glx-demos"
 
-do_install_append() {
+do_install:append() {
 	# it can be completely empty when all PACKAGECONFIG options are disabled
 	rmdir --ignore-fail-on-non-empty ${D}${bindir}
 
diff --git a/poky/meta/recipes-graphics/mesa/mesa-gl_21.1.5.bb b/poky/meta/recipes-graphics/mesa/mesa-gl_21.1.5.bb
index dff79f0..142bb74 100644
--- a/poky/meta/recipes-graphics/mesa/mesa-gl_21.1.5.bb
+++ b/poky/meta/recipes-graphics/mesa/mesa-gl_21.1.5.bb
@@ -9,7 +9,7 @@
 # At least one DRI rendering engine is required to build mesa.
 # When no X11 is available, use osmesa for the rendering engine.
 PACKAGECONFIG ??= "opengl dri ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', 'osmesa gallium', d)}"
-PACKAGECONFIG_class-target = "opengl dri ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', 'osmesa gallium', d)}"
+PACKAGECONFIG:class-target = "opengl dri ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', 'osmesa gallium', d)}"
 
 # 21.0.0 version fails to build when any driver is enabled in DRIDRIVERS
 # ./mesa-21.0.0/meson.build:519:4: ERROR: Problem encountered: building dri drivers require at least one windowing system
diff --git a/poky/meta/recipes-graphics/mesa/mesa.inc b/poky/meta/recipes-graphics/mesa/mesa.inc
index 6a0df4f..4f446da 100644
--- a/poky/meta/recipes-graphics/mesa/mesa.inc
+++ b/poky/meta/recipes-graphics/mesa/mesa.inc
@@ -19,6 +19,7 @@
            file://0002-meson.build-make-TLS-ELF-optional.patch \
            file://0001-meson-misdetects-64bit-atomics-on-mips-clang.patch \
            file://0001-futex.h-Define-__NR_futex-if-it-does-not-exist.patch \
+           file://0001-v3d-vc4-Fix-dmabuf-import-for-non-scanout-buffers.patch \
            "
 
 SRC_URI[sha256sum] = "022c7293074aeeced2278c872db4fa693147c70f8595b076cf3f1ef81520766d"
@@ -27,7 +28,7 @@
 
 #because we cannot rely on the fact that all apps will use pkgconfig,
 #make eglplatform.h independent of MESA_EGL_NO_X11_HEADER
-do_install_append() {
+do_install:append() {
     if ${@bb.utils.contains('PACKAGECONFIG', 'egl', 'true', 'false', d)}; then
         sed -i -e 's/^#elif defined(__unix__) && defined(EGL_NO_X11)$/#elif defined(__unix__) \&\& defined(EGL_NO_X11) || ${@bb.utils.contains('PACKAGECONFIG', 'x11', '0', '1', d)}/' ${D}${includedir}/EGL/eglplatform.h
     fi
@@ -47,7 +48,7 @@
 
 BBCLASSEXTEND = "native nativesdk"
 
-ANY_OF_DISTRO_FEATURES_class-target = "opengl vulkan"
+ANY_OF_DISTRO_FEATURES:class-target = "opengl vulkan"
 
 PLATFORMS ??= "${@bb.utils.filter('PACKAGECONFIG', 'x11 wayland', d)}"
 
@@ -81,16 +82,16 @@
 def strip_comma(s):
     return s.strip(',')
 
-PACKAGECONFIG_class-target ??= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland vulkan', d)} \
+PACKAGECONFIG:class-target ??= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland vulkan', d)} \
                    ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'opengl egl gles gbm dri gallium virgl', '', d)} \
                    ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'x11 dri3', '', d)} \
                    ${@bb.utils.contains('DISTRO_FEATURES', 'x11 vulkan', 'dri3', '', d)} \
                    elf-tls \
 		   "
-PACKAGECONFIG_class-native ?= "gbm gallium egl opengl elf-tls x11"
-PACKAGECONFIG_class-nativesdk ?= "gbm gallium egl opengl elf-tls x11"
+PACKAGECONFIG:class-native ?= "gbm gallium egl opengl elf-tls x11"
+PACKAGECONFIG:class-nativesdk ?= "gbm gallium egl opengl elf-tls x11"
 
-PACKAGECONFIG_remove_libc-musl = "elf-tls"
+PACKAGECONFIG:remove:libc-musl = "elf-tls"
 
 # "gbm" requires "dri", "opengl"
 PACKAGECONFIG[gbm] = "-Dgbm=enabled,-Dgbm=disabled"
@@ -109,9 +110,9 @@
 # Vulkan drivers need dri3 enabled
 # amd could be enabled as well but requires gallium-llvm with llvm >= 3.9
 VULKAN_DRIVERS = ""
-VULKAN_DRIVERS_append_x86_class-target = ",intel"
-VULKAN_DRIVERS_append_x86-64_class-target = ",intel"
-VULKAN_DRIVERS_append ="${@bb.utils.contains('PACKAGECONFIG', 'freedreno', ',freedreno', '', d)}"
+VULKAN_DRIVERS:append:x86:class-target = ",intel"
+VULKAN_DRIVERS:append:x86-64:class-target = ",intel"
+VULKAN_DRIVERS:append ="${@bb.utils.contains('PACKAGECONFIG', 'freedreno', ',freedreno', '', d)}"
 PACKAGECONFIG[vulkan] = "-Dvulkan-drivers=${@strip_comma('${VULKAN_DRIVERS}')}, -Dvulkan-drivers='',"
 
 PACKAGECONFIG[opengl] = "-Dopengl=true, -Dopengl=false"
@@ -130,16 +131,16 @@
 
 GALLIUMDRIVERS = "swrast"
 # gallium swrast was found to crash Xorg on startup in x32 qemu
-GALLIUMDRIVERS_x86-x32 = ""
+GALLIUMDRIVERS:x86-x32 = ""
 # Add crocus when 21.2 is out to the list below to support the full range of Intel GPUs
-GALLIUMDRIVERS_append_x86_class-target = ",i915,iris"
-GALLIUMDRIVERS_append_x86-64_class-target = ",i915,iris"
+GALLIUMDRIVERS:append:x86:class-target = ",i915,iris"
+GALLIUMDRIVERS:append:x86-64:class-target = ",i915,iris"
 
-GALLIUMDRIVERS_append ="${@bb.utils.contains('PACKAGECONFIG', 'etnaviv', ',etnaviv', '', d)}"
-GALLIUMDRIVERS_append ="${@bb.utils.contains('PACKAGECONFIG', 'freedreno', ',freedreno', '', d)}"
-GALLIUMDRIVERS_append ="${@bb.utils.contains('PACKAGECONFIG', 'kmsro', ',kmsro', '', d)}"
-GALLIUMDRIVERS_append ="${@bb.utils.contains('PACKAGECONFIG', 'vc4', ',vc4', '', d)}"
-GALLIUMDRIVERS_append ="${@bb.utils.contains('PACKAGECONFIG', 'v3d', ',v3d', '', d)}"
+GALLIUMDRIVERS:append ="${@bb.utils.contains('PACKAGECONFIG', 'etnaviv', ',etnaviv', '', d)}"
+GALLIUMDRIVERS:append ="${@bb.utils.contains('PACKAGECONFIG', 'freedreno', ',freedreno', '', d)}"
+GALLIUMDRIVERS:append ="${@bb.utils.contains('PACKAGECONFIG', 'kmsro', ',kmsro', '', d)}"
+GALLIUMDRIVERS:append ="${@bb.utils.contains('PACKAGECONFIG', 'vc4', ',vc4', '', d)}"
+GALLIUMDRIVERS:append ="${@bb.utils.contains('PACKAGECONFIG', 'v3d', ',v3d', '', d)}"
 
 # radeonsi requires LLVM
 GALLIUMDRIVERS_RADEONSI = "${@bb.utils.contains('PACKAGECONFIG', 'r600', ',radeonsi', '', d)}"
@@ -148,9 +149,9 @@
 PACKAGECONFIG[r600] = ""
 PACKAGECONFIG[virgl] = ""
 
-GALLIUMDRIVERS_append = "${@bb.utils.contains('PACKAGECONFIG', 'gallium-llvm', ',${GALLIUMDRIVERS_LLVM}', '', d)}"
-GALLIUMDRIVERS_append = "${@bb.utils.contains('PACKAGECONFIG', 'r600', ',r600', '', d)}"
-GALLIUMDRIVERS_append = "${@bb.utils.contains('PACKAGECONFIG', 'virgl', ',virgl', '', d)}"
+GALLIUMDRIVERS:append = "${@bb.utils.contains('PACKAGECONFIG', 'gallium-llvm', ',${GALLIUMDRIVERS_LLVM}', '', d)}"
+GALLIUMDRIVERS:append = "${@bb.utils.contains('PACKAGECONFIG', 'r600', ',r600', '', d)}"
+GALLIUMDRIVERS:append = "${@bb.utils.contains('PACKAGECONFIG', 'virgl', ',virgl', '', d)}"
 
 PACKAGECONFIG[gallium] = "-Dgallium-drivers=${@strip_comma('${GALLIUMDRIVERS}')}, -Dgallium-drivers='', libdrm"
 PACKAGECONFIG[gallium-llvm] = "-Dllvm=enabled -Dshared-llvm=enabled, -Dllvm=disabled, llvm${MESA_LLVM_RELEASE} llvm-native \
@@ -161,10 +162,10 @@
 PACKAGECONFIG[vdpau] = "-Dgallium-vdpau=enabled,-Dgallium-vdpau=disabled,libvdpau"
 
 PACKAGECONFIG[lima] = ""
-GALLIUMDRIVERS_append ="${@bb.utils.contains('PACKAGECONFIG', 'lima', ',lima', '', d)}"
+GALLIUMDRIVERS:append ="${@bb.utils.contains('PACKAGECONFIG', 'lima', ',lima', '', d)}"
 
 PACKAGECONFIG[panfrost] = ""
-GALLIUMDRIVERS_append ="${@bb.utils.contains('PACKAGECONFIG', 'panfrost', ',panfrost', '', d)}"
+GALLIUMDRIVERS:append ="${@bb.utils.contains('PACKAGECONFIG', 'panfrost', ',panfrost', '', d)}"
 
 PACKAGECONFIG[osmesa] = "-Dosmesa=true,-Dosmesa=false"
 
@@ -173,16 +174,16 @@
 PACKAGECONFIG[lmsensors] = "-Dlmsensors=enabled,-Dlmsensors=disabled,lmsensors"
 
 # llvmpipe is slow if compiled with -fomit-frame-pointer (e.g. -O2)
-FULL_OPTIMIZATION_append = " -fno-omit-frame-pointer"
+FULL_OPTIMIZATION:append = " -fno-omit-frame-pointer"
 
-CFLAGS_append_armv5 = " -DMISSING_64BIT_ATOMICS"
-CFLAGS_append_armv6 = " -DMISSING_64BIT_ATOMICS"
+CFLAGS:append:armv5 = " -DMISSING_64BIT_ATOMICS"
+CFLAGS:append:armv6 = " -DMISSING_64BIT_ATOMICS"
 
 # Remove the mesa dependency on mesa-dev, as mesa is empty
-RDEPENDS_${PN}-dev = ""
+RDEPENDS:${PN}-dev = ""
 
 # Add dependency so that GLES3 header don't need to be added manually
-RDEPENDS_libgles2-mesa-dev += "libgles3-mesa-dev"
+RDEPENDS:libgles2-mesa-dev += "libgles3-mesa-dev"
 
 PACKAGES =+ "libegl-mesa libegl-mesa-dev \
              libosmesa libosmesa-dev \
@@ -197,7 +198,7 @@
              mesa-vdpau-drivers \
             "
 
-do_install_append () {
+do_install:append () {
     # Drivers never need libtool .la files
     rm -f ${D}${libdir}/dri/*.la
     rm -f ${D}${libdir}/egl/*.la
@@ -230,29 +231,29 @@
         mlprefix = d.getVar("MLPREFIX")
         fullp = mlprefix + p[1] + "-mesa" + suffix
         mlprefix = d.getVar("MLPREFIX")
-        pkgs = " ".join(mlprefix + x + suffix for x in p[1:])
-        d.setVar("DEBIAN_NOAUTONAME_" + fullp, "1")
-        d.appendVar("RREPLACES_" + fullp, pkgs)
-        d.appendVar("RPROVIDES_" + fullp, pkgs)
-        d.appendVar("RCONFLICTS_" + fullp, pkgs)
+        pkgs = " " + " ".join(mlprefix + x + suffix for x in p[1:])
+        d.setVar("DEBIAN_NOAUTONAME:" + fullp, "1")
+        d.appendVar("RREPLACES:" + fullp, pkgs)
+        d.appendVar("RPROVIDES:" + fullp, pkgs)
+        d.appendVar("RCONFLICTS:" + fullp, pkgs)
 
-        d.appendVar("RRECOMMENDS_" + fullp, " ${MLPREFIX}mesa-megadriver" + suffix)
+        d.appendVar("RRECOMMENDS:" + fullp, " ${MLPREFIX}mesa-megadriver" + suffix)
 
         # For -dev, the first element is both the Debian and original name
         fullp = mlprefix + p[1] + "-mesa-dev" + suffix
-        pkgs = mlprefix + p[1] + "-dev" + suffix
-        d.setVar("DEBIAN_NOAUTONAME_" + fullp, "1")
-        d.appendVar("RREPLACES_" + fullp, pkgs)
-        d.appendVar("RPROVIDES_" + fullp, pkgs)
-        d.appendVar("RCONFLICTS_" + fullp, pkgs)
+        pkgs = " " + mlprefix + p[1] + "-dev" + suffix
+        d.setVar("DEBIAN_NOAUTONAME:" + fullp, "1")
+        d.appendVar("RREPLACES:" + fullp, pkgs)
+        d.appendVar("RPROVIDES:" + fullp, pkgs)
+        d.appendVar("RCONFLICTS:" + fullp, pkgs)
 }
 
 python mesa_populate_packages() {
     pkgs = ['mesa', 'mesa-dev', 'mesa-dbg']
     for pkg in pkgs:
-        d.setVar("RPROVIDES_%s" % pkg, pkg.replace("mesa", "mesa-dri", 1))
-        d.setVar("RCONFLICTS_%s" % pkg, pkg.replace("mesa", "mesa-dri", 1))
-        d.setVar("RREPLACES_%s" % pkg, pkg.replace("mesa", "mesa-dri", 1))
+        d.setVar("RPROVIDES:%s" % pkg, pkg.replace("mesa", "mesa-dri", 1))
+        d.setVar("RCONFLICTS:%s" % pkg, pkg.replace("mesa", "mesa-dri", 1))
+        d.setVar("RREPLACES:%s" % pkg, pkg.replace("mesa", "mesa-dri", 1))
 
     import re
     dri_drivers_root = oe.path.join(d.getVar('PKGD'), d.getVar('libdir'), "dri")
@@ -263,45 +264,45 @@
             m = re.match(r'^(.*)_dri\.so$', p)
             if m:
                 pkg_name = " ${MLPREFIX}mesa-driver-%s" % legitimize_package_name(m.group(1))
-                d.appendVar("RPROVIDES_%s" % lib_name, pkg_name)
-                d.appendVar("RCONFLICTS_%s" % lib_name, pkg_name)
-                d.appendVar("RREPLACES_%s" % lib_name, pkg_name)
+                d.appendVar("RPROVIDES:%s" % lib_name, pkg_name)
+                d.appendVar("RCONFLICTS:%s" % lib_name, pkg_name)
+                d.appendVar("RREPLACES:%s" % lib_name, pkg_name)
 
     pipe_drivers_root = os.path.join(d.getVar('libdir'), "gallium-pipe")
     do_split_packages(d, pipe_drivers_root, r'^pipe_(.*)\.so$', 'mesa-driver-pipe-%s', 'Mesa %s pipe driver', extra_depends='')
 }
 
-PACKAGESPLITFUNCS_prepend = "mesa_populate_packages "
+PACKAGESPLITFUNCS:prepend = "mesa_populate_packages "
 
 PACKAGES_DYNAMIC += "^mesa-driver-.*"
-PACKAGES_DYNAMIC_class-native = "^mesa-driver-.*-native"
+PACKAGES_DYNAMIC:class-native = "^mesa-driver-.*-native"
 
-FILES_mesa-megadriver = "${libdir}/dri/* ${datadir}/drirc.d/00-mesa-defaults.conf"
-FILES_mesa-vulkan-drivers = "${libdir}/libvulkan_*.so ${datadir}/vulkan"
-FILES_${PN}-vdpau-drivers = "${libdir}/vdpau/*.so.*"
-FILES_libegl-mesa = "${libdir}/libEGL.so.*"
-FILES_libgbm = "${libdir}/libgbm.so.*"
-FILES_libgles1-mesa = "${libdir}/libGLESv1*.so.*"
-FILES_libgles2-mesa = "${libdir}/libGLESv2.so.*"
-FILES_libgl-mesa = "${libdir}/libGL.so.*"
-FILES_libglapi = "${libdir}/libglapi.so.*"
-FILES_libosmesa = "${libdir}/libOSMesa.so.*"
-FILES_libxatracker = "${libdir}/libxatracker.so.*"
+FILES:mesa-megadriver = "${libdir}/dri/* ${datadir}/drirc.d/00-mesa-defaults.conf"
+FILES:mesa-vulkan-drivers = "${libdir}/libvulkan_*.so ${datadir}/vulkan"
+FILES:${PN}-vdpau-drivers = "${libdir}/vdpau/*.so.*"
+FILES:libegl-mesa = "${libdir}/libEGL.so.*"
+FILES:libgbm = "${libdir}/libgbm.so.*"
+FILES:libgles1-mesa = "${libdir}/libGLESv1*.so.*"
+FILES:libgles2-mesa = "${libdir}/libGLESv2.so.*"
+FILES:libgl-mesa = "${libdir}/libGL.so.*"
+FILES:libglapi = "${libdir}/libglapi.so.*"
+FILES:libosmesa = "${libdir}/libOSMesa.so.*"
+FILES:libxatracker = "${libdir}/libxatracker.so.*"
 
-FILES_${PN}-dev = "${libdir}/pkgconfig/dri.pc ${includedir}/vulkan ${libdir}/vdpau/*.so"
-FILES_libegl-mesa-dev = "${libdir}/libEGL.* ${includedir}/EGL ${includedir}/KHR ${libdir}/pkgconfig/egl.pc"
-FILES_libgbm-dev = "${libdir}/libgbm.* ${libdir}/pkgconfig/gbm.pc ${includedir}/gbm.h"
-FILES_libgl-mesa-dev = "${libdir}/libGL.* ${includedir}/GL ${libdir}/pkgconfig/gl.pc"
-FILES_libglapi-dev = "${libdir}/libglapi.*"
-FILES_libgles1-mesa-dev = "${libdir}/libGLESv1*.* ${includedir}/GLES ${libdir}/pkgconfig/glesv1*.pc"
-FILES_libgles2-mesa-dev = "${libdir}/libGLESv2.* ${includedir}/GLES2 ${libdir}/pkgconfig/glesv2.pc"
-FILES_libgles3-mesa-dev = "${includedir}/GLES3"
-FILES_libosmesa-dev = "${libdir}/libOSMesa.* ${includedir}/GL/osmesa.h ${libdir}/pkgconfig/osmesa.pc"
-FILES_libxatracker-dev = "${libdir}/libxatracker.so ${libdir}/libxatracker.la \
+FILES:${PN}-dev = "${libdir}/pkgconfig/dri.pc ${includedir}/vulkan ${libdir}/vdpau/*.so"
+FILES:libegl-mesa-dev = "${libdir}/libEGL.* ${includedir}/EGL ${includedir}/KHR ${libdir}/pkgconfig/egl.pc"
+FILES:libgbm-dev = "${libdir}/libgbm.* ${libdir}/pkgconfig/gbm.pc ${includedir}/gbm.h"
+FILES:libgl-mesa-dev = "${libdir}/libGL.* ${includedir}/GL ${libdir}/pkgconfig/gl.pc"
+FILES:libglapi-dev = "${libdir}/libglapi.*"
+FILES:libgles1-mesa-dev = "${libdir}/libGLESv1*.* ${includedir}/GLES ${libdir}/pkgconfig/glesv1*.pc"
+FILES:libgles2-mesa-dev = "${libdir}/libGLESv2.* ${includedir}/GLES2 ${libdir}/pkgconfig/glesv2.pc"
+FILES:libgles3-mesa-dev = "${includedir}/GLES3"
+FILES:libosmesa-dev = "${libdir}/libOSMesa.* ${includedir}/GL/osmesa.h ${libdir}/pkgconfig/osmesa.pc"
+FILES:libxatracker-dev = "${libdir}/libxatracker.so ${libdir}/libxatracker.la \
                           ${includedir}/xa_tracker.h ${includedir}/xa_composite.h ${includedir}/xa_context.h \
                           ${libdir}/pkgconfig/xatracker.pc"
 
 # Fix upgrade path from mesa to mesa-megadriver
-RREPLACES_mesa-megadriver = "mesa"
-RCONFLICTS_mesa-megadriver = "mesa"
-RPROVIDES_mesa-megadriver = "mesa"
+RREPLACES:mesa-megadriver = "mesa"
+RCONFLICTS:mesa-megadriver = "mesa"
+RPROVIDES:mesa-megadriver = "mesa"
diff --git a/poky/meta/recipes-graphics/mesa/mesa_21.1.5.bb b/poky/meta/recipes-graphics/mesa/mesa_21.1.5.bb
index 28abc91..951fe83 100644
--- a/poky/meta/recipes-graphics/mesa/mesa_21.1.5.bb
+++ b/poky/meta/recipes-graphics/mesa/mesa_21.1.5.bb
@@ -1,5 +1,4 @@
 require ${BPN}.inc
-
-DRIDRIVERS_append_x86_class-target = ",r100,r200,nouveau,i965"
-DRIDRIVERS_append_x86-64_class-target = ",r100,r200,nouveau,i965"
-
+DRIDRIVERS ??= ""
+DRIDRIVERS:append:x86:class-target = ",r100,r200,nouveau,i965"
+DRIDRIVERS:append:x86-64:class-target = ",r100,r200,nouveau,i965"
diff --git a/poky/meta/recipes-graphics/mini-x-session/mini-x-session_0.1.bb b/poky/meta/recipes-graphics/mini-x-session/mini-x-session_0.1.bb
index 549b0cb..470a5e9 100644
--- a/poky/meta/recipes-graphics/mini-x-session/mini-x-session_0.1.bb
+++ b/poky/meta/recipes-graphics/mini-x-session/mini-x-session_0.1.bb
@@ -9,16 +9,16 @@
 LIC_FILES_CHKSUM = "file://mini-x-session;endline=5;md5=b6430bffbcf05f9760e72938826b7487"
 
 SECTION = "x11"
-RCONFLICTS_${PN} = "matchbox-common"
+RCONFLICTS:${PN} = "matchbox-common"
 
 SRC_URI = "file://mini-x-session"
 S = "${WORKDIR}"
 
-RDEPENDS_${PN} = "sudo"
+RDEPENDS:${PN} = "sudo"
 
 inherit update-alternatives
 
-ALTERNATIVE_${PN} = "x-session-manager"
+ALTERNATIVE:${PN} = "x-session-manager"
 ALTERNATIVE_TARGET[x-session-manager] = "${bindir}/mini-x-session"
 ALTERNATIVE_PRIORITY = "50"
 
diff --git a/poky/meta/recipes-graphics/packagegroups/packagegroup-core-weston.bb b/poky/meta/recipes-graphics/packagegroups/packagegroup-core-weston.bb
index 7dcfd67..0ce91ca 100644
--- a/poky/meta/recipes-graphics/packagegroups/packagegroup-core-weston.bb
+++ b/poky/meta/recipes-graphics/packagegroups/packagegroup-core-weston.bb
@@ -7,7 +7,7 @@
 # weston-init requires pam enabled if started via systemd
 REQUIRED_DISTRO_FEATURES = "wayland ${@oe.utils.conditional('VIRTUAL-RUNTIME_init_manager', 'systemd', 'pam', '', d)}"
 
-RDEPENDS_${PN} = "\
+RDEPENDS:${PN} = "\
     weston \
     weston-init \
     weston-examples \
diff --git a/poky/meta/recipes-graphics/packagegroups/packagegroup-core-x11-base.bb b/poky/meta/recipes-graphics/packagegroups/packagegroup-core-x11-base.bb
index 9ca2705..4e6d990 100644
--- a/poky/meta/recipes-graphics/packagegroups/packagegroup-core-x11-base.bb
+++ b/poky/meta/recipes-graphics/packagegroups/packagegroup-core-x11-base.bb
@@ -6,7 +6,7 @@
 # rdepends on matchbox-wm
 REQUIRED_DISTRO_FEATURES = "x11"
 
-RDEPENDS_${PN} = "\
+RDEPENDS:${PN} = "\
     packagegroup-core-x11-xserver \
     packagegroup-core-x11-utils \
     dbus \
diff --git a/poky/meta/recipes-graphics/packagegroups/packagegroup-core-x11-xserver.bb b/poky/meta/recipes-graphics/packagegroups/packagegroup-core-x11-xserver.bb
index a0b944a..3bb308f 100644
--- a/poky/meta/recipes-graphics/packagegroups/packagegroup-core-x11-xserver.bb
+++ b/poky/meta/recipes-graphics/packagegroups/packagegroup-core-x11-xserver.bb
@@ -14,7 +14,7 @@
 XSERVER ?= "xserver-xorg xf86-video-fbdev"
 XSERVERCODECS ?= ""
 
-RDEPENDS_${PN} = "\
+RDEPENDS:${PN} = "\
     ${XSERVER} \
     ${XSERVERCODECS} \
     "
diff --git a/poky/meta/recipes-graphics/packagegroups/packagegroup-core-x11.bb b/poky/meta/recipes-graphics/packagegroups/packagegroup-core-x11.bb
index cddf193..9ca058b 100644
--- a/poky/meta/recipes-graphics/packagegroups/packagegroup-core-x11.bb
+++ b/poky/meta/recipes-graphics/packagegroups/packagegroup-core-x11.bb
@@ -16,13 +16,13 @@
 VIRTUAL-RUNTIME_graphical_init_manager ?= "xserver-nodm-init"
 
 SUMMARY = "X11 display server and basic utilities"
-RDEPENDS_${PN} = "\
+RDEPENDS:${PN} = "\
     ${PN}-xserver \
     ${PN}-utils \
     "
 
-SUMMARY_${PN}-utils = "X11 basic utilities and init"
-RDEPENDS_${PN}-utils = "\
+SUMMARY:${PN}-utils = "X11 basic utilities and init"
+RDEPENDS:${PN}-utils = "\
     ${VIRTUAL-RUNTIME_xserver_common} \
     ${VIRTUAL-RUNTIME_graphical_init_manager} \
     xauth \
diff --git a/poky/meta/recipes-graphics/pango/pango_1.48.7.bb b/poky/meta/recipes-graphics/pango/pango_1.48.7.bb
index 963fd5d..48a7786 100644
--- a/poky/meta/recipes-graphics/pango/pango_1.48.7.bb
+++ b/poky/meta/recipes-graphics/pango/pango_1.48.7.bb
@@ -33,22 +33,22 @@
 
 GIR_MESON_OPTION = 'introspection'
 
-do_configure_prepend() {
+do_configure:prepend() {
     chmod +x ${S}/tests/*.py
 }
 
-do_configure_prepend_toolchain-clang() {
+do_configure:prepend:toolchain-clang() {
     sed -i -e "/Werror=implicit-fallthrough/d" ${S}/meson.build
 }
 
 LEAD_SONAME = "libpango-1.0*"
 
-FILES_${PN} = "${bindir}/* ${libdir}/libpango*${SOLIBS}"
+FILES:${PN} = "${bindir}/* ${libdir}/libpango*${SOLIBS}"
 
-RDEPENDS_${PN}-ptest += "cantarell-fonts"
-RDEPENDS_${PN}-ptest_append_libc-glibc = " locale-base-en-us"
+RDEPENDS:${PN}-ptest += "cantarell-fonts"
+RDEPENDS:${PN}-ptest:append:libc-glibc = " locale-base-en-us"
 
-RPROVIDES_${PN} += "pango-modules pango-module-indic-lang \
+RPROVIDES:${PN} += "pango-modules pango-module-indic-lang \
                     pango-module-basic-fc pango-module-arabic-lang"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-graphics/piglit/piglit_git.bb b/poky/meta/recipes-graphics/piglit/piglit_git.bb
index b64a20a..2e0dfee 100644
--- a/poky/meta/recipes-graphics/piglit/piglit_git.bb
+++ b/poky/meta/recipes-graphics/piglit/piglit_git.bb
@@ -46,7 +46,7 @@
 
 export PIGLIT_BUILD_DIR = "../../../../git"
 
-do_configure_prepend() {
+do_configure:prepend() {
    if [ "${@bb.utils.contains('PACKAGECONFIG', 'freeglut', 'yes', 'no', d)}" = "no" ]; then
         sed -i -e "/^#.*include <GL\/freeglut_ext.h>$/d" ${S}/src/piglit/glut_wrap.h
         sed -i -e "/^#.*include.*<GL\/glut.h>$/d" ${S}/src/piglit/glut_wrap.h
@@ -56,18 +56,18 @@
 # Forcibly strip because Piglit is *huge*
 OECMAKE_TARGET_INSTALL = "install/strip"
 
-RDEPENDS_${PN} = "waffle waffle-bin python3 python3-mako python3-json \
+RDEPENDS:${PN} = "waffle waffle-bin python3 python3-mako python3-json \
 	python3-misc \
 	python3-unixadmin python3-xml python3-multiprocessing \
 	python3-six python3-shell python3-io \
 	python3-netserver bash \
 	"
 
-INSANE_SKIP_${PN} += "dev-so already-stripped"
+INSANE_SKIP:${PN} += "dev-so already-stripped"
 
 # As nothing builds against Piglit we don't need to have anything in the
 # sysroot, especially when this is ~2GB of test suite
-SYSROOT_DIRS_remove = "${libdir}"
+SYSROOT_DIRS:remove = "${libdir}"
 
 # Can't be built with ccache
 CCACHE_DISABLE = "1"
diff --git a/poky/meta/recipes-graphics/spir/spirv-tools_2021.2.bb b/poky/meta/recipes-graphics/spir/spirv-tools_2021.2.bb
index 6b5ad1e..f55bd51 100644
--- a/poky/meta/recipes-graphics/spir/spirv-tools_2021.2.bb
+++ b/poky/meta/recipes-graphics/spir/spirv-tools_2021.2.bb
@@ -25,7 +25,7 @@
     -DSPIRV_SKIP_TESTS=ON \
 "
 
-do_install_append_class-target() {
+do_install:append:class-target() {
     # reproducibility: remove build host path
     sed -i ${D}${libdir}/cmake/SPIRV-Tools/SPIRV-ToolsTarget.cmake \
         -e 's:${STAGING_DIR_HOST}::g'
@@ -36,7 +36,7 @@
 FILES_SOLIBSDEV = ""
 
 PACKAGES =+ "${PN}-lesspipe"
-FILES_${PN}-lesspipe = "${base_bindir}/spirv-lesspipe.sh"
-RDEPENDS_${PN}-lesspipe += "${PN} bash"
+FILES:${PN}-lesspipe = "${base_bindir}/spirv-lesspipe.sh"
+RDEPENDS:${PN}-lesspipe += "${PN} bash"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-graphics/ttf-fonts/liberation-fonts_2.1.4.bb b/poky/meta/recipes-graphics/ttf-fonts/liberation-fonts_2.1.4.bb
index e33c4d1..b8c2946 100644
--- a/poky/meta/recipes-graphics/ttf-fonts/liberation-fonts_2.1.4.bb
+++ b/poky/meta/recipes-graphics/ttf-fonts/liberation-fonts_2.1.4.bb
@@ -33,6 +33,6 @@
 }
 
 PACKAGES = "${PN}"
-FILES_${PN} += "${sysconfdir} ${datadir}"
+FILES:${PN} += "${sysconfdir} ${datadir}"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-graphics/ttf-fonts/ttf-bitstream-vera_1.10.bb b/poky/meta/recipes-graphics/ttf-fonts/ttf-bitstream-vera_1.10.bb
index 5226e84..1f1ad83 100644
--- a/poky/meta/recipes-graphics/ttf-fonts/ttf-bitstream-vera_1.10.bb
+++ b/poky/meta/recipes-graphics/ttf-fonts/ttf-bitstream-vera_1.10.bb
@@ -33,4 +33,4 @@
         done
 }
 
-FILES_${PN} = "${datadir}/fonts"
+FILES:${PN} = "${datadir}/fonts"
diff --git a/poky/meta/recipes-graphics/vulkan/vulkan-headers_1.2.182.0.bb b/poky/meta/recipes-graphics/vulkan/vulkan-headers_1.2.182.0.bb
index 736af7b..5ae56ec 100644
--- a/poky/meta/recipes-graphics/vulkan/vulkan-headers_1.2.182.0.bb
+++ b/poky/meta/recipes-graphics/vulkan/vulkan-headers_1.2.182.0.bb
@@ -17,6 +17,6 @@
 
 inherit cmake
 
-FILES_${PN} += "${datadir}/vulkan"
+FILES:${PN} += "${datadir}/vulkan"
 
 UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P<pver>\d+(\.\d+)+)"
diff --git a/poky/meta/recipes-graphics/vulkan/vulkan-loader_1.2.182.0.bb b/poky/meta/recipes-graphics/vulkan/vulkan-loader_1.2.182.0.bb
index ec09fd0..a36fa1f 100644
--- a/poky/meta/recipes-graphics/vulkan/vulkan-loader_1.2.182.0.bb
+++ b/poky/meta/recipes-graphics/vulkan/vulkan-loader_1.2.182.0.bb
@@ -36,6 +36,6 @@
 PACKAGECONFIG[x11] = "-DBUILD_WSI_XLIB_SUPPORT=ON -DBUILD_WSI_XCB_SUPPORT=ON, -DBUILD_WSI_XLIB_SUPPORT=OFF -DBUILD_WSI_XCB_SUPPORT=OFF, libxcb libx11 libxrandr"
 PACKAGECONFIG[wayland] = "-DBUILD_WSI_WAYLAND_SUPPORT=ON, -DBUILD_WSI_WAYLAND_SUPPORT=OFF, wayland"
 
-RRECOMMENDS_${PN} = "mesa-vulkan-drivers"
+RRECOMMENDS:${PN} = "mesa-vulkan-drivers"
 
 UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P<pver>\d+(\.\d+)+)"
diff --git a/poky/meta/recipes-graphics/vulkan/vulkan-samples_git.bb b/poky/meta/recipes-graphics/vulkan/vulkan-samples_git.bb
index 972173e..6488c00 100644
--- a/poky/meta/recipes-graphics/vulkan/vulkan-samples_git.bb
+++ b/poky/meta/recipes-graphics/vulkan/vulkan-samples_git.bb
@@ -11,7 +11,7 @@
            "
 
 UPSTREAM_CHECK_COMMITS = "1"
-SRCREV = "47c5237be21209afc945e43d03ae409fa80a0155"
+SRCREV = "43ee480644a20dbc8d4983b22578068f8bed7571"
 
 UPSTREAM_CHECK_GITTAGREGEX = "These are not the releases you're looking for"
 S = "${WORKDIR}/git"
@@ -20,7 +20,7 @@
 
 inherit cmake features_check
 
-FILES_${PN} += "${datadir}"
+FILES:${PN} += "${datadir}"
 
 #
 # There is code to remove the prefix CMAKE_SOURCE_DIR from __FILENAME__ paths
@@ -32,3 +32,6 @@
 # from some builds depending on the point the PCH was compiled. Disable it to be
 # deterministic
 EXTRA_OECMAKE += "-DCMAKE_DISABLE_PRECOMPILE_HEADERS=ON"
+
+# This needs to be specified explicitly to avoid xcb/xlib dependencies
+EXTRA_OECMAKE += "-DVKB_WSI_SELECTION=D2D"
diff --git a/poky/meta/recipes-graphics/waffle/waffle_1.6.1.bb b/poky/meta/recipes-graphics/waffle/waffle_1.6.1.bb
index 07d7279..fa5efc1 100644
--- a/poky/meta/recipes-graphics/waffle/waffle_1.6.1.bb
+++ b/poky/meta/recipes-graphics/waffle/waffle_1.6.1.bb
@@ -17,7 +17,7 @@
 
 inherit meson features_check lib_package bash-completion
 
-DEPENDS_append = " python3"
+DEPENDS:append = " python3"
 
 # This should be overridden per-machine to reflect the capabilities of the GL
 # stack.
diff --git a/poky/meta/recipes-graphics/wayland/libinput_1.18.0.bb b/poky/meta/recipes-graphics/wayland/libinput_1.18.0.bb
index e46071c..9d1ac81 100644
--- a/poky/meta/recipes-graphics/wayland/libinput_1.18.0.bb
+++ b/poky/meta/recipes-graphics/wayland/libinput_1.18.0.bb
@@ -23,7 +23,7 @@
 inherit meson pkgconfig lib_package ptest
 
 # Patch out build directory, otherwise it leaks into ptest binary
-do_configure_append() {
+do_configure:append() {
     sed -i -e "s,${WORKDIR},,g" config.h
     if [ -e "litest-config.h" ]; then
         sed -i -e "s,${WORKDIR},,g" litest-config.h
@@ -42,8 +42,8 @@
                   -Dzshcompletiondir=no"
 
 # package name changed in 1.8.1 upgrade: make sure package upgrades work
-RPROVIDES_${PN} = "libinput"
-RREPLACES_${PN} = "libinput"
-RCONFLICTS_${PN} = "libinput"
+RPROVIDES:${PN} = "libinput"
+RREPLACES:${PN} = "libinput"
+RCONFLICTS:${PN} = "libinput"
 
-FILES_${PN}-ptest += "${libexecdir}/libinput/libinput-test-suite"
+FILES:${PN}-ptest += "${libexecdir}/libinput/libinput-test-suite"
diff --git a/poky/meta/recipes-graphics/wayland/wayland-protocols_1.21.bb b/poky/meta/recipes-graphics/wayland/wayland-protocols_1.21.bb
index 16452f8..4a5a295 100644
--- a/poky/meta/recipes-graphics/wayland/wayland-protocols_1.21.bb
+++ b/poky/meta/recipes-graphics/wayland/wayland-protocols_1.21.bb
@@ -18,4 +18,4 @@
 inherit allarch autotools pkgconfig
 
 PACKAGES = "${PN}"
-FILES_${PN} += "${datadir}/pkgconfig/wayland-protocols.pc"
+FILES:${PN} += "${datadir}/pkgconfig/wayland-protocols.pc"
diff --git a/poky/meta/recipes-graphics/wayland/wayland_1.19.0.bb b/poky/meta/recipes-graphics/wayland/wayland_1.19.0.bb
index 0fda80c..d6e4684 100644
--- a/poky/meta/recipes-graphics/wayland/wayland_1.19.0.bb
+++ b/poky/meta/recipes-graphics/wayland/wayland_1.19.0.bb
@@ -28,11 +28,11 @@
 PACKAGECONFIG[dtd-validation] = "-Ddtd_validation=true,-Ddtd_validation=false,libxml2,,"
 
 EXTRA_OEMESON = "-Ddocumentation=false"
-EXTRA_OEMESON_class-native = "-Ddocumentation=false -Dlibraries=false"
+EXTRA_OEMESON:class-native = "-Ddocumentation=false -Dlibraries=false"
 
 # Wayland installs a M4 macro for other projects to use, which uses the target
 # pkg-config to find files.  Replace pkg-config with pkg-config-native.
-do_install_append_class-native() {
+do_install:append:class-native() {
   sed -e 's,PKG_CHECK_MODULES(.*),,g' \
       -e 's,$PKG_CONFIG,pkg-config-native,g' \
       -i ${D}/${datadir}/aclocal/wayland-scanner.m4
@@ -47,16 +47,16 @@
     cp -rf ${S}/egl/wayland-egl-symbols-check ${D}${PTEST_PATH}/tests/
 }
 
-sysroot_stage_all_append_class-target () {
+sysroot_stage_all:append:class-target () {
 	rm ${SYSROOT_DESTDIR}/${datadir}/aclocal/wayland-scanner.m4
 	cp ${STAGING_DATADIR_NATIVE}/aclocal/wayland-scanner.m4 ${SYSROOT_DESTDIR}/${datadir}/aclocal/
 }
 
 PACKAGES += "${PN}-tools"
 
-FILES_${PN} = "${libdir}/*${SOLIBS}"
-FILES_${PN}-tools += "${bindir} ${datadir}/wayland"
+FILES:${PN} = "${libdir}/*${SOLIBS}"
+FILES:${PN}-tools += "${bindir} ${datadir}/wayland"
 
 BBCLASSEXTEND = "native nativesdk"
 
-RDEPENDS_${PN}-ptest += "binutils sed ${PN}-tools"
+RDEPENDS:${PN}-ptest += "binutils sed ${PN}-tools"
diff --git a/poky/meta/recipes-graphics/wayland/weston-init.bb b/poky/meta/recipes-graphics/wayland/weston-init.bb
index 6b78e67..fecf926 100644
--- a/poky/meta/recipes-graphics/wayland/weston-init.bb
+++ b/poky/meta/recipes-graphics/wayland/weston-init.bb
@@ -19,13 +19,13 @@
 PACKAGECONFIG[no-idle-timeout] = ",,"
 
 DEFAULTBACKEND ??= ""
-DEFAULTBACKEND_qemuall ?= "fbdev"
-DEFAULTBACKEND_qemuarm64 = "drm"
-DEFAULTBACKEND_qemux86 = "drm"
-DEFAULTBACKEND_qemux86-64 = "drm"
+DEFAULTBACKEND:qemuall ?= "fbdev"
+DEFAULTBACKEND:qemuarm64 = "drm"
+DEFAULTBACKEND:qemux86 = "drm"
+DEFAULTBACKEND:qemux86-64 = "drm"
 # gallium swrast was found to crash weston on startup in x32 qemu
-DEFAULTBACKEND_qemux86-64_x86-x32 = "fbdev"
-DEFAULTBACKEND_x86-x32 = "fbdev"
+DEFAULTBACKEND:qemux86-64:x86-x32 = "fbdev"
+DEFAULTBACKEND:x86-x32 = "fbdev"
 
 do_install() {
         if [ "${VIRTUAL-RUNTIME_init_manager}" != "systemd" ]; then
@@ -70,12 +70,12 @@
 # requires pam enabled if started via systemd
 REQUIRED_DISTRO_FEATURES = "opengl ${@oe.utils.conditional('VIRTUAL-RUNTIME_init_manager', 'systemd', 'pam', '', d)}"
 
-RDEPENDS_${PN} = "weston kbd"
+RDEPENDS:${PN} = "weston kbd"
 
 INITSCRIPT_NAME = "weston"
 INITSCRIPT_PARAMS = "start 9 5 2 . stop 20 0 1 6 ."
 
-FILES_${PN} += "\
+FILES:${PN} += "\
     ${sysconfdir}/xdg/weston/weston.ini \
     ${systemd_system_unitdir}/weston.service \
     ${systemd_system_unitdir}/weston.socket \
@@ -84,9 +84,9 @@
     /home/weston \
     "
 
-CONFFILES_${PN} += "${sysconfdir}/xdg/weston/weston.ini ${sysconfdir}/default/weston"
+CONFFILES:${PN} += "${sysconfdir}/xdg/weston/weston.ini ${sysconfdir}/default/weston"
 
-SYSTEMD_SERVICE_${PN} = "weston.service weston.socket"
-USERADD_PARAM_${PN} = "--home /home/weston --shell /bin/sh --user-group -G video,input weston"
-GROUPADD_PARAM_${PN} = "-r wayland"
+SYSTEMD_SERVICE:${PN} = "weston.service weston.socket"
+USERADD_PARAM:${PN} = "--home /home/weston --shell /bin/sh --user-group -G video,input weston"
+GROUPADD_PARAM:${PN} = "-r wayland"
 
diff --git a/poky/meta/recipes-graphics/wayland/weston_9.0.0.bb b/poky/meta/recipes-graphics/wayland/weston_9.0.0.bb
index ce2b7d4..fbf181b 100644
--- a/poky/meta/recipes-graphics/wayland/weston_9.0.0.bb
+++ b/poky/meta/recipes-graphics/wayland/weston_9.0.0.bb
@@ -14,7 +14,7 @@
            file://0001-meson.build-fix-incorrect-header.patch \
 "
 
-SRC_URI_append_libc-musl = " file://dont-use-plane-add-prop.patch "
+SRC_URI:append:libc-musl = " file://dont-use-plane-add-prop.patch "
 
 SRC_URI[sha256sum] = "5cf5d6ce192e0eb15c1fc861a436bf21b5bb3b91dbdabbdebe83e1f83aa098fe"
 
@@ -91,7 +91,7 @@
 # JPEG image loading support
 PACKAGECONFIG[image-jpeg] = "-Dimage-jpeg=true,-Dimage-jpeg=false, jpeg"
 
-do_install_append() {
+do_install:append() {
 	# Weston doesn't need the .la files to load modules, so wipe them
 	rm -f ${D}/${libdir}/libweston-${WESTON_MAJOR_VERSION}/*.la
 
@@ -116,20 +116,20 @@
 PACKAGES += "${@bb.utils.contains('PACKAGECONFIG', 'xwayland', '${PN}-xwayland', '', d)} \
              libweston-${WESTON_MAJOR_VERSION} ${PN}-examples"
 
-FILES_${PN}-dev += "${libdir}/${BPN}/libexec_weston.so"
-FILES_${PN} = "${bindir}/weston ${bindir}/weston-terminal ${bindir}/weston-info ${bindir}/weston-launch ${bindir}/wcap-decode ${libexecdir} ${libdir}/${BPN}/*.so* ${datadir}"
+FILES:${PN}-dev += "${libdir}/${BPN}/libexec_weston.so"
+FILES:${PN} = "${bindir}/weston ${bindir}/weston-terminal ${bindir}/weston-info ${bindir}/weston-launch ${bindir}/wcap-decode ${libexecdir} ${libdir}/${BPN}/*.so* ${datadir}"
 
-FILES_libweston-${WESTON_MAJOR_VERSION} = "${libdir}/lib*${SOLIBS} ${libdir}/libweston-${WESTON_MAJOR_VERSION}/*.so"
-SUMMARY_libweston-${WESTON_MAJOR_VERSION} = "Helper library for implementing 'wayland window managers'."
+FILES:libweston-${WESTON_MAJOR_VERSION} = "${libdir}/lib*${SOLIBS} ${libdir}/libweston-${WESTON_MAJOR_VERSION}/*.so"
+SUMMARY:libweston-${WESTON_MAJOR_VERSION} = "Helper library for implementing 'wayland window managers'."
 
-FILES_${PN}-examples = "${bindir}/*"
+FILES:${PN}-examples = "${bindir}/*"
 
-FILES_${PN}-xwayland = "${libdir}/libweston-${WESTON_MAJOR_VERSION}/xwayland.so"
-RDEPENDS_${PN}-xwayland += "xwayland"
+FILES:${PN}-xwayland = "${libdir}/libweston-${WESTON_MAJOR_VERSION}/xwayland.so"
+RDEPENDS:${PN}-xwayland += "xwayland"
 
-RDEPENDS_${PN} += "xkeyboard-config"
-RRECOMMENDS_${PN} = "weston-init liberation-fonts"
-RRECOMMENDS_${PN}-dev += "wayland-protocols"
+RDEPENDS:${PN} += "xkeyboard-config"
+RRECOMMENDS:${PN} = "weston-init liberation-fonts"
+RRECOMMENDS:${PN}-dev += "wayland-protocols"
 
 USERADD_PACKAGES = "${PN}"
-GROUPADD_PARAM_${PN} = "--system weston-launch"
+GROUPADD_PARAM:${PN} = "--system weston-launch"
diff --git a/poky/meta/recipes-graphics/x11-common/xserver-nodm-init_3.0.bb b/poky/meta/recipes-graphics/x11-common/xserver-nodm-init_3.0.bb
index c2995f9..3f20ad4 100644
--- a/poky/meta/recipes-graphics/x11-common/xserver-nodm-init_3.0.bb
+++ b/poky/meta/recipes-graphics/x11-common/xserver-nodm-init_3.0.bb
@@ -63,10 +63,10 @@
     fi
 }
 
-RDEPENDS_${PN} = "xinit ${@oe.utils.conditional('ROOTLESS_X', '1', 'xuser-account libcap libcap-bin', '', d)}"
+RDEPENDS:${PN} = "xinit ${@oe.utils.conditional('ROOTLESS_X', '1', 'xuser-account libcap libcap-bin', '', d)}"
 
 INITSCRIPT_NAME = "xserver-nodm"
 INITSCRIPT_PARAMS = "start 9 5 . stop 20 0 1 2 3 6 ."
-SYSTEMD_SERVICE_${PN} = "xserver-nodm.service"
+SYSTEMD_SERVICE:${PN} = "xserver-nodm.service"
 
-RCONFLICTS_${PN} = "xserver-common (< 1.34-r9) x11-common"
+RCONFLICTS:${PN} = "xserver-common (< 1.34-r9) x11-common"
diff --git a/poky/meta/recipes-graphics/xcursor-transparent-theme/xcursor-transparent-theme_git.bb b/poky/meta/recipes-graphics/xcursor-transparent-theme/xcursor-transparent-theme_git.bb
index a4ab7f6..f484f53 100644
--- a/poky/meta/recipes-graphics/xcursor-transparent-theme/xcursor-transparent-theme_git.bb
+++ b/poky/meta/recipes-graphics/xcursor-transparent-theme/xcursor-transparent-theme_git.bb
@@ -17,4 +17,4 @@
 
 inherit autotools allarch
 
-FILES_${PN} = "${datadir}/icons/xcursor-transparent/cursors/*"
+FILES:${PN} = "${datadir}/icons/xcursor-transparent/cursors/*"
diff --git a/poky/meta/recipes-graphics/xinput-calibrator/pointercal-xinput_0.0.bb b/poky/meta/recipes-graphics/xinput-calibrator/pointercal-xinput_0.0.bb
index baaf8fa..b77c940 100644
--- a/poky/meta/recipes-graphics/xinput-calibrator/pointercal-xinput_0.0.bb
+++ b/poky/meta/recipes-graphics/xinput-calibrator/pointercal-xinput_0.0.bb
@@ -20,4 +20,4 @@
 }
 
 PACKAGE_ARCH = "${MACHINE_ARCH}"
-CONFFILES_${PN} = "${sysconfdir}/pointercal.xinput"
+CONFFILES:${PN} = "${sysconfdir}/pointercal.xinput"
diff --git a/poky/meta/recipes-graphics/xinput-calibrator/xinput-calibrator_git.bb b/poky/meta/recipes-graphics/xinput-calibrator/xinput-calibrator_git.bb
index d2a1664..2553d89 100644
--- a/poky/meta/recipes-graphics/xinput-calibrator/xinput-calibrator_git.bb
+++ b/poky/meta/recipes-graphics/xinput-calibrator/xinput-calibrator_git.bb
@@ -23,7 +23,7 @@
 # force native X11 ui as we don't have gtk+ in DEPENDS
 EXTRA_OECONF += "--with-gui=x11"
 
-do_install_append() {
+do_install:append() {
     install -d ${D}${bindir}
     install -m 0755 ${S}/scripts/xinput_calibrator_pointercal.sh ${D}${bindir}/xinput_calibrator_once.sh
 
@@ -34,6 +34,6 @@
     sed -e 's,^Exec=.*,Exec=${bindir}/xinput_calibrator_once.sh,' ${S}/scripts/xinput_calibrator.desktop > ${D}${sysconfdir}/xdg/autostart/xinput_calibrator.desktop
 }
 
-FILES_${PN} += "${sysconfdir}/xdg/autostart"
-RDEPENDS_${PN} = "xinput formfactor"
-RRECOMMENDS_${PN} = "pointercal-xinput"
+FILES:${PN} += "${sysconfdir}/xdg/autostart"
+RDEPENDS:${PN} = "xinput formfactor"
+RRECOMMENDS:${PN} = "pointercal-xinput"
diff --git a/poky/meta/recipes-graphics/xorg-app/mkfontscale_1.2.1.bb b/poky/meta/recipes-graphics/xorg-app/mkfontscale_1.2.1.bb
index a767ee8..2d0c51a 100644
--- a/poky/meta/recipes-graphics/xorg-app/mkfontscale_1.2.1.bb
+++ b/poky/meta/recipes-graphics/xorg-app/mkfontscale_1.2.1.bb
@@ -11,7 +11,7 @@
 DEPENDS = "util-macros-native zlib libfontenc freetype xorgproto"
 
 PROVIDES += "mkfontdir"
-RPROVIDES_${PN} += "mkfontdir"
+RPROVIDES:${PN} += "mkfontdir"
 
 BBCLASSEXTEND = "native"
 
diff --git a/poky/meta/recipes-graphics/xorg-app/rgb_1.0.6.bb b/poky/meta/recipes-graphics/xorg-app/rgb_1.0.6.bb
index c3e8536..db287a5 100644
--- a/poky/meta/recipes-graphics/xorg-app/rgb_1.0.6.bb
+++ b/poky/meta/recipes-graphics/xorg-app/rgb_1.0.6.bb
@@ -13,4 +13,4 @@
 SRC_URI[md5sum] = "eab5bbd7642e5c784429307ec210d198"
 SRC_URI[sha256sum] = "bbca7c6aa59939b9f6a0fb9fff15dfd62176420ffd4ae30c8d92a6a125fbe6b0"
 
-FILES_${PN} += "${datadir}/X11"
+FILES:${PN} += "${datadir}/X11"
diff --git a/poky/meta/recipes-graphics/xorg-app/x11perf_1.6.1.bb b/poky/meta/recipes-graphics/xorg-app/x11perf_1.6.1.bb
index c4d443b..651d03c 100644
--- a/poky/meta/recipes-graphics/xorg-app/x11perf_1.6.1.bb
+++ b/poky/meta/recipes-graphics/xorg-app/x11perf_1.6.1.bb
@@ -17,11 +17,11 @@
 
 MULTILIB_SCRIPTS = "${PN}:${bindir}/x11perfcomp"
 
-do_install_append_class-target () {
+do_install:append:class-target () {
     sed -i -e 's:${HOSTTOOLS_DIR}/::g' ${D}${bindir}/x11perfcomp
 }
 
-FILES_${PN} += "${libdir}/X11/x11perfcomp/*"
+FILES:${PN} += "${libdir}/X11/x11perfcomp/*"
 
 SRC_URI[md5sum] = "e96b56756990c56c24d2d02c2964456b"
 SRC_URI[sha256sum] = "1c7e0b8ffc2794b4ccf11e04d551823abe0ea47b4f7db0637390db6fbe817c34"
diff --git a/poky/meta/recipes-graphics/xorg-app/xinit_1.4.1.bb b/poky/meta/recipes-graphics/xorg-app/xinit_1.4.1.bb
index 301ea1c..e6ebf27 100644
--- a/poky/meta/recipes-graphics/xorg-app/xinit_1.4.1.bb
+++ b/poky/meta/recipes-graphics/xorg-app/xinit_1.4.1.bb
@@ -22,4 +22,4 @@
 PACKAGECONFIG ??= "rxvt"
 PACKAGECONFIG[rxvt] = "--with-xterm=rxvt,,,rxvt-unicode"
 
-RDEPENDS_${PN} += "util-linux-mcookie"
+RDEPENDS:${PN} += "util-linux-mcookie"
diff --git a/poky/meta/recipes-graphics/xorg-app/xorg-app-common.inc b/poky/meta/recipes-graphics/xorg-app/xorg-app-common.inc
index cb8cf4f..1a20099 100644
--- a/poky/meta/recipes-graphics/xorg-app/xorg-app-common.inc
+++ b/poky/meta/recipes-graphics/xorg-app/xorg-app-common.inc
@@ -12,4 +12,4 @@
 
 inherit autotools pkgconfig features_check
 
-FILES_${PN} += " ${libdir}/X11/${BPN} ${datadir}/X11/app-defaults/"
+FILES:${PN} += " ${libdir}/X11/${BPN} ${datadir}/X11/app-defaults/"
diff --git a/poky/meta/recipes-graphics/xorg-driver/xf86-input-libinput_1.1.0.bb b/poky/meta/recipes-graphics/xorg-driver/xf86-input-libinput_1.1.0.bb
index 5688eb4..3b5af3f 100644
--- a/poky/meta/recipes-graphics/xorg-driver/xf86-input-libinput_1.1.0.bb
+++ b/poky/meta/recipes-graphics/xorg-driver/xf86-input-libinput_1.1.0.bb
@@ -8,4 +8,4 @@
 
 SRC_URI[sha256sum] = "e11d2a41419124a6e9b148f1df181bf7819fc7398c8ee9a1b6390b0742c68d16"
 
-FILES_${PN} += "${datadir}/X11/xorg.conf.d"
+FILES:${PN} += "${datadir}/X11/xorg.conf.d"
diff --git a/poky/meta/recipes-graphics/xorg-driver/xf86-input-vmmouse_13.1.0.bb b/poky/meta/recipes-graphics/xorg-driver/xf86-input-vmmouse_13.1.0.bb
index 92a1b25..5e74003 100644
--- a/poky/meta/recipes-graphics/xorg-driver/xf86-input-vmmouse_13.1.0.bb
+++ b/poky/meta/recipes-graphics/xorg-driver/xf86-input-vmmouse_13.1.0.bb
@@ -9,13 +9,13 @@
 SRC_URI[md5sum] = "85e2e464b7219c495ad3a16465c226ed"
 SRC_URI[sha256sum] = "0af558957ac1be1b2863712c2475de8f4d7f14921fd01ded2e2fde4921b19319"
 
-RDEPENDS_${PN} += "xf86-input-mouse"
+RDEPENDS:${PN} += "xf86-input-mouse"
 
 LIC_FILES_CHKSUM = "file://COPYING;md5=622841c068a9d7625fbfe7acffb1a8fc"
 
 COMPATIBLE_HOST = '(i.86|x86_64).*-linux'
 
-do_install_append () {
+do_install:append () {
 	# We don't care about hal
 	rm -rf ${D}${datadir}/hal/
 	rm -rf ${D}${libdir}/hal/
@@ -23,4 +23,4 @@
 
 EXTRA_OECONF = "--with-udev-rules-dir=${nonarch_base_libdir}/udev/rules.d"
 
-FILES_${PN} += "${datadir}/X11/xorg.conf.d"
+FILES:${PN} += "${datadir}/X11/xorg.conf.d"
diff --git a/poky/meta/recipes-graphics/xorg-driver/xf86-video-intel_git.bb b/poky/meta/recipes-graphics/xorg-driver/xf86-video-intel_git.bb
index 161371b..1d8077a 100644
--- a/poky/meta/recipes-graphics/xorg-driver/xf86-video-intel_git.bb
+++ b/poky/meta/recipes-graphics/xorg-driver/xf86-video-intel_git.bb
@@ -39,4 +39,4 @@
 
 COMPATIBLE_HOST = '(i.86|x86_64).*-linux'
 
-FILES_${PN} += "${datadir}/polkit-1"
+FILES:${PN} += "${datadir}/polkit-1"
diff --git a/poky/meta/recipes-graphics/xorg-driver/xf86-video-vesa_2.5.0.bb b/poky/meta/recipes-graphics/xorg-driver/xf86-video-vesa_2.5.0.bb
index d313c8c..05bb905 100644
--- a/poky/meta/recipes-graphics/xorg-driver/xf86-video-vesa_2.5.0.bb
+++ b/poky/meta/recipes-graphics/xorg-driver/xf86-video-vesa_2.5.0.bb
@@ -13,7 +13,7 @@
 
 COMPATIBLE_HOST = '(i.86|x86_64).*-linux'
 
-RRECOMMENDS_${PN} += "xserver-xorg-module-libint10"
+RRECOMMENDS:${PN} += "xserver-xorg-module-libint10"
 
 SRC_URI[sha256sum] = "1f1624f3c73906801ad1bc98335a2cb5676a7a4d18e5374d9a1d18464e54c659"
 
diff --git a/poky/meta/recipes-graphics/xorg-driver/xorg-driver-common.inc b/poky/meta/recipes-graphics/xorg-driver/xorg-driver-common.inc
index 493b90a..65c5e3c 100644
--- a/poky/meta/recipes-graphics/xorg-driver/xorg-driver-common.inc
+++ b/poky/meta/recipes-graphics/xorg-driver/xorg-driver-common.inc
@@ -10,7 +10,7 @@
 
 SRC_URI = "${XORG_MIRROR}/individual/driver/${BPN}-${PV}.tar.bz2"
 
-FILES_${PN} += " ${libdir}/xorg/modules/drivers/*.so"
+FILES:${PN} += " ${libdir}/xorg/modules/drivers/*.so"
 
 XORGBUILDCLASS ??= "autotools"
 inherit ${XORGBUILDCLASS} pkgconfig features_check
@@ -20,7 +20,7 @@
 
 # FIXME: We don't want to include the libtool archives (*.la) from modules
 # directory, as they serve no useful purpose. Upstream should fix Makefile.am
-do_install_append() {
+do_install:append() {
 	find ${D}${libdir}/xorg/modules -regex ".*\.la$" | xargs rm -f --
 }
 
@@ -38,6 +38,6 @@
     abi = "%sxorg-abi-%s-%s" % (mlprefix, name, output.split(".")[0])
 
     pn = d.getVar("PN")
-    d.appendVar('RDEPENDS_' + pn, ' ' + abi)
+    d.appendVar('RDEPENDS:' + pn, ' ' + abi)
 
 SECURITY_LDFLAGS = "${SECURITY_X_LDFLAGS}"
diff --git a/poky/meta/recipes-graphics/xorg-driver/xorg-driver-input.inc b/poky/meta/recipes-graphics/xorg-driver/xorg-driver-input.inc
index 57912e7..934c3d7 100644
--- a/poky/meta/recipes-graphics/xorg-driver/xorg-driver-input.inc
+++ b/poky/meta/recipes-graphics/xorg-driver/xorg-driver-input.inc
@@ -7,6 +7,6 @@
 }
 PACKAGEFUNCS =+ "add_xorg_abi_depends"
 
-FILES_${PN} += " ${libdir}/xorg/modules/input/*.so \
+FILES:${PN} += " ${libdir}/xorg/modules/input/*.so \
                  ${datadir}/X11/xorg.conf.d \
                  "
diff --git a/poky/meta/recipes-graphics/xorg-font/encodings_1.0.5.bb b/poky/meta/recipes-graphics/xorg-font/encodings_1.0.5.bb
index 713fcfb..8ddbaf2 100644
--- a/poky/meta/recipes-graphics/xorg-font/encodings_1.0.5.bb
+++ b/poky/meta/recipes-graphics/xorg-font/encodings_1.0.5.bb
@@ -10,7 +10,7 @@
 PR = "r3"
 
 DEPENDS = "mkfontscale-native mkfontdir-native font-util-native"
-RDEPENDS_${PN} = ""
+RDEPENDS:${PN} = ""
 
 SRC_URI += "file://nocompiler.patch"
 SRC_URI[md5sum] = "bbae4f247b88ccde0e85ed6a403da22a"
@@ -21,5 +21,5 @@
 EXTRA_OECONF += "--with-encodingsdir=${datadir}/fonts/X11/encodings"
 
 # postinst from .inc doesn't apply to this recipe
-pkg_postinst_${PN} () {
+pkg_postinst:${PN} () {
 }
diff --git a/poky/meta/recipes-graphics/xorg-font/font-alias_1.0.4.bb b/poky/meta/recipes-graphics/xorg-font/font-alias_1.0.4.bb
index e4b70c6..d80ecbe 100644
--- a/poky/meta/recipes-graphics/xorg-font/font-alias_1.0.4.bb
+++ b/poky/meta/recipes-graphics/xorg-font/font-alias_1.0.4.bb
@@ -13,8 +13,8 @@
 SRC_URI += "file://nocompiler.patch"
 
 DEPENDS = "util-macros-native font-util-native"
-RDEPENDS_${PN} = "encodings font-util"
-RDEPENDS_${PN}_class-native = "font-util-native"
+RDEPENDS:${PN} = "encodings font-util"
+RDEPENDS:${PN}:class-native = "font-util-native"
 
 inherit allarch
 
diff --git a/poky/meta/recipes-graphics/xorg-font/font-util_1.3.2.bb b/poky/meta/recipes-graphics/xorg-font/font-util_1.3.2.bb
index ebe7a60..8f2d10e 100644
--- a/poky/meta/recipes-graphics/xorg-font/font-util_1.3.2.bb
+++ b/poky/meta/recipes-graphics/xorg-font/font-util_1.3.2.bb
@@ -10,13 +10,13 @@
                     file://map-ISO8859-1;beginline=9;endline=23;md5=1cecb984063248f29ffe5c46f5c04f34"
 
 DEPENDS = "encodings util-macros"
-DEPENDS_class-native = "util-macros-native"
-RDEPENDS_${PN} = "mkfontdir mkfontscale encodings"
-RDEPENDS_${PN}_class-native = ""
+DEPENDS:class-native = "util-macros-native"
+RDEPENDS:${PN} = "mkfontdir mkfontscale encodings"
+RDEPENDS:${PN}:class-native = ""
 
 BBCLASSEXTEND = "native"
 
 SRC_URI[md5sum] = "3d6adb76fdd072db8c8fae41b40855e8"
 SRC_URI[sha256sum] = "3ad880444123ac06a7238546fa38a2a6ad7f7e0cc3614de7e103863616522282"
 
-SYSROOT_DIRS_BLACKLIST_remove = "${datadir}/fonts"
+SYSROOT_DIRS_BLACKLIST:remove = "${datadir}/fonts"
diff --git a/poky/meta/recipes-graphics/xorg-font/xorg-font-common.inc b/poky/meta/recipes-graphics/xorg-font/xorg-font-common.inc
index 7ca5c76..ba58404 100644
--- a/poky/meta/recipes-graphics/xorg-font/xorg-font-common.inc
+++ b/poky/meta/recipes-graphics/xorg-font/xorg-font-common.inc
@@ -5,7 +5,7 @@
 LICENSE = "MIT-X"
 
 DEPENDS = " encodings font-alias font-util-native"
-RDEPENDS_${PN} = "encodings font-util font-alias"
+RDEPENDS:${PN} = "encodings font-util font-alias"
 
 XORG_PN = "${BPN}"
 
@@ -19,17 +19,17 @@
 
 EXTRA_OEMAKE += "FCCACHE=/bin/true UTIL_DIR=${STAGING_DIR_TARGET}\$\(MAPFILES_PATH\)"
 
-do_install_append() {
+do_install:append() {
 	find ${D}${libdir}/X11/fonts -type f -name fonts.dir | xargs rm -f
 	find ${D}${libdir}/X11/fonts -type f -name fonts.scale | xargs rm -f
 	find ${D}${datadir}/fonts/X11 -type f -name fonts.dir | xargs rm -f
 	find ${D}${datadir}/fonts/X11 -type f -name fonts.scale | xargs rm -f	
 }
 
-FILES_${PN} += " ${libdir}/X11/fonts ${datadir}"
+FILES:${PN} += " ${libdir}/X11/fonts ${datadir}"
 
 PACKAGE_WRITE_DEPS += "mkfontdir-native mkfontscale-native"
-pkg_postinst_${PN} () {
+pkg_postinst:${PN} () {
         for fontdir in `find $D/usr/lib/X11/fonts -type d`; do
                 mkfontdir $fontdir
                 mkfontscale $fontdir
diff --git a/poky/meta/recipes-graphics/xorg-font/xorg-minimal-fonts.bb b/poky/meta/recipes-graphics/xorg-font/xorg-minimal-fonts.bb
index f0c77f3..88f534c 100644
--- a/poky/meta/recipes-graphics/xorg-font/xorg-minimal-fonts.bb
+++ b/poky/meta/recipes-graphics/xorg-font/xorg-minimal-fonts.bb
@@ -25,8 +25,8 @@
 S = "${WORKDIR}/misc"
 
 PACKAGES = "${PN}"
-FILES_${PN} = "${libdir}/X11/ ${datadir}/fonts/X11/"
-RDEPENDS_${PN} += "font-alias"
+FILES:${PN} = "${libdir}/X11/ ${datadir}/fonts/X11/"
+RDEPENDS:${PN} += "font-alias"
 
 do_install() {
 	install -d ${D}/${datadir}/fonts/X11/misc
diff --git a/poky/meta/recipes-graphics/xorg-lib/libpthread-stubs_0.4.bb b/poky/meta/recipes-graphics/xorg-lib/libpthread-stubs_0.4.bb
index ffa1c85..b398e8b 100644
--- a/poky/meta/recipes-graphics/xorg-lib/libpthread-stubs_0.4.bb
+++ b/poky/meta/recipes-graphics/xorg-lib/libpthread-stubs_0.4.bb
@@ -13,7 +13,7 @@
 
 inherit autotools
 
-RDEPENDS_${PN}-dev = ""
-RRECOMMENDS_${PN}-dbg = "${PN}-dev (= ${EXTENDPKGV})"
+RDEPENDS:${PN}-dev = ""
+RRECOMMENDS:${PN}-dbg = "${PN}-dev (= ${EXTENDPKGV})"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-graphics/xorg-lib/libx11-compose-data_1.6.8.bb b/poky/meta/recipes-graphics/xorg-lib/libx11-compose-data_1.6.8.bb
index 0f4be35..7519b4c 100644
--- a/poky/meta/recipes-graphics/xorg-lib/libx11-compose-data_1.6.8.bb
+++ b/poky/meta/recipes-graphics/xorg-lib/libx11-compose-data_1.6.8.bb
@@ -23,7 +23,7 @@
 
 PACKAGES = "${PN}"
 
-FILES_${PN} = "${datadir}/X11/locale ${libdir}/X11/locale"
+FILES:${PN} = "${datadir}/X11/locale ${libdir}/X11/locale"
 
 do_compile() {
     oe_runmake -C nls
diff --git a/poky/meta/recipes-graphics/xorg-lib/libx11/keysym.patch b/poky/meta/recipes-graphics/xorg-lib/libx11/keysym.patch
new file mode 100644
index 0000000..f4d7419
--- /dev/null
+++ b/poky/meta/recipes-graphics/xorg-lib/libx11/keysym.patch
@@ -0,0 +1,46 @@
+Upstream-Status: Submitted [https://gitlab.freedesktop.org/xorg/lib/libx11/-/merge_requests/79]
+Signed-off-by: Ross Burton <ross.burton@arm.com>
+
+From e92efc63acd7b377faa9e534f4bf52aaa86be2a9 Mon Sep 17 00:00:00 2001
+From: Peter Hutterer <peter.hutterer@who-t.net>
+Date: Tue, 27 Jul 2021 11:46:19 +1000
+Subject: [PATCH] makekeys: handle the new _EVDEVK xorgproto symbols
+
+These keys are all defined through a macro in the form:
+   #define XF86XK_BrightnessAuto		_EVDEVK(0x0F4)
+
+The _EVDEVK macro is simply an offset of 0x10081000.
+Let's parse these lines correctly so those keysyms end up in our
+hashtables.
+
+Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+---
+ src/util/makekeys.c | 12 ++++++++++++
+ 1 file changed, 12 insertions(+)
+
+diff --git a/src/util/makekeys.c b/src/util/makekeys.c
+index e847ef4c..4896cc53 100644
+--- a/src/util/makekeys.c
++++ b/src/util/makekeys.c
+@@ -78,6 +78,18 @@ parse_line(const char *buf, char *key, KeySym *val, char *prefix)
+         return 1;
+     }
+ 
++    /* See if we can parse one of the _EVDEVK symbols */
++    i = sscanf(buf, "#define %127s _EVDEVK(0x%lx)", key, val);
++    if (i == 2 && (tmp = strstr(key, "XK_"))) {
++        memcpy(prefix, key, (size_t)(tmp - key));
++        prefix[tmp - key] = '\0';
++        tmp += 3;
++        memmove(key, tmp, strlen(tmp) + 1);
++
++        *val += 0x10081000;
++        return 1;
++    }
++
+     /* Now try to catch alias (XK_foo XK_bar) definitions, and resolve them
+      * immediately: if the target is in the form XF86XK_foo, we need to
+      * canonicalise this to XF86foo before we do the lookup. */
+-- 
+GitLab
+
diff --git a/poky/meta/recipes-graphics/xorg-lib/libx11_1.7.2.bb b/poky/meta/recipes-graphics/xorg-lib/libx11_1.7.2.bb
index 5d7e9e3..c84f33e 100644
--- a/poky/meta/recipes-graphics/xorg-lib/libx11_1.7.2.bb
+++ b/poky/meta/recipes-graphics/xorg-lib/libx11_1.7.2.bb
@@ -12,6 +12,7 @@
 
 SRC_URI += "file://Fix-hanging-issue-in-_XReply.patch \
            file://disable_tests.patch \
+           file://keysym.patch \
            "
 
 SRC_URI[sha256sum] = "1cfa35e37aaabbe4792e9bb690468efefbfbf6b147d9c69d6f90d13c3092ea6c"
@@ -35,8 +36,8 @@
 
 inherit gettext
 
-FILES_${PN} += "${datadir}/X11/XKeysymDB ${datadir}/X11/XErrorDB ${datadir}/X11/Xcms.txt"
-FILES_${PN}-xcb += "${libdir}/libX11-xcb.so.*"
-FILES_${PN}-locale += "${datadir}/X11/locale ${libdir}/X11/locale"
+FILES:${PN} += "${datadir}/X11/XKeysymDB ${datadir}/X11/XErrorDB ${datadir}/X11/Xcms.txt"
+FILES:${PN}-xcb += "${libdir}/libX11-xcb.so.*"
+FILES:${PN}-locale += "${datadir}/X11/locale ${libdir}/X11/locale"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-graphics/xorg-lib/libxcb_1.14.bb b/poky/meta/recipes-graphics/xorg-lib/libxcb_1.14.bb
index f0a223a..5341bbd 100644
--- a/poky/meta/recipes-graphics/xorg-lib/libxcb_1.14.bb
+++ b/poky/meta/recipes-graphics/xorg-lib/libxcb_1.14.bb
@@ -21,7 +21,7 @@
 
 PACKAGES_DYNAMIC = "^${PN}-.*"
 
-FILES_${PN} = "${libdir}/libxcb.so.*"
+FILES:${PN} = "${libdir}/libxcb.so.*"
 
 inherit autotools pkgconfig features_check
 
@@ -30,10 +30,10 @@
 
 export PYTHON = "python3"
 
-do_install_append () {
+do_install:append () {
 	chown root.root ${D}${datadir}/doc/${BPN}/tutorial -R
 }
 
-python populate_packages_prepend () {
+python populate_packages:prepend () {
     do_split_packages(d, '${libdir}', r'^libxcb-(.*)\.so\..*$', '${PN}-%s', 'XCB library module for %s', allow_links=True)
 }
diff --git a/poky/meta/recipes-graphics/xorg-lib/libxft_2.3.3.bb b/poky/meta/recipes-graphics/xorg-lib/libxft_2.3.3.bb
index 65bd9ae..9695afd 100644
--- a/poky/meta/recipes-graphics/xorg-lib/libxft_2.3.3.bb
+++ b/poky/meta/recipes-graphics/xorg-lib/libxft_2.3.3.bb
@@ -27,7 +27,7 @@
 
 BBCLASSEXTEND = "native nativesdk"
 
-python () {
-        if d.getVar('DEBIAN_NAMES'):
-            d.setVar('PKG_${PN}', '${MLPREFIX}libxft2')
+python populate_packages:prepend () {
+    if d.getVar('DEBIAN_NAMES'):
+        d.setVar('PKG:${PN}', '${MLPREFIX}libxft2')
 }
diff --git a/poky/meta/recipes-graphics/xorg-lib/libxkbcommon_1.3.0.bb b/poky/meta/recipes-graphics/xorg-lib/libxkbcommon_1.3.0.bb
index 26bbaad..57c318c 100644
--- a/poky/meta/recipes-graphics/xorg-lib/libxkbcommon_1.3.0.bb
+++ b/poky/meta/recipes-graphics/xorg-lib/libxkbcommon_1.3.0.bb
@@ -23,4 +23,4 @@
 
 # Fix a following runtime error:
 # xkbcommon: ERROR: couldn't find a Compose file for locale "C"
-RDEPENDS_${PN} = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'libx11-locale', 'libx11-compose-data', d)}"
+RDEPENDS:${PN} = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'libx11-locale', 'libx11-compose-data', d)}"
diff --git a/poky/meta/recipes-graphics/xorg-lib/libxmu_1.1.3.bb b/poky/meta/recipes-graphics/xorg-lib/libxmu_1.1.3.bb
index dc3179f..7e92d04 100644
--- a/poky/meta/recipes-graphics/xorg-lib/libxmu_1.1.3.bb
+++ b/poky/meta/recipes-graphics/xorg-lib/libxmu_1.1.3.bb
@@ -23,7 +23,7 @@
 
 PACKAGES =+ "libxmuu"
 
-FILES_libxmuu = "${libdir}/libXmuu.so.*"
+FILES:libxmuu = "${libdir}/libXmuu.so.*"
 
 BBCLASSEXTEND = "native"
 
diff --git a/poky/meta/recipes-graphics/xorg-lib/libxpm_3.5.13.bb b/poky/meta/recipes-graphics/xorg-lib/libxpm_3.5.13.bb
index fda8e32..4f0a5d7 100644
--- a/poky/meta/recipes-graphics/xorg-lib/libxpm_3.5.13.bb
+++ b/poky/meta/recipes-graphics/xorg-lib/libxpm_3.5.13.bb
@@ -18,8 +18,8 @@
 XORG_PN = "libXpm"
 
 PACKAGES =+ "sxpm cxpm"
-FILES_cxpm = "${bindir}/cxpm"
-FILES_sxpm = "${bindir}/sxpm"
+FILES:cxpm = "${bindir}/cxpm"
+FILES:sxpm = "${bindir}/sxpm"
 
 SRC_URI[md5sum] = "6f0ecf8d103d528cfc803aa475137afa"
 SRC_URI[sha256sum] = "9cd1da57588b6cb71450eff2273ef6b657537a9ac4d02d0014228845b935ac25"
diff --git a/poky/meta/recipes-graphics/xorg-lib/libxscrnsaver_1.2.3.bb b/poky/meta/recipes-graphics/xorg-lib/libxscrnsaver_1.2.3.bb
index aed52e7..b52fd00 100644
--- a/poky/meta/recipes-graphics/xorg-lib/libxscrnsaver_1.2.3.bb
+++ b/poky/meta/recipes-graphics/xorg-lib/libxscrnsaver_1.2.3.bb
@@ -14,7 +14,7 @@
 
 DEPENDS += "libxext xorgproto"
 PROVIDES = "libxss"
-RREPLACES_${PN} = "libxss"
+RREPLACES:${PN} = "libxss"
 PE = "1"
 
 XORG_PN = "libXScrnSaver"
diff --git a/poky/meta/recipes-graphics/xorg-lib/pixman_0.40.0.bb b/poky/meta/recipes-graphics/xorg-lib/pixman_0.40.0.bb
index 5a3bb22..00dd680 100644
--- a/poky/meta/recipes-graphics/xorg-lib/pixman_0.40.0.bb
+++ b/poky/meta/recipes-graphics/xorg-lib/pixman_0.40.0.bb
@@ -31,5 +31,7 @@
 # ld: pixman/libpixman-mmx.a(pixman-mmx.c.o):
 # linking mips:loongson_2f module with previous mips:isa64 modules 
 EXTRA_OEMESON += "-Dloongson-mmi=disabled"
+# disable iwmmxt due to compile fails on most arm platforms.
+EXTRA_OEMESON += "-Diwmmxt=disabled"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-graphics/xorg-lib/xkeyboard-config_2.33.bb b/poky/meta/recipes-graphics/xorg-lib/xkeyboard-config_2.33.bb
index 197a870..138e451 100644
--- a/poky/meta/recipes-graphics/xorg-lib/xkeyboard-config_2.33.bb
+++ b/poky/meta/recipes-graphics/xorg-lib/xkeyboard-config_2.33.bb
@@ -20,11 +20,11 @@
 
 EXTRA_OECONF = "--with-xkb-rules-symlink=xorg --disable-runtime-deps"
 
-FILES_${PN} += "${datadir}/X11/xkb"
+FILES:${PN} += "${datadir}/X11/xkb"
 
 inherit autotools pkgconfig gettext python3native
 
-do_install_append () {
+do_install:append () {
     install -d ${D}${datadir}/X11/xkb/compiled
     cd ${D}${datadir}/X11/xkb/rules && ln -sf base xorg
 }
diff --git a/poky/meta/recipes-graphics/xorg-lib/xtrans_1.4.0.bb b/poky/meta/recipes-graphics/xorg-lib/xtrans_1.4.0.bb
index 5bf134b..f33f6f0 100644
--- a/poky/meta/recipes-graphics/xorg-lib/xtrans_1.4.0.bb
+++ b/poky/meta/recipes-graphics/xorg-lib/xtrans_1.4.0.bb
@@ -16,7 +16,7 @@
 
 PE = "1"
 
-RDEPENDS_${PN}-dev = ""
+RDEPENDS:${PN}-dev = ""
 
 inherit gettext
 
diff --git a/poky/meta/recipes-graphics/xorg-proto/xcb-proto_1.14.1.bb b/poky/meta/recipes-graphics/xorg-proto/xcb-proto_1.14.1.bb
index 52e474a..e530a05 100644
--- a/poky/meta/recipes-graphics/xorg-proto/xcb-proto_1.14.1.bb
+++ b/poky/meta/recipes-graphics/xorg-proto/xcb-proto_1.14.1.bb
@@ -18,11 +18,11 @@
 
 PACKAGES += "python-xcbgen"
 
-FILES_${PN} = ""
-FILES_${PN}-dev += "${datadir}/xcb/*.xml ${datadir}/xcb/*.xsd"
-FILES_python-xcbgen = "${PYTHON_SITEPACKAGES_DIR}"
+FILES:${PN} = ""
+FILES:${PN}-dev += "${datadir}/xcb/*.xml ${datadir}/xcb/*.xsd"
+FILES:python-xcbgen = "${PYTHON_SITEPACKAGES_DIR}"
 
-RDEPENDS_${PN}-dev = ""
-RRECOMMENDS_${PN}-dbg = "${PN}-dev (= ${EXTENDPKGV})"
+RDEPENDS:${PN}-dev = ""
+RRECOMMENDS:${PN}-dbg = "${PN}-dev (= ${EXTENDPKGV})"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-graphics/xorg-proto/xorgproto_2021.4.99.2.bb b/poky/meta/recipes-graphics/xorg-proto/xorgproto_2021.4.99.2.bb
index 8db3e6d..1780e78 100644
--- a/poky/meta/recipes-graphics/xorg-proto/xorgproto_2021.4.99.2.bb
+++ b/poky/meta/recipes-graphics/xorg-proto/xorgproto_2021.4.99.2.bb
@@ -19,7 +19,7 @@
 # Datadir only used to install pc files, $datadir/pkgconfig
 datadir="${libdir}"
 # ${PN} is empty so we need to tweak -dev and -dbg package dependencies
-RDEPENDS_${PN}-dev = ""
-RRECOMMENDS_${PN}-dbg = "${PN}-dev (= ${EXTENDPKGV})"
+RDEPENDS:${PN}-dev = ""
+RRECOMMENDS:${PN}-dbg = "${PN}-dev (= ${EXTENDPKGV})"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-graphics/xorg-util/util-macros_1.19.3.bb b/poky/meta/recipes-graphics/xorg-util/util-macros_1.19.3.bb
index 2789870..80e7590 100644
--- a/poky/meta/recipes-graphics/xorg-util/util-macros_1.19.3.bb
+++ b/poky/meta/recipes-graphics/xorg-util/util-macros_1.19.3.bb
@@ -13,7 +13,7 @@
 SRC_URI[sha256sum] = "624bb6c3a4613d18114a7e3849a3d70f2d7af9dc6eabeaba98060d87e3aef35b"
 
 # ${PN} is empty so we need to tweak -dev and -dbg package dependencies
-RDEPENDS_${PN}-dev = ""
-RRECOMMENDS_${PN}-dbg = "${PN}-dev (= ${EXTENDPKGV})"
+RDEPENDS:${PN}-dev = ""
+RRECOMMENDS:${PN}-dbg = "${PN}-dev (= ${EXTENDPKGV})"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config_0.1.bb b/poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config_0.1.bb
index 5420b7d..e9788ab 100644
--- a/poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config_0.1.bb
+++ b/poky/meta/recipes-graphics/xorg-xserver/xserver-xf86-config_0.1.bb
@@ -9,10 +9,10 @@
 
 S = "${WORKDIR}"
 
-CONFFILES_${PN} = "${sysconfdir}/X11/xorg.conf"
+CONFFILES:${PN} = "${sysconfdir}/X11/xorg.conf"
 
 PACKAGE_ARCH = "${MACHINE_ARCH}"
-ALLOW_EMPTY_${PN} = "1"
+ALLOW_EMPTY:${PN} = "1"
 
 do_install () {
 	if test -s ${WORKDIR}/xorg.conf; then
diff --git a/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg.inc b/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg.inc
index 8b0cc27..e1fc0a0 100644
--- a/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg.inc
+++ b/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg.inc
@@ -69,41 +69,41 @@
              ${PN}-module-libxf4bpp \
              xf86-video-modesetting"
 
-SUMMARY_xf86-video-modesetting = "X.Org X server -- modesetting display driver"
-INSANE_SKIP_${MLPREFIX}xf86-video-modesetting = "xorg-driver-abi"
+SUMMARY:xf86-video-modesetting = "X.Org X server -- modesetting display driver"
+INSANE_SKIP:${MLPREFIX}xf86-video-modesetting = "xorg-driver-abi"
 
 XSERVER_RRECOMMENDS = "xkeyboard-config rgb xserver-xf86-config xkbcomp xf86-input-libinput"
-RRECOMMENDS_${PN} += "${XSERVER_RRECOMMENDS}"
-RRECOMMENDS_${PN}-xwayland += "${XSERVER_RRECOMMENDS}"
-RDEPENDS_${PN}-xvfb += "xkeyboard-config"
-RDEPENDS_${PN}-module-exa = "${PN} (= ${EXTENDPKGV})"
+RRECOMMENDS:${PN} += "${XSERVER_RRECOMMENDS}"
+RRECOMMENDS:${PN}-xwayland += "${XSERVER_RRECOMMENDS}"
+RDEPENDS:${PN}-xvfb += "xkeyboard-config"
+RDEPENDS:${PN}-module-exa = "${PN} (= ${EXTENDPKGV})"
 
-FILES_${PN} = "${bindir} ${libdir}/X11/Options ${libdir}/X11/Cards ${libdir}/X11/getconfig ${libdir}/X11/etc ${libdir}/modules/*.so ${libdir}/xorg/modules/*.so /etc/X11 ${libdir}/xorg/protocol.txt ${datadir}/X11/xorg.conf.d"
-FILES_${PN}-dev += "${libdir}/xorg/modules/*.la ${libdir}/xorg/modules/*/*.la"
-FILES_${PN}-doc += "${libdir}/X11/doc ${datadir}/X11/xkb/compiled/README.compiled ${localstatedir}/lib/xkb/README.compiled"
-FILES_${PN}-sdl = "${bindir}/Xsdl"
-FILES_${PN}-fbdev = "${bindir}/Xfbdev"
-FILES_${PN}-xvfb = "${bindir}/Xvfb"
-FILES_${PN}-utils = "${bindir}/scanpci ${bindir}/pcitweak ${bindir}/ioport ${bindir}/in[bwl] ${bindir}/out[bwl] ${bindir}/mmap[rw] ${bindir}/gtf ${bindir}/getconfig ${bindir}/getconfig.pl"
-FILES_${PN}-xephyr = "${bindir}/Xephyr"
-FILES_${PN}-xwayland = "${bindir}/Xwayland"
-FILES_${PN}-multimedia-modules = "${libdir}/xorg/modules/multimedia/*drv*"
-FILES_${PN}-extension-dri = "${libdir}/xorg/modules/extensions/libdri.so"
-FILES_${PN}-extension-dri2 = "${libdir}/xorg/modules/extensions/libdri2.so"
-FILES_${PN}-extension-glx = "${libdir}/xorg/modules/extensions/libglx.so"
-FILES_${PN}-extension-record = "${libdir}/xorg/modules/extensions/librecord.so"
-FILES_${PN}-extension-extmod = "${libdir}/xorg/modules/extensions/libextmod.so"
-FILES_${PN}-extension-dbe = "${libdir}/xorg/modules/extensions/libdbe.so"
-FILES_${PN}-module-libint10 = "${libdir}/xorg/modules/libint10.so"
-FILES_${PN}-module-libafb = "${libdir}/xorg/modules/libafb.so"
-FILES_${PN}-module-libwfb = "${libdir}/xorg/modules/libwfb.so"
-FILES_${PN}-module-libmfb = "${libdir}/xorg/modules/libmfb.so"
-FILES_${PN}-module-libcfb = "${libdir}/xorg/modules/libcfb.so"
-FILES_${PN}-module-exa = "${libdir}/xorg/modules/libexa.so"
-FILES_${PN}-module-xaa = "${libdir}/xorg/modules/libxaa.so"
-FILES_${PN}-module-libxf1bpp = "${libdir}/xorg/modules/libxf1bpp.so"
-FILES_${PN}-module-libxf4bpp = "${libdir}/xorg/modules/libxf4bpp.so"
-FILES_xf86-video-modesetting = "${libdir}/xorg/modules/drivers/modesetting_drv.so"
+FILES:${PN} = "${bindir} ${libdir}/X11/Options ${libdir}/X11/Cards ${libdir}/X11/getconfig ${libdir}/X11/etc ${libdir}/modules/*.so ${libdir}/xorg/modules/*.so /etc/X11 ${libdir}/xorg/protocol.txt ${datadir}/X11/xorg.conf.d"
+FILES:${PN}-dev += "${libdir}/xorg/modules/*.la ${libdir}/xorg/modules/*/*.la"
+FILES:${PN}-doc += "${libdir}/X11/doc ${datadir}/X11/xkb/compiled/README.compiled ${localstatedir}/lib/xkb/README.compiled"
+FILES:${PN}-sdl = "${bindir}/Xsdl"
+FILES:${PN}-fbdev = "${bindir}/Xfbdev"
+FILES:${PN}-xvfb = "${bindir}/Xvfb"
+FILES:${PN}-utils = "${bindir}/scanpci ${bindir}/pcitweak ${bindir}/ioport ${bindir}/in[bwl] ${bindir}/out[bwl] ${bindir}/mmap[rw] ${bindir}/gtf ${bindir}/getconfig ${bindir}/getconfig.pl"
+FILES:${PN}-xephyr = "${bindir}/Xephyr"
+FILES:${PN}-xwayland = "${bindir}/Xwayland"
+FILES:${PN}-multimedia-modules = "${libdir}/xorg/modules/multimedia/*drv*"
+FILES:${PN}-extension-dri = "${libdir}/xorg/modules/extensions/libdri.so"
+FILES:${PN}-extension-dri2 = "${libdir}/xorg/modules/extensions/libdri2.so"
+FILES:${PN}-extension-glx = "${libdir}/xorg/modules/extensions/libglx.so"
+FILES:${PN}-extension-record = "${libdir}/xorg/modules/extensions/librecord.so"
+FILES:${PN}-extension-extmod = "${libdir}/xorg/modules/extensions/libextmod.so"
+FILES:${PN}-extension-dbe = "${libdir}/xorg/modules/extensions/libdbe.so"
+FILES:${PN}-module-libint10 = "${libdir}/xorg/modules/libint10.so"
+FILES:${PN}-module-libafb = "${libdir}/xorg/modules/libafb.so"
+FILES:${PN}-module-libwfb = "${libdir}/xorg/modules/libwfb.so"
+FILES:${PN}-module-libmfb = "${libdir}/xorg/modules/libmfb.so"
+FILES:${PN}-module-libcfb = "${libdir}/xorg/modules/libcfb.so"
+FILES:${PN}-module-exa = "${libdir}/xorg/modules/libexa.so"
+FILES:${PN}-module-xaa = "${libdir}/xorg/modules/libxaa.so"
+FILES:${PN}-module-libxf1bpp = "${libdir}/xorg/modules/libxf1bpp.so"
+FILES:${PN}-module-libxf4bpp = "${libdir}/xorg/modules/libxf4bpp.so"
+FILES:xf86-video-modesetting = "${libdir}/xorg/modules/drivers/modesetting_drv.so"
 
 EXTRA_OECONF += "--with-fop=no \
                  --with-pic \
@@ -149,7 +149,7 @@
 PACKAGECONFIG[nettle] = "--with-sha1=libnettle,,nettle"
 PACKAGECONFIG[gcrypt] = "--with-sha1=libgcrypt,,libgcrypt"
 
-do_install_append () {
+do_install:append () {
 	# Its assumed base-files creates this for us
 	rmdir ${D}${localstatedir}/log/
         sed -i -e 's,${libdir}/xorg/modules,${prefix}/lib*/xorg/modules,' ${D}${mandir}/man5/xorg.conf.5
@@ -157,7 +157,7 @@
 
 # Add runtime provides for the ABI versions of the video and input subsystems,
 # so that drivers can depend on the relevant version.
-python populate_packages_prepend() {
+python populate_packages:prepend() {
     import subprocess
 
     # Set PKG_CONFIG_PATH so pkg-config looks at the .pc files that are going
@@ -178,6 +178,6 @@
         return "%sxorg-abi-%s-%s" % (mlprefix, name, output)
 
     pn = d.getVar("PN")
-    d.appendVar("RPROVIDES_" + pn, " " + get_abi("input"))
-    d.appendVar("RPROVIDES_" + pn, " " + get_abi("video"))
+    d.appendVar("RPROVIDES:" + pn, " " + get_abi("input"))
+    d.appendVar("RPROVIDES:" + pn, " " + get_abi("video"))
 }
diff --git a/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg_1.20.12.bb b/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg_1.20.12.bb
index 8f86bea..01b50b9 100644
--- a/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg_1.20.12.bb
+++ b/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg_1.20.12.bb
@@ -13,19 +13,19 @@
 # These extensions are now integrated into the server, so declare the migration
 # path for in-place upgrades.
 
-RREPLACES_${PN} =  "${PN}-extension-dri \
+RREPLACES:${PN} =  "${PN}-extension-dri \
                     ${PN}-extension-dri2 \
                     ${PN}-extension-record \
                     ${PN}-extension-extmod \
                     ${PN}-extension-dbe \
                    "
-RPROVIDES_${PN} =  "${PN}-extension-dri \
+RPROVIDES:${PN} =  "${PN}-extension-dri \
                     ${PN}-extension-dri2 \
                     ${PN}-extension-record \
                     ${PN}-extension-extmod \
                     ${PN}-extension-dbe \
                    "
-RCONFLICTS_${PN} = "${PN}-extension-dri \
+RCONFLICTS:${PN} = "${PN}-extension-dri \
                     ${PN}-extension-dri2 \
                     ${PN}-extension-record \
                     ${PN}-extension-extmod \
diff --git a/poky/meta/recipes-graphics/xwayland/xwayland_21.1.2.bb b/poky/meta/recipes-graphics/xwayland/xwayland_21.1.2.bb
index 794a7bd..3df6fd1 100644
--- a/poky/meta/recipes-graphics/xwayland/xwayland_21.1.2.bb
+++ b/poky/meta/recipes-graphics/xwayland/xwayland_21.1.2.bb
@@ -35,10 +35,10 @@
 PACKAGECONFIG[nettle] = "-Dsha1=libnettle,,nettle"
 PACKAGECONFIG[gcrypt] = "-Dsha1=libgcrypt,,libgcrypt"
 
-do_install_append() {
+do_install:append() {
     # remove files not needed and clashing with xserver-xorg
     rm -rf ${D}/${libdir}/xorg/
 }
 
-FILES_${PN} += "${libdir}/xorg/protocol.txt"
+FILES:${PN} += "${libdir}/xorg/protocol.txt"
 
diff --git a/poky/meta/recipes-kernel/cryptodev/cryptodev-linux_1.12.bb b/poky/meta/recipes-kernel/cryptodev/cryptodev-linux_1.12.bb
index c55577c..d5ea9d8 100644
--- a/poky/meta/recipes-kernel/cryptodev/cryptodev-linux_1.12.bb
+++ b/poky/meta/recipes-kernel/cryptodev/cryptodev-linux_1.12.bb
@@ -9,5 +9,5 @@
 	install -D ${S}/crypto/cryptodev.h ${D}${includedir}/crypto/cryptodev.h
 }
 
-ALLOW_EMPTY_${PN} = "1"
+ALLOW_EMPTY:${PN} = "1"
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-kernel/cryptodev/cryptodev-module_1.12.bb b/poky/meta/recipes-kernel/cryptodev/cryptodev-module_1.12.bb
index b3b554c..5192cf0 100644
--- a/poky/meta/recipes-kernel/cryptodev/cryptodev-module_1.12.bb
+++ b/poky/meta/recipes-kernel/cryptodev/cryptodev-module_1.12.bb
@@ -12,5 +12,5 @@
 
 EXTRA_OEMAKE='KERNEL_DIR="${STAGING_KERNEL_DIR}" PREFIX="${D}"'
 
-RCONFLICTS_${PN} = "ocf-linux"
-RREPLACES_${PN} = "ocf-linux"
+RCONFLICTS:${PN} = "ocf-linux"
+RREPLACES:${PN} = "ocf-linux"
diff --git a/poky/meta/recipes-kernel/cryptodev/cryptodev-tests_1.12.bb b/poky/meta/recipes-kernel/cryptodev/cryptodev-tests_1.12.bb
index 9cb5dcb..c1adbb6 100644
--- a/poky/meta/recipes-kernel/cryptodev/cryptodev-tests_1.12.bb
+++ b/poky/meta/recipes-kernel/cryptodev/cryptodev-tests_1.12.bb
@@ -18,4 +18,4 @@
 	oe_runmake install_tests
 }
 
-FILES_${PN} = "${bindir}/*"
+FILES:${PN} = "${bindir}/*"
diff --git a/poky/meta/recipes-kernel/dtc/dtc.inc b/poky/meta/recipes-kernel/dtc/dtc.inc
index 5da6c24..12508b2 100644
--- a/poky/meta/recipes-kernel/dtc/dtc.inc
+++ b/poky/meta/recipes-kernel/dtc/dtc.inc
@@ -23,6 +23,6 @@
 }
 
 PACKAGES =+ "${PN}-misc"
-FILES_${PN}-misc = "${bindir}/convert-dtsv0 ${bindir}/ftdump ${bindir}/dtdiff"
+FILES:${PN}-misc = "${bindir}/convert-dtsv0 ${bindir}/ftdump ${bindir}/dtdiff"
 
-RDEPENDS_${PN}-misc += "bash diffutils"
+RDEPENDS:${PN}-misc += "bash diffutils"
diff --git a/poky/meta/recipes-kernel/kexec/kexec-tools_2.0.22.bb b/poky/meta/recipes-kernel/kexec/kexec-tools_2.0.22.bb
index dcc4402..d12ad4e 100644
--- a/poky/meta/recipes-kernel/kexec/kexec-tools_2.0.22.bb
+++ b/poky/meta/recipes-kernel/kexec/kexec-tools_2.0.22.bb
@@ -29,7 +29,7 @@
 export LDFLAGS = "-L${STAGING_LIBDIR}"
 EXTRA_OECONF = " --with-zlib=yes"
 
-do_compile_prepend() {
+do_compile:prepend() {
     # Remove the prepackaged config.h from the source tree as it overrides
     # the same file generated by configure and placed in the build tree
     rm -f ${S}/include/config.h
@@ -44,7 +44,7 @@
     done
 }
 
-do_install_append () {
+do_install:append () {
         install -d ${D}${sysconfdir}/sysconfig
         install -m 0644 ${WORKDIR}/kdump.conf ${D}${sysconfdir}/sysconfig
 
@@ -61,28 +61,28 @@
 
 PACKAGES =+ "kexec kdump vmcore-dmesg"
 
-ALLOW_EMPTY_${PN} = "1"
-RRECOMMENDS_${PN} = "kexec kdump vmcore-dmesg"
+ALLOW_EMPTY:${PN} = "1"
+RRECOMMENDS:${PN} = "kexec kdump vmcore-dmesg"
 
-FILES_kexec = "${sbindir}/kexec"
-FILES_kdump = "${sbindir}/kdump \
+FILES:kexec = "${sbindir}/kexec"
+FILES:kdump = "${sbindir}/kdump \
                ${sysconfdir}/sysconfig/kdump.conf \
                ${sysconfdir}/init.d/kdump \
                ${libexecdir}/kdump-helper \
                ${systemd_unitdir}/system/kdump.service \
 "
 
-FILES_vmcore-dmesg = "${sbindir}/vmcore-dmesg"
+FILES:vmcore-dmesg = "${sbindir}/vmcore-dmesg"
 
 INITSCRIPT_PACKAGES = "kdump"
-INITSCRIPT_NAME_kdump = "kdump"
-INITSCRIPT_PARAMS_kdump = "start 56 2 3 4 5 . stop 56 0 1 6 ."
+INITSCRIPT_NAME:kdump = "kdump"
+INITSCRIPT_PARAMS:kdump = "start 56 2 3 4 5 . stop 56 0 1 6 ."
 
 SYSTEMD_PACKAGES = "kdump"
-SYSTEMD_SERVICE_kdump = "kdump.service"
+SYSTEMD_SERVICE:kdump = "kdump.service"
 
-SECURITY_PIE_CFLAGS_remove = "-fPIE -pie"
+SECURITY_PIE_CFLAGS:remove = "-fPIE -pie"
 
 COMPATIBLE_HOST = '(x86_64.*|i.86.*|arm.*|aarch64.*|powerpc.*|mips.*)-(linux|freebsd.*)'
 
-INSANE_SKIP_${PN} = "arch"
+INSANE_SKIP:${PN} = "arch"
diff --git a/poky/meta/recipes-kernel/kmod/kmod-native_git.bb b/poky/meta/recipes-kernel/kmod/kmod-native_git.bb
index f61134b..4dd34b1 100644
--- a/poky/meta/recipes-kernel/kmod/kmod-native_git.bb
+++ b/poky/meta/recipes-kernel/kmod/kmod-native_git.bb
@@ -7,7 +7,7 @@
 
 inherit native
 
-do_install_append (){
+do_install:append (){
 	for tool in depmod insmod lsmod modinfo modprobe rmmod
 	do
 		ln -s kmod ${D}${bindir}/$tool
diff --git a/poky/meta/recipes-kernel/kmod/kmod.inc b/poky/meta/recipes-kernel/kmod/kmod.inc
index e66684f..c2d550a 100644
--- a/poky/meta/recipes-kernel/kmod/kmod.inc
+++ b/poky/meta/recipes-kernel/kmod/kmod.inc
@@ -6,7 +6,7 @@
                insert, remove, list, check properties, resolve dependencies and aliases."
 HOMEPAGE = "http://kernel.org/pub/linux/utils/kernel/kmod/"
 LICENSE = "GPL-2.0+ & LGPL-2.1+"
-LICENSE_libkmod = "LGPL-2.1+"
+LICENSE:libkmod = "LGPL-2.1+"
 SECTION = "base"
 
 LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343 \
diff --git a/poky/meta/recipes-kernel/kmod/kmod_git.bb b/poky/meta/recipes-kernel/kmod/kmod_git.bb
index 4f2b037..853561a 100644
--- a/poky/meta/recipes-kernel/kmod/kmod_git.bb
+++ b/poky/meta/recipes-kernel/kmod/kmod_git.bb
@@ -5,17 +5,17 @@
 
 DEPENDS += "zlib"
 PROVIDES += "module-init-tools-insmod-static module-init-tools-depmod module-init-tools"
-RPROVIDES_${PN} += "module-init-tools-insmod-static module-init-tools-depmod module-init-tools"
-RCONFLICTS_${PN} += "module-init-tools-insmod-static module-init-tools-depmod module-init-tools"
-RREPLACES_${PN} += "module-init-tools-insmod-static module-init-tools-depmod module-init-tools"
+RPROVIDES:${PN} += "module-init-tools-insmod-static module-init-tools-depmod module-init-tools"
+RCONFLICTS:${PN} += "module-init-tools-insmod-static module-init-tools-depmod module-init-tools"
+RREPLACES:${PN} += "module-init-tools-insmod-static module-init-tools-depmod module-init-tools"
 
 # to force user to remove old module-init-tools and replace them with kmod variants
-RCONFLICTS_libkmod2 += "module-init-tools-insmod-static module-init-tools-depmod module-init-tools"
+RCONFLICTS:libkmod2 += "module-init-tools-insmod-static module-init-tools-depmod module-init-tools"
 
 # autotools set prefix to /usr, however we want them in /bin and /sbin
 EXTRA_OECONF += " --bindir=${base_bindir} --sbindir=${base_sbindir}"
 
-do_install_append () {
+do_install:append () {
         install -dm755 ${D}${base_bindir}
         install -dm755 ${D}${base_sbindir}
         # add symlinks to kmod
@@ -33,7 +33,7 @@
         install -Dm644 "${WORKDIR}/depmod-search.conf" "${D}${base_libdir}/depmod.d/search.conf"
 }
 
-do_compile_prepend() {
+do_compile:prepend() {
             sed -i 's/ac_pwd=/#ac_pwd=/' config.status ; sed -i "/#ac_pwd=/a\ac_pwd='.'" config.status
 }
 
@@ -41,7 +41,7 @@
 
 ALTERNATIVE_PRIORITY = "70"
 
-ALTERNATIVE_kmod = "insmod modprobe rmmod modinfo bin-lsmod lsmod depmod"
+ALTERNATIVE:kmod = "insmod modprobe rmmod modinfo bin-lsmod lsmod depmod"
 
 ALTERNATIVE_LINK_NAME[insmod] = "${base_sbindir}/insmod"
 ALTERNATIVE_LINK_NAME[modprobe] = "${base_sbindir}/modprobe"
@@ -56,7 +56,7 @@
 
 PACKAGES =+ "libkmod"
 
-FILES_libkmod = "${base_libdir}/libkmod*${SOLIBS} ${libdir}/libkmod*${SOLIBS}"
-FILES_${PN} += "${base_libdir}/depmod.d ${base_libdir}/modprobe.d"
+FILES:libkmod = "${base_libdir}/libkmod*${SOLIBS} ${libdir}/libkmod*${SOLIBS}"
+FILES:${PN} += "${base_libdir}/depmod.d ${base_libdir}/modprobe.d"
 
 BBCLASSEXTEND = "nativesdk"
diff --git a/poky/meta/recipes-kernel/linux-firmware/linux-firmware_20210511.bb b/poky/meta/recipes-kernel/linux-firmware/linux-firmware_20210511.bb
index 26091fb..fe46cb5 100644
--- a/poky/meta/recipes-kernel/linux-firmware/linux-firmware_20210511.bb
+++ b/poky/meta/recipes-kernel/linux-firmware/linux-firmware_20210511.bb
@@ -312,19 +312,19 @@
              "
 
 # For atheros
-LICENSE_${PN}-ar9170 = "Firmware-atheros_firmware"
-LICENSE_${PN}-ath6k = "Firmware-atheros_firmware"
-LICENSE_${PN}-ath9k = "Firmware-atheros_firmware"
-LICENSE_${PN}-atheros-license = "Firmware-atheros_firmware"
+LICENSE:${PN}-ar9170 = "Firmware-atheros_firmware"
+LICENSE:${PN}-ath6k = "Firmware-atheros_firmware"
+LICENSE:${PN}-ath9k = "Firmware-atheros_firmware"
+LICENSE:${PN}-atheros-license = "Firmware-atheros_firmware"
 
-FILES_${PN}-atheros-license = "${nonarch_base_libdir}/firmware/LICENCE.atheros_firmware"
-FILES_${PN}-ar9170 = " \
+FILES:${PN}-atheros-license = "${nonarch_base_libdir}/firmware/LICENCE.atheros_firmware"
+FILES:${PN}-ar9170 = " \
   ${nonarch_base_libdir}/firmware/ar9170*.fw \
 "
-FILES_${PN}-ath6k = " \
+FILES:${PN}-ath6k = " \
   ${nonarch_base_libdir}/firmware/ath6k \
 "
-FILES_${PN}-ath9k = " \
+FILES:${PN}-ath9k = " \
   ${nonarch_base_libdir}/firmware/ar9271.fw \
   ${nonarch_base_libdir}/firmware/ar7010*.fw \
   ${nonarch_base_libdir}/firmware/htc_9271.fw \
@@ -333,166 +333,166 @@
   ${nonarch_base_libdir}/firmware/ath9k_htc/htc_9271-1.4.0.fw \
 "
 
-RDEPENDS_${PN}-ar9170 += "${PN}-atheros-license"
-RDEPENDS_${PN}-ath6k += "${PN}-atheros-license"
-RDEPENDS_${PN}-ath9k += "${PN}-atheros-license"
+RDEPENDS:${PN}-ar9170 += "${PN}-atheros-license"
+RDEPENDS:${PN}-ath6k += "${PN}-atheros-license"
+RDEPENDS:${PN}-ath9k += "${PN}-atheros-license"
 
 # For carl9170
-LICENSE_${PN}-carl9170 = "Firmware-GPLv2"
-LICENSE_${PN}-gplv2-license = "Firmware-GPLv2"
+LICENSE:${PN}-carl9170 = "Firmware-GPLv2"
+LICENSE:${PN}-gplv2-license = "Firmware-GPLv2"
 
-FILES_${PN}-gplv2-license = "${nonarch_base_libdir}/firmware/GPL-2"
-FILES_${PN}-carl9170 = " \
+FILES:${PN}-gplv2-license = "${nonarch_base_libdir}/firmware/GPL-2"
+FILES:${PN}-carl9170 = " \
   ${nonarch_base_libdir}/firmware/carl9170*.fw \
 "
 
-RDEPENDS_${PN}-carl9170 += "${PN}-gplv2-license"
+RDEPENDS:${PN}-carl9170 += "${PN}-gplv2-license"
 
 # For QualCommAthos
-LICENSE_${PN}-ar3k = "Firmware-qualcommAthos_ar3k"
-LICENSE_${PN}-ar3k-license = "Firmware-qualcommAthos_ar3k"
-LICENSE_${PN}-ath10k = "Firmware-qualcommAthos_ath10k"
-LICENSE_${PN}-ath10k-license = "Firmware-qualcommAthos_ath10k"
-LICENSE_${PN}-qca = "Firmware-qualcommAthos_ath10k"
+LICENSE:${PN}-ar3k = "Firmware-qualcommAthos_ar3k"
+LICENSE:${PN}-ar3k-license = "Firmware-qualcommAthos_ar3k"
+LICENSE:${PN}-ath10k = "Firmware-qualcommAthos_ath10k"
+LICENSE:${PN}-ath10k-license = "Firmware-qualcommAthos_ath10k"
+LICENSE:${PN}-qca = "Firmware-qualcommAthos_ath10k"
 
-FILES_${PN}-ar3k-license = "${nonarch_base_libdir}/firmware/LICENSE.QualcommAtheros_ar3k"
-FILES_${PN}-ar3k = " \
+FILES:${PN}-ar3k-license = "${nonarch_base_libdir}/firmware/LICENSE.QualcommAtheros_ar3k"
+FILES:${PN}-ar3k = " \
   ${nonarch_base_libdir}/firmware/ar3k \
 "
 
-FILES_${PN}-ath10k-license = "${nonarch_base_libdir}/firmware/LICENSE.QualcommAtheros_ath10k"
-FILES_${PN}-ath10k = " \
+FILES:${PN}-ath10k-license = "${nonarch_base_libdir}/firmware/LICENSE.QualcommAtheros_ath10k"
+FILES:${PN}-ath10k = " \
   ${nonarch_base_libdir}/firmware/ath10k \
 "
 
-FILES_${PN}-ath11k = " \
+FILES:${PN}-ath11k = " \
   ${nonarch_base_libdir}/firmware/ath11k \
 "
 
-FILES_${PN}-qca = " \
+FILES:${PN}-qca = " \
   ${nonarch_base_libdir}/firmware/qca \
 "
 
-RDEPENDS_${PN}-ar3k += "${PN}-ar3k-license"
-RDEPENDS_${PN}-ath10k += "${PN}-ath10k-license"
-RDEPENDS_${PN}-ath11k += "${PN}-ath10k-license"
-RDEPENDS_${PN}-qca += "${PN}-ath10k-license"
+RDEPENDS:${PN}-ar3k += "${PN}-ar3k-license"
+RDEPENDS:${PN}-ath10k += "${PN}-ath10k-license"
+RDEPENDS:${PN}-ath11k += "${PN}-ath10k-license"
+RDEPENDS:${PN}-qca += "${PN}-ath10k-license"
 
 # For ralink
-LICENSE_${PN}-ralink = "Firmware-ralink-firmware"
-LICENSE_${PN}-ralink-license = "Firmware-ralink-firmware"
+LICENSE:${PN}-ralink = "Firmware-ralink-firmware"
+LICENSE:${PN}-ralink-license = "Firmware-ralink-firmware"
 
-FILES_${PN}-ralink-license = "${nonarch_base_libdir}/firmware/LICENCE.ralink-firmware.txt"
-FILES_${PN}-ralink = " \
+FILES:${PN}-ralink-license = "${nonarch_base_libdir}/firmware/LICENCE.ralink-firmware.txt"
+FILES:${PN}-ralink = " \
   ${nonarch_base_libdir}/firmware/rt*.bin \
 "
 
-RDEPENDS_${PN}-ralink += "${PN}-ralink-license"
+RDEPENDS:${PN}-ralink += "${PN}-ralink-license"
 
 # For mediatek MT7601U
-LICENSE_${PN}-mt7601u = "Firmware-ralink_a_mediatek_company_firmware"
-LICENSE_${PN}-mt7601u-license = "Firmware-ralink_a_mediatek_company_firmware"
+LICENSE:${PN}-mt7601u = "Firmware-ralink_a_mediatek_company_firmware"
+LICENSE:${PN}-mt7601u-license = "Firmware-ralink_a_mediatek_company_firmware"
 
-FILES_${PN}-mt7601u-license = "${nonarch_base_libdir}/firmware/LICENCE.ralink_a_mediatek_company_firmware"
-FILES_${PN}-mt7601u = " \
+FILES:${PN}-mt7601u-license = "${nonarch_base_libdir}/firmware/LICENCE.ralink_a_mediatek_company_firmware"
+FILES:${PN}-mt7601u = " \
   ${nonarch_base_libdir}/firmware/mt7601u.bin \
 "
 
-RDEPENDS_${PN}-mt7601u += "${PN}-mt7601u-license"
+RDEPENDS:${PN}-mt7601u += "${PN}-mt7601u-license"
 
 # For radeon
-LICENSE_${PN}-radeon = "Firmware-radeon"
-LICENSE_${PN}-radeon-license = "Firmware-radeon"
+LICENSE:${PN}-radeon = "Firmware-radeon"
+LICENSE:${PN}-radeon-license = "Firmware-radeon"
 
-FILES_${PN}-radeon-license = "${nonarch_base_libdir}/firmware/LICENSE.radeon"
-FILES_${PN}-radeon = " \
+FILES:${PN}-radeon-license = "${nonarch_base_libdir}/firmware/LICENSE.radeon"
+FILES:${PN}-radeon = " \
   ${nonarch_base_libdir}/firmware/radeon \
 "
 
-RDEPENDS_${PN}-radeon += "${PN}-radeon-license"
+RDEPENDS:${PN}-radeon += "${PN}-radeon-license"
 
 # For lontium
-LICENSE_${PN}-lt9611uxc = "Firmware-Lontium"
+LICENSE:${PN}-lt9611uxc = "Firmware-Lontium"
 
-FILES_${PN}-lontium-license = "${nonarch_base_libdir}/firmware/LICENSE.Lontium"
-FILES_${PN}-lt9611uxc = "${nonarch_base_libdir}/firmware/lt9611uxc_fw.bin"
+FILES:${PN}-lontium-license = "${nonarch_base_libdir}/firmware/LICENSE.Lontium"
+FILES:${PN}-lt9611uxc = "${nonarch_base_libdir}/firmware/lt9611uxc_fw.bin"
 
 # For marvell
-LICENSE_${PN}-pcie8897 = "Firmware-Marvell"
-LICENSE_${PN}-pcie8997 = "Firmware-Marvell"
-LICENSE_${PN}-sd8686 = "Firmware-Marvell"
-LICENSE_${PN}-sd8688 = "Firmware-Marvell"
-LICENSE_${PN}-sd8787 = "Firmware-Marvell"
-LICENSE_${PN}-sd8797 = "Firmware-Marvell"
-LICENSE_${PN}-sd8801 = "Firmware-Marvell"
-LICENSE_${PN}-sd8887 = "Firmware-Marvell"
-LICENSE_${PN}-sd8897 = "Firmware-Marvell"
-LICENSE_${PN}-sd8997 = "Firmware-Marvell"
-LICENSE_${PN}-usb8997 = "Firmware-Marvell"
-LICENSE_${PN}-marvell-license = "Firmware-Marvell"
+LICENSE:${PN}-pcie8897 = "Firmware-Marvell"
+LICENSE:${PN}-pcie8997 = "Firmware-Marvell"
+LICENSE:${PN}-sd8686 = "Firmware-Marvell"
+LICENSE:${PN}-sd8688 = "Firmware-Marvell"
+LICENSE:${PN}-sd8787 = "Firmware-Marvell"
+LICENSE:${PN}-sd8797 = "Firmware-Marvell"
+LICENSE:${PN}-sd8801 = "Firmware-Marvell"
+LICENSE:${PN}-sd8887 = "Firmware-Marvell"
+LICENSE:${PN}-sd8897 = "Firmware-Marvell"
+LICENSE:${PN}-sd8997 = "Firmware-Marvell"
+LICENSE:${PN}-usb8997 = "Firmware-Marvell"
+LICENSE:${PN}-marvell-license = "Firmware-Marvell"
 
-FILES_${PN}-marvell-license = "${nonarch_base_libdir}/firmware/LICENCE.Marvell"
-FILES_${PN}-pcie8897 = " \
+FILES:${PN}-marvell-license = "${nonarch_base_libdir}/firmware/LICENCE.Marvell"
+FILES:${PN}-pcie8897 = " \
   ${nonarch_base_libdir}/firmware/mrvl/pcie8897_uapsta.bin \
 "
-FILES_${PN}-pcie8997 = " \
+FILES:${PN}-pcie8997 = " \
   ${nonarch_base_libdir}/firmware/mrvl/pcie8997_wlan_v4.bin \
   ${nonarch_base_libdir}/firmware/mrvl/pcieuart8997_combo_v4.bin \
   ${nonarch_base_libdir}/firmware/mrvl/pcieusb8997_combo_v4.bin \
 "
-FILES_${PN}-sd8686 = " \
+FILES:${PN}-sd8686 = " \
   ${nonarch_base_libdir}/firmware/libertas/sd8686_v9* \
   ${nonarch_base_libdir}/firmware/sd8686* \
 "
-FILES_${PN}-sd8688 = " \
+FILES:${PN}-sd8688 = " \
   ${nonarch_base_libdir}/firmware/libertas/sd8688* \
   ${nonarch_base_libdir}/firmware/mrvl/sd8688* \
 "
-FILES_${PN}-sd8787 = " \
+FILES:${PN}-sd8787 = " \
   ${nonarch_base_libdir}/firmware/mrvl/sd8787_uapsta.bin \
 "
-FILES_${PN}-sd8797 = " \
+FILES:${PN}-sd8797 = " \
   ${nonarch_base_libdir}/firmware/mrvl/sd8797_uapsta.bin \
 "
-FILES_${PN}-sd8801 = " \
+FILES:${PN}-sd8801 = " \
   ${nonarch_base_libdir}/firmware/mrvl/sd8801_uapsta.bin \
 "
-FILES_${PN}-sd8887 = " \
+FILES:${PN}-sd8887 = " \
   ${nonarch_base_libdir}/firmware/mrvl/sd8887_uapsta.bin \
 "
-FILES_${PN}-sd8897 = " \
+FILES:${PN}-sd8897 = " \
   ${nonarch_base_libdir}/firmware/mrvl/sd8897_uapsta.bin \
 "
-do_install_append() {
+do_install:append() {
     # The kernel 5.6.x driver still uses the old name, provide a symlink for
     # older kernels
     ln -fs sdsd8997_combo_v4.bin ${D}${nonarch_base_libdir}/firmware/mrvl/sd8997_uapsta.bin
 }
-FILES_${PN}-sd8997 = " \
+FILES:${PN}-sd8997 = " \
   ${nonarch_base_libdir}/firmware/mrvl/sd8997_uapsta.bin \
   ${nonarch_base_libdir}/firmware/mrvl/sdsd8997_combo_v4.bin \
 "
-FILES_${PN}-usb8997 = " \
+FILES:${PN}-usb8997 = " \
   ${nonarch_base_libdir}/firmware/mrvl/usbusb8997_combo_v4.bin \
 "
 
-RDEPENDS_${PN}-sd8686 += "${PN}-marvell-license"
-RDEPENDS_${PN}-sd8688 += "${PN}-marvell-license"
-RDEPENDS_${PN}-sd8787 += "${PN}-marvell-license"
-RDEPENDS_${PN}-sd8797 += "${PN}-marvell-license"
-RDEPENDS_${PN}-sd8801 += "${PN}-marvell-license"
-RDEPENDS_${PN}-sd8887 += "${PN}-marvell-license"
-RDEPENDS_${PN}-sd8897 += "${PN}-marvell-license"
-RDEPENDS_${PN}-sd8997 += "${PN}-marvell-license"
-RDEPENDS_${PN}-usb8997 += "${PN}-marvell-license"
+RDEPENDS:${PN}-sd8686 += "${PN}-marvell-license"
+RDEPENDS:${PN}-sd8688 += "${PN}-marvell-license"
+RDEPENDS:${PN}-sd8787 += "${PN}-marvell-license"
+RDEPENDS:${PN}-sd8797 += "${PN}-marvell-license"
+RDEPENDS:${PN}-sd8801 += "${PN}-marvell-license"
+RDEPENDS:${PN}-sd8887 += "${PN}-marvell-license"
+RDEPENDS:${PN}-sd8897 += "${PN}-marvell-license"
+RDEPENDS:${PN}-sd8997 += "${PN}-marvell-license"
+RDEPENDS:${PN}-usb8997 += "${PN}-marvell-license"
 
 # For netronome
-LICENSE_${PN}-netronome = "Firmware-netronome"
+LICENSE:${PN}-netronome = "Firmware-netronome"
 
-FILES_${PN}-netronome-license = " \
+FILES:${PN}-netronome-license = " \
   ${nonarch_base_libdir}/firmware/LICENCE.Netronome \
 "
-FILES_${PN}-netronome = " \
+FILES:${PN}-netronome = " \
   ${nonarch_base_libdir}/firmware/netronome/nic_AMDA0081*.nffw \
   ${nonarch_base_libdir}/firmware/netronome/nic_AMDA0096*.nffw \
   ${nonarch_base_libdir}/firmware/netronome/nic_AMDA0097*.nffw \
@@ -506,90 +506,90 @@
   ${nonarch_base_libdir}/firmware/netronome/nic-sriov \
 "
 
-RDEPENDS_${PN}-netronome += "${PN}-netronome-license"
+RDEPENDS:${PN}-netronome += "${PN}-netronome-license"
 
 # For Nvidia
-LICENSE_${PN}-nvidia-gpu = "Firmware-nvidia"
-LICENSE_${PN}-nvidia-tegra = "Firmware-nvidia"
-LICENSE_${PN}-nvidia-tegra-k1 = "Firmware-nvidia"
-LICENSE_${PN}-nvidia-license = "Firmware-nvidia"
+LICENSE:${PN}-nvidia-gpu = "Firmware-nvidia"
+LICENSE:${PN}-nvidia-tegra = "Firmware-nvidia"
+LICENSE:${PN}-nvidia-tegra-k1 = "Firmware-nvidia"
+LICENSE:${PN}-nvidia-license = "Firmware-nvidia"
 
-FILES_${PN}-nvidia-gpu = "${nonarch_base_libdir}/firmware/nvidia"
-FILES_${PN}-nvidia-tegra = " \
+FILES:${PN}-nvidia-gpu = "${nonarch_base_libdir}/firmware/nvidia"
+FILES:${PN}-nvidia-tegra = " \
   ${nonarch_base_libdir}/firmware/nvidia/tegra* \
   ${nonarch_base_libdir}/firmware/nvidia/gm20b \
   ${nonarch_base_libdir}/firmware/nvidia/gp10b \
 "
-FILES_${PN}-nvidia-tegra-k1 = " \
+FILES:${PN}-nvidia-tegra-k1 = " \
   ${nonarch_base_libdir}/firmware/nvidia/tegra124 \
   ${nonarch_base_libdir}/firmware/nvidia/gk20a \
 "
-FILES_${PN}-nvidia-license = "${nonarch_base_libdir}/firmware/LICENCE.nvidia"
+FILES:${PN}-nvidia-license = "${nonarch_base_libdir}/firmware/LICENCE.nvidia"
 
-RDEPENDS_${PN}-nvidia-gpu += "${PN}-nvidia-license"
-RDEPENDS_${PN}-nvidia-tegra += "${PN}-nvidia-license"
-RDEPENDS_${PN}-nvidia-tegra-k1 += "${PN}-nvidia-license"
+RDEPENDS:${PN}-nvidia-gpu += "${PN}-nvidia-license"
+RDEPENDS:${PN}-nvidia-tegra += "${PN}-nvidia-license"
+RDEPENDS:${PN}-nvidia-tegra-k1 += "${PN}-nvidia-license"
 
 # For RSI RS911x WiFi
-LICENSE_${PN}-rs9113 = "WHENCE"
-LICENSE_${PN}-rs9116 = "WHENCE"
+LICENSE:${PN}-rs9113 = "WHENCE"
+LICENSE:${PN}-rs9116 = "WHENCE"
 
-FILES_${PN}-rs9113 = " ${nonarch_base_libdir}/firmware/rsi/rs9113*.rps "
-FILES_${PN}-rs9116 = " ${nonarch_base_libdir}/firmware/rsi/rs9116*.rps "
+FILES:${PN}-rs9113 = " ${nonarch_base_libdir}/firmware/rsi/rs9113*.rps "
+FILES:${PN}-rs9116 = " ${nonarch_base_libdir}/firmware/rsi/rs9116*.rps "
 
-RDEPENDS_${PN}-rs9113 += "${PN}-whence-license"
-RDEPENDS_${PN}-rs9116 += "${PN}-whence-license"
+RDEPENDS:${PN}-rs9113 += "${PN}-whence-license"
+RDEPENDS:${PN}-rs9116 += "${PN}-whence-license"
 
 # For rtl
-LICENSE_${PN}-rtl8188 = "Firmware-rtlwifi_firmware"
-LICENSE_${PN}-rtl8192cu = "Firmware-rtlwifi_firmware"
-LICENSE_${PN}-rtl8192ce = "Firmware-rtlwifi_firmware"
-LICENSE_${PN}-rtl8192su = "Firmware-rtlwifi_firmware"
-LICENSE_${PN}-rtl8723 = "Firmware-rtlwifi_firmware"
-LICENSE_${PN}-rtl8821 = "Firmware-rtlwifi_firmware"
-LICENSE_${PN}-rtl-license = "Firmware-rtlwifi_firmware"
-LICENSE_${PN}-rtl8168 = "WHENCE"
+LICENSE:${PN}-rtl8188 = "Firmware-rtlwifi_firmware"
+LICENSE:${PN}-rtl8192cu = "Firmware-rtlwifi_firmware"
+LICENSE:${PN}-rtl8192ce = "Firmware-rtlwifi_firmware"
+LICENSE:${PN}-rtl8192su = "Firmware-rtlwifi_firmware"
+LICENSE:${PN}-rtl8723 = "Firmware-rtlwifi_firmware"
+LICENSE:${PN}-rtl8821 = "Firmware-rtlwifi_firmware"
+LICENSE:${PN}-rtl-license = "Firmware-rtlwifi_firmware"
+LICENSE:${PN}-rtl8168 = "WHENCE"
 
-FILES_${PN}-rtl-license = " \
+FILES:${PN}-rtl-license = " \
   ${nonarch_base_libdir}/firmware/LICENCE.rtlwifi_firmware.txt \
 "
-FILES_${PN}-rtl8188 = " \
+FILES:${PN}-rtl8188 = " \
   ${nonarch_base_libdir}/firmware/rtlwifi/rtl8188*.bin \
 "
-FILES_${PN}-rtl8192cu = " \
+FILES:${PN}-rtl8192cu = " \
   ${nonarch_base_libdir}/firmware/rtlwifi/rtl8192cufw*.bin \
 "
-FILES_${PN}-rtl8192ce = " \
+FILES:${PN}-rtl8192ce = " \
   ${nonarch_base_libdir}/firmware/rtlwifi/rtl8192cfw*.bin \
 "
-FILES_${PN}-rtl8192su = " \
+FILES:${PN}-rtl8192su = " \
   ${nonarch_base_libdir}/firmware/rtlwifi/rtl8712u.bin \
 "
-FILES_${PN}-rtl8723 = " \
+FILES:${PN}-rtl8723 = " \
   ${nonarch_base_libdir}/firmware/rtlwifi/rtl8723*.bin \
 "
-FILES_${PN}-rtl8821 = " \
+FILES:${PN}-rtl8821 = " \
   ${nonarch_base_libdir}/firmware/rtlwifi/rtl8821*.bin \
 "
-FILES_${PN}-rtl8168 = " \
+FILES:${PN}-rtl8168 = " \
   ${nonarch_base_libdir}/firmware/rtl_nic/rtl8168*.fw \
 "
 
-RDEPENDS_${PN}-rtl8188 += "${PN}-rtl-license"
-RDEPENDS_${PN}-rtl8192ce += "${PN}-rtl-license"
-RDEPENDS_${PN}-rtl8192cu += "${PN}-rtl-license"
-RDEPENDS_${PN}-rtl8192su = "${PN}-rtl-license"
-RDEPENDS_${PN}-rtl8723 += "${PN}-rtl-license"
-RDEPENDS_${PN}-rtl8821 += "${PN}-rtl-license"
-RDEPENDS_${PN}-rtl8168 += "${PN}-whence-license"
+RDEPENDS:${PN}-rtl8188 += "${PN}-rtl-license"
+RDEPENDS:${PN}-rtl8192ce += "${PN}-rtl-license"
+RDEPENDS:${PN}-rtl8192cu += "${PN}-rtl-license"
+RDEPENDS:${PN}-rtl8192su = "${PN}-rtl-license"
+RDEPENDS:${PN}-rtl8723 += "${PN}-rtl-license"
+RDEPENDS:${PN}-rtl8821 += "${PN}-rtl-license"
+RDEPENDS:${PN}-rtl8168 += "${PN}-whence-license"
 
 # For ti-connectivity
-LICENSE_${PN}-wlcommon = "Firmware-ti-connectivity"
-LICENSE_${PN}-wl12xx = "Firmware-ti-connectivity"
-LICENSE_${PN}-wl18xx = "Firmware-ti-connectivity"
-LICENSE_${PN}-ti-connectivity-license = "Firmware-ti-connectivity"
+LICENSE:${PN}-wlcommon = "Firmware-ti-connectivity"
+LICENSE:${PN}-wl12xx = "Firmware-ti-connectivity"
+LICENSE:${PN}-wl18xx = "Firmware-ti-connectivity"
+LICENSE:${PN}-ti-connectivity-license = "Firmware-ti-connectivity"
 
-FILES_${PN}-ti-connectivity-license = "${nonarch_base_libdir}/firmware/LICENCE.ti-connectivity"
+FILES:${PN}-ti-connectivity-license = "${nonarch_base_libdir}/firmware/LICENCE.ti-connectivity"
 # wl18xx optionally needs wl1271-nvs.bin (which itself is a symlink to
 # wl127x-nvs.bin) - see linux/drivers/net/wireless/ti/wlcore/sdio.c
 # and drivers/net/wireless/ti/wlcore/spi.c.
@@ -597,389 +597,389 @@
 # address on wl18xx, driver loading will delay (by udev timout - 60s)
 # if not there. So let's make it available always. Because it's a
 # symlink, both need to go to wlcommon.
-FILES_${PN}-wlcommon = " \
+FILES:${PN}-wlcommon = " \
   ${nonarch_base_libdir}/firmware/ti-connectivity/TI* \
   ${nonarch_base_libdir}/firmware/ti-connectivity/wl127x-nvs.bin \
   ${nonarch_base_libdir}/firmware/ti-connectivity/wl1271-nvs.bin \
 "
-FILES_${PN}-wl12xx = " \
+FILES:${PN}-wl12xx = " \
   ${nonarch_base_libdir}/firmware/ti-connectivity/wl12* \
 "
-FILES_${PN}-wl18xx = " \
+FILES:${PN}-wl18xx = " \
   ${nonarch_base_libdir}/firmware/ti-connectivity/wl18* \
 "
 
-RDEPENDS_${PN}-wl12xx = "${PN}-ti-connectivity-license ${PN}-wlcommon"
-RDEPENDS_${PN}-wl18xx = "${PN}-ti-connectivity-license ${PN}-wlcommon"
+RDEPENDS:${PN}-wl12xx = "${PN}-ti-connectivity-license ${PN}-wlcommon"
+RDEPENDS:${PN}-wl18xx = "${PN}-ti-connectivity-license ${PN}-wlcommon"
 
 # For vt6656
-LICENSE_${PN}-vt6656 = "Firmware-via_vt6656"
-LICENSE_${PN}-vt6656-license = "Firmware-via_vt6656"
+LICENSE:${PN}-vt6656 = "Firmware-via_vt6656"
+LICENSE:${PN}-vt6656-license = "Firmware-via_vt6656"
 
-FILES_${PN}-vt6656-license = "${nonarch_base_libdir}/firmware/LICENCE.via_vt6656"
-FILES_${PN}-vt6656 = " \
+FILES:${PN}-vt6656-license = "${nonarch_base_libdir}/firmware/LICENCE.via_vt6656"
+FILES:${PN}-vt6656 = " \
   ${nonarch_base_libdir}/firmware/vntwusb.fw \
 "
 
-RDEPENDS_${PN}-vt6656 = "${PN}-vt6656-license"
+RDEPENDS:${PN}-vt6656 = "${PN}-vt6656-license"
 
 # For broadcom
 
 # for i in `grep brcm WHENCE  | grep ^File | sed 's/File: brcm.//g'`; do pkg=`echo $i | sed 's/-[sp40].*//g; s/\.bin//g; s/brcmfmac/bcm/g; s/_hdr/-hdr/g; s/BCM/bcm-0bb4-0306/g'`; echo -e "             \${PN}-$pkg \\"; done  | sort -u
 
-LICENSE_${PN}-broadcom-license = "Firmware-broadcom_bcm43xx"
-FILES_${PN}-broadcom-license = "${nonarch_base_libdir}/firmware/LICENCE.broadcom_bcm43xx"
+LICENSE:${PN}-broadcom-license = "Firmware-broadcom_bcm43xx"
+FILES:${PN}-broadcom-license = "${nonarch_base_libdir}/firmware/LICENCE.broadcom_bcm43xx"
 
-# for i in `grep brcm WHENCE  | grep ^File | sed 's/File: brcm.//g'`; do pkg=`echo $i | sed 's/-[sp40].*//g; s/\.bin//g; s/brcmfmac/bcm/g; s/_hdr/-hdr/g; s/BCM/bcm-0bb4-0306/g'`; echo "$i - $pkg"; echo -e "FILES_\${PN}-$pkg = \"\${nonarch_base_libdir}/firmware/brcm/$i\""; done | grep ^FILES
+# for i in `grep brcm WHENCE  | grep ^File | sed 's/File: brcm.//g'`; do pkg=`echo $i | sed 's/-[sp40].*//g; s/\.bin//g; s/brcmfmac/bcm/g; s/_hdr/-hdr/g; s/BCM/bcm-0bb4-0306/g'`; echo "$i - $pkg"; echo -e "FILES:\${PN}-$pkg = \"\${nonarch_base_libdir}/firmware/brcm/$i\""; done | grep ^FILES
 
-FILES_${PN}-bcm43xx = "${nonarch_base_libdir}/firmware/brcm/bcm43xx-0.fw"
-FILES_${PN}-bcm43xx-hdr = "${nonarch_base_libdir}/firmware/brcm/bcm43xx_hdr-0.fw"
-FILES_${PN}-bcm4329-fullmac = "${nonarch_base_libdir}/firmware/brcm/bcm4329-fullmac-4.bin"
-FILES_${PN}-bcm43236b = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43236b.bin"
-FILES_${PN}-bcm4329 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4329-sdio.bin"
-FILES_${PN}-bcm4330 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4330-sdio.*"
-FILES_${PN}-bcm4334 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4334-sdio.bin"
-FILES_${PN}-bcm4335 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4335-sdio.bin"
-FILES_${PN}-bcm4339 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4339-sdio.bin \
+FILES:${PN}-bcm43xx = "${nonarch_base_libdir}/firmware/brcm/bcm43xx-0.fw"
+FILES:${PN}-bcm43xx-hdr = "${nonarch_base_libdir}/firmware/brcm/bcm43xx_hdr-0.fw"
+FILES:${PN}-bcm4329-fullmac = "${nonarch_base_libdir}/firmware/brcm/bcm4329-fullmac-4.bin"
+FILES:${PN}-bcm43236b = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43236b.bin"
+FILES:${PN}-bcm4329 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4329-sdio.bin"
+FILES:${PN}-bcm4330 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4330-sdio.*"
+FILES:${PN}-bcm4334 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4334-sdio.bin"
+FILES:${PN}-bcm4335 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4335-sdio.bin"
+FILES:${PN}-bcm4339 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4339-sdio.bin \
   ${nonarch_base_libdir}/firmware/cypress/cyfmac4339-sdio.bin \
 "
-FILES_${PN}-bcm43241b0 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43241b0-sdio.bin"
-FILES_${PN}-bcm43241b4 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43241b4-sdio.bin"
-FILES_${PN}-bcm43241b5 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43241b5-sdio.bin"
-FILES_${PN}-bcm43242a = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43242a.bin"
-FILES_${PN}-bcm43143 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43143.bin \
+FILES:${PN}-bcm43241b0 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43241b0-sdio.bin"
+FILES:${PN}-bcm43241b4 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43241b4-sdio.bin"
+FILES:${PN}-bcm43241b5 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43241b5-sdio.bin"
+FILES:${PN}-bcm43242a = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43242a.bin"
+FILES:${PN}-bcm43143 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43143.bin \
   ${nonarch_base_libdir}/firmware/brcm/brcmfmac43143-sdio.bin \
 "
-FILES_${PN}-bcm43430a0 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43430a0-sdio.*"
-FILES_${PN}-bcm43455 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43455-sdio.* \
+FILES:${PN}-bcm43430a0 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43430a0-sdio.*"
+FILES:${PN}-bcm43455 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43455-sdio.* \
   ${nonarch_base_libdir}/firmware/cypress/cyfmac43455-sdio.* \
 "
-FILES_${PN}-bcm4350c2 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4350c2-pcie.bin"
-FILES_${PN}-bcm4350 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4350-pcie.bin"
-FILES_${PN}-bcm4356 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4356-sdio.* \
+FILES:${PN}-bcm4350c2 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4350c2-pcie.bin"
+FILES:${PN}-bcm4350 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4350-pcie.bin"
+FILES:${PN}-bcm4356 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4356-sdio.* \
   ${nonarch_base_libdir}/firmware/cypress/cyfmac4356-sdio.* \
 "
-FILES_${PN}-bcm43569 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43569.bin"
-FILES_${PN}-bcm43570 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43570-pcie.bin \
+FILES:${PN}-bcm43569 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43569.bin"
+FILES:${PN}-bcm43570 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43570-pcie.bin \
   ${nonarch_base_libdir}/firmware/cypress/cyfmac43570-pcie.bin \
 "
-FILES_${PN}-bcm4358 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4358-pcie.bin"
-FILES_${PN}-bcm43602 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43602-pcie.bin \
+FILES:${PN}-bcm4358 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4358-pcie.bin"
+FILES:${PN}-bcm43602 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43602-pcie.bin \
   ${nonarch_base_libdir}/firmware/brcm/brcmfmac43602-pcie.ap.bin \
 "
-FILES_${PN}-bcm4366b = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4366b-pcie.bin"
-FILES_${PN}-bcm4366c = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4366c-pcie.bin"
-FILES_${PN}-bcm4371 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4371-pcie.bin"
+FILES:${PN}-bcm4366b = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4366b-pcie.bin"
+FILES:${PN}-bcm4366c = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4366c-pcie.bin"
+FILES:${PN}-bcm4371 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4371-pcie.bin"
 
-# for i in `grep brcm WHENCE  | grep ^File | sed 's/File: brcm.//g'`; do pkg=`echo $i | sed 's/-[sp40].*//g; s/\.bin//g; s/brcmfmac/bcm/g; s/_hdr/-hdr/g; s/BCM/bcm-0bb4-0306/g'`; echo -e "LICENSE_\${PN}-$pkg = \"Firmware-broadcom_bcm43xx\"\nRDEPENDS_\${PN}-$pkg += \"\${PN}-broadcom-license\""; done
+# for i in `grep brcm WHENCE  | grep ^File | sed 's/File: brcm.//g'`; do pkg=`echo $i | sed 's/-[sp40].*//g; s/\.bin//g; s/brcmfmac/bcm/g; s/_hdr/-hdr/g; s/BCM/bcm-0bb4-0306/g'`; echo -e "LICENSE:\${PN}-$pkg = \"Firmware-broadcom_bcm43xx\"\nRDEPENDS_\${PN}-$pkg += \"\${PN}-broadcom-license\""; done
 # Currently 1st one and last 6 have cypress LICENSE
 
-LICENSE_${PN}-bcm43xx = "Firmware-broadcom_bcm43xx"
-RDEPENDS_${PN}-bcm43xx += "${PN}-broadcom-license"
-LICENSE_${PN}-bcm43xx-hdr = "Firmware-broadcom_bcm43xx"
-RDEPENDS_${PN}-bcm43xx-hdr += "${PN}-broadcom-license"
-LICENSE_${PN}-bcm4329-fullmac = "Firmware-broadcom_bcm43xx"
-RDEPENDS_${PN}-bcm4329-fullmac += "${PN}-broadcom-license"
-LICENSE_${PN}-bcm43236b = "Firmware-broadcom_bcm43xx"
-RDEPENDS_${PN}-bcm43236b += "${PN}-broadcom-license"
-LICENSE_${PN}-bcm4329 = "Firmware-broadcom_bcm43xx"
-RDEPENDS_${PN}-bcm4329 += "${PN}-broadcom-license"
-LICENSE_${PN}-bcm4330 = "Firmware-broadcom_bcm43xx"
-RDEPENDS_${PN}-bcm4330 += "${PN}-broadcom-license"
-LICENSE_${PN}-bcm4334 = "Firmware-broadcom_bcm43xx"
-RDEPENDS_${PN}-bcm4334 += "${PN}-broadcom-license"
-LICENSE_${PN}-bcm4335 = "Firmware-broadcom_bcm43xx"
-RDEPENDS_${PN}-bcm4335 += "${PN}-broadcom-license"
-LICENSE_${PN}-bcm4339 = "Firmware-broadcom_bcm43xx"
-RDEPENDS_${PN}-bcm4339 += "${PN}-broadcom-license"
-LICENSE_${PN}-bcm43241b0 = "Firmware-broadcom_bcm43xx"
-RDEPENDS_${PN}-bcm43241b0 += "${PN}-broadcom-license"
-LICENSE_${PN}-bcm43241b4 = "Firmware-broadcom_bcm43xx"
-RDEPENDS_${PN}-bcm43241b4 += "${PN}-broadcom-license"
-LICENSE_${PN}-bcm43241b5 = "Firmware-broadcom_bcm43xx"
-RDEPENDS_${PN}-bcm43241b5 += "${PN}-broadcom-license"
-LICENSE_${PN}-bcm43242a = "Firmware-broadcom_bcm43xx"
-RDEPENDS_${PN}-bcm43242a += "${PN}-broadcom-license"
-LICENSE_${PN}-bcm43143 = "Firmware-broadcom_bcm43xx"
-RDEPENDS_${PN}-bcm43143 += "${PN}-broadcom-license"
-LICENSE_${PN}-bcm43430a0 = "Firmware-broadcom_bcm43xx"
-RDEPENDS_${PN}-bcm43430a0 += "${PN}-broadcom-license"
-LICENSE_${PN}-bcm43455 = "Firmware-broadcom_bcm43xx"
-RDEPENDS_${PN}-bcm43455 += "${PN}-broadcom-license"
-LICENSE_${PN}-bcm4350c2 = "Firmware-broadcom_bcm43xx"
-RDEPENDS_${PN}-bcm4350c2 += "${PN}-broadcom-license"
-LICENSE_${PN}-bcm4350 = "Firmware-broadcom_bcm43xx"
-RDEPENDS_${PN}-bcm4350 += "${PN}-broadcom-license"
-LICENSE_${PN}-bcm4356 = "Firmware-broadcom_bcm43xx"
-RDEPENDS_${PN}-bcm4356 += "${PN}-broadcom-license"
-LICENSE_${PN}-bcm43569 = "Firmware-broadcom_bcm43xx"
-RDEPENDS_${PN}-bcm43569 += "${PN}-broadcom-license"
-LICENSE_${PN}-bcm43570 = "Firmware-broadcom_bcm43xx"
-RDEPENDS_${PN}-bcm43570 += "${PN}-broadcom-license"
-LICENSE_${PN}-bcm4358 = "Firmware-broadcom_bcm43xx"
-RDEPENDS_${PN}-bcm4358 += "${PN}-broadcom-license"
-LICENSE_${PN}-bcm43602 = "Firmware-broadcom_bcm43xx"
-RDEPENDS_${PN}-bcm43602 += "${PN}-broadcom-license"
-LICENSE_${PN}-bcm4366b = "Firmware-broadcom_bcm43xx"
-RDEPENDS_${PN}-bcm4366b += "${PN}-broadcom-license"
-LICENSE_${PN}-bcm4366c = "Firmware-broadcom_bcm43xx"
-RDEPENDS_${PN}-bcm4366c += "${PN}-broadcom-license"
-LICENSE_${PN}-bcm4371 = "Firmware-broadcom_bcm43xx"
-RDEPENDS_${PN}-bcm4371 += "${PN}-broadcom-license"
+LICENSE:${PN}-bcm43xx = "Firmware-broadcom_bcm43xx"
+RDEPENDS:${PN}-bcm43xx += "${PN}-broadcom-license"
+LICENSE:${PN}-bcm43xx-hdr = "Firmware-broadcom_bcm43xx"
+RDEPENDS:${PN}-bcm43xx-hdr += "${PN}-broadcom-license"
+LICENSE:${PN}-bcm4329-fullmac = "Firmware-broadcom_bcm43xx"
+RDEPENDS:${PN}-bcm4329-fullmac += "${PN}-broadcom-license"
+LICENSE:${PN}-bcm43236b = "Firmware-broadcom_bcm43xx"
+RDEPENDS:${PN}-bcm43236b += "${PN}-broadcom-license"
+LICENSE:${PN}-bcm4329 = "Firmware-broadcom_bcm43xx"
+RDEPENDS:${PN}-bcm4329 += "${PN}-broadcom-license"
+LICENSE:${PN}-bcm4330 = "Firmware-broadcom_bcm43xx"
+RDEPENDS:${PN}-bcm4330 += "${PN}-broadcom-license"
+LICENSE:${PN}-bcm4334 = "Firmware-broadcom_bcm43xx"
+RDEPENDS:${PN}-bcm4334 += "${PN}-broadcom-license"
+LICENSE:${PN}-bcm4335 = "Firmware-broadcom_bcm43xx"
+RDEPENDS:${PN}-bcm4335 += "${PN}-broadcom-license"
+LICENSE:${PN}-bcm4339 = "Firmware-broadcom_bcm43xx"
+RDEPENDS:${PN}-bcm4339 += "${PN}-broadcom-license"
+LICENSE:${PN}-bcm43241b0 = "Firmware-broadcom_bcm43xx"
+RDEPENDS:${PN}-bcm43241b0 += "${PN}-broadcom-license"
+LICENSE:${PN}-bcm43241b4 = "Firmware-broadcom_bcm43xx"
+RDEPENDS:${PN}-bcm43241b4 += "${PN}-broadcom-license"
+LICENSE:${PN}-bcm43241b5 = "Firmware-broadcom_bcm43xx"
+RDEPENDS:${PN}-bcm43241b5 += "${PN}-broadcom-license"
+LICENSE:${PN}-bcm43242a = "Firmware-broadcom_bcm43xx"
+RDEPENDS:${PN}-bcm43242a += "${PN}-broadcom-license"
+LICENSE:${PN}-bcm43143 = "Firmware-broadcom_bcm43xx"
+RDEPENDS:${PN}-bcm43143 += "${PN}-broadcom-license"
+LICENSE:${PN}-bcm43430a0 = "Firmware-broadcom_bcm43xx"
+RDEPENDS:${PN}-bcm43430a0 += "${PN}-broadcom-license"
+LICENSE:${PN}-bcm43455 = "Firmware-broadcom_bcm43xx"
+RDEPENDS:${PN}-bcm43455 += "${PN}-broadcom-license"
+LICENSE:${PN}-bcm4350c2 = "Firmware-broadcom_bcm43xx"
+RDEPENDS:${PN}-bcm4350c2 += "${PN}-broadcom-license"
+LICENSE:${PN}-bcm4350 = "Firmware-broadcom_bcm43xx"
+RDEPENDS:${PN}-bcm4350 += "${PN}-broadcom-license"
+LICENSE:${PN}-bcm4356 = "Firmware-broadcom_bcm43xx"
+RDEPENDS:${PN}-bcm4356 += "${PN}-broadcom-license"
+LICENSE:${PN}-bcm43569 = "Firmware-broadcom_bcm43xx"
+RDEPENDS:${PN}-bcm43569 += "${PN}-broadcom-license"
+LICENSE:${PN}-bcm43570 = "Firmware-broadcom_bcm43xx"
+RDEPENDS:${PN}-bcm43570 += "${PN}-broadcom-license"
+LICENSE:${PN}-bcm4358 = "Firmware-broadcom_bcm43xx"
+RDEPENDS:${PN}-bcm4358 += "${PN}-broadcom-license"
+LICENSE:${PN}-bcm43602 = "Firmware-broadcom_bcm43xx"
+RDEPENDS:${PN}-bcm43602 += "${PN}-broadcom-license"
+LICENSE:${PN}-bcm4366b = "Firmware-broadcom_bcm43xx"
+RDEPENDS:${PN}-bcm4366b += "${PN}-broadcom-license"
+LICENSE:${PN}-bcm4366c = "Firmware-broadcom_bcm43xx"
+RDEPENDS:${PN}-bcm4366c += "${PN}-broadcom-license"
+LICENSE:${PN}-bcm4371 = "Firmware-broadcom_bcm43xx"
+RDEPENDS:${PN}-bcm4371 += "${PN}-broadcom-license"
 
 # For broadcom cypress
 
-LICENSE_${PN}-cypress-license = "Firmware-cypress"
-FILES_${PN}-cypress-license = "${nonarch_base_libdir}/firmware/LICENCE.cypress"
+LICENSE:${PN}-cypress-license = "Firmware-cypress"
+FILES:${PN}-cypress-license = "${nonarch_base_libdir}/firmware/LICENCE.cypress"
 
-FILES_${PN}-bcm-0bb4-0306 = "${nonarch_base_libdir}/firmware/brcm/BCM-0bb4-0306.hcd"
-FILES_${PN}-bcm43340 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43340-sdio.* \
+FILES:${PN}-bcm-0bb4-0306 = "${nonarch_base_libdir}/firmware/brcm/BCM-0bb4-0306.hcd"
+FILES:${PN}-bcm43340 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43340-sdio.* \
   ${nonarch_base_libdir}/firmware/cypress/cyfmac43340-sdio.*"
-FILES_${PN}-bcm43362 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43362-sdio.* \
+FILES:${PN}-bcm43362 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43362-sdio.* \
   ${nonarch_base_libdir}/firmware/cypress/cyfmac43362-sdio.*"
-FILES_${PN}-bcm43430 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43430-sdio.* \
+FILES:${PN}-bcm43430 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43430-sdio.* \
   ${nonarch_base_libdir}/firmware/cypress/cyfmac43430-sdio.*"
-FILES_${PN}-bcm4354 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4354-sdio.bin \
+FILES:${PN}-bcm4354 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4354-sdio.bin \
   ${nonarch_base_libdir}/firmware/cypress/cyfmac4354-sdio.bin \
 "
-FILES_${PN}-bcm4356-pcie = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4356-pcie.* \
+FILES:${PN}-bcm4356-pcie = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4356-pcie.* \
   ${nonarch_base_libdir}/firmware/cypress/cyfmac4356-pcie.* \
 "
-FILES_${PN}-bcm4373 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4373-sdio.bin \
+FILES:${PN}-bcm4373 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4373-sdio.bin \
   ${nonarch_base_libdir}/firmware/brcm/brcmfmac4373.bin \
   ${nonarch_base_libdir}/firmware/cypress/cyfmac4373-sdio.bin \
 "
 
-LICENSE_${PN}-bcm-0bb4-0306 = "Firmware-cypress"
-RDEPENDS_${PN}-bcm-0bb4-0306 += "${PN}-cypress-license"
-LICENSE_${PN}-bcm43340 = "Firmware-cypress"
-RDEPENDS_${PN}-bcm43340 += "${PN}-cypress-license"
-LICENSE_${PN}-bcm43362 = "Firmware-cypress"
-RDEPENDS_${PN}-bcm43362 += "${PN}-cypress-license"
-LICENSE_${PN}-bcm43430 = "Firmware-cypress"
-RDEPENDS_${PN}-bcm43430 += "${PN}-cypress-license"
-LICENSE_${PN}-bcm4354 = "Firmware-cypress"
-RDEPENDS_${PN}-bcm4354 += "${PN}-cypress-license"
-LICENSE_${PN}-bcm4356-pcie = "Firmware-cypress"
-RDEPENDS_${PN}-bcm4356-pcie += "${PN}-cypress-license"
-LICENSE_${PN}-bcm4373 = "Firmware-cypress"
-RDEPENDS_${PN}-bcm4373 += "${PN}-cypress-license"
+LICENSE:${PN}-bcm-0bb4-0306 = "Firmware-cypress"
+RDEPENDS:${PN}-bcm-0bb4-0306 += "${PN}-cypress-license"
+LICENSE:${PN}-bcm43340 = "Firmware-cypress"
+RDEPENDS:${PN}-bcm43340 += "${PN}-cypress-license"
+LICENSE:${PN}-bcm43362 = "Firmware-cypress"
+RDEPENDS:${PN}-bcm43362 += "${PN}-cypress-license"
+LICENSE:${PN}-bcm43430 = "Firmware-cypress"
+RDEPENDS:${PN}-bcm43430 += "${PN}-cypress-license"
+LICENSE:${PN}-bcm4354 = "Firmware-cypress"
+RDEPENDS:${PN}-bcm4354 += "${PN}-cypress-license"
+LICENSE:${PN}-bcm4356-pcie = "Firmware-cypress"
+RDEPENDS:${PN}-bcm4356-pcie += "${PN}-cypress-license"
+LICENSE:${PN}-bcm4373 = "Firmware-cypress"
+RDEPENDS:${PN}-bcm4373 += "${PN}-cypress-license"
 
 # For Broadcom bnx2-mips
 #
 # which is a separate case to the other Broadcom firmwares since its
 # license is contained in the shared WHENCE file.
 
-LICENSE_${PN}-bnx2-mips = "WHENCE"
-LICENSE_${PN}-whence-license = "WHENCE"
+LICENSE:${PN}-bnx2-mips = "WHENCE"
+LICENSE:${PN}-whence-license = "WHENCE"
 
-FILES_${PN}-bnx2-mips = "${nonarch_base_libdir}/firmware/bnx2/bnx2-mips-09-6.2.1b.fw"
-FILES_${PN}-whence-license = "${nonarch_base_libdir}/firmware/WHENCE"
+FILES:${PN}-bnx2-mips = "${nonarch_base_libdir}/firmware/bnx2/bnx2-mips-09-6.2.1b.fw"
+FILES:${PN}-whence-license = "${nonarch_base_libdir}/firmware/WHENCE"
 
-RDEPENDS_${PN}-bnx2-mips += "${PN}-whence-license"
+RDEPENDS:${PN}-bnx2-mips += "${PN}-whence-license"
 
 # For imx-sdma
-LICENSE_${PN}-imx-sdma-imx6q       = "Firmware-imx-sdma_firmware"
-LICENSE_${PN}-imx-sdma-imx7d       = "Firmware-imx-sdma_firmware"
-LICENSE_${PN}-imx-sdma-license       = "Firmware-imx-sdma_firmware"
+LICENSE:${PN}-imx-sdma-imx6q       = "Firmware-imx-sdma_firmware"
+LICENSE:${PN}-imx-sdma-imx7d       = "Firmware-imx-sdma_firmware"
+LICENSE:${PN}-imx-sdma-license       = "Firmware-imx-sdma_firmware"
 
-FILES_${PN}-imx-sdma-imx6q = "${nonarch_base_libdir}/firmware/imx/sdma/sdma-imx6q.bin"
+FILES:${PN}-imx-sdma-imx6q = "${nonarch_base_libdir}/firmware/imx/sdma/sdma-imx6q.bin"
 
-RPROVIDES_${PN}-imx-sdma-imx6q = "firmware-imx-sdma-imx6q"
-RREPLACES_${PN}-imx-sdma-imx6q = "firmware-imx-sdma-imx6q"
-RCONFLICTS_${PN}-imx-sdma-imx6q = "firmware-imx-sdma-imx6q"
+RPROVIDES:${PN}-imx-sdma-imx6q = "firmware-imx-sdma-imx6q"
+RREPLACES:${PN}-imx-sdma-imx6q = "firmware-imx-sdma-imx6q"
+RCONFLICTS:${PN}-imx-sdma-imx6q = "firmware-imx-sdma-imx6q"
 
-FILES_${PN}-imx-sdma-imx7d = "${nonarch_base_libdir}/firmware/imx/sdma/sdma-imx7d.bin"
+FILES:${PN}-imx-sdma-imx7d = "${nonarch_base_libdir}/firmware/imx/sdma/sdma-imx7d.bin"
 
-FILES_${PN}-imx-sdma-license = "${nonarch_base_libdir}/firmware/LICENSE.sdma_firmware"
+FILES:${PN}-imx-sdma-license = "${nonarch_base_libdir}/firmware/LICENSE.sdma_firmware"
 
-RDEPENDS_${PN}-imx-sdma-imx6q += "${PN}-imx-sdma-license"
-RDEPENDS_${PN}-imx-sdma-imx7d += "${PN}-imx-sdma-license"
+RDEPENDS:${PN}-imx-sdma-imx6q += "${PN}-imx-sdma-license"
+RDEPENDS:${PN}-imx-sdma-imx7d += "${PN}-imx-sdma-license"
 
 # For iwlwifi
-LICENSE_${PN}-iwlwifi           = "Firmware-iwlwifi_firmware"
-LICENSE_${PN}-iwlwifi-135-6     = "Firmware-iwlwifi_firmware"
-LICENSE_${PN}-iwlwifi-3160-7    = "Firmware-iwlwifi_firmware"
-LICENSE_${PN}-iwlwifi-3160-8    = "Firmware-iwlwifi_firmware"
-LICENSE_${PN}-iwlwifi-3160-9    = "Firmware-iwlwifi_firmware"
-LICENSE_${PN}-iwlwifi-3160-10   = "Firmware-iwlwifi_firmware"
-LICENSE_${PN}-iwlwifi-3160-12   = "Firmware-iwlwifi_firmware"
-LICENSE_${PN}-iwlwifi-3160-13   = "Firmware-iwlwifi_firmware"
-LICENSE_${PN}-iwlwifi-3160-16   = "Firmware-iwlwifi_firmware"
-LICENSE_${PN}-iwlwifi-3160-17   = "Firmware-iwlwifi_firmware"
-LICENSE_${PN}-iwlwifi-6000-4    = "Firmware-iwlwifi_firmware"
-LICENSE_${PN}-iwlwifi-6000g2a-5 = "Firmware-iwlwifi_firmware"
-LICENSE_${PN}-iwlwifi-6000g2a-6 = "Firmware-iwlwifi_firmware"
-LICENSE_${PN}-iwlwifi-6000g2b-5 = "Firmware-iwlwifi_firmware"
-LICENSE_${PN}-iwlwifi-6000g2b-6 = "Firmware-iwlwifi_firmware"
-LICENSE_${PN}-iwlwifi-6050-4    = "Firmware-iwlwifi_firmware"
-LICENSE_${PN}-iwlwifi-6050-5    = "Firmware-iwlwifi_firmware"
-LICENSE_${PN}-iwlwifi-7260      = "Firmware-iwlwifi_firmware"
-LICENSE_${PN}-iwlwifi-7265      = "Firmware-iwlwifi_firmware"
-LICENSE_${PN}-iwlwifi-7265d     = "Firmware-iwlwifi_firmware"
-LICENSE_${PN}-iwlwifi-8000c     = "Firmware-iwlwifi_firmware"
-LICENSE_${PN}-iwlwifi-8265      = "Firmware-iwlwifi_firmware"
-LICENSE_${PN}-iwlwifi-9000      = "Firmware-iwlwifi_firmware"
-LICENSE_${PN}-iwlwifi-misc      = "Firmware-iwlwifi_firmware"
-LICENSE_${PN}-iwlwifi-license   = "Firmware-iwlwifi_firmware"
+LICENSE:${PN}-iwlwifi           = "Firmware-iwlwifi_firmware"
+LICENSE:${PN}-iwlwifi-135-6     = "Firmware-iwlwifi_firmware"
+LICENSE:${PN}-iwlwifi-3160-7    = "Firmware-iwlwifi_firmware"
+LICENSE:${PN}-iwlwifi-3160-8    = "Firmware-iwlwifi_firmware"
+LICENSE:${PN}-iwlwifi-3160-9    = "Firmware-iwlwifi_firmware"
+LICENSE:${PN}-iwlwifi-3160-10   = "Firmware-iwlwifi_firmware"
+LICENSE:${PN}-iwlwifi-3160-12   = "Firmware-iwlwifi_firmware"
+LICENSE:${PN}-iwlwifi-3160-13   = "Firmware-iwlwifi_firmware"
+LICENSE:${PN}-iwlwifi-3160-16   = "Firmware-iwlwifi_firmware"
+LICENSE:${PN}-iwlwifi-3160-17   = "Firmware-iwlwifi_firmware"
+LICENSE:${PN}-iwlwifi-6000-4    = "Firmware-iwlwifi_firmware"
+LICENSE:${PN}-iwlwifi-6000g2a-5 = "Firmware-iwlwifi_firmware"
+LICENSE:${PN}-iwlwifi-6000g2a-6 = "Firmware-iwlwifi_firmware"
+LICENSE:${PN}-iwlwifi-6000g2b-5 = "Firmware-iwlwifi_firmware"
+LICENSE:${PN}-iwlwifi-6000g2b-6 = "Firmware-iwlwifi_firmware"
+LICENSE:${PN}-iwlwifi-6050-4    = "Firmware-iwlwifi_firmware"
+LICENSE:${PN}-iwlwifi-6050-5    = "Firmware-iwlwifi_firmware"
+LICENSE:${PN}-iwlwifi-7260      = "Firmware-iwlwifi_firmware"
+LICENSE:${PN}-iwlwifi-7265      = "Firmware-iwlwifi_firmware"
+LICENSE:${PN}-iwlwifi-7265d     = "Firmware-iwlwifi_firmware"
+LICENSE:${PN}-iwlwifi-8000c     = "Firmware-iwlwifi_firmware"
+LICENSE:${PN}-iwlwifi-8265      = "Firmware-iwlwifi_firmware"
+LICENSE:${PN}-iwlwifi-9000      = "Firmware-iwlwifi_firmware"
+LICENSE:${PN}-iwlwifi-misc      = "Firmware-iwlwifi_firmware"
+LICENSE:${PN}-iwlwifi-license   = "Firmware-iwlwifi_firmware"
 
 
-FILES_${PN}-iwlwifi-license = "${nonarch_base_libdir}/firmware/LICENCE.iwlwifi_firmware"
-FILES_${PN}-iwlwifi-135-6 = "${nonarch_base_libdir}/firmware/iwlwifi-135-6.ucode"
-FILES_${PN}-iwlwifi-3160-7 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-7.ucode"
-FILES_${PN}-iwlwifi-3160-8 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-8.ucode"
-FILES_${PN}-iwlwifi-3160-9 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-9.ucode"
-FILES_${PN}-iwlwifi-3160-10 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-10.ucode"
-FILES_${PN}-iwlwifi-3160-12 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-12.ucode"
-FILES_${PN}-iwlwifi-3160-13 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-13.ucode"
-FILES_${PN}-iwlwifi-3160-16 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-16.ucode"
-FILES_${PN}-iwlwifi-3160-17 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-17.ucode"
-FILES_${PN}-iwlwifi-6000-4 = "${nonarch_base_libdir}/firmware/iwlwifi-6000-4.ucode"
-FILES_${PN}-iwlwifi-6000g2a-5 = "${nonarch_base_libdir}/firmware/iwlwifi-6000g2a-5.ucode"
-FILES_${PN}-iwlwifi-6000g2a-6 = "${nonarch_base_libdir}/firmware/iwlwifi-6000g2a-6.ucode"
-FILES_${PN}-iwlwifi-6000g2b-5 = "${nonarch_base_libdir}/firmware/iwlwifi-6000g2b-5.ucode"
-FILES_${PN}-iwlwifi-6000g2b-6 = "${nonarch_base_libdir}/firmware/iwlwifi-6000g2b-6.ucode"
-FILES_${PN}-iwlwifi-6050-4 = "${nonarch_base_libdir}/firmware/iwlwifi-6050-4.ucode"
-FILES_${PN}-iwlwifi-6050-5 = "${nonarch_base_libdir}/firmware/iwlwifi-6050-5.ucode"
-FILES_${PN}-iwlwifi-7260   = "${nonarch_base_libdir}/firmware/iwlwifi-7260-*.ucode"
-FILES_${PN}-iwlwifi-7265   = "${nonarch_base_libdir}/firmware/iwlwifi-7265-*.ucode"
-FILES_${PN}-iwlwifi-7265d   = "${nonarch_base_libdir}/firmware/iwlwifi-7265D-*.ucode"
-FILES_${PN}-iwlwifi-8000c   = "${nonarch_base_libdir}/firmware/iwlwifi-8000C-*.ucode"
-FILES_${PN}-iwlwifi-8265   = "${nonarch_base_libdir}/firmware/iwlwifi-8265-*.ucode"
-FILES_${PN}-iwlwifi-9000   = "${nonarch_base_libdir}/firmware/iwlwifi-9000-*.ucode"
-FILES_${PN}-iwlwifi-misc   = "${nonarch_base_libdir}/firmware/iwlwifi-*.ucode"
+FILES:${PN}-iwlwifi-license = "${nonarch_base_libdir}/firmware/LICENCE.iwlwifi_firmware"
+FILES:${PN}-iwlwifi-135-6 = "${nonarch_base_libdir}/firmware/iwlwifi-135-6.ucode"
+FILES:${PN}-iwlwifi-3160-7 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-7.ucode"
+FILES:${PN}-iwlwifi-3160-8 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-8.ucode"
+FILES:${PN}-iwlwifi-3160-9 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-9.ucode"
+FILES:${PN}-iwlwifi-3160-10 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-10.ucode"
+FILES:${PN}-iwlwifi-3160-12 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-12.ucode"
+FILES:${PN}-iwlwifi-3160-13 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-13.ucode"
+FILES:${PN}-iwlwifi-3160-16 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-16.ucode"
+FILES:${PN}-iwlwifi-3160-17 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-17.ucode"
+FILES:${PN}-iwlwifi-6000-4 = "${nonarch_base_libdir}/firmware/iwlwifi-6000-4.ucode"
+FILES:${PN}-iwlwifi-6000g2a-5 = "${nonarch_base_libdir}/firmware/iwlwifi-6000g2a-5.ucode"
+FILES:${PN}-iwlwifi-6000g2a-6 = "${nonarch_base_libdir}/firmware/iwlwifi-6000g2a-6.ucode"
+FILES:${PN}-iwlwifi-6000g2b-5 = "${nonarch_base_libdir}/firmware/iwlwifi-6000g2b-5.ucode"
+FILES:${PN}-iwlwifi-6000g2b-6 = "${nonarch_base_libdir}/firmware/iwlwifi-6000g2b-6.ucode"
+FILES:${PN}-iwlwifi-6050-4 = "${nonarch_base_libdir}/firmware/iwlwifi-6050-4.ucode"
+FILES:${PN}-iwlwifi-6050-5 = "${nonarch_base_libdir}/firmware/iwlwifi-6050-5.ucode"
+FILES:${PN}-iwlwifi-7260   = "${nonarch_base_libdir}/firmware/iwlwifi-7260-*.ucode"
+FILES:${PN}-iwlwifi-7265   = "${nonarch_base_libdir}/firmware/iwlwifi-7265-*.ucode"
+FILES:${PN}-iwlwifi-7265d   = "${nonarch_base_libdir}/firmware/iwlwifi-7265D-*.ucode"
+FILES:${PN}-iwlwifi-8000c   = "${nonarch_base_libdir}/firmware/iwlwifi-8000C-*.ucode"
+FILES:${PN}-iwlwifi-8265   = "${nonarch_base_libdir}/firmware/iwlwifi-8265-*.ucode"
+FILES:${PN}-iwlwifi-9000   = "${nonarch_base_libdir}/firmware/iwlwifi-9000-*.ucode"
+FILES:${PN}-iwlwifi-misc   = "${nonarch_base_libdir}/firmware/iwlwifi-*.ucode"
 
-RDEPENDS_${PN}-iwlwifi-135-6     = "${PN}-iwlwifi-license"
-RDEPENDS_${PN}-iwlwifi-3160-7    = "${PN}-iwlwifi-license"
-RDEPENDS_${PN}-iwlwifi-3160-8    = "${PN}-iwlwifi-license"
-RDEPENDS_${PN}-iwlwifi-3160-9    = "${PN}-iwlwifi-license"
-RDEPENDS_${PN}-iwlwifi-3160-10   = "${PN}-iwlwifi-license"
-RDEPENDS_${PN}-iwlwifi-3160-12   = "${PN}-iwlwifi-license"
-RDEPENDS_${PN}-iwlwifi-3160-13   = "${PN}-iwlwifi-license"
-RDEPENDS_${PN}-iwlwifi-3160-16   = "${PN}-iwlwifi-license"
-RDEPENDS_${PN}-iwlwifi-3160-17   = "${PN}-iwlwifi-license"
-RDEPENDS_${PN}-iwlwifi-6000-4    = "${PN}-iwlwifi-license"
-RDEPENDS_${PN}-iwlwifi-6000g2a-5 = "${PN}-iwlwifi-license"
-RDEPENDS_${PN}-iwlwifi-6000g2a-6 = "${PN}-iwlwifi-license"
-RDEPENDS_${PN}-iwlwifi-6000g2b-5 = "${PN}-iwlwifi-license"
-RDEPENDS_${PN}-iwlwifi-6000g2b-6 = "${PN}-iwlwifi-license"
-RDEPENDS_${PN}-iwlwifi-6050-4    = "${PN}-iwlwifi-license"
-RDEPENDS_${PN}-iwlwifi-6050-5    = "${PN}-iwlwifi-license"
-RDEPENDS_${PN}-iwlwifi-7260      = "${PN}-iwlwifi-license"
-RDEPENDS_${PN}-iwlwifi-7265      = "${PN}-iwlwifi-license"
-RDEPENDS_${PN}-iwlwifi-7265d     = "${PN}-iwlwifi-license"
-RDEPENDS_${PN}-iwlwifi-8000c     = "${PN}-iwlwifi-license"
-RDEPENDS_${PN}-iwlwifi-8265      = "${PN}-iwlwifi-license"
-RDEPENDS_${PN}-iwlwifi-9000      = "${PN}-iwlwifi-license"
-RDEPENDS_${PN}-iwlwifi-misc      = "${PN}-iwlwifi-license"
+RDEPENDS:${PN}-iwlwifi-135-6     = "${PN}-iwlwifi-license"
+RDEPENDS:${PN}-iwlwifi-3160-7    = "${PN}-iwlwifi-license"
+RDEPENDS:${PN}-iwlwifi-3160-8    = "${PN}-iwlwifi-license"
+RDEPENDS:${PN}-iwlwifi-3160-9    = "${PN}-iwlwifi-license"
+RDEPENDS:${PN}-iwlwifi-3160-10   = "${PN}-iwlwifi-license"
+RDEPENDS:${PN}-iwlwifi-3160-12   = "${PN}-iwlwifi-license"
+RDEPENDS:${PN}-iwlwifi-3160-13   = "${PN}-iwlwifi-license"
+RDEPENDS:${PN}-iwlwifi-3160-16   = "${PN}-iwlwifi-license"
+RDEPENDS:${PN}-iwlwifi-3160-17   = "${PN}-iwlwifi-license"
+RDEPENDS:${PN}-iwlwifi-6000-4    = "${PN}-iwlwifi-license"
+RDEPENDS:${PN}-iwlwifi-6000g2a-5 = "${PN}-iwlwifi-license"
+RDEPENDS:${PN}-iwlwifi-6000g2a-6 = "${PN}-iwlwifi-license"
+RDEPENDS:${PN}-iwlwifi-6000g2b-5 = "${PN}-iwlwifi-license"
+RDEPENDS:${PN}-iwlwifi-6000g2b-6 = "${PN}-iwlwifi-license"
+RDEPENDS:${PN}-iwlwifi-6050-4    = "${PN}-iwlwifi-license"
+RDEPENDS:${PN}-iwlwifi-6050-5    = "${PN}-iwlwifi-license"
+RDEPENDS:${PN}-iwlwifi-7260      = "${PN}-iwlwifi-license"
+RDEPENDS:${PN}-iwlwifi-7265      = "${PN}-iwlwifi-license"
+RDEPENDS:${PN}-iwlwifi-7265d     = "${PN}-iwlwifi-license"
+RDEPENDS:${PN}-iwlwifi-8000c     = "${PN}-iwlwifi-license"
+RDEPENDS:${PN}-iwlwifi-8265      = "${PN}-iwlwifi-license"
+RDEPENDS:${PN}-iwlwifi-9000      = "${PN}-iwlwifi-license"
+RDEPENDS:${PN}-iwlwifi-misc      = "${PN}-iwlwifi-license"
 
 # -iwlwifi-misc is a "catch all" package that includes all the iwlwifi
 # firmwares that are not already included in other -iwlwifi- packages.
 # -iwlwifi is a virtual package that depends upon all iwlwifi packages.
 # These are distinct in order to allow the -misc firmwares to be installed
 # without pulling in every other iwlwifi package.
-ALLOW_EMPTY_${PN}-iwlwifi = "1"
-ALLOW_EMPTY_${PN}-iwlwifi-misc = "1"
+ALLOW_EMPTY:${PN}-iwlwifi = "1"
+ALLOW_EMPTY:${PN}-iwlwifi-misc = "1"
 
 # Handle package updating for the newly merged iwlwifi groupings
-RPROVIDES_${PN}-iwlwifi-7265 = "${PN}-iwlwifi-7265-8 ${PN}-iwlwifi-7265-9"
-RREPLACES_${PN}-iwlwifi-7265 = "${PN}-iwlwifi-7265-8 ${PN}-iwlwifi-7265-9"
-RCONFLICTS_${PN}-iwlwifi-7265 = "${PN}-iwlwifi-7265-8 ${PN}-iwlwifi-7265-9"
+RPROVIDES:${PN}-iwlwifi-7265 = "${PN}-iwlwifi-7265-8 ${PN}-iwlwifi-7265-9"
+RREPLACES:${PN}-iwlwifi-7265 = "${PN}-iwlwifi-7265-8 ${PN}-iwlwifi-7265-9"
+RCONFLICTS:${PN}-iwlwifi-7265 = "${PN}-iwlwifi-7265-8 ${PN}-iwlwifi-7265-9"
 
-RPROVIDES_${PN}-iwlwifi-7260 = "${PN}-iwlwifi-7260-7 ${PN}-iwlwifi-7260-8 ${PN}-iwlwifi-7260-9"
-RREPLACES_${PN}-iwlwifi-7260 = "${PN}-iwlwifi-7260-7 ${PN}-iwlwifi-7260-8 ${PN}-iwlwifi-7260-9"
-RCONFLICTS_${PN}-iwlwifi-7260 = "${PN}-iwlwifi-7260-7 ${PN}-iwlwifi-7260-8 ${PN}-iwlwifi-7260-9"
+RPROVIDES:${PN}-iwlwifi-7260 = "${PN}-iwlwifi-7260-7 ${PN}-iwlwifi-7260-8 ${PN}-iwlwifi-7260-9"
+RREPLACES:${PN}-iwlwifi-7260 = "${PN}-iwlwifi-7260-7 ${PN}-iwlwifi-7260-8 ${PN}-iwlwifi-7260-9"
+RCONFLICTS:${PN}-iwlwifi-7260 = "${PN}-iwlwifi-7260-7 ${PN}-iwlwifi-7260-8 ${PN}-iwlwifi-7260-9"
 
 # For ibt
-LICENSE_${PN}-ibt-license = "Firmware-ibt_firmware"
-LICENSE_${PN}-ibt-hw-37-7 = "Firmware-ibt_firmware"
-LICENSE_${PN}-ibt-hw-37-8 = "Firmware-ibt_firmware"
-LICENSE_${PN}-ibt-11-5    = "Firmware-ibt_firmware"
-LICENSE_${PN}-ibt-12-16   = "Firmware-ibt_firmware"
-LICENSE_${PN}-ibt-17 = "Firmware-ibt_firmware"
-LICENSE_${PN}-ibt-20 = "Firmware-ibt_firmware"
-LICENSE_${PN}-ibt-misc    = "Firmware-ibt_firmware"
+LICENSE:${PN}-ibt-license = "Firmware-ibt_firmware"
+LICENSE:${PN}-ibt-hw-37-7 = "Firmware-ibt_firmware"
+LICENSE:${PN}-ibt-hw-37-8 = "Firmware-ibt_firmware"
+LICENSE:${PN}-ibt-11-5    = "Firmware-ibt_firmware"
+LICENSE:${PN}-ibt-12-16   = "Firmware-ibt_firmware"
+LICENSE:${PN}-ibt-17 = "Firmware-ibt_firmware"
+LICENSE:${PN}-ibt-20 = "Firmware-ibt_firmware"
+LICENSE:${PN}-ibt-misc    = "Firmware-ibt_firmware"
 
-FILES_${PN}-ibt-license = "${nonarch_base_libdir}/firmware/LICENCE.ibt_firmware"
-FILES_${PN}-ibt-hw-37-7 = "${nonarch_base_libdir}/firmware/intel/ibt-hw-37.7*.bseq"
-FILES_${PN}-ibt-hw-37-8 = "${nonarch_base_libdir}/firmware/intel/ibt-hw-37.8*.bseq"
-FILES_${PN}-ibt-11-5    = "${nonarch_base_libdir}/firmware/intel/ibt-11-5.sfi ${nonarch_base_libdir}/firmware/intel/ibt-11-5.ddc"
-FILES_${PN}-ibt-12-16   = "${nonarch_base_libdir}/firmware/intel/ibt-12-16.sfi ${nonarch_base_libdir}/firmware/intel/ibt-12-16.ddc"
-FILES_${PN}-ibt-17 = "${nonarch_base_libdir}/firmware/intel/ibt-17-*.sfi ${nonarch_base_libdir}/firmware/intel/ibt-17-*.ddc"
-FILES_${PN}-ibt-20 = "${nonarch_base_libdir}/firmware/intel/ibt-20-*.sfi ${nonarch_base_libdir}/firmware/intel/ibt-20-*.ddc"
-FILES_${PN}-ibt-misc    = "${nonarch_base_libdir}/firmware/intel/ibt-*"
+FILES:${PN}-ibt-license = "${nonarch_base_libdir}/firmware/LICENCE.ibt_firmware"
+FILES:${PN}-ibt-hw-37-7 = "${nonarch_base_libdir}/firmware/intel/ibt-hw-37.7*.bseq"
+FILES:${PN}-ibt-hw-37-8 = "${nonarch_base_libdir}/firmware/intel/ibt-hw-37.8*.bseq"
+FILES:${PN}-ibt-11-5    = "${nonarch_base_libdir}/firmware/intel/ibt-11-5.sfi ${nonarch_base_libdir}/firmware/intel/ibt-11-5.ddc"
+FILES:${PN}-ibt-12-16   = "${nonarch_base_libdir}/firmware/intel/ibt-12-16.sfi ${nonarch_base_libdir}/firmware/intel/ibt-12-16.ddc"
+FILES:${PN}-ibt-17 = "${nonarch_base_libdir}/firmware/intel/ibt-17-*.sfi ${nonarch_base_libdir}/firmware/intel/ibt-17-*.ddc"
+FILES:${PN}-ibt-20 = "${nonarch_base_libdir}/firmware/intel/ibt-20-*.sfi ${nonarch_base_libdir}/firmware/intel/ibt-20-*.ddc"
+FILES:${PN}-ibt-misc    = "${nonarch_base_libdir}/firmware/intel/ibt-*"
 
-RDEPENDS_${PN}-ibt-hw-37-7 = "${PN}-ibt-license"
-RDEPENDS_${PN}-ibt-hw-37.8 = "${PN}-ibt-license"
-RDEPENDS_${PN}-ibt-11-5    = "${PN}-ibt-license"
-RDEPENDS_${PN}-ibt-12-16   = "${PN}-ibt-license"
-RDEPENDS_${PN}-ibt-17 = "${PN}-ibt-license"
-RDEPENDS_${PN}-ibt-20 = "${PN}-ibt-license"
-RDEPENDS_${PN}-ibt-misc    = "${PN}-ibt-license"
+RDEPENDS:${PN}-ibt-hw-37-7 = "${PN}-ibt-license"
+RDEPENDS:${PN}-ibt-hw-37.8 = "${PN}-ibt-license"
+RDEPENDS:${PN}-ibt-11-5    = "${PN}-ibt-license"
+RDEPENDS:${PN}-ibt-12-16   = "${PN}-ibt-license"
+RDEPENDS:${PN}-ibt-17 = "${PN}-ibt-license"
+RDEPENDS:${PN}-ibt-20 = "${PN}-ibt-license"
+RDEPENDS:${PN}-ibt-misc    = "${PN}-ibt-license"
 
-ALLOW_EMPTY_${PN}-ibt= "1"
-ALLOW_EMPTY_${PN}-ibt-misc = "1"
+ALLOW_EMPTY:${PN}-ibt= "1"
+ALLOW_EMPTY:${PN}-ibt-misc = "1"
 
-LICENSE_${PN}-i915       = "Firmware-i915"
-LICENSE_${PN}-i915-license = "Firmware-i915"
-FILES_${PN}-i915-license = "${nonarch_base_libdir}/firmware/LICENSE.i915"
-FILES_${PN}-i915         = "${nonarch_base_libdir}/firmware/i915"
-RDEPENDS_${PN}-i915      = "${PN}-i915-license"
+LICENSE:${PN}-i915       = "Firmware-i915"
+LICENSE:${PN}-i915-license = "Firmware-i915"
+FILES:${PN}-i915-license = "${nonarch_base_libdir}/firmware/LICENSE.i915"
+FILES:${PN}-i915         = "${nonarch_base_libdir}/firmware/i915"
+RDEPENDS:${PN}-i915      = "${PN}-i915-license"
 
-LICENSE_${PN}-ice       = "Firmware-ice"
-LICENSE_${PN}-ice-license = "Firmware-ice"
-FILES_${PN}-ice-license = "${nonarch_base_libdir}/firmware/LICENSE.ice"
-FILES_${PN}-ice         = "${nonarch_base_libdir}/firmware/intel/ice"
-RDEPENDS_${PN}-ice      = "${PN}-ice-license"
+LICENSE:${PN}-ice       = "Firmware-ice"
+LICENSE:${PN}-ice-license = "Firmware-ice"
+FILES:${PN}-ice-license = "${nonarch_base_libdir}/firmware/LICENSE.ice"
+FILES:${PN}-ice         = "${nonarch_base_libdir}/firmware/intel/ice"
+RDEPENDS:${PN}-ice      = "${PN}-ice-license"
 
-FILES_${PN}-adsp-sst-license      = "${nonarch_base_libdir}/firmware/LICENCE.adsp_sst"
-LICENSE_${PN}-adsp-sst            = "Firmware-adsp_sst"
-LICENSE_${PN}-adsp-sst-license    = "Firmware-adsp_sst"
-FILES_${PN}-adsp-sst              = "${nonarch_base_libdir}/firmware/intel/dsp_fw*"
-RDEPENDS_${PN}-adsp-sst           = "${PN}-adsp-sst-license"
+FILES:${PN}-adsp-sst-license      = "${nonarch_base_libdir}/firmware/LICENCE.adsp_sst"
+LICENSE:${PN}-adsp-sst            = "Firmware-adsp_sst"
+LICENSE:${PN}-adsp-sst-license    = "Firmware-adsp_sst"
+FILES:${PN}-adsp-sst              = "${nonarch_base_libdir}/firmware/intel/dsp_fw*"
+RDEPENDS:${PN}-adsp-sst           = "${PN}-adsp-sst-license"
 
 # For QAT
-LICENSE_${PN}-qat         = "Firmware-qat"
-LICENSE_${PN}-qat-license = "Firmware-qat"
-FILES_${PN}-qat-license   = "${nonarch_base_libdir}/firmware/LICENCE.qat_firmware"
-FILES_${PN}-qat           = "${nonarch_base_libdir}/firmware/qat*.bin"
-RDEPENDS_${PN}-qat        = "${PN}-qat-license"
+LICENSE:${PN}-qat         = "Firmware-qat"
+LICENSE:${PN}-qat-license = "Firmware-qat"
+FILES:${PN}-qat-license   = "${nonarch_base_libdir}/firmware/LICENCE.qat_firmware"
+FILES:${PN}-qat           = "${nonarch_base_libdir}/firmware/qat*.bin"
+RDEPENDS:${PN}-qat        = "${PN}-qat-license"
 
 # For QCOM VPU/GPU and SDM845
-LICENSE_${PN}-qcom-license = "Firmware-qcom"
-FILES_${PN}-qcom-license   = "${nonarch_base_libdir}/firmware/LICENSE.qcom ${nonarch_base_libdir}/firmware/qcom/NOTICE.txt"
-FILES_${PN}-qcom-venus-1.8 = "${nonarch_base_libdir}/firmware/qcom/venus-1.8/*"
-FILES_${PN}-qcom-venus-4.2 = "${nonarch_base_libdir}/firmware/qcom/venus-4.2/*"
-FILES_${PN}-qcom-venus-5.2 = "${nonarch_base_libdir}/firmware/qcom/venus-5.2/*"
-FILES_${PN}-qcom-venus-5.4 = "${nonarch_base_libdir}/firmware/qcom/venus-5.4/*"
-FILES_${PN}-qcom-adreno-a3xx = "${nonarch_base_libdir}/firmware/qcom/a300_*.fw ${nonarch_base_libdir}/firmware/a300_*.fw"
-FILES_${PN}-qcom-adreno-a530 = "${nonarch_base_libdir}/firmware/qcom/a530*.*"
-FILES_${PN}-qcom-adreno-a630 = "${nonarch_base_libdir}/firmware/qcom/a630*.* ${nonarch_base_libdir}/firmware/qcom/sdm845/a630*.*"
-FILES_${PN}-qcom-sdm845-audio = "${nonarch_base_libdir}/firmware/qcom/sdm845/adsp*.*"
-FILES_${PN}-qcom-sdm845-compute = "${nonarch_base_libdir}/firmware/qcom/sdm845/cdsp*.*"
-FILES_${PN}-qcom-sdm845-modem = "${nonarch_base_libdir}/firmware/qcom/sdm845/mba.mbn ${nonarch_base_libdir}/firmware/qcom/sdm845/modem*.* ${nonarch_base_libdir}/firmware/qcom/sdm845/wlanmdsp.mbn"
-RDEPENDS_${PN}-qcom-venus-1.8 = "${PN}-qcom-license"
-RDEPENDS_${PN}-qcom-venus-4.2 = "${PN}-qcom-license"
-RDEPENDS_${PN}-qcom-venus-5.2 = "${PN}-qcom-license"
-RDEPENDS_${PN}-qcom-venus-5.4 = "${PN}-qcom-license"
-RDEPENDS_${PN}-qcom-adreno-a3xx = "${PN}-qcom-license"
-RDEPENDS_${PN}-qcom-adreno-a530 = "${PN}-qcom-license"
-RDEPENDS_${PN}-qcom-adreno-a630 = "${PN}-qcom-license"
-RDEPENDS_${PN}-qcom-sdm845-audio = "${PN}-qcom-license"
-RDEPENDS_${PN}-qcom-sdm845-compute = "${PN}-qcom-license"
-RDEPENDS_${PN}-qcom-sdm845-modem = "${PN}-qcom-license"
+LICENSE:${PN}-qcom-license = "Firmware-qcom"
+FILES:${PN}-qcom-license   = "${nonarch_base_libdir}/firmware/LICENSE.qcom ${nonarch_base_libdir}/firmware/qcom/NOTICE.txt"
+FILES:${PN}-qcom-venus-1.8 = "${nonarch_base_libdir}/firmware/qcom/venus-1.8/*"
+FILES:${PN}-qcom-venus-4.2 = "${nonarch_base_libdir}/firmware/qcom/venus-4.2/*"
+FILES:${PN}-qcom-venus-5.2 = "${nonarch_base_libdir}/firmware/qcom/venus-5.2/*"
+FILES:${PN}-qcom-venus-5.4 = "${nonarch_base_libdir}/firmware/qcom/venus-5.4/*"
+FILES:${PN}-qcom-adreno-a3xx = "${nonarch_base_libdir}/firmware/qcom/a300_*.fw ${nonarch_base_libdir}/firmware/a300_*.fw"
+FILES:${PN}-qcom-adreno-a530 = "${nonarch_base_libdir}/firmware/qcom/a530*.*"
+FILES:${PN}-qcom-adreno-a630 = "${nonarch_base_libdir}/firmware/qcom/a630*.* ${nonarch_base_libdir}/firmware/qcom/sdm845/a630*.*"
+FILES:${PN}-qcom-sdm845-audio = "${nonarch_base_libdir}/firmware/qcom/sdm845/adsp*.*"
+FILES:${PN}-qcom-sdm845-compute = "${nonarch_base_libdir}/firmware/qcom/sdm845/cdsp*.*"
+FILES:${PN}-qcom-sdm845-modem = "${nonarch_base_libdir}/firmware/qcom/sdm845/mba.mbn ${nonarch_base_libdir}/firmware/qcom/sdm845/modem*.* ${nonarch_base_libdir}/firmware/qcom/sdm845/wlanmdsp.mbn"
+RDEPENDS:${PN}-qcom-venus-1.8 = "${PN}-qcom-license"
+RDEPENDS:${PN}-qcom-venus-4.2 = "${PN}-qcom-license"
+RDEPENDS:${PN}-qcom-venus-5.2 = "${PN}-qcom-license"
+RDEPENDS:${PN}-qcom-venus-5.4 = "${PN}-qcom-license"
+RDEPENDS:${PN}-qcom-adreno-a3xx = "${PN}-qcom-license"
+RDEPENDS:${PN}-qcom-adreno-a530 = "${PN}-qcom-license"
+RDEPENDS:${PN}-qcom-adreno-a630 = "${PN}-qcom-license"
+RDEPENDS:${PN}-qcom-sdm845-audio = "${PN}-qcom-license"
+RDEPENDS:${PN}-qcom-sdm845-compute = "${PN}-qcom-license"
+RDEPENDS:${PN}-qcom-sdm845-modem = "${PN}-qcom-license"
 
-FILES_${PN}-liquidio = "${nonarch_base_libdir}/firmware/liquidio"
+FILES:${PN}-liquidio = "${nonarch_base_libdir}/firmware/liquidio"
 
 # For Amlogic VDEC
-LICENSE_${PN}-amlogic-vdec = "Firmware-amlogic_vdec"
-FILES_${PN}-amlogic-vdec-license = "${nonarch_base_libdir}/firmware/LICENSE.amlogic_vdec"
-FILES_${PN}-amlogic-vdec = "${nonarch_base_libdir}/firmware/meson/vdec/*"
-RDEPENDS_${PN}-amlogic-vdec = "${PN}-amlogic-vdec-license"
+LICENSE:${PN}-amlogic-vdec = "Firmware-amlogic_vdec"
+FILES:${PN}-amlogic-vdec-license = "${nonarch_base_libdir}/firmware/LICENSE.amlogic_vdec"
+FILES:${PN}-amlogic-vdec = "${nonarch_base_libdir}/firmware/meson/vdec/*"
+RDEPENDS:${PN}-amlogic-vdec = "${PN}-amlogic-vdec-license"
 
 # For other firmwares
 # Maybe split out to separate packages when needed.
-LICENSE_${PN} = "\
+LICENSE:${PN} = "\
     Firmware-Abilis \
     & Firmware-agere \
     & Firmware-amdgpu \
@@ -1028,23 +1028,23 @@
     & WHENCE \
 "
 
-FILES_${PN}-license += "${nonarch_base_libdir}/firmware/LICEN*"
-FILES_${PN} += "${nonarch_base_libdir}/firmware/*"
-RDEPENDS_${PN} += "${PN}-license"
-RDEPENDS_${PN} += "${PN}-whence-license"
+FILES:${PN}-license += "${nonarch_base_libdir}/firmware/LICEN*"
+FILES:${PN} += "${nonarch_base_libdir}/firmware/*"
+RDEPENDS:${PN} += "${PN}-license"
+RDEPENDS:${PN} += "${PN}-whence-license"
 
 # Make linux-firmware depend on all of the split-out packages.
 # Make linux-firmware-iwlwifi depend on all of the split-out iwlwifi packages.
 # Make linux-firmware-ibt depend on all of the split-out ibt packages.
-python populate_packages_prepend () {
+python populate_packages:prepend () {
     firmware_pkgs = oe.utils.packages_filter_out_system(d)
-    d.appendVar('RRECOMMENDS_linux-firmware', ' ' + ' '.join(firmware_pkgs))
+    d.appendVar('RRECOMMENDS:linux-firmware', ' ' + ' '.join(firmware_pkgs))
 
     iwlwifi_pkgs = filter(lambda x: x.find('-iwlwifi-') != -1, firmware_pkgs)
-    d.appendVar('RRECOMMENDS_linux-firmware-iwlwifi', ' ' + ' '.join(iwlwifi_pkgs))
+    d.appendVar('RRECOMMENDS:linux-firmware-iwlwifi', ' ' + ' '.join(iwlwifi_pkgs))
 
     ibt_pkgs = filter(lambda x: x.find('-ibt-') != -1, firmware_pkgs)
-    d.appendVar('RRECOMMENDS_linux-firmware-ibt', ' ' + ' '.join(ibt_pkgs))
+    d.appendVar('RRECOMMENDS:linux-firmware-ibt', ' ' + ' '.join(ibt_pkgs))
 }
 
 # Firmware files are generally not ran on the CPU, so they can be
diff --git a/poky/meta/recipes-kernel/linux-libc-headers/linux-libc-headers.inc b/poky/meta/recipes-kernel/linux-libc-headers/linux-libc-headers.inc
index 175b2d1..3867d09 100644
--- a/poky/meta/recipes-kernel/linux-libc-headers/linux-libc-headers.inc
+++ b/poky/meta/recipes-kernel/linux-libc-headers/linux-libc-headers.inc
@@ -75,15 +75,15 @@
 	find ${D}${includedir} -name ..install.cmd | xargs rm -f
 }
 
-do_install_append_aarch64 () {
+do_install:append:aarch64 () {
         do_install_armmultilib
 }
 
-do_install_append_arm () {
+do_install:append:arm () {
 	do_install_armmultilib
 }
 
-do_install_append_armeb () {
+do_install:append:armeb () {
 	do_install_armmultilib
 }
 
@@ -103,8 +103,8 @@
 
 BBCLASSEXTEND = "nativesdk"
 
-RDEPENDS_${PN}-dev = ""
-RRECOMMENDS_${PN}-dbg = "${PN}-dev (= ${EXTENDPKGV})"
+RDEPENDS:${PN}-dev = ""
+RRECOMMENDS:${PN}-dbg = "${PN}-dev (= ${EXTENDPKGV})"
 
 INHIBIT_DEFAULT_DEPS = "1"
 DEPENDS += "unifdef-native bison-native rsync-native"
diff --git a/poky/meta/recipes-kernel/linux-libc-headers/linux-libc-headers_5.13.bb b/poky/meta/recipes-kernel/linux-libc-headers/linux-libc-headers_5.13.bb
index 251d004..556ca07 100644
--- a/poky/meta/recipes-kernel/linux-libc-headers/linux-libc-headers_5.13.bb
+++ b/poky/meta/recipes-kernel/linux-libc-headers/linux-libc-headers_5.13.bb
@@ -1,13 +1,13 @@
 require linux-libc-headers.inc
 
-SRC_URI_append_libc-musl = "\
+SRC_URI:append:libc-musl = "\
     file://0001-libc-compat.h-fix-some-issues-arising-from-in6.h.patch \
     file://0003-remove-inclusion-of-sysinfo.h-in-kernel.h.patch \
     file://0001-libc-compat.h-musl-_does_-define-IFF_LOWER_UP-DORMAN.patch \
     file://0001-include-linux-stddef.h-in-swab.h-uapi-header.patch \
    "
 
-SRC_URI_append = "\
+SRC_URI:append = "\
     file://0001-scripts-Use-fixed-input-and-output-files-instead-of-.patch \
     file://0001-kbuild-install_headers.sh-Strip-_UAPI-from-if-define.patch \
 "
diff --git a/poky/meta/recipes-kernel/linux/kernel-devsrc.bb b/poky/meta/recipes-kernel/linux/kernel-devsrc.bb
index 21b4283..3b5fdda 100644
--- a/poky/meta/recipes-kernel/linux/kernel-devsrc.bb
+++ b/poky/meta/recipes-kernel/linux/kernel-devsrc.bb
@@ -315,17 +315,17 @@
 # Ensure we don't race against "make scripts" during cpio
 do_install[lockfiles] = "${TMPDIR}/kernel-scripts.lock"
 
-FILES_${PN} = "${KERNEL_BUILD_ROOT} ${KERNEL_SRC_PATH}"
-FILES_${PN}-dbg += "${KERNEL_BUILD_ROOT}*/build/scripts/*/.debug/*"
+FILES:${PN} = "${KERNEL_BUILD_ROOT} ${KERNEL_SRC_PATH}"
+FILES:${PN}-dbg += "${KERNEL_BUILD_ROOT}*/build/scripts/*/.debug/*"
 
-RDEPENDS_${PN} = "bc python3 flex bison ${TCLIBC}-utils"
+RDEPENDS:${PN} = "bc python3 flex bison ${TCLIBC}-utils"
 # 4.15+ needs these next two RDEPENDS
-RDEPENDS_${PN} += "openssl-dev util-linux"
+RDEPENDS:${PN} += "openssl-dev util-linux"
 # and x86 needs a bit more for 4.15+
-RDEPENDS_${PN} += "${@bb.utils.contains('ARCH', 'x86', 'elfutils', '', d)}"
+RDEPENDS:${PN} += "${@bb.utils.contains('ARCH', 'x86', 'elfutils', '', d)}"
 # 5.8+ needs gcc-plugins libmpc-dev
-RDEPENDS_${PN} += "gcc-plugins libmpc-dev"
+RDEPENDS:${PN} += "gcc-plugins libmpc-dev"
 # 5.13+ needs awk for arm64
-RDEPENDS_${PN}_append_aarch64 = " gawk"
+RDEPENDS:${PN}:append:aarch64 = " gawk"
 # 5.13+ needs grep for powerpc
-RDEPENDS_${PN}_append_powerpc = " grep"
+RDEPENDS:${PN}:append:powerpc = " grep"
diff --git a/poky/meta/recipes-kernel/linux/linux-dummy.bb b/poky/meta/recipes-kernel/linux/linux-dummy.bb
index c56f899..175e660 100644
--- a/poky/meta/recipes-kernel/linux/linux-dummy.bb
+++ b/poky/meta/recipes-kernel/linux/linux-dummy.bb
@@ -16,12 +16,12 @@
 PACKAGES_DYNAMIC += "^kernel-firmware-.*"
 
 PACKAGES += "kernel-modules kernel-vmlinux"
-FILES_kernel-modules = ""
-ALLOW_EMPTY_kernel-modules = "1"
-DESCRIPTION_kernel-modules = "Kernel modules meta package"
-FILES_kernel-vmlinux = ""
-ALLOW_EMPTY_kernel-vmlinux = "1"
-DESCRIPTION_kernel-vmlinux = "Kernel vmlinux meta package"
+FILES:kernel-modules = ""
+ALLOW_EMPTY:kernel-modules = "1"
+DESCRIPTION:kernel-modules = "Kernel modules meta package"
+FILES:kernel-vmlinux = ""
+ALLOW_EMPTY:kernel-vmlinux = "1"
+DESCRIPTION:kernel-vmlinux = "Kernel vmlinux meta package"
 
 
 INHIBIT_DEFAULT_DEPS = "1"
diff --git a/poky/meta/recipes-kernel/linux/linux-yocto-dev.bb b/poky/meta/recipes-kernel/linux/linux-yocto-dev.bb
index f407882..28a255a 100644
--- a/poky/meta/recipes-kernel/linux/linux-yocto-dev.bb
+++ b/poky/meta/recipes-kernel/linux/linux-yocto-dev.bb
@@ -41,16 +41,16 @@
 
 COMPATIBLE_MACHINE = "(qemuarm|qemux86|qemuppc|qemumips|qemumips64|qemux86-64|qemuriscv64)"
 
-KERNEL_DEVICETREE_qemuarmv5 = "versatile-pb.dtb"
+KERNEL_DEVICETREE:qemuarmv5 = "versatile-pb.dtb"
 
 # Functionality flags
 KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc features/taskstats/taskstats.scc"
-KERNEL_FEATURES_append = " ${KERNEL_EXTRA_FEATURES}"
-KERNEL_FEATURES_append_qemuall=" cfg/virtio.scc features/drm-bochs/drm-bochs.scc"
-KERNEL_FEATURES_append_qemux86=" cfg/sound.scc cfg/paravirt_kvm.scc"
-KERNEL_FEATURES_append_qemux86-64=" cfg/sound.scc cfg/paravirt_kvm.scc"
-KERNEL_FEATURES_append = " ${@bb.utils.contains("TUNE_FEATURES", "mx32", " cfg/x32.scc", "", d)}"
-KERNEL_FEATURES_append = " ${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/scsi/scsi-debug.scc", "", d)}"
-KERNEL_FEATURES_append = " ${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/gpio/mockup.scc", "", d)}"
+KERNEL_FEATURES:append = " ${KERNEL_EXTRA_FEATURES}"
+KERNEL_FEATURES:append:qemuall=" cfg/virtio.scc features/drm-bochs/drm-bochs.scc"
+KERNEL_FEATURES:append:qemux86=" cfg/sound.scc cfg/paravirt_kvm.scc"
+KERNEL_FEATURES:append:qemux86-64=" cfg/sound.scc cfg/paravirt_kvm.scc"
+KERNEL_FEATURES:append = " ${@bb.utils.contains("TUNE_FEATURES", "mx32", " cfg/x32.scc", "", d)}"
+KERNEL_FEATURES:append = " ${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/scsi/scsi-debug.scc", "", d)}"
+KERNEL_FEATURES:append = " ${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/gpio/mockup.scc", "", d)}"
 
 KERNEL_VERSION_SANITY_SKIP = "1"
diff --git a/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.10.bb b/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.10.bb
index 133b1f6..ee80836 100644
--- a/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.10.bb
+++ b/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.10.bb
@@ -11,13 +11,13 @@
         raise bb.parse.SkipRecipe("Set PREFERRED_PROVIDER_virtual/kernel to linux-yocto-rt to enable it")
 }
 
-SRCREV_machine ?= "dad5434fab65cdd316f940c5e9bd46e0d0607b5a"
-SRCREV_meta ?= "c3900f83a5679b563adff82c24fdeb02096ed736"
+SRCREV_machine ?= "969fef49cbbc8639e9622e6a0655337fbfcc7627"
+SRCREV_meta ?= "3f38ad49cf38519dc4492a3f802b743fde7b467e"
 
 SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;branch=${KBRANCH};name=machine \
            git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-5.10;destsuffix=${KMETA}"
 
-LINUX_VERSION ?= "5.10.52"
+LINUX_VERSION ?= "5.10.53"
 
 LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
 
@@ -33,13 +33,13 @@
 
 COMPATIBLE_MACHINE = "(qemux86|qemux86-64|qemuarm|qemuarmv5|qemuarm64|qemuppc|qemumips)"
 
-KERNEL_DEVICETREE_qemuarmv5 = "versatile-pb.dtb"
+KERNEL_DEVICETREE:qemuarmv5 = "versatile-pb.dtb"
 
 # Functionality flags
 KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc features/taskstats/taskstats.scc"
-KERNEL_FEATURES_append = " ${KERNEL_EXTRA_FEATURES}"
-KERNEL_FEATURES_append_qemuall=" cfg/virtio.scc features/drm-bochs/drm-bochs.scc"
-KERNEL_FEATURES_append_qemux86=" cfg/sound.scc cfg/paravirt_kvm.scc"
-KERNEL_FEATURES_append_qemux86-64=" cfg/sound.scc cfg/paravirt_kvm.scc"
-KERNEL_FEATURES_append = "${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/scsi/scsi-debug.scc", "", d)}"
-KERNEL_FEATURES_append = "${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/gpio/mockup.scc", "", d)}"
+KERNEL_FEATURES:append = " ${KERNEL_EXTRA_FEATURES}"
+KERNEL_FEATURES:append:qemuall=" cfg/virtio.scc features/drm-bochs/drm-bochs.scc"
+KERNEL_FEATURES:append:qemux86=" cfg/sound.scc cfg/paravirt_kvm.scc"
+KERNEL_FEATURES:append:qemux86-64=" cfg/sound.scc cfg/paravirt_kvm.scc"
+KERNEL_FEATURES:append = "${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/scsi/scsi-debug.scc", "", d)}"
+KERNEL_FEATURES:append = "${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/gpio/mockup.scc", "", d)}"
diff --git a/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.13.bb b/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.13.bb
index adcc84b..daf3d41 100644
--- a/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.13.bb
+++ b/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.13.bb
@@ -11,13 +11,13 @@
         raise bb.parse.SkipRecipe("Set PREFERRED_PROVIDER_virtual/kernel to linux-yocto-rt to enable it")
 }
 
-SRCREV_machine ?= "10eba41eae2548d854c5d1908db77e8235336191"
-SRCREV_meta ?= "ab5f1940535350791d2e111e0e16b08be277568d"
+SRCREV_machine ?= "f7609685b99c816483dd1eb4d3d7cfd236abcd8a"
+SRCREV_meta ?= "45ba17c2208f4b39c36fdb748df5929b8f6b6f83"
 
 SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;branch=${KBRANCH};name=machine \
            git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-5.13;destsuffix=${KMETA}"
 
-LINUX_VERSION ?= "5.13.4"
+LINUX_VERSION ?= "5.13.5"
 
 LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
 
@@ -33,13 +33,13 @@
 
 COMPATIBLE_MACHINE = "(qemux86|qemux86-64|qemuarm|qemuarmv5|qemuarm64|qemuppc|qemumips)"
 
-KERNEL_DEVICETREE_qemuarmv5 = "versatile-pb.dtb"
+KERNEL_DEVICETREE:qemuarmv5 = "versatile-pb.dtb"
 
 # Functionality flags
 KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc features/taskstats/taskstats.scc"
-KERNEL_FEATURES_append = " ${KERNEL_EXTRA_FEATURES}"
-KERNEL_FEATURES_append_qemuall=" cfg/virtio.scc features/drm-bochs/drm-bochs.scc"
-KERNEL_FEATURES_append_qemux86=" cfg/sound.scc cfg/paravirt_kvm.scc"
-KERNEL_FEATURES_append_qemux86-64=" cfg/sound.scc cfg/paravirt_kvm.scc"
-KERNEL_FEATURES_append = "${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/scsi/scsi-debug.scc", "", d)}"
-KERNEL_FEATURES_append = "${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/gpio/mockup.scc", "", d)}"
+KERNEL_FEATURES:append = " ${KERNEL_EXTRA_FEATURES}"
+KERNEL_FEATURES:append:qemuall=" cfg/virtio.scc features/drm-bochs/drm-bochs.scc"
+KERNEL_FEATURES:append:qemux86=" cfg/sound.scc cfg/paravirt_kvm.scc"
+KERNEL_FEATURES:append:qemux86-64=" cfg/sound.scc cfg/paravirt_kvm.scc"
+KERNEL_FEATURES:append = "${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/scsi/scsi-debug.scc", "", d)}"
+KERNEL_FEATURES:append = "${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/gpio/mockup.scc", "", d)}"
diff --git a/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.4.bb b/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.4.bb
index a975004..2590879 100644
--- a/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.4.bb
+++ b/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.4.bb
@@ -11,13 +11,13 @@
         raise bb.parse.SkipRecipe("Set PREFERRED_PROVIDER_virtual/kernel to linux-yocto-rt to enable it")
 }
 
-SRCREV_machine ?= "849a67646d942d3a6d706f456df39954367ac7bf"
-SRCREV_meta ?= "d6aec4fb69bae34f34db6f153871a0847d8198f3"
+SRCREV_machine ?= "f4e30367bf1e579ff497fc9e7a16010c879048dc"
+SRCREV_meta ?= "231d3a07e10680c7c89ea101cd803b0684482b11"
 
 SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;branch=${KBRANCH};name=machine \
            git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-5.4;destsuffix=${KMETA}"
 
-LINUX_VERSION ?= "5.4.134"
+LINUX_VERSION ?= "5.4.135"
 
 LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814"
 
@@ -33,13 +33,13 @@
 
 COMPATIBLE_MACHINE = "(qemux86|qemux86-64|qemuarm|qemuarmv5|qemuarm64|qemuppc|qemumips)"
 
-KERNEL_DEVICETREE_qemuarmv5 = "versatile-pb.dtb"
+KERNEL_DEVICETREE:qemuarmv5 = "versatile-pb.dtb"
 
 # Functionality flags
 KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc features/taskstats/taskstats.scc"
-KERNEL_FEATURES_append = " ${KERNEL_EXTRA_FEATURES}"
-KERNEL_FEATURES_append_qemuall=" cfg/virtio.scc features/drm-bochs/drm-bochs.scc"
-KERNEL_FEATURES_append_qemux86=" cfg/sound.scc cfg/paravirt_kvm.scc"
-KERNEL_FEATURES_append_qemux86-64=" cfg/sound.scc cfg/paravirt_kvm.scc"
-KERNEL_FEATURES_append = "${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/scsi/scsi-debug.scc", "", d)}"
-KERNEL_FEATURES_append = "${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/gpio/mockup.scc", "", d)}"
+KERNEL_FEATURES:append = " ${KERNEL_EXTRA_FEATURES}"
+KERNEL_FEATURES:append:qemuall=" cfg/virtio.scc features/drm-bochs/drm-bochs.scc"
+KERNEL_FEATURES:append:qemux86=" cfg/sound.scc cfg/paravirt_kvm.scc"
+KERNEL_FEATURES:append:qemux86-64=" cfg/sound.scc cfg/paravirt_kvm.scc"
+KERNEL_FEATURES:append = "${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/scsi/scsi-debug.scc", "", d)}"
+KERNEL_FEATURES:append = "${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/gpio/mockup.scc", "", d)}"
diff --git a/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.10.bb b/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.10.bb
index 238123a..2045944 100644
--- a/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.10.bb
+++ b/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.10.bb
@@ -1,12 +1,12 @@
 KBRANCH ?= "v5.10/standard/tiny/base"
-KBRANCH_qemuarm  ?= "v5.10/standard/tiny/arm-versatile-926ejs"
+KBRANCH:qemuarm  ?= "v5.10/standard/tiny/arm-versatile-926ejs"
 
 LINUX_KERNEL_TYPE = "tiny"
 KCONFIG_MODE = "--allnoconfig"
 
 require recipes-kernel/linux/linux-yocto.inc
 
-LINUX_VERSION ?= "5.10.52"
+LINUX_VERSION ?= "5.10.53"
 LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
 
 DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}"
@@ -15,9 +15,9 @@
 KMETA = "kernel-meta"
 KCONF_BSP_AUDIT_LEVEL = "2"
 
-SRCREV_machine_qemuarm ?= "faa3b7802d0ee1fe0217283ecaf2c54c9503fa20"
-SRCREV_machine ?= "240422889570d39c3f7d63808159c8e743117a1d"
-SRCREV_meta ?= "c3900f83a5679b563adff82c24fdeb02096ed736"
+SRCREV_machine:qemuarm ?= "d5a79da206965b27043f558739b28a434efca75c"
+SRCREV_machine ?= "f44b5bb716fdb6f804383fa087c9fdb54584cd5b"
+SRCREV_meta ?= "3f38ad49cf38519dc4492a3f802b743fde7b467e"
 
 PV = "${LINUX_VERSION}+git${SRCPV}"
 
@@ -29,4 +29,4 @@
 # Functionality flags
 KERNEL_FEATURES = ""
 
-KERNEL_DEVICETREE_qemuarmv5 = "versatile-pb.dtb"
+KERNEL_DEVICETREE:qemuarmv5 = "versatile-pb.dtb"
diff --git a/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.13.bb b/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.13.bb
index 6598684..4cc0d94 100644
--- a/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.13.bb
+++ b/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.13.bb
@@ -1,12 +1,12 @@
 KBRANCH ?= "v5.13/standard/tiny/base"
-KBRANCH_qemuarm  ?= "v5.13/standard/tiny/arm-versatile-926ejs"
+KBRANCH:qemuarm  ?= "v5.13/standard/tiny/arm-versatile-926ejs"
 
 LINUX_KERNEL_TYPE = "tiny"
 KCONFIG_MODE = "--allnoconfig"
 
 require recipes-kernel/linux/linux-yocto.inc
 
-LINUX_VERSION ?= "5.13.4"
+LINUX_VERSION ?= "5.13.5"
 LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
 
 DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}"
@@ -15,9 +15,9 @@
 KMETA = "kernel-meta"
 KCONF_BSP_AUDIT_LEVEL = "2"
 
-SRCREV_machine_qemuarm ?= "e394a72e8bc77484bf7bae8c842c75b23cc3dd63"
-SRCREV_machine ?= "7275d462cec720120d1767e277a2525d88901c80"
-SRCREV_meta ?= "ab5f1940535350791d2e111e0e16b08be277568d"
+SRCREV_machine:qemuarm ?= "52d457436c83b3ce994a12d5387c532df7859e3d"
+SRCREV_machine ?= "e167b61e5f9f6e6de8d57f72ed022ea6cdf9ba85"
+SRCREV_meta ?= "45ba17c2208f4b39c36fdb748df5929b8f6b6f83"
 
 PV = "${LINUX_VERSION}+git${SRCPV}"
 
@@ -29,4 +29,4 @@
 # Functionality flags
 KERNEL_FEATURES = ""
 
-KERNEL_DEVICETREE_qemuarmv5 = "versatile-pb.dtb"
+KERNEL_DEVICETREE:qemuarmv5 = "versatile-pb.dtb"
diff --git a/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.4.bb b/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.4.bb
index 95ead53..b87a88b 100644
--- a/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.4.bb
+++ b/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.4.bb
@@ -1,12 +1,12 @@
 KBRANCH ?= "v5.4/standard/tiny/base"
-KBRANCH_qemuarm  ?= "v5.4/standard/tiny/arm-versatile-926ejs"
+KBRANCH:qemuarm  ?= "v5.4/standard/tiny/arm-versatile-926ejs"
 
 LINUX_KERNEL_TYPE = "tiny"
 KCONFIG_MODE = "--allnoconfig"
 
 require recipes-kernel/linux/linux-yocto.inc
 
-LINUX_VERSION ?= "5.4.134"
+LINUX_VERSION ?= "5.4.135"
 LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814"
 
 DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}"
@@ -15,9 +15,9 @@
 KMETA = "kernel-meta"
 KCONF_BSP_AUDIT_LEVEL = "2"
 
-SRCREV_machine_qemuarm ?= "86c31c51c87557af60e4d4dbee73f18618bc4c92"
-SRCREV_machine ?= "bf89a54b3f77fbac15dd0194870db288aee5c8b7"
-SRCREV_meta ?= "d6aec4fb69bae34f34db6f153871a0847d8198f3"
+SRCREV_machine:qemuarm ?= "fa414639057bbad7acd21a1a70a3847f9be469c0"
+SRCREV_machine ?= "c81f0e376b1fce7a1198eec7b286966d98eae44d"
+SRCREV_meta ?= "231d3a07e10680c7c89ea101cd803b0684482b11"
 
 PV = "${LINUX_VERSION}+git${SRCPV}"
 
@@ -29,4 +29,4 @@
 # Functionality flags
 KERNEL_FEATURES = ""
 
-KERNEL_DEVICETREE_qemuarmv5 = "versatile-pb.dtb"
+KERNEL_DEVICETREE:qemuarmv5 = "versatile-pb.dtb"
diff --git a/poky/meta/recipes-kernel/linux/linux-yocto.inc b/poky/meta/recipes-kernel/linux/linux-yocto.inc
index eb3081e..331727d 100644
--- a/poky/meta/recipes-kernel/linux/linux-yocto.inc
+++ b/poky/meta/recipes-kernel/linux/linux-yocto.inc
@@ -19,22 +19,22 @@
 }
 
 DEPENDS += "xz-native bc-native"
-DEPENDS_append_aarch64 = " libgcc"
-KERNEL_CC_append_aarch64 = " ${TOOLCHAIN_OPTIONS}"
-KERNEL_LD_append_aarch64 = " ${TOOLCHAIN_OPTIONS}"
+DEPENDS:append:aarch64 = " libgcc"
+KERNEL_CC:append:aarch64 = " ${TOOLCHAIN_OPTIONS}"
+KERNEL_LD:append:aarch64 = " ${TOOLCHAIN_OPTIONS}"
 
-DEPENDS_append_nios2 = " libgcc"
-KERNEL_CC_append_nios2 = " ${TOOLCHAIN_OPTIONS}"
-KERNEL_LD_append_nios2 = " ${TOOLCHAIN_OPTIONS}"
+DEPENDS:append:nios2 = " libgcc"
+KERNEL_CC:append:nios2 = " ${TOOLCHAIN_OPTIONS}"
+KERNEL_LD:append:nios2 = " ${TOOLCHAIN_OPTIONS}"
 
-DEPENDS_append_arc = " libgcc"
-KERNEL_CC_append_arc = " ${TOOLCHAIN_OPTIONS}"
-KERNEL_LD_append_arc = " ${TOOLCHAIN_OPTIONS}"
+DEPENDS:append:arc = " libgcc"
+KERNEL_CC:append:arc = " ${TOOLCHAIN_OPTIONS}"
+KERNEL_LD:append:arc = " ${TOOLCHAIN_OPTIONS}"
 
-KERNEL_FEATURES_append_qemuall=" features/debug/printk.scc"
+KERNEL_FEATURES:append:qemuall=" features/debug/printk.scc"
 
-KERNEL_FEATURES_append = " ${@bb.utils.contains('MACHINE_FEATURES', 'numa', 'features/numa/numa.scc', '', d)}"
-KERNEL_FEATURES_append = " ${@bb.utils.contains('MACHINE_FEATURES', 'vfat', 'cfg/fs/vfat.scc', '', d)}"
+KERNEL_FEATURES:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'numa', 'features/numa/numa.scc', '', d)}"
+KERNEL_FEATURES:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'vfat', 'cfg/fs/vfat.scc', '', d)}"
 
 # A KMACHINE is the mapping of a yocto $MACHINE to what is built
 # by the kernel. This is typically the branch that should be built,
@@ -49,11 +49,11 @@
 
 B = "${WORKDIR}/linux-${PACKAGE_ARCH}-${LINUX_KERNEL_TYPE}-build"
 
-do_install_append(){
+do_install:append(){
 	if [ -n "${KMETA}" ]; then
 		rm -rf ${STAGING_KERNEL_DIR}/${KMETA}
 	fi
 }
 
 # enable kernel-sample for oeqa/runtime/cases's ksample.py test
-KERNEL_FEATURES_append_qemuall=" features/kernel-sample/kernel-sample.scc"
+KERNEL_FEATURES:append:qemuall=" features/kernel-sample/kernel-sample.scc"
diff --git a/poky/meta/recipes-kernel/linux/linux-yocto_5.10.bb b/poky/meta/recipes-kernel/linux/linux-yocto_5.10.bb
index 40a2a5e..1f95dcd 100644
--- a/poky/meta/recipes-kernel/linux/linux-yocto_5.10.bb
+++ b/poky/meta/recipes-kernel/linux/linux-yocto_5.10.bb
@@ -3,36 +3,36 @@
 require recipes-kernel/linux/linux-yocto.inc
 
 # board specific branches
-KBRANCH_qemuarm  ?= "v5.10/standard/arm-versatile-926ejs"
-KBRANCH_qemuarm64 ?= "v5.10/standard/qemuarm64"
-KBRANCH_qemumips ?= "v5.10/standard/mti-malta32"
-KBRANCH_qemuppc  ?= "v5.10/standard/qemuppc"
-KBRANCH_qemuriscv64  ?= "v5.10/standard/base"
-KBRANCH_qemuriscv32  ?= "v5.10/standard/base"
-KBRANCH_qemux86  ?= "v5.10/standard/base"
-KBRANCH_qemux86-64 ?= "v5.10/standard/base"
-KBRANCH_qemumips64 ?= "v5.10/standard/mti-malta64"
+KBRANCH:qemuarm  ?= "v5.10/standard/arm-versatile-926ejs"
+KBRANCH:qemuarm64 ?= "v5.10/standard/qemuarm64"
+KBRANCH:qemumips ?= "v5.10/standard/mti-malta32"
+KBRANCH:qemuppc  ?= "v5.10/standard/qemuppc"
+KBRANCH:qemuriscv64  ?= "v5.10/standard/base"
+KBRANCH:qemuriscv32  ?= "v5.10/standard/base"
+KBRANCH:qemux86  ?= "v5.10/standard/base"
+KBRANCH:qemux86-64 ?= "v5.10/standard/base"
+KBRANCH:qemumips64 ?= "v5.10/standard/mti-malta64"
 
-SRCREV_machine_qemuarm ?= "96a6083817785461bcabad63f3872d0a08b21c29"
-SRCREV_machine_qemuarm64 ?= "c8d8b20a749f476020d0844d76f63cd9e4cca644"
-SRCREV_machine_qemumips ?= "acdebd5080a846f3906ba1d5343d5af5c4b76522"
-SRCREV_machine_qemuppc ?= "afd31d567447f4693b7c9af35f09bb37cc0c0fa4"
-SRCREV_machine_qemuriscv64 ?= "c2dc854ee7392d43728093bfc206a2ade98c76dd"
-SRCREV_machine_qemuriscv32 ?= "c2dc854ee7392d43728093bfc206a2ade98c76dd"
-SRCREV_machine_qemux86 ?= "c2dc854ee7392d43728093bfc206a2ade98c76dd"
-SRCREV_machine_qemux86-64 ?= "c2dc854ee7392d43728093bfc206a2ade98c76dd"
-SRCREV_machine_qemumips64 ?= "efad0ca4150cddffa6d052ffb53fec0553de4da8"
-SRCREV_machine ?= "c2dc854ee7392d43728093bfc206a2ade98c76dd"
-SRCREV_meta ?= "c3900f83a5679b563adff82c24fdeb02096ed736"
+SRCREV_machine:qemuarm ?= "c74da440f36f7073b1e99f42cb363031bb0c38ca"
+SRCREV_machine:qemuarm64 ?= "e4e52d0a19fba26538218d78c70e54319ae00ca3"
+SRCREV_machine:qemumips ?= "60118f08d49cd825d17f11b078d5848eb5bb7e6d"
+SRCREV_machine:qemuppc ?= "eb3d2abf3d5aab1814d53767193770c282552774"
+SRCREV_machine:qemuriscv64 ?= "0b44b705c4f7d5c83e562dd7036cb5188d622285"
+SRCREV_machine:qemuriscv32 ?= "0b44b705c4f7d5c83e562dd7036cb5188d622285"
+SRCREV_machine:qemux86 ?= "0b44b705c4f7d5c83e562dd7036cb5188d622285"
+SRCREV_machine:qemux86-64 ?= "0b44b705c4f7d5c83e562dd7036cb5188d622285"
+SRCREV_machine:qemumips64 ?= "643c332e487cfa1557d14050d6e1148d1c5d75da"
+SRCREV_machine ?= "0b44b705c4f7d5c83e562dd7036cb5188d622285"
+SRCREV_meta ?= "3f38ad49cf38519dc4492a3f802b743fde7b467e"
 
 # remap qemuarm to qemuarma15 for the 5.8 kernel
-# KMACHINE_qemuarm ?= "qemuarma15"
+# KMACHINE:qemuarm ?= "qemuarma15"
 
 SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;name=machine;branch=${KBRANCH}; \
            git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-5.10;destsuffix=${KMETA}"
 
 LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
-LINUX_VERSION ?= "5.10.52"
+LINUX_VERSION ?= "5.10.53"
 
 DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}"
 DEPENDS += "openssl-native util-linux-native"
@@ -43,16 +43,16 @@
 KMETA = "kernel-meta"
 KCONF_BSP_AUDIT_LEVEL = "1"
 
-KERNEL_DEVICETREE_qemuarmv5 = "versatile-pb.dtb"
+KERNEL_DEVICETREE:qemuarmv5 = "versatile-pb.dtb"
 
 COMPATIBLE_MACHINE = "qemuarm|qemuarmv5|qemuarm64|qemux86|qemuppc|qemuppc64|qemumips|qemumips64|qemux86-64|qemuriscv64|qemuriscv32"
 
 # Functionality flags
 KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc"
-KERNEL_FEATURES_append = " ${KERNEL_EXTRA_FEATURES}"
-KERNEL_FEATURES_append_qemuall=" cfg/virtio.scc features/drm-bochs/drm-bochs.scc"
-KERNEL_FEATURES_append_qemux86=" cfg/sound.scc cfg/paravirt_kvm.scc"
-KERNEL_FEATURES_append_qemux86-64=" cfg/sound.scc cfg/paravirt_kvm.scc"
-KERNEL_FEATURES_append = " ${@bb.utils.contains("TUNE_FEATURES", "mx32", " cfg/x32.scc", "", d)}"
-KERNEL_FEATURES_append = " ${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/scsi/scsi-debug.scc", "", d)}"
-KERNEL_FEATURES_append = " ${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/gpio/mockup.scc", "", d)}"
+KERNEL_FEATURES:append = " ${KERNEL_EXTRA_FEATURES}"
+KERNEL_FEATURES:append:qemuall=" cfg/virtio.scc features/drm-bochs/drm-bochs.scc"
+KERNEL_FEATURES:append:qemux86=" cfg/sound.scc cfg/paravirt_kvm.scc"
+KERNEL_FEATURES:append:qemux86-64=" cfg/sound.scc cfg/paravirt_kvm.scc"
+KERNEL_FEATURES:append = " ${@bb.utils.contains("TUNE_FEATURES", "mx32", " cfg/x32.scc", "", d)}"
+KERNEL_FEATURES:append = " ${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/scsi/scsi-debug.scc", "", d)}"
+KERNEL_FEATURES:append = " ${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/gpio/mockup.scc", "", d)}"
diff --git a/poky/meta/recipes-kernel/linux/linux-yocto_5.13.bb b/poky/meta/recipes-kernel/linux/linux-yocto_5.13.bb
index 497c330..9a215bf 100644
--- a/poky/meta/recipes-kernel/linux/linux-yocto_5.13.bb
+++ b/poky/meta/recipes-kernel/linux/linux-yocto_5.13.bb
@@ -3,46 +3,46 @@
 require recipes-kernel/linux/linux-yocto.inc
 
 # board specific branches
-KBRANCH_qemuarm  ?= "v5.13/standard/arm-versatile-926ejs"
-KBRANCH_qemuarm64 ?= "v5.13/standard/qemuarm64"
-KBRANCH_qemumips ?= "v5.13/standard/mti-malta32"
-KBRANCH_qemuppc  ?= "v5.13/standard/qemuppc"
-KBRANCH_qemuriscv64  ?= "v5.13/standard/base"
-KBRANCH_qemuriscv32  ?= "v5.13/standard/base"
-KBRANCH_qemux86  ?= "v5.13/standard/base"
-KBRANCH_qemux86-64 ?= "v5.13/standard/base"
-KBRANCH_qemumips64 ?= "v5.13/standard/mti-malta64"
+KBRANCH:qemuarm  ?= "v5.13/standard/arm-versatile-926ejs"
+KBRANCH:qemuarm64 ?= "v5.13/standard/qemuarm64"
+KBRANCH:qemumips ?= "v5.13/standard/mti-malta32"
+KBRANCH:qemuppc  ?= "v5.13/standard/qemuppc"
+KBRANCH:qemuriscv64  ?= "v5.13/standard/base"
+KBRANCH:qemuriscv32  ?= "v5.13/standard/base"
+KBRANCH:qemux86  ?= "v5.13/standard/base"
+KBRANCH:qemux86-64 ?= "v5.13/standard/base"
+KBRANCH:qemumips64 ?= "v5.13/standard/mti-malta64"
 
-SRCREV_machine_qemuarm ?= "dc19ba17f4d43a220ae8129312703add02d03d1e"
-SRCREV_machine_qemuarm64 ?= "1e086c08b65e8bd1f45f01fd8026599a62deb6c0"
-SRCREV_machine_qemumips ?= "4dd19bc8178a6100a2cb9ffd8364e359230253c8"
-SRCREV_machine_qemuppc ?= "73c8e406db9beb3a99a5dd3ea67824f0e3c0d7a8"
-SRCREV_machine_qemuriscv64 ?= "5e41c505c6057535da2c289d2cc2fec1f64a5068"
-SRCREV_machine_qemuriscv32 ?= "5e41c505c6057535da2c289d2cc2fec1f64a5068"
-SRCREV_machine_qemux86 ?= "5e41c505c6057535da2c289d2cc2fec1f64a5068"
-SRCREV_machine_qemux86-64 ?= "5e41c505c6057535da2c289d2cc2fec1f64a5068"
-SRCREV_machine_qemumips64 ?= "0632623fd488acc7c78a4f48d4630caba5e6044e"
-SRCREV_machine ?= "5e41c505c6057535da2c289d2cc2fec1f64a5068"
-SRCREV_meta ?= "ab5f1940535350791d2e111e0e16b08be277568d"
+SRCREV_machine:qemuarm ?= "d7f11adcd88182a9201a9901f3ccd07e2143bf5b"
+SRCREV_machine:qemuarm64 ?= "8ba49ea4d2954c788b44acf8efd2713d8d69f1e3"
+SRCREV_machine:qemumips ?= "9d92ef75cabdf752e3186aa734ba57866cc512d9"
+SRCREV_machine:qemuppc ?= "6fac7caad94efa0be0e46d04af4e7b5f1300aa92"
+SRCREV_machine:qemuriscv64 ?= "aa7f96bda2be286bc15b1131be30411bb6016ea1"
+SRCREV_machine:qemuriscv32 ?= "aa7f96bda2be286bc15b1131be30411bb6016ea1"
+SRCREV_machine:qemux86 ?= "aa7f96bda2be286bc15b1131be30411bb6016ea1"
+SRCREV_machine:qemux86-64 ?= "aa7f96bda2be286bc15b1131be30411bb6016ea1"
+SRCREV_machine:qemumips64 ?= "c6c25c0c1a64480f255a9c2e86895db0aea8b92b"
+SRCREV_machine ?= "aa7f96bda2be286bc15b1131be30411bb6016ea1"
+SRCREV_meta ?= "45ba17c2208f4b39c36fdb748df5929b8f6b6f83"
 
 # set your preferred provider of linux-yocto to 'linux-yocto-upstream', and you'll
 # get the <version>/base branch, which is pure upstream -stable, and the same
 # meta SRCREV as the linux-yocto-standard builds. Select your version using the
 # normal PREFERRED_VERSION settings.
 BBCLASSEXTEND = "devupstream:target"
-DEFAULT_PREFERENCE_class-devupstream = "-1"
-SRCREV_machine_class-devupstream ?= "64376a981a0e2e57c46efa63197c2ebb7dab35df"
-PN_class-devupstream = "linux-yocto-upstream"
-KBRANCH_class-devupstream = "v5.13/base"
+DEFAULT_PREFERENCE:class-devupstream = "-1"
+SRCREV_machine:class-devupstream ?= "25423f4bd9a9ac3e6b0ce7ecfe56c36f4e514893"
+PN:class-devupstream = "linux-yocto-upstream"
+KBRANCH:class-devupstream = "v5.13/base"
 
 # remap qemuarm to qemuarma15 for the 5.8 kernel
-# KMACHINE_qemuarm ?= "qemuarma15"
+# KMACHINE:qemuarm ?= "qemuarma15"
 
 SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;name=machine;branch=${KBRANCH}; \
            git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-5.13;destsuffix=${KMETA}"
 
 LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
-LINUX_VERSION ?= "5.13.4"
+LINUX_VERSION ?= "5.13.5"
 
 DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}"
 DEPENDS += "openssl-native util-linux-native"
@@ -53,16 +53,16 @@
 KMETA = "kernel-meta"
 KCONF_BSP_AUDIT_LEVEL = "1"
 
-KERNEL_DEVICETREE_qemuarmv5 = "versatile-pb.dtb"
+KERNEL_DEVICETREE:qemuarmv5 = "versatile-pb.dtb"
 
 COMPATIBLE_MACHINE = "qemuarm|qemuarmv5|qemuarm64|qemux86|qemuppc|qemuppc64|qemumips|qemumips64|qemux86-64|qemuriscv64|qemuriscv32"
 
 # Functionality flags
 KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc"
-KERNEL_FEATURES_append = " ${KERNEL_EXTRA_FEATURES}"
-KERNEL_FEATURES_append_qemuall=" cfg/virtio.scc features/drm-bochs/drm-bochs.scc"
-KERNEL_FEATURES_append_qemux86=" cfg/sound.scc cfg/paravirt_kvm.scc"
-KERNEL_FEATURES_append_qemux86-64=" cfg/sound.scc cfg/paravirt_kvm.scc"
-KERNEL_FEATURES_append = " ${@bb.utils.contains("TUNE_FEATURES", "mx32", " cfg/x32.scc", "", d)}"
-KERNEL_FEATURES_append = " ${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/scsi/scsi-debug.scc", "", d)}"
-KERNEL_FEATURES_append = " ${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/gpio/mockup.scc", "", d)}"
+KERNEL_FEATURES:append = " ${KERNEL_EXTRA_FEATURES}"
+KERNEL_FEATURES:append:qemuall=" cfg/virtio.scc features/drm-bochs/drm-bochs.scc"
+KERNEL_FEATURES:append:qemux86=" cfg/sound.scc cfg/paravirt_kvm.scc"
+KERNEL_FEATURES:append:qemux86-64=" cfg/sound.scc cfg/paravirt_kvm.scc"
+KERNEL_FEATURES:append = " ${@bb.utils.contains("TUNE_FEATURES", "mx32", " cfg/x32.scc", "", d)}"
+KERNEL_FEATURES:append = " ${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/scsi/scsi-debug.scc", "", d)}"
+KERNEL_FEATURES:append = " ${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/gpio/mockup.scc", "", d)}"
diff --git a/poky/meta/recipes-kernel/linux/linux-yocto_5.4.bb b/poky/meta/recipes-kernel/linux/linux-yocto_5.4.bb
index 90a557b..7f22d34 100644
--- a/poky/meta/recipes-kernel/linux/linux-yocto_5.4.bb
+++ b/poky/meta/recipes-kernel/linux/linux-yocto_5.4.bb
@@ -3,34 +3,34 @@
 require recipes-kernel/linux/linux-yocto.inc
 
 # board specific branches
-KBRANCH_qemuarm  ?= "v5.4/standard/arm-versatile-926ejs"
-KBRANCH_qemuarm64 ?= "v5.4/standard/qemuarm64"
-KBRANCH_qemumips ?= "v5.4/standard/mti-malta32"
-KBRANCH_qemuppc  ?= "v5.4/standard/qemuppc"
-KBRANCH_qemuriscv64  ?= "v5.4/standard/base"
-KBRANCH_qemux86  ?= "v5.4/standard/base"
-KBRANCH_qemux86-64 ?= "v5.4/standard/base"
-KBRANCH_qemumips64 ?= "v5.4/standard/mti-malta64"
+KBRANCH:qemuarm  ?= "v5.4/standard/arm-versatile-926ejs"
+KBRANCH:qemuarm64 ?= "v5.4/standard/qemuarm64"
+KBRANCH:qemumips ?= "v5.4/standard/mti-malta32"
+KBRANCH:qemuppc  ?= "v5.4/standard/qemuppc"
+KBRANCH:qemuriscv64  ?= "v5.4/standard/base"
+KBRANCH:qemux86  ?= "v5.4/standard/base"
+KBRANCH:qemux86-64 ?= "v5.4/standard/base"
+KBRANCH:qemumips64 ?= "v5.4/standard/mti-malta64"
 
-SRCREV_machine_qemuarm ?= "bea52ab7529ef152f99a0f6ebd97cc7e904e5360"
-SRCREV_machine_qemuarm64 ?= "8a29c9de0fc366bd89ce6954685dce0e330dbabe"
-SRCREV_machine_qemumips ?= "b15816ccad0762d27c78c269e7a1986504e60c63"
-SRCREV_machine_qemuppc ?= "906f9509a8d2f842ec8766bf81287f8939ff1fa8"
-SRCREV_machine_qemuriscv64 ?= "dd8a64a523fb714a98328441e0de72cde115a6fc"
-SRCREV_machine_qemux86 ?= "dd8a64a523fb714a98328441e0de72cde115a6fc"
-SRCREV_machine_qemux86-64 ?= "dd8a64a523fb714a98328441e0de72cde115a6fc"
-SRCREV_machine_qemumips64 ?= "152e33a0782920e9707c36ccacf53585a8911e9f"
-SRCREV_machine ?= "dd8a64a523fb714a98328441e0de72cde115a6fc"
-SRCREV_meta ?= "d6aec4fb69bae34f34db6f153871a0847d8198f3"
+SRCREV_machine:qemuarm ?= "f367cbe6d0c21c65257c66a4c9b1845fd43285f8"
+SRCREV_machine:qemuarm64 ?= "8dcb7ee83e58da8bf51ed8b72165e1ed35beb928"
+SRCREV_machine:qemumips ?= "3d4c6263bfdf95960894b75c76aa450d240e3e8e"
+SRCREV_machine:qemuppc ?= "125a824c8d14c49b640bc0d6e040d495177caa10"
+SRCREV_machine:qemuriscv64 ?= "997c04e7a40084a53bc3d45490949584364697bd"
+SRCREV_machine:qemux86 ?= "997c04e7a40084a53bc3d45490949584364697bd"
+SRCREV_machine:qemux86-64 ?= "997c04e7a40084a53bc3d45490949584364697bd"
+SRCREV_machine:qemumips64 ?= "7082f58984404a5aad90bca1dac4e27773fff26e"
+SRCREV_machine ?= "997c04e7a40084a53bc3d45490949584364697bd"
+SRCREV_meta ?= "231d3a07e10680c7c89ea101cd803b0684482b11"
 
 # remap qemuarm to qemuarma15 for the 5.4 kernel
-# KMACHINE_qemuarm ?= "qemuarma15"
+# KMACHINE:qemuarm ?= "qemuarma15"
 
 SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;name=machine;branch=${KBRANCH}; \
            git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-5.4;destsuffix=${KMETA}"
 
 LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814"
-LINUX_VERSION ?= "5.4.134"
+LINUX_VERSION ?= "5.4.135"
 
 DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}"
 DEPENDS += "openssl-native util-linux-native"
@@ -40,16 +40,16 @@
 KMETA = "kernel-meta"
 KCONF_BSP_AUDIT_LEVEL = "1"
 
-KERNEL_DEVICETREE_qemuarmv5 = "versatile-pb.dtb"
+KERNEL_DEVICETREE:qemuarmv5 = "versatile-pb.dtb"
 
 COMPATIBLE_MACHINE = "qemuarm|qemuarmv5|qemuarm64|qemux86|qemuppc|qemumips|qemumips64|qemux86-64|qemuriscv64"
 
 # Functionality flags
 KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc"
-KERNEL_FEATURES_append = " ${KERNEL_EXTRA_FEATURES}"
-KERNEL_FEATURES_append_qemuall=" cfg/virtio.scc features/drm-bochs/drm-bochs.scc"
-KERNEL_FEATURES_append_qemux86=" cfg/sound.scc cfg/paravirt_kvm.scc"
-KERNEL_FEATURES_append_qemux86-64=" cfg/sound.scc cfg/paravirt_kvm.scc"
-KERNEL_FEATURES_append = " ${@bb.utils.contains("TUNE_FEATURES", "mx32", " cfg/x32.scc", "", d)}"
-KERNEL_FEATURES_append = " ${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/scsi/scsi-debug.scc", "", d)}"
-KERNEL_FEATURES_append = " ${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/gpio/mockup.scc", "", d)}"
+KERNEL_FEATURES:append = " ${KERNEL_EXTRA_FEATURES}"
+KERNEL_FEATURES:append:qemuall=" cfg/virtio.scc features/drm-bochs/drm-bochs.scc"
+KERNEL_FEATURES:append:qemux86=" cfg/sound.scc cfg/paravirt_kvm.scc"
+KERNEL_FEATURES:append:qemux86-64=" cfg/sound.scc cfg/paravirt_kvm.scc"
+KERNEL_FEATURES:append = " ${@bb.utils.contains("TUNE_FEATURES", "mx32", " cfg/x32.scc", "", d)}"
+KERNEL_FEATURES:append = " ${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/scsi/scsi-debug.scc", "", d)}"
+KERNEL_FEATURES:append = " ${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/gpio/mockup.scc", "", d)}"
diff --git a/poky/meta/recipes-kernel/lttng/babeltrace2_2.0.4.bb b/poky/meta/recipes-kernel/lttng/babeltrace2_2.0.4.bb
index 7fb524e..2aafe81 100644
--- a/poky/meta/recipes-kernel/lttng/babeltrace2_2.0.4.bb
+++ b/poky/meta/recipes-kernel/lttng/babeltrace2_2.0.4.bb
@@ -24,12 +24,12 @@
 PACKAGECONFIG ??= "manpages"
 PACKAGECONFIG[manpages] = ", --disable-man-pages, asciidoc-native xmlto-native"
 
-FILES_${PN}-staticdev += "${libdir}/babeltrace2/plugins/*.a"
-FILES_${PN} += "${libdir}/babeltrace2/plugins/*.so"
+FILES:${PN}-staticdev += "${libdir}/babeltrace2/plugins/*.a"
+FILES:${PN} += "${libdir}/babeltrace2/plugins/*.so"
 
 ASNEEDED = ""
 
-RDEPENDS_${PN}-ptest += "bash gawk python3"
+RDEPENDS:${PN}-ptest += "bash gawk python3"
 
 do_compile_ptest () {
     make -C tests all
diff --git a/poky/meta/recipes-kernel/lttng/babeltrace_1.5.8.bb b/poky/meta/recipes-kernel/lttng/babeltrace_1.5.8.bb
index 9e5d3a7..9f8b035 100644
--- a/poky/meta/recipes-kernel/lttng/babeltrace_1.5.8.bb
+++ b/poky/meta/recipes-kernel/lttng/babeltrace_1.5.8.bb
@@ -21,7 +21,7 @@
 
 ASNEEDED = ""
 
-RDEPENDS_${PN}-ptest += "bash gawk"
+RDEPENDS:${PN}-ptest += "bash gawk"
 
 addtask do_patch_ptest_path after do_patch before do_configure
 do_patch_ptest_path () {
diff --git a/poky/meta/recipes-kernel/lttng/lttng-modules_2.12.6.bb b/poky/meta/recipes-kernel/lttng/lttng-modules_2.12.6.bb
index 94e849d..c46faae 100644
--- a/poky/meta/recipes-kernel/lttng/lttng-modules_2.12.6.bb
+++ b/poky/meta/recipes-kernel/lttng/lttng-modules_2.12.6.bb
@@ -19,24 +19,24 @@
 
 EXTRA_OEMAKE += "KERNELDIR='${STAGING_KERNEL_DIR}'"
 
-do_install_append() {
+do_install:append() {
 	# Delete empty directories to avoid QA failures if no modules were built
 	find ${D}/${nonarch_base_libdir} -depth -type d -empty -exec rmdir {} \;
 }
 
-python do_package_prepend() {
+python do_package:prepend() {
     if not os.path.exists(os.path.join(d.getVar('D'), d.getVar('nonarch_base_libdir')[1:], 'modules')):
         bb.warn("%s: no modules were created; this may be due to CONFIG_TRACEPOINTS not being enabled in your kernel." % d.getVar('PN'))
 }
 
 BBCLASSEXTEND = "devupstream:target"
-LIC_FILES_CHKSUM_class-devupstream = "file://LICENSE;md5=0464cff101a009c403cd2ed65d01d4c4"
-DEFAULT_PREFERENCE_class-devupstream = "-1"
-SRC_URI_class-devupstream = "git://git.lttng.org/lttng-modules;branch=stable-2.13 \
+LIC_FILES_CHKSUM:class-devupstream = "file://LICENSE;md5=0464cff101a009c403cd2ed65d01d4c4"
+DEFAULT_PREFERENCE:class-devupstream = "-1"
+SRC_URI:class-devupstream = "git://git.lttng.org/lttng-modules;branch=stable-2.13 \
            file://0001-src-Kbuild-change-missing-CONFIG_TRACEPOINTS-to-warn.patch \
            "
 
-SRCREV_class-devupstream = "f982b51a98a29cb4aaf607cb9bbf2b509d8e6933"
-PV_class-devupstream = "2.13.0-rc2+git${SRCPV}"
-S_class-devupstream = "${WORKDIR}/git"
+SRCREV:class-devupstream = "f982b51a98a29cb4aaf607cb9bbf2b509d8e6933"
+PV:class-devupstream = "2.13.0-rc2+git${SRCPV}"
+S:class-devupstream = "${WORKDIR}/git"
 SRCREV_FORMAT ?= "lttng_git"
diff --git a/poky/meta/recipes-kernel/lttng/lttng-platforms.inc b/poky/meta/recipes-kernel/lttng/lttng-platforms.inc
index aa8220b..933c65d 100644
--- a/poky/meta/recipes-kernel/lttng/lttng-platforms.inc
+++ b/poky/meta/recipes-kernel/lttng/lttng-platforms.inc
@@ -2,16 +2,16 @@
 # Whether the platform supports kernel tracing
 #
 LTTNGMODULES = "lttng-modules"
-LTTNGMODULES_arc = ""
-LTTNGMODULES_riscv64 = ""
+LTTNGMODULES:arc = ""
+LTTNGMODULES:riscv64 = ""
 
-COMPATIBLE_HOST_riscv64_pn-lttng-modules = "null"
-COMPATIBLE_HOST_arc_pn-lttng-modules = "null"
+COMPATIBLE_HOST:riscv64:pn-lttng-modules = "null"
+COMPATIBLE_HOST:arc:pn-lttng-modules = "null"
 
 # Whether the platform supports userspace tracing
 # lttng-ust uses sched_getcpu() which is not there on for some platforms.
 LTTNGUST = "lttng-ust"
-LTTNGUST_arc = ""
+LTTNGUST:arc = ""
 
-COMPATIBLE_HOST_arc_pn-lttng-ust = "null"
+COMPATIBLE_HOST:arc:pn-lttng-ust = "null"
 
diff --git a/poky/meta/recipes-kernel/lttng/lttng-tools_2.12.4.bb b/poky/meta/recipes-kernel/lttng/lttng-tools_2.12.4.bb
index 133d756..dc2e1f3 100644
--- a/poky/meta/recipes-kernel/lttng/lttng-tools_2.12.4.bb
+++ b/poky/meta/recipes-kernel/lttng/lttng-tools_2.12.4.bb
@@ -13,13 +13,13 @@
 include lttng-platforms.inc
 
 DEPENDS = "liburcu popt libxml2 util-linux"
-RDEPENDS_${PN} = "libgcc"
-RRECOMMENDS_${PN} += "${LTTNGMODULES}"
-RDEPENDS_${PN}-ptest += "make perl bash gawk babeltrace procps perl-module-overloading coreutils util-linux kmod ${LTTNGMODULES} sed python3-core grep"
-RDEPENDS_${PN}-ptest_append_libc-glibc = " glibc-utils"
-RDEPENDS_${PN}-ptest_append_libc-musl = " musl-utils"
+RDEPENDS:${PN} = "libgcc"
+RRECOMMENDS:${PN} += "${LTTNGMODULES}"
+RDEPENDS:${PN}-ptest += "make perl bash gawk babeltrace procps perl-module-overloading coreutils util-linux kmod ${LTTNGMODULES} sed python3-core grep"
+RDEPENDS:${PN}-ptest:append:libc-glibc = " glibc-utils"
+RDEPENDS:${PN}-ptest:append:libc-musl = " musl-utils"
 # babelstats.pl wants getopt-long
-RDEPENDS_${PN}-ptest += "perl-module-getopt-long"
+RDEPENDS:${PN}-ptest += "perl-module-getopt-long"
 
 PYTHON_OPTION = "am_cv_python_pyexecdir='${PYTHON_SITEPACKAGES_DIR}' \
                  am_cv_python_pythondir='${PYTHON_SITEPACKAGES_DIR}' \
@@ -43,26 +43,26 @@
 
 inherit autotools ptest pkgconfig useradd python3-dir manpages systemd
 
-SYSTEMD_SERVICE_${PN} = "lttng-sessiond.service"
+SYSTEMD_SERVICE:${PN} = "lttng-sessiond.service"
 SYSTEMD_AUTO_ENABLE = "disable"
 
 USERADD_PACKAGES = "${PN}"
-GROUPADD_PARAM_${PN} = "tracing"
+GROUPADD_PARAM:${PN} = "tracing"
 
-FILES_${PN} += "${libdir}/lttng/libexec/* ${datadir}/xml/lttng \
+FILES:${PN} += "${libdir}/lttng/libexec/* ${datadir}/xml/lttng \
                 ${PYTHON_SITEPACKAGES_DIR}/*"
-FILES_${PN}-staticdev += "${PYTHON_SITEPACKAGES_DIR}/*.a"
-FILES_${PN}-dev += "${PYTHON_SITEPACKAGES_DIR}/*.la"
+FILES:${PN}-staticdev += "${PYTHON_SITEPACKAGES_DIR}/*.a"
+FILES:${PN}-dev += "${PYTHON_SITEPACKAGES_DIR}/*.la"
 
 # Since files are installed into ${libdir}/lttng/libexec we match 
 # the libexec insane test so skip it.
 # Python module needs to keep _lttng.so
-INSANE_SKIP_${PN} = "libexec dev-so"
-INSANE_SKIP_${PN}-dbg = "libexec"
+INSANE_SKIP:${PN} = "libexec dev-so"
+INSANE_SKIP:${PN}-dbg = "libexec"
 
-PRIVATE_LIBS_${PN}-ptest = "libfoo.so"
+PRIVATE_LIBS:${PN}-ptest = "libfoo.so"
 
-do_install_append () {
+do_install:append () {
     # install systemd unit file
     install -d ${D}${systemd_unitdir}/system
     install -m 0644 ${WORKDIR}/lttng-sessiond.service ${D}${systemd_unitdir}/system
diff --git a/poky/meta/recipes-kernel/lttng/lttng-ust_2.12.2.bb b/poky/meta/recipes-kernel/lttng/lttng-ust_2.12.2.bb
index e340ff3..54a473d 100644
--- a/poky/meta/recipes-kernel/lttng/lttng-ust_2.12.2.bb
+++ b/poky/meta/recipes-kernel/lttng/lttng-ust_2.12.2.bb
@@ -20,12 +20,12 @@
 EXTRA_OECONF = "--disable-numa"
 
 DEPENDS = "liburcu util-linux"
-RDEPENDS_${PN}-bin = "python3-core"
+RDEPENDS:${PN}-bin = "python3-core"
 
 # For backwards compatibility after rename
-RPROVIDES_${PN} = "lttng2-ust"
-RREPLACES_${PN} = "lttng2-ust"
-RCONFLICTS_${PN} = "lttng2-ust"
+RPROVIDES:${PN} = "lttng2-ust"
+RREPLACES:${PN} = "lttng2-ust"
+RCONFLICTS:${PN} = "lttng2-ust"
 
 PE = "2"
 
@@ -41,11 +41,11 @@
 PACKAGECONFIG[manpages] = "--enable-man-pages, --disable-man-pages, asciidoc-native xmlto-native libxslt-native"
 PACKAGECONFIG[python3-agent] = "--enable-python-agent ${PYTHON_OPTION}, --disable-python-agent, python3, python3"
 
-FILES_${PN} += " ${PYTHON_SITEPACKAGES_DIR}/*"
-FILES_${PN}-staticdev += " ${PYTHON_SITEPACKAGES_DIR}/*.a"
-FILES_${PN}-dev += " ${PYTHON_SITEPACKAGES_DIR}/*.la"
+FILES:${PN} += " ${PYTHON_SITEPACKAGES_DIR}/*"
+FILES:${PN}-staticdev += " ${PYTHON_SITEPACKAGES_DIR}/*.a"
+FILES:${PN}-dev += " ${PYTHON_SITEPACKAGES_DIR}/*.la"
 
-do_install_append() {
+do_install:append() {
         # Patch python tools to use Python 3; they should be source compatible, but
         # still refer to Python 2 in the shebang
         sed -i -e '1s,#!.*python.*,#!${bindir}/python3,' ${D}${bindir}/lttng-gen-tp
diff --git a/poky/meta/recipes-kernel/make-mod-scripts/make-mod-scripts_1.0.bb b/poky/meta/recipes-kernel/make-mod-scripts/make-mod-scripts_1.0.bb
index b2b50b9..e5a1628 100644
--- a/poky/meta/recipes-kernel/make-mod-scripts/make-mod-scripts_1.0.bb
+++ b/poky/meta/recipes-kernel/make-mod-scripts/make-mod-scripts_1.0.bb
@@ -13,7 +13,7 @@
 do_configure[depends] += "virtual/kernel:do_shared_workdir openssl-native:do_populate_sysroot"
 do_compile[depends] += "virtual/kernel:do_compile_kernelmodules"
 
-RDEPENDS_${PN}-dev = ""
+RDEPENDS:${PN}-dev = ""
 
 DEPENDS += "bc-native bison-native"
 DEPENDS += "gmp-native"
diff --git a/poky/meta/recipes-kernel/modutils-initscripts/modutils-initscripts.bb b/poky/meta/recipes-kernel/modutils-initscripts/modutils-initscripts.bb
index 97b4ddb..aa71309 100644
--- a/poky/meta/recipes-kernel/modutils-initscripts/modutils-initscripts.bb
+++ b/poky/meta/recipes-kernel/modutils-initscripts/modutils-initscripts.bb
@@ -22,8 +22,8 @@
 	install -m 0755 ${WORKDIR}/modutils.sh ${D}${sysconfdir}/init.d/
 }
 
-PACKAGE_WRITE_DEPS_append = " ${@bb.utils.contains('DISTRO_FEATURES','systemd','systemd-systemctl-native','',d)}"
-pkg_postinst_${PN} () {
+PACKAGE_WRITE_DEPS:append = " ${@bb.utils.contains('DISTRO_FEATURES','systemd','systemd-systemctl-native','',d)}"
+pkg_postinst:${PN} () {
 	if type systemctl >/dev/null 2>/dev/null; then
 		if [ -n "$D" ]; then
 			OPTS="--root=$D"
diff --git a/poky/meta/recipes-kernel/perf/perf.bb b/poky/meta/recipes-kernel/perf/perf.bb
index 99808d6..f473272 100644
--- a/poky/meta/recipes-kernel/perf/perf.bb
+++ b/poky/meta/recipes-kernel/perf/perf.bb
@@ -30,9 +30,9 @@
 PACKAGECONFIG[coresight] = "CORESIGHT=1,,opencsd"
 
 # libunwind is not yet ported for some architectures
-PACKAGECONFIG_remove_arc = "libunwind"
-PACKAGECONFIG_remove_riscv64 = "libunwind"
-PACKAGECONFIG_remove_riscv32 = "libunwind"
+PACKAGECONFIG:remove:arc = "libunwind"
+PACKAGECONFIG:remove:riscv64 = "libunwind"
+PACKAGECONFIG:remove:riscv32 = "libunwind"
 
 DEPENDS = " \
     virtual/${MLPREFIX}libc \
@@ -110,7 +110,7 @@
 # that it has to be done this way rather than by passing -j1, since
 # perf's build system by default ignores any -j argument, but does
 # honour a JOBS variable.
-EXTRA_OEMAKE_append_task-configure = " JOBS=1"
+EXTRA_OEMAKE:append:task-configure = " JOBS=1"
 
 PERF_SRC ?= "Makefile \
              tools/arch \
@@ -127,8 +127,8 @@
 PERF_EXTRA_LDFLAGS = ""
 
 # MIPS N32
-PERF_EXTRA_LDFLAGS_mipsarchn32eb = "-m elf32btsmipn32"
-PERF_EXTRA_LDFLAGS_mipsarchn32el = "-m elf32ltsmipn32"
+PERF_EXTRA_LDFLAGS:mipsarchn32eb = "-m elf32btsmipn32"
+PERF_EXTRA_LDFLAGS:mipsarchn32el = "-m elf32ltsmipn32"
 
 do_compile() {
 	# Linux kernel build system is expected to do the right thing
@@ -166,7 +166,7 @@
             bb.utils.copyfile(src, dest)
 }
 
-do_configure_prepend () {
+do_configure:prepend () {
     # If building a multlib based perf, the incorrect library path will be
     # detected by perf, since it triggers via: ifeq ($(ARCH),x86_64). In a 32 bit
     # build, with a 64 bit multilib, the arch won't match and the detection of a 
@@ -311,7 +311,7 @@
     done
 }
 
-python do_package_prepend() {
+python do_package:prepend() {
     d.setVar('PKGV', d.getVar("KERNEL_VERSION").split("-")[0])
 }
 
@@ -320,25 +320,25 @@
 
 PACKAGES =+ "${PN}-archive ${PN}-tests ${PN}-perl ${PN}-python"
 
-RDEPENDS_${PN} += "elfutils bash"
-RDEPENDS_${PN}-archive =+ "bash"
-RDEPENDS_${PN}-python =+ "bash python3 python3-modules ${@bb.utils.contains('PACKAGECONFIG', 'audit', 'audit-python', '', d)}"
-RDEPENDS_${PN}-perl =+ "bash perl perl-modules"
-RDEPENDS_${PN}-tests =+ "python3 bash"
+RDEPENDS:${PN} += "elfutils bash"
+RDEPENDS:${PN}-archive =+ "bash"
+RDEPENDS:${PN}-python =+ "bash python3 python3-modules ${@bb.utils.contains('PACKAGECONFIG', 'audit', 'audit-python', '', d)}"
+RDEPENDS:${PN}-perl =+ "bash perl perl-modules"
+RDEPENDS:${PN}-tests =+ "python3 bash"
 
 RSUGGESTS_SCRIPTING = "${@bb.utils.contains('PACKAGECONFIG', 'scripting', '${PN}-perl ${PN}-python', '',d)}"
-RSUGGESTS_${PN} += "${PN}-archive ${PN}-tests ${RSUGGESTS_SCRIPTING}"
+RSUGGESTS:${PN} += "${PN}-archive ${PN}-tests ${RSUGGESTS_SCRIPTING}"
 
 FILES_SOLIBSDEV = ""
-FILES_${PN} += "${libexecdir}/perf-core ${exec_prefix}/libexec/perf-core ${libdir}/traceevent ${libdir}/libperf-jvmti.so"
-FILES_${PN}-archive = "${libdir}/perf/perf-core/perf-archive"
-FILES_${PN}-tests = "${libdir}/perf/perf-core/tests ${libexecdir}/perf-core/tests"
-FILES_${PN}-python = " \
+FILES:${PN} += "${libexecdir}/perf-core ${exec_prefix}/libexec/perf-core ${libdir}/traceevent ${libdir}/libperf-jvmti.so"
+FILES:${PN}-archive = "${libdir}/perf/perf-core/perf-archive"
+FILES:${PN}-tests = "${libdir}/perf/perf-core/tests ${libexecdir}/perf-core/tests"
+FILES:${PN}-python = " \
                        ${PYTHON_SITEPACKAGES_DIR} \
                        ${libexecdir}/perf-core/scripts/python \
                        "
-FILES_${PN}-perl = "${libexecdir}/perf-core/scripts/perl"
+FILES:${PN}-perl = "${libexecdir}/perf-core/scripts/perl"
 
 
 INHIBIT_PACKAGE_DEBUG_SPLIT="1"
-DEBUG_OPTIMIZATION_append = " -Wno-error=maybe-uninitialized"
+DEBUG_OPTIMIZATION:append = " -Wno-error=maybe-uninitialized"
diff --git a/poky/meta/recipes-kernel/powertop/powertop_2.14.bb b/poky/meta/recipes-kernel/powertop/powertop_2.14.bb
index cb7f3c4..c176cba 100644
--- a/poky/meta/recipes-kernel/powertop/powertop_2.14.bb
+++ b/poky/meta/recipes-kernel/powertop/powertop_2.14.bb
@@ -13,12 +13,12 @@
 
 S = "${WORKDIR}/git"
 
-LDFLAGS_append = " -pthread"
+LDFLAGS:append = " -pthread"
 
 inherit autotools gettext pkgconfig bash-completion
 
 inherit update-alternatives
-ALTERNATIVE_${PN} = "powertop"
+ALTERNATIVE:${PN} = "powertop"
 ALTERNATIVE_TARGET[powertop] = "${sbindir}/powertop"
 ALTERNATIVE_LINK_NAME[powertop] = "${sbindir}/powertop"
 ALTERNATIVE_PRIORITY = "100"
diff --git a/poky/meta/recipes-kernel/systemtap/systemtap-uprobes_git.bb b/poky/meta/recipes-kernel/systemtap/systemtap-uprobes_git.bb
index 6ee0be5..2181e45 100644
--- a/poky/meta/recipes-kernel/systemtap/systemtap-uprobes_git.bb
+++ b/poky/meta/recipes-kernel/systemtap/systemtap-uprobes_git.bb
@@ -5,13 +5,13 @@
 DEPENDS = "systemtap virtual/kernel"
 
 # On systems without CONFIG_UTRACE, this package is empty.
-ALLOW_EMPTY_${PN} = "1"
+ALLOW_EMPTY:${PN} = "1"
 
 inherit module-base gettext
 
 FILESEXTRAPATHS =. "${FILE_DIRNAME}/systemtap:"
 
-FILES_${PN} += "${datadir}/systemtap/runtime/uprobes"
+FILES:${PN} += "${datadir}/systemtap/runtime/uprobes"
 
 # Compile and install the uprobes kernel module on machines with utrace
 # support.  Note that staprun expects it in the systemtap/runtime directory,
diff --git a/poky/meta/recipes-kernel/systemtap/systemtap/ef5a8b9eda402e4e96c4e3ce01e7ff95d3e10470.patch b/poky/meta/recipes-kernel/systemtap/systemtap/ef5a8b9eda402e4e96c4e3ce01e7ff95d3e10470.patch
new file mode 100644
index 0000000..4d044de
--- /dev/null
+++ b/poky/meta/recipes-kernel/systemtap/systemtap/ef5a8b9eda402e4e96c4e3ce01e7ff95d3e10470.patch
@@ -0,0 +1,26 @@
+From ef5a8b9eda402e4e96c4e3ce01e7ff95d3e10470 Mon Sep 17 00:00:00 2001
+From: Du Zhe <duzhe0211+sourceware@gmail.com>
+Date: Tue, 13 Jul 2021 19:11:55 -0400
+Subject: [PATCH] runtime: fix unintended compile error with
+ autoconf-x86-uniregs.c
+
+Adding a #include <linux/sched.h> restores this test on the gentoo
+linux-5.10.47-gentoo kernel.
+
+Upstream-Status: Backport
+---
+ runtime/linux/autoconf-x86-uniregs.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/runtime/linux/autoconf-x86-uniregs.c b/runtime/linux/autoconf-x86-uniregs.c
+index 25729c220..232c18670 100644
+--- a/runtime/linux/autoconf-x86-uniregs.c
++++ b/runtime/linux/autoconf-x86-uniregs.c
+@@ -1,3 +1,4 @@
++#include <linux/sched.h>
+ #include <asm/ptrace.h>
+ 
+ #if defined (__i386__) || defined (__x86_64__)
+-- 
+2.27.0
+
diff --git a/poky/meta/recipes-kernel/systemtap/systemtap_git.bb b/poky/meta/recipes-kernel/systemtap/systemtap_git.bb
index c4a6eef..8161a44 100644
--- a/poky/meta/recipes-kernel/systemtap/systemtap_git.bb
+++ b/poky/meta/recipes-kernel/systemtap/systemtap_git.bb
@@ -33,46 +33,46 @@
 
 # exporter comes with python3-probes
 PACKAGES =+ "${PN}-exporter"
-FILES_${PN}-exporter = "${sysconfdir}/stap-exporter/* \
+FILES:${PN}-exporter = "${sysconfdir}/stap-exporter/* \
                         ${sysconfdir}/sysconfig/stap-exporter \
                         ${systemd_unitdir}/system/stap-exporter.service \
                         ${sbindir}/stap-exporter"
-RDEPENDS_${PN}-exporter = "${PN} python3-core python3-netclient"
-SYSTEMD_SERVICE_${PN}-exporter = "stap-exporter.service"
+RDEPENDS:${PN}-exporter = "${PN} python3-core python3-netclient"
+SYSTEMD_SERVICE:${PN}-exporter = "stap-exporter.service"
 
 PACKAGES =+ "${PN}-runtime"
-FILES_${PN}-runtime = "\
+FILES:${PN}-runtime = "\
  ${bindir}/staprun \
  ${bindir}/stap-merge \
  ${bindir}/stapsh \
  ${libexecdir}/${BPN}/stapio \
 "
-RDEPENDS_${PN}_class-target += "${PN}-runtime"
+RDEPENDS:${PN}:class-target += "${PN}-runtime"
 
 PACKAGES =+ "${PN}-examples"
-FILES_${PN}-examples = "${datadir}/${BPN}/examples/"
-RDEPENDS_${PN}-examples += "${PN}"
+FILES:${PN}-examples = "${datadir}/${BPN}/examples/"
+RDEPENDS:${PN}-examples += "${PN}"
 
 # don't complain that some examples involve bash, perl, php...
-INSANE_SKIP_${PN}-examples += "file-rdeps"
+INSANE_SKIP:${PN}-examples += "file-rdeps"
 
 PACKAGES =+ "${PN}-python"
-FILES_${PN}-python += "\
+FILES:${PN}-python += "\
  ${bindir}/dtrace \
  ${libdir}/python*/ \
  ${libexecdir}/${BPN}/python/ \
 "
 # python material requires sdt headers
-RDEPENDS_${PN}-python += "${PN}-dev python3-core"
-INSANE_SKIP_${PN}-python += "dev-deps"
+RDEPENDS:${PN}-python += "${PN}-dev python3-core"
+INSANE_SKIP:${PN}-python += "dev-deps"
 
-do_configure_prepend () {
+do_configure:prepend () {
     # Improve reproducibility for c++ object files
     reltivepath="${@os.path.relpath(d.getVar('STAGING_INCDIR'), d.getVar('S'))}"
     sed -i "s:@RELATIVE_STAGING_INCDIR@:$reltivepath:g" ${S}/stringtable.h
 }
 
-do_install_append () {
+do_install:append () {
    if [ ! -f ${D}${bindir}/stap ]; then
       # translator disabled case, need to leave only minimal runtime
       rm -rf ${D}${datadir}/${PN}
diff --git a/poky/meta/recipes-kernel/systemtap/systemtap_git.inc b/poky/meta/recipes-kernel/systemtap/systemtap_git.inc
index 23ecc61..97d4435 100644
--- a/poky/meta/recipes-kernel/systemtap/systemtap_git.inc
+++ b/poky/meta/recipes-kernel/systemtap/systemtap_git.inc
@@ -7,10 +7,11 @@
            file://0001-Do-not-let-configure-write-a-python-location-into-th.patch \
            file://0001-Install-python-modules-to-correct-library-dir.patch \
            file://0001-staprun-stapbpf-don-t-support-installing-a-non-root.patch \
+           file://ef5a8b9eda402e4e96c4e3ce01e7ff95d3e10470.patch \
            "
 
 COMPATIBLE_HOST = '(x86_64|i.86|powerpc|arm|aarch64|microblazeel|mips).*-linux'
-COMPATIBLE_HOST_libc-musl = 'null'
+COMPATIBLE_HOST:libc-musl = 'null'
 
 S = "${WORKDIR}/git"
 
diff --git a/poky/meta/recipes-kernel/wireless-regdb/wireless-regdb_2021.04.21.bb b/poky/meta/recipes-kernel/wireless-regdb/wireless-regdb_2021.04.21.bb
index f79c0b2..7b54d8c 100644
--- a/poky/meta/recipes-kernel/wireless-regdb/wireless-regdb_2021.04.21.bb
+++ b/poky/meta/recipes-kernel/wireless-regdb/wireless-regdb_2021.04.21.bb
@@ -24,9 +24,9 @@
 # For kernel <= v4.14, inherit the kernel_wireless_regdb.bbclass
 # (in meta-networking) in kernel's recipe.
 PACKAGES = "${PN}-static ${PN}"
-RCONFLICTS_${PN} = "${PN}-static"
+RCONFLICTS:${PN} = "${PN}-static"
 
-FILES_${PN}-static = " \
+FILES:${PN}-static = " \
     ${nonarch_base_libdir}/firmware/regulatory.db \
     ${nonarch_base_libdir}/firmware/regulatory.db.p7s \
 "
@@ -34,10 +34,10 @@
 # Native users might want to use the source of regulatory DB.
 # This is for example used by Linux kernel <= v4.14 and
 # kernel_wireless_regdb.bbclass in meta-networking.
-do_install_append_class-native() {
+do_install:append:class-native() {
     install -m 0644 -D db.txt ${D}${libdir}/crda/db.txt
 }
 
-RSUGGESTS_${PN} = "crda"
+RSUGGESTS:${PN} = "crda"
 
 BBCLASSEXTEND = "native"
diff --git a/poky/meta/recipes-multimedia/alsa/alsa-lib_1.2.5.1.bb b/poky/meta/recipes-multimedia/alsa/alsa-lib_1.2.5.1.bb
index 151d63c..cf7c3fc 100644
--- a/poky/meta/recipes-multimedia/alsa/alsa-lib_1.2.5.1.bb
+++ b/poky/meta/recipes-multimedia/alsa/alsa-lib_1.2.5.1.bb
@@ -21,24 +21,24 @@
 
 PACKAGES =+ "alsa-server alsa-conf libatopology"
 
-FILES_alsa-server = "${bindir}/*"
-FILES_alsa-conf = "${datadir}/alsa/"
-FILES_libatopology = "${libdir}/libatopology.so.*"
+FILES:alsa-server = "${bindir}/*"
+FILES:alsa-conf = "${datadir}/alsa/"
+FILES:libatopology = "${libdir}/libatopology.so.*"
 
-RDEPENDS_${PN}_class-target = "alsa-conf alsa-ucm-conf"
-RDEPENDS_libatopology_class-target = "alsa-topology-conf"
+RDEPENDS:${PN}:class-target = "alsa-conf alsa-ucm-conf"
+RDEPENDS:libatopology:class-target = "alsa-topology-conf"
 
 # upgrade path
-RPROVIDES_${PN} = "libasound"
-RREPLACES_${PN} = "libasound"
-RCONFLICTS_${PN} = "libasound"
+RPROVIDES:${PN} = "libasound"
+RREPLACES:${PN} = "libasound"
+RCONFLICTS:${PN} = "libasound"
 
-RPROVIDES_${PN}-dev = "alsa-dev"
-RREPLACES_${PN}-dev = "alsa-dev"
-RCONFLICTS_${PN}-dev = "alsa-dev"
+RPROVIDES:${PN}-dev = "alsa-dev"
+RREPLACES:${PN}-dev = "alsa-dev"
+RCONFLICTS:${PN}-dev = "alsa-dev"
 
-RPROVIDES_alsa-conf = "alsa-conf-base"
-RREPLACES_alsa-conf = "alsa-conf-base"
-RCONFLICTS_alsa-conf = "alsa-conf-base"
+RPROVIDES:alsa-conf = "alsa-conf-base"
+RREPLACES:alsa-conf = "alsa-conf-base"
+RCONFLICTS:alsa-conf = "alsa-conf-base"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-multimedia/alsa/alsa-plugins_1.2.5.bb b/poky/meta/recipes-multimedia/alsa/alsa-plugins_1.2.5.bb
index f940a4b..0eac982 100644
--- a/poky/meta/recipes-multimedia/alsa/alsa-plugins_1.2.5.bb
+++ b/poky/meta/recipes-multimedia/alsa/alsa-plugins_1.2.5.bb
@@ -49,10 +49,10 @@
 
 # The alsa-plugins package doesn't itself contain anything, it just depends on
 # all built plugins.
-FILES_${PN} = ""
-ALLOW_EMPTY_${PN} = "1"
+FILES:${PN} = ""
+ALLOW_EMPTY:${PN} = "1"
 
-do_install_append() {
+do_install:append() {
 	rm -f ${D}${libdir}/alsa-lib/*.la
 
 	if [ "${@bb.utils.contains('PACKAGECONFIG', 'pulseaudio', 'yes', 'no', d)}" = "yes" ]; then
@@ -65,10 +65,10 @@
 	fi
 }
 
-python populate_packages_prepend() {
+python populate_packages:prepend() {
     plugindir = d.expand('${libdir}/alsa-lib/')
     packages = " ".join(do_split_packages(d, plugindir, r'^libasound_module_(.*)\.so$', 'libasound-module-%s', 'Alsa plugin for %s', extra_depends=''))
-    d.setVar("RDEPENDS_alsa-plugins", packages)
+    d.setVar("RDEPENDS:alsa-plugins", packages)
 }
 
 # Many plugins have a configuration file (plus a symlink in /etc) associated
@@ -84,51 +84,51 @@
 # cause big problems, but some kind of improvement to the packaging could
 # probably be done here (at least it would be good to handle the different
 # plugins in a consistent way).
-FILES_${MLPREFIX}libasound-module-ctl-arcam-av += "\
+FILES:${MLPREFIX}libasound-module-ctl-arcam-av += "\
         ${datadir}/alsa/alsa.conf.d/50-arcam-av-ctl.conf \
         ${sysconfdir}/alsa/conf.d/50-arcam-av-ctl.conf \
 "
-FILES_${MLPREFIX}libasound-module-pcm-a52 += "\
+FILES:${MLPREFIX}libasound-module-pcm-a52 += "\
         ${datadir}/alsa/alsa.conf.d/60-a52-encoder.conf \
         ${sysconfdir}/alsa/conf.d/60-a52-encoder.conf \
 "
-FILES_${MLPREFIX}libasound-module-pcm-alsa-dsp += "\
+FILES:${MLPREFIX}libasound-module-pcm-alsa-dsp += "\
         ${datadir}/alsa/alsa.conf.d/98-maemo.conf \
         ${sysconfdir}/alsa/conf.d/98-maemo.conf \
 "
-FILES_${MLPREFIX}libasound-module-pcm-jack += "\
+FILES:${MLPREFIX}libasound-module-pcm-jack += "\
         ${datadir}/alsa/alsa.conf.d/50-jack.conf \
         ${sysconfdir}/alsa/conf.d/50-jack.conf \
 "
-FILES_${MLPREFIX}libasound-module-pcm-oss += "\
+FILES:${MLPREFIX}libasound-module-pcm-oss += "\
         ${datadir}/alsa/alsa.conf.d/50-oss.conf \
         ${sysconfdir}/alsa/conf.d/50-oss.conf \
 "
-FILES_${MLPREFIX}libasound-module-pcm-speex += "\
+FILES:${MLPREFIX}libasound-module-pcm-speex += "\
         ${datadir}/alsa/alsa.conf.d/60-speex.conf \
         ${sysconfdir}/alsa/conf.d/60-speex.conf \
 "
-FILES_${MLPREFIX}libasound-module-pcm-upmix += "\
+FILES:${MLPREFIX}libasound-module-pcm-upmix += "\
         ${datadir}/alsa/alsa.conf.d/60-upmix.conf \
         ${sysconfdir}/alsa/conf.d/60-upmix.conf \
 "
-FILES_${MLPREFIX}libasound-module-pcm-usb-stream += "\
+FILES:${MLPREFIX}libasound-module-pcm-usb-stream += "\
         ${datadir}/alsa/alsa.conf.d/98-usb-stream.conf \
         ${sysconfdir}/alsa/conf.d/98-usb-stream.conf \
 "
-FILES_${MLPREFIX}libasound-module-pcm-vdownmix += "\
+FILES:${MLPREFIX}libasound-module-pcm-vdownmix += "\
         ${datadir}/alsa/alsa.conf.d/60-vdownmix.conf \
         ${sysconfdir}/alsa/conf.d/60-vdownmix.conf \
 "
-FILES_${MLPREFIX}libasound-module-rate-lavrate += "\
+FILES:${MLPREFIX}libasound-module-rate-lavrate += "\
         ${datadir}/alsa/alsa.conf.d/10-rate-lav.conf \
         ${sysconfdir}/alsa/conf.d/10-rate-lav.conf \
 "
-FILES_${MLPREFIX}libasound-module-rate-samplerate += "\
+FILES:${MLPREFIX}libasound-module-rate-samplerate += "\
         ${datadir}/alsa/alsa.conf.d/10-samplerate.conf \
         ${sysconfdir}/alsa/conf.d/10-samplerate.conf \
 "
-FILES_${MLPREFIX}libasound-module-rate-speexrate += "\
+FILES:${MLPREFIX}libasound-module-rate-speexrate += "\
         ${datadir}/alsa/alsa.conf.d/10-speexrate.conf \
         ${sysconfdir}/alsa/conf.d/10-speexrate.conf \
 "
@@ -149,25 +149,25 @@
 # The symlinks cause QA errors, because usually it's a bug if a non
 # -dev/-dbg/-nativesdk package contains links to .so files, but in this case
 # the errors are false positives, so we disable the QA checks.
-FILES_${MLPREFIX}libasound-module-rate-lavrate += "${libdir}/alsa-lib/*rate_lavrate_*.so"
-FILES_${MLPREFIX}libasound-module-rate-samplerate += "${libdir}/alsa-lib/*rate_samplerate_*.so"
-FILES_${MLPREFIX}libasound-module-rate-speexrate += "${libdir}/alsa-lib/*rate_speexrate_*.so"
-INSANE_SKIP_${MLPREFIX}libasound-module-rate-lavrate = "dev-so"
-INSANE_SKIP_${MLPREFIX}libasound-module-rate-samplerate = "dev-so"
-INSANE_SKIP_${MLPREFIX}libasound-module-rate-speexrate = "dev-so"
+FILES:${MLPREFIX}libasound-module-rate-lavrate += "${libdir}/alsa-lib/*rate_lavrate_*.so"
+FILES:${MLPREFIX}libasound-module-rate-samplerate += "${libdir}/alsa-lib/*rate_samplerate_*.so"
+FILES:${MLPREFIX}libasound-module-rate-speexrate += "${libdir}/alsa-lib/*rate_speexrate_*.so"
+INSANE_SKIP:${MLPREFIX}libasound-module-rate-lavrate = "dev-so"
+INSANE_SKIP:${MLPREFIX}libasound-module-rate-samplerate = "dev-so"
+INSANE_SKIP:${MLPREFIX}libasound-module-rate-speexrate = "dev-so"
 
 # 50-pulseaudio.conf defines a device named "pulse" that applications can use
 # if they explicitly want to use the PulseAudio plugin.
 # 99-pulseaudio-default.conf configures the "default" device to use the
 # PulseAudio plugin.
-FILES_${PN}-pulseaudio-conf += "\
+FILES:${PN}-pulseaudio-conf += "\
         ${datadir}/alsa/alsa.conf.d/50-pulseaudio.conf \
         ${datadir}/alsa/alsa.conf.d/99-pulseaudio-default.conf \
         ${sysconfdir}/alsa/conf.d/50-pulseaudio.conf \
         ${sysconfdir}/alsa/conf.d/99-pulseaudio-default.conf \
 "
 
-RDEPENDS_${PN}-pulseaudio-conf += "\
+RDEPENDS:${PN}-pulseaudio-conf += "\
         ${MLPREFIX}libasound-module-conf-pulse \
         ${MLPREFIX}libasound-module-ctl-pulse \
         ${MLPREFIX}libasound-module-pcm-pulse \
diff --git a/poky/meta/recipes-multimedia/alsa/alsa-tools_1.2.5.bb b/poky/meta/recipes-multimedia/alsa/alsa-tools_1.2.5.bb
index 8f9c77e..540f4f7 100644
--- a/poky/meta/recipes-multimedia/alsa/alsa-tools_1.2.5.bb
+++ b/poky/meta/recipes-multimedia/alsa/alsa-tools_1.2.5.bb
@@ -85,4 +85,4 @@
         pass
 }
 
-FILES_${PN} += "${datadir}"
+FILES:${PN} += "${datadir}"
diff --git a/poky/meta/recipes-multimedia/alsa/alsa-topology-conf_1.2.5.1.bb b/poky/meta/recipes-multimedia/alsa/alsa-topology-conf_1.2.5.1.bb
index c96826c..4374a6b 100644
--- a/poky/meta/recipes-multimedia/alsa/alsa-topology-conf_1.2.5.1.bb
+++ b/poky/meta/recipes-multimedia/alsa/alsa-topology-conf_1.2.5.1.bb
@@ -20,4 +20,4 @@
 
 PACKAGES = "${PN}"
 
-FILES_${PN} = "*"
+FILES:${PN} = "*"
diff --git a/poky/meta/recipes-multimedia/alsa/alsa-ucm-conf_1.2.5.1.bb b/poky/meta/recipes-multimedia/alsa/alsa-ucm-conf_1.2.5.1.bb
index 4d5f374..9d874ec 100644
--- a/poky/meta/recipes-multimedia/alsa/alsa-ucm-conf_1.2.5.1.bb
+++ b/poky/meta/recipes-multimedia/alsa/alsa-ucm-conf_1.2.5.1.bb
@@ -21,4 +21,4 @@
 
 PACKAGES = "${PN}"
 
-FILES_${PN} = "*"
+FILES:${PN} = "*"
diff --git a/poky/meta/recipes-multimedia/alsa/alsa-utils-scripts_1.2.5.1.bb b/poky/meta/recipes-multimedia/alsa/alsa-utils-scripts_1.2.5.1.bb
index 048fef6..000e984 100644
--- a/poky/meta/recipes-multimedia/alsa/alsa-utils-scripts_1.2.5.1.bb
+++ b/poky/meta/recipes-multimedia/alsa/alsa-utils-scripts_1.2.5.1.bb
@@ -3,12 +3,12 @@
 SUMMARY = "Shell scripts that show help info and create ALSA configuration files"
 PROVIDES = "alsa-utils-alsaconf"
 
-FILESEXTRAPATHS_prepend := "${THISDIR}/alsa-utils:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/alsa-utils:"
 
 PACKAGES = "${PN}"
-RDEPENDS_${PN} += "bash"
+RDEPENDS:${PN} += "bash"
 
-FILES_${PN} = "${sbindir}/alsaconf \
+FILES:${PN} = "${sbindir}/alsaconf \
                ${sbindir}/alsa-info.sh \
                ${sbindir}/alsabat-test.sh \
               "
diff --git a/poky/meta/recipes-multimedia/alsa/alsa-utils.inc b/poky/meta/recipes-multimedia/alsa/alsa-utils.inc
index 733bb24..95b93d4 100644
--- a/poky/meta/recipes-multimedia/alsa/alsa-utils.inc
+++ b/poky/meta/recipes-multimedia/alsa/alsa-utils.inc
@@ -55,41 +55,41 @@
             "
 
 PACKAGES += "${ALSA_UTILS_PKGS}"
-RDEPENDS_${PN} += "${ALSA_UTILS_PKGS}"
+RDEPENDS:${PN} += "${ALSA_UTILS_PKGS}"
 
-FILES_${PN} = ""
-ALLOW_EMPTY_alsa-utils = "1"
-FILES_alsa-utils-alsabat     = "${bindir}/alsabat"
-FILES_alsa-utils-alsatplg    = "${bindir}/alsatplg"
-FILES_alsa-utils-aplay       = "${bindir}/aplay ${bindir}/arecord ${bindir}/axfer"
-FILES_alsa-utils-amixer      = "${bindir}/amixer"
-FILES_alsa-utils-alsamixer   = "${bindir}/alsamixer"
-FILES_alsa-utils-speakertest = "${bindir}/speaker-test ${datadir}/sounds/alsa/ ${datadir}/alsa/speaker-test/"
-FILES_alsa-utils-midi        = "${bindir}/aplaymidi ${bindir}/arecordmidi ${bindir}/amidi"
-FILES_alsa-utils-aconnect    = "${bindir}/aconnect"
-FILES_alsa-utils-aseqnet     = "${bindir}/aseqnet"
-FILES_alsa-utils-iecset      = "${bindir}/iecset"
-FILES_alsa-utils-alsactl     = "${sbindir}/alsactl */udev/rules.d/90-alsa-restore.rules */*/udev/rules.d/90-alsa-restore.rules ${systemd_unitdir} ${localstatedir}/lib/alsa ${datadir}/alsa/init/"
-FILES_alsa-utils-aseqdump    = "${bindir}/aseqdump"
-FILES_alsa-utils-alsaloop    = "${bindir}/alsaloop"
-FILES_alsa-utils-alsaucm     = "${bindir}/alsaucm */udev/rules.d/89-alsa-ucm.rules */*/udev/rules.d/89-alsa-ucm.rules"
+FILES:${PN} = ""
+ALLOW_EMPTY:alsa-utils = "1"
+FILES:alsa-utils-alsabat     = "${bindir}/alsabat"
+FILES:alsa-utils-alsatplg    = "${bindir}/alsatplg"
+FILES:alsa-utils-aplay       = "${bindir}/aplay ${bindir}/arecord ${bindir}/axfer"
+FILES:alsa-utils-amixer      = "${bindir}/amixer"
+FILES:alsa-utils-alsamixer   = "${bindir}/alsamixer"
+FILES:alsa-utils-speakertest = "${bindir}/speaker-test ${datadir}/sounds/alsa/ ${datadir}/alsa/speaker-test/"
+FILES:alsa-utils-midi        = "${bindir}/aplaymidi ${bindir}/arecordmidi ${bindir}/amidi"
+FILES:alsa-utils-aconnect    = "${bindir}/aconnect"
+FILES:alsa-utils-aseqnet     = "${bindir}/aseqnet"
+FILES:alsa-utils-iecset      = "${bindir}/iecset"
+FILES:alsa-utils-alsactl     = "${sbindir}/alsactl */udev/rules.d/90-alsa-restore.rules */*/udev/rules.d/90-alsa-restore.rules ${systemd_unitdir} ${localstatedir}/lib/alsa ${datadir}/alsa/init/"
+FILES:alsa-utils-aseqdump    = "${bindir}/aseqdump"
+FILES:alsa-utils-alsaloop    = "${bindir}/alsaloop"
+FILES:alsa-utils-alsaucm     = "${bindir}/alsaucm */udev/rules.d/89-alsa-ucm.rules */*/udev/rules.d/89-alsa-ucm.rules"
 
-SUMMARY_alsa-utils-alsabat      = "Command-line sound tester for ALSA sound card driver"
-SUMMARY_alsa-utils-alsatplg     = "Converts topology text files into binary format for kernel"
-SUMMARY_alsa-utils-aplay        = "Play (and record) sound files using ALSA"
-SUMMARY_alsa-utils-amixer       = "Command-line control for ALSA mixer and settings"
-SUMMARY_alsa-utils-alsamixer    = "ncurses-based control for ALSA mixer and settings"
-SUMMARY_alsa-utils-speakertest  = "ALSA surround speaker test utility"
-SUMMARY_alsa-utils-midi         = "Miscellaneous MIDI utilities for ALSA"
-SUMMARY_alsa-utils-aconnect     = "ALSA sequencer connection manager"
-SUMMARY_alsa-utils-aseqnet      = "Network client/server for ALSA sequencer"
-SUMMARY_alsa-utils-iecset       = "ALSA utility for setting/showing IEC958 (S/PDIF) status bits"
-SUMMARY_alsa-utils-alsactl      = "Saves/restores ALSA-settings in /etc/asound.state"
-SUMMARY_alsa-utils-aseqdump     = "Shows the events received at an ALSA sequencer port"
-SUMMARY_alsa-utils-alsaloop     = "ALSA PCM loopback utility"
-SUMMARY_alsa-utils-alsaucm      = "ALSA Use Case Manager"
+SUMMARY:alsa-utils-alsabat      = "Command-line sound tester for ALSA sound card driver"
+SUMMARY:alsa-utils-alsatplg     = "Converts topology text files into binary format for kernel"
+SUMMARY:alsa-utils-aplay        = "Play (and record) sound files using ALSA"
+SUMMARY:alsa-utils-amixer       = "Command-line control for ALSA mixer and settings"
+SUMMARY:alsa-utils-alsamixer    = "ncurses-based control for ALSA mixer and settings"
+SUMMARY:alsa-utils-speakertest  = "ALSA surround speaker test utility"
+SUMMARY:alsa-utils-midi         = "Miscellaneous MIDI utilities for ALSA"
+SUMMARY:alsa-utils-aconnect     = "ALSA sequencer connection manager"
+SUMMARY:alsa-utils-aseqnet      = "Network client/server for ALSA sequencer"
+SUMMARY:alsa-utils-iecset       = "ALSA utility for setting/showing IEC958 (S/PDIF) status bits"
+SUMMARY:alsa-utils-alsactl      = "Saves/restores ALSA-settings in /etc/asound.state"
+SUMMARY:alsa-utils-aseqdump     = "Shows the events received at an ALSA sequencer port"
+SUMMARY:alsa-utils-alsaloop     = "ALSA PCM loopback utility"
+SUMMARY:alsa-utils-alsaucm      = "ALSA Use Case Manager"
 
-RRECOMMENDS_alsa-utils-alsactl = "alsa-states"
+RRECOMMENDS:alsa-utils-alsactl = "alsa-states"
 
 do_install() {
 	autotools_do_install
diff --git a/poky/meta/recipes-multimedia/ffmpeg/ffmpeg/fix-CVE-2020-20446.patch b/poky/meta/recipes-multimedia/ffmpeg/ffmpeg/fix-CVE-2020-20446.patch
new file mode 100644
index 0000000..f048c2e
--- /dev/null
+++ b/poky/meta/recipes-multimedia/ffmpeg/ffmpeg/fix-CVE-2020-20446.patch
@@ -0,0 +1,35 @@
+From 223b5e8ac9f6461bb13ed365419ec485c5b2b002 Mon Sep 17 00:00:00 2001
+From: Michael Niedermayer <michael@niedermayer.cc>
+Date: Fri, 28 May 2021 20:18:25 +0200
+Subject: [PATCH] avcodec/aacpsy: Avoid floating point division by 0 of
+ norm_fac
+
+Fixes: Ticket7995
+Fixes: CVE-2020-20446
+
+Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
+
+CVE: CVE-2020-20446
+Upstream-Status: Backport [223b5e8ac9f6461bb13ed365419ec485c5b2b002]
+
+Signed-off-by: Tony Tascioglu <tony.tascioglu@windriver.com>
+---
+ libavcodec/aacpsy.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/libavcodec/aacpsy.c b/libavcodec/aacpsy.c
+index 482113d427..e51d29750b 100644
+--- a/libavcodec/aacpsy.c
++++ b/libavcodec/aacpsy.c
+@@ -794,7 +794,7 @@ static void psy_3gpp_analyze_channel(FFPsyContext *ctx, int channel,
+ 
+         if (pe < 1.15f * desired_pe) {
+             /* 6.6.1.3.6 "Final threshold modification by linearization" */
+-            norm_fac = 1.0f / norm_fac;
++            norm_fac = norm_fac ? 1.0f / norm_fac : 0;
+             for (w = 0; w < wi->num_windows*16; w += 16) {
+                 for (g = 0; g < num_bands; g++) {
+                     AacPsyBand *band = &pch->band[w+g];
+-- 
+2.32.0
+
diff --git a/poky/meta/recipes-multimedia/ffmpeg/ffmpeg/fix-CVE-2020-20453.patch b/poky/meta/recipes-multimedia/ffmpeg/ffmpeg/fix-CVE-2020-20453.patch
new file mode 100644
index 0000000..b1c9405
--- /dev/null
+++ b/poky/meta/recipes-multimedia/ffmpeg/ffmpeg/fix-CVE-2020-20453.patch
@@ -0,0 +1,42 @@
+From a7a7f32c8ad0179a1a85d0a8cff35924e6d90be8 Mon Sep 17 00:00:00 2001
+From: Michael Niedermayer <michael@niedermayer.cc>
+Date: Fri, 28 May 2021 21:37:26 +0200
+Subject: [PATCH] avcodec/aacenc: Avoid 0 lambda
+
+Fixes: Ticket8003
+Fixes: CVE-2020-20453
+
+Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
+
+CVE: CVE-2020-20453
+Upstream-Status: Backport [a7a7f32c8ad0179a1a85d0a8cff35924e6d90be8]
+
+Signed-off-by: Tony Tascioglu <tony.tascioglu@windriver.com>
+---
+ libavcodec/aacenc.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/libavcodec/aacenc.c b/libavcodec/aacenc.c
+index aa223cf25f..e80591ba86 100644
+--- a/libavcodec/aacenc.c
++++ b/libavcodec/aacenc.c
+@@ -28,6 +28,7 @@
+  *              TODOs:
+  * add sane pulse detection
+  ***********************************/
++#include <float.h>
+ 
+ #include "libavutil/libm.h"
+ #include "libavutil/float_dsp.h"
+@@ -852,7 +853,7 @@ static int aac_encode_frame(AVCodecContext *avctx, AVPacket *avpkt,
+                 /* Not so fast though */
+                 ratio = sqrtf(ratio);
+             }
+-            s->lambda = FFMIN(s->lambda * ratio, 65536.f);
++            s->lambda = av_clipf(s->lambda * ratio, FLT_MIN, 65536.f);
+ 
+             /* Keep iterating if we must reduce and lambda is in the sky */
+             if (ratio > 0.9f && ratio < 1.1f) {
+-- 
+2.32.0
+
diff --git a/poky/meta/recipes-multimedia/ffmpeg/ffmpeg/fix-CVE-2020-22015.patch b/poky/meta/recipes-multimedia/ffmpeg/ffmpeg/fix-CVE-2020-22015.patch
new file mode 100644
index 0000000..5c91129
--- /dev/null
+++ b/poky/meta/recipes-multimedia/ffmpeg/ffmpeg/fix-CVE-2020-22015.patch
@@ -0,0 +1,44 @@
+From 4c1afa292520329eecd1cc7631bc59a8cca95c46 Mon Sep 17 00:00:00 2001
+From: Michael Niedermayer <michael@niedermayer.cc>
+Date: Sat, 29 May 2021 09:22:27 +0200
+Subject: [PATCH] avformat/movenc: Check pal_size before use
+
+Fixes: assertion failure
+Fixes: out of array read
+Fixes: Ticket8190
+Fixes: CVE-2020-22015
+
+Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
+
+
+CVE: CVE-2020-22015
+Upstream-Status: Backport [4c1afa292520329eecd1cc7631bc59a8cca95c46]
+
+Signed-off-by: Tony Tascioglu <tony.tascioglu@windriver.com>
+---
+ libavformat/movenc.c | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/libavformat/movenc.c b/libavformat/movenc.c
+index 2ab507df15..7d839f447b 100644
+--- a/libavformat/movenc.c
++++ b/libavformat/movenc.c
+@@ -2160,11 +2160,13 @@ static int mov_write_video_tag(AVFormatContext *s, AVIOContext *pb, MOVMuxContex
+         avio_wb16(pb, 0x18); /* Reserved */
+ 
+     if (track->mode == MODE_MOV && track->par->format == AV_PIX_FMT_PAL8) {
+-        int pal_size = 1 << track->par->bits_per_coded_sample;
+-        int i;
++        int pal_size, i;
+         avio_wb16(pb, 0);             /* Color table ID */
+         avio_wb32(pb, 0);             /* Color table seed */
+         avio_wb16(pb, 0x8000);        /* Color table flags */
++        if (track->par->bits_per_coded_sample < 0 || track->par->bits_per_coded_sample > 8)
++            return AVERROR(EINVAL);
++        pal_size = 1 << track->par->bits_per_coded_sample;
+         avio_wb16(pb, pal_size - 1);  /* Color table size (zero-relative) */
+         for (i = 0; i < pal_size; i++) {
+             uint32_t rgb = track->palette[i];
+-- 
+2.32.0
+
diff --git a/poky/meta/recipes-multimedia/ffmpeg/ffmpeg/fix-CVE-2020-22021.patch b/poky/meta/recipes-multimedia/ffmpeg/ffmpeg/fix-CVE-2020-22021.patch
new file mode 100644
index 0000000..6f7fce0
--- /dev/null
+++ b/poky/meta/recipes-multimedia/ffmpeg/ffmpeg/fix-CVE-2020-22021.patch
@@ -0,0 +1,87 @@
+From 7971f62120a55c141ec437aa3f0bacc1c1a3526b Mon Sep 17 00:00:00 2001
+From: Michael Niedermayer <michael@niedermayer.cc>
+Date: Sat, 29 May 2021 11:17:35 +0200
+Subject: [PATCH] avfilter/vf_yadif: Fix handing of tiny images
+
+Fixes: out of array access
+Fixes: Ticket8240
+Fixes: CVE-2020-22021
+
+Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
+
+CVE: CVE-2020-22021
+Upstream-Status: Backport [7971f62120a55c141ec437aa3f0bacc1c1a3526b]
+
+Signed-off-by: Tony Tascioglu <tony.tascioglu@windriver.com>
+---
+ libavfilter/vf_yadif.c | 32 ++++++++++++++++++--------------
+ 1 file changed, 18 insertions(+), 14 deletions(-)
+
+diff --git a/libavfilter/vf_yadif.c b/libavfilter/vf_yadif.c
+index 91cc79ecc3..b0d9fbaf1f 100644
+--- a/libavfilter/vf_yadif.c
++++ b/libavfilter/vf_yadif.c
+@@ -123,20 +123,22 @@ static void filter_edges(void *dst1, void *prev1, void *cur1, void *next1,
+     uint8_t *next2 = parity ? cur  : next;
+ 
+     const int edge = MAX_ALIGN - 1;
++    int offset = FFMAX(w - edge, 3);
+ 
+     /* Only edge pixels need to be processed here.  A constant value of false
+      * for is_not_edge should let the compiler ignore the whole branch. */
+-    FILTER(0, 3, 0)
++    FILTER(0, FFMIN(3, w), 0)
+ 
+-    dst  = (uint8_t*)dst1  + w - edge;
+-    prev = (uint8_t*)prev1 + w - edge;
+-    cur  = (uint8_t*)cur1  + w - edge;
+-    next = (uint8_t*)next1 + w - edge;
++    dst  = (uint8_t*)dst1  + offset;
++    prev = (uint8_t*)prev1 + offset;
++    cur  = (uint8_t*)cur1  + offset;
++    next = (uint8_t*)next1 + offset;
+     prev2 = (uint8_t*)(parity ? prev : cur);
+     next2 = (uint8_t*)(parity ? cur  : next);
+ 
+-    FILTER(w - edge, w - 3, 1)
+-    FILTER(w - 3, w, 0)
++    FILTER(offset, w - 3, 1)
++    offset = FFMAX(offset, w - 3);
++    FILTER(offset, w, 0)
+ }
+ 
+ 
+@@ -170,21 +172,23 @@ static void filter_edges_16bit(void *dst1, void *prev1, void *cur1, void *next1,
+     uint16_t *next2 = parity ? cur  : next;
+ 
+     const int edge = MAX_ALIGN / 2 - 1;
++    int offset = FFMAX(w - edge, 3);
+ 
+     mrefs /= 2;
+     prefs /= 2;
+ 
+-    FILTER(0, 3, 0)
++    FILTER(0,  FFMIN(3, w), 0)
+ 
+-    dst   = (uint16_t*)dst1  + w - edge;
+-    prev  = (uint16_t*)prev1 + w - edge;
+-    cur   = (uint16_t*)cur1  + w - edge;
+-    next  = (uint16_t*)next1 + w - edge;
++    dst   = (uint16_t*)dst1  + offset;
++    prev  = (uint16_t*)prev1 + offset;
++    cur   = (uint16_t*)cur1  + offset;
++    next  = (uint16_t*)next1 + offset;
+     prev2 = (uint16_t*)(parity ? prev : cur);
+     next2 = (uint16_t*)(parity ? cur  : next);
+ 
+-    FILTER(w - edge, w - 3, 1)
+-    FILTER(w - 3, w, 0)
++    FILTER(offset, w - 3, 1)
++    offset = FFMAX(offset, w - 3);
++    FILTER(offset, w, 0)
+ }
+ 
+ static int filter_slice(AVFilterContext *ctx, void *arg, int jobnr, int nb_jobs)
+-- 
+2.32.0
+
diff --git a/poky/meta/recipes-multimedia/ffmpeg/ffmpeg/fix-CVE-2020-22033-CVE-2020-22019.patch b/poky/meta/recipes-multimedia/ffmpeg/ffmpeg/fix-CVE-2020-22033-CVE-2020-22019.patch
new file mode 100644
index 0000000..5d979ca
--- /dev/null
+++ b/poky/meta/recipes-multimedia/ffmpeg/ffmpeg/fix-CVE-2020-22033-CVE-2020-22019.patch
@@ -0,0 +1,40 @@
+From 82ad1b76751bcfad5005440db48c46a4de5d6f02 Mon Sep 17 00:00:00 2001
+From: Michael Niedermayer <michael@niedermayer.cc>
+Date: Sat, 29 May 2021 09:58:31 +0200
+Subject: [PATCH] avfilter/vf_vmafmotion: Check dimensions
+
+Fixes: out of array access
+Fixes: Ticket8241
+Fixes: Ticket8246
+Fixes: CVE-2020-22019
+Fixes: CVE-2020-22033
+
+Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
+
+
+CVE: CVE-2020-22033
+CVE: CVE-2020-22019
+Upstream-Status: Backport [82ad1b76751bcfad5005440db48c46a4de5d6f02]
+
+Signed-off-by: Tony Tascioglu <tony.tascioglu@windriver.com>
+---
+ libavfilter/vf_vmafmotion.c | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/libavfilter/vf_vmafmotion.c b/libavfilter/vf_vmafmotion.c
+index 2db4783d8d..454ebb8afa 100644
+--- a/libavfilter/vf_vmafmotion.c
++++ b/libavfilter/vf_vmafmotion.c
+@@ -238,6 +238,9 @@ int ff_vmafmotion_init(VMAFMotionData *s,
+     int i;
+     const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(fmt);
+ 
++    if (w < 3 || h < 3)
++        return AVERROR(EINVAL);
++
+     s->width = w;
+     s->height = h;
+     s->stride = FFALIGN(w * sizeof(uint16_t), 32);
+-- 
+2.32.0
+
diff --git a/poky/meta/recipes-multimedia/ffmpeg/ffmpeg/fix-CVE-2021-33815.patch b/poky/meta/recipes-multimedia/ffmpeg/ffmpeg/fix-CVE-2021-33815.patch
new file mode 100644
index 0000000..51edb76
--- /dev/null
+++ b/poky/meta/recipes-multimedia/ffmpeg/ffmpeg/fix-CVE-2021-33815.patch
@@ -0,0 +1,44 @@
+From 26d3c81bc5ef2f8c3f09d45eaeacfb4b1139a777 Mon Sep 17 00:00:00 2001
+From: Michael Niedermayer <michael@niedermayer.cc>
+Date: Tue, 25 May 2021 19:29:18 +0200
+Subject: [PATCH] avcodec/exr: More strictly check dc_count
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Fixes: out of array access
+Fixes: exr/deneme
+
+Found-by: Burak Çarıkçı <burakcarikci@crypttech.com>
+Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
+
+
+CVE: CVE-2021-33815
+Upstream-Status: Backport [26d3c81bc5ef2f8c3f09d45eaeacfb4b1139a777]
+
+Signed-off-by: Tony Tascioglu <tony.tascioglu@windriver.com>
+---
+ libavcodec/exr.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/libavcodec/exr.c b/libavcodec/exr.c
+index 9377a89169..4648ed7d62 100644
+--- a/libavcodec/exr.c
++++ b/libavcodec/exr.c
+@@ -1059,11 +1059,11 @@ static int dwa_uncompress(EXRContext *s, const uint8_t *src, int compressed_size
+         bytestream2_skip(&gb, ac_size);
+     }
+ 
+-    if (dc_size > 0) {
++    {
+         unsigned long dest_len = dc_count * 2LL;
+         GetByteContext agb = gb;
+ 
+-        if (dc_count > (6LL * td->xsize * td->ysize + 63) / 64)
++        if (dc_count != dc_w * dc_h * 3)
+             return AVERROR_INVALIDDATA;
+ 
+         av_fast_padded_malloc(&td->dc_data, &td->dc_size, FFALIGN(dest_len, 64) * 2);
+-- 
+2.32.0
+
diff --git a/poky/meta/recipes-multimedia/ffmpeg/ffmpeg_4.4.bb b/poky/meta/recipes-multimedia/ffmpeg/ffmpeg_4.4.bb
index 3ed009b..e190775 100644
--- a/poky/meta/recipes-multimedia/ffmpeg/ffmpeg_4.4.bb
+++ b/poky/meta/recipes-multimedia/ffmpeg/ffmpeg_4.4.bb
@@ -6,16 +6,16 @@
 SECTION = "libs"
 
 LICENSE = "BSD & GPLv2+ & LGPLv2.1+ & MIT"
-LICENSE_${PN} = "GPLv2+"
-LICENSE_libavcodec = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}"
-LICENSE_libavdevice = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}"
-LICENSE_libavfilter = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}"
-LICENSE_libavformat = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}"
-LICENSE_libavresample = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}"
-LICENSE_libavutil = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}"
-LICENSE_libpostproc = "GPLv2+"
-LICENSE_libswresample = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}"
-LICENSE_libswscale = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}"
+LICENSE:${PN} = "GPLv2+"
+LICENSE:libavcodec = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}"
+LICENSE:libavdevice = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}"
+LICENSE:libavfilter = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}"
+LICENSE:libavformat = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}"
+LICENSE:libavresample = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}"
+LICENSE:libavutil = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}"
+LICENSE:libpostproc = "GPLv2+"
+LICENSE:libswresample = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}"
+LICENSE:libswscale = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}"
 LICENSE_FLAGS = "commercial"
 
 LIC_FILES_CHKSUM = "file://COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
@@ -25,13 +25,19 @@
 
 SRC_URI = "https://www.ffmpeg.org/releases/${BP}.tar.xz \
            file://0001-libavutil-include-assembly-with-full-path-from-sourc.patch \
+           file://fix-CVE-2020-20446.patch \
+           file://fix-CVE-2020-20453.patch \
+           file://fix-CVE-2020-22015.patch \
+           file://fix-CVE-2020-22021.patch \
+           file://fix-CVE-2020-22033-CVE-2020-22019.patch \
+           file://fix-CVE-2021-33815.patch \
            "
 SRC_URI[sha256sum] = "06b10a183ce5371f915c6bb15b7b1fffbe046e8275099c96affc29e17645d909"
 
 # Build fails when thumb is enabled: https://bugzilla.yoctoproject.org/show_bug.cgi?id=7717
-ARM_INSTRUCTION_SET_armv4 = "arm"
-ARM_INSTRUCTION_SET_armv5 = "arm"
-ARM_INSTRUCTION_SET_armv6 = "arm"
+ARM_INSTRUCTION_SET:armv4 = "arm"
+ARM_INSTRUCTION_SET:armv5 = "arm"
+ARM_INSTRUCTION_SET:armv6 = "arm"
 
 # Should be API compatible with libav (which was a fork of ffmpeg)
 # libpostproc was previously packaged from a separate recipe
@@ -121,20 +127,21 @@
     --pkg-config=pkg-config \
 "
 
-EXTRA_OECONF_append_linux-gnux32 = " --disable-asm"
+EXTRA_OECONF:append:linux-gnux32 = " --disable-asm"
 
 EXTRA_OECONF += "${@bb.utils.contains('TUNE_FEATURES', 'mipsisa64r6', '--disable-mips64r2 --disable-mips32r2', '', d)}"
 EXTRA_OECONF += "${@bb.utils.contains('TUNE_FEATURES', 'mipsisa64r2', '--disable-mips64r6 --disable-mips32r6', '', d)}"
 EXTRA_OECONF += "${@bb.utils.contains('TUNE_FEATURES', 'mips32r2', '--disable-mips64r6 --disable-mips32r6', '', d)}"
 EXTRA_OECONF += "${@bb.utils.contains('TUNE_FEATURES', 'mips32r6', '--disable-mips64r2 --disable-mips32r2', '', d)}"
-EXTRA_OECONF_append_mips = " --extra-libs=-latomic --disable-mips32r5 --disable-mipsdsp --disable-mipsdspr2 \
+EXTRA_OECONF:append:mips = " --extra-libs=-latomic --disable-mips32r5 --disable-mipsdsp --disable-mipsdspr2 \
                              --disable-loongson2 --disable-loongson3 --disable-mmi --disable-msa --disable-msa2"
-EXTRA_OECONF_append_riscv32 = " --extra-libs=-latomic"
+EXTRA_OECONF:append:riscv32 = " --extra-libs=-latomic"
+EXTRA_OECONF:append:armv5 = " --extra-libs=-latomic"
 
 # gold crashes on x86, another solution is to --disable-asm but thats more hacky
 # ld.gold: internal error in relocate_section, at ../../gold/i386.cc:3684
 
-LDFLAGS_append_x86 = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', ' -fuse-ld=bfd ', '', d)}"
+LDFLAGS:append:x86 = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', ' -fuse-ld=bfd ', '', d)}"
 
 EXTRA_OEMAKE = "V=1"
 
@@ -143,7 +150,7 @@
 }
 
 # patch out build host paths for reproducibility
-do_compile_prepend_class-target() {
+do_compile:prepend:class-target() {
         sed -i -e "s,${WORKDIR},,g" ${B}/config.h
 }
 
@@ -157,23 +164,23 @@
              libswresample \
              libswscale"
 
-FILES_libavcodec = "${libdir}/libavcodec${SOLIBS}"
-FILES_libavdevice = "${libdir}/libavdevice${SOLIBS}"
-FILES_libavfilter = "${libdir}/libavfilter${SOLIBS}"
-FILES_libavformat = "${libdir}/libavformat${SOLIBS}"
-FILES_libavresample = "${libdir}/libavresample${SOLIBS}"
-FILES_libavutil = "${libdir}/libavutil${SOLIBS}"
-FILES_libpostproc = "${libdir}/libpostproc${SOLIBS}"
-FILES_libswresample = "${libdir}/libswresample${SOLIBS}"
-FILES_libswscale = "${libdir}/libswscale${SOLIBS}"
+FILES:libavcodec = "${libdir}/libavcodec${SOLIBS}"
+FILES:libavdevice = "${libdir}/libavdevice${SOLIBS}"
+FILES:libavfilter = "${libdir}/libavfilter${SOLIBS}"
+FILES:libavformat = "${libdir}/libavformat${SOLIBS}"
+FILES:libavresample = "${libdir}/libavresample${SOLIBS}"
+FILES:libavutil = "${libdir}/libavutil${SOLIBS}"
+FILES:libpostproc = "${libdir}/libpostproc${SOLIBS}"
+FILES:libswresample = "${libdir}/libswresample${SOLIBS}"
+FILES:libswscale = "${libdir}/libswscale${SOLIBS}"
 
 # ffmpeg disables PIC on some platforms (e.g. x86-32)
-INSANE_SKIP_${MLPREFIX}libavcodec = "textrel"
-INSANE_SKIP_${MLPREFIX}libavdevice = "textrel"
-INSANE_SKIP_${MLPREFIX}libavfilter = "textrel"
-INSANE_SKIP_${MLPREFIX}libavformat = "textrel"
-INSANE_SKIP_${MLPREFIX}libavutil = "textrel"
-INSANE_SKIP_${MLPREFIX}libavresample = "textrel"
-INSANE_SKIP_${MLPREFIX}libswscale = "textrel"
-INSANE_SKIP_${MLPREFIX}libswresample = "textrel"
-INSANE_SKIP_${MLPREFIX}libpostproc = "textrel"
+INSANE_SKIP:${MLPREFIX}libavcodec = "textrel"
+INSANE_SKIP:${MLPREFIX}libavdevice = "textrel"
+INSANE_SKIP:${MLPREFIX}libavfilter = "textrel"
+INSANE_SKIP:${MLPREFIX}libavformat = "textrel"
+INSANE_SKIP:${MLPREFIX}libavutil = "textrel"
+INSANE_SKIP:${MLPREFIX}libavresample = "textrel"
+INSANE_SKIP:${MLPREFIX}libswscale = "textrel"
+INSANE_SKIP:${MLPREFIX}libswresample = "textrel"
+INSANE_SKIP:${MLPREFIX}libpostproc = "textrel"
diff --git a/poky/meta/recipes-multimedia/flac/flac_1.3.3.bb b/poky/meta/recipes-multimedia/flac/flac_1.3.3.bb
index cb6692a..57e6bcb 100644
--- a/poky/meta/recipes-multimedia/flac/flac_1.3.3.bb
+++ b/poky/meta/recipes-multimedia/flac/flac_1.3.3.bb
@@ -38,9 +38,9 @@
 EXTRA_OECONF += "${@bb.utils.contains("TUNE_FEATURES", "corei7", " --enable-sse", "", d)}"
 
 PACKAGES += "libflac libflac++ liboggflac liboggflac++"
-FILES_${PN} = "${bindir}/*"
-FILES_libflac = "${libdir}/libFLAC.so.*"
-FILES_libflac++ = "${libdir}/libFLAC++.so.*"
-FILES_liboggflac = "${libdir}/libOggFLAC.so.*"
-FILES_liboggflac++ = "${libdir}/libOggFLAC++.so.*"
+FILES:${PN} = "${bindir}/*"
+FILES:libflac = "${libdir}/libFLAC.so.*"
+FILES:libflac++ = "${libdir}/libFLAC++.so.*"
+FILES:liboggflac = "${libdir}/libOggFLAC.so.*"
+FILES:liboggflac++ = "${libdir}/libOggFLAC++.so.*"
 
diff --git a/poky/meta/recipes-multimedia/gstreamer/gst-devtools_1.18.4.bb b/poky/meta/recipes-multimedia/gstreamer/gst-devtools_1.18.4.bb
index 2a56967..be554a6 100644
--- a/poky/meta/recipes-multimedia/gstreamer/gst-devtools_1.18.4.bb
+++ b/poky/meta/recipes-multimedia/gstreamer/gst-devtools_1.18.4.bb
@@ -15,9 +15,9 @@
 SRC_URI[sha256sum] = "ffbd194c40912cb5e7fca2863648bf9dd8257b7af97d3a60c4fcd4efd8526ccf"
 
 DEPENDS = "json-glib glib-2.0 glib-2.0-native gstreamer1.0 gstreamer1.0-plugins-base"
-RRECOMMENDS_${PN} = "git"
+RRECOMMENDS:${PN} = "git"
 
-FILES_${PN} += "${datadir}/gstreamer-1.0/* ${libdir}/gst-validate-launcher/* ${libdir}/gstreamer-1.0/*"
+FILES:${PN} += "${datadir}/gstreamer-1.0/* ${libdir}/gst-validate-launcher/* ${libdir}/gstreamer-1.0/*"
 
 inherit meson pkgconfig gettext upstream-version-is-even gobject-introspection
 
@@ -38,7 +38,7 @@
     ${@gettext_oemeson(d)} \
 "
 
-do_install_append () {
+do_install:append () {
      for fn in ${bindir}/gst-validate-launcher \
          ${libdir}/gst-validate-launcher/python/launcher/config.py; do
              sed -i -e 's,${B},/usr/src/debug/${PN},g' -e 's,${S},/usr/src/debug/${PN},g' ${D}$fn
diff --git a/poky/meta/recipes-multimedia/gstreamer/gst-examples_1.18.4.bb b/poky/meta/recipes-multimedia/gstreamer/gst-examples_1.18.4.bb
index 4670ab3..9d8fef86 100644
--- a/poky/meta/recipes-multimedia/gstreamer/gst-examples_1.18.4.bb
+++ b/poky/meta/recipes-multimedia/gstreamer/gst-examples_1.18.4.bb
@@ -22,14 +22,14 @@
 
 ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
 
-do_install_append() {
+do_install:append() {
 	install -m 0644 -D ${WORKDIR}/gst-player.desktop ${D}${datadir}/applications/gst-player.desktop
 }
 
-RDEPENDS_${PN} = "gstreamer1.0-plugins-base-playback"
-RRECOMMENDS_${PN} = "gstreamer1.0-plugins-base-meta \
+RDEPENDS:${PN} = "gstreamer1.0-plugins-base-playback"
+RRECOMMENDS:${PN} = "gstreamer1.0-plugins-base-meta \
                      gstreamer1.0-plugins-good-meta \
                      gstreamer1.0-plugins-bad-meta \
                       ${@bb.utils.contains("LICENSE_FLAGS_WHITELIST", "commercial", "gstreamer1.0-libav", "", d)} \
                      ${@bb.utils.contains("LICENSE_FLAGS_WHITELIST", "commercial", "gstreamer1.0-plugins-ugly-meta", "", d)}"
-RPROVIDES_${PN} += "gst-player gst-player-bin"
+RPROVIDES:${PN} += "gst-player gst-player-bin"
diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.18.4.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.18.4.bb
index 6a84f92..0c4f50c 100644
--- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.18.4.bb
+++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.18.4.bb
@@ -20,5 +20,5 @@
 
 inherit meson pkgconfig upstream-version-is-even
 
-FILES_${PN} += "${libdir}/gstreamer-1.0/*.so"
-FILES_${PN}-staticdev += "${libdir}/gstreamer-1.0/*.a"
+FILES:${PN} += "${libdir}/gstreamer-1.0/*.so"
+FILES:${PN}-staticdev += "${libdir}/gstreamer-1.0/*.a"
diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-meta-base.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-meta-base.bb
index 016e176..57a9adb 100644
--- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-meta-base.bb
+++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-meta-base.bb
@@ -18,13 +18,13 @@
     gstreamer1.0-meta-debug \
     gstreamer1.0-meta-video"
 
-ALLOW_EMPTY_gstreamer1.0-meta-base = "1"
-ALLOW_EMPTY_gstreamer1.0-meta-x11-base = "1"
-ALLOW_EMPTY_gstreamer1.0-meta-audio = "1"
-ALLOW_EMPTY_gstreamer1.0-meta-debug = "1"
-ALLOW_EMPTY_gstreamer1.0-meta-video = "1"
+ALLOW_EMPTY:gstreamer1.0-meta-base = "1"
+ALLOW_EMPTY:gstreamer1.0-meta-x11-base = "1"
+ALLOW_EMPTY:gstreamer1.0-meta-audio = "1"
+ALLOW_EMPTY:gstreamer1.0-meta-debug = "1"
+ALLOW_EMPTY:gstreamer1.0-meta-video = "1"
 
-RDEPENDS_gstreamer1.0-meta-base = "\
+RDEPENDS:gstreamer1.0-meta-base = "\
     ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'gstreamer1.0-meta-x11-base', '', d)} \
     gstreamer1.0 \
     gstreamer1.0-plugins-base-playback \
@@ -39,11 +39,11 @@
     gstreamer1.0-plugins-good-autodetect \
     gstreamer1.0-plugins-good-soup"
 
-RRECOMMENDS_gstreamer1.0-meta-x11-base = "\
+RRECOMMENDS:gstreamer1.0-meta-x11-base = "\
     gstreamer1.0-plugins-base-ximagesink \
     gstreamer1.0-plugins-base-xvimagesink"
 
-RDEPENDS_gstreamer1.0-meta-audio = "\
+RDEPENDS:gstreamer1.0-meta-audio = "\
     gstreamer1.0-meta-base \
     gstreamer1.0-plugins-base-vorbis \
     gstreamer1.0-plugins-base-ogg \
@@ -51,18 +51,18 @@
     gstreamer1.0-plugins-good-flac \
     ${COMMERCIAL_AUDIO_PLUGINS}"
 
-RDEPENDS_gstreamer1.0-meta-debug = "\
+RDEPENDS:gstreamer1.0-meta-debug = "\
     gstreamer1.0-meta-base \
     gstreamer1.0-plugins-good-debug \
     gstreamer1.0-plugins-base-audiotestsrc \
     gstreamer1.0-plugins-base-videotestsrc"
 
-RDEPENDS_gstreamer1.0-meta-video = "\
+RDEPENDS:gstreamer1.0-meta-video = "\
     gstreamer1.0-meta-base \
     gstreamer1.0-plugins-good-avi \
     gstreamer1.0-plugins-good-matroska \
     gstreamer1.0-plugins-base-theora \
     ${COMMERCIAL_VIDEO_PLUGINS}"
 
-RRECOMMENDS_gstreamer1.0-meta-video = "\
+RRECOMMENDS:gstreamer1.0-meta-video = "\
     gstreamer1.0-meta-audio"
diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.18.4.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.18.4.bb
index d38be03..7baccfe 100644
--- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.18.4.bb
+++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.18.4.bb
@@ -40,8 +40,8 @@
 }
 do_install[postfuncs] += " set_omx_core_name "
 
-FILES_${PN} += "${libdir}/gstreamer-1.0/*.so"
-FILES_${PN}-staticdev += "${libdir}/gstreamer-1.0/*.a"
+FILES:${PN} += "${libdir}/gstreamer-1.0/*.so"
+FILES:${PN}-staticdev += "${libdir}/gstreamer-1.0/*.a"
 
 VIRTUAL-RUNTIME_libomxil ?= "libomxil"
-RDEPENDS_${PN} = "${VIRTUAL-RUNTIME_libomxil}"
+RDEPENDS:${PN} = "${VIRTUAL-RUNTIME_libomxil}"
diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.18.4.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.18.4.bb
index 96f0139..81c8391 100644
--- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.18.4.bb
+++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.18.4.bb
@@ -145,10 +145,10 @@
 
 export OPENCV_PREFIX = "${STAGING_DIR_TARGET}${prefix}"
 
-ARM_INSTRUCTION_SET_armv4 = "arm"
-ARM_INSTRUCTION_SET_armv5 = "arm"
+ARM_INSTRUCTION_SET:armv4 = "arm"
+ARM_INSTRUCTION_SET:armv5 = "arm"
 
-FILES_${PN}-freeverb += "${datadir}/gstreamer-1.0/presets/GstFreeverb.prs"
-FILES_${PN}-opencv += "${datadir}/gst-plugins-bad/1.0/opencv*"
-FILES_${PN}-transcode += "${datadir}/gstreamer-1.0/encoding-profiles"
-FILES_${PN}-voamrwbenc += "${datadir}/gstreamer-1.0/presets/GstVoAmrwbEnc.prs"
+FILES:${PN}-freeverb += "${datadir}/gstreamer-1.0/presets/GstFreeverb.prs"
+FILES:${PN}-opencv += "${datadir}/gst-plugins-bad/1.0/opencv*"
+FILES:${PN}-transcode += "${datadir}/gstreamer-1.0/encoding-profiles"
+FILES:${PN}-voamrwbenc += "${datadir}/gstreamer-1.0/presets/GstVoAmrwbEnc.prs"
diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.18.4.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.18.4.bb
index 73b433a..90a8d7d 100644
--- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.18.4.bb
+++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.18.4.bb
@@ -78,8 +78,8 @@
     ${@get_opengl_cmdline_list('gl_winsys', d.getVar('OPENGL_WINSYS'), d)} \
 "
 
-FILES_${PN}-dev += "${libdir}/gstreamer-1.0/include/gst/gl/gstglconfig.h"
-FILES_${MLPREFIX}libgsttag-1.0 += "${datadir}/gst-plugins-base/1.0/license-translations.dict"
+FILES:${PN}-dev += "${libdir}/gstreamer-1.0/include/gst/gl/gstglconfig.h"
+FILES:${MLPREFIX}libgsttag-1.0 += "${datadir}/gst-plugins-base/1.0/license-translations.dict"
 
 def get_opengl_cmdline_list(switch_name, options, d):
     selected_options = []
diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-common.inc b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-common.inc
index cb1c9aa..54dd928 100644
--- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-common.inc
+++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-common.inc
@@ -21,7 +21,7 @@
 # workaround to disable orc on mips to fix the build failure
 # {standard input}: Assembler messages:
 # {standard input}:46587: Error: branch out of range
-GSTREAMER_ORC_mips = ""
+GSTREAMER_ORC:mips = ""
 PACKAGECONFIG[orc] = "-Dorc=enabled,-Dorc=disabled,orc orc-native"
 
 # TODO: put this in a gettext.bbclass patch (with variables to allow for
diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.18.4.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.18.4.bb
index c7d31d2..a90594a 100644
--- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.18.4.bb
+++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.18.4.bb
@@ -19,8 +19,8 @@
                     file://gst/replaygain/rganalysis.c;beginline=1;endline=23;md5=b60ebefd5b2f5a8e0cab6bfee391a5fe"
 
 DEPENDS += "gstreamer1.0-plugins-base libcap zlib"
-RPROVIDES_${PN}-pulseaudio += "${PN}-pulse"
-RPROVIDES_${PN}-soup += "${PN}-souphttpsrc"
+RPROVIDES:${PN}-pulseaudio += "${PN}-pulse"
+RPROVIDES:${PN}-soup += "${PN}-souphttpsrc"
 
 PACKAGECONFIG ??= " \
     ${GSTREAMER_ORC} \
@@ -75,4 +75,4 @@
     -Dwaveform=disabled \
 "
 
-FILES_${PN}-equalizer += "${datadir}/gstreamer-1.0/presets/*.prs"
+FILES:${PN}-equalizer += "${datadir}/gstreamer-1.0/presets/*.prs"
diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-packaging.inc b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-packaging.inc
index 5b80a46..e906053 100644
--- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-packaging.inc
+++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-packaging.inc
@@ -9,8 +9,8 @@
 # Dynamically generate packages for all enabled plugins
 PACKAGES_DYNAMIC = "^${PN}-.* ^libgst.*"
 
-PACKAGESPLITFUNCS_prepend = " split_gstreamer10_packages "
-PACKAGESPLITFUNCS_append = " set_gstreamer10_metapkg_rdepends "
+PACKAGESPLITFUNCS:prepend = " split_gstreamer10_packages "
+PACKAGESPLITFUNCS:append = " set_gstreamer10_metapkg_rdepends "
 
 python split_gstreamer10_packages () {
     gst_libdir = d.expand('${libdir}/gstreamer-1.0')
@@ -36,8 +36,8 @@
 
     pn = d.getVar('PN')
     metapkg =  pn + '-meta'
-    d.setVar('ALLOW_EMPTY_' + metapkg, "1")
-    d.setVar('FILES_' + metapkg, "")
+    d.setVar('ALLOW_EMPTY:' + metapkg, "1")
+    d.setVar('FILES:' + metapkg, "")
     blacklist = [ pn, pn + '-meta' ]
     metapkg_rdepends = []
     pkgdest = d.getVar('PKGDEST')
@@ -54,20 +54,20 @@
             is_empty = len(dir_contents) == 0
             if not is_empty:
                 metapkg_rdepends.append(pkg)
-    d.setVar('RDEPENDS_' + metapkg, ' '.join(metapkg_rdepends))
-    d.setVar('DESCRIPTION_' + metapkg, pn + ' meta package')
+    d.setVar('RDEPENDS:' + metapkg, ' '.join(metapkg_rdepends))
+    d.setVar('DESCRIPTION:' + metapkg, pn + ' meta package')
 }
 
 # each plugin-dev depends on PN-dev, plugin-staticdev on PN-staticdev
 # so we need them even when empty (like in gst-plugins-good case)
-ALLOW_EMPTY_${PN} = "1"
-ALLOW_EMPTY_${PN}-dev = "1"
-ALLOW_EMPTY_${PN}-staticdev = "1"
+ALLOW_EMPTY:${PN} = "1"
+ALLOW_EMPTY:${PN}-dev = "1"
+ALLOW_EMPTY:${PN}-staticdev = "1"
 
 PACKAGES += "${PN}-apps ${PN}-meta ${PN}-glib"
 
-FILES_${PN} = ""
-FILES_${PN}-apps = "${bindir}"
-FILES_${PN}-glib = "${datadir}/glib-2.0"
+FILES:${PN} = ""
+FILES:${PN}-apps = "${bindir}"
+FILES:${PN}-glib = "${datadir}/glib-2.0"
 
-RRECOMMENDS_${PN} += "${PN}-meta"
+RRECOMMENDS:${PN} += "${PN}-meta"
diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.18.4.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.18.4.bb
index 932fa7f..817dffe 100644
--- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.18.4.bb
+++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.18.4.bb
@@ -39,5 +39,5 @@
     -Dsidplay=disabled \
 "
 
-FILES_${PN}-amrnb += "${datadir}/gstreamer-1.0/presets/GstAmrnbEnc.prs"
-FILES_${PN}-x264 += "${datadir}/gstreamer-1.0/presets/GstX264Enc.prs"
+FILES:${PN}-amrnb += "${datadir}/gstreamer-1.0/presets/GstAmrnbEnc.prs"
+FILES:${PN}-x264 += "${datadir}/gstreamer-1.0/presets/GstX264Enc.prs"
diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.18.4.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.18.4.bb
index 49de3da..2fd73cb 100644
--- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.18.4.bb
+++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.18.4.bb
@@ -11,7 +11,7 @@
 SRC_URI[sha256sum] = "cb68e08a7e825e08b83a12a22dcd6e4f1b328a7b02a7ac84f42f68f4ddc7098e"
 
 DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base python3-pygobject"
-RDEPENDS_${PN} += "gstreamer1.0 gstreamer1.0-plugins-base python3-pygobject"
+RDEPENDS:${PN} += "gstreamer1.0 gstreamer1.0-plugins-base python3-pygobject"
 
 PNREAL = "gst-python"
 
@@ -21,6 +21,6 @@
 
 # gobject-introspection is mandatory and cannot be configured
 REQUIRED_DISTRO_FEATURES = "gobject-introspection-data"
-UNKNOWN_CONFIGURE_WHITELIST_append = " introspection"
+UNKNOWN_CONFIGURE_WHITELIST:append = " introspection"
 
 inherit meson pkgconfig distutils3-base upstream-version-is-even gobject-introspection features_check
diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.18.4.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.18.4.bb
index a268d79..5c9025f 100644
--- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.18.4.bb
+++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.18.4.bb
@@ -47,7 +47,7 @@
 PACKAGECONFIG[wayland] = "-Dwith_wayland=yes,-Dwith_wayland=no,wayland-native wayland wayland-protocols"
 PACKAGECONFIG[x11] = "-Dwith_x11=yes,-Dwith_x11=no,virtual/libx11 libxrandr libxrender"
 
-FILES_${PN} += "${libdir}/gstreamer-*/*.so"
-FILES_${PN}-dbg += "${libdir}/gstreamer-*/.debug"
-FILES_${PN}-dev += "${libdir}/gstreamer-*/*.a"
-FILES_${PN}-tests = "${bindir}/*"
+FILES:${PN} += "${libdir}/gstreamer-*/*.so"
+FILES:${PN}-dbg += "${libdir}/gstreamer-*/.debug"
+FILES:${PN}-dev += "${libdir}/gstreamer-*/*.a"
+FILES:${PN}-tests = "${bindir}/*"
diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.18.4.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.18.4.bb
index 8f135b3..ee41832 100644
--- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.18.4.bb
+++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.18.4.bb
@@ -65,10 +65,10 @@
 PACKAGES += "${PN}-bash-completion"
 
 # Add the core element plugins to the main package
-FILES_${PN} += "${libdir}/gstreamer-1.0/*.so"
-FILES_${PN}-dev += "${libdir}/gstreamer-1.0/*.a ${libdir}/gstreamer-1.0/include"
-FILES_${PN}-bash-completion += "${datadir}/bash-completion/completions/ ${datadir}/bash-completion/helpers/gst*"
-FILES_${PN}-dbg += "${datadir}/gdb ${datadir}/gstreamer-1.0/gdb"
+FILES:${PN} += "${libdir}/gstreamer-1.0/*.so"
+FILES:${PN}-dev += "${libdir}/gstreamer-1.0/*.a ${libdir}/gstreamer-1.0/include"
+FILES:${PN}-bash-completion += "${datadir}/bash-completion/completions/ ${datadir}/bash-completion/helpers/gst*"
+FILES:${PN}-dbg += "${datadir}/gdb ${datadir}/gstreamer-1.0/gdb"
 
 CVE_PRODUCT = "gstreamer"
 
diff --git a/poky/meta/recipes-multimedia/lame/lame_3.100.bb b/poky/meta/recipes-multimedia/lame/lame_3.100.bb
index d007e0a..4927c9f 100644
--- a/poky/meta/recipes-multimedia/lame/lame_3.100.bb
+++ b/poky/meta/recipes-multimedia/lame/lame_3.100.bb
@@ -20,7 +20,7 @@
 inherit autotools pkgconfig
 
 PACKAGES += "libmp3lame libmp3lame-dev"
-FILES_${PN} = "${bindir}/lame"
-FILES_libmp3lame = "${libdir}/libmp3lame.so.*"
-FILES_libmp3lame-dev = "${includedir} ${libdir}/*"
-FILES_${PN}-dev = ""
+FILES:${PN} = "${bindir}/lame"
+FILES:libmp3lame = "${libdir}/libmp3lame.so.*"
+FILES:libmp3lame-dev = "${includedir} ${libdir}/*"
+FILES:${PN}-dev = ""
diff --git a/poky/meta/recipes-multimedia/liba52/liba52_0.7.4.bb b/poky/meta/recipes-multimedia/liba52/liba52_0.7.4.bb
index 0ef5d94..ea16270 100644
--- a/poky/meta/recipes-multimedia/liba52/liba52_0.7.4.bb
+++ b/poky/meta/recipes-multimedia/liba52/liba52_0.7.4.bb
@@ -25,5 +25,5 @@
 
 PACKAGES =+ "a52dec a52dec-doc"
 
-FILES_a52dec = " ${bindir}/* "
-FILES_a52dec-doc = " ${mandir}/man1/* "
+FILES:a52dec = " ${bindir}/* "
+FILES:a52dec-doc = " ${mandir}/man1/* "
diff --git a/poky/meta/recipes-multimedia/libomxil/libomxil_0.9.3.bb b/poky/meta/recipes-multimedia/libomxil/libomxil_0.9.3.bb
index 82cdaf5..864d6bb 100644
--- a/poky/meta/recipes-multimedia/libomxil/libomxil_0.9.3.bb
+++ b/poky/meta/recipes-multimedia/libomxil/libomxil_0.9.3.bb
@@ -36,10 +36,10 @@
 # The .so files under ${libdir}/bellagio are not intended to be versioned and symlinked.
 # Make sure they get packaged in the main package.
 #
-FILES_${PN} += "${libdir}/bellagio/*.so \
+FILES:${PN} += "${libdir}/bellagio/*.so \
                 ${libdir}/omxloaders/*${SOLIBS}"
-FILES_${PN}-staticdev += "${libdir}/bellagio/*.a \
+FILES:${PN}-staticdev += "${libdir}/bellagio/*.a \
                           ${libdir}/omxloaders/*.a"
-FILES_${PN}-dev += "${libdir}/bellagio/*.la \
+FILES:${PN}-dev += "${libdir}/bellagio/*.la \
                     ${libdir}/omxloaders/*.la \
                     ${libdir}/omxloaders/*${SOLIBSDEV}"
diff --git a/poky/meta/recipes-multimedia/libpng/libpng_1.6.37.bb b/poky/meta/recipes-multimedia/libpng/libpng_1.6.37.bb
index 0b0af75..7791b0e 100644
--- a/poky/meta/recipes-multimedia/libpng/libpng_1.6.37.bb
+++ b/poky/meta/recipes-multimedia/libpng/libpng_1.6.37.bb
@@ -23,11 +23,11 @@
 inherit autotools binconfig-disabled pkgconfig
 
 # Work around missing symbols
-EXTRA_OECONF_append_class-target = " ${@bb.utils.contains("TUNE_FEATURES", "neon", "--enable-arm-neon=on", "--enable-arm-neon=off", d)}"
+EXTRA_OECONF:append:class-target = " ${@bb.utils.contains("TUNE_FEATURES", "neon", "--enable-arm-neon=on", "--enable-arm-neon=off", d)}"
 
 PACKAGES =+ "${PN}-tools"
 
-FILES_${PN}-tools = "${bindir}/png-fix-itxt ${bindir}/pngfix ${bindir}/pngcp"
+FILES:${PN}-tools = "${bindir}/png-fix-itxt ${bindir}/pngfix ${bindir}/pngcp"
 
 BBCLASSEXTEND = "native nativesdk"
 
diff --git a/poky/meta/recipes-multimedia/libsndfile/libsndfile1_1.0.28.bb b/poky/meta/recipes-multimedia/libsndfile/libsndfile1_1.0.28.bb
index 044881a..443ca95 100644
--- a/poky/meta/recipes-multimedia/libsndfile/libsndfile1_1.0.28.bb
+++ b/poky/meta/recipes-multimedia/libsndfile/libsndfile1_1.0.28.bb
@@ -37,7 +37,7 @@
 
 inherit autotools lib_package pkgconfig multilib_header
 
-do_install_append() {
+do_install:append() {
     oe_multilib_header sndfile.h
 }
 
diff --git a/poky/meta/recipes-multimedia/libtiff/tiff_4.3.0.bb b/poky/meta/recipes-multimedia/libtiff/tiff_4.3.0.bb
index 8f929ff..6852758 100644
--- a/poky/meta/recipes-multimedia/libtiff/tiff_4.3.0.bb
+++ b/poky/meta/recipes-multimedia/libtiff/tiff_4.3.0.bb
@@ -47,10 +47,10 @@
 PACKAGECONFIG[chunky-strip-read] = "--enable-chunky-strip-read,--disable-chunky-strip-read,,"
 
 PACKAGES =+ "tiffxx tiff-utils"
-FILES_tiffxx = "${libdir}/libtiffxx.so.*"
-FILES_tiff-utils = "${bindir}/*"
+FILES:tiffxx = "${libdir}/libtiffxx.so.*"
+FILES:tiff-utils = "${bindir}/*"
 
-do_install_append() {
+do_install:append() {
     oe_multilib_header tiffconf.h
 }
 
diff --git a/poky/meta/recipes-multimedia/mpeg2dec/mpeg2dec_0.5.1.bb b/poky/meta/recipes-multimedia/mpeg2dec/mpeg2dec_0.5.1.bb
index d603602..ee4b754 100644
--- a/poky/meta/recipes-multimedia/mpeg2dec/mpeg2dec_0.5.1.bb
+++ b/poky/meta/recipes-multimedia/mpeg2dec/mpeg2dec_0.5.1.bb
@@ -34,18 +34,18 @@
 
 PACKAGES = "mpeg2dec-dbg mpeg2dec mpeg2dec-doc libmpeg2 libmpeg2-dev libmpeg2convert libmpeg2convert-dev libmpeg2-staticdev libmpeg2convert-staticdev"
 
-FILES_${PN} = "${bindir}/*"
-FILES_libmpeg2 = "${libdir}/libmpeg2.so.*"
-FILES_libmpeg2convert = "${libdir}/libmpeg2convert.so.*"
-FILES_libmpeg2-dev = "${libdir}/libmpeg2.so \
+FILES:${PN} = "${bindir}/*"
+FILES:libmpeg2 = "${libdir}/libmpeg2.so.*"
+FILES:libmpeg2convert = "${libdir}/libmpeg2convert.so.*"
+FILES:libmpeg2-dev = "${libdir}/libmpeg2.so \
                       ${libdir}/libmpeg2.la \
                       ${libdir}/libmpeg2arch.la \
                       ${libdir}/pkgconfig/libmpeg2.pc \
                       ${includedir}/mpeg2dec/mpeg2.h"
-FILES_libmpeg2-staticdev = "${libdir}/libmpeg2.a"
-FILES_libmpeg2convert-dev = "${libdir}/libmpeg2convert.so \
+FILES:libmpeg2-staticdev = "${libdir}/libmpeg2.a"
+FILES:libmpeg2convert-dev = "${libdir}/libmpeg2convert.so \
                              ${libdir}/libmpeg2convert.la \
                              ${libdir}/libmpeg2convertarch.la \
                              ${libdir}/pkgconfig/libmpeg2convert.pc \
                              ${includedir}/mpeg2dec/mpeg2convert.h"
-FILES_libmpeg2convert-staticdev = "${libdir}/libmpeg2convert.a"
+FILES:libmpeg2convert-staticdev = "${libdir}/libmpeg2convert.a"
diff --git a/poky/meta/recipes-multimedia/mpg123/mpg123_1.28.2.bb b/poky/meta/recipes-multimedia/mpg123/mpg123_1.28.2.bb
index ebe11d4..896162a 100644
--- a/poky/meta/recipes-multimedia/mpg123/mpg123_1.28.2.bb
+++ b/poky/meta/recipes-multimedia/mpg123/mpg123_1.28.2.bb
@@ -48,5 +48,5 @@
 #| {standard input}:48: Error: shifts in CMP/MOV instructions are only supported in unified syntax -- `mov r5,r5,lsr#24'
 #...
 #| make[3]: *** [equalizer.lo] Error 1
-ARM_INSTRUCTION_SET_armv4 = "arm"
-ARM_INSTRUCTION_SET_armv5 = "arm"
+ARM_INSTRUCTION_SET:armv4 = "arm"
+ARM_INSTRUCTION_SET:armv5 = "arm"
diff --git a/poky/meta/recipes-multimedia/pulseaudio/pulseaudio.inc b/poky/meta/recipes-multimedia/pulseaudio/pulseaudio.inc
index 4e226c6..2fb1077 100644
--- a/poky/meta/recipes-multimedia/pulseaudio/pulseaudio.inc
+++ b/poky/meta/recipes-multimedia/pulseaudio/pulseaudio.inc
@@ -133,20 +133,20 @@
 	fi
 }
 
-do_compile_append () {
+do_compile:append () {
 	if ${@bb.utils.contains('PACKAGECONFIG', 'autospawn-for-root', 'true', 'false', d)}; then
 		set_cfg_value src/pulse/client.conf allow-autospawn-for-root yes
 	fi
 }
 
-do_install_append() {
+do_install:append() {
 	install -d ${D}${sysconfdir}/default/volatiles
 	install -m 0644 ${WORKDIR}/volatiles.04_pulse  ${D}${sysconfdir}/default/volatiles/04_pulse
 }
 
 USERADD_PACKAGES = "pulseaudio-server"
-GROUPADD_PARAM_pulseaudio-server = "--system pulse"
-USERADD_PARAM_pulseaudio-server = "--system --home /var/run/pulse \
+GROUPADD_PARAM:pulseaudio-server = "--system pulse"
+USERADD_PARAM:pulseaudio-server = "--system --home /var/run/pulse \
                               --no-create-home --shell /bin/false \
                               --groups audio,pulse --gid pulse pulse"
 
@@ -168,49 +168,49 @@
 PACKAGES =+ "${@bb.utils.contains('PACKAGECONFIG', 'dbus', 'pulseaudio-module-console-kit', '', d)}"
 
 #upgrade path:
-RREPLACES_pulseaudio-server = "libpulse-bin libpulse-conf"
+RREPLACES:pulseaudio-server = "libpulse-bin libpulse-conf"
 
 PACKAGES_DYNAMIC += "^pulseaudio-lib-.* ^pulseaudio-module-.*"
 
-FILES_libpulsecore = "${libdir}/pulseaudio/libpulsecore*.so"
-FILES_libpulsecommon = "${libdir}/pulseaudio/libpulsecommon*.so"
+FILES:libpulsecore = "${libdir}/pulseaudio/libpulsecore*.so"
+FILES:libpulsecommon = "${libdir}/pulseaudio/libpulsecommon*.so"
 
 # client.conf configures the behaviour of libpulse, so it belongs in the same
 # package.
-FILES_libpulse = "${libdir}/libpulse.so.* ${sysconfdir}/pulse/client.conf"
+FILES:libpulse = "${libdir}/libpulse.so.* ${sysconfdir}/pulse/client.conf"
 
-FILES_libpulse-simple = "${libdir}/libpulse-simple.so.*"
-FILES_libpulse-mainloop-glib = "${libdir}/libpulse-mainloop-glib.so.*"
+FILES:libpulse-simple = "${libdir}/libpulse-simple.so.*"
+FILES:libpulse-mainloop-glib = "${libdir}/libpulse-mainloop-glib.so.*"
 
-FILES_${PN}-dev += "${libdir}/pulse-${PV}/modules/*.la ${datadir}/vala"
-FILES_${PN}-bin += "${sysconfdir}/default/volatiles/04_pulse"
-FILES_${PN}-pa-info = "${bindir}/pa-info"
-FILES_${PN}-server = "${bindir}/pulseaudio ${bindir}/start-* ${sysconfdir} ${bindir}/pactl */udev/rules.d/*.rules */*/udev/rules.d/*.rules ${systemd_user_unitdir}/*"
+FILES:${PN}-dev += "${libdir}/pulse-${PV}/modules/*.la ${datadir}/vala"
+FILES:${PN}-bin += "${sysconfdir}/default/volatiles/04_pulse"
+FILES:${PN}-pa-info = "${bindir}/pa-info"
+FILES:${PN}-server = "${bindir}/pulseaudio ${bindir}/start-* ${sysconfdir} ${bindir}/pactl */udev/rules.d/*.rules */*/udev/rules.d/*.rules ${systemd_user_unitdir}/*"
 
 #SYSTEMD_PACKAGES = "${PN}-server"
-SYSTEMD_SERVICE_${PN}-server = "pulseaudio.service"
+SYSTEMD_SERVICE:${PN}-server = "pulseaudio.service"
 
-FILES_${PN}-misc = "${bindir}/* ${libdir}/pulseaudio/libpulsedsp.so"
+FILES:${PN}-misc = "${bindir}/* ${libdir}/pulseaudio/libpulsedsp.so"
 
 # Allow the pulseaudio package to be created empty as a placeholder (-dbg and -dev depend on it)
-FILES_${PN} = ""
-ALLOW_EMPTY_${PN} = "1"
+FILES:${PN} = ""
+ALLOW_EMPTY:${PN} = "1"
 
-CONFFILES_libpulse = "${sysconfdir}/pulse/client.conf"
+CONFFILES:libpulse = "${sysconfdir}/pulse/client.conf"
 
-CONFFILES_pulseaudio-server = "\ 
+CONFFILES:pulseaudio-server = "\ 
   ${sysconfdir}/pulse/default.pa \
   ${sysconfdir}/pulse/daemon.conf \
   ${sysconfdir}/pulse/system.pa \
   "
 
-pkg_postinst_${PN}-server() {
+pkg_postinst:${PN}-server() {
         if [ -z "$D" ] && [ -e ${sysconfdir}/init.d/populate-volatile.sh ] ; then
             ${sysconfdir}/init.d/populate-volatile.sh update
         fi
 }
 
-python populate_packages_prepend() {
+python populate_packages:prepend() {
     plugindir = d.expand('${libdir}/pulse-${PV}/modules/')
     do_split_packages(d, plugindir, r'^module-(.*)\.so$', '${PN}-module-%s', 'PulseAudio module for %s', extra_depends='', prepend=True)
     do_split_packages(d, plugindir, r'^lib(.*)\.so$', '${PN}-lib-%s', 'PulseAudio library for %s', extra_depends='', prepend=True)
@@ -218,7 +218,7 @@
 
 # pa-info is a bash script that collects information about the audio setup.
 # It's primarily useful for attaching an information dump when reporting bugs.
-RDEPENDS_${PN}-pa-info = "\
+RDEPENDS:${PN}-pa-info = "\
                           alsa-utils-amixer \
                           alsa-utils-aplay \
                           alsa-utils-scripts \
@@ -226,7 +226,7 @@
                           ${PN}-server \
                           "
 
-RDEPENDS_pulseaudio-server = " \
+RDEPENDS:pulseaudio-server = " \
     pulseaudio-module-filter-apply \
     pulseaudio-module-filter-heuristics \
     pulseaudio-module-udev-detect \
@@ -252,23 +252,23 @@
 # If the server is installed, it's usually desirable to make ALSA applications
 # use PulseAudio. alsa-plugins-pulseaudio-conf will install the configuration
 # that makes the PulseAudio plugin the default ALSA device.
-RDEPENDS_pulseaudio-server += "alsa-plugins-pulseaudio-conf"
+RDEPENDS:pulseaudio-server += "alsa-plugins-pulseaudio-conf"
 
 # pulseaudio-module-console-kit is built whenever dbus is enabled by PACKAGECONFIG
 # but consolekit depends on libx11 and is available only for DISTRO with x11 in DISTRO_FEATURES
-RDEPENDS_pulseaudio-module-console-kit =+ "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'consolekit', '', d)}"
-RDEPENDS_pulseaudio-misc += "pulseaudio-module-cli-protocol-unix"
+RDEPENDS:pulseaudio-module-console-kit =+ "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'consolekit', '', d)}"
+RDEPENDS:pulseaudio-misc += "pulseaudio-module-cli-protocol-unix"
 
-FILES_${PN}-module-alsa-card += "${datadir}/pulseaudio/alsa-mixer"
+FILES:${PN}-module-alsa-card += "${datadir}/pulseaudio/alsa-mixer"
 
 GSETTINGS_PACKAGE = "${@bb.utils.contains('PACKAGECONFIG', 'gsettings', '${PN}-module-gsettings', '', d)}"
-FILES_${PN}-module-gsettings += "${libexecdir}/pulse/gsettings-helper ${datadir}/GConf/gsettings ${datadir}/glib-2.0/schemas"
+FILES:${PN}-module-gsettings += "${libexecdir}/pulse/gsettings-helper ${datadir}/GConf/gsettings ${datadir}/glib-2.0/schemas"
 
 # The console-kit module is good to have on X11 systems (it keeps PulseAudio
 # running for the duration of the user login session). The device-manager and
 # x11-* modules are referenced from the start-pulseaudio-x11 script, so those
 # modules must be installed when X11 is enabled.
-RDEPENDS_pulseaudio-server += "\
+RDEPENDS:pulseaudio-server += "\
         ${@bb.utils.contains('DISTRO_FEATURES', 'x11', '\
                 pulseaudio-module-device-manager \
                 pulseaudio-module-x11-cork-request \
@@ -276,6 +276,6 @@
                 pulseaudio-module-x11-xsmp \
         ', '', d)}"
 
-RDEPENDS_pulseaudio-server += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', \
+RDEPENDS:pulseaudio-server += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', \
                                   bb.utils.contains('DISTRO_FEATURES', 'systemd', 'pulseaudio-module-systemd-login', 'pulseaudio-module-console-kit', d), \
                                   '', d)}"
diff --git a/poky/meta/recipes-multimedia/sbc/sbc_1.5.bb b/poky/meta/recipes-multimedia/sbc/sbc_1.5.bb
index 04d8232..13bba6b 100644
--- a/poky/meta/recipes-multimedia/sbc/sbc_1.5.bb
+++ b/poky/meta/recipes-multimedia/sbc/sbc_1.5.bb
@@ -3,8 +3,8 @@
 HOMEPAGE = "https://www.bluez.org"
 SECTION = "libs"
 LICENSE = "GPLv2+ & LGPLv2.1+"
-LICENSE_${PN} = "LGPLv2.1+"
-LICENSE_${PN}-examples = "GPLv2+"
+LICENSE:${PN} = "LGPLv2.1+"
+LICENSE:${PN}-examples = "GPLv2+"
 LIC_FILES_CHKSUM = "file://COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e \
                     file://COPYING.LIB;md5=fb504b67c50331fc78734fed90fb0e09 \
                     file://src/sbcenc.c;beginline=1;endline=24;md5=08e7a70b127f4100ff2cd7d629147d8d \
@@ -21,4 +21,4 @@
 inherit autotools pkgconfig
 
 PACKAGES =+ "${PN}-examples"
-FILES_${PN}-examples += "${bindir}/*"
+FILES:${PN}-examples += "${bindir}/*"
diff --git a/poky/meta/recipes-multimedia/speex/speexdsp_1.2.0.bb b/poky/meta/recipes-multimedia/speex/speexdsp_1.2.0.bb
index 6369646..bb7bc9a 100644
--- a/poky/meta/recipes-multimedia/speex/speexdsp_1.2.0.bb
+++ b/poky/meta/recipes-multimedia/speex/speexdsp_1.2.0.bb
@@ -21,7 +21,7 @@
 
 # speexdsp was split off from speex in 1.2rc2. Older versions of speex can't
 # be installed together with speexdsp, since they contain overlapping files.
-RCONFLICTS_${PN} = "speex (< 1.2rc2)"
-RCONFLICTS_${PN}-dbg = "speex-dbg (< 1.2rc2)"
-RCONFLICTS_${PN}-dev = "speex-dev (< 1.2rc2)"
-RCONFLICTS_${PN}-staticdev = "speex-staticdev (< 1.2rc2)"
+RCONFLICTS:${PN} = "speex (< 1.2rc2)"
+RCONFLICTS:${PN}-dbg = "speex-dbg (< 1.2rc2)"
+RCONFLICTS:${PN}-dev = "speex-dev (< 1.2rc2)"
+RCONFLICTS:${PN}-staticdev = "speex-staticdev (< 1.2rc2)"
diff --git a/poky/meta/recipes-multimedia/webp/libwebp_1.2.0.bb b/poky/meta/recipes-multimedia/webp/libwebp_1.2.0.bb
index 33bec2f..9a3b5cd 100644
--- a/poky/meta/recipes-multimedia/webp/libwebp_1.2.0.bb
+++ b/poky/meta/recipes-multimedia/webp/libwebp_1.2.0.bb
@@ -30,8 +30,8 @@
 EXTRA_OECONF_ARM = " \
     ${@bb.utils.contains("TUNE_FEATURES","neon","--enable-neon","--disable-neon",d)} \
 "
-EXTRA_OECONF_append_arm = " ${EXTRA_OECONF_ARM}"
-EXTRA_OECONF_append_armeb = " ${EXTRA_OECONF_ARM}"
+EXTRA_OECONF:append:arm = " ${EXTRA_OECONF_ARM}"
+EXTRA_OECONF:append:armeb = " ${EXTRA_OECONF_ARM}"
 
 inherit autotools lib_package
 
@@ -51,5 +51,5 @@
 
 PACKAGES =+ "${PN}-gif2webp"
 
-DESCRIPTION_${PN}-gif2webp = "Simple tool to convert animated GIFs to WebP"
-FILES_${PN}-gif2webp = "${bindir}/gif2webp"
+DESCRIPTION:${PN}-gif2webp = "Simple tool to convert animated GIFs to WebP"
+FILES:${PN}-gif2webp = "${bindir}/gif2webp"
diff --git a/poky/meta/recipes-multimedia/x264/x264_git.bb b/poky/meta/recipes-multimedia/x264/x264_git.bb
index 902396e..9f23794 100644
--- a/poky/meta/recipes-multimedia/x264/x264_git.bb
+++ b/poky/meta/recipes-multimedia/x264/x264_git.bb
@@ -23,11 +23,11 @@
 inherit lib_package pkgconfig
 
 X264_DISABLE_ASM = ""
-X264_DISABLE_ASM_x86 = "--disable-asm"
-X264_DISABLE_ASM_armv4 = "--disable-asm"
-X264_DISABLE_ASM_armv5 = "--disable-asm"
-X264_DISABLE_ASM_powerpc = "${@bb.utils.contains("TUNE_FEATURES", "spe", "--disable-asm", "", d)}"
-X264_DISABLE_ASM_mipsarch = "${@bb.utils.contains("TUNE_FEATURES", "r6", "", "--disable-asm", d)}"
+X264_DISABLE_ASM:x86 = "--disable-asm"
+X264_DISABLE_ASM:armv4 = "--disable-asm"
+X264_DISABLE_ASM:armv5 = "--disable-asm"
+X264_DISABLE_ASM:powerpc = "${@bb.utils.contains("TUNE_FEATURES", "spe", "--disable-asm", "", d)}"
+X264_DISABLE_ASM:mipsarch = "${@bb.utils.contains("TUNE_FEATURES", "r6", "", "--disable-asm", d)}"
 
 EXTRA_OECONF = '--prefix=${prefix} \
                 --host=${HOST_SYS} \
diff --git a/poky/meta/recipes-rt/rt-tests/hwlatdetect_git.bb b/poky/meta/recipes-rt/rt-tests/hwlatdetect_git.bb
index 5f61c4e..14e319a 100644
--- a/poky/meta/recipes-rt/rt-tests/hwlatdetect_git.bb
+++ b/poky/meta/recipes-rt/rt-tests/hwlatdetect_git.bb
@@ -21,6 +21,6 @@
         sed -i -e '1s,#!.*python.*,#!${bindir}/python3,' ${D}${libdir}/python${PYTHON_BASEVERSION}/dist-packages/hwlatdetect.py
 }
 
-FILES_${PN} += "${libdir}/python${PYTHON_BASEVERSION}/dist-packages/hwlatdetect.py"
-RDEPENDS_${PN} = "python3-core "
-RRECOMMENDS_${PN} = "kernel-module-hwlat-detector"
+FILES:${PN} += "${libdir}/python${PYTHON_BASEVERSION}/dist-packages/hwlatdetect.py"
+RDEPENDS:${PN} = "python3-core "
+RRECOMMENDS:${PN} = "kernel-module-hwlat-detector"
diff --git a/poky/meta/recipes-rt/rt-tests/rt-tests_git.bb b/poky/meta/recipes-rt/rt-tests/rt-tests_git.bb
index 89e3323..e86f792 100644
--- a/poky/meta/recipes-rt/rt-tests/rt-tests_git.bb
+++ b/poky/meta/recipes-rt/rt-tests/rt-tests_git.bb
@@ -16,7 +16,7 @@
            "
 
 # rt-tests needs PI mutex support in libc
-COMPATIBLE_HOST_libc-musl = 'null'
+COMPATIBLE_HOST:libc-musl = 'null'
 
 # Do not install hwlatdetect
 EXTRA_OEMAKE += "PYLIB=''"
@@ -30,7 +30,7 @@
         cp ${WORKDIR}/rt_bmark.py ${D}${PTEST_PATH}
 }
 
-RDEPENDS_${PN}-ptest += " stress-ng python3 python3-multiprocessing python3-datetime python3-misc"
+RDEPENDS:${PN}-ptest += " stress-ng python3 python3-multiprocessing python3-datetime python3-misc"
 
-FILES_${PN} += "${prefix}/src/backfire"
-RDEPENDS_${PN} += "bash"
+FILES:${PN} += "${prefix}/src/backfire"
+RDEPENDS:${PN} += "bash"
diff --git a/poky/meta/recipes-sato/images/core-image-sato.bb b/poky/meta/recipes-sato/images/core-image-sato.bb
index e50b24a..35d0667 100644
--- a/poky/meta/recipes-sato/images/core-image-sato.bb
+++ b/poky/meta/recipes-sato/images/core-image-sato.bb
@@ -9,8 +9,8 @@
 
 inherit core-image
 
-TOOLCHAIN_HOST_TASK_append = " nativesdk-intltool nativesdk-glib-2.0"
-TOOLCHAIN_HOST_TASK_remove_task-populate-sdk-ext = " nativesdk-intltool nativesdk-glib-2.0"
+TOOLCHAIN_HOST_TASK:append = " nativesdk-intltool nativesdk-glib-2.0"
+TOOLCHAIN_HOST_TASK:remove:task-populate-sdk-ext = " nativesdk-intltool nativesdk-glib-2.0"
 
 QB_MEM = '${@bb.utils.contains("DISTRO_FEATURES", "opengl", "-m 512", "-m 256", d)}'
-QB_MEM_qemumips = "-m 256"
+QB_MEM:qemumips = "-m 256"
diff --git a/poky/meta/recipes-sato/l3afpad/l3afpad_git.bb b/poky/meta/recipes-sato/l3afpad/l3afpad_git.bb
index 85c2c50..f19d038 100644
--- a/poky/meta/recipes-sato/l3afpad/l3afpad_git.bb
+++ b/poky/meta/recipes-sato/l3afpad/l3afpad_git.bb
@@ -26,4 +26,4 @@
 ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
 
 EXTRA_OECONF = "--disable-emacs --disable-print"
-FILES_${PN} += "${datadir}/icons"
+FILES:${PN} += "${datadir}/icons"
diff --git a/poky/meta/recipes-sato/matchbox-config-gtk/matchbox-config-gtk_0.2.bb b/poky/meta/recipes-sato/matchbox-config-gtk/matchbox-config-gtk_0.2.bb
index 547e851..d5fe9b5 100644
--- a/poky/meta/recipes-sato/matchbox-config-gtk/matchbox-config-gtk_0.2.bb
+++ b/poky/meta/recipes-sato/matchbox-config-gtk/matchbox-config-gtk_0.2.bb
@@ -7,7 +7,7 @@
                     file://appearance/mb-appearance.c;endline=25;md5=ea92333cf8a6802639d62d874c114a28"
 
 DEPENDS = "gconf gtk+3"
-RDEPENDS_${PN} = "settings-daemon"
+RDEPENDS:${PN} = "settings-daemon"
 
 # SRCREV tagged 0.2
 SRCREV = "ef2192ce98d9374ffdad5f78544c3f8f353c16aa"
diff --git a/poky/meta/recipes-sato/matchbox-desktop/matchbox-desktop_2.2.bb b/poky/meta/recipes-sato/matchbox-desktop/matchbox-desktop_2.2.bb
index d775b5c..79ccb03 100644
--- a/poky/meta/recipes-sato/matchbox-desktop/matchbox-desktop_2.2.bb
+++ b/poky/meta/recipes-sato/matchbox-desktop/matchbox-desktop_2.2.bb
@@ -26,9 +26,9 @@
 # The startup-notification requires x11 in DISTRO_FEATURES
 REQUIRED_DISTRO_FEATURES = "x11"
 
-do_install_append() {
+do_install:append() {
     install -d ${D}${datadir}/matchbox/vfolders/
     install -m 0644 ${WORKDIR}/vfolders/* ${D}${datadir}/matchbox/vfolders/
 }
 
-FILES_${PN} += "${datadir}/matchbox/vfolders/"
+FILES:${PN} += "${datadir}/matchbox/vfolders/"
diff --git a/poky/meta/recipes-sato/matchbox-keyboard/matchbox-keyboard_0.1.1.bb b/poky/meta/recipes-sato/matchbox-keyboard/matchbox-keyboard_0.1.1.bb
index 49e37bd..a878411 100644
--- a/poky/meta/recipes-sato/matchbox-keyboard/matchbox-keyboard_0.1.1.bb
+++ b/poky/meta/recipes-sato/matchbox-keyboard/matchbox-keyboard_0.1.1.bb
@@ -33,19 +33,19 @@
 
 PACKAGES += "${PN}-im ${PN}-applet"
 
-FILES_${PN} = "${bindir}/ \
+FILES:${PN} = "${bindir}/ \
 	       ${sysconfdir} \
 	       ${datadir}/applications \
 	       ${datadir}/pixmaps \
 	       ${datadir}/matchbox-keyboard"
 
-FILES_${PN}-im = "${libdir}/gtk-2.0/*/immodules/*.so \
+FILES:${PN}-im = "${libdir}/gtk-2.0/*/immodules/*.so \
                   ${libdir}/gtk-3.0/*/immodules/*.so"
 
-FILES_${PN}-applet = "${libdir}/matchbox-panel/*.so"
+FILES:${PN}-applet = "${libdir}/matchbox-panel/*.so"
 
 
-do_install_append () {
+do_install:append () {
 	install -d ${D}/${sysconfdir}/X11/Xsession.d/
 	install -m 755 ${WORKDIR}/80matchboxkeyboard.sh ${D}/${sysconfdir}/X11/Xsession.d/
 
@@ -56,5 +56,5 @@
 
 GTKIMMODULES_PACKAGES = "${PN}-im"
 
-RDEPENDS_${PN} = "formfactor dbus-wait"
-RRECOMMENDS_${PN} = "${PN}-applet"
+RDEPENDS:${PN} = "formfactor dbus-wait"
+RRECOMMENDS:${PN} = "${PN}-applet"
diff --git a/poky/meta/recipes-sato/matchbox-panel-2/matchbox-panel-2_2.11.bb b/poky/meta/recipes-sato/matchbox-panel-2/matchbox-panel-2_2.11.bb
index c659964..c6de14e 100644
--- a/poky/meta/recipes-sato/matchbox-panel-2/matchbox-panel-2_2.11.bb
+++ b/poky/meta/recipes-sato/matchbox-panel-2/matchbox-panel-2_2.11.bb
@@ -19,9 +19,9 @@
 # SRCREV tagged 2.11 plus some autotools fixes
 SRCREV = "f82ca3f42510fb3ef10f598b393eb373a2c34ca7"
 
-RPROVIDES_${PN} = "matchbox-panel"
-RREPLACES_${PN} = "matchbox-panel"
-RCONFLICTS_${PN} = "matchbox-panel"
+RPROVIDES:${PN} = "matchbox-panel"
+RREPLACES:${PN} = "matchbox-panel"
+RCONFLICTS:${PN} = "matchbox-panel"
 
 SRC_URI = "git://git.yoctoproject.org/${BPN} \
            file://0001-applets-systray-Allow-icons-to-be-smaller.patch \
@@ -33,10 +33,10 @@
 
 S = "${WORKDIR}/git"
 
-FILES_${PN} += "${libdir}/matchbox-panel/*.so \
+FILES:${PN} += "${libdir}/matchbox-panel/*.so \
                 ${datadir}/matchbox-panel/brightness/*.png \
                 ${datadir}/matchbox-panel/startup/*.png \
                 ${datadir}/icons/"
-FILES_${PN}-dev += "${libdir}/matchbox-panel/*.la"
+FILES:${PN}-dev += "${libdir}/matchbox-panel/*.la"
 
 inherit autotools pkgconfig features_check gettext
diff --git a/poky/meta/recipes-sato/matchbox-sato/matchbox-session-sato_0.1.bb b/poky/meta/recipes-sato/matchbox-sato/matchbox-session-sato_0.1.bb
index 966c5b5..7af11c2 100644
--- a/poky/meta/recipes-sato/matchbox-sato/matchbox-session-sato_0.1.bb
+++ b/poky/meta/recipes-sato/matchbox-sato/matchbox-session-sato_0.1.bb
@@ -6,7 +6,7 @@
 LIC_FILES_CHKSUM = "file://session;endline=3;md5=f8a5c5b9c279e52dc094d10e11c2be63"
 
 SECTION = "x11"
-RDEPENDS_${PN} = "formfactor matchbox-theme-sato matchbox-panel-2 matchbox-desktop matchbox-session gconf"
+RDEPENDS:${PN} = "formfactor matchbox-theme-sato matchbox-panel-2 matchbox-desktop matchbox-session gconf"
 PR = "r30"
 
 # This package is architecture specific because the session script is modified
@@ -22,7 +22,7 @@
            file://index.theme"
 S = "${WORKDIR}"
 
-FILES_${PN} += "${datadir}/themes/Sato/index.theme"
+FILES:${PN} += "${datadir}/themes/Sato/index.theme"
 
 do_install() {
 	# This is the set of machine features that the script has markers for
@@ -43,7 +43,7 @@
 }
 
 PACKAGE_WRITE_DEPS += "gconf-native"
-pkg_postinst_${PN} () {
+pkg_postinst:${PN} () {
 	set_value() {
 		#type, name, value
 		gconftool-2 --config-source=xml::$D${sysconfdir}/gconf/gconf.xml.defaults --direct --type $1 --set /desktop/poky/interface/$2 "$3"
diff --git a/poky/meta/recipes-sato/matchbox-theme-sato/matchbox-theme-sato.inc b/poky/meta/recipes-sato/matchbox-theme-sato/matchbox-theme-sato.inc
index ce683e9..bd68011 100644
--- a/poky/meta/recipes-sato/matchbox-theme-sato/matchbox-theme-sato.inc
+++ b/poky/meta/recipes-sato/matchbox-theme-sato/matchbox-theme-sato.inc
@@ -10,7 +10,7 @@
 
 inherit autotools pkgconfig features_check
 
-FILES_${PN} += "${datadir}/themes"
+FILES:${PN} += "${datadir}/themes"
 
 # The matchbox-wm requires x11 in DISTRO_FEATURES
 REQUIRED_DISTRO_FEATURES = "x11"
diff --git a/poky/meta/recipes-sato/packagegroups/packagegroup-core-x11-sato.bb b/poky/meta/recipes-sato/packagegroups/packagegroup-core-x11-sato.bb
index 25725e0..cfa301a 100644
--- a/poky/meta/recipes-sato/packagegroups/packagegroup-core-x11-sato.bb
+++ b/poky/meta/recipes-sato/packagegroups/packagegroup-core-x11-sato.bb
@@ -14,7 +14,7 @@
 
 PACKAGES = "${PN} ${PN}-base ${PN}-apps ${PN}-games"
 
-RDEPENDS_${PN} = "\
+RDEPENDS:${PN} = "\
     ${PN}-base \
     ${PN}-apps \
     ${PN}-games \
@@ -22,8 +22,8 @@
 
 NETWORK_MANAGER ?= "connman-gnome"
 
-SUMMARY_${PN}-base = "Sato desktop - base packages"
-RDEPENDS_${PN}-base = "\
+SUMMARY:${PN}-base = "Sato desktop - base packages"
+RDEPENDS:${PN}-base = "\
     matchbox-desktop \
     matchbox-session-sato \
     matchbox-keyboard \
@@ -45,10 +45,10 @@
 #WEB = "epiphany"
 
 GSTEXAMPLES ?= "gst-examples"
-GSTEXAMPLES_riscv64 = ""
+GSTEXAMPLES:riscv64 = ""
 
-SUMMARY_${PN}-apps = "Sato desktop - applications"
-RDEPENDS_${PN}-apps = "\
+SUMMARY:${PN}-apps = "Sato desktop - applications"
+RDEPENDS:${PN}-apps = "\
     l3afpad \
     matchbox-terminal \
     sato-screenshot \
@@ -57,7 +57,7 @@
     ${WEB} \
     "
 
-SUMMARY_${PN}-games = "Sato desktop - games"
-RDEPENDS_${PN}-games = "\
+SUMMARY:${PN}-games = "Sato desktop - games"
+RDEPENDS:${PN}-games = "\
     puzzles \
     "
diff --git a/poky/meta/recipes-sato/pcmanfm/pcmanfm_1.3.2.bb b/poky/meta/recipes-sato/pcmanfm/pcmanfm_1.3.2.bb
index d3a9b84..aa1ac77 100644
--- a/poky/meta/recipes-sato/pcmanfm/pcmanfm_1.3.2.bb
+++ b/poky/meta/recipes-sato/pcmanfm/pcmanfm_1.3.2.bb
@@ -28,13 +28,13 @@
 
 EXTRA_OECONF = "--with-gtk=3"
 
-do_install_append () {
+do_install:append () {
 	install -d ${D}/${datadir}
 	install -d ${D}/${datadir}/pixmaps/
 
 	install -m 0644 ${WORKDIR}/*.png ${D}/${datadir}/pixmaps
 }
 
-FILES_${PN} += "${libdir}/pcmanfm"
+FILES:${PN} += "${libdir}/pcmanfm"
 
-RRECOMMENDS_${PN} += "adwaita-icon-theme"
+RRECOMMENDS:${PN} += "adwaita-icon-theme"
diff --git a/poky/meta/recipes-sato/pulseaudio-sato/pulseaudio-client-conf-sato_1.bb b/poky/meta/recipes-sato/pulseaudio-sato/pulseaudio-client-conf-sato_1.bb
index e27339f..ec187ed 100644
--- a/poky/meta/recipes-sato/pulseaudio-sato/pulseaudio-client-conf-sato_1.bb
+++ b/poky/meta/recipes-sato/pulseaudio-sato/pulseaudio-client-conf-sato_1.bb
@@ -13,5 +13,5 @@
 	install -m 0644 ${S}/50-sato.conf ${D}${sysconfdir}/pulse/client.conf.d/50-sato.conf
 }
 
-FILES_${PN} = "${sysconfdir}/pulse/client.conf.d/50-sato.conf"
-CONFFILES_${PN} = "${sysconfdir}/pulse/client.conf.d/50-sato.conf"
+FILES:${PN} = "${sysconfdir}/pulse/client.conf.d/50-sato.conf"
+CONFFILES:${PN} = "${sysconfdir}/pulse/client.conf.d/50-sato.conf"
diff --git a/poky/meta/recipes-sato/puzzles/puzzles_git.bb b/poky/meta/recipes-sato/puzzles/puzzles_git.bb
index 44fa597..298e29f 100644
--- a/poky/meta/recipes-sato/puzzles/puzzles_git.bb
+++ b/poky/meta/recipes-sato/puzzles/puzzles_git.bb
@@ -27,7 +27,7 @@
 
 DEPENDS += "gtk+3"
 
-do_install_append () {
+do_install:append () {
     # net conflicts with Samba, so rename it
     mv ${D}${bindir}/net ${D}${bindir}/puzzles-net
 
diff --git a/poky/meta/recipes-sato/rxvt-unicode/rxvt-unicode.inc b/poky/meta/recipes-sato/rxvt-unicode/rxvt-unicode.inc
index ff2c8f0..69b8a65 100644
--- a/poky/meta/recipes-sato/rxvt-unicode/rxvt-unicode.inc
+++ b/poky/meta/recipes-sato/rxvt-unicode/rxvt-unicode.inc
@@ -16,10 +16,10 @@
 inherit autotools pkgconfig update-alternatives
 
 PROVIDES = "virtual/x-terminal-emulator"
-ALTERNATIVE_${PN} = "x-terminal-emulator"
+ALTERNATIVE:${PN} = "x-terminal-emulator"
 ALTERNATIVE_TARGET[x-terminal-emulator] = "${bindir}/rxvt"
 
-CFLAGS_append = " -fpermissive"
+CFLAGS:append = " -fpermissive"
 
 EXTRA_OECONF = "--enable-xim \
 		--enable-utmp --enable-wtmp --enable-lastlog \
@@ -31,25 +31,25 @@
 		--enable-combining --disable-perl \
 		--with-x=${STAGING_DIR_HOST}${prefix}"
 
-EXTRA_OECONF_append_libc-musl = " --disable-wtmp --disable-lastlog"
+EXTRA_OECONF:append:libc-musl = " --disable-wtmp --disable-lastlog"
 
 PACKAGECONFIG ??= ""
 PACKAGECONFIG[startup] = "--enable-startup-notification,--disable-startup-notification,startup-notification,"
 
-do_configure_prepend () {
+do_configure:prepend () {
 	if [ ! -e ${S}/acinclude.m4 ]; then
 		cp ${S}/aclocal.m4 ${S}/acinclude.m4
 	fi
 }
 
-do_compile_prepend () {
+do_compile:prepend () {
 	echo '#define UTMP_FILE "${localstatedir}/run/utmp"' >> config.h
 	echo '#define WTMP_FILE "${localstatedir}/log/wtmp"' >> config.h
 	echo '#define LASTLOG_FILE "${localstatedir}/log/lastlog"' >> config.h
 	echo '#define HAVE_XLOCALE 1' >> config.h
 }
 
-do_install_append () {
+do_install:append () {
 	install -d ${D}/${datadir}
 	install -d ${D}/${datadir}/applications
 	install -d ${D}/${datadir}/pixmaps/
@@ -58,4 +58,4 @@
 	install -m 0644 ${WORKDIR}/rxvt.desktop ${D}/${datadir}/applications
 }
 
-FILES_${PN} += "${datadir}/applications/rxvt.desktop ${datadir}/pixmaps/rxvt.png"
+FILES:${PN} += "${datadir}/applications/rxvt.desktop ${datadir}/pixmaps/rxvt.png"
diff --git a/poky/meta/recipes-sato/sato-screenshot/sato-screenshot_0.3.bb b/poky/meta/recipes-sato/sato-screenshot/sato-screenshot_0.3.bb
index 2b1f513..b2913b4 100644
--- a/poky/meta/recipes-sato/sato-screenshot/sato-screenshot_0.3.bb
+++ b/poky/meta/recipes-sato/sato-screenshot/sato-screenshot_0.3.bb
@@ -18,9 +18,9 @@
 
 inherit autotools pkgconfig features_check
 
-FILES_${PN} += "${libdir}/matchbox-panel/*.so"
+FILES:${PN} += "${libdir}/matchbox-panel/*.so"
 
-do_install_append () {
+do_install:append () {
 	rm -f ${D}${libdir}/matchbox-panel/*.la
 }
 
diff --git a/poky/meta/recipes-sato/settings-daemon/settings-daemon_0.0.2.bb b/poky/meta/recipes-sato/settings-daemon/settings-daemon_0.0.2.bb
index d01177f..742364f 100644
--- a/poky/meta/recipes-sato/settings-daemon/settings-daemon_0.0.2.bb
+++ b/poky/meta/recipes-sato/settings-daemon/settings-daemon_0.0.2.bb
@@ -19,12 +19,12 @@
 
 inherit autotools pkgconfig gconf features_check
 
-FILES_${PN} = 	"${bindir}/* ${sysconfdir}"
+FILES:${PN} = 	"${bindir}/* ${sysconfdir}"
 
 # Requires gdk-x11-2.0 which is provided by gtk when x11 in DISTRO_FEATURES
 REQUIRED_DISTRO_FEATURES = "x11"
 
-do_install_append () {
+do_install:append () {
 	install -d ${D}/${sysconfdir}/X11/Xsession.d
 	install -m 755 ${WORKDIR}/70settings-daemon.sh ${D}/${sysconfdir}/X11/Xsession.d/
 }
diff --git a/poky/meta/recipes-sato/shutdown-desktop/shutdown-desktop.bb b/poky/meta/recipes-sato/shutdown-desktop/shutdown-desktop.bb
index 28d5096..4bb896f 100644
--- a/poky/meta/recipes-sato/shutdown-desktop/shutdown-desktop.bb
+++ b/poky/meta/recipes-sato/shutdown-desktop/shutdown-desktop.bb
@@ -15,7 +15,7 @@
 	sed -i ${D}${datadir}/applications/shutdown.desktop -e 's#^Exec=\(.*\)#Exec=${base_sbindir}/\1#'
 }
 
-pkg_postinst_${PN} () {
+pkg_postinst:${PN} () {
     grep -q qemuarm $D${sysconfdir}/hostname && \
         sed -i $D${datadir}/applications/shutdown.desktop -e 's#^Exec=\(.*\)/halt#Exec=\1/reboot#' \
         || true
diff --git a/poky/meta/recipes-sato/webkit/libwpe_1.10.1.bb b/poky/meta/recipes-sato/webkit/libwpe_1.10.1.bb
index 4680c1e..6f2fe1d 100644
--- a/poky/meta/recipes-sato/webkit/libwpe_1.10.1.bb
+++ b/poky/meta/recipes-sato/webkit/libwpe_1.10.1.bb
@@ -6,9 +6,6 @@
 LIC_FILES_CHKSUM = "file://COPYING;md5=371a616eb4903c6cb79e9893a5f615cc"
 DEPENDS = "virtual/egl libxkbcommon"
 
-# Workaround build issue with RPi userland EGL libraries.
-CFLAGS_append_rpi = " ${@bb.utils.contains('MACHINE_FEATURES', 'vc4graphics', '', '-D_GNU_SOURCE', d)}"
-
 inherit cmake features_check
 
 REQUIRED_DISTRO_FEATURES = "opengl"
diff --git a/poky/meta/recipes-sato/webkit/webkitgtk_2.32.2.bb b/poky/meta/recipes-sato/webkit/webkitgtk_2.32.2.bb
index 96b6cab..89b1331 100644
--- a/poky/meta/recipes-sato/webkit/webkitgtk_2.32.2.bb
+++ b/poky/meta/recipes-sato/webkit/webkitgtk_2.32.2.bb
@@ -79,61 +79,61 @@
 		"
 
 # Javascript JIT is not supported on ARC
-EXTRA_OECMAKE_append_arc = " -DENABLE_JIT=OFF "
+EXTRA_OECMAKE:append:arc = " -DENABLE_JIT=OFF "
 # By default 25-bit "medium" calls are used on ARC
 # which is not enough for binaries larger than 32 MiB
-CFLAGS_append_arc = " -mlong-calls"
-CXXFLAGS_append_arc = " -mlong-calls"
+CFLAGS:append:arc = " -mlong-calls"
+CXXFLAGS:append:arc = " -mlong-calls"
 
 # Javascript JIT is not supported on powerpc
-EXTRA_OECMAKE_append_powerpc = " -DENABLE_JIT=OFF "
-EXTRA_OECMAKE_append_powerpc64 = " -DENABLE_JIT=OFF "
+EXTRA_OECMAKE:append:powerpc = " -DENABLE_JIT=OFF "
+EXTRA_OECMAKE:append:powerpc64 = " -DENABLE_JIT=OFF "
 
 # ARM JIT code does not build on ARMv4/5/6 anymore
-EXTRA_OECMAKE_append_armv5 = " -DENABLE_JIT=OFF "
-EXTRA_OECMAKE_append_armv6 = " -DENABLE_JIT=OFF "
-EXTRA_OECMAKE_append_armv4 = " -DENABLE_JIT=OFF "
+EXTRA_OECMAKE:append:armv5 = " -DENABLE_JIT=OFF "
+EXTRA_OECMAKE:append:armv6 = " -DENABLE_JIT=OFF "
+EXTRA_OECMAKE:append:armv4 = " -DENABLE_JIT=OFF "
 
-EXTRA_OECMAKE_append_mipsarch = " -DUSE_LD_GOLD=OFF "
-EXTRA_OECMAKE_append_powerpc = " -DUSE_LD_GOLD=OFF "
+EXTRA_OECMAKE:append:mipsarch = " -DUSE_LD_GOLD=OFF "
+EXTRA_OECMAKE:append:powerpc = " -DUSE_LD_GOLD=OFF "
 
 # JIT and gold linker does not work on RISCV
-EXTRA_OECMAKE_append_riscv32 = " -DUSE_LD_GOLD=OFF -DENABLE_JIT=OFF"
-EXTRA_OECMAKE_append_riscv64 = " -DUSE_LD_GOLD=OFF -DENABLE_JIT=OFF"
+EXTRA_OECMAKE:append:riscv32 = " -DUSE_LD_GOLD=OFF -DENABLE_JIT=OFF"
+EXTRA_OECMAKE:append:riscv64 = " -DUSE_LD_GOLD=OFF -DENABLE_JIT=OFF"
 
 # JIT not supported on MIPS either
-EXTRA_OECMAKE_append_mipsarch = " -DENABLE_JIT=OFF -DENABLE_C_LOOP=ON "
+EXTRA_OECMAKE:append:mipsarch = " -DENABLE_JIT=OFF -DENABLE_C_LOOP=ON "
 
 # JIT not supported on X32
 # An attempt was made to upstream JIT support for x32 in
 # https://bugs.webkit.org/show_bug.cgi?id=100450, but this was closed as
 # unresolved due to limited X32 adoption.
-EXTRA_OECMAKE_append_x86-x32 = " -DENABLE_JIT=OFF "
+EXTRA_OECMAKE:append:x86-x32 = " -DENABLE_JIT=OFF "
 
-SECURITY_CFLAGS_remove_aarch64 = "-fpie"
-SECURITY_CFLAGS_append_aarch64 = " -fPIE"
+SECURITY_CFLAGS:remove:aarch64 = "-fpie"
+SECURITY_CFLAGS:append:aarch64 = " -fPIE"
 
-FILES_${PN} += "${libdir}/webkit2gtk-4.0/injected-bundle/libwebkit2gtkinjectedbundle.so"
+FILES:${PN} += "${libdir}/webkit2gtk-4.0/injected-bundle/libwebkit2gtkinjectedbundle.so"
 
-RRECOMMENDS_${PN} += "ca-certificates shared-mime-info"
+RRECOMMENDS:${PN} += "ca-certificates shared-mime-info"
 
 # http://errors.yoctoproject.org/Errors/Details/20370/
-ARM_INSTRUCTION_SET_armv4 = "arm"
-ARM_INSTRUCTION_SET_armv5 = "arm"
-ARM_INSTRUCTION_SET_armv6 = "arm"
+ARM_INSTRUCTION_SET:armv4 = "arm"
+ARM_INSTRUCTION_SET:armv5 = "arm"
+ARM_INSTRUCTION_SET:armv6 = "arm"
 
 # https://bugzilla.yoctoproject.org/show_bug.cgi?id=9474
 # https://bugs.webkit.org/show_bug.cgi?id=159880
 # JSC JIT can build on ARMv7 with -marm, but doesn't work on runtime.
 # Upstream only tests regularly the JSC JIT on ARMv7 with Thumb2 (-mthumb).
-ARM_INSTRUCTION_SET_armv7a = "thumb"
-ARM_INSTRUCTION_SET_armv7r = "thumb"
-ARM_INSTRUCTION_SET_armv7ve = "thumb"
+ARM_INSTRUCTION_SET:armv7a = "thumb"
+ARM_INSTRUCTION_SET:armv7r = "thumb"
+ARM_INSTRUCTION_SET:armv7ve = "thumb"
 
 # introspection inside qemu-arm hangs forever on musl/arm builds
 # therefore disable GI_DATA
-GI_DATA_ENABLED_libc-musl_armv7a = "False"
-GI_DATA_ENABLED_libc-musl_armv7ve = "False"
+GI_DATA_ENABLED:libc-musl:armv7a = "False"
+GI_DATA_ENABLED:libc-musl:armv7ve = "False"
 
 # Can't be built with ccache
 CCACHE_DISABLE = "1"
diff --git a/poky/meta/recipes-sato/webkit/wpebackend-fdo_1.10.0.bb b/poky/meta/recipes-sato/webkit/wpebackend-fdo_1.10.0.bb
index 38a32da..4588ee1 100644
--- a/poky/meta/recipes-sato/webkit/wpebackend-fdo_1.10.0.bb
+++ b/poky/meta/recipes-sato/webkit/wpebackend-fdo_1.10.0.bb
@@ -6,7 +6,7 @@
 LIC_FILES_CHKSUM = "file://COPYING;md5=1f62cef2e3645e3e74eb05fd389d7a66"
 DEPENDS = "glib-2.0 libxkbcommon wayland virtual/egl libwpe libepoxy"
 
-DEPENDS_append_class-target = " wayland-native"
+DEPENDS:append:class-target = " wayland-native"
 
 inherit meson features_check
 
diff --git a/poky/meta/recipes-support/apr/apr-util_1.6.1.bb b/poky/meta/recipes-support/apr/apr-util_1.6.1.bb
index 4e183ca..b851d46 100644
--- a/poky/meta/recipes-support/apr/apr-util_1.6.1.bb
+++ b/poky/meta/recipes-support/apr/apr-util_1.6.1.bb
@@ -32,35 +32,35 @@
 
 OE_BINCONFIG_EXTRA_MANGLE = " -e 's:location=source:location=installed:'"
 
-do_configure_append() {
+do_configure:append() {
 	if [ "${CLASSOVERRIDE}" = "class-target" ]; then
 		cp ${STAGING_DATADIR}/apr/apr_rules.mk ${B}/build/rules.mk
 		sed -i -e 's#^CFLAGS=.*#CFLAGS=${TARGET_CFLAGS}#g' ${B}/build/rules.mk
 	fi
 }
-do_configure_prepend_class-native() {
+do_configure:prepend:class-native() {
 	mkdir ${B}/build
 	cp ${STAGING_DATADIR_NATIVE}/apr/apr_rules.mk ${B}/build/rules.mk
 }
-do_configure_append_class-native() {
+do_configure:append:class-native() {
 	sed -i "s#LIBTOOL=\$(SHELL) \$(apr_builddir)#LIBTOOL=\$(SHELL) ${STAGING_BINDIR_NATIVE}#" ${B}/build/rules.mk
 	# sometimes there isn't SHELL
 	sed -i "s#LIBTOOL=\$(apr_builddir)#LIBTOOL=${STAGING_BINDIR_NATIVE}#" ${B}/build/rules.mk
 }
 
-do_configure_prepend_class-nativesdk() {
+do_configure:prepend:class-nativesdk() {
 	cp ${STAGING_DATADIR}/apr/apr_rules.mk ${S}/build/rules.mk
 	sed -i -e 's#^CFLAGS=.*#CFLAGS=${TARGET_CFLAGS}#g' ${S}/build/rules.mk
 }
 
-do_configure_append_class-nativesdk() {
+do_configure:append:class-nativesdk() {
 	sed -i "s#\(apr_builddir\)=.*#\1=${STAGING_DATADIR}/build-1#" ${B}/build/rules.mk
 	sed -i "s#\(apr_builders\)=.*#\1=${STAGING_DATADIR}/build-1#" ${B}/build/rules.mk
 	sed -i "s#\(top_builddir\)=.*#\1=${STAGING_DATADIR}/build-1#" ${B}/build/rules.mk
 	sed -i "s#\(LIBTOOL=\$(apr_builddir)\).*#\1/libtool#" ${B}/build/rules.mk
 }
 
-do_install_append_class-target() {
+do_install:append:class-target() {
 	sed -i -e 's,${STAGING_DIR_HOST},,g' \
 	       -e 's,APU_SOURCE_DIR=.*,APR_SOURCE_DIR=,g' \
 	       -e 's,APU_BUILD_DIR=.*,APR_BUILD_DIR=,g' ${D}${bindir}/apu-1-config
@@ -73,16 +73,16 @@
 PACKAGECONFIG[gdbm] = "--with-dbm=gdbm --with-gdbm=${STAGING_DIR_HOST}${prefix},--without-gdbm,gdbm"
 
 #files ${libdir}/apr-util-1/*.so are not symlinks but loadable modules thus they are packaged in ${PN}
-FILES_${PN}     += "${libdir}/apr-util-1/apr*${SOLIBS} ${libdir}/apr-util-1/apr*${SOLIBSDEV}"
-FILES_${PN}-dev += "${libdir}/aprutil.exp ${libdir}/apr-util-1/*.la"
-FILES_${PN}-staticdev += "${libdir}/apr-util-1/*.a"
+FILES:${PN}     += "${libdir}/apr-util-1/apr*${SOLIBS} ${libdir}/apr-util-1/apr*${SOLIBSDEV}"
+FILES:${PN}-dev += "${libdir}/aprutil.exp ${libdir}/apr-util-1/*.la"
+FILES:${PN}-staticdev += "${libdir}/apr-util-1/*.a"
 
-INSANE_SKIP_${PN} += "dev-so"
+INSANE_SKIP:${PN} += "dev-so"
 
 inherit ptest
 
-RDEPENDS_${PN}-ptest_append_libc-glibc = " glibc-gconv-iso8859-1 glibc-gconv-iso8859-2 glibc-gconv-utf-7"
-RDEPENDS_${PN}-ptest += "libgcc"
+RDEPENDS:${PN}-ptest:append:libc-glibc = " glibc-gconv-iso8859-1 glibc-gconv-iso8859-2 glibc-gconv-utf-7"
+RDEPENDS:${PN}-ptest += "libgcc"
 
 do_compile_ptest() {
 	cd ${B}/test
diff --git a/poky/meta/recipes-support/apr/apr_1.7.0.bb b/poky/meta/recipes-support/apr/apr_1.7.0.bb
index 8231739..08d9edf 100644
--- a/poky/meta/recipes-support/apr/apr_1.7.0.bb
+++ b/poky/meta/recipes-support/apr/apr_1.7.0.bb
@@ -47,7 +47,7 @@
 PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6,"
 PACKAGECONFIG[timed-tests] = "--enable-timed-tests,--disable-timed-tests,"
 
-do_configure_prepend() {
+do_configure:prepend() {
 	# Avoid absolute paths for grep since it causes failures
 	# when using sstate between different hosts with different
 	# install paths for grep.
@@ -61,24 +61,24 @@
 MULTILIB_SCRIPTS = "${PN}-dev:${bindir}/apr-1-config \
                     ${PN}-dev:${datadir}/build-1/apr_rules.mk"
 
-FILES_${PN}-dev += "${libdir}/apr.exp ${datadir}/build-1/*"
-RDEPENDS_${PN}-dev += "bash"
+FILES:${PN}-dev += "${libdir}/apr.exp ${datadir}/build-1/*"
+RDEPENDS:${PN}-dev += "bash"
 
-RDEPENDS_${PN}-ptest += "libgcc"
+RDEPENDS:${PN}-ptest += "libgcc"
 
 #for some reason, build/libtool.m4 handled by buildconf still be overwritten
 #when autoconf, so handle it again.
-do_configure_append() {
+do_configure:append() {
 	sed -i -e 's/LIBTOOL=\(.*\)top_build/LIBTOOL=\1apr_build/' ${S}/build/libtool.m4
 	sed -i -e 's/LIBTOOL=\(.*\)top_build/LIBTOOL=\1apr_build/' ${S}/build/apr_rules.mk
 }
 
-do_install_append() {
+do_install:append() {
 	oe_multilib_header apr.h
 	install -d ${D}${datadir}/apr
 }
 
-do_install_append_class-target() {
+do_install:append:class-target() {
 	sed -i -e 's,${DEBUG_PREFIX_MAP},,g' \
 	       -e 's,${STAGING_DIR_HOST},,g' ${D}${datadir}/build-1/apr_rules.mk
 	sed -i -e 's,${STAGING_DIR_HOST},,g' \
diff --git a/poky/meta/recipes-support/argp-standalone/argp-standalone_1.3.bb b/poky/meta/recipes-support/argp-standalone/argp-standalone_1.3.bb
index d1db562..317f71b 100644
--- a/poky/meta/recipes-support/argp-standalone/argp-standalone_1.3.bb
+++ b/poky/meta/recipes-support/argp-standalone/argp-standalone_1.3.bb
@@ -20,8 +20,8 @@
 
 CFLAGS += "-fPIC -U__OPTIMIZE__"
 
-RDEPENDS_${PN}-dev = ""
-RDEPENDS_${PN}-staticdev = ""
+RDEPENDS:${PN}-dev = ""
+RDEPENDS:${PN}-staticdev = ""
 
 do_install() {
 	install -D -m 0644 ${B}/libargp.a ${D}${libdir}/libargp.a
diff --git a/poky/meta/recipes-support/aspell/aspell_0.60.8.bb b/poky/meta/recipes-support/aspell/aspell_0.60.8.bb
index 6548c54..3c2b3d1 100644
--- a/poky/meta/recipes-support/aspell/aspell_0.60.8.bb
+++ b/poky/meta/recipes-support/aspell/aspell_0.60.8.bb
@@ -13,7 +13,9 @@
 LICENSE = "LGPLv2 | LGPLv2.1"
 LIC_FILES_CHKSUM = "file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34"
 
-SRC_URI = "${GNU_MIRROR}/aspell/aspell-${PV}.tar.gz"
+SRC_URI = "${GNU_MIRROR}/aspell/aspell-${PV}.tar.gz \
+           file://CVE-2019-25051.patch \
+"
 SRC_URI[md5sum] = "012fa9209203ae4e5a61c2a668fd10e3"
 SRC_URI[sha256sum] = "f9b77e515334a751b2e60daab5db23499e26c9209f5e7b7443b05235ad0226f2"
 
@@ -22,17 +24,17 @@
 
 PACKAGES += "libaspell libpspell aspell-utils"
 
-RDEPENDS_${PN}-utils += "perl"
+RDEPENDS:${PN}-utils += "perl"
 
-FILES_libaspell = "${libdir}/libaspell.so.* ${libdir}/aspell*"
-FILES_aspell-utils = "${bindir}/word-list-compress ${bindir}/aspell-import ${bindir}/run-with-aspell ${bindir}/pre*"
-FILES_${PN} = "${bindir}/aspell"
-FILES_libpspell = "${libdir}/libpspell.so.*"
-FILES_${PN}-dev += "${bindir}/pspell-config"
+FILES:libaspell = "${libdir}/libaspell.so.* ${libdir}/aspell*"
+FILES:aspell-utils = "${bindir}/word-list-compress ${bindir}/aspell-import ${bindir}/run-with-aspell ${bindir}/pre*"
+FILES:${PN} = "${bindir}/aspell"
+FILES:libpspell = "${libdir}/libpspell.so.*"
+FILES:${PN}-dev += "${bindir}/pspell-config"
 
-ARM_INSTRUCTION_SET_armv4 = "arm"
-ARM_INSTRUCTION_SET_armv5 = "arm"
-ARM_INSTRUCTION_SET_armv6 = "arm"
+ARM_INSTRUCTION_SET:armv4 = "arm"
+ARM_INSTRUCTION_SET:armv5 = "arm"
+ARM_INSTRUCTION_SET:armv6 = "arm"
 
 inherit autotools-brokensep gettext texinfo binconfig-disabled
 
diff --git a/poky/meta/recipes-support/aspell/files/CVE-2019-25051.patch b/poky/meta/recipes-support/aspell/files/CVE-2019-25051.patch
new file mode 100644
index 0000000..8513f6d
--- /dev/null
+++ b/poky/meta/recipes-support/aspell/files/CVE-2019-25051.patch
@@ -0,0 +1,101 @@
+From 0718b375425aad8e54e1150313b862e4c6fd324a Mon Sep 17 00:00:00 2001
+From: Kevin Atkinson <kevina@gnu.org>
+Date: Sat, 21 Dec 2019 20:32:47 +0000
+Subject: [PATCH] objstack: assert that the alloc size will fit within a chunk
+ to prevent a buffer overflow
+
+Bug found using OSS-Fuze.
+
+Upstream-Status: Backport
+[https://github.com/gnuaspell/aspell/commit/0718b375425aad8e54e1150313b862e4c6fd324a]
+CVE: CVE-2019-25051
+Signed-off-by: Chee Yang Lee <chee.yang.lee@intel.com>
+---
+ common/objstack.hpp | 18 ++++++++++++++----
+ 1 file changed, 14 insertions(+), 4 deletions(-)
+
+diff --git a/common/objstack.hpp b/common/objstack.hpp
+index 3997bf7..bd97ccd 100644
+--- a/common/objstack.hpp
++++ b/common/objstack.hpp
+@@ -5,6 +5,7 @@
+ #include "parm_string.hpp"
+ #include <stdlib.h>
+ #include <assert.h>
++#include <stddef.h>
+ 
+ namespace acommon {
+ 
+@@ -26,6 +27,12 @@ class ObjStack
+   byte * temp_end;
+   void setup_chunk();
+   void new_chunk();
++  bool will_overflow(size_t sz) const {
++    return offsetof(Node,data) + sz > chunk_size;
++  }
++  void check_size(size_t sz) {
++    assert(!will_overflow(sz));
++  }
+ 
+   ObjStack(const ObjStack &);
+   void operator=(const ObjStack &);
+@@ -56,7 +63,7 @@ class ObjStack
+   void * alloc_bottom(size_t size)  {
+     byte * tmp = bottom;
+     bottom += size;
+-    if (bottom > top) {new_chunk(); tmp = bottom; bottom += size;}
++    if (bottom > top) {check_size(size); new_chunk(); tmp = bottom; bottom += size;}
+     return tmp;
+   }
+   // This alloc_bottom will insure that the object is aligned based on the
+@@ -66,7 +73,7 @@ class ObjStack
+     align_bottom(align);
+     byte * tmp = bottom;
+     bottom += size;
+-    if (bottom > top) {new_chunk(); goto loop;}
++    if (bottom > top) {check_size(size); new_chunk(); goto loop;}
+     return tmp;
+   }
+   char * dup_bottom(ParmString str) {
+@@ -79,7 +86,7 @@ class ObjStack
+   // always be aligned as such.
+   void * alloc_top(size_t size) {
+     top -= size;
+-    if (top < bottom) {new_chunk(); top -= size;}
++    if (top < bottom) {check_size(size); new_chunk(); top -= size;}
+     return top;
+   }
+   // This alloc_top will insure that the object is aligned based on
+@@ -88,7 +95,7 @@ class ObjStack
+   {loop:
+     top -= size;
+     align_top(align);
+-    if (top < bottom) {new_chunk(); goto loop;}
++    if (top < bottom) {check_size(size); new_chunk(); goto loop;}
+     return top;
+   }
+   char * dup_top(ParmString str) {
+@@ -117,6 +124,7 @@ class ObjStack
+   void * alloc_temp(size_t size) {
+     temp_end = bottom + size;
+     if (temp_end > top) {
++      check_size(size);
+       new_chunk();
+       temp_end = bottom + size;
+     }
+@@ -131,6 +139,7 @@ class ObjStack
+     } else {
+       size_t s = temp_end - bottom;
+       byte * p = bottom;
++      check_size(size);
+       new_chunk();
+       memcpy(bottom, p, s);
+       temp_end = bottom + size;
+@@ -150,6 +159,7 @@ class ObjStack
+     } else {
+       size_t s = temp_end - bottom;
+       byte * p = bottom;
++      check_size(size);
+       new_chunk();
+       memcpy(bottom, p, s);
+       temp_end = bottom + size;
diff --git a/poky/meta/recipes-support/atk/at-spi2-atk_2.38.0.bb b/poky/meta/recipes-support/atk/at-spi2-atk_2.38.0.bb
index c7aee34..f041584 100644
--- a/poky/meta/recipes-support/atk/at-spi2-atk_2.38.0.bb
+++ b/poky/meta/recipes-support/atk/at-spi2-atk_2.38.0.bb
@@ -14,7 +14,7 @@
 
 PACKAGES =+ "${PN}-gnome ${PN}-gtk2"
 
-FILES_${PN}-gnome = "${libdir}/gnome-settings-daemon-3.0/gtk-modules"
-FILES_${PN}-gtk2 = "${libdir}/gtk-2.0/modules/libatk-bridge.*"
+FILES:${PN}-gnome = "${libdir}/gnome-settings-daemon-3.0/gtk-modules"
+FILES:${PN}-gtk2 = "${libdir}/gtk-2.0/modules/libatk-bridge.*"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-support/atk/at-spi2-core_2.40.3.bb b/poky/meta/recipes-support/atk/at-spi2-core_2.40.3.bb
index b1a7b51..427ea7c 100644
--- a/poky/meta/recipes-support/atk/at-spi2-core_2.40.3.bb
+++ b/poky/meta/recipes-support/atk/at-spi2-core_2.40.3.bb
@@ -31,7 +31,7 @@
 GIR_MESON_ENABLE_FLAG = 'yes'
 GIR_MESON_DISABLE_FLAG = 'no'
 
-FILES_${PN} += "${datadir}/dbus-1/services/*.service \
+FILES:${PN} += "${datadir}/dbus-1/services/*.service \
                 ${datadir}/dbus-1/accessibility-services/*.service \
                 ${datadir}/defaults/at-spi2 \
                 ${systemd_user_unitdir}/at-spi-dbus-bus.service \
diff --git a/poky/meta/recipes-support/attr/acl_2.3.1.bb b/poky/meta/recipes-support/attr/acl_2.3.1.bb
index 7f6cbf5..c965ac5 100644
--- a/poky/meta/recipes-support/attr/acl_2.3.1.bb
+++ b/poky/meta/recipes-support/attr/acl_2.3.1.bb
@@ -8,8 +8,8 @@
 SECTION = "libs"
 
 LICENSE = "LGPLv2.1+ & GPLv2+"
-LICENSE_${PN} = "GPLv2+"
-LICENSE_lib${BPN} = "LGPLv2.1+"
+LICENSE:${PN} = "GPLv2+"
+LICENSE:lib${BPN} = "LGPLv2.1+"
 LIC_FILES_CHKSUM = "file://doc/COPYING;md5=c781d70ed2b4d48995b790403217a249 \
                     file://doc/COPYING.LGPL;md5=9e9a206917f8af112da634ce3ab41764"
 
@@ -27,7 +27,7 @@
 
 PACKAGES =+ "lib${BPN}"
 
-FILES_lib${BPN} = "${libdir}/lib*${SOLIBS}"
+FILES:lib${BPN} = "${libdir}/lib*${SOLIBS}"
 
 PTEST_BUILD_HOST_FILES = "builddefs"
 PTEST_BUILD_HOST_PATTERN = "^RPM"
@@ -58,7 +58,7 @@
         rm ${D}${PTEST_PATH}/.libs/libtestlookup.lai
 }
 
-RDEPENDS_${PN}-ptest = "acl \
+RDEPENDS:${PN}-ptest = "acl \
                         bash \
                         coreutils \
                         perl \
diff --git a/poky/meta/recipes-support/attr/attr.inc b/poky/meta/recipes-support/attr/attr.inc
index e427ba9..02645db 100644
--- a/poky/meta/recipes-support/attr/attr.inc
+++ b/poky/meta/recipes-support/attr/attr.inc
@@ -7,8 +7,8 @@
 DEPENDS = "virtual/libintl"
 
 LICENSE = "LGPLv2.1+ & GPLv2+"
-LICENSE_${PN} = "GPLv2+"
-LICENSE_lib${BPN} = "LGPLv2.1+"
+LICENSE:${PN} = "GPLv2+"
+LICENSE:lib${BPN} = "LGPLv2.1+"
 LIC_FILES_CHKSUM = "file://doc/COPYING;md5=2d0aa14b3fce4694e4f615e30186335f \
                     file://doc/COPYING.LGPL;md5=b8d31f339300bc239d73461d68e77b9c \
                     file://tools/attr.c;endline=17;md5=be0403261f0847e5f43ed5b08d19593c \
@@ -22,10 +22,10 @@
 
 PACKAGES =+ "lib${BPN}"
 
-FILES_lib${BPN} = "${libdir}/lib*${SOLIBS}"
+FILES:lib${BPN} = "${libdir}/lib*${SOLIBS}"
 
 ALTERNATIVE_PRIORITY = "100"
-ALTERNATIVE_${PN} = "setfattr"
+ALTERNATIVE:${PN} = "setfattr"
 ALTERNATIVE_TARGET[setfattr] = "${bindir}/setfattr"
 
 PTEST_BUILD_HOST_FILES = "builddefs"
@@ -48,7 +48,7 @@
 	cp -rf ${S}/test/ ${D}${PTEST_PATH}
 }
 
-RDEPENDS_${PN}-ptest = "attr \
+RDEPENDS:${PN}-ptest = "attr \
                         coreutils \
                         perl-module-filehandle \
                         perl-module-getopt-std \
diff --git a/poky/meta/recipes-support/bash-completion/bash-completion_2.11.bb b/poky/meta/recipes-support/bash-completion/bash-completion_2.11.bb
index 67738c3..f63a69b 100644
--- a/poky/meta/recipes-support/bash-completion/bash-completion_2.11.bb
+++ b/poky/meta/recipes-support/bash-completion/bash-completion_2.11.bb
@@ -23,18 +23,18 @@
 
 inherit autotools
 
-do_install_append() {
+do_install:append() {
 	# compatdir
 	install -d ${D}${sysconfdir}/bash_completion.d/
 	echo '. ${datadir}/${BPN}/bash_completion' >${D}${sysconfdir}/bash_completion
 
 }
 
-RDEPENDS_${PN} = "bash"
+RDEPENDS:${PN} = "bash"
 
 # Some recipes are providing ${PN}-bash-completion packages
 PACKAGES =+ "${PN}-extra"
-FILES_${PN}-extra = "${datadir}/${BPN}/completions/ \
+FILES:${PN}-extra = "${datadir}/${BPN}/completions/ \
     ${datadir}/${BPN}/helpers/"
 
 BBCLASSEXTEND = "nativesdk"
diff --git a/poky/meta/recipes-support/bmap-tools/bmap-tools_3.6.bb b/poky/meta/recipes-support/bmap-tools/bmap-tools_3.6.bb
index 611c0fb..c830a92 100644
--- a/poky/meta/recipes-support/bmap-tools/bmap-tools_3.6.bb
+++ b/poky/meta/recipes-support/bmap-tools/bmap-tools_3.6.bb
@@ -18,7 +18,7 @@
 UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>\d+(\.\d+)+)"
 
 # Need df from coreutils
-RDEPENDS_${PN} = "python3-core python3-compression python3-mmap python3-setuptools python3-fcntl python3-six coreutils"
+RDEPENDS:${PN} = "python3-core python3-compression python3-mmap python3-setuptools python3-fcntl python3-six coreutils"
 
 inherit python3native
 inherit setuptools3
diff --git a/poky/meta/recipes-support/boost/boost-build-native_4.4.1.bb b/poky/meta/recipes-support/boost/boost-build-native_4.4.1.bb
index d4df5b5..2de0536 100644
--- a/poky/meta/recipes-support/boost/boost-build-native_4.4.1.bb
+++ b/poky/meta/recipes-support/boost/boost-build-native_4.4.1.bb
@@ -24,4 +24,4 @@
 }
 
 # The build is either release mode (pre-stripped) or debug (-O0).
-INSANE_SKIP_${PN} = "already-stripped"
+INSANE_SKIP:${PN} = "already-stripped"
diff --git a/poky/meta/recipes-support/boost/boost.inc b/poky/meta/recipes-support/boost/boost.inc
index 291a052..fa49ed3 100644
--- a/poky/meta/recipes-support/boost/boost.inc
+++ b/poky/meta/recipes-support/boost/boost.inc
@@ -8,8 +8,8 @@
 
 CVE_PRODUCT = "boost:boost"
 
-ARM_INSTRUCTION_SET_armv4 = "arm"
-ARM_INSTRUCTION_SET_armv5 = "arm"
+ARM_INSTRUCTION_SET:armv4 = "arm"
+ARM_INSTRUCTION_SET:armv5 = "arm"
 
 B = "${WORKDIR}/build"
 do_configure[cleandirs] = "${B}"
@@ -71,35 +71,35 @@
         if "-native" in pn:
             pkg = pkg + "-native"
         packages.append(mlprefix + pkg)
-        if not d.getVar("FILES_%s" % pkg):
-                d.setVar("FILES_%s%s" % (mlprefix, pkg), "${libdir}/libboost_%s*.so.*" % lib)
+        if not d.getVar("FILES:%s" % pkg):
+                d.setVar("FILES:%s%s" % (mlprefix, pkg), "${libdir}/libboost_%s*.so.*" % lib)
         else:
-                d.setVar("FILES_%s%s" % (mlprefix, pkg), d.getVar("FILES_%s" % pkg))
+                d.setVar("FILES:%s%s" % (mlprefix, pkg), d.getVar("FILES:%s" % pkg))
 
     d.setVar("BOOST_PACKAGES", " ".join(packages))
     d.setVar("BJAM_EXTRA", " ".join(extras))
 }
 
 # Override the contents of specific packages
-FILES_${PN}-graph_parallel = "${libdir}/libboost_graph_parallel.so.*"
-FILES_${PN}-locale = "${libdir}/libboost_locale.so.*"
-FILES_${PN}-mpi = "${libdir}/mpi.so ${libdir}/libboost_mpi*.so.*"
-FILES_boost-serialization = "${libdir}/libboost_serialization*.so.* \
+FILES:${PN}-graph_parallel = "${libdir}/libboost_graph_parallel.so.*"
+FILES:${PN}-locale = "${libdir}/libboost_locale.so.*"
+FILES:${PN}-mpi = "${libdir}/mpi.so ${libdir}/libboost_mpi*.so.*"
+FILES:boost-serialization = "${libdir}/libboost_serialization*.so.* \
 	${libdir}/libboost_wserialization*.so.*"
-FILES_boost-test = "${libdir}/libboost_prg_exec_monitor*.so.* \
+FILES:boost-test = "${libdir}/libboost_prg_exec_monitor*.so.* \
 	${libdir}/libboost_unit_test_framework*.so.*"
 
 # -dev last to pick up the remaining stuff
 PACKAGES += "${PN}-dev ${PN}-staticdev"
-FILES_${PN}-dev = "${includedir} ${libdir}/libboost_*.so ${libdir}/cmake"
-FILES_${PN}-staticdev = "${libdir}/libboost_*.a"
+FILES:${PN}-dev = "${includedir} ${libdir}/libboost_*.so ${libdir}/cmake"
+FILES:${PN}-staticdev = "${libdir}/libboost_*.a"
 
 # "boost" is a metapackage which pulls in all boost librabries
 PACKAGES += "${PN}"
-FILES_${PN} = ""
-ALLOW_EMPTY_${PN} = "1"
-RRECOMMENDS_${PN} += "${BOOST_PACKAGES}"
-RRECOMMENDS_${PN}_class-native = ""
+FILES:${PN} = ""
+ALLOW_EMPTY:${PN} = "1"
+RRECOMMENDS:${PN} += "${BOOST_PACKAGES}"
+RRECOMMENDS:${PN}:class-native = ""
 
 # to avoid GNU_HASH QA errors added LDFLAGS to ARCH; a little bit dirty but at least it works
 TARGET_CC_ARCH += "${LDFLAGS}"
@@ -155,14 +155,14 @@
 		${BJAM_EXTRA}'
 
 # Native compilation of bzip2 isn't working
-BJAM_OPTS_append_class-native = ' -sNO_BZIP2=1'
+BJAM_OPTS:append:class-native = ' -sNO_BZIP2=1'
 
 # Adjust the build for x32
-BJAM_OPTS_append_x86-x32 = " abi=x32 address-model=64"
+BJAM_OPTS:append:x86-x32 = " abi=x32 address-model=64"
 
 # cross compiling for arm fails to detect abi, so provide some help
-BJAM_OPTS_append_arm = " abi=aapcs architecture=arm"
-BJAM_OPTS_append_aarch64 = " abi=aapcs address-model=64 architecture=arm"
+BJAM_OPTS:append:arm = " abi=aapcs architecture=arm"
+BJAM_OPTS:append:aarch64 = " abi=aapcs address-model=64 architecture=arm"
 
 do_configure() {
 	cd ${S}
diff --git a/poky/meta/recipes-support/ca-certificates/ca-certificates_20210119.bb b/poky/meta/recipes-support/ca-certificates/ca-certificates_20210119.bb
index 7dcc86f..3632038 100644
--- a/poky/meta/recipes-support/ca-certificates/ca-certificates_20210119.bb
+++ b/poky/meta/recipes-support/ca-certificates/ca-certificates_20210119.bb
@@ -9,8 +9,8 @@
 
 # This is needed to ensure we can run the postinst at image creation time
 DEPENDS = ""
-DEPENDS_class-native = "openssl-native"
-DEPENDS_class-nativesdk = "openssl-native"
+DEPENDS:class-native = "openssl-native"
+DEPENDS:class-nativesdk = "openssl-native"
 # Need rehash from openssl and run-parts from debianutils
 PACKAGE_WRITE_DEPS += "openssl-native debianutils-native"
 
@@ -35,7 +35,7 @@
     'SBINDIR=${sbindir}' \
 "
 
-do_compile_prepend() {
+do_compile:prepend() {
     oe_runmake clean
 }
 
@@ -58,7 +58,7 @@
     } >${D}${sysconfdir}/ca-certificates.conf
 }
 
-do_install_append_class-target () {
+do_install:append:class-target () {
     sed -i -e 's,/etc/,${sysconfdir}/,' \
            -e 's,/usr/share/,${datadir}/,' \
            -e 's,/usr/local,${prefix}/local,' \
@@ -66,25 +66,25 @@
         ${D}${mandir}/man8/update-ca-certificates.8
 }
 
-pkg_postinst_${PN}_class-target () {
+pkg_postinst:${PN}:class-target () {
     SYSROOT="$D" $D${sbindir}/update-ca-certificates
 }
 
-CONFFILES_${PN} += "${sysconfdir}/ca-certificates.conf"
+CONFFILES:${PN} += "${sysconfdir}/ca-certificates.conf"
 
 # Rather than make a postinst script that works for both target and nativesdk,
 # we just run update-ca-certificate from do_install() for nativesdk.
-CONFFILES_${PN}_append_class-nativesdk = " ${sysconfdir}/ssl/certs/ca-certificates.crt"
-do_install_append_class-nativesdk () {
+CONFFILES:${PN}:append:class-nativesdk = " ${sysconfdir}/ssl/certs/ca-certificates.crt"
+do_install:append:class-nativesdk () {
     SYSROOT="${D}${SDKPATHNATIVE}" ${D}${sbindir}/update-ca-certificates
 }
 
-do_install_append_class-native () {
+do_install:append:class-native () {
     SYSROOT="${D}${base_prefix}" ${D}${sbindir}/update-ca-certificates
 }
 
-RDEPENDS_${PN}_append_class-target = " openssl-bin openssl"
-RDEPENDS_${PN}_append_class-native = " openssl-native"
-RDEPENDS_${PN}_append_class-nativesdk = " nativesdk-openssl-bin nativesdk-openssl"
+RDEPENDS:${PN}:append:class-target = " openssl-bin openssl"
+RDEPENDS:${PN}:append:class-native = " openssl-native"
+RDEPENDS:${PN}:append:class-nativesdk = " nativesdk-openssl-bin nativesdk-openssl"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-support/consolekit/consolekit_0.4.6.bb b/poky/meta/recipes-support/consolekit/consolekit_0.4.6.bb
index 22e7557..3d28ba2 100644
--- a/poky/meta/recipes-support/consolekit/consolekit_0.4.6.bb
+++ b/poky/meta/recipes-support/consolekit/consolekit_0.4.6.bb
@@ -9,7 +9,7 @@
                     file://src/main.c;endline=21;md5=0a994e09769780220163255d8f9071c3"
 
 DEPENDS = "glib-2.0 glib-2.0-native dbus dbus-glib virtual/libx11"
-RDEPENDS_${PN} += "base-files"
+RDEPENDS:${PN} += "base-files"
 
 inherit autotools pkgconfig features_check
 # depends on virtual/libx11
@@ -31,15 +31,15 @@
 PACKAGECONFIG[polkit] = "--with-polkit,--without-polkit,polkit"
 PACKAGECONFIG[systemd] = "--with-systemdsystemunitdir=${systemd_unitdir}/system/,--with-systemdsystemunitdir="
 
-FILES_${PN} += "${exec_prefix}/lib/ConsoleKit \
+FILES:${PN} += "${exec_prefix}/lib/ConsoleKit \
                 ${libdir}/ConsoleKit  ${systemd_unitdir} ${base_libdir} \
                 ${datadir}/dbus-1 ${datadir}/PolicyKit ${datadir}/polkit*"
 
 PACKAGES =+ "pam-plugin-ck-connector"
-FILES_pam-plugin-ck-connector += "${base_libdir}/security/*.so"
-RDEPENDS_pam-plugin-ck-connector += "${PN}"
+FILES:pam-plugin-ck-connector += "${base_libdir}/security/*.so"
+RDEPENDS:pam-plugin-ck-connector += "${PN}"
 
-do_install_append() {
+do_install:append() {
 	if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
 		install -d ${D}${sysconfdir}/tmpfiles.d
 		echo "d ${localstatedir}/log/ConsoleKit - - - -" \
diff --git a/poky/meta/recipes-support/curl/curl_7.77.0.bb b/poky/meta/recipes-support/curl/curl_7.78.0.bb
similarity index 90%
rename from poky/meta/recipes-support/curl/curl_7.77.0.bb
rename to poky/meta/recipes-support/curl/curl_7.78.0.bb
index ee1aa89..2e2be66 100644
--- a/poky/meta/recipes-support/curl/curl_7.77.0.bb
+++ b/poky/meta/recipes-support/curl/curl_7.78.0.bb
@@ -13,7 +13,7 @@
            file://0001-replace-krb5-config-with-pkg-config.patch \
 "
 
-SRC_URI[sha256sum] = "6c0c28868cb82593859fc43b9c8fdb769314c855c05cf1b56b023acf855df8ea"
+SRC_URI[sha256sum] = "98530b317dc95ccb324bbe4f834f07bb642fbc393b794ddf3434f246a71ea44a"
 
 # Curl has used many names over the years...
 CVE_PRODUCT = "haxx:curl haxx:libcurl curl:curl curl:libcurl libcurl:libcurl daniel_stenberg:curl"
@@ -21,8 +21,8 @@
 inherit autotools pkgconfig binconfig multilib_header
 
 PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)} ssl libidn proxy threaded-resolver verbose zlib"
-PACKAGECONFIG_class-native = "ipv6 proxy ssl threaded-resolver verbose zlib"
-PACKAGECONFIG_class-nativesdk = "ipv6 proxy ssl threaded-resolver verbose zlib"
+PACKAGECONFIG:class-native = "ipv6 proxy ssl threaded-resolver verbose zlib"
+PACKAGECONFIG:class-nativesdk = "ipv6 proxy ssl threaded-resolver verbose zlib"
 
 # 'ares' and 'threaded-resolver' are mutually exclusive
 PACKAGECONFIG[ares] = "--enable-ares,--disable-ares,c-ares,,,threaded-resolver"
@@ -61,14 +61,13 @@
     --disable-ntlm-wb \
     --enable-crypto-auth \
     --with-ca-bundle=${sysconfdir}/ssl/certs/ca-certificates.crt \
-    --without-libmetalink \
     --without-libpsl \
     --enable-debug \
     --enable-optimize \
     --disable-curldebug \
 "
 
-do_install_append_class-target() {
+do_install:append:class-target() {
 	# cleanup buildpaths from curl-config
 	sed -i \
 	    -e 's,--sysroot=${STAGING_DIR_TARGET},,g' \
@@ -79,10 +78,10 @@
 
 PACKAGES =+ "lib${BPN}"
 
-FILES_lib${BPN} = "${libdir}/lib*.so.*"
-RRECOMMENDS_lib${BPN} += "ca-certificates"
+FILES:lib${BPN} = "${libdir}/lib*.so.*"
+RRECOMMENDS:lib${BPN} += "ca-certificates"
 
-FILES_${PN} += "${datadir}/zsh"
+FILES:${PN} += "${datadir}/zsh"
 
 inherit multilib_script
 MULTILIB_SCRIPTS = "${PN}-dev:${bindir}/curl-config"
diff --git a/poky/meta/recipes-support/db/db_5.3.28.bb b/poky/meta/recipes-support/db/db_5.3.28.bb
index b2ae98f..d5b788a 100644
--- a/poky/meta/recipes-support/db/db_5.3.28.bb
+++ b/poky/meta/recipes-support/db/db_5.3.28.bb
@@ -13,7 +13,7 @@
 DESCRIPTION = "Provides the foundational storage services for your application, no matter how demanding and unique your requirements may seem to be"
 HOMEPAGE = "https://www.oracle.com/database/technologies/related/berkeleydb.html"
 LICENSE = "Sleepycat"
-RCONFLICTS_${PN} = "db3"
+RCONFLICTS:${PN} = "db3"
 
 CVE_PRODUCT = "oracle_berkeley_db berkeley_db"
 CVE_VERSION = "11.2.${PV}"
@@ -47,7 +47,7 @@
 inherit lib_package
 
 PACKAGES =+ "${PN}-cxx"
-FILES_${PN}-cxx = "${libdir}/*cxx*so"
+FILES:${PN}-cxx = "${libdir}/*cxx*so"
 
 # The dev package has the .so link (as in db3) and the .a's -
 # it is therefore incompatible (cannot be installed at the
@@ -75,7 +75,7 @@
 # configure.
 CONFIG_SITE = ""
 
-oe_runconf_prepend() {
+oe_runconf:prepend() {
 	. ${S}/dist/RELEASE
 	# Edit version information we couldn't pre-compute.
 	sed -i -e "s/__EDIT_DB_VERSION_FAMILY__/$DB_VERSION_FAMILY/g" \
@@ -89,12 +89,12 @@
 	    -e "s/__EDIT_DB_VERSION__/$DB_VERSION/g" ${S}/dist/configure
 }
 
-do_compile_prepend() {
+do_compile:prepend() {
     # Stop libtool adding RPATHs
     sed -i -e 's|hardcode_into_libs=yes|hardcode_into_libs=no|' ${B}/${HOST_SYS}-libtool
 }
 
-do_install_append() {
+do_install:append() {
 	mkdir -p ${D}/${includedir}/db51
 	mv ${D}/${includedir}/db.h ${D}/${includedir}/db51/.
 	mv ${D}/${includedir}/db_cxx.h ${D}/${includedir}/db51/.
@@ -115,7 +115,7 @@
 	fi
 }
 
-INSANE_SKIP_${PN} = "dev-so"
-INSANE_SKIP_${PN}-cxx = "dev-so"
+INSANE_SKIP:${PN} = "dev-so"
+INSANE_SKIP:${PN}-cxx = "dev-so"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-support/debianutils/debianutils_4.11.2.bb b/poky/meta/recipes-support/debianutils/debianutils_4.11.2.bb
index 1aedd8e..231666c 100644
--- a/poky/meta/recipes-support/debianutils/debianutils_4.11.2.bb
+++ b/poky/meta/recipes-support/debianutils/debianutils_4.11.2.bb
@@ -18,11 +18,11 @@
 inherit autotools update-alternatives
 
 S = "${WORKDIR}/debianutils"
-do_configure_prepend() {
+do_configure:prepend() {
     sed -i -e 's:tempfile.1 which.1:which.1:g' ${S}/Makefile.am
 }
 
-do_install_append() {
+do_install:append() {
     if [ "${base_bindir}" != "${bindir}" ]; then
         # Debian places some utils into ${base_bindir} as does busybox
         install -d ${D}${base_bindir}
@@ -35,18 +35,18 @@
 # Note that we package the update-alternatives name.
 #
 PACKAGES =+ "${PN}-run-parts"
-FILES_${PN}-run-parts = "${base_bindir}/run-parts.debianutils"
+FILES:${PN}-run-parts = "${base_bindir}/run-parts.debianutils"
 
-RDEPENDS_${PN} += "${PN}-run-parts"
-RDEPENDS_${PN}_class-native = ""
+RDEPENDS:${PN} += "${PN}-run-parts"
+RDEPENDS:${PN}:class-native = ""
 
 ALTERNATIVE_PRIORITY = "30"
-ALTERNATIVE_${PN} = "add-shell installkernel remove-shell savelog tempfile which"
+ALTERNATIVE:${PN} = "add-shell installkernel remove-shell savelog tempfile which"
 
 ALTERNATIVE_PRIORITY_${PN}-run-parts = "60"
-ALTERNATIVE_${PN}-run-parts = "run-parts"
+ALTERNATIVE:${PN}-run-parts = "run-parts"
 
-ALTERNATIVE_${PN}-doc = "which.1"
+ALTERNATIVE:${PN}-doc = "which.1"
 ALTERNATIVE_LINK_NAME[which.1] = "${mandir}/man1/which.1"
 
 ALTERNATIVE_LINK_NAME[add-shell] = "${sbindir}/add-shell"
diff --git a/poky/meta/recipes-support/diffoscope/diffoscope_177.bb b/poky/meta/recipes-support/diffoscope/diffoscope_179.bb
similarity index 81%
rename from poky/meta/recipes-support/diffoscope/diffoscope_177.bb
rename to poky/meta/recipes-support/diffoscope/diffoscope_179.bb
index 0d9061d..dcd2698 100644
--- a/poky/meta/recipes-support/diffoscope/diffoscope_177.bb
+++ b/poky/meta/recipes-support/diffoscope/diffoscope_179.bb
@@ -12,14 +12,14 @@
 
 inherit pypi setuptools3
 
-SRC_URI[sha256sum] = "8ac0cad150914bab2a53caa3f21876a78b092f3d2a36b9134874cd5c04a26b2e"
+SRC_URI[sha256sum] = "17790d463b757b6d05e0734db06ba5e79ac63fb64bf9b834dc7440477582a38a"
 
-RDEPENDS_${PN} += "binutils vim squashfs-tools python3-libarchive-c python3-magic python3-rpm"
+RDEPENDS:${PN} += "binutils vim squashfs-tools python3-libarchive-c python3-magic python3-rpm"
 
 # Dependencies don't build for musl
-COMPATIBLE_HOST_libc-musl = 'null'
+COMPATIBLE_HOST:libc-musl = 'null'
 
-do_install_append_class-native() {
+do_install:append:class-native() {
 	create_wrapper ${D}${bindir}/diffoscope \
 		MAGIC=${STAGING_DIR_NATIVE}${datadir_native}/misc/magic.mgc \
 		RPM_CONFIGDIR=${STAGING_LIBDIR_NATIVE}/rpm \
diff --git a/poky/meta/recipes-support/dos2unix/dos2unix_7.4.2.bb b/poky/meta/recipes-support/dos2unix/dos2unix_7.4.2.bb
index 9005bde..15d097e 100644
--- a/poky/meta/recipes-support/dos2unix/dos2unix_7.4.2.bb
+++ b/poky/meta/recipes-support/dos2unix/dos2unix_7.4.2.bb
@@ -25,7 +25,7 @@
 PACKAGECONFIG[nls] = "ENABLE_NLS=1,ENABLE_NLS=,po4a-native"
 
 EXTRA_OEMAKE = "${PACKAGECONFIG_CONFARGS} LDFLAGS_USER='${LDFLAGS}'"
-EXTRA_OEMAKE_class-native = "ENABLE_NLS="
+EXTRA_OEMAKE:class-native = "ENABLE_NLS="
 
 do_install () {
 	oe_runmake DESTDIR="${D}${base_prefix}" install
diff --git a/poky/meta/recipes-support/enchant/enchant2_2.3.0.bb b/poky/meta/recipes-support/enchant/enchant2_2.3.0.bb
index 5d0f10d..165b08f 100644
--- a/poky/meta/recipes-support/enchant/enchant2_2.3.0.bb
+++ b/poky/meta/recipes-support/enchant/enchant2_2.3.0.bb
@@ -24,8 +24,8 @@
 PACKAGECONFIG[aspell]  = "--with-aspell,--without-aspell,aspell,aspell"
 PACKAGECONFIG[hunspell]  = "--with-hunspell,--without-hunspell,hunspell,hunspell"
 
-FILES_${PN} += " \
+FILES:${PN} += " \
     ${datadir}/enchant-2 \
     ${libdir}/enchant-2 \
 "
-FILES_${PN}-staticdev += "${libdir}/enchant-2/*.a"
+FILES:${PN}-staticdev += "${libdir}/enchant-2/*.a"
diff --git a/poky/meta/recipes-support/gdbm/gdbm_1.19.bb b/poky/meta/recipes-support/gdbm/gdbm_1.19.bb
index cd2617b..1d1a0c8 100644
--- a/poky/meta/recipes-support/gdbm/gdbm_1.19.bb
+++ b/poky/meta/recipes-support/gdbm/gdbm_1.19.bb
@@ -26,7 +26,7 @@
 
 BBCLASSEXTEND = "native nativesdk"
 
-do_install_append () {
+do_install:append () {
     # Create a symlink to ndbm.h and gdbm.h in include/gdbm to let other packages to find
     # these headers
     install -d ${D}${includedir}/gdbm
@@ -34,7 +34,7 @@
     ln -sf ../gdbm.h ${D}/${includedir}/gdbm/gdbm.h
 }
 
-RDEPENDS_${PN}-ptest += "diffutils ${PN}-bin"
+RDEPENDS:${PN}-ptest += "diffutils ${PN}-bin"
 
 do_compile_ptest() {
     oe_runmake -C tests buildtests
@@ -42,5 +42,5 @@
 
 PACKAGES =+ "${PN}-compat \
             "
-FILES_${PN}-compat = "${libdir}/libgdbm_compat${SOLIBS} \
+FILES:${PN}-compat = "${libdir}/libgdbm_compat${SOLIBS} \
                      "
diff --git a/poky/meta/recipes-support/gmp/gmp.inc b/poky/meta/recipes-support/gmp/gmp.inc
index 948b892..1872226 100644
--- a/poky/meta/recipes-support/gmp/gmp.inc
+++ b/poky/meta/recipes-support/gmp/gmp.inc
@@ -8,5 +8,5 @@
 PACKAGECONFIG ??= ""
 PACKAGECONFIG[readline] = "--with-readline=yes,--with-readline=no,readline"
 
-ARM_INSTRUCTION_SET_armv4 = "arm"
-ARM_INSTRUCTION_SET_armv5 = "arm"
+ARM_INSTRUCTION_SET:armv4 = "arm"
+ARM_INSTRUCTION_SET:armv5 = "arm"
diff --git a/poky/meta/recipes-support/gmp/gmp_6.2.1.bb b/poky/meta/recipes-support/gmp/gmp_6.2.1.bb
index 3c50f92..d5996ab 100644
--- a/poky/meta/recipes-support/gmp/gmp_6.2.1.bb
+++ b/poky/meta/recipes-support/gmp/gmp_6.2.1.bb
@@ -19,16 +19,16 @@
 acpaths = ""
 
 EXTRA_OECONF += " --enable-cxx=detect"
-EXTRA_OECONF_mipsarchr6_append = " --disable-assembly"
+EXTRA_OECONF:mipsarchr6:append = " --disable-assembly"
 
 PACKAGES =+ "libgmpxx"
-FILES_libgmpxx = "${libdir}/libgmpxx${SOLIBS}"
+FILES:libgmpxx = "${libdir}/libgmpxx${SOLIBS}"
 
-do_install_append() {
+do_install:append() {
 	oe_multilib_header gmp.h
 }
 
-do_install_prepend_class-target() {
+do_install:prepend:class-target() {
         sed -i \
         -e "s|--sysroot=${STAGING_DIR_HOST}||g" \
         -e "s|${DEBUG_PREFIX_MAP}||g" \
diff --git a/poky/meta/recipes-support/gnupg/gnupg_2.3.1.bb b/poky/meta/recipes-support/gnupg/gnupg_2.3.1.bb
index 77331ef..b8b0314 100644
--- a/poky/meta/recipes-support/gnupg/gnupg_2.3.1.bb
+++ b/poky/meta/recipes-support/gnupg/gnupg_2.3.1.bb
@@ -20,9 +20,9 @@
            file://0004-autogen.sh-fix-find-version-for-beta-checking.patch \
            file://0001-Woverride-init-is-not-needed-with-gcc-9.patch \
            "
-SRC_URI_append_class-native = " file://0001-configure.ac-use-a-custom-value-for-the-location-of-.patch \
+SRC_URI:append:class-native = " file://0001-configure.ac-use-a-custom-value-for-the-location-of-.patch \
                                 file://relocate.patch"
-SRC_URI_append_class-nativesdk = " file://relocate.patch"
+SRC_URI:append:class-nativesdk = " file://relocate.patch"
 
 SRC_URI[sha256sum] = "c498db346a9b9a4b399e514c8f56dfc0a888ce8f327f10376ff984452cd154ec"
 
@@ -36,7 +36,7 @@
 
 # A minimal package containing just enough to run gpg+gpgagent (E.g. use gpgme in opkg)
 PACKAGES =+ "${PN}-gpg"
-FILES_${PN}-gpg = " \
+FILES:${PN}-gpg = " \
 	${bindir}/gpg \
 	${bindir}/gpg2 \
 	${bindir}/gpg-agent \
@@ -46,11 +46,11 @@
 # to ensure all tools are included. This is done only in non-native
 # builds. Native builds don't have sub-packages, so appending RDEPENDS
 # in this case breaks recipe parsing.
-RDEPENDS_${PN} += "${@ "" if ("native" in d.getVar("PN")) else (d.getVar("PN") + "-gpg")}"
+RDEPENDS:${PN} += "${@ "" if ("native" in d.getVar("PN")) else (d.getVar("PN") + "-gpg")}"
 
-RRECOMMENDS_${PN} = "pinentry"
+RRECOMMENDS:${PN} = "pinentry"
 
-do_configure_prepend () {
+do_configure:prepend () {
 	# Else these could be used in prefernce to those in aclocal-copy
 	rm -f ${S}/m4/gpg-error.m4
 	rm -f ${S}/m4/libassuan.m4
@@ -58,16 +58,16 @@
 	rm -f ${S}/m4/libgcrypt.m4
 }
 
-do_install_append() {
+do_install:append() {
 	ln -sf gpg2 ${D}${bindir}/gpg
 	ln -sf gpgv2 ${D}${bindir}/gpgv
 }
 
-do_install_append_class-native() {
+do_install:append:class-native() {
 	create_wrappers ${STAGING_BINDIR_NATIVE}
 }
 
-do_install_append_class-nativesdk() {
+do_install:append:class-nativesdk() {
 	create_wrappers ${SDKPATHNATIVE}${bindir_nativesdk}
 }
 
diff --git a/poky/meta/recipes-support/gnutls/gnutls_3.7.2.bb b/poky/meta/recipes-support/gnutls/gnutls_3.7.2.bb
index 430d1f2..e1a084f 100644
--- a/poky/meta/recipes-support/gnutls/gnutls_3.7.2.bb
+++ b/poky/meta/recipes-support/gnutls/gnutls_3.7.2.bb
@@ -5,17 +5,17 @@
 BUGTRACKER = "https://savannah.gnu.org/support/?group=gnutls"
 
 LICENSE = "GPLv3+ & LGPLv2.1+"
-LICENSE_${PN} = "LGPLv2.1+"
-LICENSE_${PN}-xx = "LGPLv2.1+"
-LICENSE_${PN}-bin = "GPLv3+"
-LICENSE_${PN}-openssl = "GPLv3+"
+LICENSE:${PN} = "LGPLv2.1+"
+LICENSE:${PN}-xx = "LGPLv2.1+"
+LICENSE:${PN}-bin = "GPLv3+"
+LICENSE:${PN}-openssl = "GPLv3+"
 
 LIC_FILES_CHKSUM = "file://LICENSE;md5=71391c8e0c1cfe68077e7fce3b586283 \
                     file://doc/COPYING;md5=c678957b0c8e964aa6c70fd77641a71e \
                     file://doc/COPYING.LESSER;md5=a6f89e2100d9b6cdffcea4f398e37343"
 
 DEPENDS = "nettle gmp virtual/libiconv libunistring"
-DEPENDS_append_libc-musl = " argp-standalone"
+DEPENDS:append:libc-musl = " argp-standalone"
 
 SHRT_VER = "${@d.getVar('PV').split('.')[0]}.${@d.getVar('PV').split('.')[1]}"
 
@@ -52,9 +52,9 @@
 # Otherwise the tools try and use HOSTTOOLS_DIR/bash as a shell.
 export POSIX_SHELL="${base_bindir}/sh"
 
-LDFLAGS_append_libc-musl = " -largp"
+LDFLAGS:append:libc-musl = " -largp"
 
-do_configure_prepend() {
+do_configure:prepend() {
 	for dir in . lib; do
 		rm -f ${dir}/aclocal.m4 ${dir}/m4/libtool.m4 ${dir}/m4/lt*.m4
 	done
@@ -62,8 +62,8 @@
 
 PACKAGES =+ "${PN}-openssl ${PN}-xx"
 
-FILES_${PN}-dev += "${bindir}/gnutls-cli-debug"
-FILES_${PN}-openssl = "${libdir}/libgnutls-openssl.so.*"
-FILES_${PN}-xx = "${libdir}/libgnutlsxx.so.*"
+FILES:${PN}-dev += "${bindir}/gnutls-cli-debug"
+FILES:${PN}-openssl = "${libdir}/libgnutls-openssl.so.*"
+FILES:${PN}-xx = "${libdir}/libgnutlsxx.so.*"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-support/gnutls/libtasn1_4.17.0.bb b/poky/meta/recipes-support/gnutls/libtasn1_4.17.0.bb
index 64e798b..111f5ac 100644
--- a/poky/meta/recipes-support/gnutls/libtasn1_4.17.0.bb
+++ b/poky/meta/recipes-support/gnutls/libtasn1_4.17.0.bb
@@ -4,8 +4,8 @@
 HOMEPAGE = "http://www.gnu.org/software/libtasn1/"
 
 LICENSE = "GPLv3+ & LGPLv2.1+"
-LICENSE_${PN}-bin = "GPLv3+"
-LICENSE_${PN} = "LGPLv2.1+"
+LICENSE:${PN}-bin = "GPLv3+"
+LICENSE:${PN} = "LGPLv2.1+"
 LIC_FILES_CHKSUM = "file://doc/COPYING;md5=d32239bcb673463ab874e80d47fae504 \
                     file://doc/COPYING.LESSER;md5=4fbd65380cdd255951079008b364516c \
                     file://COPYING;md5=75ac100ec923f959898182307970c360"
diff --git a/poky/meta/recipes-support/gpgme/gpgme_1.16.0.bb b/poky/meta/recipes-support/gpgme/gpgme_1.16.0.bb
index 13f456f..0ab30d9 100644
--- a/poky/meta/recipes-support/gpgme/gpgme_1.16.0.bb
+++ b/poky/meta/recipes-support/gpgme/gpgme_1.16.0.bb
@@ -26,10 +26,10 @@
 SRC_URI[sha256sum] = "6c8cc4aedb10d5d4c905894ba1d850544619ee765606ac43df7405865de29ed0"
 
 DEPENDS = "libgpg-error libassuan"
-RDEPENDS_${PN}-cpp += "libstdc++"
+RDEPENDS:${PN}-cpp += "libstdc++"
 
-RDEPENDS_python2-gpg += "python-unixadmin"
-RDEPENDS_python3-gpg += "python3-unixadmin"
+RDEPENDS:python2-gpg += "python-unixadmin"
+RDEPENDS:python3-gpg += "python3-unixadmin"
 
 BINCONFIG = "${bindir}/gpgme-config"
 
@@ -45,7 +45,7 @@
 # Building the C++ bindings for native requires a C++ compiler with C++11
 # support. Since these bindings are currently not needed, we can disable them.
 DEFAULT_LANGUAGES = ""
-DEFAULT_LANGUAGES_class-target = "cpp"
+DEFAULT_LANGUAGES:class-target = "cpp"
 LANGUAGES ?= "${DEFAULT_LANGUAGES} python"
 
 PYTHON_INHERIT = "${@bb.utils.contains('PACKAGECONFIG', 'python2', 'pythonnative', '', d)}"
@@ -69,19 +69,19 @@
 PACKAGES =. "${@bb.utils.contains('PACKAGECONFIG', 'python2', 'python2-gpg ', '', d)}"
 PACKAGES =. "${@bb.utils.contains('PACKAGECONFIG', 'python3', 'python3-gpg ', '', d)}"
 
-FILES_${PN}-cpp = "${libdir}/libgpgmepp.so.*"
-FILES_python2-gpg = "${PYTHON_SITEPACKAGES_DIR}/*"
-FILES_python3-gpg = "${PYTHON_SITEPACKAGES_DIR}/*"
-FILES_${PN}-dev += "${datadir}/common-lisp/source/gpgme/*"
+FILES:${PN}-cpp = "${libdir}/libgpgmepp.so.*"
+FILES:python2-gpg = "${PYTHON_SITEPACKAGES_DIR}/*"
+FILES:python3-gpg = "${PYTHON_SITEPACKAGES_DIR}/*"
+FILES:${PN}-dev += "${datadir}/common-lisp/source/gpgme/*"
 
-CFLAGS_append_libc-musl = " -D__error_t_defined "
-do_configure_prepend () {
+CFLAGS:append:libc-musl = " -D__error_t_defined "
+do_configure:prepend () {
 	# Else these could be used in preference to those in aclocal-copy
 	rm -f ${S}/m4/gpg-error.m4
 	rm -f ${S}/m4/libassuan.m4
 	rm -f ${S}/m4/python.m4
 }
 
-do_install_append() {
+do_install:append() {
        oe_multilib_header gpgme.h
 }
diff --git a/poky/meta/recipes-support/icu/icu_69.1.bb b/poky/meta/recipes-support/icu/icu_69.1.bb
index bfeea8d..4daf0fe 100644
--- a/poky/meta/recipes-support/icu/icu_69.1.bb
+++ b/poky/meta/recipes-support/icu/icu_69.1.bb
@@ -7,7 +7,7 @@
 
 LICENSE = "ICU"
 DEPENDS = "icu-native"
-DEPENDS_class-native = ""
+DEPENDS:class-native = ""
 
 CVE_PRODUCT = "international_components_for_unicode"
 
@@ -27,15 +27,15 @@
 # cross-compiling. Taken the situation that different builds may share a common sstate-cache
 # into consideration, the native build directory needs to be staged.
 EXTRA_OECONF = "--with-cross-build=${STAGING_ICU_DIR_NATIVE}"
-EXTRA_OECONF_class-native = ""
-EXTRA_OECONF_class-nativesdk = "--with-cross-build=${STAGING_ICU_DIR_NATIVE}"
+EXTRA_OECONF:class-native = ""
+EXTRA_OECONF:class-nativesdk = "--with-cross-build=${STAGING_ICU_DIR_NATIVE}"
 
-EXTRA_OECONF_append_class-target = "${@oe.utils.conditional('SITEINFO_ENDIANNESS', 'be', ' --with-data-packaging=archive', '', d)}"
-TARGET_CXXFLAGS_append = "${@oe.utils.conditional('SITEINFO_ENDIANNESS', 'be', ' -DICU_DATA_DIR=\\""${datadir}/${BPN}/${PV}\\""', '', d)}"
+EXTRA_OECONF:append:class-target = "${@oe.utils.conditional('SITEINFO_ENDIANNESS', 'be', ' --with-data-packaging=archive', '', d)}"
+TARGET_CXXFLAGS:append = "${@oe.utils.conditional('SITEINFO_ENDIANNESS', 'be', ' -DICU_DATA_DIR=\\""${datadir}/${BPN}/${PV}\\""', '', d)}"
 
 ASNEEDED = ""
 
-do_compile_prepend_class-target () {
+do_compile:prepend:class-target () {
 	# Make sure certain build host references do not end up being compiled
 	# in the image. This only affects libicutu and icu-dbg
 	sed  \
@@ -45,7 +45,7 @@
 }
 
 PREPROCESS_RELOCATE_DIRS = "${datadir}/${BPN}/${PV}"
-do_install_append_class-native() {
+do_install:append:class-native() {
 	mkdir -p ${D}/${STAGING_ICU_DIR_NATIVE}/config
 	cp -r ${B}/config/icucross.mk ${D}/${STAGING_ICU_DIR_NATIVE}/config
 	cp -r ${B}/config/icucross.inc ${D}/${STAGING_ICU_DIR_NATIVE}/config
@@ -54,7 +54,7 @@
 	cp -r ${B}/tools ${D}/${STAGING_ICU_DIR_NATIVE}
 }
 
-do_install_append_class-target() {
+do_install:append:class-target() {
     # The native pkgdata can not generate the correct data file.
     # Use icupkg to re-generate it.
     if [ "${SITEINFO_ENDIANNESS}" = "be" ] ; then
@@ -73,13 +73,13 @@
 
 PACKAGES =+ "libicudata libicuuc libicui18n libicutu libicuio"
 
-FILES_${PN}-dev += "${libdir}/${BPN}/"
+FILES:${PN}-dev += "${libdir}/${BPN}/"
 
-FILES_libicudata = "${libdir}/libicudata.so.*"
-FILES_libicuuc = "${libdir}/libicuuc.so.*"
-FILES_libicui18n = "${libdir}/libicui18n.so.*"
-FILES_libicutu = "${libdir}/libicutu.so.*"
-FILES_libicuio = "${libdir}/libicuio.so.*"
+FILES:libicudata = "${libdir}/libicudata.so.*"
+FILES:libicuuc = "${libdir}/libicuuc.so.*"
+FILES:libicui18n = "${libdir}/libicui18n.so.*"
+FILES:libicutu = "${libdir}/libicutu.so.*"
+FILES:libicuio = "${libdir}/libicuio.so.*"
 
 BBCLASSEXTEND = "native nativesdk"
 
@@ -97,8 +97,8 @@
 ICU_FOLDER = "${@icu_download_folder(d)}"
 
 # http://errors.yoctoproject.org/Errors/Details/20486/
-ARM_INSTRUCTION_SET_armv4 = "arm"
-ARM_INSTRUCTION_SET_armv5 = "arm"
+ARM_INSTRUCTION_SET:armv4 = "arm"
+ARM_INSTRUCTION_SET:armv5 = "arm"
 
 BASE_SRC_URI = "https://github.com/unicode-org/icu/releases/download/release-${ICU_FOLDER}/icu4c-${ICU_PV}-src.tgz"
 DATA_SRC_URI = "https://github.com/unicode-org/icu/releases/download/release-${ICU_FOLDER}/icu4c-${ICU_PV}-data.zip"
@@ -109,7 +109,7 @@
            file://0001-icu-Added-armeb-support.patch \
            "
 
-SRC_URI_append_class-target = "\
+SRC_URI:append:class-target = "\
            file://0001-Disable-LDFLAGSICUDT-for-Linux.patch \
           "
 SRC_URI[code.sha256sum] = "4cba7b7acd1d3c42c44bb0c14be6637098c7faf2b330ce876bc5f3b915d09745"
@@ -118,12 +118,12 @@
 UPSTREAM_CHECK_REGEX = "icu4c-(?P<pver>\d+(_\d+)+)-src"
 UPSTREAM_CHECK_URI = "https://github.com/unicode-org/icu/releases"
 
-EXTRA_OECONF_append_libc-musl = " ac_cv_func_strtod_l=no"
+EXTRA_OECONF:append:libc-musl = " ac_cv_func_strtod_l=no"
 
 PACKAGECONFIG ?= ""
 PACKAGECONFIG[make-icudata] = ",,,"
 
-do_make_icudata_class-target () {
+do_make_icudata:class-target () {
     ${@bb.utils.contains('PACKAGECONFIG', 'make-icudata', '', 'exit 0', d)}
     cd ${S}
     rm -rf data
diff --git a/poky/meta/recipes-support/iso-codes/iso-codes_4.6.0.bb b/poky/meta/recipes-support/iso-codes/iso-codes_4.6.0.bb
index f915716..6dd9bfa 100644
--- a/poky/meta/recipes-support/iso-codes/iso-codes_4.6.0.bb
+++ b/poky/meta/recipes-support/iso-codes/iso-codes_4.6.0.bb
@@ -19,4 +19,4 @@
 
 inherit allarch autotools
 
-FILES_${PN} += "${datadir}/xml/"
+FILES:${PN} += "${datadir}/xml/"
diff --git a/poky/meta/recipes-support/itstool/itstool_2.0.6.bb b/poky/meta/recipes-support/itstool/itstool_2.0.6.bb
index e28e2a2..eba53e7 100644
--- a/poky/meta/recipes-support/itstool/itstool_2.0.6.bb
+++ b/poky/meta/recipes-support/itstool/itstool_2.0.6.bb
@@ -12,13 +12,13 @@
 DEPENDS = "libxml2-native"
 
 SRC_URI = "http://files.itstool.org/${BPN}/${BPN}-${PV}.tar.bz2"
-SRC_URI_append_class-native = " file://0001-Native-Don-t-use-build-time-hardcoded-python-binary-.patch"
-SRC_URI_append_class-nativesdk = " file://0001-Native-Don-t-use-build-time-hardcoded-python-binary-.patch"
-SRC_URI_append_class-target = " file://0002-Don-t-use-build-time-hardcoded-python-binary-path.patch"
+SRC_URI:append:class-native = " file://0001-Native-Don-t-use-build-time-hardcoded-python-binary-.patch"
+SRC_URI:append:class-nativesdk = " file://0001-Native-Don-t-use-build-time-hardcoded-python-binary-.patch"
+SRC_URI:append:class-target = " file://0002-Don-t-use-build-time-hardcoded-python-binary-path.patch"
 
 SRC_URI[md5sum] = "4306eeba4f4aee6b393d14f9c3c57ca1"
 SRC_URI[sha256sum] = "6233cc22726a9a5a83664bf67d1af79549a298c23185d926c3677afa917b92a9"
 
 BBCLASSEXTEND = "native nativesdk"
 
-RDEPENDS_${PN} += "libxml2-python"
+RDEPENDS:${PN} += "libxml2-python"
diff --git a/poky/meta/recipes-support/libassuan/libassuan_2.5.5.bb b/poky/meta/recipes-support/libassuan/libassuan_2.5.5.bb
index 3d12ea09..2d78911 100644
--- a/poky/meta/recipes-support/libassuan/libassuan_2.5.5.bb
+++ b/poky/meta/recipes-support/libassuan/libassuan_2.5.5.bb
@@ -6,8 +6,8 @@
 BUGTRACKER = "https://bugs.g10code.com/gnupg/index"
 
 LICENSE = "GPLv3+ & LGPLv2.1+"
-LICENSE_${PN} = "LGPLv2.1+"
-LICENSE_${PN}-doc = "GPLv3+"
+LICENSE:${PN} = "LGPLv2.1+"
+LICENSE:${PN}-doc = "GPLv3+"
 LIC_FILES_CHKSUM = "file://COPYING;md5=f27defe1e96c2e1ecd4e0c9be8967949 \
                     file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1 \
                     file://src/assuan.c;endline=20;md5=ab92143a5a2adabd06d7994d1467ea5c\
@@ -26,12 +26,12 @@
 
 inherit autotools texinfo binconfig-disabled pkgconfig multilib_header
 
-do_configure_prepend () {
+do_configure:prepend () {
 	# Else these could be used in preference to those in aclocal-copy
 	rm -f ${S}/m4/*.m4
 }
 
-do_install_append () {
+do_install:append () {
     oe_multilib_header assuan.h
 }
 
diff --git a/poky/meta/recipes-support/libatomic-ops/libatomic-ops_7.6.10.bb b/poky/meta/recipes-support/libatomic-ops/libatomic-ops_7.6.10.bb
index 3089d1f..74afe9c 100644
--- a/poky/meta/recipes-support/libatomic-ops/libatomic-ops_7.6.10.bb
+++ b/poky/meta/recipes-support/libatomic-ops/libatomic-ops_7.6.10.bb
@@ -16,7 +16,7 @@
 
 S = "${WORKDIR}/libatomic_ops-${PV}"
 
-ALLOW_EMPTY_${PN} = "1"
+ALLOW_EMPTY:${PN} = "1"
 
 inherit autotools pkgconfig
 
diff --git a/poky/meta/recipes-support/libbsd/libbsd_0.11.3.bb b/poky/meta/recipes-support/libbsd/libbsd_0.11.3.bb
index 55ecae2..8daea9f 100644
--- a/poky/meta/recipes-support/libbsd/libbsd_0.11.3.bb
+++ b/poky/meta/recipes-support/libbsd/libbsd_0.11.3.bb
@@ -28,7 +28,7 @@
 # License: public-domain
 # License: public-domain-Colin-Plumb
 LICENSE = "BSD-3-Clause & BSD-4-Clause & ISC & PD"
-LICENSE_${PN} = "BSD-3-Clause & ISC & PD"
+LICENSE:${PN} = "BSD-3-Clause & ISC & PD"
 LIC_FILES_CHKSUM = "file://COPYING;md5=adf6172075bcc5837e33a8a688eb7e22"
 SECTION = "libs"
 
diff --git a/poky/meta/recipes-support/libcap-ng/libcap-ng-python_0.8.2.bb b/poky/meta/recipes-support/libcap-ng/libcap-ng-python_0.8.2.bb
index 6cea422..1240589 100644
--- a/poky/meta/recipes-support/libcap-ng/libcap-ng-python_0.8.2.bb
+++ b/poky/meta/recipes-support/libcap-ng/libcap-ng-python_0.8.2.bb
@@ -1,6 +1,6 @@
 require libcap-ng.inc
 
-FILESEXTRAPATHS_prepend := "${THISDIR}/libcap-ng:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/libcap-ng:"
 
 SUMMARY .= " - python"
 
@@ -12,7 +12,7 @@
 
 EXTRA_OECONF += "--with-python --with-python3"
 
-do_install_append() {
+do_install:append() {
     rm -rf ${D}${bindir}
     rm -rf ${D}${libdir}/.debug
     rm -f ${D}${libdir}/lib*
@@ -23,6 +23,6 @@
 
 # PACKAGES = "${PN}"
 
-FILES_${PN} = "${libdir}/python${PYTHON_BASEVERSION}"
-FILES_${PN}-dbg =+ "${PYTHON_SITEPACKAGES_DIR}/.debug/_capng.so"
+FILES:${PN} = "${libdir}/python${PYTHON_BASEVERSION}"
+FILES:${PN}-dbg =+ "${PYTHON_SITEPACKAGES_DIR}/.debug/_capng.so"
 
diff --git a/poky/meta/recipes-support/libcap-ng/libcap-ng.inc b/poky/meta/recipes-support/libcap-ng/libcap-ng.inc
index 64bc62d..34374b4 100644
--- a/poky/meta/recipes-support/libcap-ng/libcap-ng.inc
+++ b/poky/meta/recipes-support/libcap-ng/libcap-ng.inc
@@ -13,7 +13,7 @@
 
 SRC_URI[sha256sum] = "52c083b77c2b0d8449dee141f9c3eba76e6d4c5ad44ef05df25891126cb85ae9"
 
-EXTRA_OECONF_append_class-target = " --with-capability_header=${STAGING_INCDIR}/linux/capability.h"
-EXTRA_OECONF_append_class-nativesdk = " --with-capability_header=${STAGING_INCDIR}/linux/capability.h"
+EXTRA_OECONF:append:class-target = " --with-capability_header=${STAGING_INCDIR}/linux/capability.h"
+EXTRA_OECONF:append:class-nativesdk = " --with-capability_header=${STAGING_INCDIR}/linux/capability.h"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-support/libcap-ng/libcap-ng_0.8.2.bb b/poky/meta/recipes-support/libcap-ng/libcap-ng_0.8.2.bb
index 6e6de45..6e16e88 100644
--- a/poky/meta/recipes-support/libcap-ng/libcap-ng_0.8.2.bb
+++ b/poky/meta/recipes-support/libcap-ng/libcap-ng_0.8.2.bb
@@ -6,7 +6,7 @@
 
 BBCLASSEXTEND = "native nativesdk"
 
-do_install_append() {
+do_install:append() {
 	# Moving libcap-ng to base_libdir
 	if [ ! ${D}${libdir} -ef ${D}${base_libdir} ]; then
 		mkdir -p ${D}/${base_libdir}/
diff --git a/poky/meta/recipes-support/libcap/libcap_2.51.bb b/poky/meta/recipes-support/libcap/libcap_2.51.bb
index a43dca9..3e653e3 100644
--- a/poky/meta/recipes-support/libcap/libcap_2.51.bb
+++ b/poky/meta/recipes-support/libcap/libcap_2.51.bb
@@ -21,7 +21,7 @@
 inherit lib_package
 
 PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}"
-PACKAGECONFIG_class-native ??= ""
+PACKAGECONFIG:class-native ??= ""
 
 PACKAGECONFIG[pam] = "PAM_CAP=yes,PAM_CAP=no,libpam"
 
@@ -33,7 +33,7 @@
   BUILD_GPERF=yes \
 "
 
-EXTRA_OEMAKE_append_class-target = " SYSTEM_HEADERS=${STAGING_INCDIR}"
+EXTRA_OEMAKE:append:class-target = " SYSTEM_HEADERS=${STAGING_INCDIR}"
 
 do_compile() {
 	unset CFLAGS BUILD_CFLAGS
@@ -54,7 +54,7 @@
 		SBINDIR="${sbindir}"
 }
 
-do_install_append() {
+do_install:append() {
 	# Move the library to base_libdir
 	install -d ${D}${base_libdir}
 	if [ ! ${D}${libdir} -ef ${D}${base_libdir} ]; then
@@ -65,9 +65,9 @@
 	fi
 }
 
-FILES_${PN}-dev += "${base_libdir}/*.so"
+FILES:${PN}-dev += "${base_libdir}/*.so"
 
 # pam files
-FILES_${PN} += "${base_libdir}/security/*.so"
+FILES:${PN} += "${base_libdir}/security/*.so"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-support/libcheck/libcheck_0.15.2.bb b/poky/meta/recipes-support/libcheck/libcheck_0.15.2.bb
index 6282302..89bcafc 100644
--- a/poky/meta/recipes-support/libcheck/libcheck_0.15.2.bb
+++ b/poky/meta/recipes-support/libcheck/libcheck_0.15.2.bb
@@ -21,13 +21,13 @@
 
 CACHED_CONFIGUREVARS += "ac_cv_path_AWK_PATH=${bindir}/gawk"
 
-RREPLACES_${PN} = "check (<= 0.9.5)"
+RREPLACES:${PN} = "check (<= 0.9.5)"
 
 BBCLASSEXTEND = "native nativesdk"
 
 PACKAGES =+ "checkmk"
 
-FILES_checkmk = "${bindir}/checkmk"
+FILES:checkmk = "${bindir}/checkmk"
 
-RDEPENDS_checkmk = "gawk"
+RDEPENDS:checkmk = "gawk"
 
diff --git a/poky/meta/recipes-support/libevent/libevent_2.1.12.bb b/poky/meta/recipes-support/libevent/libevent_2.1.12.bb
index 6d53fea..2a562fe 100644
--- a/poky/meta/recipes-support/libevent/libevent_2.1.12.bb
+++ b/poky/meta/recipes-support/libevent/libevent_2.1.12.bb
@@ -40,11 +40,11 @@
 python split_libevent_libs () {
     do_split_packages(d, '${libdir}', r'^libevent_([a-z]*)-.*\.so\..*', '${PN}-%s', '${SUMMARY} (%s)', prepend=True, allow_links=True)
 }
-PACKAGESPLITFUNCS_prepend = "split_libevent_libs "
+PACKAGESPLITFUNCS:prepend = "split_libevent_libs "
 
 BBCLASSEXTEND = "native nativesdk"
 
-do_install_append() {
+do_install:append() {
 	rm ${D}${bindir}/event_rpcgen.py
 	rmdir ${D}${bindir}
         oe_multilib_header event2/event-config.h
diff --git a/poky/meta/recipes-support/libffi/libffi_3.4.2.bb b/poky/meta/recipes-support/libffi/libffi_3.4.2.bb
index 19b6ed3..733fcc5 100644
--- a/poky/meta/recipes-support/libffi/libffi_3.4.2.bb
+++ b/poky/meta/recipes-support/libffi/libffi_3.4.2.bb
@@ -19,14 +19,14 @@
 UPSTREAM_CHECK_REGEX = "libffi-(?P<pver>\d+(\.\d+)+)\.tar"
 
 EXTRA_OECONF += "--disable-builddir --disable-exec-static-tramp"
-EXTRA_OEMAKE_class-target = "LIBTOOLFLAGS='--tag=CC'"
+EXTRA_OEMAKE:class-target = "LIBTOOLFLAGS='--tag=CC'"
 inherit autotools texinfo multilib_header
 
-do_install_append() {
+do_install:append() {
 	oe_multilib_header ffi.h ffitarget.h
 }
 
-FILES_${PN}-dev += "${libdir}/libffi-${PV}"
+FILES:${PN}-dev += "${libdir}/libffi-${PV}"
 
 # Doesn't compile in MIPS16e mode due to use of hand-written
 # assembly
diff --git a/poky/meta/recipes-support/libfm/libfm_1.3.2.bb b/poky/meta/recipes-support/libfm/libfm_1.3.2.bb
index eb0949ae..79c7c8e 100644
--- a/poky/meta/recipes-support/libfm/libfm_1.3.2.bb
+++ b/poky/meta/recipes-support/libfm/libfm_1.3.2.bb
@@ -29,7 +29,7 @@
 
 PACKAGES =+ "libfm-gtk"
 PACKAGES += "${PN}-mime"
-FILES_libfm-gtk = " \
+FILES:libfm-gtk = " \
     ${libdir}/libfm-gtk*so.* \
     ${libdir}/libfm/modules/gtk* \
     ${bindir}/libfm-pref-apps \
@@ -40,9 +40,9 @@
     ${datadir}/libfm/images/unknown.png \
     ${datadir}/libfm/ui/*.ui \
 "
-FILES_${PN}-mime = "${datadir}/mime/"
+FILES:${PN}-mime = "${datadir}/mime/"
 
-do_install_append () {
+do_install:append () {
     # remove files which are part of libfm-extra
     rm -f ${D}${includedir}/libfm-1.0/fm-xml-file.h
     rm -f ${D}${includedir}/libfm-1.0/fm-version.h
diff --git a/poky/meta/recipes-support/libgcrypt/libgcrypt_1.9.3.bb b/poky/meta/recipes-support/libgcrypt/libgcrypt_1.9.3.bb
index fd3d8e0..dee936d 100644
--- a/poky/meta/recipes-support/libgcrypt/libgcrypt_1.9.3.bb
+++ b/poky/meta/recipes-support/libgcrypt/libgcrypt_1.9.3.bb
@@ -8,9 +8,9 @@
 
 # helper program gcryptrnd and getrandom are under GPL, rest LGPL
 LICENSE = "GPLv2+ & LGPLv2.1+ & GPLv3+"
-LICENSE_${PN} = "LGPLv2.1+"
-LICENSE_${PN}-dev = "GPLv2+ & LGPLv2.1+"
-LICENSE_dumpsexp-dev = "GPLv3+"
+LICENSE:${PN} = "LGPLv2.1+"
+LICENSE:${PN}-dev = "GPLv2+ & LGPLv2.1+"
+LICENSE:dumpsexp-dev = "GPLv3+"
 
 LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
                     file://COPYING.LIB;md5=bbb461211a33b134d42ed5ee802b37ff \
@@ -37,25 +37,25 @@
 inherit autotools texinfo binconfig-disabled pkgconfig
 
 EXTRA_OECONF = "--disable-asm"
-EXTRA_OEMAKE_class-target = "LIBTOOLFLAGS='--tag=CC'"
+EXTRA_OEMAKE:class-target = "LIBTOOLFLAGS='--tag=CC'"
 
 PACKAGECONFIG ??= "capabilities"
 PACKAGECONFIG[capabilities] = "--with-capabilities,--without-capabilities,libcap"
 
-do_configure_prepend () {
+do_configure:prepend () {
 	# Else this could be used in preference to the one in aclocal-copy
 	rm -f ${S}/m4/gpg-error.m4
 }
 
 # libgcrypt.pc is added locally and thus installed here
-do_install_append() {
+do_install:append() {
 	install -d ${D}/${libdir}/pkgconfig
 	install -m 0644 ${B}/src/libgcrypt.pc ${D}/${libdir}/pkgconfig/
 }
 
 PACKAGES =+ "dumpsexp-dev"
 
-FILES_${PN}-dev += "${bindir}/hmac256"
-FILES_dumpsexp-dev += "${bindir}/dumpsexp"
+FILES:${PN}-dev += "${bindir}/hmac256"
+FILES:dumpsexp-dev += "${bindir}/dumpsexp"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-support/libgpg-error/libgpg-error_1.42.bb b/poky/meta/recipes-support/libgpg-error/libgpg-error_1.42.bb
index c972d9a..04f5760 100644
--- a/poky/meta/recipes-support/libgpg-error/libgpg-error_1.42.bb
+++ b/poky/meta/recipes-support/libgpg-error/libgpg-error_1.42.bb
@@ -31,13 +31,13 @@
 
 CPPFLAGS += "-P"
 
-do_install_append() {
+do_install:append() {
 	# we don't have common lisp in OE
 	rm -rf "${D}${datadir}/common-lisp/"
 	oe_multilib_header gpg-error.h gpgrt.h
 }
 
-FILES_${PN}-dev += "${bindir}/gpg-error"
-FILES_${PN}-doc += "${datadir}/libgpg-error/errorref.txt"
+FILES:${PN}-dev += "${bindir}/gpg-error"
+FILES:${PN}-doc += "${datadir}/libgpg-error/errorref.txt"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-support/libical/libical_3.0.10.bb b/poky/meta/recipes-support/libical/libical_3.0.10.bb
index 30d6bbf..aa5f11e 100644
--- a/poky/meta/recipes-support/libical/libical_3.0.10.bb
+++ b/poky/meta/recipes-support/libical/libical_3.0.10.bb
@@ -19,7 +19,7 @@
 
 inherit cmake pkgconfig
 
-DEPENDS_append_class-target = "libical-native"
+DEPENDS:append:class-target = "libical-native"
 
 PACKAGECONFIG ??= "icu glib"
 PACKAGECONFIG[bdb] = ",-DCMAKE_DISABLE_FIND_PACKAGE_BDB=True,db"
@@ -32,9 +32,9 @@
 # doc build fails with linker error (??) for libical-glib so disable it
 EXTRA_OECMAKE += "-DICAL_BUILD_DOCS=false"
 
-EXTRA_OECMAKE_append_class-target = " -DIMPORT_ICAL_GLIB_SRC_GENERATOR=${STAGING_LIBDIR_NATIVE}/cmake/LibIcal/IcalGlibSrcGenerator.cmake"
+EXTRA_OECMAKE:append:class-target = " -DIMPORT_ICAL_GLIB_SRC_GENERATOR=${STAGING_LIBDIR_NATIVE}/cmake/LibIcal/IcalGlibSrcGenerator.cmake"
 
-do_install_append () {
+do_install:append () {
     # Remove build host references
     sed -i \
        -e 's,${STAGING_LIBDIR},${libdir},g' \
diff --git a/poky/meta/recipes-support/libksba/libksba_1.6.0.bb b/poky/meta/recipes-support/libksba/libksba_1.6.0.bb
index 552007d..1374394 100644
--- a/poky/meta/recipes-support/libksba/libksba_1.6.0.bb
+++ b/poky/meta/recipes-support/libksba/libksba_1.6.0.bb
@@ -6,8 +6,8 @@
 hooks for easy integration with Libgcrypt. "
 HOMEPAGE = "http://www.gnupg.org/related_software/libksba/"
 LICENSE = "GPLv3+ & (GPLv2+ | LGPLv3+)"
-LICENSE_${PN} = "GPLv2+ | LGPLv3+"
-LICENSE_${PN}-doc = "GPLv3+"
+LICENSE:${PN} = "GPLv2+ | LGPLv3+"
+LICENSE:${PN}-doc = "GPLv3+"
 LIC_FILES_CHKSUM = "file://COPYING;md5=fd541d83f75d038c4e0617b672ed8bda \
                     file://COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
                     file://COPYING.GPLv3;md5=2f31b266d3440dd7ee50f92cf67d8e6c \
@@ -26,7 +26,7 @@
 
 SRC_URI[sha256sum] = "dad683e6f2d915d880aa4bed5cea9a115690b8935b78a1bbe01669189307a48b"
 
-do_configure_prepend () {
+do_configure:prepend () {
 	# Else these could be used in preference to those in aclocal-copy
 	rm -f ${S}/m4/gpg-error.m4
 }
diff --git a/poky/meta/recipes-support/libmicrohttpd/libmicrohttpd_0.9.73.bb b/poky/meta/recipes-support/libmicrohttpd/libmicrohttpd_0.9.73.bb
index 219f0c4..0b5901b 100644
--- a/poky/meta/recipes-support/libmicrohttpd/libmicrohttpd_0.9.73.bb
+++ b/poky/meta/recipes-support/libmicrohttpd/libmicrohttpd_0.9.73.bb
@@ -17,14 +17,14 @@
 EXTRA_OECONF += "--disable-static --with-gnutls=${STAGING_LIBDIR}/../"
 
 PACKAGECONFIG ?= "curl https"
-PACKAGECONFIG_append_class-target = "\
+PACKAGECONFIG:append:class-target = "\
         ${@bb.utils.filter('DISTRO_FEATURES', 'largefile', d)} \
 "
 PACKAGECONFIG[largefile] = "--enable-largefile,--disable-largefile,,"
 PACKAGECONFIG[curl] = "--enable-curl,--disable-curl,curl,"
 PACKAGECONFIG[https] = "--enable-https,--disable-https,libgcrypt gnutls,"
 
-do_compile_append() {
+do_compile:append() {
     sed -i s:-L${STAGING_LIBDIR}::g libmicrohttpd.pc
 }
 
diff --git a/poky/meta/recipes-support/libnl/libnl_3.5.0.bb b/poky/meta/recipes-support/libnl/libnl_3.5.0.bb
index 9753f93..7480202 100644
--- a/poky/meta/recipes-support/libnl/libnl_3.5.0.bb
+++ b/poky/meta/recipes-support/libnl/libnl_3.5.0.bb
@@ -28,32 +28,32 @@
 
 inherit autotools pkgconfig ptest
 
-FILES_${PN} = "${libdir}/libnl-3.so.* \
+FILES:${PN} = "${libdir}/libnl-3.so.* \
                ${libdir}/libnl.so.* \
                ${sysconfdir}"
-RREPLACES_${PN} = "libnl2"
-RCONFLICTS_${PN} = "libnl2"
+RREPLACES:${PN} = "libnl2"
+RCONFLICTS:${PN} = "libnl2"
 
-FILES_${PN}-dev += "${libdir}/libnl/cli/*/*.la"
-FILES_${PN}-staticdev += "${libdir}/libnl/cli/*/*.a"
+FILES:${PN}-dev += "${libdir}/libnl/cli/*/*.la"
+FILES:${PN}-staticdev += "${libdir}/libnl/cli/*/*.a"
 
 PACKAGES += "${PN}-cli ${PN}-genl ${PN}-idiag ${PN}-nf ${PN}-route ${PN}-xfrm"
-FILES_${PN}-cli   = "${libdir}/libnl-cli-3.so.* \
+FILES:${PN}-cli   = "${libdir}/libnl-cli-3.so.* \
                      ${libdir}/libnl/cli/*/*.so \
                      ${bindir}/genl-ctrl-list \
                      ${bindir}/idiag-socket-details \
                      ${bindir}/nf-* \
                      ${bindir}/nl-*"
-FILES_${PN}-genl  = "${libdir}/libnl-genl-3.so.* \
+FILES:${PN}-genl  = "${libdir}/libnl-genl-3.so.* \
                      ${libdir}/libnl-genl.so.*"
-FILES_${PN}-idiag = "${libdir}/libnl-idiag-3.so.*"
-FILES_${PN}-nf    = "${libdir}/libnl-nf-3.so.*"
-FILES_${PN}-route = "${libdir}/libnl-route-3.so.*"
-FILES_${PN}-xfrm  = "${libdir}/libnl-xfrm-3.so.*"
-RREPLACES_${PN}-genl = "libnl-genl2"
-RCONFLICTS_${PN}-genl = "libnl-genl2"
+FILES:${PN}-idiag = "${libdir}/libnl-idiag-3.so.*"
+FILES:${PN}-nf    = "${libdir}/libnl-nf-3.so.*"
+FILES:${PN}-route = "${libdir}/libnl-route-3.so.*"
+FILES:${PN}-xfrm  = "${libdir}/libnl-xfrm-3.so.*"
+RREPLACES:${PN}-genl = "libnl-genl2"
+RCONFLICTS:${PN}-genl = "libnl-genl2"
 
-RDEPENDS_${PN}-ptest += "libcheck"
+RDEPENDS:${PN}-ptest += "libcheck"
 DEPENDS += "${@bb.utils.contains('PTEST_ENABLED', '1', 'libcheck', '', d)}"
 
 # make sure the tests don't link against wrong so file
diff --git a/poky/meta/recipes-support/libpcre/libpcre2_10.37.bb b/poky/meta/recipes-support/libpcre/libpcre2_10.37.bb
index b596fbe..e0ead59 100644
--- a/poky/meta/recipes-support/libpcre/libpcre2_10.37.bb
+++ b/poky/meta/recipes-support/libpcre/libpcre2_10.37.bb
@@ -33,20 +33,20 @@
     --enable-pcre2-32 \
 "
 CFLAGS += "-D_REENTRANT"
-CXXFLAGS_append_powerpc = " -lstdc++"
+CXXFLAGS:append:powerpc = " -lstdc++"
 
 PACKAGES =+ "libpcre2-16 libpcre2-32 pcre2grep pcre2grep-doc pcre2test pcre2test-doc"
 
-SUMMARY_pcre2grep = "grep utility that uses perl 5 compatible regexes"
-SUMMARY_pcre2grep-doc = "grep utility that uses perl 5 compatible regexes - docs"
-SUMMARY_pcre2test = "program for testing Perl-comatible regular expressions"
-SUMMARY_pcre2test-doc = "program for testing Perl-comatible regular expressions - docs"
+SUMMARY:pcre2grep = "grep utility that uses perl 5 compatible regexes"
+SUMMARY:pcre2grep-doc = "grep utility that uses perl 5 compatible regexes - docs"
+SUMMARY:pcre2test = "program for testing Perl-comatible regular expressions"
+SUMMARY:pcre2test-doc = "program for testing Perl-comatible regular expressions - docs"
 
-FILES_libpcre2-16 = "${libdir}/libpcre2-16.so.*"
-FILES_libpcre2-32 = "${libdir}/libpcre2-32.so.*"
-FILES_pcre2grep = "${bindir}/pcre2grep"
-FILES_pcre2grep-doc = "${mandir}/man1/pcre2grep.1"
-FILES_pcre2test = "${bindir}/pcre2test"
-FILES_pcre2test-doc = "${mandir}/man1/pcre2test.1"
+FILES:libpcre2-16 = "${libdir}/libpcre2-16.so.*"
+FILES:libpcre2-32 = "${libdir}/libpcre2-32.so.*"
+FILES:pcre2grep = "${bindir}/pcre2grep"
+FILES:pcre2grep-doc = "${mandir}/man1/pcre2grep.1"
+FILES:pcre2test = "${bindir}/pcre2test"
+FILES:pcre2test-doc = "${mandir}/man1/pcre2test.1"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-support/libpcre/libpcre_8.45.bb b/poky/meta/recipes-support/libpcre/libpcre_8.45.bb
index 345c46e..76b20f5 100644
--- a/poky/meta/recipes-support/libpcre/libpcre_8.45.bb
+++ b/poky/meta/recipes-support/libpcre/libpcre_8.45.bb
@@ -38,19 +38,19 @@
 
 PACKAGES =+ "libpcrecpp libpcreposix pcregrep pcregrep-doc pcretest pcretest-doc"
 
-SUMMARY_libpcrecpp = "${SUMMARY} - C++ wrapper functions"
-SUMMARY_libpcreposix = "${SUMMARY} - C wrapper functions based on the POSIX regex API"
-SUMMARY_pcregrep = "grep utility that uses perl 5 compatible regexes"
-SUMMARY_pcregrep-doc = "grep utility that uses perl 5 compatible regexes - docs"
-SUMMARY_pcretest = "program for testing Perl-comatible regular expressions"
-SUMMARY_pcretest-doc = "program for testing Perl-comatible regular expressions - docs"
+SUMMARY:libpcrecpp = "${SUMMARY} - C++ wrapper functions"
+SUMMARY:libpcreposix = "${SUMMARY} - C wrapper functions based on the POSIX regex API"
+SUMMARY:pcregrep = "grep utility that uses perl 5 compatible regexes"
+SUMMARY:pcregrep-doc = "grep utility that uses perl 5 compatible regexes - docs"
+SUMMARY:pcretest = "program for testing Perl-comatible regular expressions"
+SUMMARY:pcretest-doc = "program for testing Perl-comatible regular expressions - docs"
 
-FILES_libpcrecpp = "${libdir}/libpcrecpp.so.*"
-FILES_libpcreposix = "${libdir}/libpcreposix.so.*"
-FILES_pcregrep = "${bindir}/pcregrep"
-FILES_pcregrep-doc = "${mandir}/man1/pcregrep.1"
-FILES_pcretest = "${bindir}/pcretest"
-FILES_pcretest-doc = "${mandir}/man1/pcretest.1"
+FILES:libpcrecpp = "${libdir}/libpcrecpp.so.*"
+FILES:libpcreposix = "${libdir}/libpcreposix.so.*"
+FILES:pcregrep = "${bindir}/pcregrep"
+FILES:pcregrep-doc = "${mandir}/man1/pcregrep.1"
+FILES:pcretest = "${bindir}/pcretest"
+FILES:pcretest-doc = "${mandir}/man1/pcretest.1"
 
 BBCLASSEXTEND = "native nativesdk"
 
@@ -70,4 +70,4 @@
 	sed -i -e 's:do3=yes:do3=no:g' ${D}${PTEST_PATH}/RunTest 
 }
 
-RDEPENDS_${PN}-ptest += "make"
+RDEPENDS:${PN}-ptest += "make"
diff --git a/poky/meta/recipes-support/libproxy/libproxy_0.4.17.bb b/poky/meta/recipes-support/libproxy/libproxy_0.4.17.bb
index c2579b3..7e97d36 100644
--- a/poky/meta/recipes-support/libproxy/libproxy_0.4.17.bb
+++ b/poky/meta/recipes-support/libproxy/libproxy_0.4.17.bb
@@ -37,6 +37,6 @@
     -DLIB_INSTALL_DIR=${libdir} \
     -DLIBEXEC_INSTALL_DIR=${libexecdir} \
 "
-SECURITY_PIE_CFLAGS_remove = "-fPIE -pie"
+SECURITY_PIE_CFLAGS:remove = "-fPIE -pie"
 
-FILES_${PN} += "${libdir}/${BPN}/${PV}/modules"
+FILES:${PN} += "${libdir}/${BPN}/${PV}/modules"
diff --git a/poky/meta/recipes-support/libseccomp/libseccomp_2.5.1.bb b/poky/meta/recipes-support/libseccomp/libseccomp_2.5.1.bb
index 79736f2..74bface 100644
--- a/poky/meta/recipes-support/libseccomp/libseccomp_2.5.1.bb
+++ b/poky/meta/recipes-support/libseccomp/libseccomp_2.5.1.bb
@@ -50,7 +50,7 @@
     done
 }
 
-FILES_${PN} = "${bindir} ${libdir}/${BPN}.so*"
-FILES_${PN}-dbg += "${libdir}/${PN}/tests/.debug/* ${libdir}/${PN}/tools/.debug"
+FILES:${PN} = "${bindir} ${libdir}/${BPN}.so*"
+FILES:${PN}-dbg += "${libdir}/${PN}/tests/.debug/* ${libdir}/${PN}/tools/.debug"
 
-RDEPENDS_${PN}-ptest = "coreutils bash"
+RDEPENDS:${PN}-ptest = "coreutils bash"
diff --git a/poky/meta/recipes-support/libsoup/libsoup-2.4_2.72.0.bb b/poky/meta/recipes-support/libsoup/libsoup-2.4_2.72.0.bb
index 5b74119..3149896 100644
--- a/poky/meta/recipes-support/libsoup/libsoup-2.4_2.72.0.bb
+++ b/poky/meta/recipes-support/libsoup/libsoup-2.4_2.72.0.bb
@@ -28,7 +28,7 @@
 PACKAGECONFIG[gnome] = "-Dgnome=true,-Dgnome=false"
 PACKAGECONFIG[gssapi] = "-Dgssapi=enabled,-Dgssapi=disabled,krb5"
 
-EXTRA_OEMESON_append = " -Dvapi=disabled -Dtls_check=false"
+EXTRA_OEMESON:append = " -Dvapi=disabled -Dtls_check=false"
 
 GTKDOC_MESON_OPTION = "gtk_doc"
 
@@ -36,9 +36,9 @@
 # and will therefore become subject to renaming by debian.bbclass. Prevent
 # renaming in order to keep the package name consistent regardless of whether
 # gnome support is enabled or disabled.
-DEBIAN_NOAUTONAME_${PN} = "1"
+DEBIAN_NOAUTONAME:${PN} = "1"
 
 # glib-networking is needed for SSL, proxies, etc.
-RRECOMMENDS_${PN} = "glib-networking"
+RRECOMMENDS:${PN} = "glib-networking"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-support/libssh2/libssh2_1.9.0.bb b/poky/meta/recipes-support/libssh2/libssh2_1.9.0.bb
index f290bf3..a0cbb6a 100644
--- a/poky/meta/recipes-support/libssh2/libssh2_1.9.0.bb
+++ b/poky/meta/recipes-support/libssh2/libssh2_1.9.0.bb
@@ -14,7 +14,7 @@
            file://0001-kex.c-move-EC-macro-outside-of-if-check-549-550.patch \
 "
 
-SRC_URI_append_ptest = " file://0001-Don-t-let-host-enviroment-to-decide-if-a-test-is-bui.patch"
+SRC_URI:append:ptest = " file://0001-Don-t-let-host-enviroment-to-decide-if-a-test-is-bui.patch"
 
 SRC_URI[md5sum] = "1beefafe8963982adc84b408b2959927"
 SRC_URI[sha256sum] = "d5fb8bd563305fd1074dda90bd053fb2d29fc4bce048d182f96eaa466dfadafd"
@@ -34,8 +34,8 @@
 BBCLASSEXTEND = "native nativesdk"
 
 # required for ptest on documentation
-RDEPENDS_${PN}-ptest = "man-db openssh util-linux-col"
-RDEPENDS_${PN}-ptest_append_libc-glibc = " locale-base-en-us"
+RDEPENDS:${PN}-ptest = "man-db openssh util-linux-col"
+RDEPENDS:${PN}-ptest:append:libc-glibc = " locale-base-en-us"
 
 do_compile_ptest() {
 	sed -i "/\$(MAKE) \$(AM_MAKEFLAGS) check-TESTS/d" tests/Makefile
diff --git a/poky/meta/recipes-support/libunwind/libunwind.inc b/poky/meta/recipes-support/libunwind/libunwind.inc
index 17ba151..bf74f9f 100644
--- a/poky/meta/recipes-support/libunwind/libunwind.inc
+++ b/poky/meta/recipes-support/libunwind/libunwind.inc
@@ -4,7 +4,7 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://COPYING;md5=2d80c8ed4062b8339b715f90fa68cc9f"
 DEPENDS += "libatomic-ops"
-DEPENDS_append_libc-musl = " libucontext"
+DEPENDS:append:libc-musl = " libucontext"
 
 inherit autotools multilib_header
 
@@ -12,11 +12,11 @@
 PACKAGECONFIG[lzma] = "--enable-minidebuginfo,--disable-minidebuginfo,xz"
 PACKAGECONFIG[latexdocs] = "--enable-documentation, --disable-documentation, latex2man-native"
 
-EXTRA_OECONF_arm = "--enable-debug-frame"
-EXTRA_OECONF_armeb = "--enable-debug-frame"
-EXTRA_OECONF_aarch64 = "--enable-debug-frame"
+EXTRA_OECONF:arm = "--enable-debug-frame"
+EXTRA_OECONF:armeb = "--enable-debug-frame"
+EXTRA_OECONF:aarch64 = "--enable-debug-frame"
 
-do_install_append () {
+do_install:append () {
 	oe_multilib_header libunwind.h
 }
 
diff --git a/poky/meta/recipes-support/libunwind/libunwind_1.5.0.bb b/poky/meta/recipes-support/libunwind/libunwind_1.5.0.bb
index 6392cac..9b515b5 100644
--- a/poky/meta/recipes-support/libunwind/libunwind_1.5.0.bb
+++ b/poky/meta/recipes-support/libunwind/libunwind_1.5.0.bb
@@ -8,21 +8,21 @@
            file://0006-Fix-for-X32.patch \
            file://0001-configure-Do-not-enforce-libdir-for-ppc64.patch \
            "
-SRC_URI_append_libc-musl = " file://musl-header-conflict.patch"
+SRC_URI:append:libc-musl = " file://musl-header-conflict.patch"
 
 SRC_URI[md5sum] = "c6923dda0675f6a4ef21426164dc8b6a"
 SRC_URI[sha256sum] = "90337653d92d4a13de590781371c604f9031cdb50520366aa1e3a91e1efb1017"
 
-EXTRA_OECONF_append_libc-musl = " --disable-documentation --disable-tests --enable-static"
+EXTRA_OECONF:append:libc-musl = " --disable-documentation --disable-tests --enable-static"
 
 # http://errors.yoctoproject.org/Errors/Details/20487/
-ARM_INSTRUCTION_SET_armv4 = "arm"
-ARM_INSTRUCTION_SET_armv5 = "arm"
+ARM_INSTRUCTION_SET:armv4 = "arm"
+ARM_INSTRUCTION_SET:armv5 = "arm"
 
-COMPATIBLE_HOST_riscv64 = "null"
-COMPATIBLE_HOST_riscv32 = "null"
+COMPATIBLE_HOST:riscv64 = "null"
+COMPATIBLE_HOST:riscv32 = "null"
 
 LDFLAGS += "-Wl,-z,relro,-z,now ${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', ' -fuse-ld=bfd ', '', d)}"
 
-SECURITY_LDFLAGS_append_libc-musl = " -lssp_nonshared"
-CACHED_CONFIGUREVARS_append_libc-musl = " LDFLAGS='${LDFLAGS} -lucontext'"
+SECURITY_LDFLAGS:append:libc-musl = " -lssp_nonshared"
+CACHED_CONFIGUREVARS:append:libc-musl = " LDFLAGS='${LDFLAGS} -lucontext'"
diff --git a/poky/meta/recipes-support/liburcu/liburcu_0.13.0.bb b/poky/meta/recipes-support/liburcu/liburcu_0.13.0.bb
index c9fef89..aba8d07 100644
--- a/poky/meta/recipes-support/liburcu/liburcu_0.13.0.bb
+++ b/poky/meta/recipes-support/liburcu/liburcu_0.13.0.bb
@@ -18,8 +18,8 @@
 S = "${WORKDIR}/userspace-rcu-${PV}"
 inherit autotools multilib_header
 
-CPPFLAGS_append_riscv64  = " -pthread -D_REENTRANT"
+CPPFLAGS:append:riscv64  = " -pthread -D_REENTRANT"
 
-do_install_append() {
+do_install:append() {
     oe_multilib_header urcu/config.h
 }
diff --git a/poky/meta/recipes-support/libusb/libusb1_1.0.24.bb b/poky/meta/recipes-support/libusb/libusb1_1.0.24.bb
index 92e66b1..95a2095 100644
--- a/poky/meta/recipes-support/libusb/libusb1_1.0.24.bb
+++ b/poky/meta/recipes-support/libusb/libusb1_1.0.24.bb
@@ -20,12 +20,12 @@
 
 inherit autotools pkgconfig ptest
 
-PACKAGECONFIG_class-target ??= "udev"
+PACKAGECONFIG:class-target ??= "udev"
 PACKAGECONFIG[udev] = "--enable-udev,--disable-udev,udev"
 
 EXTRA_OECONF = "--libdir=${base_libdir}"
 
-do_install_append() {
+do_install:append() {
 	install -d ${D}${libdir}
 	if [ ! ${D}${libdir} -ef ${D}${base_libdir} ]; then
 		mv ${D}${base_libdir}/pkgconfig ${D}${libdir}
@@ -40,6 +40,6 @@
     install -m 755 ${B}/tests/.libs/stress ${D}${PTEST_PATH}         
 }
 
-FILES_${PN} += "${base_libdir}/*.so.*"
+FILES:${PN} += "${base_libdir}/*.so.*"
 
-FILES_${PN}-dev += "${base_libdir}/*.so ${base_libdir}/*.la"
+FILES:${PN}-dev += "${base_libdir}/*.so ${base_libdir}/*.la"
diff --git a/poky/meta/recipes-support/libxslt/libxslt_1.1.34.bb b/poky/meta/recipes-support/libxslt/libxslt_1.1.34.bb
index 63cce6f..c888f3d 100644
--- a/poky/meta/recipes-support/libxslt/libxslt_1.1.34.bb
+++ b/poky/meta/recipes-support/libxslt/libxslt_1.1.34.bb
@@ -27,7 +27,7 @@
 
 inherit autotools pkgconfig binconfig-disabled lib_package multilib_header
 
-do_configure_prepend () {
+do_configure:prepend () {
 	# We don't DEPEND on binutils for ansidecl.h so ensure we don't use the header.
 	# This can be removed when upgrading to 1.1.34.
 	sed -i -e 's/ansidecl.h//' ${S}/configure.ac
@@ -39,20 +39,20 @@
 
 EXTRA_OECONF = "--without-python --without-debug --without-mem-debug --without-crypto --with-html-subdir=${BPN}"
 # older versions of this recipe had ${PN}-utils
-RPROVIDES_${PN}-bin += "${PN}-utils"
-RCONFLICTS_${PN}-bin += "${PN}-utils"
-RREPLACES_${PN}-bin += "${PN}-utils"
+RPROVIDES:${PN}-bin += "${PN}-utils"
+RCONFLICTS:${PN}-bin += "${PN}-utils"
+RREPLACES:${PN}-bin += "${PN}-utils"
 
 # This is only needed until libxml can load the relocated catalog itself
-do_install_append_class-native () {
+do_install:append:class-native () {
     create_wrapper ${D}/${bindir}/xsltproc XML_CATALOG_FILES=${sysconfdir}/xml/catalog
 }
 
-do_install_append () {
+do_install:append () {
    oe_multilib_header libxslt/xsltconfig.h
 }
 
-FILES_${PN} += "${libdir}/libxslt-plugins"
-FILES_${PN}-dev += "${libdir}/xsltConf.sh"
+FILES:${PN} += "${libdir}/libxslt-plugins"
+FILES:${PN}-dev += "${libdir}/xsltConf.sh"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-support/libyaml/libyaml_0.2.5.bb b/poky/meta/recipes-support/libyaml/libyaml_0.2.5.bb
index 778e091..4cb5717 100644
--- a/poky/meta/recipes-support/libyaml/libyaml_0.2.5.bb
+++ b/poky/meta/recipes-support/libyaml/libyaml_0.2.5.bb
@@ -15,7 +15,7 @@
 
 inherit autotools
 
-DISABLE_STATIC_class-nativesdk = ""
-DISABLE_STATIC_class-native = ""
+DISABLE_STATIC:class-nativesdk = ""
+DISABLE_STATIC:class-native = ""
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-support/lzop/lzop_1.04.bb b/poky/meta/recipes-support/lzop/lzop_1.04.bb
index 59c2003..8ac7efb 100644
--- a/poky/meta/recipes-support/lzop/lzop_1.04.bb
+++ b/poky/meta/recipes-support/lzop/lzop_1.04.bb
@@ -20,7 +20,7 @@
 
 inherit autotools
 
-do_configure_prepend () {
+do_configure:prepend () {
     install -Dm 0644 ${WORKDIR}/acinclude.m4 ${S}/acinclude.m4
 }
 
diff --git a/poky/meta/recipes-support/nettle/nettle_3.7.3.bb b/poky/meta/recipes-support/nettle/nettle_3.7.3.bb
index 031500d..877f5f1 100644
--- a/poky/meta/recipes-support/nettle/nettle_3.7.3.bb
+++ b/poky/meta/recipes-support/nettle/nettle_3.7.3.bb
@@ -20,7 +20,7 @@
            file://check-header-files-of-openssl-only-if-enable_.patch \
            "
 
-SRC_URI_append_class-target = "\
+SRC_URI:append:class-target = "\
             file://dlopen-test.patch \
             "
 
@@ -38,7 +38,7 @@
         oe_runmake buildtest
 }
 
-do_install_append() {
+do_install:append() {
     oe_multilib_header nettle/version.h
 }
 
@@ -51,7 +51,7 @@
         install ${B}/testsuite/*-test ${D}${PTEST_PATH}/testsuite/
 }
 
-RDEPENDS_${PN}-ptest += "${PN}-dev"
-INSANE_SKIP_${PN}-ptest += "dev-deps"
+RDEPENDS:${PN}-ptest += "${PN}-dev"
+INSANE_SKIP:${PN}-ptest += "dev-deps"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-support/npth/npth_1.6.bb b/poky/meta/recipes-support/npth/npth_1.6.bb
index d5a149e..8c94cc2 100644
--- a/poky/meta/recipes-support/npth/npth_1.6.bb
+++ b/poky/meta/recipes-support/npth/npth_1.6.bb
@@ -19,10 +19,10 @@
 
 inherit autotools binconfig-disabled multilib_header
 
-FILES_${PN} = "${libdir}/libnpth.so.*"
-FILES_${PN}-dev += "${bindir}/npth-config"
+FILES:${PN} = "${libdir}/libnpth.so.*"
+FILES:${PN}-dev += "${bindir}/npth-config"
 
-do_install_append() {
+do_install:append() {
     oe_multilib_header npth.h
 }
 
diff --git a/poky/meta/recipes-support/nss-myhostname/nss-myhostname_0.3.bb b/poky/meta/recipes-support/nss-myhostname/nss-myhostname_0.3.bb
index 074f713..969e20e 100644
--- a/poky/meta/recipes-support/nss-myhostname/nss-myhostname_0.3.bb
+++ b/poky/meta/recipes-support/nss-myhostname/nss-myhostname_0.3.bb
@@ -14,18 +14,18 @@
 
 inherit autotools features_check
 
-COMPATIBLE_HOST_libc-musl = 'null'
+COMPATIBLE_HOST:libc-musl = 'null'
 
 # The systemd has its own copy of nss-myhostname
 CONFLICT_DISTRO_FEATURES = "systemd"
 
-pkg_postinst_${PN} () {
+pkg_postinst:${PN} () {
 	sed -e '/^hosts:/s/\s*\<myhostname\>//' \
 		-e 's/\(^hosts:.*\)\(\<files\>\)\(.*\)\(\<dns\>\)\(.*\)/\1\2 myhostname \3\4\5/' \
 		-i $D${sysconfdir}/nsswitch.conf
 }
 
-pkg_prerm_${PN} () {
+pkg_prerm:${PN} () {
 	sed -e '/^hosts:/s/\s*\<myhostname\>//' \
 		-e '/^hosts:/s/\s*myhostname//' \
 		-i $D${sysconfdir}/nsswitch.conf
diff --git a/poky/meta/recipes-support/numactl/numactl_git.bb b/poky/meta/recipes-support/numactl/numactl_git.bb
index 6c8a667..7b1b14d 100644
--- a/poky/meta/recipes-support/numactl/numactl_git.bb
+++ b/poky/meta/recipes-support/numactl/numactl_git.bb
@@ -22,8 +22,8 @@
 
 S = "${WORKDIR}/git"
 
-LDFLAGS_append_riscv64 = " -latomic"
-LDFLAGS_append_riscv32 = " -latomic"
+LDFLAGS:append:riscv64 = " -latomic"
+LDFLAGS:append:riscv32 = " -latomic"
 
 do_install() {
     oe_runmake DESTDIR=${D} prefix=${D}/usr install
@@ -56,4 +56,4 @@
     install -m 0755 ${B}/.libs/numactl ${D}${PTEST_PATH}/
 }
 
-RDEPENDS_${PN}-ptest = "bash"
+RDEPENDS:${PN}-ptest = "bash"
diff --git a/poky/meta/recipes-support/p11-kit/p11-kit_0.24.0.bb b/poky/meta/recipes-support/p11-kit/p11-kit_0.24.0.bb
index 6759168..9cac87e 100644
--- a/poky/meta/recipes-support/p11-kit/p11-kit_0.24.0.bb
+++ b/poky/meta/recipes-support/p11-kit/p11-kit_0.24.0.bb
@@ -8,7 +8,7 @@
 
 DEPENDS = "libtasn1 libtasn1-native libffi"
 
-DEPENDS_append = "${@' glib-2.0' if d.getVar('GTKDOC_ENABLED') == 'True' else ''}"
+DEPENDS:append = "${@' glib-2.0' if d.getVar('GTKDOC_ENABLED') == 'True' else ''}"
 
 SRC_URI = "git://github.com/p11-glue/p11-kit"
 SRCREV = "34826623f58399b24c21f1788e2cdaea34521b7b"
@@ -20,13 +20,13 @@
 
 GTKDOC_MESON_OPTION = 'gtk_doc'
 
-FILES_${PN} += " \
+FILES:${PN} += " \
     ${libdir}/p11-kit-proxy.so \
     ${libdir}/pkcs11/*.so \
     ${libdir}/pkcs11/*.la \
     ${systemd_user_unitdir}/*"
 
 # PN contains p11-kit-proxy.so, a symlink to a loadable module
-INSANE_SKIP_${PN} = "dev-so"
+INSANE_SKIP:${PN} = "dev-so"
 
 BBCLASSEXTEND = "nativesdk"
diff --git a/poky/meta/recipes-support/ptest-runner/ptest-runner_2.4.1.bb b/poky/meta/recipes-support/ptest-runner/ptest-runner_2.4.1.bb
index 6bd10d2..c6a1ab1 100644
--- a/poky/meta/recipes-support/ptest-runner/ptest-runner_2.4.1.bb
+++ b/poky/meta/recipes-support/ptest-runner/ptest-runner_2.4.1.bb
@@ -15,7 +15,7 @@
 
 S = "${WORKDIR}/git"
 
-FILES_${PN} = "${bindir}/ptest-runner"
+FILES:${PN} = "${bindir}/ptest-runner"
 
 EXTRA_OEMAKE = "-e MAKEFLAGS= CFLAGS="${CFLAGS} -DDEFAULT_DIRECTORY=\\\"${libdir}\\\"""
 
@@ -27,4 +27,4 @@
 	install -D -m 0755 ${S}/ptest-runner ${D}${bindir}/ptest-runner
 }
 
-RDEPENDS_${PN}_append_libc-glibc = " libgcc"
+RDEPENDS:${PN}:append:libc-glibc = " libgcc"
diff --git a/poky/meta/recipes-support/rng-tools/rng-tools_6.13.bb b/poky/meta/recipes-support/rng-tools/rng-tools_6.13.bb
index fb2fd63..84dbc76 100644
--- a/poky/meta/recipes-support/rng-tools/rng-tools_6.13.bb
+++ b/poky/meta/recipes-support/rng-tools/rng-tools_6.13.bb
@@ -23,7 +23,7 @@
 EXTRA_OECONF = "--without-rtlsdr"
 
 PACKAGECONFIG ??= "libjitterentropy"
-PACKAGECONFIG_libc-musl = "libargp libjitterentropy"
+PACKAGECONFIG:libc-musl = "libargp libjitterentropy"
 
 PACKAGECONFIG[libargp] = "--with-libargp,--without-libargp,argp-standalone,"
 PACKAGECONFIG[libjitterentropy] = "--enable-jitterentropy,--disable-jitterentropy,libjitterentropy"
@@ -33,14 +33,14 @@
 INITSCRIPT_NAME = "rng-tools"
 INITSCRIPT_PARAMS = "start 03 2 3 4 5 . stop 30 0 6 1 ."
 
-SYSTEMD_SERVICE_${PN} = "rngd.service"
+SYSTEMD_SERVICE:${PN} = "rngd.service"
 
 # Refer autogen.sh in rng-tools
-do_configure_prepend() {
+do_configure:prepend() {
     cp ${S}/README.md ${S}/README
 }
 
-do_install_append() {
+do_install:append() {
     install -Dm 0644 ${WORKDIR}/default ${D}${sysconfdir}/default/rng-tools
     install -Dm 0755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/rng-tools
     install -Dm 0644 ${WORKDIR}/rngd.service \
diff --git a/poky/meta/recipes-support/serf/serf_1.3.9.bb b/poky/meta/recipes-support/serf/serf_1.3.9.bb
index 3276d40..2151586 100644
--- a/poky/meta/recipes-support/serf/serf_1.3.9.bb
+++ b/poky/meta/recipes-support/serf/serf_1.3.9.bb
@@ -36,7 +36,7 @@
                   "
 
 # scons creates non-reproducible archives
-do_install_append() {
+do_install:append() {
 	rm ${D}/${libdir}/*.a
 }
 
diff --git a/poky/meta/recipes-support/shared-mime-info/shared-mime-info_git.bb b/poky/meta/recipes-support/shared-mime-info/shared-mime-info_git.bb
index ff32259..714aca6 100644
--- a/poky/meta/recipes-support/shared-mime-info/shared-mime-info_git.bb
+++ b/poky/meta/recipes-support/shared-mime-info/shared-mime-info_git.bb
@@ -17,13 +17,13 @@
 
 EXTRA_OEMESON = "-Dupdate-mimedb=true"
 
-FILES_${PN} += "${datadir}/mime"
-FILES_${PN}-dev += "${datadir}/pkgconfig/shared-mime-info.pc ${datadir}/gettext/its"
+FILES:${PN} += "${datadir}/mime"
+FILES:${PN}-dev += "${datadir}/pkgconfig/shared-mime-info.pc ${datadir}/gettext/its"
 
 # freedesktop.org.xml is only required when updating the mime database,
 # package it separately
 PACKAGES =+ "shared-mime-info-data"
-FILES_shared-mime-info-data = "${datadir}/mime/packages/freedesktop.org.xml"
-RDEPENDS_shared-mime-info-data = "shared-mime-info"
+FILES:shared-mime-info-data = "${datadir}/mime/packages/freedesktop.org.xml"
+RDEPENDS:shared-mime-info-data = "shared-mime-info"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-support/sqlite/sqlite3.inc b/poky/meta/recipes-support/sqlite/sqlite3.inc
index 1adc0eb..aa5dc09 100644
--- a/poky/meta/recipes-support/sqlite/sqlite3.inc
+++ b/poky/meta/recipes-support/sqlite/sqlite3.inc
@@ -24,7 +24,7 @@
 
 # enable those which are enabled by default in configure
 PACKAGECONFIG ?= "fts4 fts5 json1 rtree dyn_ext"
-PACKAGECONFIG_class-native ?= "fts4 fts5 json1 rtree dyn_ext"
+PACKAGECONFIG:class-native ?= "fts4 fts5 json1 rtree dyn_ext"
 
 PACKAGECONFIG[editline] = "--enable-editline,--disable-editline,libedit"
 PACKAGECONFIG[readline] = "--enable-readline,--disable-readline,readline ncurses"
@@ -46,23 +46,23 @@
 "
 
 # pread() is in POSIX.1-2001 so any reasonable system must surely support it
-CFLAGS_append = " -DUSE_PREAD"
+CFLAGS:append = " -DUSE_PREAD"
 
 # Provide column meta-data API
-CFLAGS_append = " -DSQLITE_ENABLE_COLUMN_METADATA"
+CFLAGS:append = " -DSQLITE_ENABLE_COLUMN_METADATA"
 
 # Unless SQLITE_BYTEORDER is predefined, the code falls back to build time
 # huristics, which are not always correct
-CFLAGS_append = " ${@oe.utils.conditional('SITEINFO_ENDIANNESS', 'le', '-DSQLITE_BYTEORDER=1234', '-DSQLITE_BYTEORDER=4321', d)}"
+CFLAGS:append = " ${@oe.utils.conditional('SITEINFO_ENDIANNESS', 'le', '-DSQLITE_BYTEORDER=1234', '-DSQLITE_BYTEORDER=4321', d)}"
 
 PACKAGES = "lib${BPN} lib${BPN}-dev lib${BPN}-doc ${PN}-dbg lib${BPN}-staticdev ${PN}"
 
-FILES_${PN} = "${bindir}/*"
-FILES_lib${BPN} = "${libdir}/*.so.*"
-FILES_lib${BPN}-dev = "${libdir}/*.la ${libdir}/*.so \
+FILES:${PN} = "${bindir}/*"
+FILES:lib${BPN} = "${libdir}/*.so.*"
+FILES:lib${BPN}-dev = "${libdir}/*.la ${libdir}/*.so \
                        ${libdir}/pkgconfig ${includedir}"
-FILES_lib${BPN}-doc = "${docdir} ${mandir} ${infodir}"
-FILES_lib${BPN}-staticdev = "${libdir}/lib*.a"
+FILES:lib${BPN}-doc = "${docdir} ${mandir} ${infodir}"
+FILES:lib${BPN}-staticdev = "${libdir}/lib*.a"
 
 AUTO_LIBNAME_PKGS = "${MLPREFIX}lib${BPN}"
 
diff --git a/poky/meta/recipes-support/taglib/taglib_1.12.bb b/poky/meta/recipes-support/taglib/taglib_1.12.bb
index efa5625..2b09618 100644
--- a/poky/meta/recipes-support/taglib/taglib_1.12.bb
+++ b/poky/meta/recipes-support/taglib/taglib_1.12.bb
@@ -21,7 +21,7 @@
 inherit cmake pkgconfig binconfig-disabled
 
 PACKAGES =+ "${PN}-c"
-FILES_${PN}-c = "${libdir}/libtag_c.so.*"
+FILES:${PN}-c = "${libdir}/libtag_c.so.*"
 
 EXTRA_OECMAKE = "-DBUILD_SHARED_LIBS=ON \
                  -DCMAKE_DISABLE_FIND_PACKAGE_Boost=TRUE \
@@ -32,7 +32,7 @@
 "
 CXXFLAGS += "-std=c++11"
 
-do_configure_prepend () {
+do_configure:prepend () {
 	rm -f ${S}/admin/ltmain.sh
 	rm -f ${S}/admin/libtool.m4.in
 }
diff --git a/poky/meta/recipes-support/user-creation/xuser-account_0.1.bb b/poky/meta/recipes-support/user-creation/xuser-account_0.1.bb
index 81817d1..639b01f 100644
--- a/poky/meta/recipes-support/user-creation/xuser-account_0.1.bb
+++ b/poky/meta/recipes-support/user-creation/xuser-account_0.1.bb
@@ -18,11 +18,11 @@
     install -D -m 0644 ${WORKDIR}/system-xuser.conf ${D}${sysconfdir}/dbus-1/system.d/system-xuser.conf
 }
 
-FILES_${PN} = "${sysconfdir}/dbus-1/system.d/system-xuser.conf"
+FILES:${PN} = "${sysconfdir}/dbus-1/system.d/system-xuser.conf"
 
 USERADD_PACKAGES = "${PN}"
-USERADD_PARAM_${PN} = "--create-home \
+USERADD_PARAM:${PN} = "--create-home \
                        --groups video,tty,audio,input,shutdown,disk \
                        --user-group xuser"
 
-ALLOW_EMPTY_${PN} = "1"
+ALLOW_EMPTY:${PN} = "1"
diff --git a/poky/meta/recipes-support/vim/vim.inc b/poky/meta/recipes-support/vim/vim.inc
index 878d0f1..17d1c24 100644
--- a/poky/meta/recipes-support/vim/vim.inc
+++ b/poky/meta/recipes-support/vim/vim.inc
@@ -7,7 +7,7 @@
 
 DEPENDS = "ncurses gettext-native"
 # vimdiff doesn't like busybox diff
-RSUGGESTS_${PN} = "diffutils"
+RSUGGESTS:${PN} = "diffutils"
 LICENSE = "vim"
 LIC_FILES_CHKSUM = "file://runtime/doc/uganda.txt;endline=287;md5=a19edd7ec70d573a005d9e509375a99a"
 
@@ -113,18 +113,18 @@
 PARALLEL_MAKEINST = ""
 
 PACKAGES =+ "${PN}-common ${PN}-syntax ${PN}-help ${PN}-tutor ${PN}-vimrc ${PN}-tools"
-FILES_${PN}-syntax = "${datadir}/${BPN}/${VIMDIR}/syntax"
-FILES_${PN}-help = "${datadir}/${BPN}/${VIMDIR}/doc"
-FILES_${PN}-tutor = "${datadir}/${BPN}/${VIMDIR}/tutor ${bindir}/${BPN}tutor"
-FILES_${PN}-vimrc = "${datadir}/${BPN}/vimrc"
-FILES_${PN}-data = "${datadir}/${BPN}"
+FILES:${PN}-syntax = "${datadir}/${BPN}/${VIMDIR}/syntax"
+FILES:${PN}-help = "${datadir}/${BPN}/${VIMDIR}/doc"
+FILES:${PN}-tutor = "${datadir}/${BPN}/${VIMDIR}/tutor ${bindir}/${BPN}tutor"
+FILES:${PN}-vimrc = "${datadir}/${BPN}/vimrc"
+FILES:${PN}-data = "${datadir}/${BPN}"
 
 # We do not want to complain if perl or gawk are not on the target.
 #
-FILES_${PN}-tools = "${datadir}/${BPN}/${VIMDIR}/tools"
-INSANE_SKIP_${PN}-tools = "file-rdeps"
+FILES:${PN}-tools = "${datadir}/${BPN}/${VIMDIR}/tools"
+INSANE_SKIP:${PN}-tools = "file-rdeps"
 
-FILES_${PN}-common = " \
+FILES:${PN}-common = " \
     ${datadir}/${BPN}/${VIMDIR}/*.vim \
     ${datadir}/${BPN}/${VIMDIR}/autoload \
     ${datadir}/${BPN}/${VIMDIR}/colors \
@@ -140,11 +140,7 @@
     ${datadir}/icons \
 "
 
-RDEPENDS_${BPN} = "ncurses-terminfo-base"
-# Recommend that runtime data is installed along with vim
-RRECOMMENDS_${BPN} = "${PN}-syntax ${PN}-help ${PN}-tutor ${PN}-vimrc ${PN}-common"
-
-ALTERNATIVE_${PN} = "vi vim"
+ALTERNATIVE:${PN} = "vi vim"
 ALTERNATIVE_PRIORITY = "100"
 ALTERNATIVE_TARGET = "${bindir}/${BPN}.${BPN}"
 ALTERNATIVE_LINK_NAME[vi] = "${base_bindir}/vi"
diff --git a/poky/meta/recipes-support/vim/vim_8.2.bb b/poky/meta/recipes-support/vim/vim_8.2.bb
index 7e4654e..f358e61 100644
--- a/poky/meta/recipes-support/vim/vim_8.2.bb
+++ b/poky/meta/recipes-support/vim/vim_8.2.bb
@@ -2,10 +2,14 @@
 
 PROVIDES = "xxd"
 
-PACKAGECONFIG_class-native = ""
+RDEPENDS:${PN} = "ncurses-terminfo-base"
+# Recommend that runtime data is installed along with vim
+RRECOMMENDS:${PN} = "${PN}-syntax ${PN}-help ${PN}-tutor ${PN}-vimrc ${PN}-common"
+
+PACKAGECONFIG:class-native = ""
 BBCLASSEXTEND = "native nativesdk"
 
-ALTERNATIVE_${PN}_append = " xxd"
+ALTERNATIVE:${PN}:append = " xxd"
 ALTERNATIVE_TARGET[xxd] = "${bindir}/xxd"
 ALTERNATIVE_LINK_NAME[xxd] = "${bindir}/xxd"
 
diff --git a/poky/meta/recipes-support/vte/vte_0.64.2.bb b/poky/meta/recipes-support/vte/vte_0.64.2.bb
index b0baa3f..a79f2e4 100644
--- a/poky/meta/recipes-support/vte/vte_0.64.2.bb
+++ b/poky/meta/recipes-support/vte/vte_0.64.2.bb
@@ -3,7 +3,7 @@
 HOMEPAGE = "https://wiki.gnome.org/Apps/Terminal/VTE"
 BUGTRACKER = "https://bugzilla.gnome.org/buglist.cgi?product=vte"
 LICENSE = "GPLv3 & LGPLv3+ & MIT-X"
-LICENSE_libvte = "LGPLv3+"
+LICENSE:libvte = "LGPLv3+"
 
 LIC_FILES_CHKSUM = " \
     file://COPYING.GPL3;md5=cc702cf3444d1f19680c794cc61948f9 \
@@ -33,29 +33,29 @@
 export XDG_DATA_DIRS = "${STAGING_DATADIR}"
 
 # Help g-ir-scanner find the .so for linking
-do_compile_prepend() {
+do_compile:prepend() {
     export GIR_EXTRA_LIBS_PATH="${B}/src/.libs"
 }
 
 # Package additional files
-FILES_${PN}-dev += "${datadir}/vala/vapi/*"
+FILES:${PN}-dev += "${datadir}/vala/vapi/*"
 
 PACKAGECONFIG ??= "gnutls"
 PACKAGECONFIG[vala] = "-Dvapi=true,-Dvapi=false,vala-native vala"
 PACKAGECONFIG[gnutls] = "-Dgnutls=true,-Dgnutls=false,gnutls"
 PACKAGECONFIG[systemd] = "-D_systemd=true,-D_systemd=false,systemd"
 # vala requires gir
-PACKAGECONFIG_remove_class-native = "vala"
+PACKAGECONFIG:remove:class-native = "vala"
 
 CFLAGS += "-D_GNU_SOURCE"
 
 PACKAGES =+ "libvte ${PN}-prompt"
-FILES_libvte = "${libdir}/*.so.* ${libdir}/girepository-1.0/*"
-FILES_${PN}-prompt = " \
+FILES:libvte = "${libdir}/*.so.* ${libdir}/girepository-1.0/*"
+FILES:${PN}-prompt = " \
     ${sysconfdir}/profile.d \
     ${libexecdir}/vte-urlencode-cwd \
 "
 
-FILES_${PN}-dev += "${datadir}/glade/"
+FILES:${PN}-dev += "${datadir}/glade/"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/scripts/buildhistory-collect-srcrevs b/poky/scripts/buildhistory-collect-srcrevs
index 340bee7..bca01a9 100755
--- a/poky/scripts/buildhistory-collect-srcrevs
+++ b/poky/scripts/buildhistory-collect-srcrevs
@@ -101,7 +101,7 @@
                 if name:
                     print('SRCREV_%s_pn-%s%s = "%s"' % (name, pn, forcevariable, srcrev))
                 else:
-                    print('SRCREV_pn-%s%s = "%s"' % (pn, forcevariable, srcrev))
+                    print('SRCREV:pn-%s%s = "%s"' % (pn, forcevariable, srcrev))
 
 
 if __name__ == "__main__":
diff --git a/poky/scripts/contrib/convert-overrides.py b/poky/scripts/contrib/convert-overrides.py
new file mode 100755
index 0000000..e4a310d
--- /dev/null
+++ b/poky/scripts/contrib/convert-overrides.py
@@ -0,0 +1,144 @@
+#!/usr/bin/env python3
+#
+# Conversion script to add new override syntax to existing bitbake metadata
+#
+# Copyright (C) 2021 Richard Purdie
+#
+# SPDX-License-Identifier: GPL-2.0-only
+#
+
+#
+# To use this script on a new layer you need to list the overrides the
+# layer is known to use in the list below.
+#
+# Known constraint: Matching is 'loose' and in particular will find variable
+# and function names with "_append" and "_remove" in them. Those need to be
+# filtered out manually or in the skip list below.
+#
+
+import re
+import os
+import sys
+import tempfile
+import shutil
+import mimetypes
+
+if len(sys.argv) < 2:
+    print("Please specify a directory to run the conversion script against.")
+    sys.exit(1)
+
+# List of strings to treat as overrides
+vars = ["append", "prepend", "remove"]
+vars = vars + ["qemuarm", "qemux86", "qemumips", "qemuppc", "qemuriscv", "qemuall"]
+vars = vars + ["genericx86", "edgerouter", "beaglebone-yocto"]
+vars = vars + ["armeb", "arm", "armv5", "armv6", "armv4", "powerpc64", "aarch64", "riscv32", "riscv64", "x86", "mips64", "powerpc"]
+vars = vars + ["mipsarch", "x86-x32", "mips16e", "microblaze", "e5500-64b", "mipsisa32", "mipsisa64"]
+vars = vars + ["class-native", "class-target", "class-cross-canadian", "class-cross", "class-devupstream"]
+vars = vars + ["tune-",  "pn-", "forcevariable"]
+vars = vars + ["libc-musl", "libc-glibc", "libc-newlib","libc-baremetal"]
+vars = vars + ["task-configure", "task-compile", "task-install", "task-clean", "task-image-qa", "task-rm_work", "task-image-complete", "task-populate-sdk"]
+vars = vars + ["toolchain-clang", "mydistro", "nios2", "sdkmingw32", "overrideone", "overridetwo"]
+vars = vars + ["linux-gnux32", "linux-muslx32", "linux-gnun32", "mingw32", "poky", "darwin", "linuxstdbase"]
+vars = vars + ["linux-gnueabi", "eabi"]
+vars = vars + ["virtclass-multilib", "virtclass-mcextend"]
+
+# List of strings to treat as overrides but only with whitespace following or another override (more restricted matching).
+# Handles issues with arc matching arch.
+shortvars = ["arc", "mips", "mipsel", "sh4"]
+
+# Variables which take packagenames as an override
+packagevars = ["FILES", "RDEPENDS", "RRECOMMENDS", "SUMMARY", "DESCRIPTION", "RSUGGESTS", "RPROVIDES", "RCONFLICTS", "PKG", "ALLOW_EMPTY",
+              "pkg_postrm", "pkg_postinst_ontarget", "pkg_postinst", "INITSCRIPT_NAME", "INITSCRIPT_PARAMS", "DEBIAN_NOAUTONAME", "ALTERNATIVE",
+              "PKGE", "PKGV", "PKGR", "USERADD_PARAM", "GROUPADD_PARAM", "CONFFILES", "SYSTEMD_SERVICE", "LICENSE", "SECTION", "pkg_preinst",
+              "pkg_prerm", "RREPLACES", "GROUPMEMS_PARAM", "SYSTEMD_AUTO_ENABLE", "SKIP_FILEDEPS", "PRIVATE_LIBS", "PACKAGE_ADD_METADATA",
+              "INSANE_SKIP", "DEBIANNAME", "SYSTEMD_SERVICE_ESCAPED"]
+
+# Expressions to skip if encountered, these are not overrides
+skips = ["parser_append", "recipe_to_append", "extra_append", "to_remove", "show_appends", "applied_appends", "file_appends", "handle_remove"]
+skips = skips + ["expanded_removes", "color_remove", "test_remove", "empty_remove", "toaster_prepend", "num_removed", "licfiles_append", "_write_append"]
+skips = skips + ["no_report_remove", "test_prepend", "test_append", "multiple_append", "test_remove", "shallow_remove", "do_remove_layer", "first_append"]
+skips = skips + ["parser_remove", "to_append", "no_remove", "bblayers_add_remove", "bblayers_remove", "apply_append", "is_x86", "base_dep_prepend"]
+skips = skips + ["autotools_dep_prepend", "go_map_arm", "alt_remove_links", "systemd_append_file", "file_append", "process_file_darwin"]
+skips = skips + ["run_loaddata_poky", "determine_if_poky_env", "do_populate_poky_src", "libc_cv_include_x86_isa_level", "test_rpm_remove", "do_install_armmultilib"]
+skips = skips + ["get_appends_for_files", "test_doubleref_remove", "test_bitbakelayers_add_remove", "elf32_x86_64", "colour_remove", "revmap_remove"]
+skips = skips + ["test_rpm_remove", "test_bitbakelayers_add_remove", "recipe_append_file", "log_data_removed", "recipe_append", "systemd_machine_unit_append"]
+skips = skips + ["recipetool_append", "changetype_remove", "try_appendfile_wc", "test_qemux86_directdisk", "test_layer_appends", "tgz_removed"]
+
+imagevars = ["IMAGE_CMD", "EXTRA_IMAGECMD", "IMAGE_TYPEDEP", "CONVERSION_CMD", "COMPRESS_CMD"]
+packagevars = packagevars + imagevars
+
+vars_re = {}
+for exp in vars:
+    vars_re[exp] = (re.compile('((^|[\'"\s\-\+])[A-Za-z0-9_\-:${}\.]+)_' + exp), r"\1:" + exp)
+
+shortvars_re = {}
+for exp in shortvars:
+    shortvars_re[exp] = (re.compile('((^|[\'"\s\-\+])[A-Za-z0-9_\-:${}\.]+)_' + exp + '([\(\'"\s:])'), r"\1:" + exp + r"\3")
+
+package_re = {}
+for exp in packagevars:
+    package_re[exp] = (re.compile('(^|[\'"\s\-\+]+)' + exp + '_' + '([$a-z"\'\s%\[<{\\\*].)'), r"\1" + exp + r":\2")
+
+# Other substitutions to make
+subs = {
+    'r = re.compile("([^:]+):\s*(.*)")' : 'r = re.compile("(^.+?):\s+(.*)")',
+    "val = d.getVar('%s_%s' % (var, pkg))" : "val = d.getVar('%s:%s' % (var, pkg))",
+    "f.write('%s_%s: %s\\n' % (var, pkg, encode(val)))" : "f.write('%s:%s: %s\\n' % (var, pkg, encode(val)))",
+    "d.getVar('%s_%s' % (scriptlet_name, pkg))" : "d.getVar('%s:%s' % (scriptlet_name, pkg))",
+    'ret.append(v + "_" + p)' : 'ret.append(v + ":" + p)',
+}
+
+def processfile(fn):
+    print("processing file '%s'" % fn)
+    try:
+        fh, abs_path = tempfile.mkstemp()
+        with os.fdopen(fh, 'w') as new_file:
+            with open(fn, "r") as old_file:
+                for line in old_file:
+                    skip = False
+                    for s in skips:
+                        if s in line:
+                            skip = True
+                            if "ptest_append" in line or "ptest_remove" in line or "ptest_prepend" in line:
+                                skip = False
+                    for sub in subs:
+                        if sub in line:
+                            line = line.replace(sub, subs[sub])
+                            skip = True
+                    if not skip:
+                        for pvar in packagevars:
+                            line = package_re[pvar][0].sub(package_re[pvar][1], line)
+                        for var in vars:
+                            line = vars_re[var][0].sub(vars_re[var][1], line)
+                        for shortvar in shortvars:
+                            line = shortvars_re[shortvar][0].sub(shortvars_re[shortvar][1], line)
+                    if "pkg_postinst:ontarget" in line:
+                        line = line.replace("pkg_postinst:ontarget", "pkg_postinst_ontarget")
+                    new_file.write(line)
+        shutil.copymode(fn, abs_path)
+        os.remove(fn)
+        shutil.move(abs_path, fn)
+    except UnicodeDecodeError:
+        pass
+
+ourname = os.path.basename(sys.argv[0])
+ourversion = "0.9.3"
+
+if os.path.isfile(sys.argv[1]):
+    processfile(sys.argv[1])
+    sys.exit(0)
+
+for targetdir in sys.argv[1:]:
+    print("processing directory '%s'" % targetdir)
+    for root, dirs, files in os.walk(targetdir):
+        for name in files:
+            if name == ourname:
+                continue
+            fn = os.path.join(root, name)
+            if os.path.islink(fn):
+                continue
+            if "/.git/" in fn or fn.endswith(".html") or fn.endswith(".patch") or fn.endswith(".m4") or fn.endswith(".diff"):
+                continue
+            processfile(fn)
+
+print("All files processed with version %s" % ourversion)
diff --git a/poky/scripts/crosstap b/poky/scripts/crosstap
index 40856bc..73c8947 100755
--- a/poky/scripts/crosstap
+++ b/poky/scripts/crosstap
@@ -365,13 +365,13 @@
 USER_CLASSES += "image-combined-dbg"
 
 # enables kernel debug symbols
-KERNEL_EXTRA_FEATURES_append = " features/debug/debug-kernel.scc"
+KERNEL_EXTRA_FEATURES:append = " features/debug/debug-kernel.scc"
 
 # minimal, just run-time systemtap configuration in target image
-PACKAGECONFIG_pn-systemtap = "monitor"
+PACKAGECONFIG:pn-systemtap = "monitor"
 
 # add systemtap run-time into target image if it is not there yet
-IMAGE_INSTALL_append = " systemtap"
+IMAGE_INSTALL:append = " systemtap"
 """
     option_parser = optparse.OptionParser(usage=usage)
 
diff --git a/poky/scripts/devtool b/poky/scripts/devtool
index 8a4f41b..af4811b 100755
--- a/poky/scripts/devtool
+++ b/poky/scripts/devtool
@@ -100,7 +100,7 @@
         _enable_workspace_layer(config.workspace_path, config, basepath)
 
     logger.debug('Reading workspace in %s' % config.workspace_path)
-    externalsrc_re = re.compile(r'^EXTERNALSRC(_pn-([^ =]+))? *= *"([^"]*)"$')
+    externalsrc_re = re.compile(r'^EXTERNALSRC(:pn-([^ =]+))? *= *"([^"]*)"$')
     for fn in glob.glob(os.path.join(config.workspace_path, 'appends', '*.bbappend')):
         with open(fn, 'r') as f:
             pnvalues = {}
diff --git a/poky/scripts/lib/checklayer/__init__.py b/poky/scripts/lib/checklayer/__init__.py
index fe54560..e69a10f 100644
--- a/poky/scripts/lib/checklayer/__init__.py
+++ b/poky/scripts/lib/checklayer/__init__.py
@@ -146,7 +146,7 @@
 
     return layers
 
-def _find_layer_depends(depend, layers):
+def _find_layer(depend, layers):
     for layer in layers:
         if 'collections' not in layer:
             continue
@@ -156,7 +156,7 @@
                 return layer
     return None
 
-def add_layer_dependencies(bblayersconf, layer, layers, logger):
+def get_layer_dependencies(layer, layers, logger):
     def recurse_dependencies(depends, layer, layers, logger, ret = []):
         logger.debug('Processing dependencies %s for layer %s.' % \
                     (depends, layer['name']))
@@ -166,7 +166,7 @@
             if depend == 'core':
                 continue
 
-            layer_depend = _find_layer_depends(depend, layers)
+            layer_depend = _find_layer(depend, layers)
             if not layer_depend:
                 logger.error('Layer %s depends on %s and isn\'t found.' % \
                         (layer['name'], depend))
@@ -203,6 +203,11 @@
         layer_depends = recurse_dependencies(depends, layer, layers, logger, layer_depends)
 
     # Note: [] (empty) is allowed, None is not!
+    return layer_depends
+
+def add_layer_dependencies(bblayersconf, layer, layers, logger):
+
+    layer_depends = get_layer_dependencies(layer, layers, logger)
     if layer_depends is None:
         return False
     else:
diff --git a/poky/scripts/lib/devtool/build_image.py b/poky/scripts/lib/devtool/build_image.py
index 9388abb..980f90d 100644
--- a/poky/scripts/lib/devtool/build_image.py
+++ b/poky/scripts/lib/devtool/build_image.py
@@ -113,7 +113,7 @@
                 with open(appendfile, 'w') as afile:
                     if packages:
                         # include packages from workspace recipes into the image
-                        afile.write('IMAGE_INSTALL_append = " %s"\n' % ' '.join(packages))
+                        afile.write('IMAGE_INSTALL:append = " %s"\n' % ' '.join(packages))
                         if not task:
                             logger.info('Building image %s with the following '
                                         'additional packages: %s', image, ' '.join(packages))
diff --git a/poky/scripts/lib/devtool/sdk.py b/poky/scripts/lib/devtool/sdk.py
index 3aa42a1..ae3fc4c 100644
--- a/poky/scripts/lib/devtool/sdk.py
+++ b/poky/scripts/lib/devtool/sdk.py
@@ -207,7 +207,7 @@
         if not sstate_mirrors:
             with open(os.path.join(conf_dir, 'site.conf'), 'a') as f:
                 f.write('SCONF_VERSION = "%s"\n' % site_conf_version)
-                f.write('SSTATE_MIRRORS_append = " file://.* %s/sstate-cache/PATH \\n "\n' % updateserver)
+                f.write('SSTATE_MIRRORS:append = " file://.* %s/sstate-cache/PATH \\n "\n' % updateserver)
     finally:
         shutil.rmtree(tmpsdk_dir)
 
diff --git a/poky/scripts/lib/devtool/search.py b/poky/scripts/lib/devtool/search.py
index d24040d..d81cdd8 100644
--- a/poky/scripts/lib/devtool/search.py
+++ b/poky/scripts/lib/devtool/search.py
@@ -65,7 +65,7 @@
                                         splitline = line.split(':', 1)
                                         key = splitline[0]
                                         value = splitline[1].strip()
-                                    if key in ['PKG_%s' % pkg, 'DESCRIPTION', 'FILES_INFO'] or key.startswith('FILERPROVIDES_'):
+                                    if key in ['PKG:%s' % pkg, 'DESCRIPTION', 'FILES_INFO'] or key.startswith('FILERPROVIDES_'):
                                         if keyword_rc.search(value):
                                             match = True
                                             break
diff --git a/poky/scripts/lib/devtool/standard.py b/poky/scripts/lib/devtool/standard.py
index 5eba219..b74a60d 100644
--- a/poky/scripts/lib/devtool/standard.py
+++ b/poky/scripts/lib/devtool/standard.py
@@ -254,13 +254,13 @@
                 f.write('\n# initial_rev: %s\n' % initial_rev)
 
             if args.binary:
-                f.write('do_install_append() {\n')
+                f.write('do_install:append() {\n')
                 f.write('    rm -rf ${D}/.git\n')
                 f.write('    rm -f ${D}/singletask.lock\n')
                 f.write('}\n')
 
             if bb.data.inherits_class('npm', rd):
-                f.write('python do_configure_append() {\n')
+                f.write('python do_configure:append() {\n')
                 f.write('    pkgdir = d.getVar("NPM_PACKAGE")\n')
                 f.write('    lockfile = os.path.join(pkgdir, "singletask.lock")\n')
                 f.write('    bb.utils.remove(lockfile)\n')
@@ -523,7 +523,7 @@
         history = d.varhistory.variable('SRC_URI')
         for event in history:
             if not 'flag' in event:
-                if event['op'].startswith(('_append[', '_prepend[')):
+                if event['op'].startswith((':append[', ':prepend[')):
                     extra_overrides.append(event['op'].split('[')[1].split(']')[0])
         # We want to remove duplicate overrides. If a recipe had multiple
         # SRC_URI_override += values it would cause mulitple instances of
@@ -936,36 +936,36 @@
 
         bb.utils.mkdirhier(os.path.dirname(appendfile))
         with open(appendfile, 'w') as f:
-            f.write('FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"\n')
+            f.write('FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"\n')
             # Local files can be modified/tracked in separate subdir under srctree
             # Mostly useful for packages with S != WORKDIR
-            f.write('FILESPATH_prepend := "%s:"\n' %
+            f.write('FILESPATH:prepend := "%s:"\n' %
                     os.path.join(srctreebase, 'oe-local-files'))
             f.write('# srctreebase: %s\n' % srctreebase)
 
             f.write('\ninherit externalsrc\n')
             f.write('# NOTE: We use pn- overrides here to avoid affecting multiple variants in the case where the recipe uses BBCLASSEXTEND\n')
-            f.write('EXTERNALSRC_pn-%s = "%s"\n' % (pn, srctree))
+            f.write('EXTERNALSRC:pn-%s = "%s"\n' % (pn, srctree))
 
             b_is_s = use_external_build(args.same_dir, args.no_same_dir, rd)
             if b_is_s:
-                f.write('EXTERNALSRC_BUILD_pn-%s = "%s"\n' % (pn, srctree))
+                f.write('EXTERNALSRC_BUILD:pn-%s = "%s"\n' % (pn, srctree))
 
             if bb.data.inherits_class('kernel', rd):
                 f.write('SRCTREECOVEREDTASKS = "do_validate_branches do_kernel_checkout '
                         'do_fetch do_unpack do_kernel_configcheck"\n')
                 f.write('\ndo_patch[noexec] = "1"\n')
-                f.write('\ndo_configure_append() {\n'
+                f.write('\ndo_configure:append() {\n'
                         '    cp ${B}/.config ${S}/.config.baseline\n'
                         '    ln -sfT ${B}/.config ${S}/.config.new\n'
                         '}\n')
-                f.write('\ndo_kernel_configme_prepend() {\n'
+                f.write('\ndo_kernel_configme:prepend() {\n'
                         '    if [ -e ${S}/.config ]; then\n'
                         '        mv ${S}/.config ${S}/.config.old\n'
                         '    fi\n'
                         '}\n')
             if rd.getVarFlag('do_menuconfig','task'):
-                f.write('\ndo_configure_append() {\n'
+                f.write('\ndo_configure:append() {\n'
                 '    if [ ! ${DEVTOOL_DISABLE_MENUCONFIG} ]; then\n'
                 '        cp ${B}/.config ${S}/.config.baseline\n'
                 '        ln -sfT ${B}/.config ${S}/.config.new\n'
diff --git a/poky/scripts/lib/devtool/upgrade.py b/poky/scripts/lib/devtool/upgrade.py
index da1456a..826a3f9 100644
--- a/poky/scripts/lib/devtool/upgrade.py
+++ b/poky/scripts/lib/devtool/upgrade.py
@@ -103,14 +103,14 @@
     pn = d.getVar('PN')
     af = os.path.join(appendpath, '%s.bbappend' % brf)
     with open(af, 'w') as f:
-        f.write('FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"\n\n')
+        f.write('FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"\n\n')
         f.write('inherit externalsrc\n')
         f.write(('# NOTE: We use pn- overrides here to avoid affecting'
                  'multiple variants in the case where the recipe uses BBCLASSEXTEND\n'))
-        f.write('EXTERNALSRC_pn-%s = "%s"\n' % (pn, srctree))
+        f.write('EXTERNALSRC:pn-%s = "%s"\n' % (pn, srctree))
         b_is_s = use_external_build(same_dir, no_same_dir, d)
         if b_is_s:
-            f.write('EXTERNALSRC_BUILD_pn-%s = "%s"\n' % (pn, srctree))
+            f.write('EXTERNALSRC_BUILD:pn-%s = "%s"\n' % (pn, srctree))
         f.write('\n')
         if rev:
             f.write('# initial_rev: %s\n' % rev)
@@ -583,6 +583,9 @@
         logger.info('New recipe is %s' % rf)
         if license_diff:
             logger.info('License checksums have been updated in the new recipe; please refer to it for the difference between the old and the new license texts.')
+        preferred_version = rd.getVar('PREFERRED_VERSION_%s' % rd.getVar('PN'))
+        if preferred_version:
+            logger.warning('Version is pinned to %s via PREFERRED_VERSION; it may need adjustment to match the new version before any further steps are taken' % preferred_version)
     finally:
         tinfoil.shutdown()
     return 0
diff --git a/poky/scripts/lib/recipetool/append.py b/poky/scripts/lib/recipetool/append.py
index e9d52bb..5f629c0 100644
--- a/poky/scripts/lib/recipetool/append.py
+++ b/poky/scripts/lib/recipetool/append.py
@@ -49,7 +49,7 @@
                       '/etc/group': '/etc/group should be managed through the useradd and extrausers classes',
                       '/etc/shadow': '/etc/shadow should be managed through the useradd and extrausers classes',
                       '/etc/gshadow': '/etc/gshadow should be managed through the useradd and extrausers classes',
-                      '${sysconfdir}/hostname': '${sysconfdir}/hostname contents should be set by setting hostname_pn-base-files = "value" in configuration',}
+                      '${sysconfdir}/hostname': '${sysconfdir}/hostname contents should be set by setting hostname:pn-base-files = "value" in configuration',}
 
     for pthspec, message in invalidtargets.items():
         if fnmatch.fnmatchcase(targetpath, d.expand(pthspec)):
@@ -79,7 +79,7 @@
                         for fullpth in dictval.keys():
                             if fnmatch.fnmatchcase(fullpth, targetpath):
                                 recipes[targetpath].append(pn)
-                    elif line.startswith('pkg_preinst_') or line.startswith('pkg_postinst_'):
+                    elif line.startswith('pkg_preinst:') or line.startswith('pkg_postinst:'):
                         scriptval = line.split(':', 1)[1].strip().encode('utf-8').decode('unicode_escape')
                         if 'update-alternatives --install %s ' % targetpath in scriptval:
                             recipes[targetpath].append('?%s' % pn)
diff --git a/poky/scripts/lib/recipetool/create.py b/poky/scripts/lib/recipetool/create.py
index 566c753..0ac97e0 100644
--- a/poky/scripts/lib/recipetool/create.py
+++ b/poky/scripts/lib/recipetool/create.py
@@ -710,7 +710,7 @@
         lines_after.append('')
 
     if args.binary:
-        lines_after.append('INSANE_SKIP_${PN} += "already-stripped"')
+        lines_after.append('INSANE_SKIP:${PN} += "already-stripped"')
         lines_after.append('')
 
     if args.npm_dev:
@@ -1177,7 +1177,7 @@
         license = ' '.join(list(set(pkglicenses.get(pkgname, ['Unknown'])))) or 'Unknown'
         if license == 'Unknown' and pkgname in fallback_licenses:
             license = fallback_licenses[pkgname]
-        outlines.append('LICENSE_%s = "%s"' % (pkgname, license))
+        outlines.append('LICENSE:%s = "%s"' % (pkgname, license))
         outlicenses[pkgname] = license.split()
     return outlicenses
 
diff --git a/poky/scripts/lib/recipetool/create_buildsys_python.py b/poky/scripts/lib/recipetool/create_buildsys_python.py
index adfa377..fdd3366 100644
--- a/poky/scripts/lib/recipetool/create_buildsys_python.py
+++ b/poky/scripts/lib/recipetool/create_buildsys_python.py
@@ -45,9 +45,9 @@
         'Summary': 'SUMMARY',
         'Description': 'DESCRIPTION',
         'License': 'LICENSE',
-        'Requires': 'RDEPENDS_${PN}',
-        'Provides': 'RPROVIDES_${PN}',
-        'Obsoletes': 'RREPLACES_${PN}',
+        'Requires': 'RDEPENDS:${PN}',
+        'Provides': 'RPROVIDES:${PN}',
+        'Obsoletes': 'RREPLACES:${PN}',
     }
     # PN/PV are already set by recipetool core & desc can be extremely long
     excluded_fields = [
@@ -301,7 +301,7 @@
                 inst_req_deps = ('python3-' + r.replace('.', '-').lower() for r in sorted(inst_reqs))
                 lines_after.append('# WARNING: the following rdepends are from setuptools install_requires. These')
                 lines_after.append('# upstream names may not correspond exactly to bitbake package names.')
-                lines_after.append('RDEPENDS_${{PN}} += "{}"'.format(' '.join(inst_req_deps)))
+                lines_after.append('RDEPENDS:${{PN}} += "{}"'.format(' '.join(inst_req_deps)))
 
         if mapped_deps:
             name = info.get('Name')
@@ -313,7 +313,7 @@
                 lines_after.append('')
             lines_after.append('# WARNING: the following rdepends are determined through basic analysis of the')
             lines_after.append('# python sources, and might not be 100% accurate.')
-            lines_after.append('RDEPENDS_${{PN}} += "{}"'.format(' '.join(sorted(mapped_deps))))
+            lines_after.append('RDEPENDS:${{PN}} += "{}"'.format(' '.join(sorted(mapped_deps))))
 
         unmapped_deps -= set(extensions)
         unmapped_deps -= set(self.assume_provided)
diff --git a/poky/scripts/lib/recipetool/create_kmod.py b/poky/scripts/lib/recipetool/create_kmod.py
index 85b5c48..cc00106 100644
--- a/poky/scripts/lib/recipetool/create_kmod.py
+++ b/poky/scripts/lib/recipetool/create_kmod.py
@@ -113,7 +113,7 @@
                 kdirpath, _ = check_target(compile_lines, install=False)
 
             if manual_install or not install_lines:
-                lines_after.append('EXTRA_OEMAKE_append_task-install = " -C ${STAGING_KERNEL_DIR} M=${S}"')
+                lines_after.append('EXTRA_OEMAKE:append:task-install = " -C ${STAGING_KERNEL_DIR} M=${S}"')
             elif install_target and install_target != 'modules_install':
                 lines_after.append('MODULES_INSTALL_TARGET = "install"')
 
diff --git a/poky/scripts/oe-check-sstate b/poky/scripts/oe-check-sstate
index ca249ca..59bcb32 100755
--- a/poky/scripts/oe-check-sstate
+++ b/poky/scripts/oe-check-sstate
@@ -47,8 +47,8 @@
     try:
         env = os.environ.copy()
         if not args.same_tmpdir:
-            env['BB_ENV_EXTRAWHITE'] = env.get('BB_ENV_EXTRAWHITE', '') + ' TMPDIR_forcevariable'
-            env['TMPDIR_forcevariable'] = tmpdir
+            env['BB_ENV_EXTRAWHITE'] = env.get('BB_ENV_EXTRAWHITE', '') + ' TMPDIR:forcevariable'
+            env['TMPDIR:forcevariable'] = tmpdir
 
         try:
             output = subprocess.check_output(
diff --git a/poky/scripts/oe-debuginfod b/poky/scripts/oe-debuginfod
index 5560769..9e5482d 100755
--- a/poky/scripts/oe-debuginfod
+++ b/poky/scripts/oe-debuginfod
@@ -23,4 +23,4 @@
     subprocess.call(['bitbake', '-c', 'addto_recipe_sysroot', 'elfutils-native'])
 
     subprocess.call(['oe-run-native', 'elfutils-native', 'debuginfod', '--verbose', '-R', '-U', feed_dir])
-    print("\nTo use the debuginfod server please ensure that this variable PACKAGECONFIG_pn-elfutils-native = \"debuginfod libdebuginfod\" is set in the local.conf")
+    print("\nTo use the debuginfod server please ensure that this variable PACKAGECONFIG:pn-elfutils-native = \"debuginfod libdebuginfod\" is set in the local.conf")
diff --git a/poky/scripts/oe-pkgdata-util b/poky/scripts/oe-pkgdata-util
index 75dd23e..94d4400 100755
--- a/poky/scripts/oe-pkgdata-util
+++ b/poky/scripts/oe-pkgdata-util
@@ -96,7 +96,7 @@
                 pn = os.path.basename(pkgdata_file)
                 with open(pkgdata_file, 'r') as f:
                     for line in f:
-                        if line.startswith("PKG_%s:" % pn):
+                        if line.startswith("PKG:%s:" % pn):
                             renamed = line.split(': ')[1].rstrip()
                 return renamed
 
@@ -213,7 +213,7 @@
                 with open(pkgfile, 'r') as f:
                     for line in f:
                         fields = line.rstrip().split(': ')
-                        if fields[0] == 'PKG_%s' % pkg:
+                        if fields[0] == 'PKG:%s' % pkg:
                             mappings[pkg].append(fields[1])
                             break
     return mappings
diff --git a/poky/scripts/oe-setup-builddir b/poky/scripts/oe-setup-builddir
index 30eaa8e..5a51fa7 100755
--- a/poky/scripts/oe-setup-builddir
+++ b/poky/scripts/oe-setup-builddir
@@ -113,10 +113,10 @@
     cat <<EOM
 The Yocto Project has extensive documentation about OE including a reference
 manual which can be found at:
-    http://yoctoproject.org/documentation
+    https://docs.yoctoproject.org
 
 For more information about OpenEmbedded see their website:
-    http://www.openembedded.org/
+    https://www.openembedded.org/
 
 EOM
 #    unset SHOWYPDOC
diff --git a/poky/scripts/runqemu b/poky/scripts/runqemu
index 2914f15..0976273 100755
--- a/poky/scripts/runqemu
+++ b/poky/scripts/runqemu
@@ -776,7 +776,7 @@
                 raise RunQemuError('BIOS not found: %s' % bios_match_name)
 
         if not os.path.exists(self.bios):
-            raise RunQemuError("KERNEL %s not found" % self.bios)
+            raise RunQemuError("BIOS %s not found" % self.bios)
 
 
     def check_mem(self):
@@ -1443,12 +1443,14 @@
             kernel_opts = "-kernel %s -append '%s %s %s %s'" % (self.kernel, self.kernel_cmdline,
                                                                 self.kernel_cmdline_script, self.get('QB_KERNEL_CMDLINE_APPEND'),
                                                                 self.bootparams)
-            if self.bios:
-                kernel_opts += " -bios %s" % self.bios
             if self.dtb:
                 kernel_opts += " -dtb %s" % self.dtb
         else:
             kernel_opts = ""
+
+        if self.bios:
+            self.qemu_opt += " -bios %s" % self.bios
+
         cmd = "%s %s" % (self.qemu_opt, kernel_opts)
         cmds = shlex.split(cmd)
         logger.info('Running %s\n' % cmd)
diff --git a/poky/scripts/yocto-check-layer b/poky/scripts/yocto-check-layer
index 44e77b7..2445ad5 100755
--- a/poky/scripts/yocto-check-layer
+++ b/poky/scripts/yocto-check-layer
@@ -24,7 +24,7 @@
 scriptpath.add_oe_lib_path()
 scriptpath.add_bitbake_lib_path()
 
-from checklayer import LayerType, detect_layers, add_layers, add_layer_dependencies, get_signatures, check_bblayers
+from checklayer import LayerType, detect_layers, add_layers, add_layer_dependencies, get_layer_dependencies, get_signatures, check_bblayers
 from oeqa.utils.commands import get_bb_vars
 
 PROGNAME = 'yocto-check-layer'
@@ -51,6 +51,8 @@
             help='File to output log (optional)', action='store')
     parser.add_argument('--dependency', nargs="+",
             help='Layers to process for dependencies', action='store')
+    parser.add_argument('--no-auto-dependency', help='Disable automatic testing of dependencies',
+            action='store_true')
     parser.add_argument('--machines', nargs="+",
             help='List of MACHINEs to be used during testing', action='store')
     parser.add_argument('--additional-layers', nargs="+",
@@ -121,6 +123,21 @@
     if not layers:
         return 1
 
+    # Find all dependencies, and get them checked too
+    if not args.no_auto_dependency:
+        depends = []
+        for layer in layers:
+            layer_depends = get_layer_dependencies(layer, dep_layers, logger)
+            if layer_depends:
+                for d in layer_depends:
+                    if d not in depends:
+                        depends.append(d)
+
+        for d in depends:
+            if d not in layers:
+                logger.info("Adding %s to the list of layers to test, as a dependency", d['name'])
+                layers.append(d)
+
     shutil.copyfile(bblayersconf, bblayersconf + '.backup')
     def cleanup_bblayers(signum, frame):
         shutil.copyfile(bblayersconf + '.backup', bblayersconf)
@@ -152,17 +169,13 @@
         logger.info("Setting up for %s(%s), %s" % (layer['name'], layer['type'],
             layer['path']))
 
-        shutil.copyfile(bblayersconf + '.backup', bblayersconf)
-
         missing_dependencies = not add_layer_dependencies(bblayersconf, layer, dep_layers, logger)
         if not missing_dependencies:
             for additional_layer in additional_layers:
                 if not add_layer_dependencies(bblayersconf, additional_layer, dep_layers, logger):
                     missing_dependencies = True
                     break
-        if not add_layer_dependencies(bblayersconf, layer, dep_layers, logger) or \
-           any(map(lambda additional_layer: not add_layer_dependencies(bblayersconf, additional_layer, dep_layers, logger),
-                   additional_layers)):
+        if missing_dependencies:
             logger.info('Skipping %s due to missing dependencies.' % layer['name'])
             results[layer['name']] = None
             results_status[layer['name']] = 'SKIPPED (Missing dependencies)'