[Feature]add MT2731_MP2_MR2_SVN388 baseline version

Change-Id: Ief04314834b31e27effab435d3ca8ba33b499059
diff --git a/meta/meta-openembedded/meta-filesystems/recipes-utils/aufs-util/aufs-util/aufs-util-add-tool-concept-to-Makefile-for-cross-com.patch b/meta/meta-openembedded/meta-filesystems/recipes-utils/aufs-util/aufs-util/aufs-util-add-tool-concept-to-Makefile-for-cross-com.patch
new file mode 100644
index 0000000..c832696
--- /dev/null
+++ b/meta/meta-openembedded/meta-filesystems/recipes-utils/aufs-util/aufs-util/aufs-util-add-tool-concept-to-Makefile-for-cross-com.patch
@@ -0,0 +1,30 @@
+From 13a60c631d7cf6c7e1926473d8069795c0def9b6 Mon Sep 17 00:00:00 2001
+From: Chen Qi <Qi.Chen@windriver.com>
+Date: Thu, 19 Jun 2014 15:09:56 +0100
+Subject: [PATCH] aufs-util: add tool concept to Makefile for cross compiling
+ purpose
+
+In a cross compilation environment, c2sh, c2tmac and ver need to be created first.
+Add a tools target to Makefile to allow for this.
+
+Upstream-Status: Pending
+
+Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
+
+---
+ Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makefile b/Makefile
+index dbbe43d..aff969e 100644
+--- a/Makefile
++++ b/Makefile
+@@ -152,7 +152,7 @@ aufs.5: aufs.in.5 c2tmac
+ 	chmod a-w $@
+ 
+ c2sh c2tmac ver: CC = ${HOSTCC}
+-.INTERMEDIATE: c2sh c2tmac ver
++tools: c2sh c2tmac ver
+ 
+ install_sbin: File = auibusy aumvdown auplink mount.aufs umount.aufs
+ ifeq (${Glibc},no)
diff --git a/meta/meta-openembedded/meta-filesystems/recipes-utils/aufs-util/aufs-util/aufs-util-don-t-strip-executables.patch b/meta/meta-openembedded/meta-filesystems/recipes-utils/aufs-util/aufs-util/aufs-util-don-t-strip-executables.patch
new file mode 100644
index 0000000..b40822c
--- /dev/null
+++ b/meta/meta-openembedded/meta-filesystems/recipes-utils/aufs-util/aufs-util/aufs-util-don-t-strip-executables.patch
@@ -0,0 +1,37 @@
+From 9d5e7eff4ae906f1ea6e6527080fded0b595fbd4 Mon Sep 17 00:00:00 2001
+From: Bruce Ashfield <bruce.ashfield@windriver.com>
+Date: Tue, 9 Apr 2013 18:50:34 -0700
+Subject: [PATCH] aufs-util: don't strip executables
+
+By default, aufs-util strips its binaries. This produces QA warnings
+as follows:
+
+   WARNING: File '/sbin/mount.aufs' from aufs-util was already stripped, this will prevent future debugging!
+   WARNING: File '/sbin/auplink' from aufs-util was already stripped, this will prevent future debugging!
+   WARNING: File '/sbin/umount.aufs' from aufs-util was already stripped, this will prevent future debugging!
+   WARNING: File '/sbin/auibusy' from aufs-util was already stripped, this will prevent future debugging!
+   WARNING: File '/usr/lib/libau.so.2.6' from aufs-util was already stripped, this will prevent future debugging!
+
+To prevent this, we remove -s from LDFLAGS.
+
+Upstream-Status: Inappropriate [oe specific]
+
+Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
+
+---
+ Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makefile b/Makefile
+index 54f8d97..dbbe43d 100644
+--- a/Makefile
++++ b/Makefile
+@@ -118,7 +118,7 @@ clean:
+ ver_test: ver
+ 	./ver
+ 
+-${Bin}: override LDFLAGS += -static -s
++${Bin}: override LDFLAGS += -static
+ ${Bin}: LDLIBS = -L. -lautil
+ ${BinObj}: %.o: %.c ${LibUtilHdr} ${LibUtil}
+ 
diff --git a/meta/meta-openembedded/meta-filesystems/recipes-utils/aufs-util/aufs-util_git.bb b/meta/meta-openembedded/meta-filesystems/recipes-utils/aufs-util/aufs-util_git.bb
new file mode 100644
index 0000000..6d71fc0
--- /dev/null
+++ b/meta/meta-openembedded/meta-filesystems/recipes-utils/aufs-util/aufs-util_git.bb
@@ -0,0 +1,66 @@
+SUMMARY = "Tools for managing AUFS mounts"
+SECTION = "base"
+HOMEPAGE = "http://aufs.sourceforge.net/"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=892f569a555ba9c07a568a7c0c4fa63a"
+
+DEPENDS = "coreutils-native aufs-util-native"
+DEPENDS_class-native = ""
+
+SRCREV = "8f35db59ef83078f87879ec2828e0bb45719e0ef"
+SRC_URI = "git://git.code.sf.net/p/aufs/aufs-util;protocol=git;branch=aufs4.9 \
+           https://raw.githubusercontent.com/sfjro/aufs4-linux/aufs4.9/include/uapi/linux/aufs_type.h;name=aufs_type \
+           file://aufs-util-don-t-strip-executables.patch \
+           file://aufs-util-add-tool-concept-to-Makefile-for-cross-com.patch \
+"
+SRC_URI[aufs_type.md5sum] = "b37129ef0703de72a852db7e48bdedc6"
+SRC_URI[aufs_type.sha256sum] = "7ff6566adb9c7a3b6862cdc85a690ab546f1d0bc81ddd595fd663c0a69031683"
+
+UPSTREAM_CHECK_COMMITS = "1"
+
+PV = "4.9+git${SRCPV}"
+
+S = "${WORKDIR}/git"
+
+export HOSTCC = "${BUILD_CC}"
+do_configure_prepend() {
+   # Replace sbin,bin paths with bitbake environment
+   sed -i -e 's;install_sbin: Tgt = ${DESTDIR}/sbin;install_sbin: Tgt = ${DESTDIR}/${base_sbindir};' \
+          -e 's;install_ubin: Tgt = ${DESTDIR}/usr/sbin;install_sbin: Tgt = ${DESTDIR}/${bindir};' \
+	  ${S}/Makefile
+}
+
+do_configure_append () {
+    install -d ${S}/include/linux/
+    cp ${WORKDIR}/aufs_type.h ${S}/include/linux/
+    sed -i -e 's;__user;;' ${S}/include/linux/aufs_type.h
+}
+
+do_configure_append_class-target () {
+    for i in ver c2sh c2tmac; do
+        cp ${STAGING_BINDIR_NATIVE}/aufs-util-${PV}/$i ${B}
+    done
+}
+
+do_compile () {
+    oe_runmake CPPFLAGS="-I${S}/include -I${S}/libau"
+}
+
+do_compile_class-native () {
+    oe_runmake tools CPPFLAGS="-I${S}/include -I${S}/libau" CC="${BUILD_CC}"
+}
+
+do_install () {
+    oe_runmake 'DESTDIR=${D}' install_sbin install_ubin install_etc
+}
+
+do_install_class-native () {
+    install -d ${D}${bindir}/aufs-util-${PV}
+    for i in ver c2sh c2tmac; do
+        install -m 755 $i ${D}${bindir}/aufs-util-${PV}/$i
+    done
+}
+
+RRECOMMENDS_${PN} += "kernel-module-aufs"
+
+BBCLASSEXTEND = "native"
diff --git a/meta/meta-openembedded/meta-filesystems/recipes-utils/exfat-utils/exfat-utils_1.2.3.bb b/meta/meta-openembedded/meta-filesystems/recipes-utils/exfat-utils/exfat-utils_1.2.3.bb
new file mode 100644
index 0000000..440f336
--- /dev/null
+++ b/meta/meta-openembedded/meta-filesystems/recipes-utils/exfat-utils/exfat-utils_1.2.3.bb
@@ -0,0 +1,22 @@
+SUMMARY = "utilities to create, check, label and dump exFAT filesystem"
+DESCRIPTION = "Utilities to manage extended file allocation table filesystem. \
+This package provides tools to create, check and label the filesystem. It \
+contains \
+ - dumpexfat to dump properties of the filesystem \
+ - exfatfsck / fsck.exfat to report errors found on a exFAT filesystem \
+ - exfatlabel to label a exFAT filesystem \
+ - mkexfatfs / mkfs.exfat to create a exFAT filesystem. \
+"
+HOMEPAGE = "http://code.google.com/p/exfat/"
+SECTION = "universe/otherosfs"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+
+SRC_URI = "https://github.com/relan/exfat/releases/download/v${PV}/${BP}.tar.gz"
+
+DEPENDS = "virtual/libc"
+
+inherit pkgconfig autotools
+
+SRC_URI[md5sum] = "f4e564450aa8159e26dde2869563d242"
+SRC_URI[sha256sum] = "80d3b3f21242d60d36a38a4ddb05cb7cc3a7d4eef5793e8314814937b938fcea"
diff --git a/meta/meta-openembedded/meta-filesystems/recipes-utils/f2fs-tools/f2fs-tools/0001-Remove-AC_CHECK_FILE-for-cross-compilation.patch b/meta/meta-openembedded/meta-filesystems/recipes-utils/f2fs-tools/f2fs-tools/0001-Remove-AC_CHECK_FILE-for-cross-compilation.patch
new file mode 100644
index 0000000..cf844bf
--- /dev/null
+++ b/meta/meta-openembedded/meta-filesystems/recipes-utils/f2fs-tools/f2fs-tools/0001-Remove-AC_CHECK_FILE-for-cross-compilation.patch
@@ -0,0 +1,32 @@
+From 3b3c6e6376babcd9a0b0db312b0e1e3bb3ab833e Mon Sep 17 00:00:00 2001
+From: Sven Ebenfeld <sven.ebenfeld@vaillant.de>
+Date: Wed, 26 Nov 2014 10:36:44 +0100
+Subject: [PATCH] Remove AC_CHECK_FILE for cross compilation
+
+---
+ configure.ac | 7 +------
+ 1 file changed, 1 insertion(+), 6 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 0111e72..8c286d4 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -20,14 +20,9 @@ AC_DEFINE([F2FS_MINOR_VERSION], m4_bpatsubst(f2fs_tools_version,
+ 				[\([0-9]*\).\([0-9]*\)\(\w\|\W\)*], [\2]),
+ 				[Minor version for f2fs-tools])
+ 
+-AC_CHECK_FILE(.git,
+-	AC_DEFINE([F2FS_TOOLS_DATE],
+-		"m4_bpatsubst(f2fs_tools_gitdate,
+-		[\([0-9-]*\)\(\w\|\W\)*], [\1])",
+-		[f2fs-tools date based on Git commits]),
+ 	AC_DEFINE([F2FS_TOOLS_DATE],
+ 		"f2fs_tools_date",
+-		[f2fs-tools date based on Source releases]))
++		[f2fs-tools date based on Source releases])
+ 
+ AC_CONFIG_SRCDIR([config.h.in])
+ AC_CONFIG_HEADER([config.h])
+-- 
+1.8.1.rc3
+
diff --git a/meta/meta-openembedded/meta-filesystems/recipes-utils/f2fs-tools/f2fs-tools/0001-f2fs-tools-Use-srcdir-prefix-to-denote-include-path.patch b/meta/meta-openembedded/meta-filesystems/recipes-utils/f2fs-tools/f2fs-tools/0001-f2fs-tools-Use-srcdir-prefix-to-denote-include-path.patch
new file mode 100644
index 0000000..0a3261b
--- /dev/null
+++ b/meta/meta-openembedded/meta-filesystems/recipes-utils/f2fs-tools/f2fs-tools/0001-f2fs-tools-Use-srcdir-prefix-to-denote-include-path.patch
@@ -0,0 +1,29 @@
+From 0fb9d6bc25e903f7831a38468845ea143fb5afd5 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 11 Aug 2018 18:49:03 -0700
+Subject: [PATCH] f2fs-tools: Use srcdir prefix to denote include path
+
+This helps builds when builddir != srcdir
+
+Upstream-Status: Submitted [https://lkml.org/lkml/2018/8/12/1]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ tools/sg_write_buffer/Makefile.am | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/tools/sg_write_buffer/Makefile.am b/tools/sg_write_buffer/Makefile.am
+index 922c328..19c438d 100644
+--- a/tools/sg_write_buffer/Makefile.am
++++ b/tools/sg_write_buffer/Makefile.am
+@@ -1,7 +1,7 @@
+ ## Makefile.am
+ 
+ if LINUX
+-AM_CPPFLAGS = -I./include
++AM_CPPFLAGS = -I$(srcdir)/include
+ AM_CFLAGS = -Wall
+ sbin_PROGRAMS = sg_write_buffer
+ sg_write_buffer_SOURCES = sg_write_buffer.c \
+-- 
+2.18.0
+
diff --git a/meta/meta-openembedded/meta-filesystems/recipes-utils/f2fs-tools/f2fs-tools_1.11.0.bb b/meta/meta-openembedded/meta-filesystems/recipes-utils/f2fs-tools/f2fs-tools_1.11.0.bb
new file mode 100644
index 0000000..2240049
--- /dev/null
+++ b/meta/meta-openembedded/meta-filesystems/recipes-utils/f2fs-tools/f2fs-tools_1.11.0.bb
@@ -0,0 +1,20 @@
+SUMMARY = "Tools for Flash-Friendly File System (F2FS)"
+HOMEPAGE = "http://sourceforge.net/projects/f2fs-tools/"
+
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=362b4b2594cd362b874a97718faa51d3"
+
+# to provide libuuid
+DEPENDS = "util-linux"
+
+# v1.11.0
+SRCREV = "b98fab3666e498c2e27ad9dcda6874c9b683f06b"
+SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs-tools.git \
+           file://0001-Remove-AC_CHECK_FILE-for-cross-compilation.patch \
+           file://0001-f2fs-tools-Use-srcdir-prefix-to-denote-include-path.patch \
+           "
+S = "${WORKDIR}/git"
+
+inherit pkgconfig autotools
+
+BBCLASSEXTEND = "native"
diff --git a/meta/meta-openembedded/meta-filesystems/recipes-utils/udevil/files/0001-udevil-0.4.3-fix-compile-with-gcc6.patch b/meta/meta-openembedded/meta-filesystems/recipes-utils/udevil/files/0001-udevil-0.4.3-fix-compile-with-gcc6.patch
new file mode 100644
index 0000000..355e93a
--- /dev/null
+++ b/meta/meta-openembedded/meta-filesystems/recipes-utils/udevil/files/0001-udevil-0.4.3-fix-compile-with-gcc6.patch
@@ -0,0 +1,12 @@
+Fix compilation with GCC6
+
+--- a/src/device-info.c	2013-12-09 14:59:27.000000000 +0100
++++ b/src/device-info.c	2017-03-13 07:06:25.506666680 +0100
+@@ -3,6 +3,7 @@
+  * contains code excerpts from udisks v1.0.4
+ ************************************************************************** */
+ 
++#include <sys/stat.h>
+ #include "device-info.h"
+ 
+ static char *
diff --git a/meta/meta-openembedded/meta-filesystems/recipes-utils/udevil/files/0002-etc-Makefile.am-Use-systemd_unitdir-instead-of-libdi.patch b/meta/meta-openembedded/meta-filesystems/recipes-utils/udevil/files/0002-etc-Makefile.am-Use-systemd_unitdir-instead-of-libdi.patch
new file mode 100644
index 0000000..f014a0f
--- /dev/null
+++ b/meta/meta-openembedded/meta-filesystems/recipes-utils/udevil/files/0002-etc-Makefile.am-Use-systemd_unitdir-instead-of-libdi.patch
@@ -0,0 +1,32 @@
+From 80b087193698632e525b90d45b4a49e61e343e1c Mon Sep 17 00:00:00 2001
+From: Krzysztof Kozlowski <krzk@kernel.org>
+Date: Thu, 13 Jul 2017 21:30:35 +0200
+Subject: [PATCH] etc: Makefile.am: Use systemd_unitdir instead of libdir
+
+Proper directory for installing systemd services is systemd_unitdir, not
+libdir.
+
+Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
+---
+ etc/Makefile.am | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/etc/Makefile.am b/etc/Makefile.am
+index 9b6e7522c20f..6d663241a72f 100644
+--- a/etc/Makefile.am
++++ b/etc/Makefile.am
+@@ -16,8 +16,8 @@ if ADD_SYSTEMD
+ 	test -f $(DESTDIR)/$(sysconfdir)/conf.d/devmon || $(INSTALL_DATA) \
+ 				$(srcdir)/systemd/devmon \
+ 				$(DESTDIR)/$(sysconfdir)/conf.d/devmon
+-	test -d $(DESTDIR)/$(libdir)/systemd/system || \
+-				mkdir -p -- $(DESTDIR)/$(libdir)/systemd/system
++	test -d $(DESTDIR)/$(systemd_unitdir)/system || \
++				mkdir -p -- $(DESTDIR)/$(systemd_unitdir)/system
+ 	$(INSTALL_DATA) $(srcdir)/systemd/devmon@.service \
+-				$(DESTDIR)/$(libdir)/systemd/system/devmon@.service
++				$(DESTDIR)/$(systemd_unitdir)/system/devmon@.service
+ endif
+-- 
+2.11.0
+
diff --git a/meta/meta-openembedded/meta-filesystems/recipes-utils/udevil/udevil_0.4.4.bb b/meta/meta-openembedded/meta-filesystems/recipes-utils/udevil/udevil_0.4.4.bb
new file mode 100644
index 0000000..60f84f8
--- /dev/null
+++ b/meta/meta-openembedded/meta-filesystems/recipes-utils/udevil/udevil_0.4.4.bb
@@ -0,0 +1,28 @@
+SUMMARY = "A command line Linux program which mounts and unmounts removable devices"
+HOMEPAGE = "http://ignorantguru.github.io/udevil/"
+
+DEPENDS = "glib-2.0 \
+    glib-2.0-native \
+    intltool-native \
+    udev \
+"
+RDEPENDS_${PN} = "udev bash"
+
+LICENSE = "GPL-3.0"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
+
+inherit autotools systemd
+
+SRC_URI = "https://github.com/IgnorantGuru/udevil/raw/pkg/${PV}/udevil-${PV}.tar.xz \
+    file://0001-udevil-0.4.3-fix-compile-with-gcc6.patch \
+    file://0002-etc-Makefile.am-Use-systemd_unitdir-instead-of-libdi.patch \
+"
+
+SRC_URI[md5sum] = "dc1c489b603a0500a04dc7e1805ac1d9"
+SRC_URI[sha256sum] = "ce8c51fd4d589cda7be56e75b42188deeb258c66fc911a9b3a70a3945c157739"
+
+PACKAGECONFIG = "${@bb.utils.contains('DISTRO_FEATURES','systemd','systemd','',d)}"
+PACKAGECONFIG[systemd] = "--enable-systemd,--disable-systemd,systemd"
+
+SYSTEMD_SERVICE_${PN} = "devmon@.service"
+SYSTEMD_AUTO_ENABLE = "disable"
diff --git a/meta/meta-openembedded/meta-filesystems/recipes-utils/xfsdump/files/remove-install-as-user.patch b/meta/meta-openembedded/meta-filesystems/recipes-utils/xfsdump/files/remove-install-as-user.patch
new file mode 100644
index 0000000..e761db3
--- /dev/null
+++ b/meta/meta-openembedded/meta-filesystems/recipes-utils/xfsdump/files/remove-install-as-user.patch
@@ -0,0 +1,205 @@
+remove install as user
+
+Upstream-Status: Inappropriate [configuration]
+
+Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+---
+ include/buildmacros |  2 +-
+ include/install-sh  | 95 ++++++++---------------------------------------------
+ 2 files changed, 14 insertions(+), 83 deletions(-)
+
+diff --git a/include/buildmacros b/include/buildmacros
+index 7a01880..0840d55 100644
+--- a/include/buildmacros
++++ b/include/buildmacros
+@@ -30,7 +30,7 @@ OBJECTS = $(ASFILES:.s=.o) \
+ 	  $(LFILES:.l=.o) \
+ 	  $(YFILES:%.y=%.tab.o)
+ 
+-INSTALL	= $(TOPDIR)/install-sh -o $(PKG_USER) -g $(PKG_GROUP)
++INSTALL	= $(TOPDIR)/install-sh
+ 
+ IMAGES_DIR = $(TOPDIR)/all-images
+ DIST_DIR = $(TOPDIR)/dist
+diff --git a/include/install-sh b/include/install-sh
+index c952a71..b9d66f7 100755
+--- a/include/install-sh
++++ b/include/install-sh
+@@ -24,11 +24,11 @@
+ #       set           set      |    yes        yes
+ #
+ _usage() {
+-    echo "Usage: $prog [-o owner] [-g group] [-m mode] -d directory"
+-    echo "or     $prog [-D] [-o owner] [-g group] [-m mode] file directory/file"
+-    echo "or     $prog [-o owner] [-g group] [-m mode] file [file ...] directory"
++    echo "Usage: $prog [-m mode] -d directory"
++    echo "or     $prog [-m mode] file directory/file"
++    echo "or     $prog [-m mode] file [file ...] directory"
+     echo "or     $prog -S file target  (creates \"target\" symlink)"
+-    echo "or     $prog -T lt_arg [-o owner] [-g group] [-m mode] libtool.lai directory"
++    echo "or     $prog -T lt_arg [-m mode] libtool.lai directory"
+     echo ""
+     echo "The \$DIST_MANIFEST and \$DIST_ROOT environment variables affect the"
+     echo "behaviour of this command - see comments in the script."
+@@ -38,32 +38,6 @@ _usage() {
+     exit 1
+ }
+ 
+-_chown ()
+-{
+-    _st=255
+-    if [ $# -eq 3 ] ; then
+-	chown $1:$2 $3
+-	_st=$?
+-	if [ $_st -ne 0 ] ; then
+-	    if [ $REAL_UID != '0' ] ; then
+-		if [ ! -f $DIST_ROOT/.chown.quiet ] ; then
+-		    echo '==============================================='
+-		    echo Ownership of files under ${DIST_ROOT:-/}
+-		    echo cannot be changed
+-		    echo '==============================================='
+-		    if [ -n "$DIST_ROOT" ] ; then
+-			touch $DIST_ROOT/.chown.quiet
+-		    fi
+-		fi
+-	       _st=0
+-	    fi     
+-	fi
+-    fi
+-
+-    return $_st
+-}
+-
+-
+ _manifest ()
+ { 
+     echo $* | sed -e 's/\/\//\//g' >>${DIST_MANIFEST:-/dev/null}
+@@ -77,9 +51,6 @@ Sflag=false
+ Tflag=false
+ DIRMODE=755
+ FILEMODE=644
+-OWNER=`id -u`
+-GROUP=`id -g`
+-REAL_UID=$OWNER
+ 
+ # default is to install and don't append manifest
+ INSTALL=true
+@@ -94,24 +65,16 @@ MANIFEST=:
+ 
+ if $INSTALL
+ then
+-    CP=cp; LN=ln; MKDIR=mkdir; CHMOD=chmod; CHOWN=_chown
++    CP=cp; LN=ln; MKDIR=mkdir; CHMOD=chmod;
+ else
+-    CP=true; LN=true; MKDIR=true; CHMOD=true; CHOWN=true
++    CP=true; LN=true; MKDIR=true; CHMOD=true;
+ fi
+ 
+-[ -n "$DIST_ROOT" -a $REAL_UID -ne 0 ] && CHOWN=true
+-
+-while getopts "Dcm:d:S:o:g:T:" c $*
++while getopts "Dcm:d:S:T:" c $*
+ do
+    case $c in
+    c)
+ 	;;
+-   g)
+-	GROUP=$OPTARG
+-	;;
+-   o)
+-	OWNER=$OPTARG
+-	;;
+    m)
+ 	DIRMODE=`expr $OPTARG`
+ 	FILEMODE=$DIRMODE
+@@ -146,18 +109,7 @@ then
+     # first usage
+     #
+     $MKDIR -p $dir 
+-    status=$?
+-    if [ $status -eq 0 ]
+-    then
+-	$CHMOD $DIRMODE $dir
+-	status=$?
+-    fi
+-    if [ $status -eq 0 ]
+-    then
+-	$CHOWN $OWNER $GROUP $dir
+-	status=$?
+-    fi
+-    $MANIFEST d $DIRMODE $OWNER $GROUP ${dir#$DIST_ROOT}
++    $MANIFEST d $DIRMODE ${dir#$DIST_ROOT}
+ elif $Sflag
+ then
+     #
+@@ -203,7 +155,7 @@ then
+ 			install_name=$target/$solib
+ 			$CP $solib $install_name
+ 			status=$?
+-			$MANIFEST f $FILEMODE $OWNER $GROUP $HERE/$solib ${install_name#$DIST_ROOT}
++			$MANIFEST f $FILEMODE $HERE/$solib ${install_name#$DIST_ROOT}
+ 			break
+ 		fi
+ 	done
+@@ -254,7 +206,7 @@ then
+ 	install_name=$target/$old_library
+ 	$CP $old_library $install_name
+ 	status=$?
+-	$MANIFEST f $FILEMODE $OWNER $GROUP $HERE/$old_library ${install_name#$DIST_ROOT}
++	$MANIFEST f $FILEMODE $HERE/$old_library ${install_name#$DIST_ROOT}
+ 	;;
+     *)
+ 	echo "$prog: -T $lt_install invalid"
+@@ -267,7 +219,6 @@ then
+ 	if [ $status -eq 0 ]
+ 	then
+ 		$CHMOD $FILEMODE $install_name
+-		$CHOWN $OWNER $GROUP $install_name
+ 	fi
+ 	;;
+     esac
+@@ -292,23 +243,10 @@ else
+ 	then 
+ 	    if [ -f $dir/$f ]
+ 	    then
+-		$CHMOD $FILEMODE $dir/$f
+-		status=$?
+-		if [ $status -eq 0 ]
+-		then
+-		    $CHOWN $OWNER $GROUP $dir/$f
+-		    status=$?
+-		fi
+-		$MANIFEST f $FILEMODE $OWNER $GROUP $HERE/$f ${dir#$DIST_ROOT}/$f
++		$MANIFEST f $FILEMODE $HERE/$f ${dir#$DIST_ROOT}/$f
+ 	    else
+ 		$CHMOD $FILEMODE $dir
+-		status=$?
+-		if [ $status -eq 0 ]
+-		then
+-		    $CHOWN $OWNER $GROUP $dir
+-		    status=$?
+-		fi
+-		$MANIFEST f $FILEMODE $OWNER $GROUP $HERE/$dir ${dir#$DIST_ROOT}
++		$MANIFEST f $FILEMODE $HERE/$dir ${dir#$DIST_ROOT}
+ 	    fi
+ 	fi
+     else
+@@ -334,14 +272,7 @@ else
+ 	    status=$?
+ 	    if [ $status -eq 0 ]
+ 	    then
+-		$CHMOD $FILEMODE $dir/$f
+-		status=$?
+-		if [ $status -eq 0 ]
+-		then
+-		    $CHOWN $OWNER $GROUP $dir/$f
+-		    status=$?
+-		fi
+-		$MANIFEST f $FILEMODE $OWNER $GROUP $HERE/$f ${dir#$DIST_ROOT}/$f
++		$MANIFEST f $FILEMODE $HERE/$f ${dir#$DIST_ROOT}/$f
+ 	    fi
+ 	    [ $status -ne 0 ] && break
+ 	done
+-- 
+1.8.1.2
+
diff --git a/meta/meta-openembedded/meta-filesystems/recipes-utils/xfsdump/xfsdump_3.1.8.bb b/meta/meta-openembedded/meta-filesystems/recipes-utils/xfsdump/xfsdump_3.1.8.bb
new file mode 100644
index 0000000..54ab30c
--- /dev/null
+++ b/meta/meta-openembedded/meta-filesystems/recipes-utils/xfsdump/xfsdump_3.1.8.bb
@@ -0,0 +1,40 @@
+SUMMARY = "XFS Filesystem Dump Utility"
+DESCRIPTION = "The xfsdump package contains xfsdump, xfsrestore and a \
+               number of other utilities for administering XFS filesystems.\
+               xfsdump examines files in a filesystem, determines which \
+               need to be backed up, and copies those files to a \
+               specified disk, tape or other storage medium."
+HOMEPAGE = "http://oss.sgi.com/projects/xfs"
+SECTION = "base"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://doc/COPYING;md5=15c832894d10ddd00dfcf57bee490ecc"
+DEPENDS = "xfsprogs attr"
+
+SRC_URI = "https://www.kernel.org/pub/linux/utils/fs/xfs/xfsdump/${BP}.tar.xz \
+           file://remove-install-as-user.patch \
+           "
+SRC_URI[md5sum] = "84d3bc287b4a2bb5d16b2320a47049a7"
+SRC_URI[sha256sum] = "ed14e67ae5b273c2698e767b43a46f033d361e540fe13feaaf9b110ee0edc585"
+
+inherit autotools-brokensep
+
+PARALLEL_MAKE = ""
+PACKAGECONFIG ??= ""
+PACKAGECONFIG[gettext] = "--enable-gettext=yes,--enable-gettext=no,gettext"
+
+CFLAGS += "-D_FILE_OFFSET_BITS=64"
+
+EXTRA_OEMAKE += "'LIBTOOL=${HOST_SYS}-libtool' V=1"
+
+do_configure () {
+    export DEBUG="-DNDEBUG"
+    install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.guess ${S}
+    install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.sub ${S}
+    oe_runconf
+}
+
+do_install () {
+    export DIST_ROOT=${D}
+    oe_runmake install
+    oe_runmake install-dev
+}
diff --git a/meta/meta-openembedded/meta-filesystems/recipes-utils/xfsprogs/files/0001-Check-for-MAP_SYNC-in-sys-mman.h.patch b/meta/meta-openembedded/meta-filesystems/recipes-utils/xfsprogs/files/0001-Check-for-MAP_SYNC-in-sys-mman.h.patch
new file mode 100644
index 0000000..75b227a
--- /dev/null
+++ b/meta/meta-openembedded/meta-filesystems/recipes-utils/xfsprogs/files/0001-Check-for-MAP_SYNC-in-sys-mman.h.patch
@@ -0,0 +1,52 @@
+From f41ef1f06d428c81fcdef73d896dfc7ceda1809c Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 23 Aug 2018 04:59:39 +0000
+Subject: [PATCH] Check for MAP_SYNC in sys/mman.h
+
+Not all arches have wired MAP_SYNC e.g. mips
+which have conflicts with definition, so checking
+a generic file is going to mis-configure xfsprogs
+for such arches.
+
+libc now has added the relevant macros to
+sys/mman.h, and returns the right values for arches
+where its implemented and nothing for others
+unlike asm-generic/mman.h which only checks
+for kernel headers and ignored arches
+
+Upstream-Status: Pending
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ include/linux.h       | 3 +--
+ m4/package_libcdev.m4 | 3 +--
+ 2 files changed, 2 insertions(+), 4 deletions(-)
+
+diff --git a/include/linux.h b/include/linux.h
+index 1998941..7e5c9ab 100644
+--- a/include/linux.h
++++ b/include/linux.h
+@@ -331,8 +331,7 @@ fsmap_advance(
+ #define MAP_SYNC 0
+ #define MAP_SHARED_VALIDATE 0
+ #else
+-#include <asm-generic/mman.h>
+-#include <asm-generic/mman-common.h>
++#include <sys/mman.h>
+ #endif /* HAVE_MAP_SYNC */
+ 
+ #endif	/* __XFS_LINUX_H__ */
+diff --git a/m4/package_libcdev.m4 b/m4/package_libcdev.m4
+index 0a6b514..2b47d2f 100644
+--- a/m4/package_libcdev.m4
++++ b/m4/package_libcdev.m4
+@@ -335,8 +335,7 @@ AC_DEFUN([AC_HAVE_STATFS_FLAGS],
+ AC_DEFUN([AC_HAVE_MAP_SYNC],
+   [ AC_MSG_CHECKING([for MAP_SYNC])
+     AC_TRY_COMPILE([
+-#include <asm-generic/mman.h>
+-#include <asm-generic/mman-common.h>
++#include <sys/mman.h>
+     ], [
+         int flags = MAP_SYNC | MAP_SHARED_VALIDATE;
+     ], have_map_sync=yes
diff --git a/meta/meta-openembedded/meta-filesystems/recipes-utils/xfsprogs/files/0001-build-Check-for-sync_file_range-libc-function.patch b/meta/meta-openembedded/meta-filesystems/recipes-utils/xfsprogs/files/0001-build-Check-for-sync_file_range-libc-function.patch
new file mode 100644
index 0000000..231da80
--- /dev/null
+++ b/meta/meta-openembedded/meta-filesystems/recipes-utils/xfsprogs/files/0001-build-Check-for-sync_file_range-libc-function.patch
@@ -0,0 +1,79 @@
+From f8a22f16c03e51d3c779b12f37d362faaa0ecf31 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 31 Jan 2018 21:28:53 -0800
+Subject: [PATCH] build: Check for sync_file_range libc function
+
+glibc 2.27 now has sync_file_range()
+
+Upstream-Status: Pending
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ include/builddefs.in | 1 +
+ io/Makefile          | 5 ++++-
+ io/io.h              | 2 +-
+ io/sync_file_range.c | 3 +++
+ 4 files changed, 9 insertions(+), 2 deletions(-)
+
+diff --git a/include/builddefs.in b/include/builddefs.in
+index b895949..a388c83 100644
+--- a/include/builddefs.in
++++ b/include/builddefs.in
+@@ -95,6 +95,7 @@ HAVE_FIEMAP = @have_fiemap@
+ HAVE_PREADV = @have_preadv@
+ HAVE_PWRITEV2 = @have_pwritev2@
+ HAVE_COPY_FILE_RANGE = @have_copy_file_range@
++HAVE_NR_COPY_FILE_RANGE = @have_nr_copy_file_range@
+ HAVE_SYNC_FILE_RANGE = @have_sync_file_range@
+ HAVE_SYNCFS = @have_syncfs@
+ HAVE_READDIR = @have_readdir@
+diff --git a/io/Makefile b/io/Makefile
+index 00ede48..dd001b0 100644
+--- a/io/Makefile
++++ b/io/Makefile
+@@ -60,10 +60,13 @@ CFILES += inject.c resblks.c
+ LCFLAGS += -DHAVE_INJECT -DHAVE_RESBLKS
+ endif
+ 
+-ifeq ($(HAVE_COPY_FILE_RANGE),yes)
++ifeq ($(HAVE_NR_COPY_FILE_RANGE),yes)
+ CFILES += copy_file_range.c
++LCFLAGS += -DHAVE_NR_COPY_FILE_RANGE
++ifeq ($(HAVE_COPY_FILE_RANGE),yes)
+ LCFLAGS += -DHAVE_COPY_FILE_RANGE
+ endif
++endif
+ 
+ ifeq ($(HAVE_SYNC_FILE_RANGE),yes)
+ CFILES += sync_file_range.c
+diff --git a/io/io.h b/io/io.h
+index e1f3d95..fe2e6a2 100644
+--- a/io/io.h
++++ b/io/io.h
+@@ -151,7 +151,7 @@ extern void		fiemap_init(void);
+ #define fiemap_init()	do { } while (0)
+ #endif
+ 
+-#ifdef HAVE_COPY_FILE_RANGE
++#if defined(HAVE_NR_COPY_FILE_RANGE) && !defined(HAVE_COPY_FILE_RANGE)
+ extern void		copy_range_init(void);
+ #else
+ #define copy_range_init()	do { } while (0)
+diff --git a/io/sync_file_range.c b/io/sync_file_range.c
+index 30bbc93..6c49d73 100644
+--- a/io/sync_file_range.c
++++ b/io/sync_file_range.c
+@@ -4,6 +4,7 @@
+  * All Rights Reserved.
+  */
+ 
++#ifndef HAVE_COPY_FILE_RANGE
+ #include "command.h"
+ #include "input.h"
+ #include "init.h"
+@@ -92,3 +93,5 @@ sync_range_init(void)
+ 
+ 	add_command(&sync_range_cmd);
+ }
++
++#endif
diff --git a/meta/meta-openembedded/meta-filesystems/recipes-utils/xfsprogs/files/0002-include-include-xfs-linux.h-after-sys-mman.h.patch b/meta/meta-openembedded/meta-filesystems/recipes-utils/xfsprogs/files/0002-include-include-xfs-linux.h-after-sys-mman.h.patch
new file mode 100644
index 0000000..f924cd1
--- /dev/null
+++ b/meta/meta-openembedded/meta-filesystems/recipes-utils/xfsprogs/files/0002-include-include-xfs-linux.h-after-sys-mman.h.patch
@@ -0,0 +1,33 @@
+From 11a42df394de3dc520e72a016296dcc6dea02a7a Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 23 Aug 2018 05:33:57 +0000
+Subject: [PATCH] include include/xfs/linux.h after <sys/mman.h>
+
+This helps compiling with musl which goes ahead and undefines MAP_SYNC
+for mips and other architectures where its not wired in kernel
+
+Upstream-Status: Pending
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ io/mmap.c | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/io/mmap.c b/io/mmap.c
+index dbfcca5..ca00df1 100644
+--- a/io/mmap.c
++++ b/io/mmap.c
+@@ -4,10 +4,11 @@
+  * All Rights Reserved.
+  */
+ 
+-#include "command.h"
+-#include "input.h"
+ #include <sys/mman.h>
+ #include <signal.h>
++
++#include "command.h"
++#include "input.h"
+ #include "init.h"
+ #include "io.h"
+ 
diff --git a/meta/meta-openembedded/meta-filesystems/recipes-utils/xfsprogs/files/disable-xfs_scrub-build.patch b/meta/meta-openembedded/meta-filesystems/recipes-utils/xfsprogs/files/disable-xfs_scrub-build.patch
new file mode 100644
index 0000000..c07b4b5
--- /dev/null
+++ b/meta/meta-openembedded/meta-filesystems/recipes-utils/xfsprogs/files/disable-xfs_scrub-build.patch
@@ -0,0 +1,30 @@
+From 2bd40e5ed4df0b0a42beff8806b1ec5daa372c48 Mon Sep 17 00:00:00 2001
+From: Yi Zhao <yi.zhao@windriver.com>
+Date: Thu, 19 Jul 2018 16:49:41 +0800
+Subject: [PATCH] Disable xfs_scrub build
+
+Disable xfs_scrub build since it is experimental.
+
+Upstream-Status: Inappropriate [embedded specific]
+
+Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
+---
+ Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makefile b/Makefile
+index 7ddfa31..cd60319 100644
+--- a/Makefile
++++ b/Makefile
+@@ -48,7 +48,7 @@ LIBFROG_SUBDIR = libfrog
+ DLIB_SUBDIRS = libxlog libxcmd libhandle
+ LIB_SUBDIRS = libxfs $(DLIB_SUBDIRS)
+ TOOL_SUBDIRS = copy db estimate fsck growfs io logprint mkfs quota \
+-		mdrestore repair rtcp m4 man doc debian spaceman scrub
++		mdrestore repair rtcp m4 man doc debian spaceman
+ 
+ ifneq ("$(PKG_PLATFORM)","darwin")
+ TOOL_SUBDIRS += fsr
+-- 
+2.7.4
+
diff --git a/meta/meta-openembedded/meta-filesystems/recipes-utils/xfsprogs/files/remove_flags_from_build_flags.patch b/meta/meta-openembedded/meta-filesystems/recipes-utils/xfsprogs/files/remove_flags_from_build_flags.patch
new file mode 100644
index 0000000..bd2d025
--- /dev/null
+++ b/meta/meta-openembedded/meta-filesystems/recipes-utils/xfsprogs/files/remove_flags_from_build_flags.patch
@@ -0,0 +1,13 @@
+Index: xfsprogs-4.14.0/include/builddefs.in
+===================================================================
+--- xfsprogs-4.14.0.orig/include/builddefs.in
++++ xfsprogs-4.14.0/include/builddefs.in
+@@ -168,7 +168,7 @@ ifeq ($(ENABLE_GETTEXT),yes)
+ GCFLAGS += -DENABLE_GETTEXT
+ endif
+ 
+-BUILD_CFLAGS += $(GCFLAGS) $(PCFLAGS)
++BUILD_CFLAGS += $(GCFLAGS)
+ # First, Sanitizer, Global, Platform, Local CFLAGS
+ CFLAGS += $(FCFLAGS) $(SANITIZER_CFLAGS) $(OPTIMIZER) $(GCFLAGS) $(PCFLAGS) $(LCFLAGS)
+ 
diff --git a/meta/meta-openembedded/meta-filesystems/recipes-utils/xfsprogs/xfsprogs_4.18.0.bb b/meta/meta-openembedded/meta-filesystems/recipes-utils/xfsprogs/xfsprogs_4.18.0.bb
new file mode 100644
index 0000000..0a1bacb
--- /dev/null
+++ b/meta/meta-openembedded/meta-filesystems/recipes-utils/xfsprogs/xfsprogs_4.18.0.bb
@@ -0,0 +1,68 @@
+SUMMARY = "XFS Filesystem Utilities"
+HOMEPAGE = "http://oss.sgi.com/projects/xfs"
+SECTION = "base"
+LICENSE = "GPLv2 & LGPLv2.1"
+LICENSE_libhandle = "LGPLv2.1"
+LIC_FILES_CHKSUM = "file://LICENSES/GPL-2.0;md5=74274e8a218423e49eefdea80bc55038 \
+                    file://LICENSES/LGPL-2.1;md5=b370887980db5dd40659b50909238dbd"
+DEPENDS = "util-linux util-linux-native"
+SRC_URI = "https://www.kernel.org/pub/linux/utils/fs/xfs/xfsprogs/${BP}.tar.xz \
+           file://remove_flags_from_build_flags.patch \
+           file://0001-build-Check-for-sync_file_range-libc-function.patch \
+           file://disable-xfs_scrub-build.patch \
+           file://0001-Check-for-MAP_SYNC-in-sys-mman.h.patch \
+           file://0002-include-include-xfs-linux.h-after-sys-mman.h.patch \
+           "
+SRC_URI[md5sum] = "5f80b631b68df89a8b9283307e96d2e8"
+SRC_URI[sha256sum] = "397dc96f51aeeff73d021d3418d3172377b2685f2740ca60525096c070aa3df1"
+
+inherit autotools-brokensep
+
+PACKAGES =+ "${PN}-fsck ${PN}-mkfs ${PN}-repair libhandle"
+
+DEPENDS += "util-linux"
+
+RDEPENDS_${PN} = "${PN}-fsck ${PN}-mkfs ${PN}-repair"
+
+FILES_${PN}-fsck = "${base_sbindir}/fsck.xfs"
+FILES_${PN}-mkfs = "${base_sbindir}/mkfs.xfs"
+FILES_${PN}-repair = "${base_sbindir}/xfs_repair"
+
+FILES_libhandle = "${base_libdir}/libhandle${SOLIBS}"
+
+EXTRA_OECONF = "--enable-gettext=no \
+                INSTALL_USER=root \
+                INSTALL_GROUP=root \
+                ac_cv_header_aio_h=yes \
+                ac_cv_lib_rt_lio_listio=yes \
+"
+
+DISABLE_STATIC = ""
+EXTRA_AUTORECONF += "-I ${S}/m4 --exclude=autoheader"
+
+PACKAGECONFIG ??= "readline blkid"
+
+PACKAGECONFIG[readline] = "--enable-readline=yes,--enable-readline=no,readline"
+PACKAGECONFIG[blkid] = "--enable-blkid=yes,--enable-blkid=no,util-linux"
+
+export DEBUG="-DNDEBUG"
+export BUILD_VERBOSE="1"
+export tagname="CC"
+
+EXTRA_OEMAKE = "DIST_ROOT='${D}'"
+
+do_configure () {
+    export BUILD_CC="${BUILD_CC} ${BUILD_CFLAGS}"
+    # Prevent Makefile from calling configure without arguments,
+    # when do_configure gets called for a second time.
+    rm -f ${B}/include/builddefs ${B}/include/platform_defs.h ${B}/configure
+    # Recreate configure script.
+    oe_runmake configure
+    oe_runconf
+}
+
+do_install_append() {
+        oe_runmake 'DESTDIR=${D}' install-dev
+        rm ${D}${libdir}/*.la
+        rmdir --ignore-fail-on-non-empty ${D}${libdir}
+}
diff --git a/meta/meta-openembedded/meta-filesystems/recipes-utils/xorriso/xorriso_1.4.0.bb b/meta/meta-openembedded/meta-filesystems/recipes-utils/xorriso/xorriso_1.4.0.bb
new file mode 100644
index 0000000..b26709e
--- /dev/null
+++ b/meta/meta-openembedded/meta-filesystems/recipes-utils/xorriso/xorriso_1.4.0.bb
@@ -0,0 +1,29 @@
+DESCRIPTION = "xorriso copies file objects from POSIX compliant filesystems \
+into Rock Ridge enhanced ISO 9660 filesystems and allows session-wise \
+manipulation of such filesystems"
+
+LICENSE = "GPLv3"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
+
+SRC_URI = "http://www.gnu.org/software/${BPN}/${BPN}-${PV}.tar.gz"
+
+SRC_URI[md5sum] = "ec79fd2736b8da76e7a870e27cadf6fa"
+SRC_URI[sha256sum] = "0bd1e085015b28c24f57697d6def2fe84517967dc417554c0c3ccf1685ed0e56"
+
+PACKAGECONFIG ??= "acl attr zlib bzip2 readline"
+PACKAGECONFIG[acl] = "--enable-libacl,--disable-libacl,acl,"
+PACKAGECONFIG[attr] = "--enable-xattr,--disable-xattr,attr,"
+PACKAGECONFIG[zlib] = "--enable-zlib,--disable-zlib,zlib,"
+PACKAGECONFIG[bzip2] = "--enable-libbz2,--disable-libbz2,bzip2,"
+PACKAGECONFIG[readline] = "--enable-libreadline,--disable-libreadline,readline,"
+
+inherit autotools-brokensep pkgconfig distro_features_check
+
+do_configure_prepend () {
+    touch NEWS
+}
+
+RDEPENDS_${PN} = "tk"
+REQUIRED_DISTRO_FEATURES = "x11"
+
+BBCLASSEXTEND = "native"