All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 01/28] rpm: upgrade to 4.15.1
@ 2020-01-08 13:27 Alexander Kanavin
  2020-01-08 13:27 ` [PATCH 02/28] rpm: switch to openssl from nss Alexander Kanavin
                   ` (27 more replies)
  0 siblings, 28 replies; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-08 13:27 UTC (permalink / raw)
  To: openembedded-core

Drop patches that were merged upstream.

0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
modifies a file that was removed upstream.

Add a 0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch
as unfortunately the new parallel file classification feature from
upstream trips over somewhere in libmagic when inspected files are
compressed:
https://github.com/rpm-software-management/rpm/issues/756

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
 ...satisfiable-dependency-when-building.patch |  28 +-
 ...lib-rpm-as-the-installation-path-for.patch |  14 +-
 ...kage-building-into-a-separate-functi.patch |  84 -----
 ...es-requires-do-not-use-monodis-from-.patch |  58 ---
 ...-run-file-classification-in-parallel.patch |  65 ++++
 ...ry-package-creation-via-thread-pools.patch | 127 -------
 ...e-operations-over-string-pools-threa.patch | 207 -----------
 ...ove-static-local-variables-from-buil.patch | 336 ------------------
 .../rpm/{rpm_4.14.2.1.bb => rpm_4.15.1.bb}    |  15 +-
 9 files changed, 90 insertions(+), 844 deletions(-)
 delete mode 100644 meta/recipes-devtools/rpm/files/0001-Split-binary-package-building-into-a-separate-functi.patch
 delete mode 100644 meta/recipes-devtools/rpm/files/0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
 create mode 100644 meta/recipes-devtools/rpm/files/0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch
 delete mode 100644 meta/recipes-devtools/rpm/files/0002-Run-binary-package-creation-via-thread-pools.patch
 delete mode 100644 meta/recipes-devtools/rpm/files/0003-rpmstrpool.c-make-operations-over-string-pools-threa.patch
 delete mode 100644 meta/recipes-devtools/rpm/files/0004-build-pack.c-remove-static-local-variables-from-buil.patch
 rename meta/recipes-devtools/rpm/{rpm_4.14.2.1.bb => rpm_4.15.1.bb} (90%)

diff --git a/meta/recipes-devtools/rpm/files/0001-Do-not-add-an-unsatisfiable-dependency-when-building.patch b/meta/recipes-devtools/rpm/files/0001-Do-not-add-an-unsatisfiable-dependency-when-building.patch
index 80e2f0fad70..4029233fb70 100644
--- a/meta/recipes-devtools/rpm/files/0001-Do-not-add-an-unsatisfiable-dependency-when-building.patch
+++ b/meta/recipes-devtools/rpm/files/0001-Do-not-add-an-unsatisfiable-dependency-when-building.patch
@@ -1,4 +1,4 @@
-From 87cfc0db1ed6fe381a5ed5f0016d8c3344a31a11 Mon Sep 17 00:00:00 2001
+From f39c28eb52f12ae6e82db360ffd5a903ac8faca5 Mon Sep 17 00:00:00 2001
 From: Alexander Kanavin <alex.kanavin@gmail.com>
 Date: Mon, 9 Jan 2017 18:52:11 +0200
 Subject: [PATCH] Do not add an unsatisfiable dependency when building rpms in
@@ -9,25 +9,23 @@ hand produces rpms that way by design.
 
 Upstream-Status: Inappropriate [oe-core specific]
 Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+
 ---
  build/pack.c | 4 ----
  1 file changed, 4 deletions(-)
 
 diff --git a/build/pack.c b/build/pack.c
-index 1261cdbba..bb2d6f4f6 100644
+index e6cec1816..810cd7351 100644
 --- a/build/pack.c
 +++ b/build/pack.c
-@@ -595,10 +595,6 @@ rpmRC packageBinaries(rpmSpec spec, const char *cookie, int cheating)
- 	    headerPutBin(pkg->header, RPMTAG_SOURCEPKGID, spec->sourcePkgId,16);
- 	}
+@@ -724,10 +724,6 @@ static rpmRC packageBinary(rpmSpec spec, Package pkg, const char *cookie, int ch
+ 	headerPutBin(pkg->header, RPMTAG_SOURCEPKGID, spec->sourcePkgId,16);
+     }
+ 
+-    if (cheating) {
+-	(void) rpmlibNeedsFeature(pkg, "ShortCircuited", "4.9.0-1");
+-    }
+-
+     if ((rc = getPkgFilename(pkg->header, filename)))
+ 	return rc;
  
--	if (cheating) {
--	    (void) rpmlibNeedsFeature(pkg, "ShortCircuited", "4.9.0-1");
--	}
--	
- 	{   char *binFormat = rpmGetPath("%{_rpmfilename}", NULL);
- 	    char *binRpm, *binDir;
- 	    binRpm = headerFormat(pkg->header, binFormat, &errorString);
--- 
-2.11.0
-
diff --git a/meta/recipes-devtools/rpm/files/0001-Do-not-hardcode-lib-rpm-as-the-installation-path-for.patch b/meta/recipes-devtools/rpm/files/0001-Do-not-hardcode-lib-rpm-as-the-installation-path-for.patch
index 82e7328757f..52440d68180 100644
--- a/meta/recipes-devtools/rpm/files/0001-Do-not-hardcode-lib-rpm-as-the-installation-path-for.patch
+++ b/meta/recipes-devtools/rpm/files/0001-Do-not-hardcode-lib-rpm-as-the-installation-path-for.patch
@@ -1,4 +1,4 @@
-From bd08eb0ae1312f347f49949481daa7c923752df2 Mon Sep 17 00:00:00 2001
+From 2f3d1619b6510bc131c4375827caf912559f0fa2 Mon Sep 17 00:00:00 2001
 From: Alexander Kanavin <alex.kanavin@gmail.com>
 Date: Mon, 27 Feb 2017 09:43:30 +0200
 Subject: [PATCH] Do not hardcode "lib/rpm" as the installation path for
@@ -14,10 +14,10 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
  3 files changed, 4 insertions(+), 4 deletions(-)
 
 diff --git a/configure.ac b/configure.ac
-index 09af7c4..9bd6903 100644
+index d3aeab86e..1a1f3f91f 100644
 --- a/configure.ac
 +++ b/configure.ac
-@@ -1055,7 +1055,7 @@ else
+@@ -1086,7 +1086,7 @@ else
      usrprefix=$prefix
  fi
  
@@ -27,10 +27,10 @@ index 09af7c4..9bd6903 100644
  
  AC_SUBST(OBJDUMP)
 diff --git a/macros.in b/macros.in
-index a3aa7a9..62cee5c 100644
+index fe9803aad..d128675bf 100644
 --- a/macros.in
 +++ b/macros.in
-@@ -970,7 +970,7 @@ package or when debugging this package.\
+@@ -985,7 +985,7 @@ package or when debugging this package.\
  %_sharedstatedir	%{_prefix}/com
  %_localstatedir		%{_prefix}/var
  %_lib			lib
@@ -40,7 +40,7 @@ index a3aa7a9..62cee5c 100644
  %_infodir		%{_datadir}/info
  %_mandir		%{_datadir}/man
 diff --git a/rpm.am b/rpm.am
-index 82c2d7c..6341b51 100644
+index 40b4ec55f..3139ce8f6 100644
 --- a/rpm.am
 +++ b/rpm.am
 @@ -1,10 +1,10 @@
@@ -55,4 +55,4 @@ index 82c2d7c..6341b51 100644
 +rpmconfigdir = $(libdir)/rpm
  
  # Libtool version (current-revision-age) for all our libraries
- rpm_version_info = 9:0:1
+ rpm_version_info = 9:1:0
diff --git a/meta/recipes-devtools/rpm/files/0001-Split-binary-package-building-into-a-separate-functi.patch b/meta/recipes-devtools/rpm/files/0001-Split-binary-package-building-into-a-separate-functi.patch
deleted file mode 100644
index 6e44f0b7fc9..00000000000
--- a/meta/recipes-devtools/rpm/files/0001-Split-binary-package-building-into-a-separate-functi.patch
+++ /dev/null
@@ -1,84 +0,0 @@
-From 721a660a507d6d062e7aecafad886c643970a5d5 Mon Sep 17 00:00:00 2001
-From: Alexander Kanavin <alex.kanavin@gmail.com>
-Date: Thu, 25 May 2017 18:15:27 +0300
-Subject: [PATCH 1/4] Split binary package building into a separate function
-
-So that it can be run as a thread pool task.
-
-Upstream-Status: Submitted [https://github.com/rpm-software-management/rpm/pull/226]
-Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
-
----
- build/pack.c | 33 +++++++++++++++++++++------------
- 1 file changed, 21 insertions(+), 12 deletions(-)
-
-diff --git a/build/pack.c b/build/pack.c
-index 518f4e92a..ccfd614cc 100644
---- a/build/pack.c
-+++ b/build/pack.c
-@@ -546,18 +546,13 @@ static rpmRC checkPackages(char *pkgcheck)
-     return RPMRC_OK;
- }
- 
--rpmRC packageBinaries(rpmSpec spec, const char *cookie, int cheating)
-+static rpmRC packageBinary(rpmSpec spec, Package pkg, const char *cookie, int cheating, char** filename)
- {
--    rpmRC rc;
--    const char *errorString;
--    Package pkg;
--    char *pkglist = NULL;
--
--    for (pkg = spec->packages; pkg != NULL; pkg = pkg->next) {
--	char *fn;
-+	const char *errorString;
-+	rpmRC rc = RPMRC_OK;
- 
- 	if (pkg->fileList == NULL)
--	    continue;
-+	    return rc;
- 
- 	if ((rc = processScriptFiles(spec, pkg)))
- 	    return rc;
-@@ -587,7 +582,7 @@ rpmRC packageBinaries(rpmSpec spec, const char *cookie, int cheating)
- 		     headerGetString(pkg->header, RPMTAG_NAME), errorString);
- 		return RPMRC_FAIL;
- 	    }
--	    fn = rpmGetPath("%{_rpmdir}/", binRpm, NULL);
-+	    *filename = rpmGetPath("%{_rpmdir}/", binRpm, NULL);
- 	    if ((binDir = strchr(binRpm, '/')) != NULL) {
- 		struct stat st;
- 		char *dn;
-@@ -609,14 +604,28 @@ rpmRC packageBinaries(rpmSpec spec, const char *cookie, int cheating)
- 	    free(binRpm);
- 	}
- 
--	rc = writeRPM(pkg, NULL, fn, NULL);
-+	rc = writeRPM(pkg, NULL, *filename, NULL);
- 	if (rc == RPMRC_OK) {
- 	    /* Do check each written package if enabled */
--	    char *pkgcheck = rpmExpand("%{?_build_pkgcheck} ", fn, NULL);
-+	    char *pkgcheck = rpmExpand("%{?_build_pkgcheck} ", *filename, NULL);
- 	    if (pkgcheck[0] != ' ') {
- 		rc = checkPackages(pkgcheck);
- 	    }
- 	    free(pkgcheck);
-+	}
-+	return rc;
-+}
-+
-+rpmRC packageBinaries(rpmSpec spec, const char *cookie, int cheating)
-+{
-+    rpmRC rc;
-+    Package pkg;
-+    char *pkglist = NULL;
-+
-+    for (pkg = spec->packages; pkg != NULL; pkg = pkg->next) {
-+	char *fn = NULL;
-+	rc = packageBinary(spec, pkg, cookie, cheating, &fn);
-+	if (rc == RPMRC_OK) {
- 	    rstrcat(&pkglist, fn);
- 	    rstrcat(&pkglist, " ");
- 	}
--- 
-2.11.0
-
diff --git a/meta/recipes-devtools/rpm/files/0001-mono-find-provides-requires-do-not-use-monodis-from-.patch b/meta/recipes-devtools/rpm/files/0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
deleted file mode 100644
index 24aa4c7ffff..00000000000
--- a/meta/recipes-devtools/rpm/files/0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
+++ /dev/null
@@ -1,58 +0,0 @@
-From 43fbc3f53302a395463e8450ac81c53f623eec3f Mon Sep 17 00:00:00 2001
-From: Alexander Kanavin <alex.kanavin@gmail.com>
-Date: Tue, 27 Aug 2019 17:42:34 +0200
-Subject: [PATCH] mono-find-provides/requires: do not use monodis from the host
-
-There was a host contamination issue here: if monodis was installed
-on the host, do_package would use that to resolve dependencies
-of mono libraries (and often fail in that). Without monodis,
-no dependencies are resolved, which is seemingly how things
-are supposed to work.
-
-Upstream-Status: Inappropriate [oe-core specific]
-Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
----
- scripts/mono-find-provides | 8 ++++----
- scripts/mono-find-requires | 8 ++++----
- 2 files changed, 8 insertions(+), 8 deletions(-)
-
-diff --git a/scripts/mono-find-provides b/scripts/mono-find-provides
-index 9348457d3..b28872ffb 100644
---- a/scripts/mono-find-provides
-+++ b/scripts/mono-find-provides
-@@ -18,11 +18,11 @@ monolist=($(printf "%s\n" "${filelist[@]}" | grep -E "\\.(exe|dll)\$"))
- build_bindir="$2/usr/bin"
- build_libdir="$2$3"
- 
--if [ -x $build_bindir/monodis ]; then
--    monodis="$build_bindir/monodis"
-+if [ -x $build_bindir/monodis.bogus ]; then
-+    monodis="$build_bindir/monodis.bogus"
-     export LD_LIBRARY_PATH=$build_libdir${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}
--elif [ -x /usr/bin/monodis ]; then
--    monodis="/usr/bin/monodis"
-+elif [ -x /usr/bin/monodis.bogus ]; then
-+    monodis="/usr/bin/monodis.bogus"
- else
-     exit 0;
- fi
-diff --git a/scripts/mono-find-requires b/scripts/mono-find-requires
-index ea58cae48..d270169e1 100644
---- a/scripts/mono-find-requires
-+++ b/scripts/mono-find-requires
-@@ -18,11 +18,11 @@ monolist=($(printf "%s\n" "${filelist[@]}" | grep -E "\\.(exe|dll)\$"))
- build_bindir="$2/usr/bin"
- build_libdir="$2$3"
- 
--if [ -x $build_bindir/monodis ]; then
--    monodis="$build_bindir/monodis"
-+if [ -x $build_bindir/monodis.bogus ]; then
-+    monodis="$build_bindir/monodis.bogus"
-     export LD_LIBRARY_PATH=$build_libdir${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}
--elif [ -x /usr/bin/monodis ]; then
--    monodis="/usr/bin/monodis"
-+elif [ -x /usr/bin/monodis.bogus ]; then
-+    monodis="/usr/bin/monodis.bogus"
- else
-     exit 0;
- fi
diff --git a/meta/recipes-devtools/rpm/files/0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch b/meta/recipes-devtools/rpm/files/0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch
new file mode 100644
index 00000000000..d8d338792d3
--- /dev/null
+++ b/meta/recipes-devtools/rpm/files/0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch
@@ -0,0 +1,65 @@
+From 93c3c7f043f62e96941274e957c4ad9432032af1 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Mon, 18 Nov 2019 16:22:56 +0100
+Subject: [PATCH] rpmfc.c: do not run file classification in parallel
+
+This is causing freezes with libmagic when the file in question is compressed:
+https://github.com/rpm-software-management/rpm/issues/756
+
+Upstream-Status: Inappropriate [upstream wants a proper fix]
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+---
+ build/rpmfc.c | 8 --------
+ 1 file changed, 8 deletions(-)
+
+diff --git a/build/rpmfc.c b/build/rpmfc.c
+index 3db7a9352..17afdd57a 100644
+--- a/build/rpmfc.c
++++ b/build/rpmfc.c
+@@ -680,7 +680,6 @@ static void rpmfcAttributes(rpmfc fc, int ix, const char *ftype, const char *ful
+ 	/* Add attributes on libmagic type & path pattern matches */
+ 	if (matches(&(*attr)->incl, ftype, path, is_executable)) {
+ 	    argvAddTokens(&fc->fattrs[ix], (*attr)->name);
+-	    #pragma omp critical(fahash)
+ 	    fattrHashAddEntry(fc->fahash, attr-fc->atypes, ix);
+ 	}
+     }
+@@ -1105,7 +1104,6 @@ rpmRC rpmfcClassify(rpmfc fc, ARGV_t argv, rpm_mode_t * fmode)
+     /* Build (sorted) file class dictionary. */
+     fc->cdict = rpmstrPoolCreate();
+ 
+-    #pragma omp parallel
+     {
+     /* libmagic is not thread-safe, each thread needs to a private handle */
+     magic_t ms = magic_open(msflags);
+@@ -1113,15 +1111,12 @@ rpmRC rpmfcClassify(rpmfc fc, ARGV_t argv, rpm_mode_t * fmode)
+     if (ms == NULL) {
+ 	rpmlog(RPMLOG_ERR, _("magic_open(0x%x) failed: %s\n"),
+ 		msflags, strerror(errno));
+-	#pragma omp cancel parallel
+     }
+ 
+     if (magic_load(ms, NULL) == -1) {
+ 	rpmlog(RPMLOG_ERR, _("magic_load failed: %s\n"), magic_error(ms));
+-	#pragma omp cancel parallel
+     }
+ 
+-    #pragma omp for ordered reduction(+:nerrors)
+     for (int ix = 0; ix < fc->nfiles; ix++) {
+ 	rpmsid ftypeId;
+ 	const char * ftype;
+@@ -1185,14 +1180,11 @@ rpmRC rpmfcClassify(rpmfc fc, ARGV_t argv, rpm_mode_t * fmode)
+ 	fc->fcolor[ix] = fcolor;
+ 
+ 	/* Add to file class dictionary and index array */
+-	#pragma omp ordered
+ 	if (fcolor != RPMFC_WHITE && (fcolor & RPMFC_INCLUDE)) {
+ 	    ftypeId = rpmstrPoolId(fc->cdict, ftype, 1);
+-	    #pragma omp atomic
+ 	    fc->fknown++;
+ 	} else {
+ 	    ftypeId = rpmstrPoolId(fc->cdict, "", 1);
+-	    #pragma omp atomic
+ 	    fc->fwhite++;
+ 	}
+ 	/* Pool id's start from 1, for headers we want it from 0 */
diff --git a/meta/recipes-devtools/rpm/files/0002-Run-binary-package-creation-via-thread-pools.patch b/meta/recipes-devtools/rpm/files/0002-Run-binary-package-creation-via-thread-pools.patch
deleted file mode 100644
index d10041c2e14..00000000000
--- a/meta/recipes-devtools/rpm/files/0002-Run-binary-package-creation-via-thread-pools.patch
+++ /dev/null
@@ -1,127 +0,0 @@
-From 513200cf76758de4668312c628d6362bdabfaf4b Mon Sep 17 00:00:00 2001
-From: Alexander Kanavin <alex.kanavin@gmail.com>
-Date: Thu, 25 May 2017 19:30:20 +0300
-Subject: [PATCH 1/3] Run binary package creation via thread pools.
-
-Upstream-Status: Submitted [https://github.com/rpm-software-management/rpm/pull/226]
-Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
-
----
- build/pack.c | 81 +++++++++++++++++++++++++++++++++++++++++++++++++-----------
- configure.ac |  3 +++
- 2 files changed, 70 insertions(+), 14 deletions(-)
-
-diff --git a/build/pack.c b/build/pack.c
-index ccfd614cc..ed5b9ab4e 100644
---- a/build/pack.c
-+++ b/build/pack.c
-@@ -616,25 +616,78 @@ static rpmRC packageBinary(rpmSpec spec, Package pkg, const char *cookie, int ch
- 	return rc;
- }
- 
--rpmRC packageBinaries(rpmSpec spec, const char *cookie, int cheating)
-+struct binaryPackageTaskData
- {
--    rpmRC rc;
-     Package pkg;
-+    char *filename;
-+    rpmRC result;
-+    struct binaryPackageTaskData *next;
-+};
-+
-+static struct binaryPackageTaskData* runBinaryPackageTasks(rpmSpec spec, const char *cookie, int cheating)
-+{
-+    struct binaryPackageTaskData *tasks = NULL;
-+    struct binaryPackageTaskData *task = NULL;
-+    struct binaryPackageTaskData *prev = NULL;
-+
-+    for (Package pkg = spec->packages; pkg != NULL; pkg = pkg->next) {
-+        task = rcalloc(1, sizeof(*task));
-+        task->pkg = pkg;
-+        if (pkg == spec->packages) {
-+            // the first package needs to be processed ahead of others, as they copy
-+            // changelog data from it, and so otherwise data races would happen
-+            task->result = packageBinary(spec, pkg, cookie, cheating, &(task->filename));
-+            rpmlog(RPMLOG_NOTICE, _("Finished binary package job, result %d, filename %s\n"), task->result, task->filename);
-+            tasks = task;
-+        }
-+        if (prev != NULL) {
-+            prev->next = task;
-+        }
-+        prev = task;
-+    }
-+
-+    #pragma omp parallel
-+    #pragma omp single
-+    // re-declaring task variable is necessary, or older gcc versions will produce code that segfaults
-+    for (struct binaryPackageTaskData *task = tasks; task != NULL; task = task->next) {
-+        if (task != tasks)
-+        #pragma omp task
-+        {
-+            task->result = packageBinary(spec, task->pkg, cookie, cheating, &(task->filename));
-+            rpmlog(RPMLOG_NOTICE, _("Finished binary package job, result %d, filename %s\n"), task->result, task->filename);
-+        }
-+    }
-+
-+    return tasks;
-+}
-+
-+static void freeBinaryPackageTasks(struct binaryPackageTaskData* tasks)
-+{
-+    while (tasks != NULL) {
-+        struct binaryPackageTaskData* next = tasks->next;
-+        rfree(tasks->filename);
-+        rfree(tasks);
-+        tasks = next;
-+    }
-+}
-+
-+rpmRC packageBinaries(rpmSpec spec, const char *cookie, int cheating)
-+{
-     char *pkglist = NULL;
- 
--    for (pkg = spec->packages; pkg != NULL; pkg = pkg->next) {
--	char *fn = NULL;
--	rc = packageBinary(spec, pkg, cookie, cheating, &fn);
--	if (rc == RPMRC_OK) {
--	    rstrcat(&pkglist, fn);
--	    rstrcat(&pkglist, " ");
--	}
--	free(fn);
--	if (rc != RPMRC_OK) {
--	    pkglist = _free(pkglist);
--	    return rc;
--	}
-+    struct binaryPackageTaskData *tasks = runBinaryPackageTasks(spec, cookie, cheating);
-+
-+    for (struct binaryPackageTaskData *task = tasks; task != NULL; task = task->next) {
-+        if (task->result == RPMRC_OK) {
-+            rstrcat(&pkglist, task->filename);
-+            rstrcat(&pkglist, " ");
-+        } else {
-+            _free(pkglist);
-+            freeBinaryPackageTasks(tasks);
-+            return RPMRC_FAIL;
-+        }
-     }
-+    freeBinaryPackageTasks(tasks);
- 
-     /* Now check the package set if enabled */
-     if (pkglist != NULL) {
-diff --git a/configure.ac b/configure.ac
-index a506ec819..59fa0acaf 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -17,6 +17,9 @@ AC_DISABLE_STATIC
- 
- PKG_PROG_PKG_CONFIG
- 
-+AC_OPENMP
-+RPMCFLAGS="$OPENMP_CFLAGS $RPMCFLAGS"
-+
- dnl Checks for programs.
- AC_PROG_CXX
- AC_PROG_AWK
--- 
-2.11.0
-
diff --git a/meta/recipes-devtools/rpm/files/0003-rpmstrpool.c-make-operations-over-string-pools-threa.patch b/meta/recipes-devtools/rpm/files/0003-rpmstrpool.c-make-operations-over-string-pools-threa.patch
deleted file mode 100644
index c348ae5330e..00000000000
--- a/meta/recipes-devtools/rpm/files/0003-rpmstrpool.c-make-operations-over-string-pools-threa.patch
+++ /dev/null
@@ -1,207 +0,0 @@
-From c80892f17e44331206c8318d53b63bb6a99554d0 Mon Sep 17 00:00:00 2001
-From: Alexander Kanavin <alex.kanavin@gmail.com>
-Date: Tue, 30 May 2017 13:58:30 +0300
-Subject: [PATCH 3/4] rpmstrpool.c: make operations over string pools
- thread-safe
-
-Otherwise multithreaded rpm building explodes in various ways due
-to data races.
-
-Upstream-Status: Submitted [https://github.com/rpm-software-management/rpm/pull/226]
-Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
-
----
- rpmio/rpmstrpool.c | 56 +++++++++++++++++++++++++++++++++++++++++++++---------
- 1 file changed, 47 insertions(+), 9 deletions(-)
-
-diff --git a/rpmio/rpmstrpool.c b/rpmio/rpmstrpool.c
-index 30a57eb10..58ba95a02 100644
---- a/rpmio/rpmstrpool.c
-+++ b/rpmio/rpmstrpool.c
-@@ -113,6 +113,8 @@ static poolHash poolHashCreate(int numBuckets)
-     return ht;
- }
- 
-+static const char * rpmstrPoolStrNoLock(rpmstrPool pool, rpmsid sid);
-+
- static void poolHashResize(rpmstrPool pool, int numBuckets)
- {
-     poolHash ht = pool->hash;
-@@ -120,7 +122,7 @@ static void poolHashResize(rpmstrPool pool, int numBuckets)
- 
-     for (int i=0; i<ht->numBuckets; i++) {
-         if (!ht->buckets[i].keyid) continue;
--        unsigned int keyHash = rstrhash(rpmstrPoolStr(pool, ht->buckets[i].keyid));
-+        unsigned int keyHash = rstrhash(rpmstrPoolStrNoLock(pool, ht->buckets[i].keyid));
-         for (unsigned int j=0;;j++) {
-             unsigned int hash = hashbucket(keyHash, j) % numBuckets;
-             if (!buckets[hash].keyid) {
-@@ -149,7 +151,7 @@ static void poolHashAddHEntry(rpmstrPool pool, const char * key, unsigned int ke
-             ht->buckets[hash].keyid = keyid;
-             ht->keyCount++;
-             break;
--        } else if (!strcmp(rpmstrPoolStr(pool, ht->buckets[hash].keyid), key)) {
-+        } else if (!strcmp(rpmstrPoolStrNoLock(pool, ht->buckets[hash].keyid), key)) {
-             return;
-         }
-     }
-@@ -191,7 +193,7 @@ static void poolHashPrintStats(rpmstrPool pool)
-     int maxcollisions = 0;
- 
-     for (i=0; i<ht->numBuckets; i++) {
--        unsigned int keyHash = rstrhash(rpmstrPoolStr(pool, ht->buckets[i].keyid));
-+        unsigned int keyHash = rstrhash(rpmstrPoolStrNoLock(pool, ht->buckets[i].keyid));
-         for (unsigned int j=0;;j++) {
-             unsigned int hash = hashbucket(keyHash, i) % ht->numBuckets;
-             if (hash==i) {
-@@ -221,7 +223,7 @@ static void rpmstrPoolRehash(rpmstrPool pool)
- 
-     pool->hash = poolHashCreate(sizehint);
-     for (int i = 1; i <= pool->offs_size; i++)
--	poolHashAddEntry(pool, rpmstrPoolStr(pool, i), i);
-+	poolHashAddEntry(pool, rpmstrPoolStrNoLock(pool, i), i);
- }
- 
- rpmstrPool rpmstrPoolCreate(void)
-@@ -245,6 +247,8 @@ rpmstrPool rpmstrPoolCreate(void)
- 
- rpmstrPool rpmstrPoolFree(rpmstrPool pool)
- {
-+    #pragma omp critical(rpmstrpool)
-+    {
-     if (pool) {
- 	if (pool->nrefs > 1) {
- 	    pool->nrefs--;
-@@ -260,18 +264,24 @@ rpmstrPool rpmstrPoolFree(rpmstrPool pool)
- 	    free(pool);
- 	}
-     }
-+    }
-     return NULL;
- }
- 
- rpmstrPool rpmstrPoolLink(rpmstrPool pool)
- {
-+    #pragma omp critical(rpmstrpool)
-+    {
-     if (pool)
- 	pool->nrefs++;
-+    }
-     return pool;
- }
- 
- void rpmstrPoolFreeze(rpmstrPool pool, int keephash)
- {
-+    #pragma omp critical(rpmstrpool)
-+    {
-     if (pool && !pool->frozen) {
- 	if (!keephash) {
- 	    pool->hash = poolHashFree(pool->hash);
-@@ -281,16 +291,20 @@ void rpmstrPoolFreeze(rpmstrPool pool, int keephash)
- 			      pool->offs_alloced * sizeof(*pool->offs));
- 	pool->frozen = 1;
-     }
-+    }
- }
- 
- void rpmstrPoolUnfreeze(rpmstrPool pool)
- {
-+    #pragma omp critical(rpmstrpool)
-+    {
-     if (pool) {
- 	if (pool->hash == NULL) {
- 	    rpmstrPoolRehash(pool);
- 	}
- 	pool->frozen = 0;
-     }
-+    }
- }
- 
- static rpmsid rpmstrPoolPut(rpmstrPool pool, const char *s, size_t slen, unsigned int hash)
-@@ -350,7 +364,7 @@ static rpmsid rpmstrPoolGet(rpmstrPool pool, const char * key, size_t keylen,
-             return 0;
-         }
- 
--	s = rpmstrPoolStr(pool, ht->buckets[hash].keyid);
-+	s = rpmstrPoolStrNoLock(pool, ht->buckets[hash].keyid);
- 	/* pool string could be longer than keylen, require exact matche */
- 	if (strncmp(s, key, keylen) == 0 && s[keylen] == '\0')
- 	    return ht->buckets[hash].keyid;
-@@ -373,27 +387,31 @@ static inline rpmsid strn2id(rpmstrPool pool, const char *s, size_t slen,
- rpmsid rpmstrPoolIdn(rpmstrPool pool, const char *s, size_t slen, int create)
- {
-     rpmsid sid = 0;
--
-+    #pragma omp critical(rpmstrpool)
-+    {
-     if (s != NULL) {
- 	unsigned int hash = rstrnhash(s, slen);
- 	sid = strn2id(pool, s, slen, hash, create);
-     }
-+    }
-     return sid;
- }
- 
- rpmsid rpmstrPoolId(rpmstrPool pool, const char *s, int create)
- {
-     rpmsid sid = 0;
--
-+    #pragma omp critical(rpmstrpool)
-+    {
-     if (s != NULL) {
- 	size_t slen;
- 	unsigned int hash = rstrlenhash(s, &slen);
- 	sid = strn2id(pool, s, slen, hash, create);
-     }
-+    }
-     return sid;
- }
- 
--const char * rpmstrPoolStr(rpmstrPool pool, rpmsid sid)
-+static const char * rpmstrPoolStrNoLock(rpmstrPool pool, rpmsid sid)
- {
-     const char *s = NULL;
-     if (pool && sid > 0 && sid <= pool->offs_size)
-@@ -401,12 +419,25 @@ const char * rpmstrPoolStr(rpmstrPool pool, rpmsid sid)
-     return s;
- }
- 
-+const char * rpmstrPoolStr(rpmstrPool pool, rpmsid sid)
-+{
-+    const char *s = NULL;
-+    #pragma omp critical(rpmstrpool)
-+    {
-+    s = rpmstrPoolStrNoLock(pool, sid);
-+    }
-+    return s;
-+}
-+
- size_t rpmstrPoolStrlen(rpmstrPool pool, rpmsid sid)
- {
-     size_t slen = 0;
-+    #pragma omp critical(rpmstrpool)
-+    {
-     if (pool && sid > 0 && sid <= pool->offs_size) {
- 	slen = strlen(pool->offs[sid]);
-     }
-+    }
-     return slen;
- }
- 
-@@ -421,5 +452,12 @@ int rpmstrPoolStreq(rpmstrPool poolA, rpmsid sidA,
- 
- rpmsid rpmstrPoolNumStr(rpmstrPool pool)
- {
--    return (pool != NULL) ? pool->offs_size : 0;
-+    rpmsid id = 0;
-+    #pragma omp critical(rpmstrpool)
-+    {
-+    if (pool) {
-+	id = pool->offs_size;
-+    }
-+    }
-+    return id;
- }
--- 
-2.11.0
-
diff --git a/meta/recipes-devtools/rpm/files/0004-build-pack.c-remove-static-local-variables-from-buil.patch b/meta/recipes-devtools/rpm/files/0004-build-pack.c-remove-static-local-variables-from-buil.patch
deleted file mode 100644
index 652e30b3e4a..00000000000
--- a/meta/recipes-devtools/rpm/files/0004-build-pack.c-remove-static-local-variables-from-buil.patch
+++ /dev/null
@@ -1,336 +0,0 @@
-From 792693bb90768cfde4898e8dd31ee1b5de803d2f Mon Sep 17 00:00:00 2001
-From: Alexander Kanavin <alex.kanavin@gmail.com>
-Date: Thu, 8 Jun 2017 17:08:09 +0300
-Subject: [PATCH] build/pack.c: remove static local variables from buildHost()
- and getBuildTime()
-
-Their use is causing difficult to diagnoze data races when building multiple
-packages in parallel, and is a bad idea in general, as it also makes it more
-difficult to reason about code.
-
-Upstream-Status: Submitted [https://github.com/rpm-software-management/rpm/pull/226]
-Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
-
-Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
-
----
- build/build.c             | 54 ++++++++++++++++++++++++++++--
- build/pack.c              | 84 +++++++++--------------------------------------
- build/rpmbuild_internal.h |  8 +++--
- 3 files changed, 74 insertions(+), 72 deletions(-)
-
-diff --git a/build/build.c b/build/build.c
-index 13c3df2..b154f08 100644
---- a/build/build.c
-+++ b/build/build.c
-@@ -6,6 +6,8 @@
- #include "system.h"
- 
- #include <errno.h>
-+#include <netdb.h>
-+#include <time.h>
- #include <sys/wait.h>
- 
- #include <rpm/rpmlog.h>
-@@ -16,6 +18,50 @@
- 
- #include "debug.h"
- 
-+static rpm_time_t getBuildTime(void)
-+{
-+    rpm_time_t buildTime = 0;
-+    char *srcdate;
-+    time_t epoch;
-+    char *endptr;
-+
-+    srcdate = getenv("SOURCE_DATE_EPOCH");
-+    if (srcdate) {
-+        errno = 0;
-+        epoch = strtol(srcdate, &endptr, 10);
-+        if (srcdate == endptr || *endptr || errno != 0)
-+            rpmlog(RPMLOG_ERR, _("unable to parse SOURCE_DATE_EPOCH\n"));
-+        else
-+            buildTime = (int32_t) epoch;
-+    } else
-+        buildTime = (int32_t) time(NULL);
-+
-+    return buildTime;
-+}
-+
-+static char * buildHost(void)
-+{
-+    char* hostname;
-+    struct hostent *hbn;
-+    char *bhMacro;
-+
-+    bhMacro = rpmExpand("%{?_buildhost}", NULL);
-+    if (strcmp(bhMacro, "") != 0) {
-+        rasprintf(&hostname, "%s", bhMacro);
-+    } else {
-+        hostname = rcalloc(1024, sizeof(*hostname));
-+        (void) gethostname(hostname, 1024);
-+        hbn = gethostbyname(hostname);
-+        if (hbn)
-+            strcpy(hostname, hbn->h_name);
-+        else
-+            rpmlog(RPMLOG_WARNING,
-+                    _("Could not canonicalize hostname: %s\n"), hostname);
-+    }
-+    free(bhMacro);
-+    return(hostname);
-+}
-+
- /**
-  */
- static rpmRC doRmSource(rpmSpec spec)
-@@ -201,6 +247,9 @@ static rpmRC buildSpec(BTA_t buildArgs, rpmSpec spec, int what)
-     rpmRC rc = RPMRC_OK;
-     int test = (what & RPMBUILD_NOBUILD);
-     char *cookie = buildArgs->cookie ? xstrdup(buildArgs->cookie) : NULL;
-+    const char* host = buildHost();
-+    rpm_time_t buildTime = getBuildTime();
-+
- 
-     if (rpmExpandNumeric("%{?source_date_epoch_from_changelog}") &&
- 	getenv("SOURCE_DATE_EPOCH") == NULL) {
-@@ -269,11 +318,11 @@ static rpmRC buildSpec(BTA_t buildArgs, rpmSpec spec, int what)
- 		goto exit;
- 
- 	if (((what & RPMBUILD_PACKAGESOURCE) && !test) &&
--	    (rc = packageSources(spec, &cookie)))
-+	    (rc = packageSources(spec, &cookie, buildTime, host)))
- 		goto exit;
- 
- 	if (((what & RPMBUILD_PACKAGEBINARY) && !test) &&
--	    (rc = packageBinaries(spec, cookie, (didBuild == 0))))
-+	    (rc = packageBinaries(spec, cookie, (didBuild == 0), buildTime, host)))
- 		goto exit;
- 	
- 	if ((what & RPMBUILD_CLEAN) &&
-@@ -293,6 +342,7 @@ static rpmRC buildSpec(BTA_t buildArgs, rpmSpec spec, int what)
- 	(void) unlink(spec->specFile);
- 
- exit:
-+    free(host);
-     free(cookie);
-     spec->rootDir = NULL;
-     if (rc != RPMRC_OK && rpmlogGetNrecs() > 0) {
-diff --git a/build/pack.c b/build/pack.c
-index df15876..17a4b09 100644
---- a/build/pack.c
-+++ b/build/pack.c
-@@ -6,8 +6,6 @@
- #include "system.h"
- 
- #include <errno.h>
--#include <netdb.h>
--#include <time.h>
- #include <sys/wait.h>
- 
- #include <rpm/rpmlib.h>			/* RPMSIGTAG*, rpmReadPackageFile */
-@@ -152,57 +150,6 @@ exit:
-     return rc;
- }
- 
--static rpm_time_t * getBuildTime(void)
--{
--    static rpm_time_t buildTime[1];
--    char *srcdate;
--    time_t epoch;
--    char *endptr;
--
--    if (buildTime[0] == 0) {
--        srcdate = getenv("SOURCE_DATE_EPOCH");
--        if (srcdate) {
--            errno = 0;
--            epoch = strtol(srcdate, &endptr, 10);
--            if (srcdate == endptr || *endptr || errno != 0)
--                rpmlog(RPMLOG_ERR, _("unable to parse SOURCE_DATE_EPOCH\n"));
--            else
--                buildTime[0] = (int32_t) epoch;
--        } else
--            buildTime[0] = (int32_t) time(NULL);
--    }
--
--    return buildTime;
--}
--
--static const char * buildHost(void)
--{
--    static char hostname[1024];
--    static int oneshot = 0;
--    struct hostent *hbn;
--    char *bhMacro;
--
--    if (! oneshot) {
--        bhMacro = rpmExpand("%{?_buildhost}", NULL);
--        if (strcmp(bhMacro, "") != 0 && strlen(bhMacro) < 1024) {
--            strcpy(hostname, bhMacro);
--        } else {
--            if (strcmp(bhMacro, "") != 0)
--                rpmlog(RPMLOG_WARNING, _("The _buildhost macro is too long\n"));
--            (void) gethostname(hostname, sizeof(hostname));
--            hbn = gethostbyname(hostname);
--            if (hbn)
--                strcpy(hostname, hbn->h_name);
--            else
--                rpmlog(RPMLOG_WARNING,
--                        _("Could not canonicalize hostname: %s\n"), hostname);
--        }
--        free(bhMacro);
--        oneshot = 1;
--    }
--    return(hostname);
--}
--
- static rpmRC processScriptFiles(rpmSpec spec, Package pkg)
- {
-     struct TriggerFileEntry *p;
-@@ -476,7 +423,8 @@ exit:
-  * order to how the RPM format is laid on disk.
-  */
- static rpmRC writeRPM(Package pkg, unsigned char ** pkgidp,
--		      const char *fileName, char **cookie)
-+		      const char *fileName, char **cookie,
-+		      rpm_time_t buildTime, const char* buildHost)
- {
-     FD_t fd = NULL;
-     char * rpmio_flags = NULL;
-@@ -500,7 +448,7 @@ static rpmRC writeRPM(Package pkg, unsigned char ** pkgidp,
- 
-     /* Create and add the cookie */
-     if (cookie) {
--	rasprintf(cookie, "%s %d", buildHost(), (int) (*getBuildTime()));
-+	rasprintf(cookie, "%s %d", buildHost, buildTime);
- 	headerPutString(pkg->header, RPMTAG_COOKIE, *cookie);
-     }
- 
-@@ -641,7 +589,7 @@ static rpmRC checkPackages(char *pkgcheck)
-     return RPMRC_OK;
- }
- 
--static rpmRC packageBinary(rpmSpec spec, Package pkg, const char *cookie, int cheating, char** filename)
-+static rpmRC packageBinary(rpmSpec spec, Package pkg, const char *cookie, int cheating, char** filename, rpm_time_t buildTime, const char* buildHost)
- {
- 	const char *errorString;
- 	rpmRC rc = RPMRC_OK;
-@@ -660,8 +608,8 @@ static rpmRC packageBinary(rpmSpec spec, Package pkg, const char *cookie, int ch
- 	headerCopyTags(spec->packages->header, pkg->header, copyTags);
- 	
- 	headerPutString(pkg->header, RPMTAG_RPMVERSION, VERSION);
--	headerPutString(pkg->header, RPMTAG_BUILDHOST, buildHost());
--	headerPutUint32(pkg->header, RPMTAG_BUILDTIME, getBuildTime(), 1);
-+	headerPutString(pkg->header, RPMTAG_BUILDHOST, buildHost);
-+	headerPutUint32(pkg->header, RPMTAG_BUILDTIME, &buildTime, 1);
- 
- 	if (spec->sourcePkgId != NULL) {
- 	    headerPutBin(pkg->header, RPMTAG_SOURCEPKGID, spec->sourcePkgId,16);
-@@ -699,7 +647,7 @@ static rpmRC packageBinary(rpmSpec spec, Package pkg, const char *cookie, int ch
- 	    free(binRpm);
- 	}
- 
--	rc = writeRPM(pkg, NULL, *filename, NULL);
-+	rc = writeRPM(pkg, NULL, *filename, NULL, buildTime, buildHost);
- 	if (rc == RPMRC_OK) {
- 	    /* Do check each written package if enabled */
- 	    char *pkgcheck = rpmExpand("%{?_build_pkgcheck} ", *filename, NULL);
-@@ -719,7 +667,7 @@ struct binaryPackageTaskData
-     struct binaryPackageTaskData *next;
- };
- 
--static struct binaryPackageTaskData* runBinaryPackageTasks(rpmSpec spec, const char *cookie, int cheating)
-+static struct binaryPackageTaskData* runBinaryPackageTasks(rpmSpec spec, const char *cookie, int cheating, rpm_time_t buildTime, char* buildHost)
- {
-     struct binaryPackageTaskData *tasks = NULL;
-     struct binaryPackageTaskData *task = NULL;
-@@ -731,7 +679,7 @@ static struct binaryPackageTaskData* runBinaryPackageTasks(rpmSpec spec, const c
-         if (pkg == spec->packages) {
-             // the first package needs to be processed ahead of others, as they copy
-             // changelog data from it, and so otherwise data races would happen
--            task->result = packageBinary(spec, pkg, cookie, cheating, &(task->filename));
-+            task->result = packageBinary(spec, pkg, cookie, cheating, &(task->filename), buildTime, buildHost);
-             rpmlog(RPMLOG_NOTICE, _("Finished binary package job, result %d, filename %s\n"), task->result, task->filename);
-             tasks = task;
-         }
-@@ -748,7 +696,7 @@ static struct binaryPackageTaskData* runBinaryPackageTasks(rpmSpec spec, const c
-         if (task != tasks)
-         #pragma omp task
-         {
--            task->result = packageBinary(spec, task->pkg, cookie, cheating, &(task->filename));
-+            task->result = packageBinary(spec, task->pkg, cookie, cheating, &(task->filename), buildTime, buildHost);
-             rpmlog(RPMLOG_NOTICE, _("Finished binary package job, result %d, filename %s\n"), task->result, task->filename);
-         }
-     }
-@@ -766,11 +714,11 @@ static void freeBinaryPackageTasks(struct binaryPackageTaskData* tasks)
-     }
- }
- 
--rpmRC packageBinaries(rpmSpec spec, const char *cookie, int cheating)
-+rpmRC packageBinaries(rpmSpec spec, const char *cookie, int cheating, rpm_time_t buildTime, char* buildHost)
- {
-     char *pkglist = NULL;
- 
--    struct binaryPackageTaskData *tasks = runBinaryPackageTasks(spec, cookie, cheating);
-+    struct binaryPackageTaskData *tasks = runBinaryPackageTasks(spec, cookie, cheating, buildTime, buildHost);
- 
-     for (struct binaryPackageTaskData *task = tasks; task != NULL; task = task->next) {
-         if (task->result == RPMRC_OK) {
-@@ -797,7 +745,7 @@ rpmRC packageBinaries(rpmSpec spec, const char *cookie, int cheating)
-     return RPMRC_OK;
- }
- 
--rpmRC packageSources(rpmSpec spec, char **cookie)
-+rpmRC packageSources(rpmSpec spec, char **cookie, rpm_time_t buildTime, char* buildHost)
- {
-     Package sourcePkg = spec->sourcePackage;
-     rpmRC rc;
-@@ -805,8 +753,8 @@ rpmRC packageSources(rpmSpec spec, char **cookie)
- 
-     /* Add some cruft */
-     headerPutString(sourcePkg->header, RPMTAG_RPMVERSION, VERSION);
--    headerPutString(sourcePkg->header, RPMTAG_BUILDHOST, buildHost());
--    headerPutUint32(sourcePkg->header, RPMTAG_BUILDTIME, getBuildTime(), 1);
-+    headerPutString(sourcePkg->header, RPMTAG_BUILDHOST, buildHost);
-+    headerPutUint32(sourcePkg->header, RPMTAG_BUILDTIME, &buildTime, 1);
-     headerPutUint32(sourcePkg->header, RPMTAG_SOURCEPACKAGE, &one, 1);
- 
-     /* XXX this should be %_srpmdir */
-@@ -814,7 +762,7 @@ rpmRC packageSources(rpmSpec spec, char **cookie)
- 	char *pkgcheck = rpmExpand("%{?_build_pkgcheck_srpm} ", fn, NULL);
- 
- 	spec->sourcePkgId = NULL;
--	rc = writeRPM(sourcePkg, &spec->sourcePkgId, fn, cookie);
-+	rc = writeRPM(sourcePkg, &spec->sourcePkgId, fn, cookie, buildTime, buildHost);
- 
- 	/* Do check SRPM package if enabled */
- 	if (rc == RPMRC_OK && pkgcheck[0] != ' ') {
-diff --git a/build/rpmbuild_internal.h b/build/rpmbuild_internal.h
-index 439b7d3..07e8338 100644
---- a/build/rpmbuild_internal.h
-+++ b/build/rpmbuild_internal.h
-@@ -427,19 +427,23 @@ rpmRC processSourceFiles(rpmSpec spec, rpmBuildPkgFlags pkgFlags);
-  * @param spec		spec file control structure
-  * @param cookie	build identifier "cookie" or NULL
-  * @param cheating	was build shortcircuited?
-+ * @param buildTime	the build timestamp that goes into packages
-+ * @param buildHost	the hostname where the build is happening
-  * @return		RPMRC_OK on success
-  */
- RPM_GNUC_INTERNAL
--rpmRC packageBinaries(rpmSpec spec, const char *cookie, int cheating);
-+rpmRC packageBinaries(rpmSpec spec, const char *cookie, int cheating, rpm_time_t buildTime, char* buildHost);
- 
- /** \ingroup rpmbuild
-  * Generate source package.
-  * @param spec		spec file control structure
-  * @retval cookie	build identifier "cookie" or NULL
-+ * @param buildTime	the build timestamp that goes into packages
-+ * @param buildHost	the hostname where the build is happening
-  * @return		RPMRC_OK on success
-  */
- RPM_GNUC_INTERNAL
--rpmRC packageSources(rpmSpec spec, char **cookie);
-+rpmRC packageSources(rpmSpec spec, char **cookie, rpm_time_t buildTime, char* buildHost);
- 
- RPM_GNUC_INTERNAL
- int addLangTag(rpmSpec spec, Header h, rpmTagVal tag,
diff --git a/meta/recipes-devtools/rpm/rpm_4.14.2.1.bb b/meta/recipes-devtools/rpm/rpm_4.15.1.bb
similarity index 90%
rename from meta/recipes-devtools/rpm/rpm_4.14.2.1.bb
rename to meta/recipes-devtools/rpm/rpm_4.15.1.bb
index c37330eb4c6..5896e78e734 100644
--- a/meta/recipes-devtools/rpm/rpm_4.14.2.1.bb
+++ b/meta/recipes-devtools/rpm/rpm_4.15.1.bb
@@ -24,7 +24,7 @@ HOMEPAGE = "http://www.rpm.org"
 LICENSE = "GPL-2.0"
 LIC_FILES_CHKSUM = "file://COPYING;md5=c0bf017c0fd1920e6158a333acabfd4a"
 
-SRC_URI = "git://github.com/rpm-software-management/rpm;branch=rpm-4.14.x \
+SRC_URI = "git://github.com/rpm-software-management/rpm;branch=rpm-4.15.x \
            file://0001-Do-not-add-an-unsatisfiable-dependency-when-building.patch \
            file://0001-Do-not-read-config-files-from-HOME.patch \
            file://0001-When-cross-installing-execute-package-scriptlets-wit.patch \
@@ -34,18 +34,14 @@ SRC_URI = "git://github.com/rpm-software-management/rpm;branch=rpm-4.14.x \
            file://0001-Fix-build-with-musl-C-library.patch \
            file://0001-Add-a-color-setting-for-mips64_n32-binaries.patch \
            file://0011-Do-not-require-that-ELF-binaries-are-executable-to-b.patch \
-           file://0001-Split-binary-package-building-into-a-separate-functi.patch \
-           file://0002-Run-binary-package-creation-via-thread-pools.patch \
-           file://0003-rpmstrpool.c-make-operations-over-string-pools-threa.patch \
-           file://0004-build-pack.c-remove-static-local-variables-from-buil.patch \
            file://0001-perl-disable-auto-reqs.patch \
            file://0001-rpm-rpmio.c-restrict-virtual-memory-usage-if-limit-s.patch \
            file://0016-rpmscript.c-change-logging-level-around-scriptlets-t.patch \
-           file://0001-mono-find-provides-requires-do-not-use-monodis-from-.patch \
+           file://0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch \
            "
 
 PE = "1"
-SRCREV = "4a9440006398646583f0d9ae1837dad2875013aa"
+SRCREV = "ab2179452c5be276a6b96c591afded485c7e58c3"
 
 S = "${WORKDIR}/git"
 
@@ -59,7 +55,7 @@ export PYTHON_ABI
 EXTRA_AUTORECONF_append = " --exclude=gnu-configize"
 
 EXTRA_OECONF_append = " --without-lua --enable-python"
-EXTRA_OECONF_append_libc-musl = " --disable-nls"
+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
 #
@@ -125,8 +121,7 @@ do_install_append () {
 	    ${D}/${libdir}/rpm/macros
 
 	sed -i -e 's|/usr/bin/python|${USRBINPATH}/env ${PYTHON_PN}|' \
-	    ${D}${libdir}/rpm/pythondistdeps.py \
-	    ${D}${libdir}/rpm/python-macro-helper
+	    ${D}${libdir}/rpm/pythondistdeps.py
 }
 
 FILES_${PN} += "${libdir}/rpm-plugins/*.so \
-- 
2.17.1



^ permalink raw reply	[flat|nested] 64+ messages in thread

* [PATCH 02/28] rpm: switch to openssl from nss
  2020-01-08 13:27 [PATCH 01/28] rpm: upgrade to 4.15.1 Alexander Kanavin
@ 2020-01-08 13:27 ` Alexander Kanavin
  2020-01-08 13:27 ` [PATCH 03/28] rpm: fix with musl and latest elfutils Alexander Kanavin
                   ` (26 subsequent siblings)
  27 siblings, 0 replies; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-08 13:27 UTC (permalink / raw)
  To: openembedded-core

nss is a problematic library in many ways, but openssl
seems to work just fine.

rpm was the only user of nss in oe-core, which opens
the possibility of moving it out.

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
 meta/recipes-devtools/rpm/rpm_4.15.1.bb | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/meta/recipes-devtools/rpm/rpm_4.15.1.bb b/meta/recipes-devtools/rpm/rpm_4.15.1.bb
index 5896e78e734..0a6d412a1b8 100644
--- a/meta/recipes-devtools/rpm/rpm_4.15.1.bb
+++ b/meta/recipes-devtools/rpm/rpm_4.15.1.bb
@@ -45,7 +45,7 @@ SRCREV = "ab2179452c5be276a6b96c591afded485c7e58c3"
 
 S = "${WORKDIR}/git"
 
-DEPENDS = "nss libarchive db file popt xz bzip2 dbus elfutils python3"
+DEPENDS = "openssl libarchive db file popt xz bzip2 dbus elfutils python3"
 DEPENDS_append_class-native = " file-replacement-native bzip2-replacement-native"
 
 inherit autotools gettext pkgconfig python3native
@@ -54,7 +54,7 @@ export PYTHON_ABI
 # OE-core patches autoreconf to additionally run gnu-configize, which fails with this recipe
 EXTRA_AUTORECONF_append = " --exclude=gnu-configize"
 
-EXTRA_OECONF_append = " --without-lua --enable-python"
+EXTRA_OECONF_append = " --without-lua --enable-python --with-crypto=openssl"
 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
-- 
2.17.1



^ permalink raw reply	[flat|nested] 64+ messages in thread

* [PATCH 03/28] rpm: fix with musl and latest elfutils.
  2020-01-08 13:27 [PATCH 01/28] rpm: upgrade to 4.15.1 Alexander Kanavin
  2020-01-08 13:27 ` [PATCH 02/28] rpm: switch to openssl from nss Alexander Kanavin
@ 2020-01-08 13:27 ` Alexander Kanavin
  2020-01-08 13:27 ` [PATCH 04/28] nss: update to 3.48 Alexander Kanavin
                   ` (25 subsequent siblings)
  27 siblings, 0 replies; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-08 13:27 UTC (permalink / raw)
  To: openembedded-core

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
 ...lugins.c-call-dlerror-prior-to-dlsym.patch | 29 +++++++++++++++++++
 meta/recipes-devtools/rpm/rpm_4.15.1.bb       |  1 +
 2 files changed, 30 insertions(+)
 create mode 100644 meta/recipes-devtools/rpm/files/0001-rpmplugins.c-call-dlerror-prior-to-dlsym.patch

diff --git a/meta/recipes-devtools/rpm/files/0001-rpmplugins.c-call-dlerror-prior-to-dlsym.patch b/meta/recipes-devtools/rpm/files/0001-rpmplugins.c-call-dlerror-prior-to-dlsym.patch
new file mode 100644
index 00000000000..8842e3ebd71
--- /dev/null
+++ b/meta/recipes-devtools/rpm/files/0001-rpmplugins.c-call-dlerror-prior-to-dlsym.patch
@@ -0,0 +1,29 @@
+From 6878a83f9bac015c64d83cee42530a20a264cc5a Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Tue, 7 Jan 2020 12:02:06 +0100
+Subject: [PATCH] rpmplugins.c: call dlerror() prior to dlsym()
+
+This is the recommended way in the manpage; if there is
+a lingering error from an unrelated dl*() call that was
+never obtained via dlerror(), it needs to be cleared
+prior to calling dlsym().
+
+Upstream-Status: Submitted [https://github.com/rpm-software-management/rpm/pull/998]
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+---
+ lib/rpmplugins.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/lib/rpmplugins.c b/lib/rpmplugins.c
+index 65e684e84..b950f85cf 100644
+--- a/lib/rpmplugins.c
++++ b/lib/rpmplugins.c
+@@ -68,6 +68,8 @@ static rpmPlugin rpmPluginNew(const char *name, const char *path,
+ 
+     /* make sure the plugin has the supported hooks flag */
+     hooks_name = rstrscat(NULL, name, "_hooks", NULL);
++    /* clear out any old errors that weren't fetched */
++    dlerror();
+     hooks = dlsym(handle, hooks_name);
+     if ((error = dlerror()) != NULL) {
+ 	rpmlog(RPMLOG_ERR, _("Failed to resolve symbol %s: %s\n"),
diff --git a/meta/recipes-devtools/rpm/rpm_4.15.1.bb b/meta/recipes-devtools/rpm/rpm_4.15.1.bb
index 0a6d412a1b8..b8764751939 100644
--- a/meta/recipes-devtools/rpm/rpm_4.15.1.bb
+++ b/meta/recipes-devtools/rpm/rpm_4.15.1.bb
@@ -38,6 +38,7 @@ SRC_URI = "git://github.com/rpm-software-management/rpm;branch=rpm-4.15.x \
            file://0001-rpm-rpmio.c-restrict-virtual-memory-usage-if-limit-s.patch \
            file://0016-rpmscript.c-change-logging-level-around-scriptlets-t.patch \
            file://0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch \
+           file://0001-rpmplugins.c-call-dlerror-prior-to-dlsym.patch \
            "
 
 PE = "1"
-- 
2.17.1



^ permalink raw reply	[flat|nested] 64+ messages in thread

* [PATCH 04/28] nss: update to 3.48
  2020-01-08 13:27 [PATCH 01/28] rpm: upgrade to 4.15.1 Alexander Kanavin
  2020-01-08 13:27 ` [PATCH 02/28] rpm: switch to openssl from nss Alexander Kanavin
  2020-01-08 13:27 ` [PATCH 03/28] rpm: fix with musl and latest elfutils Alexander Kanavin
@ 2020-01-08 13:27 ` Alexander Kanavin
  2020-01-08 13:27 ` [PATCH 05/28] python3: update to 3.8.1 Alexander Kanavin
                   ` (24 subsequent siblings)
  27 siblings, 0 replies; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-08 13:27 UTC (permalink / raw)
  To: openembedded-core

Drop a backport, and a patch that causes build errors with
the new version.

Add a patch to make ARM HW crypto optional; upstream for some
reason does not allow disabling it.

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
 ...ppc64-inline-assembler-for-clang-r-j.patch | 35 ------------------
 ...figure-option-to-disable-ARM-HW-cryp.patch | 35 ++++++++++++++++++
 .../nss/nss/nss-fix-nsinstall-build.patch     | 36 -------------------
 .../nss/{nss_3.45.bb => nss_3.48.bb}          | 12 ++++---
 4 files changed, 43 insertions(+), 75 deletions(-)
 delete mode 100644 meta/recipes-support/nss/nss/0001-Bug-1493916-Fix-ppc64-inline-assembler-for-clang-r-j.patch
 create mode 100644 meta/recipes-support/nss/nss/0001-freebl-add-a-configure-option-to-disable-ARM-HW-cryp.patch
 delete mode 100644 meta/recipes-support/nss/nss/nss-fix-nsinstall-build.patch
 rename meta/recipes-support/nss/{nss_3.45.bb => nss_3.48.bb} (94%)

diff --git a/meta/recipes-support/nss/nss/0001-Bug-1493916-Fix-ppc64-inline-assembler-for-clang-r-j.patch b/meta/recipes-support/nss/nss/0001-Bug-1493916-Fix-ppc64-inline-assembler-for-clang-r-j.patch
deleted file mode 100644
index 59e44e68418..00000000000
--- a/meta/recipes-support/nss/nss/0001-Bug-1493916-Fix-ppc64-inline-assembler-for-clang-r-j.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From 6b351dbb049b3b3ab6c0d51aa3c1c7fb3c9df80c Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Dan=20Hor=C3=A1k?= <dan@danny.cz>
-Date: Mon, 22 Jul 2019 11:07:41 -0700
-Subject: [PATCH] Bug 1493916 - Fix ppc64 inline assembler for clang r=jcj
- Seems clang's inline assembler doesn't want registers to be prefixed with
- "r", while gcc accepts both - r0 and 0 for GPR0.
-
-tested with clang 6.0 and gcc 8.1
-
---HG--
-extra : amend_source : 87e09bb59c78bdb25b9573b9f29511e10b9db6fa
-extra : histedit_source : 9b3fad70ac2851bf7de14d42c34db4a5fba41710
-
-Upstream-Status: Backport [https://github.com/nss-dev/nss/commit/671d89b6c4a6f41707bb044534751098e2e3f211]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- nss/lib/freebl/mpi/mpcpucache.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/nss/lib/freebl/mpi/mpcpucache.c b/nss/lib/freebl/mpi/mpcpucache.c
-index 336b4cc..2ad291f 100644
---- a/nss/lib/freebl/mpi/mpcpucache.c
-+++ b/nss/lib/freebl/mpi/mpcpucache.c
-@@ -727,7 +727,7 @@ static inline void
- dcbzl(char *array)
- {
-     register char *a asm("r2") = array;
--    __asm__ __volatile__("dcbzl %0,r0"
-+    __asm__ __volatile__("dcbzl %0,0"
-                          : "=r"(a)
-                          : "0"(a));
- }
--- 
-2.24.0
-
diff --git a/meta/recipes-support/nss/nss/0001-freebl-add-a-configure-option-to-disable-ARM-HW-cryp.patch b/meta/recipes-support/nss/nss/0001-freebl-add-a-configure-option-to-disable-ARM-HW-cryp.patch
new file mode 100644
index 00000000000..fe29d198820
--- /dev/null
+++ b/meta/recipes-support/nss/nss/0001-freebl-add-a-configure-option-to-disable-ARM-HW-cryp.patch
@@ -0,0 +1,35 @@
+From 5595e9651aca39af945931c73eb524a0f8bd130d Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Wed, 18 Dec 2019 12:29:50 +0100
+Subject: [PATCH] freebl: add a configure option to disable ARM HW crypto
+
+Not all current hardware supports it, particularly anything
+prior to armv8 does not.
+
+Upstream-Status: Pending
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+---
+ nss/lib/freebl/Makefile | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/nss/lib/freebl/Makefile b/nss/lib/freebl/Makefile
+index 06506f0..a8b015d 100644
+--- a/nss/lib/freebl/Makefile
++++ b/nss/lib/freebl/Makefile
+@@ -125,6 +125,8 @@ else
+         DEFINES += -DNSS_X86
+ endif
+ endif
++
++ifdef NSS_USE_ARM_HW_CRYPTO
+ ifeq ($(CPU_ARCH),aarch64)
+     DEFINES += -DUSE_HW_AES
+     EXTRA_SRCS += aes-armv8.c gcm-aarch64.c
+@@ -145,6 +147,7 @@ ifeq ($(CPU_ARCH),arm)
+         endif
+     endif
+ endif
++endif
+ 
+ ifeq ($(OS_TARGET),OSF1)
+     DEFINES += -DMP_ASSEMBLY_MULTIPLY -DMP_NO_MP_WORD
diff --git a/meta/recipes-support/nss/nss/nss-fix-nsinstall-build.patch b/meta/recipes-support/nss/nss/nss-fix-nsinstall-build.patch
deleted file mode 100644
index 181c69adb04..00000000000
--- a/meta/recipes-support/nss/nss/nss-fix-nsinstall-build.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-Fix nss multilib build on openSUSE 11.x 32bit
-
-While building lib64-nss on openSUSE 11.x 32bit, the nsinstall will
-fail with error:
-
-* nsinstall.c:1:0: sorry, unimplemented: 64-bit mode not compiled
-
-It caused by the '-m64' option which passed to host gcc.
-
-The nsinstall was built first while nss starting to build, it only runs
-on host to install built files, it doesn't need any cross-compling or
-multilib build options. Just clean the ARCHFLAG and LDFLAGS to fix this
-error.
-
-Upstream-Status: Pending
-
-Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com>
-===================================================
-Index: nss-3.24/nss/coreconf/nsinstall/Makefile
-===================================================================
---- nss-3.24.orig/nss/coreconf/nsinstall/Makefile
-+++ nss-3.24/nss/coreconf/nsinstall/Makefile
-@@ -18,6 +18,13 @@ INTERNAL_TOOLS  = 1
- 
- include $(DEPTH)/coreconf/config.mk
- 
-+# nsinstall is unfit for cross-compiling/multilib-build since it was
-+# always run on local host to install built files. This change intends
-+# to clean the '-m64' from ARCHFLAG and LDFLAGS.
-+ARCHFLAG =
-+LDFLAGS =
-+CFLAGS =
-+
- ifeq (,$(filter-out OS2 WIN%,$(OS_TARGET)))
- PROGRAM		=
- else
diff --git a/meta/recipes-support/nss/nss_3.45.bb b/meta/recipes-support/nss/nss_3.48.bb
similarity index 94%
rename from meta/recipes-support/nss/nss_3.45.bb
rename to meta/recipes-support/nss/nss_3.48.bb
index c8005a5b3a5..6ddccd7b902 100644
--- a/meta/recipes-support/nss/nss_3.45.bb
+++ b/meta/recipes-support/nss/nss_3.48.bb
@@ -25,17 +25,16 @@ SRC_URI = "http://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/${VERSIO
            file://0001-nss-fix-support-cross-compiling.patch \
            file://nss-no-rpath-for-cross-compiling.patch \
            file://nss-fix-incorrect-shebang-of-perl.patch \
-           file://nss-fix-nsinstall-build.patch \
            file://disable-Wvarargs-with-clang.patch \
            file://pqg.c-ULL_addend.patch \
-           file://0001-Bug-1493916-Fix-ppc64-inline-assembler-for-clang-r-j.patch \
            file://blank-cert9.db \
            file://blank-key4.db \
            file://system-pkcs11.txt \
+           file://0001-freebl-add-a-configure-option-to-disable-ARM-HW-cryp.patch \
            "
 
-SRC_URI[md5sum] = "f1752d7223ee9d910d551e57264bafa8"
-SRC_URI[sha256sum] = "112f05223d1fde902c170966bfc6f011b24a838be16969b110ecf2bb7bc24e8b"
+SRC_URI[md5sum] = "7855014d8653aec66106ad910487a9c9"
+SRC_URI[sha256sum] = "3f9c822a86a4e3e1bfe63e2ed0f922d8b7c2e0b7cafe36774b1c627970d0f8ac"
 
 UPSTREAM_CHECK_URI = "https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/NSS_Releases"
 UPSTREAM_CHECK_REGEX = "NSS_(?P<pver>.+)_release_notes"
@@ -47,6 +46,9 @@ TDS = "${S}/tentative-dist-staging"
 
 TARGET_CC_ARCH += "${LDFLAGS}"
 
+# Needed on Centos 7, as nss auto-detection fails there due to non-standard uname output
+CFLAGS_append_class-native = " -DLINUX -Dlinux"
+
 do_configure_prepend_libc-musl () {
     sed -i -e '/-DHAVE_SYS_CDEFS_H/d' ${S}/nss/lib/dbm/config/config.mk
 }
@@ -81,6 +83,8 @@ do_compile() {
     export NSS_USE_SYSTEM_SQLITE=1
     export NSS_ENABLE_ECC=1
 
+    ${@bb.utils.contains("TUNE_FEATURES", "crypto", "export NSS_USE_ARM_HW_CRYPTO=1", "", d)}
+
     export OS_RELEASE=3.4
     export OS_TARGET=Linux
     export OS_ARCH=Linux
-- 
2.17.1



^ permalink raw reply	[flat|nested] 64+ messages in thread

* [PATCH 05/28] python3: update to 3.8.1
  2020-01-08 13:27 [PATCH 01/28] rpm: upgrade to 4.15.1 Alexander Kanavin
                   ` (2 preceding siblings ...)
  2020-01-08 13:27 ` [PATCH 04/28] nss: update to 3.48 Alexander Kanavin
@ 2020-01-08 13:27 ` Alexander Kanavin
  2020-01-08 23:02   ` Richard Purdie
  2020-01-08 13:27 ` [PATCH 06/28] gstreamer1.0-python: add a patch to fix python 3.8 builds Alexander Kanavin
                   ` (23 subsequent siblings)
  27 siblings, 1 reply; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-08 13:27 UTC (permalink / raw)
  To: openembedded-core

Drop backports, rebase other patches.

One patch I wasn't able to rebase as upstream code changed too much:
0003-setup.py-pass-missing-libraries-to-Extension-for-mul.patch
Please determine if it is still needed, produce a new version,
and work with upstream to get it merged.

0001-main.c-if-OEPYTHON3HOME-is-set-use-instead-of-PYTHON.patch
is removed as the use case (allowing python 2 and 3 to coexist
in SDKs) is no longer relevant with Python 2.x reaching end of line
and upstream has refactored the code making a rebase difficult.
If needed, please re-add the patch to py2, rather than py3.

Python 3.8 no longer adds "m" to "3.8" in paths, so adjust the recipes
and classes accordingly.

The manifest for the 3.8.0 version is updated; particularly pkgutil
module is now packaged in -core (as other things in core need it);
this also necessitates allowing empty -pkgutil package to avoid
breakage across layers.

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
 meta/classes/python3-dir.bbclass              |   4 +-
 ...ib-termcap-to-linker-flags-to-avoid-.patch |  14 +-
 ...lib-as-location-for-site-packages-an.patch | 156 ++++++++------
 ...-detection-of-mips-architecture-for-.patch |  16 +-
 ...fig-append-STAGING_LIBDIR-python-sys.patch |   8 +-
 ...ON3HOME-is-set-use-instead-of-PYTHON.patch |  47 -----
 ...asename-to-replace-CC-for-checking-c.patch |  37 ++--
 ...runtime-test-to-get-float-byte-order.patch | 199 ------------------
 ...ssing-libraries-to-Extension-for-mul.patch |  80 -------
 ...report-missing-dependencies-for-disa.patch |  11 +-
 ...tutils-prefix-is-inside-staging-area.patch |  10 +-
 .../python3/avoid_warning_about_tkinter.patch |  33 ++-
 .../python/python3/python-config.patch        |  24 ++-
 .../python/python3/python3-manifest.json      | 106 +++++-----
 .../{python3_3.7.6.bb => python3_3.8.1.bb}    |  29 ++-
 15 files changed, 233 insertions(+), 541 deletions(-)
 delete mode 100644 meta/recipes-devtools/python/python3/0001-main.c-if-OEPYTHON3HOME-is-set-use-instead-of-PYTHON.patch
 delete mode 100644 meta/recipes-devtools/python/python3/0002-Don-t-do-runtime-test-to-get-float-byte-order.patch
 delete mode 100644 meta/recipes-devtools/python/python3/0003-setup.py-pass-missing-libraries-to-Extension-for-mul.patch
 rename meta/recipes-devtools/python/{python3_3.7.6.bb => python3_3.8.1.bb} (92%)

diff --git a/meta/classes/python3-dir.bbclass b/meta/classes/python3-dir.bbclass
index 7dd130bad99..036d7140d99 100644
--- a/meta/classes/python3-dir.bbclass
+++ b/meta/classes/python3-dir.bbclass
@@ -1,5 +1,5 @@
-PYTHON_BASEVERSION = "3.7"
-PYTHON_ABI = "m"
+PYTHON_BASEVERSION = "3.8"
+PYTHON_ABI = ""
 PYTHON_DIR = "python${PYTHON_BASEVERSION}"
 PYTHON_PN = "python3"
 PYTHON_SITEPACKAGES_DIR = "${libdir}/${PYTHON_DIR}/site-packages"
diff --git a/meta/recipes-devtools/python/python3/0001-Do-not-add-usr-lib-termcap-to-linker-flags-to-avoid-.patch b/meta/recipes-devtools/python/python3/0001-Do-not-add-usr-lib-termcap-to-linker-flags-to-avoid-.patch
index 09f279ba1d7..59592821d7f 100644
--- a/meta/recipes-devtools/python/python3/0001-Do-not-add-usr-lib-termcap-to-linker-flags-to-avoid-.patch
+++ b/meta/recipes-devtools/python/python3/0001-Do-not-add-usr-lib-termcap-to-linker-flags-to-avoid-.patch
@@ -1,4 +1,4 @@
-From 23294c6ba6896115828293fdb7e67b47b38ba675 Mon Sep 17 00:00:00 2001
+From 039c53dd5baddec3359a05be0bff46a3b32bbb84 Mon Sep 17 00:00:00 2001
 From: Alexander Kanavin <alex.kanavin@gmail.com>
 Date: Fri, 25 Jan 2019 19:04:13 +0100
 Subject: [PATCH] Do not add /usr/lib/termcap to linker flags to avoid host
@@ -12,14 +12,14 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
  1 file changed, 1 deletion(-)
 
 diff --git a/setup.py b/setup.py
-index b4357e3..fbec00d 100644
+index 20d7f35..ab18ff0 100644
 --- a/setup.py
 +++ b/setup.py
-@@ -856,7 +856,6 @@ class PyBuildExt(build_ext):
+@@ -957,7 +957,6 @@ class PyBuildExt(build_ext):
                                                       'termcap'):
                  readline_libs.append('termcap')
-             exts.append( Extension('readline', ['readline.c'],
--                                   library_dirs=['/usr/lib/termcap'],
-                                    extra_link_args=readline_extra_link_args,
-                                    libraries=readline_libs) )
+             self.add(Extension('readline', ['readline.c'],
+-                               library_dirs=['/usr/lib/termcap'],
+                                extra_link_args=readline_extra_link_args,
+                                libraries=readline_libs))
          else:
diff --git a/meta/recipes-devtools/python/python3/0001-Do-not-hardcode-lib-as-location-for-site-packages-an.patch b/meta/recipes-devtools/python/python3/0001-Do-not-hardcode-lib-as-location-for-site-packages-an.patch
index ea75262c4f6..112c979441f 100644
--- a/meta/recipes-devtools/python/python3/0001-Do-not-hardcode-lib-as-location-for-site-packages-an.patch
+++ b/meta/recipes-devtools/python/python3/0001-Do-not-hardcode-lib-as-location-for-site-packages-an.patch
@@ -1,4 +1,4 @@
-From 0fbdad1eaf541a8e92be81f39514cd249b3b0801 Mon Sep 17 00:00:00 2001
+From a078b6ff1492e848ad1055764fb9a414abaf3e12 Mon Sep 17 00:00:00 2001
 From: Alexander Kanavin <alex.kanavin@gmail.com>
 Date: Tue, 5 Feb 2019 15:52:02 +0100
 Subject: [PATCH] Do not hardcode "lib" as location for modules, site-packages
@@ -11,13 +11,13 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
  Include/pythonrun.h  |  2 ++
  Lib/site.py          |  4 ++--
  Makefile.pre.in      |  5 +++--
- Modules/getpath.c    | 18 ++++++++++++------
+ Modules/getpath.c    | 22 ++++++++++++++--------
  Python/getplatform.c | 10 ++++++++++
  Python/sysmodule.c   |  2 ++
- 6 files changed, 31 insertions(+), 10 deletions(-)
+ 6 files changed, 33 insertions(+), 12 deletions(-)
 
 diff --git a/Include/pythonrun.h b/Include/pythonrun.h
-index 6f0c6fc..0a17edd 100644
+index 46091e0..61b2e15 100644
 --- a/Include/pythonrun.h
 +++ b/Include/pythonrun.h
 @@ -7,6 +7,8 @@
@@ -28,12 +28,12 @@ index 6f0c6fc..0a17edd 100644
 +
  #ifndef Py_LIMITED_API
  PyAPI_FUNC(int) PyRun_SimpleStringFlags(const char *, PyCompilerFlags *);
- PyAPI_FUNC(int) PyRun_AnyFileFlags(FILE *, const char *, PyCompilerFlags *);
+ PyAPI_FUNC(int) PyRun_AnyFileExFlags(
 diff --git a/Lib/site.py b/Lib/site.py
-index ffd132b..b55f6d8 100644
+index a065ab0..1d720ef 100644
 --- a/Lib/site.py
 +++ b/Lib/site.py
-@@ -334,12 +334,12 @@ def getsitepackages(prefixes=None):
+@@ -335,12 +335,12 @@ def getsitepackages(prefixes=None):
          seen.add(prefix)
  
          if os.sep == '/':
@@ -49,10 +49,10 @@ index ffd132b..b55f6d8 100644
  
  def addsitepackages(known_paths, prefixes=None):
 diff --git a/Makefile.pre.in b/Makefile.pre.in
-index 6e81b2f..671a20e 100644
+index 65665df..be49140 100644
 --- a/Makefile.pre.in
 +++ b/Makefile.pre.in
-@@ -142,7 +142,7 @@ LIBDIR=		@libdir@
+@@ -143,7 +143,7 @@ LIBDIR=		@libdir@
  MANDIR=		@mandir@
  INCLUDEDIR=	@includedir@
  CONFINCLUDEDIR=	$(exec_prefix)/include
@@ -61,7 +61,7 @@ index 6e81b2f..671a20e 100644
  ABIFLAGS=	@ABIFLAGS@
  
  # Detailed destination directories
-@@ -768,6 +768,7 @@ Modules/getpath.o: $(srcdir)/Modules/getpath.c Makefile
+@@ -753,6 +753,7 @@ Modules/getpath.o: $(srcdir)/Modules/getpath.c Makefile
  		-DEXEC_PREFIX='"$(exec_prefix)"' \
  		-DVERSION='"$(VERSION)"' \
  		-DVPATH='"$(VPATH)"' \
@@ -69,7 +69,7 @@ index 6e81b2f..671a20e 100644
  		-o $@ $(srcdir)/Modules/getpath.c
  
  Programs/python.o: $(srcdir)/Programs/python.c
-@@ -856,7 +857,7 @@ regen-opcode:
+@@ -868,7 +869,7 @@ regen-symbol: $(srcdir)/Include/graminit.h
  Python/compile.o Python/symtable.o Python/ast_unparse.o Python/ast.o Python/future.o Parser/parsetok.o: $(srcdir)/Include/graminit.h $(srcdir)/Include/Python-ast.h
  
  Python/getplatform.o: $(srcdir)/Python/getplatform.c
@@ -79,72 +79,90 @@ index 6e81b2f..671a20e 100644
  Python/importdl.o: $(srcdir)/Python/importdl.c
  		$(CC) -c $(PY_CORE_CFLAGS) -I$(DLINCLDIR) -o $@ $(srcdir)/Python/importdl.c
 diff --git a/Modules/getpath.c b/Modules/getpath.c
-index e6a3e8e..0c62af6 100644
+index b727f66..c003e46 100644
 --- a/Modules/getpath.c
 +++ b/Modules/getpath.c
-@@ -123,6 +123,7 @@ typedef struct {
-     wchar_t *exec_prefix;              /* EXEC_PREFIX define */
+@@ -128,6 +128,7 @@ typedef struct {
+     wchar_t *exec_prefix;              /* EXEC_PREFIX macro */
  
      wchar_t *lib_python;               /* "lib/pythonX.Y" */
 +    wchar_t *multilib_python;               /* "lib[suffix]/pythonX.Y" */
-     wchar_t argv0_path[MAXPATHLEN+1];
-     wchar_t zip_path[MAXPATHLEN+1];    /* ".../lib/pythonXY.zip" */
  
-@@ -314,7 +315,7 @@ search_for_prefix(const _PyCoreConfig *core_config,
+     int prefix_found;         /* found platform independent libraries? */
+     int exec_prefix_found;    /* found the platform dependent libraries? */
+@@ -386,7 +387,7 @@ search_for_prefix(PyCalculatePath *calculate, _PyPathConfig *pathconfig,
          if (delim) {
              *delim = L'\0';
          }
--        joinpath(prefix, calculate->lib_python);
-+        joinpath(prefix, calculate->multilib_python);
-         joinpath(prefix, LANDMARK);
-         return 1;
-     }
-@@ -343,7 +344,7 @@ search_for_prefix(const _PyCoreConfig *core_config,
-     copy_absolute(prefix, calculate->argv0_path, MAXPATHLEN+1);
+-        status = joinpath(prefix, calculate->lib_python, prefix_len);
++        status = joinpath(prefix, calculate->multilib_python, prefix_len);
+         if (_PyStatus_EXCEPTION(status)) {
+             return status;
+         }
+@@ -444,7 +445,7 @@ search_for_prefix(PyCalculatePath *calculate, _PyPathConfig *pathconfig,
      do {
-         n = wcslen(prefix);
--        joinpath(prefix, calculate->lib_python);
-+        joinpath(prefix, calculate->multilib_python);
-         joinpath(prefix, LANDMARK);
-         if (ismodule(prefix)) {
-             return 1;
-@@ -355,7 +356,7 @@ search_for_prefix(const _PyCoreConfig *core_config,
-     /* Look at configure's PREFIX */
-     wcsncpy(prefix, calculate->prefix, MAXPATHLEN);
-     prefix[MAXPATHLEN] = L'\0';
--    joinpath(prefix, calculate->lib_python);
-+    joinpath(prefix, calculate->multilib_python);
-     joinpath(prefix, LANDMARK);
-     if (ismodule(prefix)) {
-         return 1;
-@@ -427,7 +428,7 @@ search_for_exec_prefix(const _PyCoreConfig *core_config,
-             wcsncpy(exec_prefix, core_config->home, MAXPATHLEN);
+         /* Path: <argv0_path or substring> / <lib_python> / LANDMARK */
+         size_t n = wcslen(prefix);
+-        status = joinpath(prefix, calculate->lib_python, prefix_len);
++        status = joinpath(prefix, calculate->multilib_python, prefix_len);
+         if (_PyStatus_EXCEPTION(status)) {
+             return status;
          }
-         exec_prefix[MAXPATHLEN] = L'\0';
--        joinpath(exec_prefix, calculate->lib_python);
-+        joinpath(exec_prefix, calculate->multilib_python);
-         joinpath(exec_prefix, L"lib-dynload");
-         return 1;
+@@ -467,7 +468,7 @@ search_for_prefix(PyCalculatePath *calculate, _PyPathConfig *pathconfig,
+     if (safe_wcscpy(prefix, calculate->prefix, prefix_len) < 0) {
+         return PATHLEN_ERR();
+     }
+-    status = joinpath(prefix, calculate->lib_python, prefix_len);
++    status = joinpath(prefix, calculate->multilib_python, prefix_len);
+     if (_PyStatus_EXCEPTION(status)) {
+         return status;
      }
-@@ -464,7 +465,7 @@ search_for_exec_prefix(const _PyCoreConfig *core_config,
-     copy_absolute(exec_prefix, calculate->argv0_path, MAXPATHLEN+1);
+@@ -510,7 +511,7 @@ calculate_prefix(PyCalculatePath *calculate, _PyPathConfig *pathconfig,
+         if (safe_wcscpy(prefix, calculate->prefix, prefix_len) < 0) {
+             return PATHLEN_ERR();
+         }
+-        status = joinpath(prefix, calculate->lib_python, prefix_len);
++        status = joinpath(prefix, calculate->multilib_python, prefix_len);
+         if (_PyStatus_EXCEPTION(status)) {
+             return status;
+         }
+@@ -635,7 +636,7 @@ search_for_exec_prefix(PyCalculatePath *calculate, _PyPathConfig *pathconfig,
+                 return PATHLEN_ERR();
+             }
+         }
+-        status = joinpath(exec_prefix, calculate->lib_python, exec_prefix_len);
++        status = joinpath(exec_prefix, calculate->multilib_python, exec_prefix_len);
+         if (_PyStatus_EXCEPTION(status)) {
+             return status;
+         }
+@@ -667,7 +668,7 @@ search_for_exec_prefix(PyCalculatePath *calculate, _PyPathConfig *pathconfig,
      do {
-         n = wcslen(exec_prefix);
--        joinpath(exec_prefix, calculate->lib_python);
-+        joinpath(exec_prefix, calculate->multilib_python);
-         joinpath(exec_prefix, L"lib-dynload");
-         if (isdir(exec_prefix)) {
-             return 1;
-@@ -476,7 +477,7 @@ search_for_exec_prefix(const _PyCoreConfig *core_config,
-     /* Look at configure's EXEC_PREFIX */
-     wcsncpy(exec_prefix, calculate->exec_prefix, MAXPATHLEN);
-     exec_prefix[MAXPATHLEN] = L'\0';
--    joinpath(exec_prefix, calculate->lib_python);
-+    joinpath(exec_prefix, calculate->multilib_python);
-     joinpath(exec_prefix, L"lib-dynload");
-     if (isdir(exec_prefix)) {
-         return 1;
-@@ -871,6 +872,10 @@ calculate_init(PyCalculatePath *calculate,
+         /* Path: <argv0_path or substring> / <lib_python> / "lib-dynload" */
+         size_t n = wcslen(exec_prefix);
+-        status = joinpath(exec_prefix, calculate->lib_python, exec_prefix_len);
++        status = joinpath(exec_prefix, calculate->multilib_python, exec_prefix_len);
+         if (_PyStatus_EXCEPTION(status)) {
+             return status;
+         }
+@@ -689,7 +690,7 @@ search_for_exec_prefix(PyCalculatePath *calculate, _PyPathConfig *pathconfig,
+     if (safe_wcscpy(exec_prefix, calculate->exec_prefix, exec_prefix_len) < 0) {
+         return PATHLEN_ERR();
+     }
+-    status = joinpath(exec_prefix, calculate->lib_python, exec_prefix_len);
++    status = joinpath(exec_prefix, calculate->multilib_python, exec_prefix_len);
+     if (_PyStatus_EXCEPTION(status)) {
+         return status;
+     }
+@@ -928,7 +929,7 @@ calculate_argv0_path(PyCalculatePath *calculate, const wchar_t *program_full_pat
+             return PATHLEN_ERR();
+         }
+         reduce(argv0_path);
+-        status = joinpath(argv0_path, calculate->lib_python, argv0_path_len);
++        status = joinpath(argv0_path, calculate->multilib_python, argv0_path_len);
+         if (_PyStatus_EXCEPTION(status)) {
+             PyMem_RawFree(wbuf);
+             return status;
+@@ -1201,6 +1202,10 @@ calculate_init(PyCalculatePath *calculate, const PyConfig *config)
      if (!calculate->lib_python) {
          return DECODE_LOCALE_ERR("EXEC_PREFIX define", len);
      }
@@ -152,10 +170,10 @@ index e6a3e8e..0c62af6 100644
 +    if (!calculate->multilib_python) {
 +        return DECODE_LOCALE_ERR("EXEC_PREFIX define", len);
 +    }
-     return _Py_INIT_OK();
- }
  
-@@ -882,6 +887,7 @@ calculate_free(PyCalculatePath *calculate)
+     calculate->warnings = config->pathconfig_warnings;
+     calculate->pythonpath_env = config->pythonpath_env;
+@@ -1216,6 +1221,7 @@ calculate_free(PyCalculatePath *calculate)
      PyMem_RawFree(calculate->prefix);
      PyMem_RawFree(calculate->exec_prefix);
      PyMem_RawFree(calculate->lib_python);
@@ -182,10 +200,10 @@ index 81a0f7a..d55396b 100644
 +	return LIB;
 +}
 diff --git a/Python/sysmodule.c b/Python/sysmodule.c
-index efe5b29..de77b17 100644
+index 5b0fb81..0dce754 100644
 --- a/Python/sysmodule.c
 +++ b/Python/sysmodule.c
-@@ -2319,6 +2319,8 @@ _PySys_BeginInit(PyObject **sysmod)
+@@ -2668,6 +2668,8 @@ _PySys_InitCore(_PyRuntimeState *runtime, PyInterpreterState *interp,
                          PyUnicode_FromString(Py_GetCopyright()));
      SET_SYS_FROM_STRING("platform",
                          PyUnicode_FromString(Py_GetPlatform()));
diff --git a/meta/recipes-devtools/python/python3/0001-bpo-36852-proper-detection-of-mips-architecture-for-.patch b/meta/recipes-devtools/python/python3/0001-bpo-36852-proper-detection-of-mips-architecture-for-.patch
index e7af88654da..fe0aa8aabed 100644
--- a/meta/recipes-devtools/python/python3/0001-bpo-36852-proper-detection-of-mips-architecture-for-.patch
+++ b/meta/recipes-devtools/python/python3/0001-bpo-36852-proper-detection-of-mips-architecture-for-.patch
@@ -1,4 +1,4 @@
-From 7535c39951b9d15dd64c4669092a8582ba555466 Mon Sep 17 00:00:00 2001
+From 2581ebe3cd9686089aed223651e1b8bf0b862b48 Mon Sep 17 00:00:00 2001
 From: Matthias Schoepfer <matthias.schoepfer@ithinx.io>
 Date: Fri, 31 May 2019 15:34:34 +0200
 Subject: [PATCH] bpo-36852: proper detection of mips architecture for soft
@@ -12,15 +12,16 @@ to do this in a more autoconf/autotools manner.
 
 Upstream-Status: Submitted [https://github.com/python/cpython/pull/13196]
 Signed-off-by: Matthias Schoepfer <matthias.schoepfer@ithinx.io>
+
 ---
- configure.ac | 169 ++++++---------------------------------------------
- 1 file changed, 17 insertions(+), 152 deletions(-)
+ configure.ac | 171 +++++----------------------------------------------
+ 1 file changed, 17 insertions(+), 154 deletions(-)
 
 diff --git a/configure.ac b/configure.ac
-index a7de901e08..a73e2de51b 100644
+index 0f85486..0ca7e24 100644
 --- a/configure.ac
 +++ b/configure.ac
-@@ -727,158 +727,23 @@ fi
+@@ -704,160 +704,23 @@ fi
  MULTIARCH=$($CC --print-multiarch 2>/dev/null)
  AC_SUBST(MULTIARCH)
  
@@ -163,6 +164,8 @@ index a7de901e08..a73e2de51b 100644
 -        i386-gnu
 -#elif defined(__APPLE__)
 -        darwin
+-#elif defined(__VXWORKS__)
+-        vxworks
 -#else
 -# error unknown platform triplet
 -#endif
@@ -196,6 +199,3 @@ index a7de901e08..a73e2de51b 100644
  
  if test x$PLATFORM_TRIPLET != x && test x$MULTIARCH != x; then
    if test x$PLATFORM_TRIPLET != x$MULTIARCH; then
--- 
-2.21.0
-
diff --git a/meta/recipes-devtools/python/python3/0001-distutils-sysconfig-append-STAGING_LIBDIR-python-sys.patch b/meta/recipes-devtools/python/python3/0001-distutils-sysconfig-append-STAGING_LIBDIR-python-sys.patch
index 1709011be8a..e23294b2acd 100644
--- a/meta/recipes-devtools/python/python3/0001-distutils-sysconfig-append-STAGING_LIBDIR-python-sys.patch
+++ b/meta/recipes-devtools/python/python3/0001-distutils-sysconfig-append-STAGING_LIBDIR-python-sys.patch
@@ -1,4 +1,4 @@
-From eff903c600f4c40f5753e95ab1557126fc6e0c9c Mon Sep 17 00:00:00 2001
+From edbc8e291e48ae7f7cc2c411617e8e59aa292da1 Mon Sep 17 00:00:00 2001
 From: Alexander Kanavin <alex.kanavin@gmail.com>
 Date: Thu, 31 Jan 2019 16:46:30 +0100
 Subject: [PATCH] distutils/sysconfig: append
@@ -15,10 +15,10 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
  2 files changed, 4 insertions(+)
 
 diff --git a/Lib/distutils/sysconfig.py b/Lib/distutils/sysconfig.py
-index 0a034ee..3dfd0a3 100644
+index b51629e..2df348c 100644
 --- a/Lib/distutils/sysconfig.py
 +++ b/Lib/distutils/sysconfig.py
-@@ -439,6 +439,8 @@ def _init_posix():
+@@ -438,6 +438,8 @@ def _init_posix():
          platform=sys.platform,
          multiarch=getattr(sys.implementation, '_multiarch', ''),
      ))
@@ -28,7 +28,7 @@ index 0a034ee..3dfd0a3 100644
      build_time_vars = _temp.build_time_vars
      global _config_vars
 diff --git a/Lib/sysconfig.py b/Lib/sysconfig.py
-index 87fa5e6..756a41c 100644
+index b2d790b..405273c 100644
 --- a/Lib/sysconfig.py
 +++ b/Lib/sysconfig.py
 @@ -419,6 +419,8 @@ def _init_posix(vars):
diff --git a/meta/recipes-devtools/python/python3/0001-main.c-if-OEPYTHON3HOME-is-set-use-instead-of-PYTHON.patch b/meta/recipes-devtools/python/python3/0001-main.c-if-OEPYTHON3HOME-is-set-use-instead-of-PYTHON.patch
deleted file mode 100644
index a146c747f83..00000000000
--- a/meta/recipes-devtools/python/python3/0001-main.c-if-OEPYTHON3HOME-is-set-use-instead-of-PYTHON.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From 5ce3ac59531828ff682646fbba59b2126b28a8aa Mon Sep 17 00:00:00 2001
-From: Jaewon Lee <jaewon.lee@xilinx.com>
-Date: Thu, 25 Apr 2019 15:34:26 -0700
-Subject: [PATCH] main.c: if OEPYTHON3HOME is set use instead of PYTHONHOME
-
-There is one variable PYTHONHOME to determine where libraries are coming
-from for both python2 and python3. This becomes an issue if only one has
-libraries in the specified PYTHONHOME path, but they are using the same
-PYTHONHOME. Creating another variable OEPYTHON3HOME to allow for a way
-to set a different path for python3
-
-Signed-off-by: Jaewon Lee <jaewon.lee@xilinx.com>
-
-Upstream-Status: Inappropriate [OE specific configuration]
-
----
- Modules/main.c | 17 +++++++++++++----
- 1 file changed, 13 insertions(+), 4 deletions(-)
-
-diff --git a/Modules/main.c b/Modules/main.c
-index acc59c6..407085a 100644
---- a/Modules/main.c
-+++ b/Modules/main.c
-@@ -1834,10 +1834,19 @@ config_init_home(_PyCoreConfig *config)
-         }
-         return _Py_INIT_OK();
-     }
--
--    int res = config_get_env_var_dup(&home, L"PYTHONHOME", "PYTHONHOME");
--    if (res < 0) {
--        return DECODE_LOCALE_ERR("PYTHONHOME", res);
-+    int res;
-+    const char *oepython3home = config_get_env_var("OEPYTHON3HOME");
-+    if (oepython3home) {
-+        res = config_get_env_var_dup(&home, L"OEPYTHON3HOME", "OEPYTHON3HOME");
-+        if (res < 0) {
-+            return DECODE_LOCALE_ERR("OEPYTHON3HOME", res);
-+        }
-+    }
-+    else {
-+        res = config_get_env_var_dup(&home, L"PYTHONHOME", "PYTHONHOME");
-+        if (res < 0) {
-+            return DECODE_LOCALE_ERR("PYTHONHOME", res);
-+        }
-     }
-     config->home = home;
-     return _Py_INIT_OK();
diff --git a/meta/recipes-devtools/python/python3/0001-python3-use-cc_basename-to-replace-CC-for-checking-c.patch b/meta/recipes-devtools/python/python3/0001-python3-use-cc_basename-to-replace-CC-for-checking-c.patch
index a0ea897f4e8..fb10ca94b31 100644
--- a/meta/recipes-devtools/python/python3/0001-python3-use-cc_basename-to-replace-CC-for-checking-c.patch
+++ b/meta/recipes-devtools/python/python3/0001-python3-use-cc_basename-to-replace-CC-for-checking-c.patch
@@ -1,4 +1,4 @@
-From 2645317fef09afe31b01bb2c1d4fe5b9afdbb11a Mon Sep 17 00:00:00 2001
+From 994783da5c21cab81b6589ed2d4275e665a946f9 Mon Sep 17 00:00:00 2001
 From: Changqing Li <changqing.li@windriver.com>
 Date: Mon, 22 Oct 2018 15:19:51 +0800
 Subject: [PATCH] python3: use cc_basename to replace CC for checking compiler
@@ -21,12 +21,13 @@ Signed-off-by: Li Zhou <li.zhou@windriver.com>
 patch originally from Li Zhou, I just rework it to new version
 
 Signed-off-by: Changqing Li <changqing.li@windriver.com>
+
 ---
  configure.ac | 19 ++++++++++---------
  1 file changed, 10 insertions(+), 9 deletions(-)
 
 diff --git a/configure.ac b/configure.ac
-index a7de901..4a3681f 100644
+index a189d42..0f85486 100644
 --- a/configure.ac
 +++ b/configure.ac
 @@ -54,6 +54,7 @@ AC_CONFIG_HEADER(pyconfig.h)
@@ -37,7 +38,7 @@ index a7de901..4a3681f 100644
  
  # pybuilddir.txt will be created by --generate-posix-vars in the Makefile
  rm -f pybuilddir.txt
-@@ -695,7 +696,7 @@ AC_MSG_RESULT($with_cxx_main)
+@@ -671,7 +672,7 @@ AC_MSG_RESULT($with_cxx_main)
  preset_cxx="$CXX"
  if test -z "$CXX"
  then
@@ -46,7 +47,7 @@ index a7de901..4a3681f 100644
          gcc)    AC_PATH_TOOL(CXX, [g++], [g++], [notfound]) ;;
          cc)     AC_PATH_TOOL(CXX, [c++], [c++], [notfound]) ;;
          clang|*/clang)     AC_PATH_TOOL(CXX, [clang++], [clang++], [notfound]) ;;
-@@ -979,7 +980,7 @@ rmdir CaseSensitiveTestDir
+@@ -957,7 +958,7 @@ rmdir CaseSensitiveTestDir
  
  case $ac_sys_system in
  hp*|HP*)
@@ -55,7 +56,7 @@ index a7de901..4a3681f 100644
      cc|*/cc) CC="$CC -Ae";;
      esac;;
  esac
-@@ -1336,7 +1337,7 @@ else
+@@ -1335,7 +1336,7 @@ else
  fi],
  [AC_MSG_RESULT(no)])
  if test "$Py_LTO" = 'true' ; then
@@ -64,7 +65,7 @@ index a7de901..4a3681f 100644
      *clang*)
        AC_SUBST(LLVM_AR)
        AC_PATH_TOOL(LLVM_AR, llvm-ar, '', ${llvm_path})
-@@ -1426,7 +1427,7 @@ then
+@@ -1425,7 +1426,7 @@ then
    fi
  fi
  LLVM_PROF_ERR=no
@@ -73,16 +74,16 @@ index a7de901..4a3681f 100644
    *clang*)
      # Any changes made here should be reflected in the GCC+Darwin case below
      PGO_PROF_GEN_FLAG="-fprofile-instr-generate"
-@@ -1500,7 +1501,7 @@ then
-            WRAP="-fwrapv"
-         fi
+@@ -1486,7 +1487,7 @@ esac
+ # compiler and platform.  BASECFLAGS tweaks need to be made even if the
+ # user set OPT.
  
--        case $CC in
-+        case $cc_basename in
-             *clang*)
-                 cc_is_clang=1
-                 ;;
-@@ -1623,7 +1624,7 @@ yes)
+-case $CC in
++case $cc_basename in
+     *clang*)
+         cc_is_clang=1
+         ;;
+@@ -1622,7 +1623,7 @@ yes)
  
      # ICC doesn't recognize the option, but only emits a warning
      ## XXX does it emit an unused result warning and can it be disabled?
@@ -91,7 +92,7 @@ index a7de901..4a3681f 100644
      *icc*)
      ac_cv_disable_unused_result_warning=no
      ;;
-@@ -1965,7 +1966,7 @@ yes)
+@@ -1943,7 +1944,7 @@ yes)
  esac
  
  # ICC needs -fp-model strict or floats behave badly
@@ -100,7 +101,7 @@ index a7de901..4a3681f 100644
  *icc*)
      CFLAGS_NODIST="$CFLAGS_NODIST -fp-model strict"
      ;;
-@@ -2727,7 +2728,7 @@ then
+@@ -2711,7 +2712,7 @@ then
  		then
  			LINKFORSHARED="-Wl,--export-dynamic"
  		fi;;
@@ -109,7 +110,7 @@ index a7de901..4a3681f 100644
  		  *gcc*)
  		    if $CC -Xlinker --help 2>&1 | grep export-dynamic >/dev/null
  		    then
-@@ -5429,7 +5430,7 @@ if test "$have_gcc_asm_for_x87" = yes; then
+@@ -5362,7 +5363,7 @@ if test "$have_gcc_asm_for_x87" = yes; then
      # Some versions of gcc miscompile inline asm:
      # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46491
      # http://gcc.gnu.org/ml/gcc/2010-11/msg00366.html
diff --git a/meta/recipes-devtools/python/python3/0002-Don-t-do-runtime-test-to-get-float-byte-order.patch b/meta/recipes-devtools/python/python3/0002-Don-t-do-runtime-test-to-get-float-byte-order.patch
deleted file mode 100644
index 58ab709028e..00000000000
--- a/meta/recipes-devtools/python/python3/0002-Don-t-do-runtime-test-to-get-float-byte-order.patch
+++ /dev/null
@@ -1,199 +0,0 @@
-From fa96a7fd19e17b9c6b4dd01c3c3774fb382dddc6 Mon Sep 17 00:00:00 2001
-From: Ross Burton <ross.burton@intel.com>
-Date: Wed, 5 Sep 2018 11:45:52 +0100
-Subject: [PATCH] Don't do runtime test to get float byte order
-
-Python uses AC_RUN_IFELSE to determine the byte order for floats and doubles,
-and falls back onto "I don't know" if it can't run code.  This results in
-crippled floating point numbers in Python, and the regression tests fail.
-
-Instead of running code, take a macro from autoconf-archive which compiles C
-with a special double in which has an ASCII representation, and then greps the
-binary to identify the format.
-
-Upstream-Status: Backport [2a9c3805ddedf282881ef7811a561c70b74f80b1]
-Signed-off-by: Ross Burton <ross.burton@intel.com>
----
- configure.ac                     | 72 +++------------------------
- m4/ax_c_float_words_bigendian.m4 | 83 ++++++++++++++++++++++++++++++++
- 2 files changed, 90 insertions(+), 65 deletions(-)
- create mode 100644 m4/ax_c_float_words_bigendian.m4
-
-diff --git a/configure.ac b/configure.ac
-index 4a3681f..4ab19a6 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -4328,77 +4328,19 @@ fi
- # * Check for various properties of floating point *
- # **************************************************
- 
--AC_MSG_CHECKING(whether C doubles are little-endian IEEE 754 binary64)
--AC_CACHE_VAL(ac_cv_little_endian_double, [
--AC_RUN_IFELSE([AC_LANG_SOURCE([[
--#include <string.h>
--int main() {
--    double x = 9006104071832581.0;
--    if (memcmp(&x, "\x05\x04\x03\x02\x01\xff\x3f\x43", 8) == 0)
--        return 0;
--    else
--        return 1;
--}
--]])],
--[ac_cv_little_endian_double=yes],
--[ac_cv_little_endian_double=no],
--[ac_cv_little_endian_double=no])])
--AC_MSG_RESULT($ac_cv_little_endian_double)
--if test "$ac_cv_little_endian_double" = yes
--then
--  AC_DEFINE(DOUBLE_IS_LITTLE_ENDIAN_IEEE754, 1,
--  [Define if C doubles are 64-bit IEEE 754 binary format, stored
--   with the least significant byte first])
--fi
--
--AC_MSG_CHECKING(whether C doubles are big-endian IEEE 754 binary64)
--AC_CACHE_VAL(ac_cv_big_endian_double, [
--AC_RUN_IFELSE([AC_LANG_SOURCE([[
--#include <string.h>
--int main() {
--    double x = 9006104071832581.0;
--    if (memcmp(&x, "\x43\x3f\xff\x01\x02\x03\x04\x05", 8) == 0)
--        return 0;
--    else
--        return 1;
--}
--]])],
--[ac_cv_big_endian_double=yes],
--[ac_cv_big_endian_double=no],
--[ac_cv_big_endian_double=no])])
--AC_MSG_RESULT($ac_cv_big_endian_double)
--if test "$ac_cv_big_endian_double" = yes
-+AX_C_FLOAT_WORDS_BIGENDIAN
-+if test "$ax_cv_c_float_words_bigendian" = "yes"
- then
-   AC_DEFINE(DOUBLE_IS_BIG_ENDIAN_IEEE754, 1,
-   [Define if C doubles are 64-bit IEEE 754 binary format, stored
-    with the most significant byte first])
--fi
--
--# Some ARM platforms use a mixed-endian representation for doubles.
--# While Python doesn't currently have full support for these platforms
--# (see e.g., issue 1762561), we can at least make sure that float <-> string
--# conversions work.
--AC_MSG_CHECKING(whether C doubles are ARM mixed-endian IEEE 754 binary64)
--AC_CACHE_VAL(ac_cv_mixed_endian_double, [
--AC_RUN_IFELSE([AC_LANG_SOURCE([[
--#include <string.h>
--int main() {
--    double x = 9006104071832581.0;
--    if (memcmp(&x, "\x01\xff\x3f\x43\x05\x04\x03\x02", 8) == 0)
--        return 0;
--    else
--        return 1;
--}
--]])],
--[ac_cv_mixed_endian_double=yes],
--[ac_cv_mixed_endian_double=no],
--[ac_cv_mixed_endian_double=no])])
--AC_MSG_RESULT($ac_cv_mixed_endian_double)
--if test "$ac_cv_mixed_endian_double" = yes
-+elif test "$ax_cv_c_float_words_bigendian" = "no"
- then
--  AC_DEFINE(DOUBLE_IS_ARM_MIXED_ENDIAN_IEEE754, 1,
-+  AC_DEFINE(DOUBLE_IS_LITTLE_ENDIAN_IEEE754, 1,
-   [Define if C doubles are 64-bit IEEE 754 binary format, stored
--   in ARM mixed-endian order (byte order 45670123)])
-+   with the least significant byte first])
-+else
-+  AC_MSG_ERROR([Cannot identify floating point byte order])
- fi
- 
- # The short float repr introduced in Python 3.1 requires the
-diff --git a/m4/ax_c_float_words_bigendian.m4 b/m4/ax_c_float_words_bigendian.m4
-new file mode 100644
-index 0000000..216b90d
---- /dev/null
-+++ b/m4/ax_c_float_words_bigendian.m4
-@@ -0,0 +1,83 @@
-+# ===============================================================================
-+#  https://www.gnu.org/software/autoconf-archive/ax_c_float_words_bigendian.html
-+# ===============================================================================
-+#
-+# SYNOPSIS
-+#
-+#   AX_C_FLOAT_WORDS_BIGENDIAN([ACTION-IF-TRUE], [ACTION-IF-FALSE], [ACTION-IF-UNKNOWN])
-+#
-+# DESCRIPTION
-+#
-+#   Checks the ordering of words within a multi-word float. This check is
-+#   necessary because on some systems (e.g. certain ARM systems), the float
-+#   word ordering can be different from the byte ordering. In a multi-word
-+#   float context, "big-endian" implies that the word containing the sign
-+#   bit is found in the memory location with the lowest address. This
-+#   implementation was inspired by the AC_C_BIGENDIAN macro in autoconf.
-+#
-+#   The endianness is detected by first compiling C code that contains a
-+#   special double float value, then grepping the resulting object file for
-+#   certain strings of ASCII values. The double is specially crafted to have
-+#   a binary representation that corresponds with a simple string. In this
-+#   implementation, the string "noonsees" was selected because the
-+#   individual word values ("noon" and "sees") are palindromes, thus making
-+#   this test byte-order agnostic. If grep finds the string "noonsees" in
-+#   the object file, the target platform stores float words in big-endian
-+#   order. If grep finds "seesnoon", float words are in little-endian order.
-+#   If neither value is found, the user is instructed to specify the
-+#   ordering.
-+#
-+# LICENSE
-+#
-+#   Copyright (c) 2008 Daniel Amelang <dan@amelang.net>
-+#
-+#   Copying and distribution of this file, with or without modification, are
-+#   permitted in any medium without royalty provided the copyright notice
-+#   and this notice are preserved. This file is offered as-is, without any
-+#   warranty.
-+
-+#serial 11
-+
-+AC_DEFUN([AX_C_FLOAT_WORDS_BIGENDIAN],
-+  [AC_CACHE_CHECK(whether float word ordering is bigendian,
-+                  ax_cv_c_float_words_bigendian, [
-+
-+ax_cv_c_float_words_bigendian=unknown
-+AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
-+
-+double d = 90904234967036810337470478905505011476211692735615632014797120844053488865816695273723469097858056257517020191247487429516932130503560650002327564517570778480236724525140520121371739201496540132640109977779420565776568942592.0;
-+
-+]])], [
-+
-+if grep noonsees conftest.$ac_objext >/dev/null ; then
-+  ax_cv_c_float_words_bigendian=yes
-+fi
-+if grep seesnoon conftest.$ac_objext >/dev/null ; then
-+  if test "$ax_cv_c_float_words_bigendian" = unknown; then
-+    ax_cv_c_float_words_bigendian=no
-+  else
-+    ax_cv_c_float_words_bigendian=unknown
-+  fi
-+fi
-+
-+])])
-+
-+case $ax_cv_c_float_words_bigendian in
-+  yes)
-+    m4_default([$1],
-+      [AC_DEFINE([FLOAT_WORDS_BIGENDIAN], 1,
-+                 [Define to 1 if your system stores words within floats
-+                  with the most significant word first])]) ;;
-+  no)
-+    $2 ;;
-+  *)
-+    m4_default([$3],
-+      [AC_MSG_ERROR([
-+
-+Unknown float word ordering. You need to manually preset
-+ax_cv_c_float_words_bigendian=no (or yes) according to your system.
-+
-+    ])]) ;;
-+esac
-+
-+])# AX_C_FLOAT_WORDS_BIGENDIAN
diff --git a/meta/recipes-devtools/python/python3/0003-setup.py-pass-missing-libraries-to-Extension-for-mul.patch b/meta/recipes-devtools/python/python3/0003-setup.py-pass-missing-libraries-to-Extension-for-mul.patch
deleted file mode 100644
index b9d5bc9c516..00000000000
--- a/meta/recipes-devtools/python/python3/0003-setup.py-pass-missing-libraries-to-Extension-for-mul.patch
+++ /dev/null
@@ -1,80 +0,0 @@
-From b881a79adcd4ae5ac8fe4f49d0fc77c47f777919 Mon Sep 17 00:00:00 2001
-From: Hongxu Jia <hongxu.jia@windriver.com>
-Date: Fri, 4 Aug 2017 11:16:14 +0800
-Subject: [PATCH] setup.py: pass missing libraries to Extension for
- multiprocessing module
-
-In the following commit:
-...
-commit e711cafab13efc9c1fe6c5cd75826401445eb585
-Author: Benjamin Peterson <benjamin@python.org>
-Date:   Wed Jun 11 16:44:04 2008 +0000
-
-    Merged revisions 64104,64117 via svnmerge from
-    svn+ssh://pythondev@svn.python.org/python/trunk
-...
-(see diff in setup.py)
-It assigned libraries for multiprocessing module according
-the host_platform, but not pass it to Extension.
-
-In glibc, the following commit caused two definition of
-sem_getvalue are different.
-https://sourceware.org/git/?p=glibc.git;a=commit;h=042e1521c794a945edc43b5bfa7e69ad70420524
-(see diff in nptl/sem_getvalue.c for detail)
-`__new_sem_getvalue' is the latest sem_getvalue@@GLIBC_2.1
-and `__old_sem_getvalue' is to compat the old version
-sem_getvalue@GLIBC_2.0.
-
-To build python for embedded Linux systems:
-http://www.yoctoproject.org/docs/2.3.1/yocto-project-qs/yocto-project-qs.html
-If not explicitly link to library pthread (-lpthread), it will
-load glibc's sem_getvalue randomly at runtime.
-
-Such as build python on linux x86_64 host and run the python
-on linux x86_32 target. If not link library pthread, it caused
-multiprocessing bounded semaphore could not work correctly.
-...
->>> import multiprocessing
->>> pool_sema = multiprocessing.BoundedSemaphore(value=1)
->>> pool_sema.acquire()
-True
->>> pool_sema.release()
-Traceback (most recent call last):
-  File "<stdin>", line 1, in <module>
-ValueError: semaphore or lock released too many times
-...
-
-And the semaphore issue also caused multiprocessing.Queue().put() hung.
-
-Upstream-Status: Submitted [https://github.com/python/cpython/pull/2999]
-
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
----
- setup.py | 7 +++++--
- 1 file changed, 5 insertions(+), 2 deletions(-)
-
-diff --git a/setup.py b/setup.py
-index b7a36a6..658ead3 100644
---- a/setup.py
-+++ b/setup.py
-@@ -1584,8 +1584,10 @@ class PyBuildExt(build_ext):
-         elif host_platform.startswith('netbsd'):
-             macros = dict()
-             libraries = []
--
--        else:                                   # Linux and other unices
-+        elif host_platform.startswith(('linux')):
-+            macros = dict()
-+            libraries = ['pthread']
-+        else:                                   # Other unices
-             macros = dict()
-             libraries = ['rt']
- 
-@@ -1603,6 +1605,7 @@ class PyBuildExt(build_ext):
- 
-         exts.append ( Extension('_multiprocessing', multiprocessing_srcs,
-                                 define_macros=list(macros.items()),
-+                                libraries=libraries,
-                                 include_dirs=["Modules/_multiprocessing"]))
-         # End multiprocessing
- 
diff --git a/meta/recipes-devtools/python/python3/0017-setup.py-do-not-report-missing-dependencies-for-disa.patch b/meta/recipes-devtools/python/python3/0017-setup.py-do-not-report-missing-dependencies-for-disa.patch
index c15295c034c..4bd98f62fd6 100644
--- a/meta/recipes-devtools/python/python3/0017-setup.py-do-not-report-missing-dependencies-for-disa.patch
+++ b/meta/recipes-devtools/python/python3/0017-setup.py-do-not-report-missing-dependencies-for-disa.patch
@@ -1,4 +1,4 @@
-From e3b59cb9658e1d3efa3535840939a0fa92a70a5a Mon Sep 17 00:00:00 2001
+From a2dd127b4163aff6cc35af0d0251321964232ad4 Mon Sep 17 00:00:00 2001
 From: Alexander Kanavin <alex.kanavin@gmail.com>
 Date: Mon, 7 Oct 2019 13:22:14 +0200
 Subject: [PATCH] setup.py: do not report missing dependencies for disabled
@@ -10,22 +10,23 @@ build completeness checker which relies on the report.
 
 Upstream-Status: Inappropriate [oe-core specific]
 Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+
 ---
  setup.py | 4 ++++
  1 file changed, 4 insertions(+)
 
 diff --git a/setup.py b/setup.py
-index 4b53668..0097643 100644
+index 7691258..ec3f2a4 100644
 --- a/setup.py
 +++ b/setup.py
-@@ -365,6 +365,10 @@ class PyBuildExt(build_ext):
+@@ -408,6 +408,10 @@ class PyBuildExt(build_ext):
                  print("%-*s   %-*s   %-*s" % (longest, e, longest, f,
                                                longest, g))
  
 +        # There is no need to report missing module dependencies,
 +        # if the modules have been disabled in the first place.
-+        missing = list(set(missing) - set(sysconf_dis))
++        self.missing = list(set(self.missing) - set(sysconf_dis))
 +
-         if missing:
+         if self.missing:
              print()
              print("Python build finished successfully!")
diff --git a/meta/recipes-devtools/python/python3/12-distutils-prefix-is-inside-staging-area.patch b/meta/recipes-devtools/python/python3/12-distutils-prefix-is-inside-staging-area.patch
index d49604ba4d9..c3d49a759c4 100644
--- a/meta/recipes-devtools/python/python3/12-distutils-prefix-is-inside-staging-area.patch
+++ b/meta/recipes-devtools/python/python3/12-distutils-prefix-is-inside-staging-area.patch
@@ -1,4 +1,4 @@
-From a274ba778838824efcacaba57c415b7262f779ec Mon Sep 17 00:00:00 2001
+From 54660009bca4fab5065a7152f4f8f8d81b79a774 Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Tue, 14 May 2013 15:00:26 -0700
 Subject: [PATCH] python3: Add target and native recipes
@@ -18,10 +18,10 @@ Upstream-Status: Inappropriate [embedded specific]
  1 file changed, 11 insertions(+), 3 deletions(-)
 
 diff --git a/Lib/distutils/sysconfig.py b/Lib/distutils/sysconfig.py
-index 3dfd0a3..6c6b09a 100644
+index 2df348c..4f8db84 100644
 --- a/Lib/distutils/sysconfig.py
 +++ b/Lib/distutils/sysconfig.py
-@@ -97,7 +97,9 @@ def get_python_inc(plat_specific=0, prefix=None):
+@@ -96,7 +96,9 @@ def get_python_inc(plat_specific=0, prefix=None):
      If 'prefix' is supplied, use it instead of sys.base_prefix or
      sys.base_exec_prefix -- i.e., ignore 'plat_specific'.
      """
@@ -32,7 +32,7 @@ index 3dfd0a3..6c6b09a 100644
          prefix = plat_specific and BASE_EXEC_PREFIX or BASE_PREFIX
      if os.name == "posix":
          if python_build:
-@@ -140,7 +142,13 @@ def get_python_lib(plat_specific=0, standard_lib=0, prefix=None):
+@@ -139,7 +141,13 @@ def get_python_lib(plat_specific=0, standard_lib=0, prefix=None):
      If 'prefix' is supplied, use it instead of sys.base_prefix or
      sys.base_exec_prefix -- i.e., ignore 'plat_specific'.
      """
@@ -47,7 +47,7 @@ index 3dfd0a3..6c6b09a 100644
          if standard_lib:
              prefix = plat_specific and BASE_EXEC_PREFIX or BASE_PREFIX
          else:
-@@ -148,7 +156,7 @@ def get_python_lib(plat_specific=0, standard_lib=0, prefix=None):
+@@ -147,7 +155,7 @@ def get_python_lib(plat_specific=0, standard_lib=0, prefix=None):
  
      if os.name == "posix":
          libpython = os.path.join(prefix,
diff --git a/meta/recipes-devtools/python/python3/avoid_warning_about_tkinter.patch b/meta/recipes-devtools/python/python3/avoid_warning_about_tkinter.patch
index 24e67b4ca14..184540e794c 100644
--- a/meta/recipes-devtools/python/python3/avoid_warning_about_tkinter.patch
+++ b/meta/recipes-devtools/python/python3/avoid_warning_about_tkinter.patch
@@ -1,4 +1,4 @@
-From fead48c8b501a8d7c3db21df2e599f90f38f11d3 Mon Sep 17 00:00:00 2001
+From ba7202700578d435b07cfdfb7b57e83185752800 Mon Sep 17 00:00:00 2001
 From: Andrei Gherzan <andrei@gherzan.ro>
 Date: Mon, 28 Jan 2019 15:57:54 +0000
 Subject: [PATCH] _tkinter module needs tk module along with tcl. tk is not yet
@@ -11,26 +11,21 @@ Also simply disable the tk module since its not in DEPENDS.
 Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
 
 ---
- setup.py | 8 +++++---
- 1 file changed, 5 insertions(+), 3 deletions(-)
+ setup.py | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/setup.py b/setup.py
-index fbec00d..b7a36a6 100644
+index ab18ff0..7691258 100644
 --- a/setup.py
 +++ b/setup.py
-@@ -1623,10 +1623,12 @@ class PyBuildExt(build_ext):
-         self.extensions.extend(exts)
+@@ -1706,8 +1706,8 @@ class PyBuildExt(build_ext):
+         self.detect_decimal()
+         self.detect_ctypes()
+         self.detect_multiprocessing()
+-        if not self.detect_tkinter():
+-            self.missing.append('_tkinter')
++#        if not self.detect_tkinter():
++#            self.missing.append('_tkinter')
+         self.detect_uuid()
  
-         # Call the method for detecting whether _tkinter can be compiled
--        self.detect_tkinter(inc_dirs, lib_dirs)
-+        # self.detect_tkinter(inc_dirs, lib_dirs)
- 
--        if '_tkinter' not in [e.name for e in self.extensions]:
--            missing.append('_tkinter')
-+        # tkinter module will not be avalaible as yocto
-+        # doesn't have tk integrated (yet)
-+        #if '_tkinter' not in [e.name for e in self.extensions]:
-+        #    missing.append('_tkinter')
- 
-         # Build the _uuid module if possible
-         uuid_incs = find_file("uuid.h", inc_dirs, ["/usr/include/uuid"])
+ ##         # Uncomment these lines if you want to play with xxmodule.c
diff --git a/meta/recipes-devtools/python/python3/python-config.patch b/meta/recipes-devtools/python/python3/python-config.patch
index f23b8b7df06..c8a8f3d4aa3 100644
--- a/meta/recipes-devtools/python/python3/python-config.patch
+++ b/meta/recipes-devtools/python/python3/python-config.patch
@@ -1,4 +1,7 @@
-python-config: Revert to using distutils.sysconfig
+From 07df0ae0d70cba6d1847fe1c24a71063930bec60 Mon Sep 17 00:00:00 2001
+From: Tyler Hall <tylerwhall@gmail.com>
+Date: Sun, 4 May 2014 20:06:43 -0400
+Subject: [PATCH] python-config: Revert to using distutils.sysconfig
 
 The newer sysconfig module shares some code with distutils.sysconfig, but the same modifications as in
 
@@ -12,11 +15,16 @@ Upstream-Status: Inappropriate [Embedded Specific]
 
 Signed-off-by: Tyler Hall <tylerwhall@gmail.com>
 :
-Index: Python-3.3.3/Misc/python-config.in
-===================================================================
---- Python-3.3.3.orig/Misc/python-config.in
-+++ Python-3.3.3/Misc/python-config.in
-@@ -4,7 +4,7 @@
+
+---
+ Misc/python-config.in | 10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/Misc/python-config.in b/Misc/python-config.in
+index 727c4a8..c702829 100644
+--- a/Misc/python-config.in
++++ b/Misc/python-config.in
+@@ -6,7 +6,7 @@
  import getopt
  import os
  import sys
@@ -24,8 +32,8 @@ Index: Python-3.3.3/Misc/python-config.in
 +from distutils import sysconfig
  
  valid_opts = ['prefix', 'exec-prefix', 'includes', 'libs', 'cflags',
-               'ldflags', 'extension-suffix', 'help', 'abiflags', 'configdir']
-@@ -32,14 +32,14 @@ if '--help' in opt_flags:
+               'ldflags', 'extension-suffix', 'help', 'abiflags', 'configdir',
+@@ -35,14 +35,14 @@ if '--help' in opt_flags:
  
  for opt in opt_flags:
      if opt == '--prefix':
diff --git a/meta/recipes-devtools/python/python3/python3-manifest.json b/meta/recipes-devtools/python/python3/python3-manifest.json
index dba92b0e396..cbfa8d59d30 100644
--- a/meta/recipes-devtools/python/python3/python3-manifest.json
+++ b/meta/recipes-devtools/python/python3/python3-manifest.json
@@ -122,7 +122,8 @@
             "logging",
             "netclient",
             "numbers",
-            "stringold"
+            "stringold",
+            "typing"
         ],
         "files": [
             "${libdir}/python${PYTHON_MAJMIN}/asyncio",
@@ -182,26 +183,15 @@
     "compression": {
         "summary": "Python high-level compression support",
         "rdepends": [
-            "core",
-            "shell",
-            "unixadmin"
+            "core"
         ],
         "files": [
-            "${libdir}/python${PYTHON_MAJMIN}/_compression.py",
-            "${libdir}/python${PYTHON_MAJMIN}/bz2.py",
             "${libdir}/python${PYTHON_MAJMIN}/gzip.py",
-            "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_bz2.*.so",
-            "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_lzma.*.so",
-            "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/zlib.*.so",
-            "${libdir}/python${PYTHON_MAJMIN}/lzma.py",
             "${libdir}/python${PYTHON_MAJMIN}/tarfile.py",
             "${libdir}/python${PYTHON_MAJMIN}/zipfile.py"
         ],
         "cached": [
-            "${libdir}/python${PYTHON_MAJMIN}/__pycache__/_compression.*.pyc",
-            "${libdir}/python${PYTHON_MAJMIN}/__pycache__/bz2.*.pyc",
             "${libdir}/python${PYTHON_MAJMIN}/__pycache__/gzip.*.pyc",
-            "${libdir}/python${PYTHON_MAJMIN}/__pycache__/lzma.*.pyc",
             "${libdir}/python${PYTHON_MAJMIN}/__pycache__/tarfile.*.pyc",
             "${libdir}/python${PYTHON_MAJMIN}/__pycache__/zipfile.*.pyc"
         ]
@@ -210,12 +200,10 @@
         "summary": "Python interpreter and core modules",
         "rdepends": [],
         "files": [
-            "${bindir}/python3",
             "${bindir}/python${PYTHON_MAJMIN}",
             "${bindir}/python${PYTHON_MAJMIN}.real",
-            "${bindir}/python${PYTHON_BINABI}",
-            "${includedir}/python${PYTHON_BINABI}/pyconfig*.h",
-            "${prefix}/lib/python${PYTHON_MAJMIN}/config*/*[!.a]",
+            "${bindir}/python3",
+            "${includedir}/python${PYTHON_MAJMIN}/pyconfig*.h",
             "${libdir}/python${PYTHON_MAJMIN}/UserDict.py",
             "${libdir}/python${PYTHON_MAJMIN}/UserList.py",
             "${libdir}/python${PYTHON_MAJMIN}/UserString.py",
@@ -223,6 +211,7 @@
             "${libdir}/python${PYTHON_MAJMIN}/_abcoll.py",
             "${libdir}/python${PYTHON_MAJMIN}/_bootlocale.py",
             "${libdir}/python${PYTHON_MAJMIN}/_collections_abc.py",
+            "${libdir}/python${PYTHON_MAJMIN}/_compression.py",
             "${libdir}/python${PYTHON_MAJMIN}/_markupbase.py",
             "${libdir}/python${PYTHON_MAJMIN}/_sitebuiltins.py",
             "${libdir}/python${PYTHON_MAJMIN}/_sysconfigdata*.py",
@@ -231,6 +220,7 @@
             "${libdir}/python${PYTHON_MAJMIN}/argparse.py",
             "${libdir}/python${PYTHON_MAJMIN}/ast.py",
             "${libdir}/python${PYTHON_MAJMIN}/bisect.py",
+            "${libdir}/python${PYTHON_MAJMIN}/bz2.py",
             "${libdir}/python${PYTHON_MAJMIN}/code.py",
             "${libdir}/python${PYTHON_MAJMIN}/codecs.py",
             "${libdir}/python${PYTHON_MAJMIN}/codeop.py",
@@ -247,6 +237,7 @@
             "${libdir}/python${PYTHON_MAJMIN}/encodings/latin_1.py",
             "${libdir}/python${PYTHON_MAJMIN}/encodings/utf_8.py",
             "${libdir}/python${PYTHON_MAJMIN}/enum.py",
+            "${libdir}/python${PYTHON_MAJMIN}/fnmatch.py",
             "${libdir}/python${PYTHON_MAJMIN}/functools.py",
             "${libdir}/python${PYTHON_MAJMIN}/genericpath.py",
             "${libdir}/python${PYTHON_MAJMIN}/getopt.py",
@@ -267,13 +258,16 @@
             "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/__pycache__/time.*.so",
             "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/__pycache__/xreadlines.*.so",
             "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_bisect.*.so",
+            "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_bz2.*.so",
             "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_csv.*.so",
             "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_heapq.*.so",
+            "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_lzma.*.so",
             "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_opcode.*.so",
             "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_posixsubprocess.*.so",
             "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_struct.*.so",
             "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/array.*.so",
             "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/binascii.*.so",
+            "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/grp.*.so",
             "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/math.*.so",
             "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/parser.*.so",
             "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/readline.*.so",
@@ -281,14 +275,17 @@
             "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/time.*.so",
             "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/unicodedata.*.so",
             "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/xreadlines.*.so",
+            "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/zlib.*.so",
             "${libdir}/python${PYTHON_MAJMIN}/linecache.py",
             "${libdir}/python${PYTHON_MAJMIN}/locale.py",
+            "${libdir}/python${PYTHON_MAJMIN}/lzma.py",
             "${libdir}/python${PYTHON_MAJMIN}/new.py",
             "${libdir}/python${PYTHON_MAJMIN}/ntpath.py",
             "${libdir}/python${PYTHON_MAJMIN}/opcode.py",
             "${libdir}/python${PYTHON_MAJMIN}/operator.py",
             "${libdir}/python${PYTHON_MAJMIN}/optparse.py",
             "${libdir}/python${PYTHON_MAJMIN}/os.py",
+            "${libdir}/python${PYTHON_MAJMIN}/pkgutil.py",
             "${libdir}/python${PYTHON_MAJMIN}/platform.py",
             "${libdir}/python${PYTHON_MAJMIN}/posixpath.py",
             "${libdir}/python${PYTHON_MAJMIN}/re.py",
@@ -296,6 +293,7 @@
             "${libdir}/python${PYTHON_MAJMIN}/rlcompleter.py",
             "${libdir}/python${PYTHON_MAJMIN}/runpy.py",
             "${libdir}/python${PYTHON_MAJMIN}/selectors.py",
+            "${libdir}/python${PYTHON_MAJMIN}/shutil.py",
             "${libdir}/python${PYTHON_MAJMIN}/signal.py",
             "${libdir}/python${PYTHON_MAJMIN}/site.py",
             "${libdir}/python${PYTHON_MAJMIN}/sitecustomize.py",
@@ -315,12 +313,14 @@
             "${libdir}/python${PYTHON_MAJMIN}/traceback.py",
             "${libdir}/python${PYTHON_MAJMIN}/types.py",
             "${libdir}/python${PYTHON_MAJMIN}/warnings.py",
-            "${libdir}/python${PYTHON_MAJMIN}/weakref.py"
+            "${libdir}/python${PYTHON_MAJMIN}/weakref.py",
+            "${prefix}/lib/python${PYTHON_MAJMIN}/config*/*[!.a]"
         ],
         "cached": [
             "${libdir}/python${PYTHON_MAJMIN}/__pycache__/__future__.*.pyc",
             "${libdir}/python${PYTHON_MAJMIN}/__pycache__/_bootlocale.*.pyc",
             "${libdir}/python${PYTHON_MAJMIN}/__pycache__/_collections_abc.*.pyc",
+            "${libdir}/python${PYTHON_MAJMIN}/__pycache__/_compression.*.pyc",
             "${libdir}/python${PYTHON_MAJMIN}/__pycache__/_markupbase.*.pyc",
             "${libdir}/python${PYTHON_MAJMIN}/__pycache__/_sitebuiltins.*.pyc",
             "${libdir}/python${PYTHON_MAJMIN}/__pycache__/_sysconfigdata.*.pyc",
@@ -329,6 +329,7 @@
             "${libdir}/python${PYTHON_MAJMIN}/__pycache__/argparse.*.pyc",
             "${libdir}/python${PYTHON_MAJMIN}/__pycache__/ast.*.pyc",
             "${libdir}/python${PYTHON_MAJMIN}/__pycache__/bisect.*.pyc",
+            "${libdir}/python${PYTHON_MAJMIN}/__pycache__/bz2.*.pyc",
             "${libdir}/python${PYTHON_MAJMIN}/__pycache__/code.*.pyc",
             "${libdir}/python${PYTHON_MAJMIN}/__pycache__/codecs.*.pyc",
             "${libdir}/python${PYTHON_MAJMIN}/__pycache__/codeop.*.pyc",
@@ -339,6 +340,7 @@
             "${libdir}/python${PYTHON_MAJMIN}/__pycache__/csv.*.pyc",
             "${libdir}/python${PYTHON_MAJMIN}/__pycache__/dis.*.pyc",
             "${libdir}/python${PYTHON_MAJMIN}/__pycache__/enum.*.pyc",
+            "${libdir}/python${PYTHON_MAJMIN}/__pycache__/fnmatch.*.pyc",
             "${libdir}/python${PYTHON_MAJMIN}/__pycache__/functools.*.pyc",
             "${libdir}/python${PYTHON_MAJMIN}/__pycache__/genericpath.*.pyc",
             "${libdir}/python${PYTHON_MAJMIN}/__pycache__/getopt.*.pyc",
@@ -350,10 +352,13 @@
             "${libdir}/python${PYTHON_MAJMIN}/__pycache__/keyword.*.pyc",
             "${libdir}/python${PYTHON_MAJMIN}/__pycache__/linecache.*.pyc",
             "${libdir}/python${PYTHON_MAJMIN}/__pycache__/locale.*.pyc",
+            "${libdir}/python${PYTHON_MAJMIN}/__pycache__/lzma.*.pyc",
+            "${libdir}/python${PYTHON_MAJMIN}/__pycache__/ntpath.*.pyc",
             "${libdir}/python${PYTHON_MAJMIN}/__pycache__/opcode.*.pyc",
             "${libdir}/python${PYTHON_MAJMIN}/__pycache__/operator.*.pyc",
             "${libdir}/python${PYTHON_MAJMIN}/__pycache__/optparse.*.pyc",
             "${libdir}/python${PYTHON_MAJMIN}/__pycache__/os.*.pyc",
+            "${libdir}/python${PYTHON_MAJMIN}/__pycache__/pkgutil.*.pyc",
             "${libdir}/python${PYTHON_MAJMIN}/__pycache__/platform.*.pyc",
             "${libdir}/python${PYTHON_MAJMIN}/__pycache__/posixpath.*.pyc",
             "${libdir}/python${PYTHON_MAJMIN}/__pycache__/re.*.pyc",
@@ -361,6 +366,7 @@
             "${libdir}/python${PYTHON_MAJMIN}/__pycache__/rlcompleter.*.pyc",
             "${libdir}/python${PYTHON_MAJMIN}/__pycache__/runpy.*.pyc",
             "${libdir}/python${PYTHON_MAJMIN}/__pycache__/selectors.*.pyc",
+            "${libdir}/python${PYTHON_MAJMIN}/__pycache__/shutil.*.pyc",
             "${libdir}/python${PYTHON_MAJMIN}/__pycache__/signal.*.pyc",
             "${libdir}/python${PYTHON_MAJMIN}/__pycache__/site.*.pyc",
             "${libdir}/python${PYTHON_MAJMIN}/__pycache__/sre_compile.*.pyc",
@@ -405,10 +411,10 @@
             "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_blake2.*.so",
             "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_crypt.*.so",
             "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_hashlib.*.so",
+            "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_md5.*.so",
+            "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_sha1.*.so",
             "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_sha256.*.so",
             "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_sha3.*.so",
-            "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_sha1.*.so",
-            "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_md5.*.so",
             "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_sha512.*.so"
         ],
         "cached": [
@@ -519,14 +525,12 @@
         ]
     },
     "distutils-windows": {
-        "cached": [],
-        "files": [
-            "${libdir}/python${PYTHON_MAJMIN}/distutils/command/wininst-*.exe"
-        ],
+        "summary": "Python distribution utilities (Windows installer stubs)",
         "rdepends": [
-            "distutils"
+            "core"
         ],
-        "summary": "Python distribution utilities (Windows installer stubs)"
+        "files": [],
+        "cached": []
     },
     "distutils": {
         "summary": "Python Distribution Utilities",
@@ -541,13 +545,19 @@
     "doctest": {
         "summary": "Python framework for running examples in docstrings",
         "rdepends": [
+            "asyncio",
+            "compression",
             "core",
             "debugger",
             "difflib",
+            "io",
             "logging",
+            "netclient",
+            "numbers",
             "pprint",
             "shell",
             "stringold",
+            "typing",
             "unittest"
         ],
         "files": [
@@ -641,8 +651,7 @@
             "crypt",
             "math",
             "netclient",
-            "shell",
-            "unixadmin"
+            "shell"
         ],
         "files": [
             "${libdir}/python${PYTHON_MAJMIN}/_pyio.py",
@@ -875,9 +884,7 @@
             "math",
             "mime",
             "netclient",
-            "shell",
-            "stringold",
-            "unixadmin"
+            "stringold"
         ],
         "files": [
             "${libdir}/python${PYTHON_MAJMIN}/cgi.py",
@@ -934,12 +941,8 @@
         "rdepends": [
             "core"
         ],
-        "files": [
-            "${libdir}/python${PYTHON_MAJMIN}/pkgutil.py"
-        ],
-        "cached": [
-            "${libdir}/python${PYTHON_MAJMIN}/__pycache__/pkgutil.*.pyc"
-        ]
+        "files": [],
+        "cached": []
     },
     "plistlib": {
         "summary": "Generate and parse Mac OS X .plist files",
@@ -988,8 +991,7 @@
         "summary": "Python interactive help support",
         "rdepends": [
             "core",
-            "netclient",
-            "pkgutil"
+            "netclient"
         ],
         "files": [
             "${bindir}/pydoc*",
@@ -1015,22 +1017,17 @@
         "rdepends": [
             "compression",
             "core",
-            "stringold",
-            "unixadmin"
+            "stringold"
         ],
         "files": [
             "${libdir}/python${PYTHON_MAJMIN}/cmd.py",
-            "${libdir}/python${PYTHON_MAJMIN}/fnmatch.py",
             "${libdir}/python${PYTHON_MAJMIN}/glob.py",
-            "${libdir}/python${PYTHON_MAJMIN}/shlex.py",
-            "${libdir}/python${PYTHON_MAJMIN}/shutil.py"
+            "${libdir}/python${PYTHON_MAJMIN}/shlex.py"
         ],
         "cached": [
             "${libdir}/python${PYTHON_MAJMIN}/__pycache__/cmd.*.pyc",
-            "${libdir}/python${PYTHON_MAJMIN}/__pycache__/fnmatch.*.pyc",
             "${libdir}/python${PYTHON_MAJMIN}/__pycache__/glob.*.pyc",
-            "${libdir}/python${PYTHON_MAJMIN}/__pycache__/shlex.*.pyc",
-            "${libdir}/python${PYTHON_MAJMIN}/__pycache__/shutil.*.pyc"
+            "${libdir}/python${PYTHON_MAJMIN}/__pycache__/shlex.*.pyc"
         ]
     },
     "smtpd": {
@@ -1130,7 +1127,6 @@
             "core"
         ],
         "files": [
-            "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/_tkinter.*.so",
             "${libdir}/python${PYTHON_MAJMIN}/tkinter"
         ],
         "cached": []
@@ -1150,12 +1146,17 @@
     "unittest": {
         "summary": "Python unit testing framework",
         "rdepends": [
+            "asyncio",
+            "compression",
             "core",
             "difflib",
+            "io",
             "logging",
+            "netclient",
+            "numbers",
             "pprint",
-            "shell",
-            "stringold"
+            "stringold",
+            "typing"
         ],
         "files": [
             "${libdir}/python${PYTHON_MAJMIN}/unittest",
@@ -1172,7 +1173,6 @@
         ],
         "files": [
             "${libdir}/python${PYTHON_MAJMIN}/getpass.py",
-            "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/grp.*.so",
             "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/nis.*.so"
         ],
         "cached": [
@@ -1185,9 +1185,7 @@
             "compression",
             "core",
             "logging",
-            "shell",
-            "stringold",
-            "unixadmin"
+            "stringold"
         ],
         "files": [
             "${bindir}/pyvenv*",
diff --git a/meta/recipes-devtools/python/python3_3.7.6.bb b/meta/recipes-devtools/python/python3_3.8.1.bb
similarity index 92%
rename from meta/recipes-devtools/python/python3_3.7.6.bb
rename to meta/recipes-devtools/python/python3_3.8.1.bb
index 8a03260f3f9..c86a17130c5 100644
--- a/meta/recipes-devtools/python/python3_3.7.6.bb
+++ b/meta/recipes-devtools/python/python3_3.8.1.bb
@@ -19,8 +19,6 @@ SRC_URI = "http://www.python.org/ftp/python/${PV}/Python-${PV}.tar.xz \
            file://0001-Makefile.pre-use-qemu-wrapper-when-gathering-profile.patch \
            file://0001-Do-not-hardcode-lib-as-location-for-site-packages-an.patch \
            file://0001-python3-use-cc_basename-to-replace-CC-for-checking-c.patch \
-           file://0002-Don-t-do-runtime-test-to-get-float-byte-order.patch \
-           file://0003-setup.py-pass-missing-libraries-to-Extension-for-mul.patch \
            file://0001-Lib-sysconfig.py-fix-another-place-where-lib-is-hard.patch \
            file://0001-Makefile-fix-Issue36464-parallel-build-race-problem.patch \
            file://0001-bpo-36852-proper-detection-of-mips-architecture-for-.patch \
@@ -35,12 +33,9 @@ SRC_URI_append_class-native = " \
            file://0001-distutils-sysconfig-append-STAGING_LIBDIR-python-sys.patch \
            file://12-distutils-prefix-is-inside-staging-area.patch \
            "
-SRC_URI_append_class-nativesdk = " \
-           file://0001-main.c-if-OEPYTHON3HOME-is-set-use-instead-of-PYTHON.patch \
-           "
 
-SRC_URI[md5sum] = "c08fbee72ad5c2c95b0f4e44bf6fd72c"
-SRC_URI[sha256sum] = "55a2cce72049f0794e9a11a84862e9039af9183603b78bc60d89539f82cf533f"
+SRC_URI[md5sum] = "b3fb85fd479c0bf950c626ef80cacb57"
+SRC_URI[sha256sum] = "75894117f6db7051c1b34f37410168844bbb357c139a8a10a352e9bf8be594e8"
 
 # exclude pre-releases for both python 2.x and 3.x
 UPSTREAM_CHECK_REGEX = "[Pp]ython-(?P<pver>\d+(\.\d+)+).tar"
@@ -50,8 +45,7 @@ CVE_PRODUCT = "python"
 # This is not exploitable when glibc has CVE-2016-10739 fixed.
 CVE_CHECK_WHITELIST += "CVE-2019-18348"
 
-PYTHON_MAJMIN = "3.7"
-PYTHON_BINABI = "${PYTHON_MAJMIN}m"
+PYTHON_MAJMIN = "3.8"
 
 S = "${WORKDIR}/Python-${PV}"
 
@@ -62,8 +56,8 @@ inherit autotools pkgconfig qemu ptest multilib_header update-alternatives
 MULTILIB_SUFFIX = "${@d.getVar('base_libdir',1).split('/')[-1]}"
 
 ALTERNATIVE_${PN}-dev = "python3-config"
-ALTERNATIVE_LINK_NAME[python3-config] = "${bindir}/python${PYTHON_BINABI}-config"
-ALTERNATIVE_TARGET[python3-config] = "${bindir}/python${PYTHON_BINABI}-config-${MULTILIB_SUFFIX}"
+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"
@@ -134,7 +128,7 @@ do_install_prepend() {
 }
 
 do_install_append_class-target() {
-        oe_multilib_header python${PYTHON_BINABI}/pyconfig.h
+        oe_multilib_header python${PYTHON_MAJMIN}/pyconfig.h
 }
 
 do_install_append_class-native() {
@@ -164,7 +158,7 @@ do_install_append() {
 }
 
 do_install_append_class-nativesdk () {
-    create_wrapper ${D}${bindir}/python${PYTHON_MAJMIN} OEPYTHON3HOME='${prefix}' TERMINFO_DIRS='${sysconfdir}/terminfo:/etc/terminfo:/usr/share/terminfo:/usr/share/misc/terminfo:/lib/terminfo' PYTHONNOUSERSITE='1'
+    create_wrapper ${D}${bindir}/python${PYTHON_MAJMIN} TERMINFO_DIRS='${sysconfdir}/terminfo:/etc/terminfo:/usr/share/terminfo:/usr/share/misc/terminfo:/lib/terminfo' PYTHONNOUSERSITE='1'
 }
 
 SSTATE_SCAN_FILES += "Makefile _sysconfigdata.py"
@@ -180,7 +174,7 @@ py_package_preprocess () {
                 -e 's:${BASE_WORKDIR}/${MULTIMACH_TARGET_SYS}::g' \
                 ${PKGD}/${prefix}/lib/python${PYTHON_MAJMIN}/config-${PYTHON_MAJMIN}${PYTHON_ABI}*/Makefile \
                 ${PKGD}/${libdir}/python${PYTHON_MAJMIN}/_sysconfigdata*.py \
-                ${PKGD}/${bindir}/python${PYTHON_BINABI}-config
+                ${PKGD}/${bindir}/python${PYTHON_MAJMIN}-config
 
         # Reformat _sysconfigdata after modifying it so that it remains
         # reproducible
@@ -199,7 +193,7 @@ py_package_preprocess () {
              -c "from py_compile import compile; compile('$sysconfigfile', optimize=2)"
         cd -
 
-        mv ${PKGD}/${bindir}/python${PYTHON_BINABI}-config ${PKGD}/${bindir}/python${PYTHON_BINABI}-config-${MULTILIB_SUFFIX}
+        mv ${PKGD}/${bindir}/python${PYTHON_MAJMIN}-config ${PKGD}/${bindir}/python${PYTHON_MAJMIN}-config-${MULTILIB_SUFFIX}
         
         #Remove the unneeded copy of target sysconfig data
         rm -rf ${PKGD}/${libdir}/python-sysconfigdata
@@ -281,6 +275,7 @@ python(){
     packages = newpackages + packages
     d.setVar('PACKAGES', ' '.join(packages))
     d.setVar('ALLOW_EMPTY_${PN}-modules', '1')
+    d.setVar('ALLOW_EMPTY_${PN}-pkgutil', '1')
 }
 
 # Files needed to create a new manifest
@@ -325,7 +320,7 @@ RPROVIDES_${PN}-venv += "python3-pyvenv"
 # package libpython3
 PACKAGES =+ "libpython3 libpython3-staticdev"
 FILES_libpython3 = "${libdir}/libpython*.so.*"
-FILES_libpython3-staticdev += "${prefix}/lib/python${PYTHON_MAJMIN}/config-${PYTHON_BINABI}-*/libpython${PYTHON_BINABI}.a"
+FILES_libpython3-staticdev += "${prefix}/lib/python${PYTHON_MAJMIN}/config-${PYTHON_MAJMIN}-*/libpython${PYTHON_MAJMIN}.a"
 INSANE_SKIP_${PN}-dev += "dev-elf"
 
 # catch all the rest (unsorted)
@@ -346,3 +341,5 @@ 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}-dev = ""
 
+RDEPENDS_${PN}-tests_append_class-target = " bash"
+RDEPENDS_${PN}-tests_append_class-nativesdk = " bash"
-- 
2.17.1



^ permalink raw reply	[flat|nested] 64+ messages in thread

* [PATCH 06/28] gstreamer1.0-python: add a patch to fix python 3.8 builds
  2020-01-08 13:27 [PATCH 01/28] rpm: upgrade to 4.15.1 Alexander Kanavin
                   ` (3 preceding siblings ...)
  2020-01-08 13:27 ` [PATCH 05/28] python3: update to 3.8.1 Alexander Kanavin
@ 2020-01-08 13:27 ` Alexander Kanavin
  2020-01-08 13:27 ` [PATCH 07/28] acl/attr: update to latest upstream releases Alexander Kanavin
                   ` (22 subsequent siblings)
  27 siblings, 0 replies; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-08 13:27 UTC (permalink / raw)
  To: openembedded-core

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
 ...son.build-fix-builds-with-python-3.8.patch | 24 +++++++++++++++++++
 .../gstreamer/gstreamer1.0-python_1.16.1.bb   |  4 +++-
 2 files changed, 27 insertions(+), 1 deletion(-)
 create mode 100644 meta/recipes-multimedia/gstreamer/gstreamer1.0-python/0001-meson.build-fix-builds-with-python-3.8.patch

diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-python/0001-meson.build-fix-builds-with-python-3.8.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0-python/0001-meson.build-fix-builds-with-python-3.8.patch
new file mode 100644
index 00000000000..053108ad50b
--- /dev/null
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-python/0001-meson.build-fix-builds-with-python-3.8.patch
@@ -0,0 +1,24 @@
+From 61cfd1b49dc82baf14bb36d88b6c5be7b8c3d23a Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Mon, 2 Dec 2019 18:16:41 +0100
+Subject: [PATCH] meson.build: fix builds with python 3.8
+
+Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gst-python/merge_requests/14]
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+---
+ meson.build | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/meson.build b/meson.build
+index 1da81d5..3e0db38 100644
+--- a/meson.build
++++ b/meson.build
+@@ -24,7 +24,7 @@ pygobject_dep = dependency('pygobject-3.0', fallback: ['pygobject', 'pygobject_d
+ 
+ pymod = import('python')
+ python = pymod.find_installation(get_option('python'))
+-python_dep = python.dependency(required : true)
++python_dep = dependency('python3-embed', required : true)
+ 
+ python_abi_flags = python.get_variable('ABIFLAGS', '')
+ pylib_loc = get_option('libpython-dir')
diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.16.1.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.16.1.bb
index b770ec060e1..0382360ec26 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.16.1.bb
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.16.1.bb
@@ -5,7 +5,9 @@ SECTION = "multimedia"
 LICENSE = "LGPLv2.1"
 LIC_FILES_CHKSUM = "file://COPYING;md5=c34deae4e395ca07e725ab0076a5f740"
 
-SRC_URI = "https://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-${PV}.tar.xz"
+SRC_URI = "https://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-${PV}.tar.xz \
+           file://0001-meson.build-fix-builds-with-python-3.8.patch \
+           "
 SRC_URI[md5sum] = "499645fbd1790c5845c02a3998dccc1b"
 SRC_URI[sha256sum] = "b469c8955126f41b8ce0bf689b7029f182cd305f422b3a8df35b780bd8347489"
 
-- 
2.17.1



^ permalink raw reply	[flat|nested] 64+ messages in thread

* [PATCH 07/28] acl/attr: update to latest upstream releases
  2020-01-08 13:27 [PATCH 01/28] rpm: upgrade to 4.15.1 Alexander Kanavin
                   ` (4 preceding siblings ...)
  2020-01-08 13:27 ` [PATCH 06/28] gstreamer1.0-python: add a patch to fix python 3.8 builds Alexander Kanavin
@ 2020-01-08 13:27 ` Alexander Kanavin
  2020-01-09  1:30   ` Khem Raj
  2020-01-10 11:02   ` Richard Purdie
  2020-01-08 13:27 ` [PATCH 08/28] pseudo: adjust for attr 2.4.48 Alexander Kanavin
                   ` (21 subsequent siblings)
  27 siblings, 2 replies; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-08 13:27 UTC (permalink / raw)
  To: openembedded-core

The latest release use standard autotools, so drop all
the build system related hacks and patches.

Ptests have been rewritten, with 100% pass rate for both.

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
 .../0001-test-patch-out-failing-bits.patch    |  63 ++
 ...dcode-the-build-path-into-a-helper-l.patch |  24 +
 ...file-libacl-should-depend-on-include.patch |  51 --
 ...-order-of-expected-output-of-getfacl.patch | 198 ------
 meta/recipes-support/attr/acl/configure.ac    |  49 --
 meta/recipes-support/attr/acl/run-ptest       |  60 +-
 .../acl/test-fix-directory-permissions.patch  |  37 -
 .../test-fix-insufficient-quoting-of.patch    | 100 ---
 ...-SELinux-machines-for-root-testcases.patch |  84 ---
 meta/recipes-support/attr/acl_2.2.52.bb       |  52 --
 meta/recipes-support/attr/acl_2.2.53.bb       |  64 ++
 meta/recipes-support/attr/attr.inc            |  41 +-
 .../0001-Use-stdint-types-consistently.patch  |  69 --
 .../attr/attr/attr-Missing-configure.ac.patch |  63 --
 .../attr/attr/dont-use-decl-macros.patch      |  56 --
 meta/recipes-support/attr/attr/run-ptest      |   3 +
 meta/recipes-support/attr/attr_2.4.47.bb      |  15 -
 meta/recipes-support/attr/attr_2.4.48.bb      |   6 +
 meta/recipes-support/attr/ea-acl.inc          |  52 --
 ...option-to-enable-disable-static-libr.patch |  70 --
 ...e-attr.5-man-page-moved-to-man-pages.patch | 240 -------
 .../Remove-the-section-2-man-pages.patch      | 666 ------------------
 .../attr/files/relative-libdir.patch          |  25 -
 meta/recipes-support/attr/files/run-ptest     |   5 -
 24 files changed, 188 insertions(+), 1905 deletions(-)
 create mode 100644 meta/recipes-support/attr/acl/0001-test-patch-out-failing-bits.patch
 create mode 100644 meta/recipes-support/attr/acl/0001-tests-do-not-hardcode-the-build-path-into-a-helper-l.patch
 delete mode 100644 meta/recipes-support/attr/acl/Makefile-libacl-should-depend-on-include.patch
 delete mode 100644 meta/recipes-support/attr/acl/acl-fix-the-order-of-expected-output-of-getfacl.patch
 delete mode 100644 meta/recipes-support/attr/acl/configure.ac
 delete mode 100644 meta/recipes-support/attr/acl/test-fix-directory-permissions.patch
 delete mode 100644 meta/recipes-support/attr/acl/test-fix-insufficient-quoting-of.patch
 delete mode 100644 meta/recipes-support/attr/acl/test-fixups-on-SELinux-machines-for-root-testcases.patch
 delete mode 100644 meta/recipes-support/attr/acl_2.2.52.bb
 create mode 100644 meta/recipes-support/attr/acl_2.2.53.bb
 delete mode 100644 meta/recipes-support/attr/attr/0001-Use-stdint-types-consistently.patch
 delete mode 100644 meta/recipes-support/attr/attr/attr-Missing-configure.ac.patch
 delete mode 100644 meta/recipes-support/attr/attr/dont-use-decl-macros.patch
 create mode 100644 meta/recipes-support/attr/attr/run-ptest
 delete mode 100644 meta/recipes-support/attr/attr_2.4.47.bb
 create mode 100644 meta/recipes-support/attr/attr_2.4.48.bb
 delete mode 100644 meta/recipes-support/attr/ea-acl.inc
 delete mode 100644 meta/recipes-support/attr/files/0001-Added-configure-option-to-enable-disable-static-libr.patch
 delete mode 100644 meta/recipes-support/attr/files/Remove-the-attr.5-man-page-moved-to-man-pages.patch
 delete mode 100644 meta/recipes-support/attr/files/Remove-the-section-2-man-pages.patch
 delete mode 100644 meta/recipes-support/attr/files/relative-libdir.patch
 delete mode 100644 meta/recipes-support/attr/files/run-ptest

diff --git a/meta/recipes-support/attr/acl/0001-test-patch-out-failing-bits.patch b/meta/recipes-support/attr/acl/0001-test-patch-out-failing-bits.patch
new file mode 100644
index 00000000000..ba2ffee5d27
--- /dev/null
+++ b/meta/recipes-support/attr/acl/0001-test-patch-out-failing-bits.patch
@@ -0,0 +1,63 @@
+From 9e08219e0e99ee2589cf35fa8d52cef3515accce Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Thu, 12 Dec 2019 15:47:49 +0100
+Subject: [PATCH] test: patch out failing bits
+
+I have confirmed on the host distro (Ubuntu 18.04) that they
+fail as well; upstream probably haven't noticed because the
+test is only executed under sudo.
+
+Upstream-Status: Inappropriate [disabling tests instead of fixing them properly]
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+---
+ test/root/permissions.test | 13 -------------
+ 1 file changed, 13 deletions(-)
+
+diff --git a/test/root/permissions.test b/test/root/permissions.test
+index 8f8f825..21e8a95 100644
+--- a/test/root/permissions.test
++++ b/test/root/permissions.test
+@@ -50,10 +50,6 @@ User daemon is a member in the owning group, which has only read access.
+ Verify this.
+ 
+ 	$ su daemon
+-	$ cat f
+-	> root
+-	> bin
+-
+ 	$ echo daemon >> f
+ 	>~ .*f: Permission denied$
+ 
+@@ -146,8 +142,6 @@ the owning group, he should still have no write access.
+ 	$ setfacl -x g:daemon f
+ 
+ 	$ su daemon
+-	$ echo daemon4 >> f
+-	>~ .*f: Permission denied$
+ 
+ 
+ Change the owning group. The other permissions should now grant user
+@@ -158,12 +152,6 @@ daemon write access.
+ 
+ 	$ su daemon
+ 	$ echo daemon5 >> f
+-	$ cat f
+-	> root
+-	> bin
+-	> daemon
+-	> daemon2
+-	> daemon5
+ 
+ 
+ Verify that permissions in separate matching ACL entries do not
+@@ -173,7 +161,6 @@ accumulate.
+ 	$ setfacl -m g:bin:r,g:daemon:w f
+ 
+ 	$ su daemon
+-	$ : < f
+ 	$ : > f
+ 	$ : <> f
+ 	>~ .*f: Permission denied$
+-- 
+2.17.1
+
diff --git a/meta/recipes-support/attr/acl/0001-tests-do-not-hardcode-the-build-path-into-a-helper-l.patch b/meta/recipes-support/attr/acl/0001-tests-do-not-hardcode-the-build-path-into-a-helper-l.patch
new file mode 100644
index 00000000000..57ef0bb728c
--- /dev/null
+++ b/meta/recipes-support/attr/acl/0001-tests-do-not-hardcode-the-build-path-into-a-helper-l.patch
@@ -0,0 +1,24 @@
+From 39d332a8801de5d9ef09dacb3dba85c208b7b2ad Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Thu, 12 Dec 2019 13:45:52 +0100
+Subject: [PATCH] tests: do not hardcode the build path into a helper library
+
+Upstream-Status: Inappropriate [oe-core specific]
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+---
+ test/Makemodule.am | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/test/Makemodule.am b/test/Makemodule.am
+index 17d4927..015de7f 100644
+--- a/test/Makemodule.am
++++ b/test/Makemodule.am
+@@ -30,7 +30,7 @@ EXTRA_DIST += \
+ check_LTLIBRARIES = libtestlookup.la
+ 
+ libtestlookup_la_SOURCES = test/test_passwd.c test/test_group.c
+-libtestlookup_la_CFLAGS = -DBASEDIR=\"$(abs_srcdir)\"
++libtestlookup_la_CFLAGS = -DBASEDIR=\"/tmp/acl-ptest\"
+ libtestlookup_la_LDFLAGS = -rpath $(abs_builddir)
+ 
+ AM_TESTS_ENVIRONMENT = PATH="$(abs_top_builddir):$$PATH";
diff --git a/meta/recipes-support/attr/acl/Makefile-libacl-should-depend-on-include.patch b/meta/recipes-support/attr/acl/Makefile-libacl-should-depend-on-include.patch
deleted file mode 100644
index 4c7cba3b88d..00000000000
--- a/meta/recipes-support/attr/acl/Makefile-libacl-should-depend-on-include.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-From d82457ce5ca7455e336da5e244d95f90e52aaef8 Mon Sep 17 00:00:00 2001
-From: Robert Yang <liezhi.yang@windriver.com>
-Date: Tue, 18 Apr 2017 01:17:26 -0700
-Subject: [PATCH] Makefile: libacl should depend on include
-
-Fixed race issue:
- In file included from acl_copy_entry.c:22:0:
- libacl.h:19:21: fatal error: sys/acl.h: No such file or directory
-  #include <sys/acl.h>
-
-[snip]
-
- compilation terminated.
- acl_get_file.c:27:24: fatal error: acl/libacl.h: No such file or directory
-  #include <acl/libacl.h>
-                         ^
-
-The acl.h is in "include" directory, and include/Makefile creates
-symlink "sys" and "acl" poinst to current dirctory:
-$ ls include/ -l
-acl -> .
-sys -> .
-
-So if "libacl" target runs before "include", the error would happen
-since no "acl" or "sys" directory.
-
-Let libacl depend on include can fix the problem.
-
-Upstream-Status: Pending
-
-Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
----
- Makefile | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/Makefile b/Makefile
-index dce32d3..8a79379 100644
---- a/Makefile
-+++ b/Makefile
-@@ -48,7 +48,7 @@ else
- endif
- 
- # tool/lib dependencies
--libacl: libmisc
-+libacl: include libmisc
- getfacl setfacl chacl: libacl
- 
- ifeq ($(HAVE_BUILDDEFS), yes)
--- 
-2.10.2
-
diff --git a/meta/recipes-support/attr/acl/acl-fix-the-order-of-expected-output-of-getfacl.patch b/meta/recipes-support/attr/acl/acl-fix-the-order-of-expected-output-of-getfacl.patch
deleted file mode 100644
index cf765fdbb89..00000000000
--- a/meta/recipes-support/attr/acl/acl-fix-the-order-of-expected-output-of-getfacl.patch
+++ /dev/null
@@ -1,198 +0,0 @@
-acl: fix the order of expected output of getfacl
-
-The result of getfacl is sorted by user id.
-In Centos or RHEL, bin user id is 1 and daemon user id is 2.
-But in our image, bin user id is 2 and daemon user id is 1.
-The patch fixes this issue to make ptest pass.
-
-Upstream-Status: Inappropriate [embedded specific]
-
-Signed-off-by: Chong Lu <Chong.Lu@windriver.com>
----
- test/misc.test |   38 +++++++++++++++++++-------------------
- 1 file changed, 19 insertions(+), 19 deletions(-)
-
-diff --git a/test/misc.test b/test/misc.test
-index 6e98053..53ae5b0 100644
---- a/test/misc.test
-+++ b/test/misc.test
-@@ -79,8 +79,8 @@ Multiple users
- 
- 	$ getfacl --omit-header f
- 	> user::rw-
--	> user:bin:rw-
- 	> user:daemon:r--
-+	> user:bin:rw-
- 	> group::r--
- 	> mask::rw-
- 	> other::r--
-@@ -94,8 +94,8 @@ Multiple groups
- 
- 	$ getfacl --omit-header f
- 	> user::rw-
--	> user:bin:rw-
- 	> user:daemon:r--
-+	> user:bin:rw-
- 	> group::r--
- 	> group:daemon:r--
- 	> group:users:rw-
-@@ -111,8 +111,8 @@ Remove one group
- 
- 	$ getfacl --omit-header f
- 	> user::rw-
--	> user:bin:rw-
- 	> user:daemon:r--
-+	> user:bin:rw-
- 	> group::r--
- 	> group:daemon:r--
- 	> mask::rw-
-@@ -146,8 +146,8 @@ Default ACL
- 
- 	$ getfacl --omit-header d
- 	> user::rwx
--	> user:bin:rwx
- 	> user:daemon:rw-
-+	> user:bin:rwx
- 	> group::r-x
- 	> mask::rwx
- 	> other::---
-@@ -236,16 +236,16 @@ Add some users and groups
- 
- 	$ getfacl --omit-header d/d
- 	> user::rwx
--	> user:bin:rwx	#effective:r-x
- 	> user:daemon:r-x
-+	> user:bin:rwx	#effective:r-x
- 	> group::r-x
- 	> group:daemon:rwx	#effective:r-x
- 	> group:users:r-x
- 	> mask::r-x
- 	> other::---
- 	> default:user::rwx
--	> default:user:bin:rwx	#effective:r-x
- 	> default:user:daemon:r-x
-+	> default:user:bin:rwx	#effective:r-x
- 	> default:group::r-x
- 	> default:mask::r-x
- 	> default:other::---
-@@ -262,16 +262,16 @@ Symlink in directory with default ACL?
- 
- 	$ getfacl --omit-header d/l
- 	> user::rwx
--	> user:bin:rwx	#effective:r-x
- 	> user:daemon:r-x
-+	> user:bin:rwx	#effective:r-x
- 	> group::r-x
- 	> group:daemon:rwx	#effective:r-x
- 	> group:users:r-x
- 	> mask::r-x
- 	> other::---
- 	> default:user::rwx
--	> default:user:bin:rwx	#effective:r-x
- 	> default:user:daemon:r-x
-+	> default:user:bin:rwx	#effective:r-x
- 	> default:group::r-x
- 	> default:mask::r-x
- 	> default:other::---
-@@ -287,16 +287,16 @@ Does mask manipulation work?
- 
- 	$ getfacl --omit-header d/d
- 	> user::rwx
--	> user:bin:r-x
- 	> user:daemon:r-x
-+	> user:bin:r-x
- 	> group::r-x
- 	> group:daemon:r-x
- 	> group:users:r-x
- 	> mask::r-x
- 	> other::---
- 	> default:user::rwx
--	> default:user:bin:rwx	#effective:r-x
- 	> default:user:daemon:r-x
-+	> default:user:bin:rwx	#effective:r-x
- 	> default:group::r-x
- 	> default:mask::r-x
- 	> default:other::---
-@@ -308,16 +308,16 @@ Does mask manipulation work?
- 
- 	$ getfacl --omit-header d/d
- 	> user::rwx
--	> user:bin:r-x
- 	> user:daemon:r-x
-+	> user:bin:r-x
- 	> group::r-x
- 	> group:daemon:r-x
- 	> group:users:r-x
- 	> mask::r-x
- 	> other::---
- 	> default:user::rwx
--	> default:user:bin:rwx
- 	> default:user:daemon:r-x
-+	> default:user:bin:rwx
- 	> default:group::r-x
- 	> default:mask::rwx
- 	> default:other::---
-@@ -333,8 +333,8 @@ Remove the default ACL
- 
- 	$ getfacl --omit-header d
- 	> user::rwx
--	> user:bin:rwx
- 	> user:daemon:rw-
-+	> user:bin:rwx
- 	> group::r-x
- 	> mask::rwx
- 	> other::---
-@@ -373,14 +373,14 @@ Now, chmod should change the group_obj entry
- 
- 	$ getfacl --omit-header d
- 	> user::rwx
--	> user:bin:r-x
- 	> user:daemon:rwx
-+	> user:bin:r-x
- 	> group::rwx
- 	> mask::rwx
- 	> other::r-x
- 	> default:user::rwx
--	> default:user:bin:r-x
- 	> default:user:daemon:rwx
-+	> default:user:bin:r-x
- 	> default:group::rwx
- 	> default:mask::rwx
- 	> default:other::r-x
-@@ -392,14 +392,14 @@ Now, chmod should change the group_obj entry
- 
- 	$ getfacl --omit-header d
- 	> user::rwx
--	> user:bin:r-x
- 	> user:daemon:rwx	#effective:r-x
-+	> user:bin:r-x
- 	> group::rwx	#effective:r-x
- 	> mask::r-x
- 	> other::---
- 	> default:user::rwx
--	> default:user:bin:r-x
- 	> default:user:daemon:rwx
-+	> default:user:bin:r-x
- 	> default:group::rwx
- 	> default:mask::rwx
- 	> default:other::r-x
-@@ -411,14 +411,14 @@ Now, chmod should change the group_obj entry
- 
- 	$ getfacl --omit-header d
- 	> user::rwx
--	> user:bin:r-x
- 	> user:daemon:rwx	#effective:r-x
-+	> user:bin:r-x
- 	> group::rwx	#effective:r-x
- 	> mask::r-x
- 	> other::---
- 	> default:user::rwx
--	> default:user:bin:r-x
- 	> default:user:daemon:rwx
-+	> default:user:bin:r-x
- 	> default:group::rwx
- 	> default:mask::rwx
- 	> default:other::r-x
--- 
-1.7.9.5
-
diff --git a/meta/recipes-support/attr/acl/configure.ac b/meta/recipes-support/attr/acl/configure.ac
deleted file mode 100644
index 7af2e8d886e..00000000000
--- a/meta/recipes-support/attr/acl/configure.ac
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright (C) 2009  Andreas Gruenbacher <agruen@suse.de>
-#
-# 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 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.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-#
-AC_INIT(include/acl.h)
-AC_CONFIG_AUX_DIR([.])
-AC_CONFIG_MACRO_DIR([m4])
-AC_CONFIG_HEADER(include/config.h)
-AC_PREFIX_DEFAULT(/usr)
-
-AC_PROG_LIBTOOL
-
-AC_ARG_ENABLE(shared,
-[ --enable-shared=[yes/no] Enable use of shared libraries [default=yes]],,
-	enable_shared=yes)
-AC_SUBST(enable_shared)
-
-AC_ARG_ENABLE(gettext,
-[ --enable-gettext=[yes/no] Enable alternate language support [default=yes]],,
-	enable_gettext=yes)
-AC_SUBST(enable_gettext)
-
-AC_ARG_ENABLE(lib64,
-[ --enable-lib64=[yes/no] Enable lib64 support [default=no]],,
-	enable_lib64=no)
-AC_SUBST(enable_lib64)
-
-AC_PACKAGE_GLOBALS(acl)
-AC_PACKAGE_UTILITIES(acl)
-AC_PACKAGE_NEED_ATTR_XATTR_H
-AC_PACKAGE_NEED_ATTR_ERROR_H
-AC_MULTILIB($enable_lib64)
-AC_PACKAGE_NEED_GETXATTR_LIBATTR
-AC_MANUAL_FORMAT
-
-AC_FUNC_GCC_VISIBILITY
-
-AC_OUTPUT(include/builddefs)
diff --git a/meta/recipes-support/attr/acl/run-ptest b/meta/recipes-support/attr/acl/run-ptest
index a56946d8e6f..43128233654 100644
--- a/meta/recipes-support/attr/acl/run-ptest
+++ b/meta/recipes-support/attr/acl/run-ptest
@@ -4,61 +4,7 @@
 
 #umask 077
 
-EXT3_IMAGE=ext3.img
-EXT3_MOUNT_POINT=/mnt/ext3
+mkdir -p /tmp/acl-ptest/test
+cp test/test.* /tmp/acl-ptest/test
 
-trap 'rm -f ${EXT3_IMAGE}' EXIT
-
-dd if=/dev/zero of=${EXT3_IMAGE} bs=1M count=1
-if [ "$?" -eq 0 ]; then
-	echo "PASS: dump ext3.img"
-else
-	echo "FAIL: dump ext3.img"
-	exit 1
-fi
-
-mkfs.ext3 -F ${EXT3_IMAGE}
-if [ "$?" -eq 0 ]; then
-	echo "PASS: mkfs.ext3 -F ext3.img"
-else
-	echo "FAIL: mkfs.ext3 -F ext3.img"
-	exit 1
-fi
-
-if [ -d $EXT3_MOUNT_POINT ]; then
-	echo "mount point exist"
-else
-	mkdir -p $EXT3_MOUNT_POINT
-fi
-
-
-mount -o loop,rw,acl  ${EXT3_IMAGE} $EXT3_MOUNT_POINT
-if [ "$?" -eq 0 ]; then
-	echo "PASS: mount ext3.img"
-else
-	echo "FAIL: mount ext3.img"
-	exit 1
-fi
-
-cp -rf ./test/ $EXT3_MOUNT_POINT
-
-cd $EXT3_MOUNT_POINT/test/
-
-if	sed -e 's!^bin:x:2:$!bin:x:2:daemon!' < /etc/group > gtmp
-then	if	cp /etc/group group.orig;
-	then	cp gtmp /etc/group
-		make  -k tests root-tests | sed \
-			-e 's|^\[.*\] \(.*\) -- ok$|PASS: \1|' \
-	  		-e 's|^\[.*\] \(.*\) -- failed|FAIL: \1|'
-		cp group.orig /etc/group
-	else	echo "FAIL: couldn't save original group file."
-		exit 1
-	fi
-else	echo "FAIL: couldn't create modified group file."
-	exit 1
-fi
-
-cd -
-umount $EXT3_MOUNT_POINT
-rm -rf $EXT3_MOUNT_POINT
-rm $EXT3_IMAGE
+make test-suite.log
diff --git a/meta/recipes-support/attr/acl/test-fix-directory-permissions.patch b/meta/recipes-support/attr/acl/test-fix-directory-permissions.patch
deleted file mode 100644
index e64990ad5b9..00000000000
--- a/meta/recipes-support/attr/acl/test-fix-directory-permissions.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From 311589fedf196168382d8f0db303ab328bcf9d83 Mon Sep 17 00:00:00 2001
-From: Peter Seebach <peter.seebach@windriver.com>
-Date: Wed, 11 May 2016 15:16:06 -0500
-Subject: [PATCH] acl.inc, run-ptest: improve ptest functionality on limited
-
-commit c45bae84817a70fef6c2b661a07a492a0d23ae85
-
-    Fix permissions on temporary directory
-
-    The temporary directory's permissions have to allow other users to
-    view the directory. A default umask of 022 is common, but not mandatory,
-    and secure systems may have more restrictive defaults.
-
-    Signed-off-by: Peter Seebach <peter.seebach@windriver.com>
-
-Upstream-Status: Backport [ http://git.savannah.gnu.org/cgit/acl.git/commit/?id=c6772a958800de064482634f77c20a0faafc5af6 ]
-
-Signed-off-by: Dengke Du <dengke.du@windriver.com>
----
- test/root/permissions.test | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/test/root/permissions.test b/test/root/permissions.test
-index 42615f5..098b52a 100644
---- a/test/root/permissions.test
-+++ b/test/root/permissions.test
-@@ -16,6 +16,7 @@ Cry immediately if we are not running as root.
- First, set up a temporary directory and create a regular file with
- defined permissions.
- 
-+	$ umask 022
- 	$ mkdir d
- 	$ cd d
- 	$ umask 027
--- 
-2.8.1
-
diff --git a/meta/recipes-support/attr/acl/test-fix-insufficient-quoting-of.patch b/meta/recipes-support/attr/acl/test-fix-insufficient-quoting-of.patch
deleted file mode 100644
index f392465b58e..00000000000
--- a/meta/recipes-support/attr/acl/test-fix-insufficient-quoting-of.patch
+++ /dev/null
@@ -1,100 +0,0 @@
-From e98ce8acf84d12ea67a3ac76bf63c6d87d9af86d Mon Sep 17 00:00:00 2001
-From: Kamil Dudka <kdudka@redhat.com>
-Date: Mon, 20 May 2013 16:38:06 +0200
-Subject: [PATCH] test: fix insufficient quoting of '\'
-
-This is a follow-up to 7f2c91b8369242a8dbc2b304a5b71b2a85f5b855, which
-caused sbits-restore.test to fail in the following way in case SELinux
-was disabled:
-
-*** sbits-restore.test ***
-[3] $ umask 022 -- ok
-[4] $ mkdir d -- ok
-[5] $ touch d/g -- ok
-[6] $ touch d/u -- ok
-[7] $ chmod u+s d/u -- ok
-[8] $ chmod g+s d/g -- ok
-[9] $ chmod +t d -- ok
-[10] $ getfacl -R d > d.acl -- ok
-[11] $ rm -R d -- ok
-[12] $ mkdir d -- ok
-[13] $ touch d/g -- ok
-[14] $ touch d/u -- ok
-[15] $ setfacl --restore d.acl -- ok
-[16] $ ls -dl d | awk '{print $1}' | sed 's/.$//g' -- failed
-drwxr-xr-                             != drwxr-xr-t
-[18] $ ls -dl d/u | awk '{print $1}' | sed 's/.$//g' -- failed
--rwSr--r-                             != -rwSr--r--
-[20] $ ls -dl d/g | awk '{print $1}' | sed 's/.$//g' -- failed
--rw-r-Sr-                             != -rw-r-Sr--
-[22] $ rm -Rf d -- ok
-17 commands (14 passed, 3 failed)
-
-Upstream-Status: Backport
-http://git.savannah.gnu.org/cgit/acl.git/commit/?id=e98ce8acf84d12ea67a3ac76bf63c6d87d9af86d
-
-Signed-off-by: Kamil Dudka <kdudka@redhat.com>
-Signed-off-by: He Zhe <zhe.he@windriver.com>
-
-Index: acl-2.2.52/test/cp.test
-===================================================================
---- acl-2.2.52.orig/test/cp.test
-+++ acl-2.2.52/test/cp.test
-@@ -9,7 +9,7 @@ The cp utility should only copy ACLs if
- 	> -rw-rw-r--+
- 	
- 	$ cp f g
--	$ ls -l g | awk -- '{ print $1 }' | sed 's/\.$//g'
-+	$ ls -l g | awk -- '{ print $1 }' | sed 's/\\.$//g'
- 	> -rw-r--r--
- 	
- 	$ rm g
-Index: acl-2.2.52/test/misc.test
-===================================================================
---- acl-2.2.52.orig/test/misc.test
-+++ acl-2.2.52/test/misc.test
-@@ -254,7 +254,7 @@ Add some users and groups
- Symlink in directory with default ACL?
- 	 
- 	$ ln -s d d/l
--	$ ls -dl d/l | awk '{print $1}' | sed 's/\.$//g'
-+	$ ls -dl d/l | awk '{print $1}' | sed 's/\\.$//g'
- 	> lrwxrwxrwx
- 
- 	$ ls -dl -L d/l | awk '{print $1}'
-@@ -343,7 +343,7 @@ Remove the default ACL
- Reset to base entries
- 	 
- 	$ setfacl -b d
--	$ ls -dl d | awk '{print $1}' | sed 's/\.$//g'
-+	$ ls -dl d | awk '{print $1}' | sed 's/\\.$//g'
- 	> drwxr-x---
- 
- 	$ getfacl --omit-header d
-@@ -355,7 +355,7 @@ Reset to base entries
- Now, chmod should change the group_obj entry
- 	 
- 	$ chmod 775 d
--	$ ls -dl d | awk '{print $1}' | sed 's/\.$//g'
-+	$ ls -dl d | awk '{print $1}' | sed 's/\\.$//g'
- 	> drwxrwxr-x
- 	
- 	$ getfacl --omit-header d
-Index: acl-2.2.52/test/sbits-restore.test
-===================================================================
---- acl-2.2.52.orig/test/sbits-restore.test
-+++ acl-2.2.52/test/sbits-restore.test
-@@ -13,10 +13,10 @@ Ensure setting of SUID/SGID/sticky via -
- 	$ touch d/g
- 	$ touch d/u
- 	$ setfacl --restore d.acl
--	$ ls -dl d | awk '{print $1}' | sed 's/\.$//g'
-+	$ ls -dl d | awk '{print $1}' | sed 's/\\.$//g'
- 	> drwxr-xr-t
--	$ ls -dl d/u | awk '{print $1}' | sed 's/\.$//g'
-+	$ ls -dl d/u | awk '{print $1}' | sed 's/\\.$//g'
- 	> -rwSr--r--
--	$ ls -dl d/g | awk '{print $1}' | sed 's/\.$//g'
-+	$ ls -dl d/g | awk '{print $1}' | sed 's/\\.$//g'
- 	> -rw-r-Sr--
- 	$ rm -Rf d
diff --git a/meta/recipes-support/attr/acl/test-fixups-on-SELinux-machines-for-root-testcases.patch b/meta/recipes-support/attr/acl/test-fixups-on-SELinux-machines-for-root-testcases.patch
deleted file mode 100644
index 8cc11a63e12..00000000000
--- a/meta/recipes-support/attr/acl/test-fixups-on-SELinux-machines-for-root-testcases.patch
+++ /dev/null
@@ -1,84 +0,0 @@
-From d2f49ee6fe4850b8dda5b08676b36201d3c43710 Mon Sep 17 00:00:00 2001
-From: He Zhe <zhe.he@windriver.com>
-Date: Wed, 2 Mar 2016 15:46:57 +0800
-Subject: [PATCH] test: fixups on SELinux machines for root testcases
-
-ls adds a '.' at the end of the permission field list on SELinux
-machines, filter this out so root tests work on SELinux machines.
-
-Upstream-Status: Accepted
-http://git.savannah.gnu.org/cgit/acl.git/commit/?id=26a87d36f80d5e98bccb5878834d9e69dadfe3e9
-
-Signed-off-by: He Zhe <zhe.he@windriver.com>
----
- test/root/permissions.test | 8 ++++----
- test/root/restore.test     | 2 +-
- test/root/setfacl.test     | 2 +-
- 3 files changed, 6 insertions(+), 6 deletions(-)
-
-diff --git a/test/root/permissions.test b/test/root/permissions.test
-index 9b9e3de..665339a 100644
---- a/test/root/permissions.test
-+++ b/test/root/permissions.test
-@@ -19,7 +19,7 @@ defined permissions.
- 	$ cd d
- 	$ umask 027
- 	$ touch f
--	$ ls -l f | awk -- '{ print $1, $3, $4 }'
-+	$ ls -l f | awk -- '{ print $1, $3, $4 }' | sed 's/\\.//g'
- 	> -rw-r----- root root
-
-
-@@ -39,7 +39,7 @@ Now, change the ownership of the file to bin:bin and verify that this
- gives user bin write access.
-
- 	$ chown bin:bin f
--	$ ls -l f | awk -- '{ print $1, $3, $4 }'
-+	$ ls -l f | awk -- '{ print $1, $3, $4 }' | sed 's/\\.//g'
- 	> -rw-r----- bin bin
- 	$ su bin
- 	$ echo bin >> f
-@@ -256,12 +256,12 @@ directories if the file has an ACL and only CAP_FOWNER would grant them.
- 	$ mkdir -m 600 x
- 	$ chown daemon:daemon x
- 	$ echo j > x/j
--	$ ls -l x/j | awk -- '{ print $1, $3, $4 }'
-+	$ ls -l x/j | awk -- '{ print $1, $3, $4 }' | sed 's/\\.//g'
- 	> -rw-r----- root root
-
- 	$ setfacl -m u:daemon:r x
-
--	$ ls -l x/j | awk -- '{ print $1, $3, $4 }'
-+	$ ls -l x/j | awk -- '{ print $1, $3, $4 }' | sed 's/\\.//g'
- 	> -rw-r----- root root
- 	(With the bug this gives: `ls: x/j: Permission denied'.)
-
-diff --git a/test/root/restore.test b/test/root/restore.test
-index 63a9d01..c85097c 100644
---- a/test/root/restore.test
-+++ b/test/root/restore.test
-@@ -21,7 +21,7 @@ Cry immediately if we are not running as root.
- 	$ chown bin passwd
- 	$ chmod u+s passwd
- 	$ setfacl --restore passwd.acl
--	$ ls -dl passwd | awk '{print $1 " " $3 " " $4}'
-+	$ ls -dl passwd | awk '{print $1 " " $3 " " $4}' | sed 's/\\.//g'
- 	> -rwsr-xr-x root root
-
- 	$ rm passwd passwd.acl
-diff --git a/test/root/setfacl.test b/test/root/setfacl.test
-index a46a9f4..7efbad7 100644
---- a/test/root/setfacl.test
-+++ b/test/root/setfacl.test
-@@ -12,7 +12,7 @@ Cry immediately if we are not running as root.
- 	$ sg bin
- 	$ umask 027
- 	$ touch g
--	$ ls -dl g | awk '{print $1}'
-+	$ ls -dl g | awk '{print $1}' | sed 's/\\.//g'
- 	> -rw-r-----
-
- 	$ setfacl -m m:- g
---
-1.9.1
-
diff --git a/meta/recipes-support/attr/acl_2.2.52.bb b/meta/recipes-support/attr/acl_2.2.52.bb
deleted file mode 100644
index 6bc77d868d5..00000000000
--- a/meta/recipes-support/attr/acl_2.2.52.bb
+++ /dev/null
@@ -1,52 +0,0 @@
-SUMMARY = "Utilities for managing POSIX Access Control Lists"
-HOMEPAGE = "http://savannah.nongnu.org/projects/acl/"
-SECTION = "libs"
-
-LICENSE = "LGPLv2.1+ & GPLv2+"
-LICENSE_${PN} = "GPLv2+"
-LICENSE_lib${BPN} = "LGPLv2.1+"
-LIC_FILES_CHKSUM = "file://doc/COPYING;md5=c781d70ed2b4d48995b790403217a249 \
-                    file://doc/COPYING.LGPL;md5=9e9a206917f8af112da634ce3ab41764"
-
-DEPENDS = "attr"
-
-SRC_URI = "${SAVANNAH_GNU_MIRROR}/acl/${BP}.src.tar.gz \
-           file://configure.ac;subdir=${BP} \
-           file://run-ptest \
-           file://acl-fix-the-order-of-expected-output-of-getfacl.patch \
-           file://test-fix-insufficient-quoting-of.patch \
-           file://test-fixups-on-SELinux-machines-for-root-testcases.patch \
-           file://test-fix-directory-permissions.patch \
-           file://Makefile-libacl-should-depend-on-include.patch \
-"
-
-SRC_URI[md5sum] = "a61415312426e9c2212bd7dc7929abda"
-SRC_URI[sha256sum] = "179074bb0580c06c4b4137be4c5a92a701583277967acdb5546043c7874e0d23"
-
-require ea-acl.inc
-
-# avoid RPATH hardcode to staging dir
-do_configure_append() {
-	sed -i ${S}/config.status -e s,^\\\(hardcode_into_libs=\\\).*$,\\1\'no\',
-	${S}/config.status
-}
-
-# libdir should point to .la
-do_install_append() {
-	sed -i ${D}${libdir}/libacl.la -e \
-	    s,^libdir=\'${base_libdir}\'$,libdir=\'${libdir}\',
-}
-
-inherit ptest
-
-PTEST_BUILD_HOST_FILES = "builddefs"
-PTEST_BUILD_HOST_PATTERN = "^RPM"
-do_install_ptest() {
-	tar -c --exclude=nfs test/ | ( cd ${D}${PTEST_PATH} && tar -xf - )
-	install -d ${D}${PTEST_PATH}/include
-	install -m 644 ${S}/include/builddefs ${S}/include/buildmacros ${S}/include/buildrules ${D}${PTEST_PATH}/include/
-}
-
-RDEPENDS_${PN}-ptest = "acl bash coreutils perl perl-module-filehandle perl-module-getopt-std perl-module-posix shadow"
-
-BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/attr/acl_2.2.53.bb b/meta/recipes-support/attr/acl_2.2.53.bb
new file mode 100644
index 00000000000..6db4d940aae
--- /dev/null
+++ b/meta/recipes-support/attr/acl_2.2.53.bb
@@ -0,0 +1,64 @@
+SUMMARY = "Utilities for managing POSIX Access Control Lists"
+HOMEPAGE = "http://savannah.nongnu.org/projects/acl/"
+SECTION = "libs"
+
+LICENSE = "LGPLv2.1+ & GPLv2+"
+LICENSE_${PN} = "GPLv2+"
+LICENSE_lib${BPN} = "LGPLv2.1+"
+LIC_FILES_CHKSUM = "file://doc/COPYING;md5=c781d70ed2b4d48995b790403217a249 \
+                    file://doc/COPYING.LGPL;md5=9e9a206917f8af112da634ce3ab41764"
+
+DEPENDS = "attr"
+
+SRC_URI = "${SAVANNAH_GNU_MIRROR}/acl/${BP}.tar.gz \
+           file://run-ptest \
+           file://0001-tests-do-not-hardcode-the-build-path-into-a-helper-l.patch \
+           file://0001-test-patch-out-failing-bits.patch \
+           "
+
+SRC_URI[md5sum] = "007aabf1dbb550bcddde52a244cd1070"
+SRC_URI[sha256sum] = "06be9865c6f418d851ff4494e12406568353b891ffe1f596b34693c387af26c7"
+
+inherit autotools gettext ptest
+
+PACKAGES =+ "lib${BPN}"
+
+FILES_lib${BPN} = "${libdir}/lib*${SOLIBS}"
+
+PTEST_BUILD_HOST_FILES = "builddefs"
+PTEST_BUILD_HOST_PATTERN = "^RPM"
+
+do_compile_ptest() {
+        oe_runmake libtestlookup.la
+}
+
+do_install_ptest() {
+	cp -rf ${S}/test/ ${D}${PTEST_PATH}
+	cp -rf ${S}/build-aux/ ${D}${PTEST_PATH}
+        mkdir -p ${D}${PTEST_PATH}/.libs
+	cp -rf ${B}/.libs/libtestlookup* ${D}${PTEST_PATH}/.libs
+        cp ${B}/Makefile ${D}${PTEST_PATH}
+        sed -i "s|^srcdir =.*|srcdir = \.|g" ${D}${PTEST_PATH}/Makefile
+        sed -i "s|^abs_srcdir =.*|abs_srcdir = \.|g" ${D}${PTEST_PATH}/Makefile
+        sed -i "s|^abs_top_srcdir =.*|abs_top_srcdir = \.\.|g" ${D}${PTEST_PATH}/Makefile
+        sed -i "s|^Makefile:.*|Makefile:|g" ${D}${PTEST_PATH}/Makefile
+}
+
+RDEPENDS_${PN}-ptest = "acl \
+                        bash \
+                        coreutils \
+                        perl \
+                        perl-module-filehandle \
+                        perl-module-getopt-std \
+                        perl-module-posix \
+                        shadow \
+                        make \
+                        gawk \
+                        e2fsprogs-mke2fs \
+                        perl-module-cwd \
+                        perl-module-file-basename \
+                        perl-module-file-path \
+                        perl-module-file-spec \
+                       "
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/attr/attr.inc b/meta/recipes-support/attr/attr.inc
index 3503d66b9e1..54b1a81d904 100644
--- a/meta/recipes-support/attr/attr.inc
+++ b/meta/recipes-support/attr/attr.inc
@@ -8,22 +8,18 @@ LICENSE = "LGPLv2.1+ & GPLv2+"
 LICENSE_${PN} = "GPLv2+"
 LICENSE_lib${BPN} = "LGPLv2.1+"
 LIC_FILES_CHKSUM = "file://doc/COPYING;md5=2d0aa14b3fce4694e4f615e30186335f \
-                    file://attr/attr.c;endline=17;md5=be0403261f0847e5f43ed5b08d19593c \
+                    file://tools/attr.c;endline=17;md5=be0403261f0847e5f43ed5b08d19593c \
                     file://libattr/libattr.c;endline=17;md5=7970f77049f8fa1199fff62a7ab724fb"
 
-SRC_URI = "${SAVANNAH_GNU_MIRROR}/attr/${BP}.src.tar.gz \
+SRC_URI = "${SAVANNAH_GNU_MIRROR}/attr/${BP}.tar.gz \
            file://run-ptest \
 "
 
-require ea-acl.inc
+inherit ptest update-alternatives autotools gettext
 
-# libdir should point to .la
-do_install_append() {
-	sed -i ${D}${libdir}/libattr.la -e \
-	    s,^libdir=\'${base_libdir}\'$,libdir=\'${libdir}\',
-}
+PACKAGES =+ "lib${BPN}"
 
-inherit ptest update-alternatives
+FILES_lib${BPN} = "${libdir}/lib*${SOLIBS}"
 
 ALTERNATIVE_PRIORITY = "100"
 ALTERNATIVE_${PN} = "setfattr"
@@ -33,14 +29,27 @@ PTEST_BUILD_HOST_FILES = "builddefs"
 PTEST_BUILD_HOST_PATTERN = "^RPM"
 
 do_install_ptest() {
-	tar -c --exclude=ext test/ | ( cd ${D}${PTEST_PATH} && tar -xf - )
-	mkdir ${D}${PTEST_PATH}/include
-	for i in builddefs buildmacros buildrules; \
-	  do cp ${S}/include/$i ${D}${PTEST_PATH}/include/; \
-	done
-	sed -e 's|; @echo|; echo|' -i ${D}${PTEST_PATH}/test/Makefile
+        cp ${B}/Makefile ${D}${PTEST_PATH}
+        sed -i "s|^srcdir =.*|srcdir = \.|g" ${D}${PTEST_PATH}/Makefile
+        sed -i "s|^abs_srcdir =.*|abs_srcdir = \.|g" ${D}${PTEST_PATH}/Makefile
+        sed -i "s|^abs_top_srcdir =.*|abs_top_srcdir = \.\.|g" ${D}${PTEST_PATH}/Makefile
+        sed -i "s|^Makefile:.*|Makefile:|g" ${D}${PTEST_PATH}/Makefile
+	cp -rf ${S}/build-aux/ ${D}${PTEST_PATH}
+	cp -rf ${S}/test/ ${D}${PTEST_PATH}
 }
 
-RDEPENDS_${PN}-ptest = "attr coreutils perl-module-filehandle perl-module-getopt-std perl-module-posix make perl"
+RDEPENDS_${PN}-ptest = "attr \
+                        coreutils \
+                        perl-module-filehandle \
+                        perl-module-getopt-std \
+                        perl-module-posix \
+                        make \
+                        perl \
+                        gawk \
+                        perl-module-cwd \
+                        perl-module-file-basename \
+                        perl-module-file-path \
+                        perl-module-file-spec \
+                        "
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/attr/attr/0001-Use-stdint-types-consistently.patch b/meta/recipes-support/attr/attr/0001-Use-stdint-types-consistently.patch
deleted file mode 100644
index dcd6507bcc5..00000000000
--- a/meta/recipes-support/attr/attr/0001-Use-stdint-types-consistently.patch
+++ /dev/null
@@ -1,69 +0,0 @@
-From 37a27b6fd09ecb37097b85e5db74e4f77b80fe0a Mon Sep 17 00:00:00 2001
-From: Felix Janda <felix.janda@posteo.de>
-Date: Tue, 12 Jan 2016 22:20:33 +0100
-Subject: [PATCH] Use stdint types consistently
-
----
-Upstream-Status: Backport
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
- include/attributes.h | 6 ++++--
- man/man3/attr_list.3 | 8 ++++----
- 2 files changed, 8 insertions(+), 6 deletions(-)
-
-Index: attr-2.4.47/include/attributes.h
-===================================================================
---- attr-2.4.47.orig/include/attributes.h
-+++ attr-2.4.47/include/attributes.h
-@@ -22,6 +22,7 @@
- extern "C" {
- #endif
- 
-+#include <stdint.h>
- /*
-  *	An almost-IRIX-compatible extended attributes API
-  *	(the IRIX attribute "list" operation is missing, added ATTR_SECURE).
-@@ -69,7 +70,7 @@ typedef struct attrlist {
-  * al_offset[i] entry points to.
-  */
- typedef struct attrlist_ent {	/* data from attr_list() */
--	u_int32_t	a_valuelen;	/* number bytes in value of attr */
-+	uint32_t	a_valuelen;	/* number bytes in value of attr */
- 	char		a_name[1];	/* attr name (NULL terminated) */
- } attrlist_ent_t;
- 
-@@ -90,7 +91,7 @@ typedef struct attrlist_ent {	/* data fr
-  * operation on a cursor is to bzero() it.
-  */
- typedef struct attrlist_cursor {
--	u_int32_t	opaque[4];	/* an opaque cookie */
-+	uint32_t	opaque[4];	/* an opaque cookie */
- } attrlist_cursor_t;
- 
- /*
-Index: attr-2.4.47/man/man3/attr_list.3
-===================================================================
---- attr-2.4.47.orig/man/man3/attr_list.3
-+++ attr-2.4.47/man/man3/attr_list.3
-@@ -72,9 +72,9 @@ The contents of an \f4attrlist_t\fP stru
- .nf
- .ft 4
- .ta 9n 22n
--__int32_t al_count; /\(** number of entries in attrlist \(**/
--__int32_t al_more; /\(** T/F: more attrs (do syscall again) \(**/
--__int32_t al_offset[1]; /\(** byte offsets of attrs [var-sized] \(**/
-+int32_t al_count; /\(** number of entries in attrlist \(**/
-+int32_t al_more; /\(** T/F: more attrs (do syscall again) \(**/
-+int32_t al_offset[1]; /\(** byte offsets of attrs [var-sized] \(**/
- .ft 1
- .fi
- .RE
-@@ -113,7 +113,7 @@ include the following members:
- .nf
- .ft 4
- .ta 9n 22n
--u_int32_t a_valuelen; /\(** number bytes in value of attr \(**/
-+uint32_t a_valuelen; /\(** number bytes in value of attr \(**/
- char a_name[]; /\(** attr name (NULL terminated) \(**/
- .ft 1
- .fi
diff --git a/meta/recipes-support/attr/attr/attr-Missing-configure.ac.patch b/meta/recipes-support/attr/attr/attr-Missing-configure.ac.patch
deleted file mode 100644
index 20fcc3cee7b..00000000000
--- a/meta/recipes-support/attr/attr/attr-Missing-configure.ac.patch
+++ /dev/null
@@ -1,63 +0,0 @@
-Subject: [PATCH] attr: Missing configure.ac
-
-Upstream-Status: Backport [Upstream released tarball missing this file]
-Signed-off-by: Nathan Rossi <nathan.rossi@xilinx.com>
----
- configure.ac |   48 ++++++++++++++++++++++++++++++++++++++++++++++++
- 1 file changed, 48 insertions(+)
- create mode 100644 configure.ac
-
-diff --git a/configure.ac b/configure.ac
-new file mode 100644
-index 0000000..b966d0e
---- /dev/null
-+++ b/configure.ac
-@@ -0,0 +1,48 @@
-+# Copyright (C) 2009  Andreas Gruenbacher <agruen@suse.de>
-+#
-+# 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 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.
-+#
-+# You should have received a copy of the GNU General Public License
-+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-+#
-+AC_INIT(include/attributes.h)
-+AC_CONFIG_AUX_DIR([.])
-+AC_CONFIG_MACRO_DIR([m4])
-+AC_CONFIG_HEADER(include/config.h)
-+AC_PREFIX_DEFAULT(/usr)
-+
-+AC_PROG_LIBTOOL
-+
-+AC_ARG_ENABLE(shared,
-+[ --enable-shared=[yes/no] Enable use of shared libraries [default=yes]],,
-+	enable_shared=yes)
-+AC_SUBST(enable_shared)
-+
-+AC_ARG_ENABLE(gettext,
-+[ --enable-gettext=[yes/no] Enable alternate language support [default=yes]],,
-+	enable_gettext=yes)
-+AC_SUBST(enable_gettext)
-+
-+AC_ARG_ENABLE(lib64,
-+[ --enable-lib64=[yes/no] Enable lib64 support [default=no]],,
-+	enable_lib64=no)
-+AC_SUBST(enable_lib64)
-+
-+AC_PACKAGE_GLOBALS(attr)
-+AC_PACKAGE_UTILITIES(attr)
-+AC_MANUAL_FORMAT
-+AC_MULTILIB($enable_lib64)
-+
-+AC_C_CONST
-+AC_TYPE_MODE_T
-+AC_FUNC_ALLOCA
-+
-+AC_OUTPUT(include/builddefs)
diff --git a/meta/recipes-support/attr/attr/dont-use-decl-macros.patch b/meta/recipes-support/attr/attr/dont-use-decl-macros.patch
deleted file mode 100644
index 9d4b8929e89..00000000000
--- a/meta/recipes-support/attr/attr/dont-use-decl-macros.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-Use extern "C" instead of __BEGIN_DECL/__END_DECL macros
-these macros are defined in sys/cdefs.h for glibc and this header is not available on all libc
-
-anyway they defined like below
-
-#ifdef __cplusplus
-# define __BEGIN_DECLS extern "C" {
-# define __END_DECLS }
-#else
-# define __BEGIN_DECLS /* empty */
-# define __END_DECLS /* empty */
-#endif
-
-__THROW macro is also not available on musl, defined thusly
-
-Upstream-Status: Pending
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
-Index: attr-2.4.47/include/xattr.h
-===================================================================
---- attr-2.4.47.orig/include/xattr.h	2014-04-02 00:01:30.252091280 -0700
-+++ attr-2.4.47/include/xattr.h	2014-04-02 00:12:57.985428099 -0700
-@@ -30,8 +30,20 @@
- #define XATTR_CREATE  0x1       /* set value, fail if attr already exists */
- #define XATTR_REPLACE 0x2       /* set value, fail if attr does not exist */
- 
--
--__BEGIN_DECLS
-+#ifndef __THROW
-+# ifndef __GNUC_PREREQ
-+#  define __GNUC_PREREQ(maj, min) (0)
-+# endif
-+# if defined __cplusplus && __GNUC_PREREQ (2,8)
-+#  define __THROW       throw ()
-+# else
-+#  define __THROW
-+# endif
-+#endif
-+
-+#ifdef __cplusplus
-+extern "C" {
-+#endif
- 
- extern int setxattr (const char *__path, const char *__name,
- 		      const void *__value, size_t __size, int __flags) __THROW;
-@@ -58,6 +70,8 @@
- extern int lremovexattr (const char *__path, const char *__name) __THROW;
- extern int fremovexattr (int __filedes,   const char *__name) __THROW;
- 
--__END_DECLS
-+#ifdef __cplusplus
-+}
-+#endif
- 
- #endif	/* __XATTR_H__ */
diff --git a/meta/recipes-support/attr/attr/run-ptest b/meta/recipes-support/attr/attr/run-ptest
new file mode 100644
index 00000000000..f64244f2393
--- /dev/null
+++ b/meta/recipes-support/attr/attr/run-ptest
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+make test-suite.log
diff --git a/meta/recipes-support/attr/attr_2.4.47.bb b/meta/recipes-support/attr/attr_2.4.47.bb
deleted file mode 100644
index fc88bef830b..00000000000
--- a/meta/recipes-support/attr/attr_2.4.47.bb
+++ /dev/null
@@ -1,15 +0,0 @@
-require attr.inc
-
-# configure.ac was missing from the release tarball. This should be fixed in
-# future releases of attr, remove this when updating the recipe.
-SRC_URI += "file://attr-Missing-configure.ac.patch \
-            file://dont-use-decl-macros.patch \
-            file://Remove-the-section-2-man-pages.patch \
-            file://Remove-the-attr.5-man-page-moved-to-man-pages.patch \
-            file://0001-Use-stdint-types-consistently.patch \
-           "
-
-SRC_URI[md5sum] = "84f58dec00b60f2dc8fd1c9709291cc7"
-SRC_URI[sha256sum] = "25772f653ac5b2e3ceeb89df50e4688891e21f723c460636548971652af0a859"
-
-BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/attr/attr_2.4.48.bb b/meta/recipes-support/attr/attr_2.4.48.bb
new file mode 100644
index 00000000000..530d4e48833
--- /dev/null
+++ b/meta/recipes-support/attr/attr_2.4.48.bb
@@ -0,0 +1,6 @@
+require attr.inc
+
+SRC_URI[md5sum] = "bc1e5cb5c96d99b24886f1f527d3bb3d"
+SRC_URI[sha256sum] = "5ead72b358ec709ed00bbf7a9eaef1654baad937c001c044fe8b74c57f5324e7"
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-support/attr/ea-acl.inc b/meta/recipes-support/attr/ea-acl.inc
deleted file mode 100644
index 9336ffc9389..00000000000
--- a/meta/recipes-support/attr/ea-acl.inc
+++ /dev/null
@@ -1,52 +0,0 @@
-# this build system is mostly shared by attr and acl
-
-SRC_URI += "file://relative-libdir.patch;striplevel=0 \
-           "
-# This patch should be applied after '(attr\|acl)-Missing-configure.ac.patch' 
-SRC_URI_append = " file://0001-Added-configure-option-to-enable-disable-static-libr.patch"
-
-inherit autotools-brokensep gettext
-
-# When upstream is using automake properly, this can be removed
-CLEANBROKEN = "1"
-
-# the package comes with a custom config.h.in, it cannot be
-# overwritten by autoheader
-EXTRA_AUTORECONF += "--exclude=autoheader"
-EXTRA_OECONF = "INSTALL_USER=root INSTALL_GROUP=root"
-EXTRA_OECONF_append_class-native = " --enable-gettext=no"
-EXTRA_OECONF_append_class-target = "${@['', ' --disable-gettext '][(d.getVar('USE_NLS') == 'no')]}"
-
-EXTRA_OEMAKE = "PKG_LIB_DIR=${base_libdir} PKG_DEVLIB_DIR=${libdir}"
-
-do_install () {
-	oe_runmake install install-lib install-dev DIST_ROOT="${D}" ZIP="gzip -n"
-}
-
-do_install_append_class-native () {
-	if test "${libdir}" = "${base_libdir}" ; then
-		return
-	fi
-	librelpath=${@os.path.relpath(d.getVar('libdir'), d.getVar('base_libdir'))}
-	baselibrelpath=${@os.path.relpath(d.getVar('base_libdir'), d.getVar('libdir'))}
-
-	# Remove bad symlinks & create the correct symlinks
-	if test -L ${D}${libdir}/lib${BPN}.so ; then
-		rm -rf ${D}${libdir}/lib${BPN}.so
-		ln -sf $baselibrelpath/lib${BPN}.so ${D}${libdir}/lib${BPN}.so
-	fi
-	if test -L ${D}${base_libdir}/lib${BPN}.a ; then
-		rm -rf ${D}${base_libdir}/lib${BPN}.a
-		ln -sf $librelpath/lib${BPN}.a ${D}${base_libdir}/lib${BPN}.a
-	fi
-	if test -L  ${D}${base_libdir}/lib${BPN}.la ; then
-		rm -rf ${D}${base_libdir}/lib${BPN}.la
-		ln -sf $librelpath/lib${BPN}.la ${D}${base_libdir}/lib${BPN}.la
-	fi
-}
-
-PACKAGES =+ "lib${BPN}"
-
-FILES_lib${BPN} = "${base_libdir}/lib*${SOLIBS}"
-
-BBCLASSEXTEND = "native"
diff --git a/meta/recipes-support/attr/files/0001-Added-configure-option-to-enable-disable-static-libr.patch b/meta/recipes-support/attr/files/0001-Added-configure-option-to-enable-disable-static-libr.patch
deleted file mode 100644
index 1c1159f2c90..00000000000
--- a/meta/recipes-support/attr/files/0001-Added-configure-option-to-enable-disable-static-libr.patch
+++ /dev/null
@@ -1,70 +0,0 @@
-From 01256c61ba126449c46dd4ab5d5e145488b981fa Mon Sep 17 00:00:00 2001
-From: Amarnath Valluri <amarnath.valluri@intel.com>
-Date: Mon, 23 Jan 2017 13:25:13 +0200
-Subject: [PATCH] Added configure option to enable/disable static library
-
-Create static library archive only in case of --enable-static.
-
-Upstream-Status: Pending
-
-Signed-off-by: Amarnath Valluri <amarnath.valluri@intel.com>
----
- configure.ac         | 6 ++++++
- include/builddefs.in | 1 +
- include/buildmacros  | 3 +++
- 3 files changed, 10 insertions(+)
-
-diff --git a/configure.ac b/configure.ac
-index b966d0e..e48268b 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -26,6 +26,12 @@ AC_ARG_ENABLE(shared,
- 	enable_shared=yes)
- AC_SUBST(enable_shared)
- 
-+AC_ARG_ENABLE(static,
-+[ --enable-static=[yes/no] Enable use of static libraries [default=yes]],,
-+	enable_static=yes)
-+AC_SUBST(enable_static)
-+
-+
- AC_ARG_ENABLE(gettext,
- [ --enable-gettext=[yes/no] Enable alternate language support [default=yes]],,
- 	enable_gettext=yes)
-diff --git a/include/builddefs.in b/include/builddefs.in
-index d9931db..3b3dbd2 100644
---- a/include/builddefs.in
-+++ b/include/builddefs.in
-@@ -71,6 +71,7 @@ RPMBUILD	= @rpmbuild@
- RPM_VERSION	= @rpm_version@
- 
- ENABLE_SHARED	= @enable_shared@
-+ENABLE_STATIC 	= @enable_static@
- ENABLE_GETTEXT	= @enable_gettext@
- 
- HAVE_ZIPPED_MANPAGES = @have_zipped_manpages@
-diff --git a/include/buildmacros b/include/buildmacros
-index 39fa7e2..b0f25c5 100644
---- a/include/buildmacros
-+++ b/include/buildmacros
-@@ -80,6 +80,7 @@ endif
- # /usr/lib.
- ifeq ($(ENABLE_SHARED),yes)
- INSTALL_LTLIB_DEV = \
-+	set -x; \
- 	cd $(TOPDIR)/$(LIBNAME)/.libs; \
- 	../$(INSTALL) -m 755 -d $(PKG_DEVLIB_DIR); \
- 	../$(INSTALL) -m 644 -T old_lib $(LIBNAME).lai $(PKG_DEVLIB_DIR); \
-@@ -88,7 +89,9 @@ INSTALL_LTLIB_DEV = \
- 	../$(INSTALL) -T so_base $(LIBNAME).lai $(PKG_LIB_DIR); \
- 	if test "x$(PKG_DEVLIB_DIR)" != "x$(PKG_LIB_DIR)" ; then \
- 	rel_lib_prefix=$$(echo $(PKG_LIB_DIR) | sed 's,\(^/\|\)[^/][^/]*,..,g'); \
-+	if test "$(ENABLE_STATIC)" = "yes" ; then \
- 	../$(INSTALL) -S $$rel_lib_prefix$(PKG_DEVLIB_DIR)/$(LIBNAME).a $(PKG_LIB_DIR)/$(LIBNAME).a; \
-+	fi ;\
- 	../$(INSTALL) -S $$rel_lib_prefix$(PKG_DEVLIB_DIR)/$(LIBNAME).la $(PKG_LIB_DIR)/$(LIBNAME).la; \
- 	rel_devlib_prefix=$$(echo $(PKG_DEVLIB_DIR) | sed 's,\(^/\|\)[^/][^/]*,..,g'); \
- 	../$(INSTALL) -S $$rel_devlib_prefix$(PKG_LIB_DIR)/$(LIBNAME).so $(PKG_DEVLIB_DIR)/$(LIBNAME).so; \
--- 
-2.7.4
-
diff --git a/meta/recipes-support/attr/files/Remove-the-attr.5-man-page-moved-to-man-pages.patch b/meta/recipes-support/attr/files/Remove-the-attr.5-man-page-moved-to-man-pages.patch
deleted file mode 100644
index d5ab83d7c68..00000000000
--- a/meta/recipes-support/attr/files/Remove-the-attr.5-man-page-moved-to-man-pages.patch
+++ /dev/null
@@ -1,240 +0,0 @@
-From 6047c8522b91235ad1e835f44f5e36472d9d49b2 Mon Sep 17 00:00:00 2001
-From: Andreas Gruenbacher <andreas.gruenbacher@gmail.com>
-Date: Wed, 22 Apr 2015 11:46:59 +0200
-Subject: [PATCH 2/2] Remove the attr.5 man page (moved to man-pages)
-
-Commit dce9b4448c7f2b22bd206cd068fb05cb2f3255b9 from
-https://git.savannah.nongnu.org/git/attr.git
-
-The attr.5 page is part of the extended attribute system call documentation,
-which has been moved into the man-pages package. Move the attr.5 page there
-as well.
-
-Upstream-Status: Backport
-
-[MA: updated to apply directly to v2.4.47]
-Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com>
----
- man/Makefile      |   2 +-
- man/man5/Makefile |  35 -------------
- man/man5/attr.5   | 153 ------------------------------------------------------
- 3 files changed, 1 insertion(+), 189 deletions(-)
- delete mode 100644 man/man5/Makefile
- delete mode 100644 man/man5/attr.5
-
-diff --git a/man/Makefile b/man/Makefile
-index 755daed..9301f09 100644
---- a/man/Makefile
-+++ b/man/Makefile
-@@ -19,7 +19,7 @@
- TOPDIR = ..
- include $(TOPDIR)/include/builddefs
- 
--SUBDIRS = man1 man3 man5
-+SUBDIRS = man1 man3
- 
- default : $(SUBDIRS)
- 
-diff --git a/man/man5/Makefile b/man/man5/Makefile
-deleted file mode 100644
-index 6b70d3d..0000000
---- a/man/man5/Makefile
-+++ /dev/null
-@@ -1,35 +0,0 @@
--#
--# Copyright (c) 2000, 2002 Silicon Graphics, Inc.  All Rights Reserved.
--# Copyright (C) 2009  Andreas Gruenbacher <agruen@suse.de>
--#
--# 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 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.
--#
--# You should have received a copy of the GNU General Public License
--# along with this program.  If not, see <http://www.gnu.org/licenses/>.
--#
--
--TOPDIR = ../..
--include $(TOPDIR)/include/builddefs
--
--MAN_SECTION	= 5
--
--MAN_PAGES	= $(shell echo *.$(MAN_SECTION))
--MAN_DEST	= $(PKG_MAN_DIR)/man$(MAN_SECTION)
--LSRCFILES	= $(MAN_PAGES)
--
--default : $(MAN_PAGES)
--
--include $(BUILDRULES)
--
--install : default
--	$(INSTALL) -m 755 -d $(MAN_DEST)
--	$(INSTALL_MAN)
--install-dev install-lib:
-diff --git a/man/man5/attr.5 b/man/man5/attr.5
-deleted file mode 100644
-index a02757d..0000000
---- a/man/man5/attr.5
-+++ /dev/null
-@@ -1,153 +0,0 @@
--.\" Extended attributes manual page
--.\"
--.\" Copyright (C) 2000, 2002, 2007  Andreas Gruenbacher <agruen@suse.de>
--.\" Copyright (C) 2001, 2002, 2004, 2007 Silicon Graphics, Inc.
--.\" All rights reserved.
--.\"
--.\" This is free documentation; 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 2 of
--.\" the License, or (at your option) any later version.
--.\"
--.\" The GNU General Public License's references to "object code"
--.\" and "executables" are to be interpreted as the output of any
--.\" document formatting or typesetting system, including
--.\" intermediate and printed output.
--.\"
--.\" This manual 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.
--.\"
--.\" You should have received a copy of the GNU General Public
--.\" License along with this manual.  If not, see
--.\" <http://www.gnu.org/licenses/>.
--.\"
--.TH ATTR 5
--.SH NAME
--attr - Extended attributes
--.SH DESCRIPTION
--Extended attributes are name:value pairs associated permanently with
--files and directories, similar to the environment strings associated
--with a process.
--An attribute may be defined or undefined.
--If it is defined, its value may be empty or non-empty.
--.PP
--Extended attributes are extensions to the normal attributes which are
--associated with all inodes in the system (i.e. the
--.BR stat (2)
--data).
--They are often used to provide additional functionality
--to a filesystem \- for example, additional security features such as
--Access Control Lists (ACLs) may be implemented using extended attributes.
--.PP
--Users with search access to a file or directory may retrieve a list of
--attribute names defined for that file or directory.
--.PP
--Extended attributes are accessed as atomic objects.
--Reading retrieves the whole value of an attribute and stores it in a buffer.
--Writing replaces any previous value with the new value.
--.PP
--Space consumed for extended attributes is counted towards the disk quotas
--of the file owner and file group.
--.PP
--Currently, support for extended attributes is implemented on Linux by the
--ext2, ext3, ext4, XFS, JFS and reiserfs filesystems.
--.SH EXTENDED ATTRIBUTE NAMESPACES
--Attribute names are zero-terminated strings.
--The attribute name is always specified in the fully qualified
--.IR namespace.attribute
--form, eg.
--.IR user.mime_type ,
--.IR trusted.md5sum ,
--.IR system.posix_acl_access ,
--or
--.IR security.selinux .
--.PP
--The namespace mechanism is used to define different classes of extended
--attributes.
--These different classes exist for several reasons, e.g. the permissions
--and capabilities required for manipulating extended attributes of one
--namespace may differ to another.
--.PP
--Currently the
--.IR security ,
--.IR system ,
--.IR trusted ,
--and
--.IR user
--extended attribute classes are defined as described below. Additional
--classes may be added in the future.
--.SS Extended security attributes
--The security attribute namespace is used by kernel security modules,
--such as Security Enhanced Linux.  
--Read and write access permissions to security attributes depend on the
--policy implemented for each security attribute by the security module.
--When no security module is loaded, all processes have read access to
--extended security attributes, and write access is limited to processes
--that have the CAP_SYS_ADMIN capability.
--.SS Extended system attributes
--Extended system attributes are used by the kernel to store system
--objects such as Access Control Lists and Capabilities.  Read and write
--access permissions to system attributes depend on the policy implemented
--for each system attribute implemented by filesystems in the kernel.
--.SS Trusted extended attributes
--Trusted extended attributes are visible and accessible only to processes that
--have the CAP_SYS_ADMIN capability (the super user usually has this
--capability).
--Attributes in this class are used to implement mechanisms in user
--space (i.e., outside the kernel) which keep information in extended attributes
--to which ordinary processes should not have access.
--.SS Extended user attributes
--Extended user attributes may be assigned to files and directories for
--storing arbitrary additional information such as the mime type,
--character set or encoding of a file. The access permissions for user
--attributes are defined by the file permission bits.
--.PP
--The file permission bits of regular files and directories are
--interpreted differently from the file permission bits of special files
--and symbolic links. For regular files and directories the file
--permission bits define access to the file's contents, while for device special
--files they define access to the device described by the special file.
--The file permissions of symbolic links are not used in access
--checks. These differences would allow users to consume filesystem resources in
--a way not controllable by disk quotas for group or world writable special files and directories.
--.PP
--For this reason, extended user attributes are only allowed for regular files and directories, and access to extended user attributes is restricted to the
--owner and to users with appropriate capabilities for directories with the
--sticky bit set (see the
--.BR chmod (1)
--manual page for an explanation of Sticky Directories).
--.SH FILESYSTEM DIFFERENCES
--The kernel and the filesystem may place limits on the maximum number
--and size of extended attributes that can be associated with a file.
--Some file systems, such as ext2/3 and reiserfs, require the filesystem
--to be mounted with the
--.B user_xattr
--mount option in order for extended user attributes to be used.
--.PP
--In the current ext2, ext3 and ext4 filesystem implementations, each
--extended attribute must fit on a single filesystem block (1024, 2048
--or 4096 bytes, depending on the block size specified when the
--filesystem was created).
--.PP
--In the XFS and reiserfs filesystem implementations, there is no
--practical limit on the number or size of extended attributes
--associated with a file, and the algorithms used to store extended
--attribute information on disk are scalable.
--.PP
--In the JFS filesystem implementation, names can be up to 255 bytes and
--values up to 65,535 bytes.
--.SH ADDITIONAL NOTES
--Since the filesystems on which extended attributes are stored might also
--be used on architectures with a different byte order and machine word
--size, care should be taken to store attribute values in an architecture
--independent format.
--.SH AUTHORS
--Andreas Gruenbacher,
--.RI < a.gruenbacher@bestbits.at >
--and the SGI XFS development team,
--.RI < linux-xfs@oss.sgi.com >.
--.SH SEE ALSO
--getfattr(1),
--setfattr(1).
--- 
-2.7.4
-
diff --git a/meta/recipes-support/attr/files/Remove-the-section-2-man-pages.patch b/meta/recipes-support/attr/files/Remove-the-section-2-man-pages.patch
deleted file mode 100644
index 044c5a037c8..00000000000
--- a/meta/recipes-support/attr/files/Remove-the-section-2-man-pages.patch
+++ /dev/null
@@ -1,666 +0,0 @@
-From b972600a26f3a930e53e2fce2625266a5d29813e Mon Sep 17 00:00:00 2001
-From: Andreas Gruenbacher <andreas.gruenbacher@gmail.com>
-Date: Tue, 14 Apr 2015 23:53:11 +0200
-Subject: [PATCH 1/2] Remove the section 2 man pages
-
-Commit 8d1263bca95722d66a6f8e83450f49d0956ea534 from upstream
-https://git.savannah.nongnu.org/git/attr.git/
-
-The section 2 man pages have long since been added to the man-pages package
-which documents all system calls; they were disabled in attr by default since
-January 2014.  Get rid of them here.
-
-Upstream-Status: Backport
-
-[MA: modified to apply directly to v2.4.47]
-Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com>
----
- man/Makefile           |   2 +-
- man/man2/Makefile      |  35 -----------
- man/man2/getxattr.2    | 143 --------------------------------------------
- man/man2/listxattr.2   | 158 -------------------------------------------------
- man/man2/removexattr.2 | 111 ----------------------------------
- man/man2/setxattr.2    | 143 --------------------------------------------
- 6 files changed, 1 insertion(+), 591 deletions(-)
- delete mode 100644 man/man2/Makefile
- delete mode 100644 man/man2/getxattr.2
- delete mode 100644 man/man2/listxattr.2
- delete mode 100644 man/man2/removexattr.2
- delete mode 100644 man/man2/setxattr.2
-
-diff --git a/man/Makefile b/man/Makefile
-index 9535426..755daed 100644
---- a/man/Makefile
-+++ b/man/Makefile
-@@ -19,7 +19,7 @@
- TOPDIR = ..
- include $(TOPDIR)/include/builddefs
- 
--SUBDIRS = man1 man2 man3 man5
-+SUBDIRS = man1 man3 man5
- 
- default : $(SUBDIRS)
- 
-diff --git a/man/man2/Makefile b/man/man2/Makefile
-deleted file mode 100644
-index d77309d..0000000
---- a/man/man2/Makefile
-+++ /dev/null
-@@ -1,35 +0,0 @@
--#
--# Copyright (c) 2000-2002 Silicon Graphics, Inc.  All Rights Reserved.
--# Copyright (C) 2009  Andreas Gruenbacher <agruen@suse.de>
--#
--# 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 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.
--#
--# You should have received a copy of the GNU General Public License
--# along with this program.  If not, see <http://www.gnu.org/licenses/>.
--#
--
--TOPDIR = ../..
--include $(TOPDIR)/include/builddefs
--
--MAN_SECTION	= 2
--
--MAN_PAGES	= $(shell echo *.$(MAN_SECTION))
--MAN_DEST	= $(PKG_MAN_DIR)/man$(MAN_SECTION)
--LSRCFILES	= $(MAN_PAGES)
--
--default install : $(MAN_PAGES)
--
--include $(BUILDRULES)
--
--install-dev : default
--	$(INSTALL) -m 755 -d $(MAN_DEST)
--	$(INSTALL_MAN)
--install-lib:
-diff --git a/man/man2/getxattr.2 b/man/man2/getxattr.2
-deleted file mode 100644
-index 405ad89..0000000
---- a/man/man2/getxattr.2
-+++ /dev/null
-@@ -1,143 +0,0 @@
--.\"
--.\" Extended attributes system calls manual pages
--.\"
--.\" (C) Andreas Gruenbacher, February 2001
--.\" (C) Silicon Graphics Inc, September 2001
--.\"
--.\" This is free documentation; 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 2 of
--.\" the License, or (at your option) any later version.
--.\"
--.\" The GNU General Public License's references to "object code"
--.\" and "executables" are to be interpreted as the output of any
--.\" document formatting or typesetting system, including
--.\" intermediate and printed output.
--.\"
--.\" This manual 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.
--.\"
--.\" You should have received a copy of the GNU General Public
--.\" License along with this manual.  If not, see
--.\" <http://www.gnu.org/licenses/>.
--.\"
--.TH GETXATTR 2 "Extended Attributes" "Dec 2001" "System calls"
--.SH NAME
--getxattr, lgetxattr, fgetxattr \- retrieve an extended attribute value
--.SH SYNOPSIS
--.fam C
--.nf
--.B #include <sys/types.h>
--.B #include <attr/xattr.h>
--.sp
--.BI "ssize_t getxattr (const char\ *" path ", const char\ *" name ",
--.BI "\t\t\t\t void\ *" value ", size_t " size );
--.BI "ssize_t lgetxattr (const char\ *" path ", const char\ *" name ",
--.BI "\t\t\t\t void\ *" value ", size_t " size );
--.BI "ssize_t fgetxattr (int " filedes ", const char\ *" name ",
--.BI "\t\t\t\t void\ *" value ", size_t " size );
--.fi
--.fam T
--.SH DESCRIPTION
--Extended attributes are
--.IR name :\c
--.I value
--pairs associated with inodes (files, directories, symlinks, etc).
--They are extensions to the normal attributes which are associated
--with all inodes in the system (i.e. the
--.BR stat (2)
--data).
--A complete overview of extended attributes concepts can be found in
--.BR attr (5).
--.PP
--.B getxattr
--retrieves the
--.I value
--of the extended attribute identified by
--.I name
--and associated with the given
--.I path
--in the filesystem.
--The length of the attribute
--.I value
--is returned.
--.PP
--.B lgetxattr
--is identical to 
--.BR getxattr ,
--except in the case of a symbolic link, where the link itself is
--interrogated, not the file that it refers to.
--.PP
--.B fgetxattr
--is identical to
--.BR getxattr ,
--only the open file pointed to by
--.I filedes
--(as returned by
--.BR open (2))
--is interrogated in place of
--.IR path .
--.PP
--An extended attribute
--.I name
--is a simple NULL-terminated string.
--The name includes a namespace prefix \- there may be several, disjoint
--namespaces associated with an individual inode.
--The value of an extended attribute is a chunk of arbitrary textual or
--binary data of specified length.
--.PP
--An empty buffer of
--.I size
--zero can be passed into these calls to return the current size of the
--named extended attribute, which can be used to estimate the size of a
--buffer which is sufficiently large to hold the value associated with
--the extended attribute.
--.PP
--The interface is designed to allow guessing of initial buffer
--sizes, and to enlarge buffers when the return value indicates
--that the buffer provided was too small.
--.SH RETURN VALUE
--On success, a positive number is returned indicating the size of the
--extended attribute value.
--On failure, \-1 is returned and
--.I errno
--is set appropriately.
--.PP
--If the named attribute does not exist, or the process has no access to
--this attribute,
--.I errno
--is set to ENOATTR.
--.PP
--If the
--.I size
--of the
--.I value
--buffer is too small to hold the result,
--.I errno
--is set to ERANGE.
--.PP
--If extended attributes are not supported by the filesystem, or are disabled,
--.I errno
--is set to ENOTSUP.
--.PP
--The errors documented for the
--.BR stat (2)
--system call are also applicable here.
--.SH AUTHORS
--Andreas Gruenbacher,
--.RI < a.gruenbacher@bestbits.at >
--and the SGI XFS development team,
--.RI < linux-xfs@oss.sgi.com >.
--Please send any bug reports or comments to these addresses.
--.SH SEE ALSO
--.BR getfattr (1),
--.BR setfattr (1),
--.BR open (2),
--.BR stat (2),
--.BR setxattr (2),
--.BR listxattr (2),
--.BR removexattr (2),
--and
--.BR attr (5).
-diff --git a/man/man2/listxattr.2 b/man/man2/listxattr.2
-deleted file mode 100644
-index 8b4371c..0000000
---- a/man/man2/listxattr.2
-+++ /dev/null
-@@ -1,158 +0,0 @@
--.\"
--.\" Extended attributes system calls manual pages
--.\"
--.\" (C) Andreas Gruenbacher, February 2001
--.\" (C) Silicon Graphics Inc, September 2001
--.\"
--.\" This is free documentation; 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 2 of
--.\" the License, or (at your option) any later version.
--.\"
--.\" The GNU General Public License's references to "object code"
--.\" and "executables" are to be interpreted as the output of any
--.\" document formatting or typesetting system, including
--.\" intermediate and printed output.
--.\"
--.\" This manual 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.
--.\"
--.\" You should have received a copy of the GNU General Public
--.\" License along with this manual.  If not, see
--.\" <http://www.gnu.org/licenses/>.
--.\"
--.TH LISTXATTR 2 "Extended Attributes" "Dec 2001" "System calls"
--.SH NAME
--listxattr, llistxattr, flistxattr \- list extended attribute names
--.SH SYNOPSIS
--.fam C
--.nf
--.B #include <sys/types.h>
--.B #include <attr/xattr.h>
--.sp
--.BI "ssize_t listxattr (const char\ *" path ",
--.BI "\t\t\t\t char\ *" list ", size_t " size );
--.BI "ssize_t llistxattr (const char\ *" path ",
--.BI "\t\t\t\t char\ *" list ", size_t " size );
--.BI "ssize_t flistxattr (int " filedes ",
--.BI "\t\t\t\t char\ *" list ", size_t " size );
--.fi
--.fam T
--.SH DESCRIPTION
--Extended attributes are name:value
--pairs associated with inodes (files, directories, symlinks, etc).
--They are extensions to the normal attributes which are associated
--with all inodes in the system (i.e. the
--.BR stat (2)
--data).
--A complete overview of extended attributes concepts can be found in
--.BR attr (5).
--.PP
--.B listxattr
--retrieves the
--.I list
--of extended attribute names associated with the given
--.I path
--in the filesystem.
--The list is the set of (NULL-terminated) names, one after the other.
--Names of extended attributes to which the calling process does not
--have access may be omitted from the list.
--The length of the attribute name
--.I list
--is returned.
--.PP
--.B llistxattr
--is identical to
--.BR listxattr ,
--except in the case of a symbolic link, where the list of names of
--extended attributes associated with the link itself is retrieved,
--not the file that it refers to.
--.I list
--is a caller-allocated buffer of size
--.IR size .
--.PP
--.B flistxattr
--is identical to
--.BR listxattr ,
--only the open file pointed to by
--.I filedes
--(as returned by
--.BR open (2))
--is interrogated in place of
--.IR path .
--.PP
--A single extended attribute
--.I name
--is a simple NULL-terminated string.
--The name includes a namespace prefix \- there may be several, disjoint
--namespaces associated with an individual inode.
--.PP
--An empty buffer of
--.I size
--zero can be passed into these calls to return the current size of the
--list of extended attribute names, which can be used to estimate the
--size of a buffer which is sufficiently large to hold the list of names.
--.SH EXAMPLES
--The
--.I list
--of names is returned as an unordered array of NULL-terminated character
--strings (attribute names are separated by NULL characters), like this:
--.fam C
--.RS
--.nf
--user.name1\\0system.name1\\0user.name2\\0
--.fi
--.RE
--.fam T
--.P
--Filesystems like ext2, ext3 and XFS which implement POSIX ACLs using
--extended attributes, might return a
--.I list
--like this:
--.fam C
--.RS
--.nf
--system.posix_acl_access\\0system.posix_acl_default\\0
--.fi
--.RE
--.fam T
--.SH RETURN VALUE
--On success, a positive number is returned indicating the size of the
--extended attribute name list.
--On failure, \-1 is returned and
--.I errno
--is set appropriately.
--.PP
--If the
--.I size
--of the
--.I list
--buffer is too small to hold the result,
--.I errno
--is set to ERANGE.
--.PP
--If extended attributes are not supported by the filesystem, or are disabled,
--.I errno
--is set to ENOTSUP.
--.PP
--The errors documented for the
--.BR stat (2)
--system call are also applicable here.
--.SH AUTHORS
--Andreas Gruenbacher,
--.RI < a.gruenbacher@bestbits.at >
--and the SGI XFS development team,
--.RI < linux-xfs@oss.sgi.com >.
--Please send any bug reports or comments to these addresses.
--.SH SEE ALSO
--.BR getfattr (1),
--.BR setfattr (1),
--.BR open (2),
--.BR stat (2),
--.BR getxattr (2),
--.BR setxattr (2),
--.BR removexattr (2),
--and
--.BR attr (5).
-diff --git a/man/man2/removexattr.2 b/man/man2/removexattr.2
-deleted file mode 100644
-index 2c7d934..0000000
---- a/man/man2/removexattr.2
-+++ /dev/null
-@@ -1,111 +0,0 @@
--.\"
--.\" Extended attributes system calls manual pages
--.\"
--.\" (C) Andreas Gruenbacher, February 2001
--.\" (C) Silicon Graphics Inc, September 2001
--.\"
--.\" This is free documentation; 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 2 of
--.\" the License, or (at your option) any later version.
--.\"
--.\" The GNU General Public License's references to "object code"
--.\" and "executables" are to be interpreted as the output of any
--.\" document formatting or typesetting system, including
--.\" intermediate and printed output.
--.\"
--.\" This manual 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.
--.\"
--.\" You should have received a copy of the GNU General Public
--.\" License along with this manual.  If not, see
--.\" <http://www.gnu.org/licenses/>.
--.\"
--.TH REMOVEXATTR 2 "Extended Attributes" "Dec 2001" "System calls"
--.SH NAME
--removexattr, lremovexattr, fremovexattr \- remove an extended attribute
--.SH SYNOPSIS
--.fam C
--.nf
--.B #include <sys/types.h>
--.B #include <attr/xattr.h>
--.sp
--.BI "int removexattr (const char\ *" path ", const char\ *" name );
--.BI "int lremovexattr (const char\ *" path ", const char\ *" name );
--.BI "int fremovexattr (int " filedes ", const char\ *" name );
--.fi
--.fam T
--.SH DESCRIPTION
--Extended attributes are
--.IR name :\c
--value pairs associated with inodes (files, directories, symlinks, etc).
--They are extensions to the normal attributes which are associated
--with all inodes in the system (i.e. the
--.BR stat (2)
--data).
--A complete overview of extended attributes concepts can be found in
--.BR attr (5).
--.PP
--.B removexattr
--removes the extended attribute identified by
--.I name
--and associated with the given
--.I path
--in the filesystem.
--.PP
--.B lremovexattr
--is identical to 
--.BR removexattr ,
--except in the case of a symbolic link, where the extended attribute is
--removed from the link itself, not the file that it refers to.
--.PP
--.B fremovexattr
--is identical to
--.BR removexattr ,
--only the extended attribute is removed from the open file pointed to by
--.I filedes
--(as returned by
--.BR open (2))
--in place of
--.IR path .
--.PP
--An extended attribute name is a simple NULL-terminated string.
--The
--.I name
--includes a namespace prefix \- there may be several, disjoint
--namespaces associated with an individual inode.
--.SH RETURN VALUE
--On success, zero is returned.
--On failure, \-1 is returned and
--.I errno
--is set appropriately.
--.PP
--If the named attribute does not exist,
--.I errno
--is set to ENOATTR.
--.PP
--If extended attributes are not supported by the filesystem, or are disabled,
--.I errno
--is set to ENOTSUP.
--.PP
--The errors documented for the
--.BR stat (2)
--system call are also applicable here.
--.SH AUTHORS
--Andreas Gruenbacher,
--.RI < a.gruenbacher@bestbits.at >
--and the SGI XFS development team,
--.RI < linux-xfs@oss.sgi.com >.
--Please send any bug reports or comments to these addresses.
--.SH SEE ALSO
--.BR getfattr (1),
--.BR setfattr (1),
--.BR open (2),
--.BR stat (2),
--.BR setxattr (2),
--.BR getxattr (2),
--.BR listxattr (2),
--and
--.BR attr (5).
-diff --git a/man/man2/setxattr.2 b/man/man2/setxattr.2
-deleted file mode 100644
-index b20dc9f..0000000
---- a/man/man2/setxattr.2
-+++ /dev/null
-@@ -1,143 +0,0 @@
--.\"
--.\" Extended attributes system calls manual pages
--.\"
--.\" (C) Andreas Gruenbacher, February 2001
--.\" (C) Silicon Graphics Inc, September 2001
--.\"
--.\" This is free documentation; 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 2 of
--.\" the License, or (at your option) any later version.
--.\"
--.\" The GNU General Public License's references to "object code"
--.\" and "executables" are to be interpreted as the output of any
--.\" document formatting or typesetting system, including
--.\" intermediate and printed output.
--.\"
--.\" This manual 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.
--.\"
--.\" You should have received a copy of the GNU General Public
--.\" License along with this manual.  If not, see
--.\" <http://www.gnu.org/licenses/>.
--.\"
--.TH SETXATTR 2 "Extended Attributes" "Dec 2001" "System calls"
--.SH NAME
--setxattr, lsetxattr, fsetxattr \- set an extended attribute value
--.SH SYNOPSIS
--.fam C
--.nf
--.B #include <sys/types.h>
--.B #include <attr/xattr.h>
--.sp
--.BI "int setxattr (const char\ *" path ", const char\ *" name ",
--.BI "\t\t\t const void\ *" value ", size_t " size ", int " flags );
--.BI "int lsetxattr (const char\ *" path ", const char\ *" name ",
--.BI "\t\t\t const void\ *" value ", size_t " size ", int " flags );
--.BI "int fsetxattr (int " filedes ", const char\ *" name ",
--.BI "\t\t\t const void\ *" value ", size_t " size ", int " flags );
--.fi
--.fam T
--.SH DESCRIPTION
--Extended attributes are
--.IR name :\c
--.I value
--pairs associated with inodes (files, directories, symlinks, etc).
--They are extensions to the normal attributes which are associated
--with all inodes in the system (i.e. the
--.BR stat (2)
--data).
--A complete overview of extended attributes concepts can be found in
--.BR attr (5).
--.PP
--.B setxattr
--sets the
--.I value
--of the extended attribute identified by
--.I name
--and associated with the given
--.I path
--in the filesystem.
--The
--.I size
--of the
--.I value
--must be specified.
--.PP
--.B lsetxattr
--is identical to 
--.BR setxattr ,
--except in the case of a symbolic link, where the extended attribute is
--set on the link itself, not the file that it refers to.
--.PP
--.B fsetxattr
--is identical to
--.BR setxattr ,
--only the extended attribute is set on the open file pointed to by
--.I filedes
--(as returned by
--.BR open (2))
--in place of
--.IR path .
--.PP
--An extended attribute name is a simple NULL-terminated string.
--The
--.I name
--includes a namespace prefix \- there may be several, disjoint
--namespaces associated with an individual inode.
--The
--.I value
--of an extended attribute is a chunk of arbitrary textual or
--binary data of specified length.
--.PP
--The
--.I flags
--parameter can be used to refine the semantics of the operation.
--XATTR_CREATE specifies a pure create, which fails if the named
--attribute exists already.
--XATTR_REPLACE specifies a pure replace operation, which fails if the
--named attribute does not already exist.
--By default (no flags), the extended attribute will be created if
--need be, or will simply replace the value if the attribute exists.
--.SH RETURN VALUE
--On success, zero is returned.
--On failure, \-1 is returned and
--.I errno
--is set appropriately.
--.PP
--If XATTR_CREATE is specified, and the attribute exists already,
--.I errno
--is set to EEXIST.
--If XATTR_REPLACE is specified, and the attribute does not exist,
--.I errno
--is set to ENOATTR.
--.PP
--If there is insufficient space remaining to store the extended attribute,
--.I errno
--is set to either ENOSPC, or EDQUOT if quota enforcement was the cause.
--.PP
--If extended attributes are not supported by the filesystem, or are disabled,
--.I errno
--is set to ENOTSUP.
--.PP
--The errors documented for the
--.BR stat (2)
--system call are also applicable here.
--.SH AUTHORS
--Andreas Gruenbacher,
--.RI < a.gruenbacher@bestbits.at >
--and the SGI XFS development team,
--.RI < linux-xfs@oss.sgi.com >.
--Please send any bug reports or comments to these addresses.
--.SH SEE ALSO
--.BR getfattr (1),
--.BR setfattr (1),
--.BR open (2),
--.BR stat (2),
--.BR getxattr (2),
--.BR listxattr (2),
--.BR removexattr (2),
--and
--.BR attr (5).
--- 
-2.7.4
-
diff --git a/meta/recipes-support/attr/files/relative-libdir.patch b/meta/recipes-support/attr/files/relative-libdir.patch
deleted file mode 100644
index b72bf184d6f..00000000000
--- a/meta/recipes-support/attr/files/relative-libdir.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-Upstream-Status: Pending
-
-use relative path in symbolic links, or it fails in staging
-sed expression from udev
-
-7/29/2010 - created by Qing He <qing.he@intel.com>
-
-diff -u include.orig/buildmacros include/buildmacros
---- include.orig/buildmacros	2010-07-29 17:39:48.000000000 +0800
-+++ include/buildmacros	2010-07-29 18:20:34.000000000 +0800
-@@ -88,9 +88,11 @@
- 	../$(INSTALL) -m 755 -d $(PKG_LIB_DIR); \
- 	../$(INSTALL) -T so_base $(LIBNAME).lai $(PKG_LIB_DIR); \
- 	if test "x$(PKG_DEVLIB_DIR)" != "x$(PKG_LIB_DIR)" ; then \
--	../$(INSTALL) -S $(PKG_DEVLIB_DIR)/$(LIBNAME).a $(PKG_LIB_DIR)/$(LIBNAME).a; \
--	../$(INSTALL) -S $(PKG_DEVLIB_DIR)/$(LIBNAME).la $(PKG_LIB_DIR)/$(LIBNAME).la; \
--	../$(INSTALL) -S $(PKG_LIB_DIR)/$(LIBNAME).so $(PKG_DEVLIB_DIR)/$(LIBNAME).so; \
-+	rel_lib_prefix=$$(echo $(PKG_LIB_DIR) | sed 's,\(^/\|\)[^/][^/]*,..,g'); \
-+	../$(INSTALL) -S $$rel_lib_prefix$(PKG_DEVLIB_DIR)/$(LIBNAME).a $(PKG_LIB_DIR)/$(LIBNAME).a; \
-+	../$(INSTALL) -S $$rel_lib_prefix$(PKG_DEVLIB_DIR)/$(LIBNAME).la $(PKG_LIB_DIR)/$(LIBNAME).la; \
-+	rel_devlib_prefix=$$(echo $(PKG_DEVLIB_DIR) | sed 's,\(^/\|\)[^/][^/]*,..,g'); \
-+	../$(INSTALL) -S $$rel_devlib_prefix$(PKG_LIB_DIR)/$(LIBNAME).so $(PKG_DEVLIB_DIR)/$(LIBNAME).so; \
- 	fi
- else
- INSTALL_LTLIB_DEV = $(INSTALL_LTLIB_STATIC)
diff --git a/meta/recipes-support/attr/files/run-ptest b/meta/recipes-support/attr/files/run-ptest
deleted file mode 100644
index a6c6867f2d9..00000000000
--- a/meta/recipes-support/attr/files/run-ptest
+++ /dev/null
@@ -1,5 +0,0 @@
-#!/bin/sh
-
-make -C test -k tests root-tests |sed \
- -e 's|^\[.*\] \(.*\) -- ok$|PASS: \1|' \
- -e 's|^\[.*\] \(.*\) -- failed|FAIL: \1|'
-- 
2.17.1



^ permalink raw reply	[flat|nested] 64+ messages in thread

* [PATCH 08/28] pseudo: adjust for attr 2.4.48
  2020-01-08 13:27 [PATCH 01/28] rpm: upgrade to 4.15.1 Alexander Kanavin
                   ` (5 preceding siblings ...)
  2020-01-08 13:27 ` [PATCH 07/28] acl/attr: update to latest upstream releases Alexander Kanavin
@ 2020-01-08 13:27 ` Alexander Kanavin
  2020-01-08 13:27 ` [PATCH 09/28] ltp: update to 20190930 Alexander Kanavin
                   ` (20 subsequent siblings)
  27 siblings, 0 replies; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-08 13:27 UTC (permalink / raw)
  To: openembedded-core

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
 ...xattr-adjust-for-attr-2.4.48-release.patch | 48 +++++++++++++++++++
 meta/recipes-devtools/pseudo/pseudo_git.bb    |  1 +
 2 files changed, 49 insertions(+)
 create mode 100644 meta/recipes-devtools/pseudo/files/0006-xattr-adjust-for-attr-2.4.48-release.patch

diff --git a/meta/recipes-devtools/pseudo/files/0006-xattr-adjust-for-attr-2.4.48-release.patch b/meta/recipes-devtools/pseudo/files/0006-xattr-adjust-for-attr-2.4.48-release.patch
new file mode 100644
index 00000000000..161357d5530
--- /dev/null
+++ b/meta/recipes-devtools/pseudo/files/0006-xattr-adjust-for-attr-2.4.48-release.patch
@@ -0,0 +1,48 @@
+From 93d95ed2eaedcca110c214e1fe3f8896b1f6f853 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Tue, 17 Dec 2019 20:24:27 +0100
+Subject: [PATCH] xattr: adjust for attr 2.4.48 release
+
+Latest versions of attr have removed the xattr.h header,
+with the rationale that libc is providing the same wrappers.
+
+attr/attributes.h is providing the ENOATTR definition.
+
+Upstream-Status: Pending
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+---
+ ports/linux/subports         | 5 +++--
+ ports/linux/xattr/portdefs.h | 3 ++-
+ 2 files changed, 5 insertions(+), 3 deletions(-)
+
+diff --git a/ports/linux/subports b/ports/linux/subports
+index 2c43ac9..740ec83 100755
+--- a/ports/linux/subports
++++ b/ports/linux/subports
+@@ -29,11 +29,12 @@ fi
+ if	$port_xattr; then
+ 	cat > dummy.c <<EOF
+ #include <sys/types.h>
+-#include <attr/xattr.h>
++#include <sys/xattr.h>
++#include <attr/attributes.h>
+ int i;
+ EOF
+ 	if ! ${CC} -c -o dummy.o dummy.c >/dev/null 2>&1; then
+-		echo >&2 "Warning: Can't compile trivial program using <attr/xattr.h>".
++		echo >&2 "Warning: Can't compile trivial program using <attr/attributes.h>".
+ 		echo >&2 "         xattr support will require that header."
+ 	fi
+ 	echo "linux/xattr"
+diff --git a/ports/linux/xattr/portdefs.h b/ports/linux/xattr/portdefs.h
+index 56cd3ca..068d39a 100644
+--- a/ports/linux/xattr/portdefs.h
++++ b/ports/linux/xattr/portdefs.h
+@@ -2,5 +2,6 @@
+  * SPDX-License-Identifier: LGPL-2.1-only
+  *
+  */
+-#include <attr/xattr.h>
++#include <sys/xattr.h>
++#include <attr/attributes.h>
+ #include <stdint.h>
diff --git a/meta/recipes-devtools/pseudo/pseudo_git.bb b/meta/recipes-devtools/pseudo/pseudo_git.bb
index 7c75293ef17..d921d85a05c 100644
--- a/meta/recipes-devtools/pseudo/pseudo_git.bb
+++ b/meta/recipes-devtools/pseudo/pseudo_git.bb
@@ -9,6 +9,7 @@ SRC_URI = "git://git.yoctoproject.org/pseudo \
            file://0001-maketables-wrappers-use-Python-3.patch \
            file://0001-Add-statx.patch \
            file://0001-realpath.c-Remove-trailing-slashes.patch \
+           file://0006-xattr-adjust-for-attr-2.4.48-release.patch \
            "
 
 SRCREV = "060058bb29f70b244e685b3c704eb0641b736f73"
-- 
2.17.1



^ permalink raw reply	[flat|nested] 64+ messages in thread

* [PATCH 09/28] ltp: update to 20190930
  2020-01-08 13:27 [PATCH 01/28] rpm: upgrade to 4.15.1 Alexander Kanavin
                   ` (6 preceding siblings ...)
  2020-01-08 13:27 ` [PATCH 08/28] pseudo: adjust for attr 2.4.48 Alexander Kanavin
@ 2020-01-08 13:27 ` Alexander Kanavin
  2020-01-09  9:15   ` Richard Purdie
  2020-01-08 13:27 ` [PATCH 10/28] resolvconf: update to 1.82 Alexander Kanavin
                   ` (19 subsequent siblings)
  27 siblings, 1 reply; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-08 13:27 UTC (permalink / raw)
  To: openembedded-core

Drop a big pile of backports.

Add a patch to address absent string formatting error.

Additional fixing of builds with musl.

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
 ...me-check-for-getdents-getdents64-API.patch |  72 --------
 .../ltp/0001-Add-more-musl-exclusions.patch   |  70 ++++++++
 ...option-to-select-libc-implementation.patch |  27 ++-
 ...-17052-Avoid-unsafe-exits-in-threads.patch |  64 -------
 ...meltdown.c-Fix-kernel-symbol-finding.patch |  81 ---------
 ...y-update-for-mm-fix-false-positive-O.patch |  57 -------
 ...medwait01-Fix-wrong-sigset-length-fo.patch |  46 -----
 ...3-wait-for-defunct-tid-to-get-detach.patch |  75 --------
 ...es-fix-an-absent-format-string-issue.patch |  24 +++
 ...thon3-everywhere-to-run-python-scrip.patch | 161 ------------------
 ...x-EFAULT-in-32bit-compatibility-mode.patch |  36 ----
 ...k-for-RES_USE_INET6-during-configure.patch |  68 --------
 ...BC_PREREQ-is-defined-before-using-it.patch |  27 ++-
 ...se-hardcoded-index-0-for-SHM_STAT-te.patch |  82 ---------
 ...11-direct_io-diotest4-drop-MAP_FIXED.patch |  56 ------
 ...st-a-bit-of-code-to-compatiable-with.patch |  64 -------
 .../ltp/{ltp_20190517.bb => ltp_20190930.bb}  |  16 +-
 17 files changed, 122 insertions(+), 904 deletions(-)
 delete mode 100644 meta/recipes-extended/ltp/ltp/0001-Add-configure-time-check-for-getdents-getdents64-API.patch
 create mode 100644 meta/recipes-extended/ltp/ltp/0001-Add-more-musl-exclusions.patch
 delete mode 100644 meta/recipes-extended/ltp/ltp/0001-cve-2017-17052-Avoid-unsafe-exits-in-threads.patch
 delete mode 100644 meta/recipes-extended/ltp/ltp/0001-cve-meltdown.c-Fix-kernel-symbol-finding.patch
 delete mode 100644 meta/recipes-extended/ltp/ltp/0001-overcommit_memory-update-for-mm-fix-false-positive-O.patch
 delete mode 100644 meta/recipes-extended/ltp/ltp/0001-syscall-rt_sigtimedwait01-Fix-wrong-sigset-length-fo.patch
 delete mode 100644 meta/recipes-extended/ltp/ltp/0001-syscalls-tgkill03-wait-for-defunct-tid-to-get-detach.patch
 create mode 100644 meta/recipes-extended/ltp/ltp/0001-testcases-fix-an-absent-format-string-issue.patch
 delete mode 100644 meta/recipes-extended/ltp/ltp/0001-testcases-use-python3-everywhere-to-run-python-scrip.patch
 delete mode 100644 meta/recipes-extended/ltp/ltp/0001-ustat02-Fix-EFAULT-in-32bit-compatibility-mode.patch
 delete mode 100644 meta/recipes-extended/ltp/ltp/0002-check-for-RES_USE_INET6-during-configure.patch
 delete mode 100644 meta/recipes-extended/ltp/ltp/0010-shmctl01-don-t-use-hardcoded-index-0-for-SHM_STAT-te.patch
 delete mode 100644 meta/recipes-extended/ltp/ltp/0011-direct_io-diotest4-drop-MAP_FIXED.patch
 delete mode 100644 meta/recipes-extended/ltp/ltp/0012-getrlimit03-adjust-a-bit-of-code-to-compatiable-with.patch
 rename meta/recipes-extended/ltp/{ltp_20190517.bb => ltp_20190930.bb} (84%)

diff --git a/meta/recipes-extended/ltp/ltp/0001-Add-configure-time-check-for-getdents-getdents64-API.patch b/meta/recipes-extended/ltp/ltp/0001-Add-configure-time-check-for-getdents-getdents64-API.patch
deleted file mode 100644
index bfceadb190d..00000000000
--- a/meta/recipes-extended/ltp/ltp/0001-Add-configure-time-check-for-getdents-getdents64-API.patch
+++ /dev/null
@@ -1,72 +0,0 @@
-From 404dfeb4faef213b0450f173b60cd7080edec349 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Fri, 26 Jul 2019 10:32:29 -0700
-Subject: [PATCH 1/2] Add configure time check for getdents/getdents64 APIs
-
-glibc 2.30 has added wrapper for getdents64 this will help in detecting
-right condition to use fallback
-
-Check for getdents API as well while here
-
-Upstream-Status: Submitted [http://lists.linux.it/pipermail/ltp/2019-July/012954.html]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- configure.ac                                  | 2 ++
- testcases/kernel/syscalls/getdents/getdents.h | 8 ++++++--
- 2 files changed, 8 insertions(+), 2 deletions(-)
-
---- a/configure.ac
-+++ b/configure.ac
-@@ -65,6 +65,8 @@ AC_CHECK_FUNCS([ \
-     fallocate \
-     fchownat \
-     fstatat \
-+    getdents \
-+    getdents64 \
-     kcmp \
-     mkdirat \
-     mknodat \
---- a/testcases/kernel/syscalls/getdents/getdents.h
-+++ b/testcases/kernel/syscalls/getdents/getdents.h
-@@ -23,7 +23,7 @@
- #include <stdint.h>
- #include "test.h"
- #include "lapi/syscalls.h"
--
-+#include "config.h"
- /*
-  * See fs/compat.c struct compat_linux_dirent
-  */
-@@ -34,12 +34,17 @@ struct linux_dirent {
- 	char            d_name[];
- };
- 
-+#if HAVE_GETDENTS
-+#include <unistd.h>
-+#else
- static inline int
- getdents(unsigned int fd, struct linux_dirent *dirp, unsigned int size)
- {
- 	return ltp_syscall(__NR_getdents, fd, dirp, size);
- }
- 
-+#endif /* HAVE_GETDENTS */
-+
- struct linux_dirent64 {
- 	uint64_t	d_ino;
- 	int64_t		d_off;
-@@ -48,10 +53,13 @@ struct linux_dirent64 {
- 	char		d_name[];
- };
- 
-+#if HAVE_GETDENTS64
-+#include <unistd.h>
-+#else
- static inline int
- getdents64(unsigned int fd, struct linux_dirent64 *dirp64, unsigned int size)
- {
- 	return ltp_syscall(__NR_getdents64, fd, dirp64, size);
- }
--
-+#endif /* HAVE_GETDENTS64 */
- #endif /* GETDENTS_H */
diff --git a/meta/recipes-extended/ltp/ltp/0001-Add-more-musl-exclusions.patch b/meta/recipes-extended/ltp/ltp/0001-Add-more-musl-exclusions.patch
new file mode 100644
index 00000000000..d3af31f34a2
--- /dev/null
+++ b/meta/recipes-extended/ltp/ltp/0001-Add-more-musl-exclusions.patch
@@ -0,0 +1,70 @@
+From 788c47ceef7f115ab7f7aa17f918e58795f4e6c7 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Fri, 20 Dec 2019 13:06:05 +0100
+Subject: [PATCH] Add more musl exclusions
+
+Upstream-Status: Pending
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+---
+ testcases/kernel/syscalls/accept4/Makefile      | 4 ++++
+ testcases/kernel/syscalls/fanotify/Makefile     | 6 ++++++
+ testcases/kernel/syscalls/setxattr/Makefile     | 4 ++++
+ testcases/kernel/syscalls/timer_create/Makefile | 4 ++++
+ 4 files changed, 18 insertions(+)
+
+diff --git a/testcases/kernel/syscalls/accept4/Makefile b/testcases/kernel/syscalls/accept4/Makefile
+index 504042e11..94db06266 100644
+--- a/testcases/kernel/syscalls/accept4/Makefile
++++ b/testcases/kernel/syscalls/accept4/Makefile
+@@ -20,4 +20,8 @@ top_srcdir		?= ../../../..
+ 
+ include $(top_srcdir)/include/mk/testcases.mk
+ 
++ifeq ($(LIBC),musl)
++FILTER_OUT_MAKE_TARGETS        := accept4_01
++endif
++
+ include $(top_srcdir)/include/mk/generic_leaf_target.mk
+diff --git a/testcases/kernel/syscalls/fanotify/Makefile b/testcases/kernel/syscalls/fanotify/Makefile
+index 5d01b4825..0263a6e20 100644
+--- a/testcases/kernel/syscalls/fanotify/Makefile
++++ b/testcases/kernel/syscalls/fanotify/Makefile
+@@ -20,4 +20,10 @@ top_srcdir		?= ../../../..
+ fanotify11: CFLAGS+=-pthread
+ include $(top_srcdir)/include/mk/testcases.mk
+ 
++ifeq ($(LIBC),musl)
++FILTER_OUT_MAKE_TARGETS        := fanotify13 fanotify15
++endif
++
+ include $(top_srcdir)/include/mk/generic_leaf_target.mk
++
++
+diff --git a/testcases/kernel/syscalls/setxattr/Makefile b/testcases/kernel/syscalls/setxattr/Makefile
+index 72544c13e..7f20b2780 100644
+--- a/testcases/kernel/syscalls/setxattr/Makefile
++++ b/testcases/kernel/syscalls/setxattr/Makefile
+@@ -20,4 +20,8 @@ top_srcdir		?= ../../../..
+ 
+ include $(top_srcdir)/include/mk/testcases.mk
+ 
++ifeq ($(LIBC),musl)
++FILTER_OUT_MAKE_TARGETS        := setxattr03
++endif
++
+ include $(top_srcdir)/include/mk/generic_leaf_target.mk
+diff --git a/testcases/kernel/syscalls/timer_create/Makefile b/testcases/kernel/syscalls/timer_create/Makefile
+index 8de247075..eb240f432 100644
+--- a/testcases/kernel/syscalls/timer_create/Makefile
++++ b/testcases/kernel/syscalls/timer_create/Makefile
+@@ -20,6 +20,10 @@ top_srcdir		?= ../../../..
+ 
+ include $(top_srcdir)/include/mk/testcases.mk
+ 
++ifeq ($(LIBC),musl)
++FILTER_OUT_MAKE_TARGETS        := timer_create01 timer_create03
++endif
++
+ CPPFLAGS		+= -D_GNU_SOURCE -I$(abs_srcdir)/../include
+ 
+ LDLIBS			+= -lpthread -lrt
diff --git a/meta/recipes-extended/ltp/ltp/0001-build-Add-option-to-select-libc-implementation.patch b/meta/recipes-extended/ltp/ltp/0001-build-Add-option-to-select-libc-implementation.patch
index b5c25c56a57..1705abcf196 100644
--- a/meta/recipes-extended/ltp/ltp/0001-build-Add-option-to-select-libc-implementation.patch
+++ b/meta/recipes-extended/ltp/ltp/0001-build-Add-option-to-select-libc-implementation.patch
@@ -1,4 +1,4 @@
-From ec282980e6eee96f5b74aba464141f86049263e6 Mon Sep 17 00:00:00 2001
+From 62c3481c73a2414d7a5f0a70808bfc9a06195bd9 Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Thu, 7 Jan 2016 18:19:03 +0000
 Subject: [PATCH] build: Add option to select libc implementation
@@ -12,6 +12,7 @@ Disable tests specifically not building _yet_ on musl based systems
 Upstream-Status: Pending
 
 Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
 ---
  Makefile                                    | 5 +++++
  testcases/kernel/Makefile                   | 5 ++++-
@@ -24,7 +25,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
  8 files changed, 35 insertions(+), 2 deletions(-)
 
 diff --git a/Makefile b/Makefile
-index 768ca46..e9d679a 100644
+index 768ca4606..e9d679a71 100644
 --- a/Makefile
 +++ b/Makefile
 @@ -41,6 +41,11 @@ vpath %.mk		$(top_srcdir)/mk:$(top_srcdir)/mk/include
@@ -40,18 +41,19 @@ index 768ca46..e9d679a 100644
  # COMMON_TARGETS:	Targets which exist in all, clean, and install.
  # INSTALL_TARGETS:	Targets which exist in clean and install (contains
 diff --git a/testcases/kernel/Makefile b/testcases/kernel/Makefile
-index 39d79c7..24a57d9 100644
+index 3319b3163..94ea362c8 100644
 --- a/testcases/kernel/Makefile
 +++ b/testcases/kernel/Makefile
-@@ -49,12 +49,15 @@ SUBDIRS			+= connectors \
+@@ -49,13 +49,16 @@ SUBDIRS			+= connectors \
  			   logging \
  			   mem \
  			   numa \
 -			   pty \
  			   sched \
  			   security \
- 			   timers \
+ 			   sound \
  			   tracing \
+ 			   uevents \
  
 +ifneq ($(LIBC),musl)
 +SUBDIRS			+= pty
@@ -61,7 +63,7 @@ index 39d79c7..24a57d9 100644
  SUBDIRS			+= power_management
  endif
 diff --git a/testcases/kernel/sched/Makefile b/testcases/kernel/sched/Makefile
-index 6a57d79..74bb933 100644
+index 6a57d79ee..74bb93370 100644
 --- a/testcases/kernel/sched/Makefile
 +++ b/testcases/kernel/sched/Makefile
 @@ -23,5 +23,7 @@
@@ -74,7 +76,7 @@ index 6a57d79..74bb933 100644
 +endif
  include $(top_srcdir)/include/mk/generic_trunk_target.mk
 diff --git a/testcases/kernel/syscalls/Makefile b/testcases/kernel/syscalls/Makefile
-index 45a00cf..d1becd0 100644
+index 45a00cf7d..d1becd054 100644
 --- a/testcases/kernel/syscalls/Makefile
 +++ b/testcases/kernel/syscalls/Makefile
 @@ -28,6 +28,11 @@ ifeq ($(UCLINUX),1)
@@ -90,7 +92,7 @@ index 45a00cf..d1becd0 100644
  ifeq ($(UCLIBC),1)
  FILTER_OUT_DIRS	+= profil
 diff --git a/testcases/network/nfsv4/acl/Makefile b/testcases/network/nfsv4/acl/Makefile
-index 8c55a6b..f7cda62 100644
+index 8c55a6bbd..f7cda621d 100644
 --- a/testcases/network/nfsv4/acl/Makefile
 +++ b/testcases/network/nfsv4/acl/Makefile
 @@ -26,4 +26,8 @@ include $(top_srcdir)/include/mk/env_pre.mk
@@ -103,7 +105,7 @@ index 8c55a6b..f7cda62 100644
 +
  include $(top_srcdir)/include/mk/generic_leaf_target.mk
 diff --git a/testcases/network/rpc/basic_tests/Makefile b/testcases/network/rpc/basic_tests/Makefile
-index 66e9d56..ea8eb8a 100644
+index 66e9d5675..ea8eb8a98 100644
 --- a/testcases/network/rpc/basic_tests/Makefile
 +++ b/testcases/network/rpc/basic_tests/Makefile
 @@ -23,4 +23,9 @@
@@ -117,7 +119,7 @@ index 66e9d56..ea8eb8a 100644
 +
  include $(top_srcdir)/include/mk/generic_trunk_target.mk
 diff --git a/testcases/realtime/func/pi-tests/Makefile b/testcases/realtime/func/pi-tests/Makefile
-index 68616a7..748754b 100644
+index 68616a711..748754bb4 100644
 --- a/testcases/realtime/func/pi-tests/Makefile
 +++ b/testcases/realtime/func/pi-tests/Makefile
 @@ -27,5 +27,9 @@ include $(top_srcdir)/include/mk/env_pre.mk
@@ -131,7 +133,7 @@ index 68616a7..748754b 100644
  
  include $(top_srcdir)/include/mk/generic_leaf_target.mk
 diff --git a/testcases/realtime/stress/pi-tests/Makefile b/testcases/realtime/stress/pi-tests/Makefile
-index 1881f75..266e0b8 100644
+index 1881f7565..266e0b815 100644
 --- a/testcases/realtime/stress/pi-tests/Makefile
 +++ b/testcases/realtime/stress/pi-tests/Makefile
 @@ -24,4 +24,9 @@ top_srcdir		?= ../../../..
@@ -144,6 +146,3 @@ index 1881f75..266e0b8 100644
 +endif
 +
  include $(top_srcdir)/include/mk/generic_leaf_target.mk
--- 
-2.7.4
-
diff --git a/meta/recipes-extended/ltp/ltp/0001-cve-2017-17052-Avoid-unsafe-exits-in-threads.patch b/meta/recipes-extended/ltp/ltp/0001-cve-2017-17052-Avoid-unsafe-exits-in-threads.patch
deleted file mode 100644
index cc40081300c..00000000000
--- a/meta/recipes-extended/ltp/ltp/0001-cve-2017-17052-Avoid-unsafe-exits-in-threads.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-From e3a8502d0a4f8a44ddd02ca4b2efc097133fb9f7 Mon Sep 17 00:00:00 2001
-From: Mathias Fiedler <mathias.fiedler@aox-tech.de>
-Date: Fri, 23 Aug 2019 12:46:48 +0200
-Subject: [PATCH] cve-2017-17052: Avoid unsafe exits in threads
-
-According to manpage exit(3) calling exit is not thread-safe.
-And with glibc 2.28 (and probably also with glibc >=2.27) sometimes
-child processes created in fork_thread can get stuck on process exit in
-glibc's __run_exit_handlers trying to acquire some lock which was in
-locked state while the fork was created. This can happen when exit is
-called in mmap_thread concurrently to the fork.
-While the main process will still return with PASSED some of its
-children are left behind.
-
-Comparing the source code with the original program as described in the
-commit 2b7e8665b4ff51c034c55df3cff76518d1a9ee3a of linux kernel >=4.13
-the exits in mmap_thread and fork_thread should not be necessary to
-trigger the original bug.
-
-Therefore those exit calls are removed. The mmap_thread and fork_thread
-should still exit when their corresponding main thread in do_test_fork
-calls exit_group. The remaining exit in do_test_fork will be called in
-the main thread without any concurrent thread in the same process.
-
-Signed-off-by: Mathias Fiedler <mathias.fiedler@aox-tech.de>
-Acked-by: Cyril Hrubis <chrubis@suse.cz>
-Acked-by: Jan Stancek <jstancek@redhat.com>
-
-Upstream-Status: Backport
-[https://github.com/linux-test-project/ltp/commit/9f0b452c1af4bcb54da35711eb3fa77334a350b4]
-
-CVE: CVE-2017-17052
-
-Signed-off-by: He Zhe <zhe.he@windriver.com>
----
- testcases/cve/cve-2017-17052.c | 5 -----
- 1 file changed, 5 deletions(-)
-
-diff --git a/testcases/cve/cve-2017-17052.c b/testcases/cve/cve-2017-17052.c
-index d7da7e919..18cd2a6d7 100644
---- a/testcases/cve/cve-2017-17052.c
-+++ b/testcases/cve/cve-2017-17052.c
-@@ -58,8 +58,6 @@ static void *mmap_thread(void *arg)
- 	for (;;) {
- 		SAFE_MMAP(NULL, 0x1000000, PROT_READ,
- 				MAP_POPULATE|MAP_ANONYMOUS|MAP_PRIVATE, -1, 0);
--		if (*do_exit)
--			exit(0);
- 	}
- 
- 	return arg;
-@@ -67,9 +65,6 @@ static void *mmap_thread(void *arg)
- 
- static void *fork_thread(void *arg)
- {
--	if (*do_exit)
--		exit(0);
--
- 	usleep(rand() % 10000);
- 	SAFE_FORK();
- 
--- 
-2.17.1
-
diff --git a/meta/recipes-extended/ltp/ltp/0001-cve-meltdown.c-Fix-kernel-symbol-finding.patch b/meta/recipes-extended/ltp/ltp/0001-cve-meltdown.c-Fix-kernel-symbol-finding.patch
deleted file mode 100644
index 94f6f5a15a6..00000000000
--- a/meta/recipes-extended/ltp/ltp/0001-cve-meltdown.c-Fix-kernel-symbol-finding.patch
+++ /dev/null
@@ -1,81 +0,0 @@
-From fbeda82f440a0098be42dd668cbc47212a86ab48 Mon Sep 17 00:00:00 2001
-From: He Zhe <zhe.he@windriver.com>
-Date: Wed, 21 Aug 2019 16:27:24 +0800
-Subject: [PATCH] cve/meltdown.c: Fix kernel symbol finding
-
-meltdown case fails as below.
-safe_file_ops.c:219: BROK: Expected 3 conversions got 2 at meltdown.c:272
-
-find_kernel_symbol is defined to try twice with each of /proc/kallsyms and
-/boot/System.map-%s. Currently if the symbol is not found in /proc/kallsyms,
-when kernel option CONFIG_KALLSYMS_ALL is disabled, it would stop the case
-immediately due to SAFE_FILE_LINES_SCANF.
-
-This patch turns to use FILE_LINES_SCANF to give find_kernel_symbol second
-chance.
-
-[jstancek] Fix also condition introduced in 7709d2ae92ea, even if
-           /proc/kallsyms is disabled, we still want to try System.map.
-
-Signed-off-by: He Zhe <zhe.he@windriver.com>
-Signed-off-by: Jan Stancek <jstancek@redhat.com>
-
-Upstream-Status: Backport
-[https://github.com/linux-test-project/ltp/commit/c2049b5c874bc071f8185bffb5fd7dcb042d9ec8]
-
-Remove the hunk for upstream 7709d2ae92ea ("cve/meltdown.c: abort the test if kallsyms was not enabled")
-that has been covered by this patch.
-
-Signed-off-by: He Zhe <zhe.he@windriver.com>
----
- testcases/cve/meltdown.c | 13 ++++++++++---
- 1 file changed, 10 insertions(+), 3 deletions(-)
-
-diff --git a/testcases/cve/meltdown.c b/testcases/cve/meltdown.c
-index a53ea9b..22651a6 100644
---- a/testcases/cve/meltdown.c
-+++ b/testcases/cve/meltdown.c
-@@ -267,9 +267,15 @@ find_symbol_in_file(const char *filename, const char *symname)
- 	int ret, read;
- 	char fmt[strlen(symname) + 64];
- 
-+	tst_res(TINFO, "Looking for %s in %s", symname, filename);
-+	if (access(filename, F_OK) == -1) {
-+		tst_res(TINFO, "%s not available", filename);
-+		return 0;
-+	}
-+
- 	sprintf(fmt, "%%lx %%c %s%%c", symname);
- 
--	ret = SAFE_FILE_LINES_SCANF(filename, fmt, &addr, &type, &read);
-+	ret = FILE_LINES_SCANF(filename, fmt, &addr, &type, &read);
- 	if (ret)
- 		return 0;
- 
-@@ -287,13 +293,11 @@ find_kernel_symbol(const char *name)
- 	if (addr)
- 		return addr;
- 
--	tst_res(TINFO, "not found '%s' in /proc/kallsyms", name);
- 	if (uname(&utsname) < 0)
- 		tst_brk(TBROK | TERRNO, "uname");
- 
- 	sprintf(systemmap, "/boot/System.map-%s", utsname.release);
- 
--	tst_res(TINFO, "looking in '%s'\n", systemmap);
- 	addr = find_symbol_in_file(systemmap, name);
- 	return addr;
- }
-@@ -308,6 +312,9 @@ static void setup(void)
- 	saved_cmdline_addr = find_kernel_symbol("saved_command_line");
- 	tst_res(TINFO, "&saved_command_line == 0x%lx", saved_cmdline_addr);
- 
-+	if (!saved_cmdline_addr)
-+		tst_brk(TCONF, "saved_command_line not found");
-+
- 	spec_fd = SAFE_OPEN("/proc/cmdline", O_RDONLY);
- 
- 	memset(target_array, 1, sizeof(target_array));
--- 
-2.7.4
-
diff --git a/meta/recipes-extended/ltp/ltp/0001-overcommit_memory-update-for-mm-fix-false-positive-O.patch b/meta/recipes-extended/ltp/ltp/0001-overcommit_memory-update-for-mm-fix-false-positive-O.patch
deleted file mode 100644
index bed84712a15..00000000000
--- a/meta/recipes-extended/ltp/ltp/0001-overcommit_memory-update-for-mm-fix-false-positive-O.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-From d656a447893dccc310c975a239f482278550c3e0 Mon Sep 17 00:00:00 2001
-From: Jan Stancek <jstancek@redhat.com>
-Date: Tue, 21 May 2019 10:10:44 +0200
-Subject: [PATCH] overcommit_memory: update for "mm: fix false-positive
- OVERCOMMIT_GUESS failures"
-
-commit 8c7829b04c52 ("mm: fix false-positive OVERCOMMIT_GUESS failures")
-changes logic of __vm_enough_memory(), simplifying it to:
-    When in GUESS mode, catch wild allocations by comparing their request
-    size to total amount of ram and swap in the system.
-
-Testcase currently allocates mem_total + swap_total, which doesn't trigger
-new condition. Make it more extreme, but assuming free_total / 2 will PASS,
-and 2*sum_total will FAIL.
-
-Signed-off-by: Jan Stancek <jstancek@redhat.com>
-Acked-by: Cyril Hrubis <chrubis@suse.cz>
-
-Upstream-Status: Backport [https://github.com/linux-test-project/ltp/commit/d656a447893dccc310c975a239f482278550c3e0]
-Signed-off-by: He Zhe <zhe.he@windriver.com>
----
- testcases/kernel/mem/tunable/overcommit_memory.c | 11 ++++-------
- 1 file changed, 4 insertions(+), 7 deletions(-)
-
-diff --git a/testcases/kernel/mem/tunable/overcommit_memory.c b/testcases/kernel/mem/tunable/overcommit_memory.c
-index 555298f..345764d 100644
---- a/testcases/kernel/mem/tunable/overcommit_memory.c
-+++ b/testcases/kernel/mem/tunable/overcommit_memory.c
-@@ -36,11 +36,10 @@
-  *
-  * The program is designed to test the two tunables:
-  *
-- * When overcommit_memory = 0, allocatable memory can't overextends
-- * the amount of free memory. I choose the three cases:
-+ * When overcommit_memory = 0, allocatable memory can't overextend
-+ * the amount of total memory:
-  * a. less than free_total:    free_total / 2, alloc should pass.
-- * b. greater than free_total: free_total * 2, alloc should fail.
-- * c. equal to sum_total:      sum_tatal,      alloc should fail
-+ * b. greater than sum_total:   sum_total * 2, alloc should fail.
-  *
-  * When overcommit_memory = 1, it can alloc enough much memory, I
-  * choose the three cases:
-@@ -164,9 +163,7 @@ static void overcommit_memory_test(void)
- 
- 	update_mem();
- 	alloc_and_check(free_total / 2, EXPECT_PASS);
--	update_mem();
--	alloc_and_check(free_total * 2, EXPECT_FAIL);
--	alloc_and_check(sum_total, EXPECT_FAIL);
-+	alloc_and_check(sum_total * 2, EXPECT_FAIL);
- 
- 	/* start to test overcommit_memory=1 */
- 	set_sys_tune("overcommit_memory", 1, 1);
--- 
-2.7.4
-
diff --git a/meta/recipes-extended/ltp/ltp/0001-syscall-rt_sigtimedwait01-Fix-wrong-sigset-length-fo.patch b/meta/recipes-extended/ltp/ltp/0001-syscall-rt_sigtimedwait01-Fix-wrong-sigset-length-fo.patch
deleted file mode 100644
index 0e56c08255e..00000000000
--- a/meta/recipes-extended/ltp/ltp/0001-syscall-rt_sigtimedwait01-Fix-wrong-sigset-length-fo.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-From a5046625eaeed2d3fba456c3ba84c6c141c2ad7c Mon Sep 17 00:00:00 2001
-From: He Zhe <zhe.he@windriver.com>
-Date: Thu, 29 Aug 2019 21:09:46 +0800
-Subject: [PATCH] syscall/rt_sigtimedwait01: Fix wrong sigset length for MIPS
-
-rt_sigtimedwait01 fails as follow on MIPS arches
-rt_sigtimedwait01    1  TFAIL  :  .../sigwaitinfo01.c:58: test_empty_set
-(.../sigwaitinfo01.c: 148): Unexpected failure:
-TEST_ERRNO=EINVAL(22): Invalid argument
-
-As this case purposely bypasses glibc, it should align with the size of kernel
-definition of sigset_t which is different from other arches.
-https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/mips/include/uapi/asm/signal.h#n15
-
-This patch turns to use _NSIG which is always right for all arches.
-
-Upstream-Status: Backport [a5046625eaeed2d3fba456c3ba84c6c141c2ad7c]
-
-Suggested-by: Jan Stancek <jstancek@redhat.com>
-Acked-by: Jan Stancek <jstancek@redhat.com>
-Acked-by: Cyril Hrubis <chrubis@suse.cz>
-Signed-off-by: He Zhe <zhe.he@windriver.com>
-Signed-off-by: Petr Vorel <pvorel@suse.cz>
----
- testcases/kernel/syscalls/sigwaitinfo/sigwaitinfo01.c | 5 ++---
- 1 file changed, 2 insertions(+), 3 deletions(-)
-
-diff --git a/testcases/kernel/syscalls/sigwaitinfo/sigwaitinfo01.c b/testcases/kernel/syscalls/sigwaitinfo/sigwaitinfo01.c
-index 5a32ce1..6a30c27 100644
---- a/testcases/kernel/syscalls/sigwaitinfo/sigwaitinfo01.c
-+++ b/testcases/kernel/syscalls/sigwaitinfo/sigwaitinfo01.c
-@@ -128,9 +128,8 @@ static int my_sigtimedwait(const sigset_t * set, siginfo_t * info,
- static int my_rt_sigtimedwait(const sigset_t * set, siginfo_t * info,
- 			      struct timespec *timeout)
- {
--
--	/* The last argument is (number_of_signals)/(bits_per_byte), which are 64 and 8, resp. */
--	return ltp_syscall(__NR_rt_sigtimedwait, set, info, timeout, 8);
-+	/* _NSIG is always the right number of bits of signal map for all arches */
-+	return ltp_syscall(__NR_rt_sigtimedwait, set, info, timeout, _NSIG/8);
- }
- #endif
- 
--- 
-2.7.4
-
diff --git a/meta/recipes-extended/ltp/ltp/0001-syscalls-tgkill03-wait-for-defunct-tid-to-get-detach.patch b/meta/recipes-extended/ltp/ltp/0001-syscalls-tgkill03-wait-for-defunct-tid-to-get-detach.patch
deleted file mode 100644
index 6ea26150fbf..00000000000
--- a/meta/recipes-extended/ltp/ltp/0001-syscalls-tgkill03-wait-for-defunct-tid-to-get-detach.patch
+++ /dev/null
@@ -1,75 +0,0 @@
-From e747d0456adc080a1d31fb653bda9dc491795c80 Mon Sep 17 00:00:00 2001
-From: Jan Stancek <jstancek@redhat.com>
-Date: Sun, 16 Jun 2019 11:14:16 +0200
-Subject: [PATCH] syscalls/tgkill03: wait for defunct tid to get detached
-
-Case where defunct tid is used has been observed to sporadically fail:
-  tgkill03.c:96: FAIL: Defunct tid should have failed with ESRCH: SUCCESS
-
-glibc __pthread_timedjoin_ex() waits for CLONE_CHILD_CLEARTID to clear tid,
-and then resumes. Kernel clears it (glibc pd->tid) at:
-  do_exit
-    exit_mm
-      mm_release
-        put_user(0, tsk->clear_child_tid);
-
-but kernel tid is still valid, presumably until:
-  release_task
-    __exit_signal
-      __unhash_process
-        detach_pid
-
-To avoid race wait until /proc/<pid>/task/<tid> disappears.
-
-Signed-off-by: Jan Stancek <jstancek@redhat.com>
-Reviewed-by: Li Wang <liwang@redhat.com>
-Acked-by: Sumit Garg <sumit.garg@linaro.org>
-
-Upstream-Status: Backport
-[https://github.com/linux-test-project/ltp/commit/e747d0456adc080a1d31fb653bda9dc491795c80]
-
-Signed-off-by: He Zhe <zhe.he@windriver.com>
----
- testcases/kernel/syscalls/tgkill/tgkill03.c | 6 +++++-
- 1 file changed, 5 insertions(+), 1 deletion(-)
-
-diff --git a/testcases/kernel/syscalls/tgkill/tgkill03.c b/testcases/kernel/syscalls/tgkill/tgkill03.c
-index f5bbdc5..593a217 100644
---- a/testcases/kernel/syscalls/tgkill/tgkill03.c
-+++ b/testcases/kernel/syscalls/tgkill/tgkill03.c
-@@ -7,6 +7,7 @@
- 
- #include <pthread.h>
- #include <pwd.h>
-+#include <stdio.h>
- #include <sys/types.h>
- 
- #include "tst_safe_pthread.h"
-@@ -42,6 +43,7 @@ static void setup(void)
- {
- 	sigset_t sigusr1;
- 	pthread_t defunct_thread;
-+	char defunct_tid_path[PATH_MAX];
- 
- 	sigemptyset(&sigusr1);
- 	sigaddset(&sigusr1, SIGUSR1);
-@@ -55,8 +57,9 @@ static void setup(void)
- 	TST_CHECKPOINT_WAIT(0);
- 
- 	SAFE_PTHREAD_CREATE(&defunct_thread, NULL, defunct_thread_func, NULL);
--
- 	SAFE_PTHREAD_JOIN(defunct_thread, NULL);
-+	sprintf(defunct_tid_path, "/proc/%d/task/%d", getpid(), defunct_tid);
-+	TST_RETRY_FN_EXP_BACKOFF(access(defunct_tid_path, R_OK), -1, 15);
- }
- 
- static void cleanup(void)
-@@ -108,4 +111,5 @@ static struct tst_test test = {
- 	.setup = setup,
- 	.cleanup = cleanup,
- 	.test = run,
-+	.timeout = 20,
- };
--- 
-2.7.4
-
diff --git a/meta/recipes-extended/ltp/ltp/0001-testcases-fix-an-absent-format-string-issue.patch b/meta/recipes-extended/ltp/ltp/0001-testcases-fix-an-absent-format-string-issue.patch
new file mode 100644
index 00000000000..93308445098
--- /dev/null
+++ b/meta/recipes-extended/ltp/ltp/0001-testcases-fix-an-absent-format-string-issue.patch
@@ -0,0 +1,24 @@
+From 476ce907fa18042cdde0a244ba9a46cd895ce76c Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Thu, 12 Dec 2019 17:56:02 +0100
+Subject: [PATCH] testcases: fix an absent format string issue
+
+Upstream-Status: Pending
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+---
+ .../kernel/syscalls/pidfd_send_signal/pidfd_send_signal03.c     | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/testcases/kernel/syscalls/pidfd_send_signal/pidfd_send_signal03.c b/testcases/kernel/syscalls/pidfd_send_signal/pidfd_send_signal03.c
+index 27dbc6626..19d943d06 100644
+--- a/testcases/kernel/syscalls/pidfd_send_signal/pidfd_send_signal03.c
++++ b/testcases/kernel/syscalls/pidfd_send_signal/pidfd_send_signal03.c
+@@ -59,7 +59,7 @@ static void verify_pidfd_send_signal(void)
+ 
+ 		/* Manipulate PID for next process */
+ 		sprintf(pid_str, "%d", pid - 1);
+-		SAFE_FILE_PRINTF(last_pid_file, pid_str);
++		SAFE_FILE_PRINTF(last_pid_file, "%s", pid_str);
+ 
+ 		new_pid = SAFE_FORK();
+ 		if (new_pid == 0) {
diff --git a/meta/recipes-extended/ltp/ltp/0001-testcases-use-python3-everywhere-to-run-python-scrip.patch b/meta/recipes-extended/ltp/ltp/0001-testcases-use-python3-everywhere-to-run-python-scrip.patch
deleted file mode 100644
index f4f87f38ab7..00000000000
--- a/meta/recipes-extended/ltp/ltp/0001-testcases-use-python3-everywhere-to-run-python-scrip.patch
+++ /dev/null
@@ -1,161 +0,0 @@
-From 0463d793566772a606255957915f99d166d5740c Mon Sep 17 00:00:00 2001
-From: Alexander Kanavin <alex.kanavin@gmail.com>
-Date: Wed, 28 Aug 2019 18:30:23 +0200
-Subject: [PATCH] testcases: use python3 everywhere to run python scripts
-
-The scripts themselves have #!/usr/bin/python3 in them,
-so I trust they are already py3-compatible.
-
-Upstream-Status: Pending
-Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
----
- testcases/kernel/power_management/runpwtests05.sh  |  2 +-
- .../power_management/runpwtests_exclusive01.sh     |  2 +-
- .../power_management/runpwtests_exclusive02.sh     |  2 +-
- .../power_management/runpwtests_exclusive03.sh     |  2 +-
- .../power_management/runpwtests_exclusive04.sh     |  2 +-
- .../power_management/runpwtests_exclusive05.sh     |  2 +-
- testcases/network/nfsv4/acl/runtest                | 14 +++++++-------
- testcases/realtime/func/pi-tests/run_auto.sh       |  6 +++---
- 8 files changed, 16 insertions(+), 16 deletions(-)
-
-diff --git a/testcases/kernel/power_management/runpwtests05.sh b/testcases/kernel/power_management/runpwtests05.sh
-index 8a7d0f6e0..43e234d01 100755
---- a/testcases/kernel/power_management/runpwtests05.sh
-+++ b/testcases/kernel/power_management/runpwtests05.sh
-@@ -35,7 +35,7 @@ else
- 	max_sched_smt=1
- fi
- 
--tst_test_cmds python
-+tst_test_cmds python3
- 
- if ! grep sched_debug -qw /proc/cmdline ; then
- 	tst_brkm TCONF "Kernel cmdline parameter 'sched_debug' needed," \
-diff --git a/testcases/kernel/power_management/runpwtests_exclusive01.sh b/testcases/kernel/power_management/runpwtests_exclusive01.sh
-index ec78319e2..9fefcbf6e 100755
---- a/testcases/kernel/power_management/runpwtests_exclusive01.sh
-+++ b/testcases/kernel/power_management/runpwtests_exclusive01.sh
-@@ -35,7 +35,7 @@ else
- 	max_sched_smt=1
- fi
- 
--tst_test_cmds python
-+tst_test_cmds python3
- 
- hyper_threaded=$(is_hyper_threaded)
- multi_socket=$(is_multi_socket)
-diff --git a/testcases/kernel/power_management/runpwtests_exclusive02.sh b/testcases/kernel/power_management/runpwtests_exclusive02.sh
-index e107fce35..2cd0ecb05 100755
---- a/testcases/kernel/power_management/runpwtests_exclusive02.sh
-+++ b/testcases/kernel/power_management/runpwtests_exclusive02.sh
-@@ -33,7 +33,7 @@ else
- 	max_sched_smt=1
- fi
- 
--tst_test_cmds python
-+tst_test_cmds python3
- 
- hyper_threaded=$(is_hyper_threaded)
- multi_socket=$(is_multi_socket)
-diff --git a/testcases/kernel/power_management/runpwtests_exclusive03.sh b/testcases/kernel/power_management/runpwtests_exclusive03.sh
-index 490344bb3..ab3a5d11d 100755
---- a/testcases/kernel/power_management/runpwtests_exclusive03.sh
-+++ b/testcases/kernel/power_management/runpwtests_exclusive03.sh
-@@ -35,7 +35,7 @@ else
- 	max_sched_smt=1
- fi
- 
--tst_test_cmds python
-+tst_test_cmds python3
- 
- hyper_threaded=$(is_hyper_threaded)
- multi_socket=$(is_multi_socket)
-diff --git a/testcases/kernel/power_management/runpwtests_exclusive04.sh b/testcases/kernel/power_management/runpwtests_exclusive04.sh
-index 978ca02ae..438ef603f 100755
---- a/testcases/kernel/power_management/runpwtests_exclusive04.sh
-+++ b/testcases/kernel/power_management/runpwtests_exclusive04.sh
-@@ -27,7 +27,7 @@ export TST_TOTAL=2
- # Checking test environment
- check_kervel_arch
- 
--tst_test_cmds python
-+tst_test_cmds python3
- 
- hyper_threaded=$(is_hyper_threaded)
- multi_socket=$(is_multi_socket)
-diff --git a/testcases/kernel/power_management/runpwtests_exclusive05.sh b/testcases/kernel/power_management/runpwtests_exclusive05.sh
-index a0dad5834..3a9afdbf2 100755
---- a/testcases/kernel/power_management/runpwtests_exclusive05.sh
-+++ b/testcases/kernel/power_management/runpwtests_exclusive05.sh
-@@ -35,7 +35,7 @@ else
- 	max_sched_smt=1
- fi
- 
--tst_test_cmds python
-+tst_test_cmds python3
- 
- hyper_threaded=$(is_hyper_threaded)
- multi_socket=$(is_multi_socket)
-diff --git a/testcases/network/nfsv4/acl/runtest b/testcases/network/nfsv4/acl/runtest
-index d2e1b4c49..a859e85bc 100755
---- a/testcases/network/nfsv4/acl/runtest
-+++ b/testcases/network/nfsv4/acl/runtest
-@@ -22,7 +22,7 @@ do
- done
- 
- #  creation of users on the remote machine (removed only at the end of the tests)
--rsh -n $REMOTEHOST python $PWD/create_users.py -u 50 -g 50
-+rsh -n $REMOTEHOST python3 $PWD/create_users.py -u 50 -g 50
- 
- echo "Starting ACL testing"
- 
-@@ -51,19 +51,19 @@ echo "Basic tests finished"
- 
- echo "LONG ACL TEST"
- echo "creating necessary users and groups"
--python create_users.py -u 50 -g 50
-+python3 create_users.py -u 50 -g 50
- echo "creating necessary users and groups on the remote host"
- mkdir $NFSMNTDIR/lacl-testdir
--python test_long_acl.py -l $MAXLENGTH -p $NFSMNTDIR/lacl-testdir
-+python3 test_long_acl.py -l $MAXLENGTH -p $NFSMNTDIR/lacl-testdir
- rm -rf $NFSMNTDIR/lacl-testdir
- echo "Long ACL test OK with $MAXLENGTH entries"
- echo "ACL STRESSING TEST"
--python setacl_stress.py -n 100 -u $USER_NB -g $GRP_NB -f $FILE_NB -p $NFSMNTDIR
-+python3 setacl_stress.py -n 100 -u $USER_NB -g $GRP_NB -f $FILE_NB -p $NFSMNTDIR
- 
- # remove local an remote users
--python cleanusers.py
--python cleangroups.py
--rsh -n $REMOTEHOST python $PWD/cleanusers.py
-+python3 cleanusers.py
-+python3 cleangroups.py
-+rsh -n $REMOTEHOST python3 $PWD/cleanusers.py
- 
- echo "Test OK"
- 
-diff --git a/testcases/realtime/func/pi-tests/run_auto.sh b/testcases/realtime/func/pi-tests/run_auto.sh
-index d13026049..277988568 100755
---- a/testcases/realtime/func/pi-tests/run_auto.sh
-+++ b/testcases/realtime/func/pi-tests/run_auto.sh
-@@ -15,15 +15,15 @@ $SCRIPTS_DIR/run_c_files.sh $profile testpi-0
- 
- export LOG_FILE="$LOG_DIR/$LOG_FORMAT-testpi-1.log"
- $SCRIPTS_DIR/run_c_files.sh $profile testpi-1
--PYTHONPATH=../../  python parse-testpi1.py $LOG_FILE 2>&1 | tee -a $LOG_FILE
-+PYTHONPATH=../../  python3 parse-testpi1.py $LOG_FILE 2>&1 | tee -a $LOG_FILE
- 
- export LOG_FILE="$LOG_DIR/$LOG_FORMAT-testpi-2.log"
- $SCRIPTS_DIR/run_c_files.sh $profile testpi-2
--PYTHONPATH=../../  python parse-testpi2.py $LOG_FILE 2>&1 | tee -a $LOG_FILE
-+PYTHONPATH=../../  python3 parse-testpi2.py $LOG_FILE 2>&1 | tee -a $LOG_FILE
- 
- export LOG_FILE="$LOG_DIR/$LOG_FORMAT-testpi-4.log"
- $SCRIPTS_DIR/run_c_files.sh $profile testpi-4
--PYTHONPATH=../../  python parse-testpi1.py $LOG_FILE 2>&1 | tee -a $LOG_FILE
-+PYTHONPATH=../../  python3 parse-testpi1.py $LOG_FILE 2>&1 | tee -a $LOG_FILE
- 
- 
- export LOG_FILE=""
diff --git a/meta/recipes-extended/ltp/ltp/0001-ustat02-Fix-EFAULT-in-32bit-compatibility-mode.patch b/meta/recipes-extended/ltp/ltp/0001-ustat02-Fix-EFAULT-in-32bit-compatibility-mode.patch
deleted file mode 100644
index c936b788fe1..00000000000
--- a/meta/recipes-extended/ltp/ltp/0001-ustat02-Fix-EFAULT-in-32bit-compatibility-mode.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 156776a3e29491b363fdc9811912e1298655d060 Mon Sep 17 00:00:00 2001
-From: Steven Price <steven.price@arm.com>
-Date: Fri, 19 Jul 2019 13:48:17 +0100
-Subject: [PATCH] ustat02: Fix EFAULT in 32bit compatibility mode
-
-The size of dev_t is larger than 32 bits which causes the dev argument
-to be passed incorrectly. On Arm this means that the EFAULT test case
-actually returns EINVAL because the device number isn't recognised.
-
-Signed-off-by: Steven Price <steven.price@arm.com>
-Acked-by: Li Wang <liwang@redhat.com>
-
-Upstream-Status: Backport
-[https://github.com/linux-test-project/ltp/commit/156776a3e29491b363fdc9811912e1298655d060]
-
-Signed-off-by: He Zhe <zhe.he@windriver.com>
----
- testcases/kernel/syscalls/ustat/ustat02.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/testcases/kernel/syscalls/ustat/ustat02.c b/testcases/kernel/syscalls/ustat/ustat02.c
-index 9bbe4f3..1a0e9e0 100644
---- a/testcases/kernel/syscalls/ustat/ustat02.c
-+++ b/testcases/kernel/syscalls/ustat/ustat02.c
-@@ -36,7 +36,7 @@ int TST_TOTAL = ARRAY_SIZE(tc);
- 
- void run(unsigned int test)
- {
--	TEST(tst_syscall(__NR_ustat, *tc[test].dev, tc[test].buf));
-+	TEST(tst_syscall(__NR_ustat, (unsigned int)*tc[test].dev, tc[test].buf));
- 
- 	if ((TST_RET == -1) && (TST_ERR == tc[test].exp_errno))
- 		tst_res(TPASS | TTERRNO, "ustat(2) expected failure");
--- 
-2.7.4
-
diff --git a/meta/recipes-extended/ltp/ltp/0002-check-for-RES_USE_INET6-during-configure.patch b/meta/recipes-extended/ltp/ltp/0002-check-for-RES_USE_INET6-during-configure.patch
deleted file mode 100644
index 12e47eb2b61..00000000000
--- a/meta/recipes-extended/ltp/ltp/0002-check-for-RES_USE_INET6-during-configure.patch
+++ /dev/null
@@ -1,68 +0,0 @@
-From 7bc134545b7beb09717a60541530c20a1a5740d3 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Fri, 26 Jul 2019 10:55:28 -0700
-Subject: [PATCH 2/2] check for RES_USE_INET6 during configure
-
-glibc 2.30 has remove RES_USE_INET6 define which has been on its way out
-since 2.26 release, this check ensures that we detect it before using it
-
-Upstream-Status: Submitted [http://lists.linux.it/pipermail/ltp/2019-July/012955.html]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- configure.ac                                        | 13 +++++++++++++
- testcases/network/multicast/mc_gethost/mc_gethost.c |  6 ++++++
- 2 files changed, 19 insertions(+)
-
-diff --git a/configure.ac b/configure.ac
-index 2255b5c181..ed7acccb01 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -91,6 +91,19 @@ AC_CHECK_FUNCS([ \
-     vmsplice \
- ])
- 
-+#check defines
-+AC_MSG_CHECKING([for RES_USE_INET6])
-+AC_COMPILE_IFELSE( [AC_LANG_PROGRAM([[#include <resolv.h>]],
-+  [[char dummy[RES_USE_INET6];]])],
-+  [
-+    AC_MSG_RESULT([yes])
-+    AC_DEFINE_UNQUOTED([HAVE_RES_USE_INET6], 1, [Define to 1 if you have the RES_USE_INET6 macro.])
-+  ],
-+  [
-+    AC_MSG_RESULT([no])
-+    AC_DEFINE_UNQUOTED([HAVE_RES_USE_INET6], 0, [Define to 1 if you have the RES_USE_INET6 macro.])
-+  ]
-+)
- # Tools knobs
- 
- # Expect
-diff --git a/testcases/network/multicast/mc_gethost/mc_gethost.c b/testcases/network/multicast/mc_gethost/mc_gethost.c
-index 9cc15d086b..d1cae5441a 100644
---- a/testcases/network/multicast/mc_gethost/mc_gethost.c
-+++ b/testcases/network/multicast/mc_gethost/mc_gethost.c
-@@ -17,6 +17,8 @@
- #include <string.h>
- #include <stdlib.h>
- 
-+#include "config.h"
-+
- #ifndef LOG_PERROR
- #define LOG_PERROR 0
- #endif
-@@ -50,8 +52,12 @@ usage:
- 		argv++, argc--;
- 	}
- 	if (argc >= 1 && !strcmp(*argv, "-6")) {
-+#if HAVE_RES_USE_INET6
- 		af = AF_INET6, size = IN6ADDRSZ;
- 		_res.options |= RES_USE_INET6;
-+#else
-+		af = AF_INET, size = INADDRSZ;
-+#endif
- 		argv++, argc--;
- 	}
- 	if (argc >= 1 && !strcmp(*argv, "-f")) {
--- 
-2.22.0
-
diff --git a/meta/recipes-extended/ltp/ltp/0003-Check-if-__GLIBC_PREREQ-is-defined-before-using-it.patch b/meta/recipes-extended/ltp/ltp/0003-Check-if-__GLIBC_PREREQ-is-defined-before-using-it.patch
index c0f69ecf5fc..df3e8831f54 100644
--- a/meta/recipes-extended/ltp/ltp/0003-Check-if-__GLIBC_PREREQ-is-defined-before-using-it.patch
+++ b/meta/recipes-extended/ltp/ltp/0003-Check-if-__GLIBC_PREREQ-is-defined-before-using-it.patch
@@ -1,4 +1,4 @@
-From 29ce9fdab3bd34e69d73b5b890795559c06553f7 Mon Sep 17 00:00:00 2001
+From 1ce47a6ed811fd78ed04ea2f82e6321c6bca57b6 Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Thu, 7 Jan 2016 19:40:08 +0000
 Subject: [PATCH] Check if __GLIBC_PREREQ is defined before using it
@@ -10,16 +10,17 @@ Upstream-Status: Pending
 
 Signed-off-by: Khem Raj <raj.khem@gmail.com>
 Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
+
 ---
  testcases/kernel/syscalls/accept4/accept4_01.c | 7 +++++++
  1 file changed, 7 insertions(+)
 
 diff --git a/testcases/kernel/syscalls/accept4/accept4_01.c b/testcases/kernel/syscalls/accept4/accept4_01.c
-index dd289cf..76aa969 100644
+index 29e18f27d..07444a46f 100644
 --- a/testcases/kernel/syscalls/accept4/accept4_01.c
 +++ b/testcases/kernel/syscalls/accept4/accept4_01.c
 @@ -38,6 +38,7 @@
- static struct sockaddr_in conn_addr;
+ static struct sockaddr_in *conn_addr, *accept_addr;
  static int listening_fd;
  
 +#if defined(__GLIBC__) && defined(__GLIBC_PREREQ)
@@ -34,25 +35,21 @@ index dd289cf..76aa969 100644
  
  static int create_listening_socket(void)
  {
-@@ -115,6 +117,7 @@ static void verify_accept4(unsigned int nr)
- 	SAFE_CONNECT(connfd, (struct sockaddr *)&conn_addr, sizeof(conn_addr));
- 	addrlen = sizeof(claddr);
+@@ -114,12 +116,17 @@ static void verify_accept4(unsigned int nr)
+ 	SAFE_CONNECT(connfd, (struct sockaddr *)conn_addr, sizeof(*conn_addr));
+ 	addrlen = sizeof(*accept_addr);
  
 +#if defined(__GLIBC__) && defined(__GLIBC_PREREQ)
  #if !(__GLIBC_PREREQ(2, 10))
- 	TEST(accept4_01(listening_fd, (struct sockaddr *)&claddr, &addrlen,
+ 	TEST(accept4_01(listening_fd, (struct sockaddr *)accept_addr, &addrlen,
  				tcase->cloexec | tcase->nonblock));
-@@ -122,6 +125,10 @@ static void verify_accept4(unsigned int nr)
- 	TEST(accept4(listening_fd, (struct sockaddr *)&claddr, &addrlen,
+ #else
+ 	TEST(accept4(listening_fd, (struct sockaddr *)accept_addr, &addrlen,
  				tcase->cloexec | tcase->nonblock));
- #endif
++#endif
 +#else
 +	TEST(accept4(listening_fd, (struct sockaddr *)&claddr, &addrlen,
 +				tcase->cloexec | tcase->nonblock));
-+#endif
+ #endif
  	if (TST_RET == -1) {
  		if (TST_ERR == ENOSYS)
- 			tst_brk(TCONF, "syscall __NR_accept4 not supported");
--- 
-2.7.4
-
diff --git a/meta/recipes-extended/ltp/ltp/0010-shmctl01-don-t-use-hardcoded-index-0-for-SHM_STAT-te.patch b/meta/recipes-extended/ltp/ltp/0010-shmctl01-don-t-use-hardcoded-index-0-for-SHM_STAT-te.patch
deleted file mode 100644
index 8704e5ffe8a..00000000000
--- a/meta/recipes-extended/ltp/ltp/0010-shmctl01-don-t-use-hardcoded-index-0-for-SHM_STAT-te.patch
+++ /dev/null
@@ -1,82 +0,0 @@
-From 794933b38354a2612cf2c471f11798b306f35315 Mon Sep 17 00:00:00 2001
-From: Jan Stancek <jstancek@redhat.com>
-Date: Mon, 20 May 2019 20:47:20 +0200
-Subject: [PATCH] shmctl01: don't use hardcoded index == 0 for SHM_STAT test
-
-Test fails on SHM_STAT testcase:
-   shmctl01    5  TFAIL  :  shmctl01.c:173: shmctl01 call failed
-                            errno = 22 : Invalid argument
-   shmctl(0, SHM_STAT, 0x601060)           = -EINVAL
-
-since following commit:
-   commit 99db46ea292780cd978d56932d9445b1e8bdafe8
-   Author: Manfred Spraul <manfred@colorfullife.com>
-   Date:   Tue May 14 15:46:36 2019 -0700
-     ipc: do cyclic id allocation for the ipc object.
-
-Don't rely on index 0 being always available, but instead
-use (maximum) index returned by SHM_INFO.
-
-Signed-off-by: Jan Stancek <jstancek@redhat.com>
-Reviewed-by: Petr Vorel <pvorel@suse.cz>
-Acked-by: Cyril Hrubis <chrubis@suse.cz>
-
-Upstream-Status: Backport
-[https://github.com/linux-test-project/ltp/commit/db0a43d9388be2c347a8306751bbe6bec086d062]
-
-Signed-off-by: Hongzhi Song <hongzhi.song@windriver.com>
-Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
----
- testcases/kernel/syscalls/ipc/shmctl/shmctl01.c | 21 ++++++++++++++++++---
- 1 file changed, 18 insertions(+), 3 deletions(-)
-
-diff --git a/testcases/kernel/syscalls/ipc/shmctl/shmctl01.c b/testcases/kernel/syscalls/ipc/shmctl/shmctl01.c
-index 1b46977..52bf23a 100644
---- a/testcases/kernel/syscalls/ipc/shmctl/shmctl01.c
-+++ b/testcases/kernel/syscalls/ipc/shmctl/shmctl01.c
-@@ -79,6 +79,7 @@ static void func_info(int ret);
- 
- /* Check routine for SHM_STAT */
- static void func_sstat(int ret);
-+static void func_sstat_setup(void);
- 
- /* Check routine for SHM_LOCK */
- static void func_lock(int ret);
-@@ -110,7 +111,7 @@ static struct test_case_t {
- #endif
- 	{&shm_id_1, IPC_SET, &buf, func_set, set_setup},
- 	{&shm_id_1, IPC_INFO, (struct shmid_ds *) &info, func_info, NULL},
--	{&shm_index, SHM_STAT, &buf, func_sstat, NULL},
-+	{&shm_index, SHM_STAT, &buf, func_sstat, func_sstat_setup},
- 	{&shm_id_1, SHM_LOCK, NULL, func_lock, NULL},
- 	{&shm_id_1, SHM_UNLOCK, NULL, func_unlock, NULL},
- 	{&shm_id_1, IPC_RMID, NULL, func_rmid, NULL},
-@@ -407,9 +408,23 @@ static void func_info(int ret)
- static void func_sstat(int ret)
- {
- 	if (ret >= 0)
--		tst_resm(TPASS, "get correct shared memory id");
-+		tst_resm(TPASS, "get correct shared memory id for index: %d",
-+			shm_index);
- 	else
--		tst_resm(TFAIL, "shared memory id is incorrect");
-+		tst_resm(TFAIL, "shared memory id is incorrect, index: %d",
-+			shm_index);
-+}
-+
-+static void func_sstat_setup(void)
-+{
-+	struct shm_info tmp;
-+	int ret;
-+
-+	ret = shmctl(shm_id_1, SHM_INFO, (void *)&tmp);
-+	if (ret < 0)
-+		tst_resm(TFAIL|TERRNO, "shmctl(SHM_INFO)");
-+	else
-+		shm_index = ret;
- }
- 
- static void func_lock(int ret)
--- 
-2.7.4
-
diff --git a/meta/recipes-extended/ltp/ltp/0011-direct_io-diotest4-drop-MAP_FIXED.patch b/meta/recipes-extended/ltp/ltp/0011-direct_io-diotest4-drop-MAP_FIXED.patch
deleted file mode 100644
index 9cd188f6567..00000000000
--- a/meta/recipes-extended/ltp/ltp/0011-direct_io-diotest4-drop-MAP_FIXED.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-From f210d7e19b721041f31b7f258a169f89dc850303 Mon Sep 17 00:00:00 2001
-From: Jan Stancek <jstancek@redhat.com>
-Date: Thu, 4 Jul 2019 16:45:23 +0200
-Subject: [PATCH] direct_io/diotest4: drop MAP_FIXED
-
-Hongzhi reports that this test is failing on mips64 with 5.1+:
-  diotest4 10 TBROK : diotest4.c:368: can't mmap file: Invalid argument
-  diotest4 11 TBROK : diotest4.c:368: Remaining cases broken
-I could reproduce it on emulated 5kc-malta, running 5.2.0-rc7.
-
-Test is trying to map into area immediately following heap as MAP_SHARED,
-but it used wrong alignment (fixed by 'lapi/mmap.h: include config.h').
-
-Usage of MAP_FIXED seems unnecessary, so drop that too and let the kernel
-pick an address.
-
-Reported-by: Hongzhi.Song <hongzhi.song@windriver.com>
-Signed-off-by: Jan Stancek <jstancek@redhat.com>
-Acked-by: Cyril Hrubis <chrubis@suse.cz>
-
-Upstream-Status: Backport
-[https://github.com/linux-test-project/ltp/commit/f5444eeeabf252b8884b9465d277b6af853819e3]
-
-Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
----
- testcases/kernel/io/direct_io/diotest4.c | 8 ++------
- 1 file changed, 2 insertions(+), 6 deletions(-)
-
-diff --git a/testcases/kernel/io/direct_io/diotest4.c b/testcases/kernel/io/direct_io/diotest4.c
-index e4616e4..bf200cd 100644
---- a/testcases/kernel/io/direct_io/diotest4.c
-+++ b/testcases/kernel/io/direct_io/diotest4.c
-@@ -352,18 +352,14 @@ int main(int argc, char *argv[])
- 	total++;
- 
- 	/* Test-10: read, write to a mmaped file */
--	shm_base = (char *)(((long)sbrk(0) + (shmsz - 1)) & ~(shmsz - 1));
--	if (shm_base == NULL) {
--		tst_brkm(TBROK, cleanup, "sbrk failed: %s", strerror(errno));
--	}
- 	offset = 4096;
- 	count = bufsize;
- 	if ((fd = open(filename, O_DIRECT | O_RDWR)) < 0) {
- 		tst_brkm(TBROK, cleanup, "can't open %s: %s",
- 			 filename, strerror(errno));
- 	}
--	shm_base = mmap(shm_base, 0x100000, PROT_READ | PROT_WRITE,
--			MAP_SHARED | MAP_FIXED, fd, 0);
-+	shm_base = mmap(0, 0x100000, PROT_READ | PROT_WRITE,
-+			MAP_SHARED, fd, 0);
- 	if (shm_base == (caddr_t) - 1) {
- 		tst_brkm(TBROK, cleanup, "can't mmap file: %s",
- 			 strerror(errno));
--- 
-2.7.4
-
diff --git a/meta/recipes-extended/ltp/ltp/0012-getrlimit03-adjust-a-bit-of-code-to-compatiable-with.patch b/meta/recipes-extended/ltp/ltp/0012-getrlimit03-adjust-a-bit-of-code-to-compatiable-with.patch
deleted file mode 100644
index aecbc80e9b5..00000000000
--- a/meta/recipes-extended/ltp/ltp/0012-getrlimit03-adjust-a-bit-of-code-to-compatiable-with.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-From 4ac747c1f7ff8e2ec2567d6672822e95a9b56e55 Mon Sep 17 00:00:00 2001
-From: "Hongzhi.Song" <hongzhi.song@windriver.com>
-Date: Mon, 15 Jul 2019 03:39:06 -0400
-Subject: [PATCH] getrlimit03: adjust a bit of code to compatiable with mips32
-
-Error info:
-getrlimit03.c:104: FAIL: __NR_prlimit64(0) had rlim_cur =
-ffffffffffffffff but __NR_getrlimit(0) had rlim_cur = 7fffffff
-
-According to kernel code: [arch/mips/include/uapi/asm/resource.h]
-RLIM_INFINITY is set to 0x7fffffffUL instead of ULONG_MAX on mips32.
-
- /*
- * SuS says limits have to be unsigned.
- * Which makes a ton more sense anyway,
- * but we keep the old value on MIPS32,
- * for compatibility:
- */
- #ifndef __mips64
- # define RLIM_INFINITY      0x7fffffffUL
- #endif
-
-Adding conditional statement about mips to fix this.
-
-Signed-off-by: Jan Stancek <jstancek@redhat.com>
-Signed-off-by: Hongzhi.Song <hongzhi.song@windriver.com>
-
-Upstream-Status: Backport
-[https://github.com/linux-test-project/ltp/commit/7a3bca63cd7f059d490b6274f0fdf3247be93fde]
-
-Signed-off-by: Hongzhi.Song <hongzhi.song@windriver.com>
----
- testcases/kernel/syscalls/getrlimit/getrlimit03.c | 8 +++++++-
- 1 file changed, 7 insertions(+), 1 deletion(-)
-
-diff --git a/testcases/kernel/syscalls/getrlimit/getrlimit03.c b/testcases/kernel/syscalls/getrlimit/getrlimit03.c
-index e4d56c4..319bc49 100644
---- a/testcases/kernel/syscalls/getrlimit/getrlimit03.c
-+++ b/testcases/kernel/syscalls/getrlimit/getrlimit03.c
-@@ -26,6 +26,7 @@
- 
- #include "tst_test.h"
- #include "lapi/syscalls.h"
-+#include "lapi/abisize.h"
- 
- /**
-  * Linux provides an "old" getrlimit syscall handler that uses signed long,
-@@ -61,7 +62,12 @@ struct rlimit_ulong {
- 	unsigned long rlim_cur;
- 	unsigned long rlim_max;
- };
--const unsigned long RLIM_INFINITY_UL = ULONG_MAX;
-+
-+#if defined(__mips__) && defined(TST_ABI32)
-+	const unsigned long RLIM_INFINITY_UL = 0x7fffffffUL;
-+#else
-+	const unsigned long RLIM_INFINITY_UL = ULONG_MAX;
-+#endif
- 
- static int getrlimit_ulong(int resource, struct rlimit_ulong *rlim)
- {
--- 
-2.7.4
-
diff --git a/meta/recipes-extended/ltp/ltp_20190517.bb b/meta/recipes-extended/ltp/ltp_20190930.bb
similarity index 84%
rename from meta/recipes-extended/ltp/ltp_20190517.bb
rename to meta/recipes-extended/ltp/ltp_20190930.bb
index 60f749b4c01..e56bb575d29 100644
--- a/meta/recipes-extended/ltp/ltp_20190517.bb
+++ b/meta/recipes-extended/ltp/ltp_20190930.bb
@@ -27,7 +27,7 @@ CFLAGS_append_x86-64 = " -fomit-frame-pointer"
 
 CFLAGS_append_powerpc64 = " -D__SANE_USERSPACE_TYPES__"
 CFLAGS_append_mipsarchn64 = " -D__SANE_USERSPACE_TYPES__"
-SRCREV = "ac33ef87f0b9dc56533026435be3ea8c67ce86d2"
+SRCREV = "c9707b465a08397569920b676345474f44327200"
 
 SRC_URI = "git://github.com/linux-test-project/ltp.git \
            file://0001-build-Add-option-to-select-libc-implementation.patch \
@@ -38,19 +38,9 @@ SRC_URI = "git://github.com/linux-test-project/ltp.git \
            file://0007-Fix-test_proc_kill-hanging.patch \
            file://0008-testcases-network-nfsv4-acl-acl1.c-Security-fix-on-s.patch \
            file://0009-open_posix_testsuite-mmap24-2-Relax-condition-a-bit.patch \
-           file://0010-shmctl01-don-t-use-hardcoded-index-0-for-SHM_STAT-te.patch \
-           file://0011-direct_io-diotest4-drop-MAP_FIXED.patch \
-           file://0012-getrlimit03-adjust-a-bit-of-code-to-compatiable-with.patch \
-           file://0001-Add-configure-time-check-for-getdents-getdents64-API.patch \
-           file://0002-check-for-RES_USE_INET6-during-configure.patch \
-           file://0001-syscalls-tgkill03-wait-for-defunct-tid-to-get-detach.patch \
-           file://0001-ustat02-Fix-EFAULT-in-32bit-compatibility-mode.patch \
-           file://0001-cve-meltdown.c-Fix-kernel-symbol-finding.patch \
-           file://0001-testcases-use-python3-everywhere-to-run-python-scrip.patch \
-           file://0001-syscall-rt_sigtimedwait01-Fix-wrong-sigset-length-fo.patch \
-           file://0001-cve-2017-17052-Avoid-unsafe-exits-in-threads.patch \
-           file://0001-overcommit_memory-update-for-mm-fix-false-positive-O.patch \
            file://0001-mkswap01.sh-Add-udevadm-trigger-before-swap-verifica.patch \
+           file://0001-testcases-fix-an-absent-format-string-issue.patch \
+           file://0001-Add-more-musl-exclusions.patch \
            "
 
 S = "${WORKDIR}/git"
-- 
2.17.1



^ permalink raw reply	[flat|nested] 64+ messages in thread

* [PATCH 10/28] resolvconf: update to 1.82
  2020-01-08 13:27 [PATCH 01/28] rpm: upgrade to 4.15.1 Alexander Kanavin
                   ` (7 preceding siblings ...)
  2020-01-08 13:27 ` [PATCH 09/28] ltp: update to 20190930 Alexander Kanavin
@ 2020-01-08 13:27 ` Alexander Kanavin
  2020-01-08 13:27 ` [PATCH 11/28] ifupdown: update 0.8.22 -> 0.8.35 Alexander Kanavin
                   ` (18 subsequent siblings)
  27 siblings, 0 replies; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-08 13:27 UTC (permalink / raw)
  To: openembedded-core

Switch to git, as using debian snapshots makes automated upgrades impossible.

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
 .../resolvconf/{resolvconf_1.79.bb => resolvconf_1.82.bb}  | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)
 rename meta/recipes-connectivity/resolvconf/{resolvconf_1.79.bb => resolvconf_1.82.bb} (90%)

diff --git a/meta/recipes-connectivity/resolvconf/resolvconf_1.79.bb b/meta/recipes-connectivity/resolvconf/resolvconf_1.82.bb
similarity index 90%
rename from meta/recipes-connectivity/resolvconf/resolvconf_1.79.bb
rename to meta/recipes-connectivity/resolvconf/resolvconf_1.82.bb
index 85501772880..67959576e84 100644
--- a/meta/recipes-connectivity/resolvconf/resolvconf_1.79.bb
+++ b/meta/recipes-connectivity/resolvconf/resolvconf_1.82.bb
@@ -11,13 +11,14 @@ AUTHOR = "Thomas Hood"
 HOMEPAGE = "http://packages.debian.org/resolvconf"
 RDEPENDS_${PN} = "bash"
 
-SRC_URI = "http://snapshot.debian.org/archive/debian/20160520T044340Z/pool/main/r/${BPN}/${BPN}_1.79.tar.xz \
+SRC_URI = "git://salsa.debian.org/debian/resolvconf.git;protocol=https \
            file://fix-path-for-busybox.patch \
            file://99_resolvconf \
           "
 
-SRC_URI[md5sum] = "aab2382020fc518f06a06e924c56d300"
-SRC_URI[sha256sum] = "8e2843cd4162b706f0481b3c281657728cbc2822e50a64fff79b79bd8aa870a0"
+SRCREV = "cb19bbfbe7e52174332f68bf2f295b39d119fad3"
+
+S = "${WORKDIR}/git"
 
 # the package is taken from snapshots.debian.org; that source is static and goes stale
 # so we check the latest upstream from a directory that does get updated
-- 
2.17.1



^ permalink raw reply	[flat|nested] 64+ messages in thread

* [PATCH 11/28] ifupdown: update 0.8.22 -> 0.8.35
  2020-01-08 13:27 [PATCH 01/28] rpm: upgrade to 4.15.1 Alexander Kanavin
                   ` (8 preceding siblings ...)
  2020-01-08 13:27 ` [PATCH 10/28] resolvconf: update to 1.82 Alexander Kanavin
@ 2020-01-08 13:27 ` Alexander Kanavin
  2020-01-08 21:23   ` Richard Purdie
  2020-01-08 13:27 ` [PATCH 12/28] ovmf: update to 201911 Alexander Kanavin
                   ` (17 subsequent siblings)
  27 siblings, 1 reply; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-08 13:27 UTC (permalink / raw)
  To: openembedded-core

Remove inet-6-.defn-fix-inverted-checks-for-loopback.patch as
it is difficult to rebase and not clear if still necessary.

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
 ...efn-fix-inverted-checks-for-loopback.patch | 403 ------------------
 ...{ifupdown_0.8.22.bb => ifupdown_0.8.35.bb} |  11 +-
 2 files changed, 5 insertions(+), 409 deletions(-)
 delete mode 100644 meta/recipes-core/ifupdown/files/inet-6-.defn-fix-inverted-checks-for-loopback.patch
 rename meta/recipes-core/ifupdown/{ifupdown_0.8.22.bb => ifupdown_0.8.35.bb} (83%)

diff --git a/meta/recipes-core/ifupdown/files/inet-6-.defn-fix-inverted-checks-for-loopback.patch b/meta/recipes-core/ifupdown/files/inet-6-.defn-fix-inverted-checks-for-loopback.patch
deleted file mode 100644
index 5b0d51d736f..00000000000
--- a/meta/recipes-core/ifupdown/files/inet-6-.defn-fix-inverted-checks-for-loopback.patch
+++ /dev/null
@@ -1,403 +0,0 @@
-From 6fce99c9e42cbacde1855473b745ca1fded3fbf7 Mon Sep 17 00:00:00 2001
-From: "Maxin B. John" <maxin.john@intel.com>
-Date: Wed, 21 Dec 2016 15:32:07 +0200
-Subject: [PATCH 2/2] inet[6].defn: fix inverted checks for loopback
-
-Compared to the hurd link.defn for loopback, we see these
-are inverted, meaning that you would only be able to configure
-a loopback device that was _not_ named "lo" (unlikely to exist).
-
-The result was that we'd update /run/network/ifstate for "lo"
-but never actually do anything for up/down, as shown below:
-
-root@localhost:~# ifconfig -s
-Iface   MTU Met   RX-OK RX-ERR RX-DRP RX-OVR  TX-OK TX-ERR TX-DRP TX-OVR Flg
-eth0       1500 0   7736329      0   2016 0 5289422      0      0      0 BMRU
-lo        65536 0        18      0      0 0      18      0      0      0 LRU
-root@localhost:~# ifdown lo
-root@localhost:~# echo $?
-0
-root@localhost:~# ifconfig -s
-Iface   MTU Met   RX-OK RX-ERR RX-DRP  RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flg
-eth0       1500 0   7736406      0  2016 0   5289455      0      0      0 BMRU
-lo        65536 0        18      0   0 0            18    0    0    0     LRU
-root@localhost:~# ifconfig lo down
-root@localhost:~# ifconfig -s
-Iface   MTU Met   RX-OK RX-ERR RX-DRP RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flg
-eth0       1500 0   7736474 0   2016 0       5289481      0     0      0 BMRU
-root@localhost:~#
-
-Also reverted the commit:
-commit 80b878497663dae08f70b4d3cffe127b57a3cfc
-which uses absolute paths to binaries called by ifup/ifdown.
-
-Upstream-Status: Inappropriate [OE specific]
-
-Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
-Signed-off-by: Maxin B. John <maxin.john@intel.com>
-Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
----
- inet.defn | 134 +++++++++++++++++++++++++++---------------------------
- 1 file changed, 67 insertions(+), 67 deletions(-)
-
-diff --git a/inet.defn b/inet.defn
-index 182b56b..31067bc 100644
---- a/inet.defn
-+++ b/inet.defn
-@@ -6,10 +6,10 @@ method loopback
-     This method may be used to define the IPv4 loopback interface.
- 
-   up
--    /bin/ip link set dev %iface% up if (!iface_is_lo())
-+    ip link set dev %iface% up if (!iface_is_lo())
- 
-   down
--    /bin/ip link set dev %iface% down if (!iface_is_lo())
-+    ip link set dev %iface% down if (!iface_is_lo())
- 
- method static
-   description
-@@ -36,17 +36,17 @@ method static
-     broadcast compute_v4_broadcast
- 
-   up
--    /bin/ip addr add %address%[[/%netmask%]] [[broadcast %broadcast%]] \
-+    ip addr add %address%[[/%netmask%]] [[broadcast %broadcast%]] \
- 	[[peer %pointopoint%]] [[scope %scope%]] dev %iface% label %iface%
--    /bin/ip link set dev %iface% [[mtu %mtu%]] [[address %hwaddress%]] up
-+    ip link set dev %iface% [[mtu %mtu%]] [[address %hwaddress%]] up
- 
--    [[ /bin/ip route add default via %gateway% [[metric %metric%]] dev %iface% onlink ]]
-+    [[ ip route add default via %gateway% [[metric %metric%]] dev %iface% onlink ]]
- 
-   down
--    [[ /bin/ip route del default via %gateway% [[metric %metric%]] dev %iface% 2>&1 1>/dev/null || true ]]
--    /bin/ip addr del %address%[[/%netmask%]] [[broadcast %broadcast%]] \
-+    [[ ip route del default via %gateway% [[metric %metric%]] dev %iface% 2>&1 1>/dev/null || true ]]
-+    ip addr del %address%[[/%netmask%]] [[broadcast %broadcast%]] \
- 	[[peer %pointopoint%]] [[scope %scope%]] dev %iface% label %iface%
--    /bin/ip link set dev %iface% down \
-+    ip link set dev %iface% down \
- 		if (iface_is_link())
- 
- method manual
-@@ -63,12 +63,12 @@ method manual
-     hwaddress cleanup_hwaddress
- 
-   up
--    [[/bin/ip link set dev %iface% mtu %mtu%]]
--    [[/bin/ip link set dev %iface% address %hwaddress%]]
--    /bin/ip link set dev %iface% up 2>/dev/null || true
-+    [[ip link set dev %iface% mtu %mtu%]]
-+    [[ip link set dev %iface% address %hwaddress%]]
-+    ip link set dev %iface% up 2>/dev/null || true
- 
-   down
--    /bin/ip link set dev %iface% down 2>/dev/null || true \
-+    ip link set dev %iface% down 2>/dev/null || true \
-         if (iface_is_link() && !do_all)
- 
- method dhcp
-@@ -93,33 +93,33 @@ method dhcp
-     hwaddress cleanup_hwaddress
- 
-   up
--    [[/bin/ip link set dev %iface% address %hwaddress%]]
--    /sbin/dhclient -4 -v -pf /run/dhclient.%iface%.pid -lf /var/lib/dhcp/dhclient.%iface%.leases -I -df /var/lib/dhcp/dhclient6.%iface%.leases %iface% \
-+    [[ip link set dev %iface% address %hwaddress%]]
-+    dhclient -4 -v -pf /run/dhclient.%iface%.pid -lf /var/lib/dhcp/dhclient.%iface%.leases -I -df /var/lib/dhcp/dhclient6.%iface%.leases %iface% \
- 	[[-e IF_METRIC=%metric%]] \
-         if (execable("/sbin/dhclient"))
--    /sbin/pump -i %iface% [[-h %hostname%]] [[-l %leasehours%]] \
-+    pump -i %iface% [[-h %hostname%]] [[-l %leasehours%]] \
-         elsif (execable("/sbin/pump"))
--    /sbin/udhcpc -n -p /run/udhcpc.%iface%.pid -i %iface% [[-x hostname:%hostname%]] \
-+    udhcpc -n -p /run/udhcpc.%iface%.pid -i %iface% [[-x hostname:%hostname%]] \
-         elsif (execable("/sbin/udhcpc"))
--    /sbin/dhcpcd [[-h %hostname%]] [[-i %vendor%]] [[-I %client%]] \
-+    dhcpcd [[-h %hostname%]] [[-i %vendor%]] [[-I %client%]] \
-            [[-l %leasetime%]] [[-m %metric%]] %iface% \
-         elsif (execable("/sbin/dhcpcd"))
-     echo 'No DHCP client software found!' >/dev/stderr; false \
-         elsif (1)
- 
-   down
--    /sbin/dhclient -4 -v -r -pf /run/dhclient.%iface%.pid -lf /var/lib/dhcp/dhclient.%iface%.leases -I -df /var/lib/dhcp/dhclient6.%iface%.leases %iface% \
-+    dhclient -4 -v -r -pf /run/dhclient.%iface%.pid -lf /var/lib/dhcp/dhclient.%iface%.leases -I -df /var/lib/dhcp/dhclient6.%iface%.leases %iface% \
-         if (execable("/sbin/dhclient"))
--    /sbin/pump -i %iface% -r \
-+    pump -i %iface% -r \
-         elsif (execable("/sbin/pump"))
-     if test -f /run/udhcpc.%iface%.pid; then kill -USR2 $(/bin/cat /run/udhcpc.%iface%.pid); kill -TERM $(/bin/cat /run/udhcpc.%iface%.pid); fi \
-         elsif (execable("/sbin/udhcpc"))
--    /sbin/dhcpcd -k %iface% \
-+    dhcpcd -k %iface% \
-         elsif (execable("/sbin/dhcpcd"))
-     echo 'No DHCP client software found!' >/dev/stderr; false \
-         elsif (1)
- 
--    /bin/ip link set dev %iface% down \
-+    ip link set dev %iface% down \
- 		if (iface_is_link())
- 
- method bootp
-@@ -134,11 +134,11 @@ method bootp
-                       whatever it really is.
- 
-   up
--    /sbin/bootpc [[--bootfile %bootfile%]] --dev %iface% [[--server %server%]] \
-+    bootpc [[--bootfile %bootfile%]] --dev %iface% [[--server %server%]] \
-            [[--hwaddr %hwaddr%]] --returniffail --serverbcast
- 
-   down
--    /bin/ip link set dev %iface% down \
-+    ip link set dev %iface% down \
-         if (iface_is_link())
- 
- method tunnel
-@@ -158,13 +158,13 @@ method tunnel
-     ttl time              -- TTL setting
-     mtu size              -- MTU size
-   up
--    /bin/ip tunnel add %iface% mode %mode% remote %endpoint% [[local %local%]] \
-+    ip tunnel add %iface% mode %mode% remote %endpoint% [[local %local%]] \
-        [[ttl %ttl%]]
--    /bin/ip link set %iface% up [[mtu %mtu%]]
--    /bin/ip addr add %address%/%netmask% dev %iface% [[peer %dstaddr%]]
--    [[ /bin/ip route add default via %gateway% [[metric %metric%]] dev %iface% onlink ]]
-+    ip link set %iface% up [[mtu %mtu%]]
-+    ip addr add %address%/%netmask% dev %iface% [[peer %dstaddr%]]
-+    [[ ip route add default via %gateway% [[metric %metric%]] dev %iface% onlink ]]
-   down
--    /bin/ip tunnel del %iface%
-+    ip tunnel del %iface%
- 
- method ppp
-   description
-@@ -175,9 +175,9 @@ method ppp
-     unit number    -- Use /number/ as the ppp unit number.
-     options string -- Pass /string/ as additional options to pon.
-   up
--    /usr/bin/pon [[%provider%]] [[unit %unit%]] [[%options%]]
-+    pon [[%provider%]] [[unit %unit%]] [[%options%]]
-   down
--    /usr/bin/poff [[%provider%]]
-+    poff [[%provider%]]
- 
- method wvdial
-   description
-@@ -186,10 +186,10 @@ method wvdial
-   options
-     provider name  -- Use /name/ as the provider (from /etc/wvdial.conf).
-   up
--    /sbin/start-stop-daemon --start -x /usr/bin/wvdial \
-+    start-stop-daemon --start -x /usr/bin/wvdial \
-                       -p /run/wvdial.%iface%.pid -b -m -- [[ %provider% ]]
-   down
--    /sbin/start-stop-daemon --stop -x /usr/bin/wvdial \
-+    start-stop-daemon --stop -x /usr/bin/wvdial \
-                       -p /run/wvdial.%iface%.pid -s 2
- 
- 
-@@ -200,9 +200,9 @@ method ipv4ll
-     known as APIPA or IPAC, and often colloquially referred to
-     as "Zeroconf address".
-   up
--    /usr/sbin/avahi-autoipd -D %iface%
-+    avahi-autoipd -D %iface%
-   down
--    /usr/sbin/avahi-autoipd --kill %iface%
-+    avahi-autoipd --kill %iface%
- 
- architecture kfreebsd
- 
-@@ -211,11 +211,11 @@ method loopback
-     This method may be used to define the IPv4 loopback interface.
- 
-   up
--    /sbin/ifconfig %iface% 127.0.0.1 up \
-+    ifconfig %iface% 127.0.0.1 up \
- 	if (!iface_is_lo())
- 
-   down
--    /sbin/ifconfig %iface% down \
-+    ifconfig %iface% down \
- 	if (!iface_is_lo())
- 
- method static
-@@ -238,15 +238,15 @@ method static
-     hwaddress cleanup_hwaddress
- 
-   up
--    [[ /sbin/ifconfig %iface% link %hwaddress%]]
--    /sbin/ifconfig %iface% %address% [[netmask %netmask%]] [[broadcast %broadcast%]] \
-+    [[ ifconfig %iface% link %hwaddress%]]
-+    ifconfig %iface% %address% [[netmask %netmask%]] [[broadcast %broadcast%]] \
- 	[[pointopoint %pointopoint%]] [[media %media%]] [[mtu %mtu%]] \
- 	up
--    [[ /sbin/route add default %gateway% ]]
-+    [[ route add default %gateway% ]]
- 
-   down
--    [[ /sbin/route del default %gateway% 2>&1 1>/dev/null || true ]]
--    /sbin/ifconfig %iface% down
-+    [[ route del default %gateway% 2>&1 1>/dev/null || true ]]
-+    ifconfig %iface% down
- 
- method manual
-   description
-@@ -279,30 +279,30 @@ method dhcp
-     hwaddress cleanup_hwaddress
- 
-   up
--    [[/sbin/ifconfig %iface% link %hwaddress%]]
--    /sbin/dhclient -4 -v -pf /run/dhclient.%iface%.pid -lf /var/lib/dhcp/dhclient.%iface%.leases -I -df /var/lib/dhcp/dhclient6.%iface%.leases %iface% \
-+    [[ifconfig %iface% link %hwaddress%]]
-+    dhclient -4 -v -pf /run/dhclient.%iface%.pid -lf /var/lib/dhcp/dhclient.%iface%.leases -I -df /var/lib/dhcp/dhclient6.%iface%.leases %iface% \
- 	[[-e IF_METRIC=%metric%]] \
-         if (execable("/sbin/dhclient"))
--    /sbin/udhcpc -n -p /run/udhcpc.%iface%.pid -i %iface% [[-H %hostname%]] \
-+    udhcpc -n -p /run/udhcpc.%iface%.pid -i %iface% [[-H %hostname%]] \
-            [[-c %client%]] \
-         elsif (execable("/sbin/udhcpc"))
--    /sbin/dhcpcd [[-h %hostname%]] [[-i %vendor%]] [[-I %client%]] \
-+    dhcpcd [[-h %hostname%]] [[-i %vendor%]] [[-I %client%]] \
-            [[-l %leasetime%]] %iface% \
-         elsif (execable("/sbin/dhcpcd"))
-     echo 'No DHCP client software found!' >/dev/stderr; false \
-         elsif (1)
- 
-   down
--    /sbin/dhclient -4 -v -r -pf /run/dhclient.%iface%.pid -lf /var/lib/dhcp/dhclient.%iface%.leases -I -df /var/lib/dhcp/dhclient6.%iface%.leases %iface% \
-+    dhclient -4 -v -r -pf /run/dhclient.%iface%.pid -lf /var/lib/dhcp/dhclient.%iface%.leases -I -df /var/lib/dhcp/dhclient6.%iface%.leases %iface% \
-         if (execable("/sbin/dhclient"))
-     if test -f /run/udhcpc.%iface%.pid; then kill -USR2 $(/bin/cat /run/udhcpc.%iface%.pid); kill -TERM $(/bin/cat /run/udhcpc.%iface%.pid); fi \
-         elsif (execable("/sbin/udhcpc"))
--    /sbin/dhcpcd -k %iface% \
-+    dhcpcd -k %iface% \
-         elsif (execable("/sbin/dhcpcd"))
-     echo 'No DHCP client software found!' >/dev/stderr; false \
-         elsif (1)
- 
--    /sbin/ifconfig %iface% down
-+    ifconfig %iface% down
- 
- method bootp
-   description
-@@ -316,11 +316,11 @@ method bootp
-                       whatever it really is.
- 
-   up
--    /sbin/bootpc [[--bootfile %bootfile%]] --dev %iface% [[--server %server%]] \
-+    bootpc [[--bootfile %bootfile%]] --dev %iface% [[--server %server%]] \
-            [[--hwaddr %hwaddr%]] --returniffail --serverbcast
- 
-   down
--    /sbin/ifconfig %iface% down
-+    ifconfig %iface% down
- 
- method ppp
-   description
-@@ -331,9 +331,9 @@ method ppp
-     unit number    -- Use /number/ as the ppp unit number.
-     options string -- Pass /string/ as additional options to pon.
-   up
--    /usr/bin/pon [[%provider%]] [[unit %unit%]] [[%options%]]
-+    pon [[%provider%]] [[unit %unit%]] [[%options%]]
-   down
--    /usr/bin/poff [[%provider%]]
-+    poff [[%provider%]]
- 
- method wvdial
-   description
-@@ -342,10 +342,10 @@ method wvdial
-   options
-     provider name  -- Use /name/ as the provider (from /etc/wvdial.conf).
-   up
--    /sbin/start-stop-daemon --start -x /usr/bin/wvdial \
-+    start-stop-daemon --start -x /usr/bin/wvdial \
-                       -p /run/wvdial.%iface%.pid -b -m -- [[ %provider% ]]
-   down
--    /sbin/start-stop-daemon --stop -x /usr/bin/wvdial \
-+    start-stop-daemon --stop -x /usr/bin/wvdial \
-                       -p /run/wvdial.%iface%.pid -s 2
- 
- 
-@@ -356,9 +356,9 @@ method ipv4ll
-     known as APIPA or IPAC, and often colloquially referred to
-     as "Zeroconf address".
-   up
--    /usr/sbin/avahi-autoipd -D %iface%
-+    avahi-autoipd -D %iface%
-   down
--    /usr/sbin/avahi-autoipd --kill %iface%
-+    avahi-autoipd --kill %iface%
- architecture hurd
- 
- method loopback
-@@ -432,23 +432,23 @@ method dhcp
- 
-   up
-     [[Warning: Option hwaddress: %hwaddress% not yet supported]]
--    /sbin/dhclient -4 -v -pf /run/dhclient.%iface///.%.pid -lf /var/lib/dhcp/dhclient.%iface///.%.leases -I -df /var/lib/dhcp/dhclient6.%iface///.%.leases %iface% \
-+    dhclient -4 -v -pf /run/dhclient.%iface///.%.pid -lf /var/lib/dhcp/dhclient.%iface///.%.leases -I -df /var/lib/dhcp/dhclient6.%iface///.%.leases %iface% \
-         if (execable("/sbin/dhclient"))
--    /sbin/udhcpc -n -p /run/udhcpc.%iface///.%.pid -i %iface% [[-H %hostname%]] \
-+    udhcpc -n -p /run/udhcpc.%iface///.%.pid -i %iface% [[-H %hostname%]] \
-            [[-c %client%]] \
-         elsif (execable("/sbin/udhcpc"))
--    /sbin/dhcpcd [[-h %hostname%]] [[-i %vendor%]] [[-I %client%]] \
-+    dhcpcd [[-h %hostname%]] [[-i %vendor%]] [[-I %client%]] \
-            [[-l %leasetime%]] %iface% \
-         elsif (execable("/sbin/dhcpcd"))
-     echo 'No DHCP client software found!' >/dev/stderr; false \
-         elsif (1)
- 
-   down
--    /sbin/dhclient -4 -v -r -pf /run/dhclient.%iface///.%.pid -lf /var/lib/dhcp/dhclient.%iface///.%.leases -I -df /var/lib/dhcp/dhclient6.%iface///.%.leases %iface% \
-+    dhclient -4 -v -r -pf /run/dhclient.%iface///.%.pid -lf /var/lib/dhcp/dhclient.%iface///.%.leases -I -df /var/lib/dhcp/dhclient6.%iface///.%.leases %iface% \
-         if (execable("/sbin/dhclient"))
-     if test -f /run/udhcpc.%iface///.%.pid; then kill -USR2 $(/bin/cat /run/udhcpc.%iface///.%.pid); kill -TERM $(/bin/cat /run/udhcpc.%iface///.%.pid); fi \
-         elsif (execable("/sbin/udhcpc"))
--    /sbin/dhcpcd -k %iface% \
-+    dhcpcd -k %iface% \
-         elsif (execable("/sbin/dhcpcd"))
-     echo 'No DHCP client software found!' >/dev/stderr; false \
-         elsif (1)
-@@ -482,9 +482,9 @@ method ppp
-     unit number    -- Use /number/ as the ppp unit number.
-     options string -- Pass /string/ as additional options to pon.
-   up
--    /usr/bin/pon [[%provider%]] [[unit %unit%]] [[%options%]]
-+    pon [[%provider%]] [[unit %unit%]] [[%options%]]
-   down
--    /usr/bin/poff [[%provider%]]
-+    poff [[%provider%]]
- 
- method wvdial
-   description
-@@ -493,10 +493,10 @@ method wvdial
-   options
-     provider name  -- Use /name/ as the provider (from /etc/wvdial.conf).
-   up
--    /sbin/start-stop-daemon --start -x /usr/bin/wvdial \
-+    start-stop-daemon --start -x /usr/bin/wvdial \
-                       -p /run/wvdial.%iface///.%.pid -b -m -- [[ %provider% ]]
-   down
--    /sbin/start-stop-daemon --stop -x /usr/bin/wvdial \
-+    start-stop-daemon --stop -x /usr/bin/wvdial \
-                       -p /run/wvdial.%iface///.%.pid -s 2
- 
- 
-@@ -507,6 +507,6 @@ method ipv4ll
-     known as APIPA or IPAC, and often colloquially referred to
-     as "Zeroconf address".
-   up
--    /usr/sbin/avahi-autoipd -D %iface%
-+    avahi-autoipd -D %iface%
-   down
--    /usr/sbin/avahi-autoipd --kill %iface%
-+    avahi-autoipd --kill %iface%
--- 
-2.17.1
-
diff --git a/meta/recipes-core/ifupdown/ifupdown_0.8.22.bb b/meta/recipes-core/ifupdown/ifupdown_0.8.35.bb
similarity index 83%
rename from meta/recipes-core/ifupdown/ifupdown_0.8.22.bb
rename to meta/recipes-core/ifupdown/ifupdown_0.8.35.bb
index bd0989e8855..de8e1cf66ba 100644
--- a/meta/recipes-core/ifupdown/ifupdown_0.8.22.bb
+++ b/meta/recipes-core/ifupdown/ifupdown_0.8.35.bb
@@ -7,12 +7,11 @@ LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
 
 SRC_URI = "git://salsa.debian.org/debian/ifupdown.git;protocol=https \
-	   file://defn2-c-man-don-t-rely-on-dpkg-architecture-to-set-a.patch \
-	   file://inet-6-.defn-fix-inverted-checks-for-loopback.patch \
-	   file://99_network \
-	   file://0001-Define-FNM_EXTMATCH-for-musl.patch \
-	  "
-SRCREV = "ab5a0f464e53e172316a5ca8b5dcdc49e8848999"
+           file://defn2-c-man-don-t-rely-on-dpkg-architecture-to-set-a.patch \
+           file://99_network \
+           file://0001-Define-FNM_EXTMATCH-for-musl.patch \
+           "
+SRCREV = "4af76318cfc57f8e4a44d357104188666213bd4b"
 
 S = "${WORKDIR}/git"
 
-- 
2.17.1



^ permalink raw reply	[flat|nested] 64+ messages in thread

* [PATCH 12/28] ovmf: update to 201911
  2020-01-08 13:27 [PATCH 01/28] rpm: upgrade to 4.15.1 Alexander Kanavin
                   ` (9 preceding siblings ...)
  2020-01-08 13:27 ` [PATCH 11/28] ifupdown: update 0.8.22 -> 0.8.35 Alexander Kanavin
@ 2020-01-08 13:27 ` Alexander Kanavin
  2020-01-08 13:27 ` [PATCH 13/28] elfutils: upgrade 0.177 -> 0.178 Alexander Kanavin
                   ` (16 subsequent siblings)
  27 siblings, 0 replies; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-08 13:27 UTC (permalink / raw)
  To: openembedded-core

Remove unused patch.

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
 ...vmf-update-path-to-native-BaseTools.patch} | 11 ++++---
 ...le-adjust-to-build-in-under-bitbake.patch} | 17 +++++-----
 ... => 0003-ovmf-enable-long-path-file.patch} | 18 +++++++---
 ...patch => 0004-ovmf-Update-to-latest.patch} | 26 +++++++++++----
 ...frCompile-increase-path-length-limit.patch | 33 -------------------
 meta/recipes-core/ovmf/ovmf_git.bb            | 12 +++----
 6 files changed, 54 insertions(+), 63 deletions(-)
 rename meta/recipes-core/ovmf/ovmf/{0002-ovmf-update-path-to-native-BaseTools.patch => 0001-ovmf-update-path-to-native-BaseTools.patch} (84%)
 rename meta/recipes-core/ovmf/ovmf/{0003-BaseTools-makefile-adjust-to-build-in-under-bitbake.patch => 0002-BaseTools-makefile-adjust-to-build-in-under-bitbake.patch} (75%)
 rename meta/recipes-core/ovmf/ovmf/{0004-ovmf-enable-long-path-file.patch => 0003-ovmf-enable-long-path-file.patch} (54%)
 rename meta/recipes-core/ovmf/ovmf/{no-stack-protector-all-archs.patch => 0004-ovmf-Update-to-latest.patch} (82%)
 delete mode 100644 meta/recipes-core/ovmf/ovmf/VfrCompile-increase-path-length-limit.patch

diff --git a/meta/recipes-core/ovmf/ovmf/0002-ovmf-update-path-to-native-BaseTools.patch b/meta/recipes-core/ovmf/ovmf/0001-ovmf-update-path-to-native-BaseTools.patch
similarity index 84%
rename from meta/recipes-core/ovmf/ovmf/0002-ovmf-update-path-to-native-BaseTools.patch
rename to meta/recipes-core/ovmf/ovmf/0001-ovmf-update-path-to-native-BaseTools.patch
index 94ae5d4496e..6ecb23b29f4 100644
--- a/meta/recipes-core/ovmf/ovmf/0002-ovmf-update-path-to-native-BaseTools.patch
+++ b/meta/recipes-core/ovmf/ovmf/0001-ovmf-update-path-to-native-BaseTools.patch
@@ -1,7 +1,7 @@
-From 9e632e3f9edd09632cc877dff6ea57608f979aab Mon Sep 17 00:00:00 2001
+From 0a8362cfb9f00870d70687475665b131dd82c947 Mon Sep 17 00:00:00 2001
 From: Ricardo Neri <ricardo.neri-calderon@linux.intel.com>
 Date: Thu, 9 Jun 2016 02:23:01 -0700
-Subject: [PATCH] ovmf: update path to native BaseTools
+Subject: [PATCH 1/5] ovmf: update path to native BaseTools
 
 BaseTools is a set of utilities to build EDK-based firmware. These utilities
 are used during the build process. Thus, they need to be built natively.
@@ -11,15 +11,16 @@ with the appropriate location before building.
 
 Signed-off-by: Ricardo Neri <ricardo.neri-calderon@linux.intel.com>
 Upstream-Status: Pending
+
 ---
  OvmfPkg/build.sh | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/OvmfPkg/build.sh b/OvmfPkg/build.sh
-index eb5eb73..9058fca 100755
+index 91b1442ade..1858dae31a 100755
 --- a/OvmfPkg/build.sh
 +++ b/OvmfPkg/build.sh
-@@ -30,7 +30,7 @@ then
+@@ -24,7 +24,7 @@ then
  # this assumes svn pulls have the same root dir
  #  export EDK_TOOLS_PATH=`pwd`/../BaseTools
  # This version is for the tools source in edk2
@@ -29,5 +30,5 @@ index eb5eb73..9058fca 100755
    source edksetup.sh BaseTools
  else
 -- 
-2.8.1
+2.17.1
 
diff --git a/meta/recipes-core/ovmf/ovmf/0003-BaseTools-makefile-adjust-to-build-in-under-bitbake.patch b/meta/recipes-core/ovmf/ovmf/0002-BaseTools-makefile-adjust-to-build-in-under-bitbake.patch
similarity index 75%
rename from meta/recipes-core/ovmf/ovmf/0003-BaseTools-makefile-adjust-to-build-in-under-bitbake.patch
rename to meta/recipes-core/ovmf/ovmf/0002-BaseTools-makefile-adjust-to-build-in-under-bitbake.patch
index 070b0ac5a61..f37ed018abd 100644
--- a/meta/recipes-core/ovmf/ovmf/0003-BaseTools-makefile-adjust-to-build-in-under-bitbake.patch
+++ b/meta/recipes-core/ovmf/ovmf/0002-BaseTools-makefile-adjust-to-build-in-under-bitbake.patch
@@ -1,25 +1,26 @@
-From 2320650c6d381b914fe91b2dedaa5870279a8bcf Mon Sep 17 00:00:00 2001
+From a8bceaec1b16fffbf6810df05503d8ae9092b735 Mon Sep 17 00:00:00 2001
 From: Ricardo Neri <ricardo.neri-calderon@linux.intel.com>
 Date: Fri, 26 Jul 2019 17:34:26 -0400
-Subject: [PATCH] BaseTools: makefile: adjust to build in under bitbake
+Subject: [PATCH 2/5] BaseTools: makefile: adjust to build in under bitbake
 
 Prepend the build flags with those of bitbake. This is to build
 using the bitbake native sysroot include and library directories.
 
 Signed-off-by: Ricardo Neri <ricardo.neri@linux.intel.com>
 Upstream-Status: Pending
+
 ---
  BaseTools/Source/C/Makefiles/header.makefile | 10 +++++-----
  1 file changed, 5 insertions(+), 5 deletions(-)
 
-Index: git/BaseTools/Source/C/Makefiles/header.makefile
-===================================================================
---- git.orig/BaseTools/Source/C/Makefiles/header.makefile
-+++ git/BaseTools/Source/C/Makefiles/header.makefile
+diff --git a/BaseTools/Source/C/Makefiles/header.makefile b/BaseTools/Source/C/Makefiles/header.makefile
+index 4e9b36d98b..eb03ee33fa 100644
+--- a/BaseTools/Source/C/Makefiles/header.makefile
++++ b/BaseTools/Source/C/Makefiles/header.makefile
 @@ -62,23 +62,23 @@ $(error Bad HOST_ARCH)
  endif
  
- INCLUDE = $(TOOL_INCLUDE) -I $(MAKEROOT) -I $(MAKEROOT)/Include/Common -I $(MAKEROOT)/Include/ -I $(MAKEROOT)/Include/IndustryStandard -I $(MAKEROOT)/Common/ -I .. -I . $(ARCH_INCLUDE) 
+ INCLUDE = $(TOOL_INCLUDE) -I $(MAKEROOT) -I $(MAKEROOT)/Include/Common -I $(MAKEROOT)/Include/ -I $(MAKEROOT)/Include/IndustryStandard -I $(MAKEROOT)/Common/ -I .. -I . $(ARCH_INCLUDE)
 -BUILD_CPPFLAGS = $(INCLUDE)
 +BUILD_CPPFLAGS += $(INCLUDE)
  
@@ -46,5 +47,5 @@ Index: git/BaseTools/Source/C/Makefiles/header.makefile
  ifeq ($(HOST_ARCH), IA32)
  #
 -- 
-2.20.1
+2.17.1
 
diff --git a/meta/recipes-core/ovmf/ovmf/0004-ovmf-enable-long-path-file.patch b/meta/recipes-core/ovmf/ovmf/0003-ovmf-enable-long-path-file.patch
similarity index 54%
rename from meta/recipes-core/ovmf/ovmf/0004-ovmf-enable-long-path-file.patch
rename to meta/recipes-core/ovmf/ovmf/0003-ovmf-enable-long-path-file.patch
index d954fbe3140..ab1e7db31f5 100644
--- a/meta/recipes-core/ovmf/ovmf/0004-ovmf-enable-long-path-file.patch
+++ b/meta/recipes-core/ovmf/ovmf/0003-ovmf-enable-long-path-file.patch
@@ -1,18 +1,28 @@
-From 032fc6b1f7691bd537fd2a6bd13821fcf3c45e64 Mon Sep 17 00:00:00 2001
+From 60a5f953f747e1e9e05a40157b651cba8ea57b91 Mon Sep 17 00:00:00 2001
 From: Dengke Du <dengke.du@windriver.com>
 Date: Mon, 11 Sep 2017 02:21:55 -0400
-Subject: [PATCH] ovmf: enable long path file
+Subject: [PATCH 3/5] ovmf: enable long path file
 
 Upstream-Status: Pending
 Signed-off-by: Dengke Du <dengke.du@windriver.com>
+
 ---
  BaseTools/Source/C/Common/CommonLib.h | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/BaseTools/Source/C/Common/CommonLib.h b/BaseTools/Source/C/Common/CommonLib.h
-index 2041b89e2d..8116aa2e35 100644
+index e1cce985f7..d67d03c70c 100644
 --- a/BaseTools/Source/C/Common/CommonLib.h
 +++ b/BaseTools/Source/C/Common/CommonLib.h
-@@ -22 +22 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
+@@ -14,7 +14,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
+ #include <assert.h>
+ #define PRINTED_GUID_BUFFER_SIZE  37  // including null-termination
+ 
 -#define MAX_LONG_FILE_PATH 500
 +#define MAX_LONG_FILE_PATH 1023
+ 
+ #define MAX_UINT64 ((UINT64)0xFFFFFFFFFFFFFFFFULL)
+ #define MAX_UINT32 ((UINT32)0xFFFFFFFF)
+-- 
+2.17.1
+
diff --git a/meta/recipes-core/ovmf/ovmf/no-stack-protector-all-archs.patch b/meta/recipes-core/ovmf/ovmf/0004-ovmf-Update-to-latest.patch
similarity index 82%
rename from meta/recipes-core/ovmf/ovmf/no-stack-protector-all-archs.patch
rename to meta/recipes-core/ovmf/ovmf/0004-ovmf-Update-to-latest.patch
index 1b65348e844..c10a39d95d4 100644
--- a/meta/recipes-core/ovmf/ovmf/no-stack-protector-all-archs.patch
+++ b/meta/recipes-core/ovmf/ovmf/0004-ovmf-Update-to-latest.patch
@@ -1,15 +1,24 @@
-Author: Steve Langasek <steve.langasek@ubuntu.com>
+From 94eff316b31b4d0348af28c77be5c00bc09fe8e7 Mon Sep 17 00:00:00 2001
+From: Steve Langasek <steve.langasek@ubuntu.com>
+Date: Sat, 10 Jun 2017 01:39:36 -0700
+Subject: [PATCH 4/5] ovmf: Update to latest
+
 Description: pass -fno-stack-protector to all GCC toolchains
  The upstream build rules inexplicably pass -fno-stack-protector only
  when building for i386 and amd64.  Add this essential argument to the
  generic rules for gcc 4.4 and later.
 Last-Updated: 2016-04-12
 Upstream-Status: Pending
-Index: git/BaseTools/Conf/tools_def.template
-===================================================================
---- git.orig/BaseTools/Conf/tools_def.template
-+++ git/BaseTools/Conf/tools_def.template
-@@ -1736,10 +1736,10 @@ DEFINE GCC_X64_RC_FLAGS            = -I binary -O elf64-x86-64        -B i386
+
+---
+ BaseTools/Conf/tools_def.template | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/BaseTools/Conf/tools_def.template b/BaseTools/Conf/tools_def.template
+index ca0b122dbb..b0066c2ab8 100755
+--- a/BaseTools/Conf/tools_def.template
++++ b/BaseTools/Conf/tools_def.template
+@@ -1941,10 +1941,10 @@ DEFINE GCC_X64_RC_FLAGS            = -I binary -O elf64-x86-64        -B i386
  DEFINE GCC_ARM_RC_FLAGS            = -I binary -O elf32-littlearm     -B arm     --rename-section .data=.hii
  DEFINE GCC_AARCH64_RC_FLAGS        = -I binary -O elf64-littleaarch64 -B aarch64 --rename-section .data=.hii
  
@@ -23,7 +32,7 @@ Index: git/BaseTools/Conf/tools_def.template
  DEFINE GCC48_IA32_X64_ASLDLINK_FLAGS = DEF(GCC48_IA32_X64_DLINK_COMMON) -Wl,--entry,ReferenceAcpiTable -u ReferenceAcpiTable
  DEFINE GCC48_IA32_X64_DLINK_FLAGS    = DEF(GCC48_IA32_X64_DLINK_COMMON) -Wl,--entry,$(IMAGE_ENTRY_POINT) -u $(IMAGE_ENTRY_POINT) -Wl,-Map,$(DEST_DIR_DEBUG)/$(BASE_NAME).map,--whole-archive
  DEFINE GCC48_IA32_DLINK2_FLAGS       = -Wl,--defsym=PECOFF_HEADER_SIZE=0x220 DEF(GCC_DLINK2_FLAGS_COMMON)
-@@ -1748,7 +1748,7 @@ DEFINE GCC48_X64_DLINK2_FLAGS        = -Wl,--defsym=PECOFF_HEADER_SIZE=0x228 DEF
+@@ -1953,7 +1953,7 @@ DEFINE GCC48_X64_DLINK2_FLAGS        = -Wl,--defsym=PECOFF_HEADER_SIZE=0x228 DEF
  DEFINE GCC48_ASM_FLAGS               = DEF(GCC_ASM_FLAGS)
  DEFINE GCC48_ARM_ASM_FLAGS           = $(ARCHASM_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_ASM_FLAGS) -mlittle-endian
  DEFINE GCC48_AARCH64_ASM_FLAGS       = $(ARCHASM_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_ASM_FLAGS) -mlittle-endian
@@ -32,3 +41,6 @@ Index: git/BaseTools/Conf/tools_def.template
  DEFINE GCC48_ARM_CC_XIPFLAGS         = DEF(GCC_ARM_CC_XIPFLAGS)
  DEFINE GCC48_AARCH64_CC_FLAGS        = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -mcmodel=large DEF(GCC_AARCH64_CC_FLAGS)
  DEFINE GCC48_AARCH64_CC_XIPFLAGS     = DEF(GCC_AARCH64_CC_XIPFLAGS)
+-- 
+2.17.1
+
diff --git a/meta/recipes-core/ovmf/ovmf/VfrCompile-increase-path-length-limit.patch b/meta/recipes-core/ovmf/ovmf/VfrCompile-increase-path-length-limit.patch
deleted file mode 100644
index bb12d8beba6..00000000000
--- a/meta/recipes-core/ovmf/ovmf/VfrCompile-increase-path-length-limit.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From c7722d10c7bcf6be0adcf54abb1d406599dd7914 Mon Sep 17 00:00:00 2001
-From: Patrick Ohly <patrick.ohly@intel.com>
-Date: Fri, 24 Feb 2017 01:40:02 +0100
-Subject: [PATCH] VfrCompile: increase path length limit
-
-The VfrCompile tool has a hard-coded maximum length for path names
-which turned out to be too small by around 20 characters in the Yocto
-autobuilder setup. Increasing the maximum by a factor of 4 is
-relatively easy and makes the problem less likely.
-
-Upstream-Status: Inappropriate [configuration]
-
-Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
----
- BaseTools/Source/C/VfrCompile/EfiVfr.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/BaseTools/Source/C/VfrCompile/EfiVfr.h b/BaseTools/Source/C/VfrCompile/EfiVfr.h
-index d187902..9ad4a7b 100644
---- a/BaseTools/Source/C/VfrCompile/EfiVfr.h
-+++ b/BaseTools/Source/C/VfrCompile/EfiVfr.h
-@@ -19,7 +19,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
- #include "Common/UefiInternalFormRepresentation.h"
- #include "Common/MdeModuleHii.h"
- 
--#define MAX_PATH                 255
-+#define MAX_PATH                 1023
- #define MAX_VFR_LINE_LEN         4096
- 
- #define EFI_IFR_MAX_LENGTH       0xFF
--- 
-2.1.4
-
diff --git a/meta/recipes-core/ovmf/ovmf_git.bb b/meta/recipes-core/ovmf/ovmf_git.bb
index ff2b2a530ad..9667fa0c862 100644
--- a/meta/recipes-core/ovmf/ovmf_git.bb
+++ b/meta/recipes-core/ovmf/ovmf_git.bb
@@ -13,14 +13,14 @@ PACKAGECONFIG ??= ""
 PACKAGECONFIG[secureboot] = ",,,"
 
 SRC_URI = "gitsm://github.com/tianocore/edk2.git;branch=master;protocol=git \
-	file://0002-ovmf-update-path-to-native-BaseTools.patch \
-	file://0003-BaseTools-makefile-adjust-to-build-in-under-bitbake.patch \
-	file://0004-ovmf-enable-long-path-file.patch \
-	file://no-stack-protector-all-archs.patch \
+           file://0001-ovmf-update-path-to-native-BaseTools.patch \
+           file://0002-BaseTools-makefile-adjust-to-build-in-under-bitbake.patch \
+           file://0003-ovmf-enable-long-path-file.patch \
+           file://0004-ovmf-Update-to-latest.patch \
         "
 
-PV = "edk2-stable201905"
-SRCREV="20d2e5a125e34fc8501026613a71549b2a1a3e54"
+PV = "edk2-stable201911"
+SRCREV = "bd85bf54c268204c7a698a96f3ccd96cd77952cd"
 UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>edk2-stable.*)"
 
 inherit deploy
-- 
2.17.1



^ permalink raw reply	[flat|nested] 64+ messages in thread

* [PATCH 13/28] elfutils: upgrade 0.177 -> 0.178
  2020-01-08 13:27 [PATCH 01/28] rpm: upgrade to 4.15.1 Alexander Kanavin
                   ` (10 preceding siblings ...)
  2020-01-08 13:27 ` [PATCH 12/28] ovmf: update to 201911 Alexander Kanavin
@ 2020-01-08 13:27 ` Alexander Kanavin
  2020-01-09  1:27   ` Khem Raj
  2020-01-08 13:27 ` [PATCH 14/28] libcap: update to 2.30 Alexander Kanavin
                   ` (15 subsequent siblings)
  27 siblings, 1 reply; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-08 13:27 UTC (permalink / raw)
  To: openembedded-core

Remove 0007-Fix-control-path-where-we-have-str-as-uninitialized-.patch
as issue fixed upstream.

Rebase other patches.

Adjust ptests, pass rate is now 100% again:

======================
All 206 tests passed
(6 tests were not run)
======================

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
 .../{elfutils_0.177.bb => elfutils_0.178.bb}  | 27 +++---
 .../elfutils/files/0001-dso-link-change.patch | 12 +--
 ...libasm-may-link-with-libbz2-if-found.patch |  8 +-
 ...-fts.patch => 0001-musl-obstack-fts.patch} | 55 ++++++------
 .../{musl-libs.patch => 0002-musl-libs.patch} |  7 +-
 ...musl-utils.patch => 0003-musl-utils.patch} | 19 +++--
 ...sts.patch => 0004-Fix-error-on-musl.patch} | 20 +++--
 ...-where-we-have-str-as-uninitialized-.patch | 42 ---------
 .../elfutils/files/debian/hppa_backend.diff   | 51 ++++++-----
 .../elfutils/files/debian/mips_backend.diff   | 85 ++++++++++---------
 .../elfutils/files/debian/mips_cfi.patch      | 22 +++--
 11 files changed, 162 insertions(+), 186 deletions(-)
 rename meta/recipes-devtools/elfutils/{elfutils_0.177.bb => elfutils_0.178.bb} (87%)
 rename meta/recipes-devtools/elfutils/files/{musl-obstack-fts.patch => 0001-musl-obstack-fts.patch} (78%)
 rename meta/recipes-devtools/elfutils/files/{musl-libs.patch => 0002-musl-libs.patch} (97%)
 rename meta/recipes-devtools/elfutils/files/{musl-utils.patch => 0003-musl-utils.patch} (91%)
 rename meta/recipes-devtools/elfutils/files/{musl-tests.patch => 0004-Fix-error-on-musl.patch} (69%)
 delete mode 100644 meta/recipes-devtools/elfutils/files/0007-Fix-control-path-where-we-have-str-as-uninitialized-.patch

diff --git a/meta/recipes-devtools/elfutils/elfutils_0.177.bb b/meta/recipes-devtools/elfutils/elfutils_0.178.bb
similarity index 87%
rename from meta/recipes-devtools/elfutils/elfutils_0.177.bb
rename to meta/recipes-devtools/elfutils/elfutils_0.178.bb
index e7740c7fb46..9393628dd13 100644
--- a/meta/recipes-devtools/elfutils/elfutils_0.177.bb
+++ b/meta/recipes-devtools/elfutils/elfutils_0.178.bb
@@ -13,7 +13,6 @@ SRC_URI = "https://sourceware.org/elfutils/ftp/${PV}/${BP}.tar.bz2 \
            file://0003-fixheadercheck.patch \
            file://0004-Disable-the-test-to-convert-euc-jp.patch \
            file://0006-Fix-build-on-aarch64-musl.patch \
-           file://0007-Fix-control-path-where-we-have-str-as-uninitialized-.patch \
            file://0001-libasm-may-link-with-libbz2-if-found.patch \
            file://0001-libelf-elf_end.c-check-data_list.data.d.d_buf-before.patch \
            file://debian/hppa_backend.diff \
@@ -36,17 +35,17 @@ SRC_URI = "https://sourceware.org/elfutils/ftp/${PV}/${BP}.tar.bz2 \
            file://ptest.patch \
            "
 SRC_URI_append_libc-musl = " \
-           file://musl-obstack-fts.patch \
-           file://musl-libs.patch \
-           file://musl-utils.patch \
-           file://musl-tests.patch \
+           file://0001-musl-obstack-fts.patch \
+           file://0002-musl-libs.patch \
+           file://0003-musl-utils.patch \
+           file://0004-Fix-error-on-musl.patch \
            "
-SRC_URI[md5sum] = "0b583722f911e1632544718d502aab87"
-SRC_URI[sha256sum] = "fa489deccbcae7d8c920f60d85906124c1989c591196d90e0fd668e3dc05042e"
+SRC_URI[md5sum] = "5480d0b7174446aba13a6adde107287f"
+SRC_URI[sha256sum] = "31e7a00e96d4e9c4bda452e1f2cdac4daf8abd24f5e154dee232131899f3a0f2"
 
-inherit autotools gettext ptest
+inherit autotools gettext ptest pkgconfig
 
-EXTRA_OECONF = "--program-prefix=eu-"
+EXTRA_OECONF = "--program-prefix=eu- --disable-debuginfod"
 
 DEPENDS_BZIP2 = "bzip2-replacement-native"
 DEPENDS_BZIP2_class-target = "bzip2"
@@ -73,10 +72,11 @@ do_compile_ptest() {
 do_install_ptest() {
 	if [ ${PTEST_ENABLED} = "1" ]; then
 		# copy the files which needed by the cases
-		TEST_FILES="strip strip.o addr2line elfcmp objdump readelf size.o nm.o nm elflint"
+		TEST_FILES="strip strip.o addr2line elfcmp objdump readelf size.o nm.o nm elflint elfcompress elfclassify stack unstrip"
 		install -d -m 755                       ${D}${PTEST_PATH}/src
 		install -d -m 755                       ${D}${PTEST_PATH}/libelf
 		install -d -m 755                       ${D}${PTEST_PATH}/libdw
+		install -d -m 755                       ${D}${PTEST_PATH}/libasm
 		for test_file in ${TEST_FILES}; do
 			if [ -f ${B}/src/${test_file} ]; then
 				cp -r ${B}/src/${test_file} ${D}${PTEST_PATH}/src
@@ -84,6 +84,7 @@ do_install_ptest() {
 		done
 		cp ${D}${libdir}/libelf-${PV}.so ${D}${PTEST_PATH}/libelf/libelf.so
 		cp ${D}${libdir}/libdw-${PV}.so ${D}${PTEST_PATH}/libdw/libdw.so
+		cp ${D}${libdir}/libasm-${PV}.so ${D}${PTEST_PATH}/libasm/libasm.so
 		cp -r ${S}/tests/                       ${D}${PTEST_PATH}
 		cp -r ${B}/tests/*                      ${D}${PTEST_PATH}/tests
 		cp -r ${B}/config.h                     ${D}${PTEST_PATH}
@@ -146,10 +147,14 @@ INHIBIT_PACKAGE_STRIP_FILES = "\
     ${PKGD}${PTEST_PATH}/src/readelf \
     ${PKGD}${PTEST_PATH}/src/nm \
     ${PKGD}${PTEST_PATH}/src/elflint \
+    ${PKGD}${PTEST_PATH}/src/elfclassify \
+    ${PKGD}${PTEST_PATH}/src/stack \
+    ${PKGD}${PTEST_PATH}/src/unstrip \
     ${PKGD}${PTEST_PATH}/libelf/libelf.so \
     ${PKGD}${PTEST_PATH}/libdw/libdw.so \
+    ${PKGD}${PTEST_PATH}/libasm/libasm.so \
     ${PKGD}${PTEST_PATH}/backends/libebl_i386.so \
     ${PKGD}${PTEST_PATH}/backends/libebl_x86_64.so \
 "
 
-PRIVATE_LIBS_${PN}-ptest = "libdw.so.1 libelf.so.1"
+PRIVATE_LIBS_${PN}-ptest = "libdw.so.1 libelf.so.1 libasm.so.1"
diff --git a/meta/recipes-devtools/elfutils/files/0001-dso-link-change.patch b/meta/recipes-devtools/elfutils/files/0001-dso-link-change.patch
index af79ef496dd..62031073e31 100644
--- a/meta/recipes-devtools/elfutils/files/0001-dso-link-change.patch
+++ b/meta/recipes-devtools/elfutils/files/0001-dso-link-change.patch
@@ -1,4 +1,4 @@
-From b99aa12cf879ce200e03d75e543c7ab2dfa5503b Mon Sep 17 00:00:00 2001
+From ec9a7742734aae5417c0ebbffce66ac353e6cae7 Mon Sep 17 00:00:00 2001
 From: Hongxu Jia <hongxu.jia@windriver.com>
 Date: Tue, 15 Aug 2017 17:10:57 +0800
 Subject: [PATCH] dso link change
@@ -23,10 +23,10 @@ Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
  2 files changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/src/Makefile.am b/src/Makefile.am
-index 2b1c0dc..9305b84 100644
+index e462e7d..ea1215b 100644
 --- a/src/Makefile.am
 +++ b/src/Makefile.am
-@@ -44,7 +44,7 @@ libdw = ../libdw/libdw.a -lz $(zip_LIBS) $(libelf) $(libebl) -ldl
+@@ -45,7 +45,7 @@ libdw = ../libdw/libdw.a -lz $(zip_LIBS) $(libelf) -ldl -lpthread
  libelf = ../libelf/libelf.a -lz
  else
  libasm = ../libasm/libasm.so
@@ -34,12 +34,12 @@ index 2b1c0dc..9305b84 100644
 +libdw = ../libdw/libdw.so $(zip_LIBS) $(libelf) $(libebl) -ldl
  libelf = ../libelf/libelf.so
  endif
- libebl = ../libebl/libebl.a
+ libebl = ../libebl/libebl.a ../backends/libebl_backends.a ../libcpu/libcpu.a
 diff --git a/tests/Makefile.am b/tests/Makefile.am
-index 1b0c7d3..bced19b 100644
+index eab4ae6..f59a01f 100644
 --- a/tests/Makefile.am
 +++ b/tests/Makefile.am
-@@ -476,7 +476,7 @@ libdw = ../libdw/libdw.a -lz $(zip_LIBS) $(libelf) $(libebl) -ldl
+@@ -516,7 +516,7 @@ libdw = ../libdw/libdw.a -lz $(zip_LIBS) $(libelf) $(libebl) -ldl -lpthread
  libelf = ../libelf/libelf.a -lz
  libasm = ../libasm/libasm.a
  else
diff --git a/meta/recipes-devtools/elfutils/files/0001-libasm-may-link-with-libbz2-if-found.patch b/meta/recipes-devtools/elfutils/files/0001-libasm-may-link-with-libbz2-if-found.patch
index 0d533c8f10a..73ead6d412f 100644
--- a/meta/recipes-devtools/elfutils/files/0001-libasm-may-link-with-libbz2-if-found.patch
+++ b/meta/recipes-devtools/elfutils/files/0001-libasm-may-link-with-libbz2-if-found.patch
@@ -1,4 +1,4 @@
-From d7be687c35fa42954874034c82ca9059d28196fe Mon Sep 17 00:00:00 2001
+From 8e5fff8b1d819e0870fb22b27950bb5f10c7a272 Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Wed, 4 Oct 2017 22:30:46 -0700
 Subject: [PATCH] libasm may link with libbz2 if found
@@ -17,16 +17,16 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
  1 file changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/src/Makefile.am b/src/Makefile.am
-index 9305b84..9b7e853 100644
+index ea1215b..13d9bda 100644
 --- a/src/Makefile.am
 +++ b/src/Makefile.am
-@@ -39,11 +39,11 @@ EXTRA_DIST += make-debug-archive.in
+@@ -40,11 +40,11 @@ EXTRA_DIST += make-debug-archive.in
  CLEANFILES += make-debug-archive
  
  if BUILD_STATIC
 -libasm = ../libasm/libasm.a
 +libasm = ../libasm/libasm.a $(zip_LIBS)
- libdw = ../libdw/libdw.a -lz $(zip_LIBS) $(libelf) $(libebl) -ldl
+ libdw = ../libdw/libdw.a -lz $(zip_LIBS) $(libelf) -ldl -lpthread
  libelf = ../libelf/libelf.a -lz
  else
 -libasm = ../libasm/libasm.so
diff --git a/meta/recipes-devtools/elfutils/files/musl-obstack-fts.patch b/meta/recipes-devtools/elfutils/files/0001-musl-obstack-fts.patch
similarity index 78%
rename from meta/recipes-devtools/elfutils/files/musl-obstack-fts.patch
rename to meta/recipes-devtools/elfutils/files/0001-musl-obstack-fts.patch
index 40f2b69cf4c..f751a2ecdbe 100644
--- a/meta/recipes-devtools/elfutils/files/musl-obstack-fts.patch
+++ b/meta/recipes-devtools/elfutils/files/0001-musl-obstack-fts.patch
@@ -1,7 +1,7 @@
-From 77b89dbc9f9f965ad0ef2e341d7d46bce5f07549 Mon Sep 17 00:00:00 2001
+From 8ccf3d92b8766b53f203df7e01b489604ef851f3 Mon Sep 17 00:00:00 2001
 From: Hongxu Jia <hongxu.jia@windriver.com>
 Date: Fri, 23 Aug 2019 10:17:25 +0800
-Subject: [PATCH 1/3] musl-obstack-fts
+Subject: [PATCH 1/4] musl-obstack-fts
 
 Look for libfts and libobstack during configure, these
 libraries are external to libc when using musl, whereas
@@ -12,17 +12,18 @@ Upstream-Status: Inappropriate [workaround for musl]
 
 Rebase to 0.177
 Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+
 ---
- configure.ac      | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ configure.ac      | 54 +++++++++++++++++++++++++++++++++++++++++++++++
  libdw/Makefile.am |  2 +-
- src/Makefile.am   |  8 ++++----
- 3 files changed, 59 insertions(+), 5 deletions(-)
+ src/Makefile.am   |  6 +++---
+ 3 files changed, 58 insertions(+), 4 deletions(-)
 
 diff --git a/configure.ac b/configure.ac
-index f93964c..b87b762 100644
+index cad7b2b..6d4229b 100644
 --- a/configure.ac
 +++ b/configure.ac
-@@ -494,6 +494,60 @@ else
+@@ -529,6 +529,60 @@ else
  fi
  AC_SUBST([argp_LDADD])
  
@@ -84,45 +85,43 @@ index f93964c..b87b762 100644
  
  dnl Documentation.
 diff --git a/libdw/Makefile.am b/libdw/Makefile.am
-index 7a3d532..a541fa3 100644
+index 33b5838..ff92e02 100644
 --- a/libdw/Makefile.am
 +++ b/libdw/Makefile.am
-@@ -108,7 +108,7 @@ am_libdw_pic_a_OBJECTS = $(libdw_a_SOURCES:.c=.os)
- libdw_so_LIBS = libdw_pic.a ../libdwelf/libdwelf_pic.a \
- 	  ../libdwfl/libdwfl_pic.a ../libebl/libebl.a
+@@ -109,7 +109,7 @@ libdw_so_LIBS = ../libebl/libebl_pic.a ../backends/libebl_backends_pic.a \
+ 		../libcpu/libcpu_pic.a libdw_pic.a ../libdwelf/libdwelf_pic.a \
+ 		../libdwfl/libdwfl_pic.a
  libdw_so_DEPS = ../lib/libeu.a ../libelf/libelf.so
--libdw_so_LDLIBS = $(libdw_so_DEPS) -ldl -lz $(argp_LDADD) $(zip_LIBS)
-+libdw_so_LDLIBS = $(libdw_so_DEPS) -ldl -lz $(argp_LDADD) $(fts_LDADD) $(zip_LIBS)
+-libdw_so_LDLIBS = $(libdw_so_DEPS) -ldl -lz $(argp_LDADD) $(zip_LIBS) -pthread
++libdw_so_LDLIBS = $(libdw_so_DEPS) -ldl -lz $(argp_LDADD) $(fts_LDADD) $(zip_LIBS) -pthread
  libdw_so_SOURCES =
  libdw.so$(EXEEXT): $(srcdir)/libdw.map $(libdw_so_LIBS) $(libdw_so_DEPS)
- # The rpath is necessary for libebl because its $ORIGIN use will
+ 	$(AM_V_CCLD)$(LINK) $(dso_LDFLAGS) -o $@ \
 diff --git a/src/Makefile.am b/src/Makefile.am
-index b72f853..2f3dfce 100644
+index 13d9bda..d5a4f7d 100644
 --- a/src/Makefile.am
 +++ b/src/Makefile.am
-@@ -69,8 +69,8 @@ ar_no_Wstack_usage = yes
+@@ -69,7 +69,7 @@ ar_no_Wstack_usage = yes
  unstrip_no_Wstack_usage = yes
  
- readelf_LDADD = $(libdw) $(libebl) $(libelf) $(libeu) $(argp_LDADD) -ldl
--nm_LDADD = $(libdw) $(libebl) $(libelf) $(libeu) $(argp_LDADD) -ldl \
--	   $(demanglelib)
-+nm_LDADD = $(libdw) $(libebl) $(libelf) $(libeu) $(argp_LDADD) \
-+	   $(obstack_LDADD) -ldl $(demanglelib)
+ readelf_LDADD = $(libdw) $(libebl) $(libelf) $(libeu) $(argp_LDADD)
+-nm_LDADD = $(libdw) $(libebl) $(libelf) $(libeu) $(argp_LDADD) \
++nm_LDADD = $(libdw) $(libebl) $(libelf) $(libeu) $(argp_LDADD) $(obstack_LDADD) \
+ 	   $(demanglelib)
  size_LDADD = $(libelf) $(libeu) $(argp_LDADD)
- strip_LDADD = $(libebl) $(libelf) $(libdw) $(libeu) $(argp_LDADD) -ldl
- elflint_LDADD  = $(libebl) $(libelf) $(libeu) $(argp_LDADD) -ldl
+ strip_LDADD = $(libebl) $(libelf) $(libdw) $(libeu) $(argp_LDADD)
 @@ -78,9 +78,9 @@ findtextrel_LDADD = $(libdw) $(libelf) $(libeu) $(argp_LDADD)
  addr2line_LDADD = $(libdw) $(libelf) $(libeu) $(argp_LDADD) $(demanglelib)
- elfcmp_LDADD = $(libebl) $(libelf) $(libeu) $(argp_LDADD) -ldl
- objdump_LDADD  = $(libasm) $(libebl) $(libelf) $(libeu) $(argp_LDADD) -ldl
+ elfcmp_LDADD = $(libebl) $(libdw) $(libelf) $(libeu) $(argp_LDADD)
+ objdump_LDADD  = $(libasm) $(libebl) $(libdw) $(libelf) $(libeu) $(argp_LDADD)
 -ranlib_LDADD = libar.a $(libelf) $(libeu) $(argp_LDADD)
 +ranlib_LDADD = libar.a $(libelf) $(libeu) $(argp_LDADD) $(obstack_LDADD)
  strings_LDADD = $(libelf) $(libeu) $(argp_LDADD)
 -ar_LDADD = libar.a $(libelf) $(libeu) $(argp_LDADD)
 +ar_LDADD = libar.a $(libelf) $(libeu) $(argp_LDADD) $(obstack_LDADD)
- unstrip_LDADD = $(libebl) $(libelf) $(libdw) $(libeu) $(argp_LDADD) -ldl
- stack_LDADD = $(libebl) $(libelf) $(libdw) $(libeu) $(argp_LDADD) -ldl $(demanglelib)
+ unstrip_LDADD = $(libebl) $(libelf) $(libdw) $(libeu) $(argp_LDADD)
+ stack_LDADD = $(libebl) $(libelf) $(libdw) $(libeu) $(argp_LDADD) $(demanglelib)
  elfcompress_LDADD = $(libebl) $(libelf) $(libdw) $(libeu) $(argp_LDADD)
 -- 
-2.7.4
+2.17.1
 
diff --git a/meta/recipes-devtools/elfutils/files/musl-libs.patch b/meta/recipes-devtools/elfutils/files/0002-musl-libs.patch
similarity index 97%
rename from meta/recipes-devtools/elfutils/files/musl-libs.patch
rename to meta/recipes-devtools/elfutils/files/0002-musl-libs.patch
index b9b9f120dfa..cf146838645 100644
--- a/meta/recipes-devtools/elfutils/files/musl-libs.patch
+++ b/meta/recipes-devtools/elfutils/files/0002-musl-libs.patch
@@ -1,7 +1,7 @@
-From d5a1651df9884fcf57ed320bc2f866538af2f420 Mon Sep 17 00:00:00 2001
+From ea908c7009de5a208383abf4bec4c6b3d9519ca3 Mon Sep 17 00:00:00 2001
 From: Hongxu Jia <hongxu.jia@windriver.com>
 Date: Fri, 23 Aug 2019 10:18:47 +0800
-Subject: [PATCH 2/3] musl-libs
+Subject: [PATCH 2/4] musl-libs
 
 Collection of fixes needed to compile libelf and other libraries
 provided by elfutils for musl targets
@@ -14,6 +14,7 @@ Upstream-Status: Inappropriate [workaround for musl]
 
 Rebase to 0.177
 Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+
 ---
  lib/error.h                    | 27 +++++++++++++++++++++++++++
  lib/fixedsizehash.h            |  1 -
@@ -140,5 +141,5 @@ index bed273d..be228e6 100644
 +#endif
  #endif	/* elf.h */
 -- 
-2.7.4
+2.17.1
 
diff --git a/meta/recipes-devtools/elfutils/files/musl-utils.patch b/meta/recipes-devtools/elfutils/files/0003-musl-utils.patch
similarity index 91%
rename from meta/recipes-devtools/elfutils/files/musl-utils.patch
rename to meta/recipes-devtools/elfutils/files/0003-musl-utils.patch
index a8ad9312364..79c9d9ad578 100644
--- a/meta/recipes-devtools/elfutils/files/musl-utils.patch
+++ b/meta/recipes-devtools/elfutils/files/0003-musl-utils.patch
@@ -1,7 +1,7 @@
-From 7f5e2fd86d54e0a4d195ec65afb9b411829dff9f Mon Sep 17 00:00:00 2001
+From 94028b16e56c8eef1aa02dcc4da268a0e471b4ea Mon Sep 17 00:00:00 2001
 From: Hongxu Jia <hongxu.jia@windriver.com>
 Date: Fri, 23 Aug 2019 10:19:48 +0800
-Subject: [PATCH 3/3] musl-utils
+Subject: [PATCH 3/4] musl-utils
 
 Provide missing defines which otherwise are available on glibc system headers
 
@@ -13,6 +13,7 @@ Upstream-Status: Inappropriate [workaround for musl]
 
 Rebase to 0.177
 Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+
 ---
  src/arlib.h       |  6 ++++++
  src/elfcompress.c |  7 +++++++
@@ -57,10 +58,10 @@ index 6ba6af4..0c7674b 100644
  ARGP_PROGRAM_VERSION_HOOK_DEF = print_version;
  
 diff --git a/src/readelf.c b/src/readelf.c
-index 5c02a9b..817562d 100644
+index 5994615..f3cc071 100644
 --- a/src/readelf.c
 +++ b/src/readelf.c
-@@ -4813,10 +4813,11 @@ listptr_base (struct listptr *p)
+@@ -4829,10 +4829,11 @@ listptr_base (struct listptr *p)
    return cudie_base (&cu);
  }
  
@@ -74,7 +75,7 @@ index 5c02a9b..817562d 100644
    struct listptr *p1 = (void *) a;
    struct listptr *p2 = (void *) b;
  
-@@ -4832,21 +4833,21 @@ compare_listptr (const void *a, const void *b, void *arg)
+@@ -4848,21 +4849,21 @@ compare_listptr (const void *a, const void *b, void *arg)
  	  p1->warned = p2->warned = true;
  	  error (0, 0,
  		 gettext ("%s %#" PRIx64 " used with different address sizes"),
@@ -99,7 +100,7 @@ index 5c02a9b..817562d 100644
  	}
        if (p1->attr != p2 ->attr)
  	{
-@@ -4854,7 +4855,7 @@ compare_listptr (const void *a, const void *b, void *arg)
+@@ -4870,7 +4871,7 @@ compare_listptr (const void *a, const void *b, void *arg)
  	  error (0, 0,
  		 gettext ("%s %#" PRIx64
  			  " used with different attribute %s and %s"),
@@ -108,7 +109,7 @@ index 5c02a9b..817562d 100644
  		 dwarf_attr_name (p2->attr));
  	}
      }
-@@ -4926,8 +4927,11 @@ static void
+@@ -4942,8 +4943,11 @@ static void
  sort_listptr (struct listptr_table *table, const char *name)
  {
    if (table->n > 0)
@@ -141,7 +142,7 @@ index 4054c2a..d2d2176 100644
  
  /* Name and version of program.  */
 diff --git a/src/unstrip.c b/src/unstrip.c
-index fc87832..21ea6b3 100644
+index 9b8c09a..1fb5063 100644
 --- a/src/unstrip.c
 +++ b/src/unstrip.c
 @@ -56,6 +56,15 @@
@@ -161,5 +162,5 @@ index fc87832..21ea6b3 100644
  ARGP_PROGRAM_VERSION_HOOK_DEF = print_version;
  
 -- 
-2.7.4
+2.17.1
 
diff --git a/meta/recipes-devtools/elfutils/files/musl-tests.patch b/meta/recipes-devtools/elfutils/files/0004-Fix-error-on-musl.patch
similarity index 69%
rename from meta/recipes-devtools/elfutils/files/musl-tests.patch
rename to meta/recipes-devtools/elfutils/files/0004-Fix-error-on-musl.patch
index be35791b1af..1b2f9ed98b2 100644
--- a/meta/recipes-devtools/elfutils/files/musl-tests.patch
+++ b/meta/recipes-devtools/elfutils/files/0004-Fix-error-on-musl.patch
@@ -1,4 +1,7 @@
-Fix error on musl:
+From 7ff8cbecde7455b530fa7894a78d2326799f2556 Mon Sep 17 00:00:00 2001
+From: Richard Purdie <richard.purdie@linuxfoundation.org>
+Date: Wed, 1 May 2019 22:15:03 +0100
+Subject: [PATCH 4/4] Fix error on musl:
 
 | ../../elfutils-0.176/tests/elfstrmerge.c: In function 'main':
 | ../../elfutils-0.176/tests/elfstrmerge.c:370:60: error: 'ALLPERMS' undeclared (first use in this function); did you mean 'EPERM'?
@@ -11,10 +14,14 @@ Upstream-Status: Inappropriate [workaround in musl]
 
 Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
 
-Index: elfutils-0.176/tests/elfstrmerge.c
-===================================================================
---- elfutils-0.176.orig/tests/elfstrmerge.c
-+++ elfutils-0.176/tests/elfstrmerge.c
+---
+ tests/elfstrmerge.c | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/tests/elfstrmerge.c b/tests/elfstrmerge.c
+index ba0d68d..1d2447f 100644
+--- a/tests/elfstrmerge.c
++++ b/tests/elfstrmerge.c
 @@ -33,6 +33,11 @@
  #include ELFUTILS_HEADER(dwelf)
  #include "elf-knowledge.h"
@@ -27,3 +34,6 @@ Index: elfutils-0.176/tests/elfstrmerge.c
  /* The original ELF file.  */
  static int fd = -1;
  static Elf *elf = NULL;
+-- 
+2.17.1
+
diff --git a/meta/recipes-devtools/elfutils/files/0007-Fix-control-path-where-we-have-str-as-uninitialized-.patch b/meta/recipes-devtools/elfutils/files/0007-Fix-control-path-where-we-have-str-as-uninitialized-.patch
deleted file mode 100644
index 611a24c0f54..00000000000
--- a/meta/recipes-devtools/elfutils/files/0007-Fix-control-path-where-we-have-str-as-uninitialized-.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From 112d1645bab7922c7796fe32ddea8fa6e1bbded1 Mon Sep 17 00:00:00 2001
-From: Hongxu Jia <hongxu.jia@windriver.com>
-Date: Fri, 29 Jun 2018 15:14:28 +0800
-Subject: [PATCH] Fix control path where we have str as uninitialized string
-
-|
-/home/ubuntu/work/oe/openembedded-core/build/tmp-musl/work/i586-oe-linux-musl/elfutils/0.164-r0/elfutils-0.164/libcpu/i386_disasm.c:
-In function 'i386_disasm':
-|
-/home/ubuntu/work/oe/openembedded-core/build/tmp-musl/work/i586-oe-linux-musl/elfutils/0.164-r0/elfutils-0.164/libcpu/i386_disasm.c:310:5:
-error: 'str' may be used uninitialized in this function
-[-Werror=maybe-uninitialized]
-|      memcpy (buf + bufcnt, _str, _len);           \
-|      ^
-|
-/home/ubuntu/work/oe/openembedded-core/build/tmp-musl/work/i586-oe-linux-musl/elfutils/0.164-r0/elfutils-0.164/libcpu/i386_disasm.c:709:17:
-note: 'str' was declared here
-|      const char *str;
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-Upstream-Status: Pending
-
-Rebase to 0.172
-
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
-
----
- libcpu/i386_disasm.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/libcpu/i386_disasm.c b/libcpu/i386_disasm.c
-index a7e03f9..837a3a8 100644
---- a/libcpu/i386_disasm.c
-+++ b/libcpu/i386_disasm.c
-@@ -821,6 +821,7 @@ i386_disasm (Ebl *ebl __attribute__((unused)),
- 			    }
- 			  FALLTHROUGH;
- 			default:
-+			  str = "";
- 			  assert (! "INVALID not handled");
- 			}
- 		    }
diff --git a/meta/recipes-devtools/elfutils/files/debian/hppa_backend.diff b/meta/recipes-devtools/elfutils/files/debian/hppa_backend.diff
index 4460d582c73..53fa2f435b4 100644
--- a/meta/recipes-devtools/elfutils/files/debian/hppa_backend.diff
+++ b/meta/recipes-devtools/elfutils/files/debian/hppa_backend.diff
@@ -1,4 +1,4 @@
-From 8efad9105b38985bea373416ae8fcacf21d1d129 Mon Sep 17 00:00:00 2001
+From ffb811e18d7046d5bbe54ede5b1b7e14eaac0146 Mon Sep 17 00:00:00 2001
 From: Hongxu Jia <hongxu.jia@windriver.com>
 Date: Wed, 21 Aug 2019 15:44:18 +0800
 Subject: [PATCH] hppa backend
@@ -6,15 +6,16 @@ Subject: [PATCH] hppa backend
 Rebase to 0.177
 Upstream-Status: Pending [from debian]
 Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+
 ---
  backends/Makefile.am      |   7 +-
  backends/libebl_parisc.h  |   9 ++
- backends/parisc_init.c    |  73 ++++++++++++++++
- backends/parisc_regs.c    | 159 ++++++++++++++++++++++++++++++++++
- backends/parisc_reloc.def | 128 ++++++++++++++++++++++++++++
- backends/parisc_retval.c  | 213 ++++++++++++++++++++++++++++++++++++++++++++++
- backends/parisc_symbol.c  | 113 ++++++++++++++++++++++++
- libelf/elf.h              |  11 +++
+ backends/parisc_init.c    |  73 +++++++++++++
+ backends/parisc_regs.c    | 159 ++++++++++++++++++++++++++++
+ backends/parisc_reloc.def | 128 +++++++++++++++++++++++
+ backends/parisc_retval.c  | 213 ++++++++++++++++++++++++++++++++++++++
+ backends/parisc_symbol.c  | 113 ++++++++++++++++++++
+ libelf/elf.h              |  11 ++
  8 files changed, 711 insertions(+), 2 deletions(-)
  create mode 100644 backends/libebl_parisc.h
  create mode 100644 backends/parisc_init.c
@@ -24,31 +25,30 @@ Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
  create mode 100644 backends/parisc_symbol.c
 
 diff --git a/backends/Makefile.am b/backends/Makefile.am
-index 175468f..91a38e2 100644
+index f405212..4755f61 100644
 --- a/backends/Makefile.am
 +++ b/backends/Makefile.am
-@@ -33,16 +33,19 @@ AM_CPPFLAGS += -I$(top_srcdir)/libebl -I$(top_srcdir)/libasm \
- 
+@@ -37,7 +37,9 @@ AM_CPPFLAGS += -I$(top_srcdir)/libebl -I$(top_srcdir)/libasm \
+ noinst_LIBRARIES = libebl_backends.a libebl_backends_pic.a
  
  modules = i386 sh x86_64 ia64 alpha arm aarch64 sparc ppc ppc64 s390 \
 -	  tilegx m68k bpf riscv csky
 +	  tilegx m68k bpf riscv csky parisc
- libebl_pic = libebl_i386_pic.a libebl_sh_pic.a libebl_x86_64_pic.a    \
- 	     libebl_ia64_pic.a libebl_alpha_pic.a libebl_arm_pic.a    \
- 	     libebl_aarch64_pic.a libebl_sparc_pic.a libebl_ppc_pic.a \
- 	     libebl_ppc64_pic.a libebl_s390_pic.a libebl_tilegx_pic.a \
- 	     libebl_m68k_pic.a libebl_bpf_pic.a libebl_riscv_pic.a    \
--	     libebl_csky_pic.a
-+	     libebl_csky_pic.a libebl_parisc_pic.a
- noinst_LIBRARIES = $(libebl_pic)
- noinst_DATA = $(libebl_pic:_pic.a=.so)
- 
++
 +parisc_SRCS = parisc_init.c parisc_symbol.c parisc_regs.c parisc_retval.c
-+libebl_parisc_pic_a_SOURCES = $(parisc_SRCS)
-+am_libebl_parisc_pic_a_OBJECTS = $(parisc_SRCS:.c=.os)
  
- libelf = ../libelf/libelf.so
- libdw = ../libdw/libdw.so
+ i386_SRCS = i386_init.c i386_symbol.c i386_corenote.c i386_cfi.c \
+ 	    i386_retval.c i386_regs.c i386_auxv.c i386_syscall.c \
+@@ -102,7 +104,8 @@ libebl_backends_a_SOURCES = $(i386_SRCS) $(sh_SRCS) $(x86_64_SRCS) \
+ 			    $(ia64_SRCS) $(alpha_SRCS) $(arm_SRCS) \
+ 			    $(aarch64_SRCS) $(sparc_SRCS) $(ppc_SRCS) \
+ 			    $(ppc64_SRCS) $(s390_SRCS) $(tilegx_SRCS) \
+-			    $(m68k_SRCS) $(bpf_SRCS) $(riscv_SRCS) $(csky_SRCS)
++			    $(m68k_SRCS) $(bpf_SRCS) $(riscv_SRCS) $(csky_SRCS) \
++                            $(parisc_SRCS)
+ 
+ libebl_backends_pic_a_SOURCES =
+ am_libebl_backends_pic_a_OBJECTS = $(libebl_backends_a_SOURCES:.c=.os)
 diff --git a/backends/libebl_parisc.h b/backends/libebl_parisc.h
 new file mode 100644
 index 0000000..f473b79
@@ -826,6 +826,3 @@ index 01648bd..218ceb2 100644
  #define R_PARISC_SEGREL64	112	/* 64 bits segment rel. address.  */
  #define R_PARISC_PLTOFF14WR	115	/* PLT-rel. address, right 14 bits.  */
  #define R_PARISC_PLTOFF14DR	116	/* PLT-rel. address, right 14 bits.  */
--- 
-2.7.4
-
diff --git a/meta/recipes-devtools/elfutils/files/debian/mips_backend.diff b/meta/recipes-devtools/elfutils/files/debian/mips_backend.diff
index 1097b0ec6f2..749faa403f5 100644
--- a/meta/recipes-devtools/elfutils/files/debian/mips_backend.diff
+++ b/meta/recipes-devtools/elfutils/files/debian/mips_backend.diff
@@ -1,4 +1,4 @@
-From 68b497668cde5171880d073a7ea50d11c3bddbfc Mon Sep 17 00:00:00 2001
+From 7e0b036d087dfff7f5e306f52fc78745f99454c3 Mon Sep 17 00:00:00 2001
 From: Hongxu Jia <hongxu.jia@windriver.com>
 Date: Wed, 21 Aug 2019 15:49:52 +0800
 Subject: [PATCH] mips backend
@@ -7,15 +7,16 @@ Rebase to 0.177
 Upstream-Status: Pending [from debian]
 
 Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+
 ---
- backends/Makefile.am    |   8 +-
- backends/mips_init.c    |  59 +++++++++
- backends/mips_regs.c    | 104 ++++++++++++++++
- backends/mips_reloc.def |  79 ++++++++++++
- backends/mips_retval.c  | 321 ++++++++++++++++++++++++++++++++++++++++++++++++
- backends/mips_symbol.c  |  53 ++++++++
- libebl/eblopenbackend.c |   2 +
- 7 files changed, 624 insertions(+), 2 deletions(-)
+ backends/Makefile.am    |   6 +-
+ backends/mips_init.c    |  59 ++++++++
+ backends/mips_regs.c    | 104 +++++++++++++
+ backends/mips_reloc.def |  79 ++++++++++
+ backends/mips_retval.c  | 321 ++++++++++++++++++++++++++++++++++++++++
+ backends/mips_symbol.c  |  53 +++++++
+ libebl/eblopenbackend.c |   3 +
+ 7 files changed, 623 insertions(+), 2 deletions(-)
  create mode 100644 backends/mips_init.c
  create mode 100644 backends/mips_regs.c
  create mode 100644 backends/mips_reloc.def
@@ -23,36 +24,34 @@ Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
  create mode 100644 backends/mips_symbol.c
 
 diff --git a/backends/Makefile.am b/backends/Makefile.am
-index 91a38e2..aba8a4a 100644
+index 4755f61..07d45d7 100644
 --- a/backends/Makefile.am
 +++ b/backends/Makefile.am
-@@ -33,13 +33,13 @@ AM_CPPFLAGS += -I$(top_srcdir)/libebl -I$(top_srcdir)/libasm \
- 
+@@ -37,7 +37,7 @@ AM_CPPFLAGS += -I$(top_srcdir)/libebl -I$(top_srcdir)/libasm \
+ noinst_LIBRARIES = libebl_backends.a libebl_backends_pic.a
  
  modules = i386 sh x86_64 ia64 alpha arm aarch64 sparc ppc ppc64 s390 \
 -	  tilegx m68k bpf riscv csky parisc
 +	  tilegx m68k bpf riscv csky parisc mips
- libebl_pic = libebl_i386_pic.a libebl_sh_pic.a libebl_x86_64_pic.a    \
- 	     libebl_ia64_pic.a libebl_alpha_pic.a libebl_arm_pic.a    \
- 	     libebl_aarch64_pic.a libebl_sparc_pic.a libebl_ppc_pic.a \
- 	     libebl_ppc64_pic.a libebl_s390_pic.a libebl_tilegx_pic.a \
- 	     libebl_m68k_pic.a libebl_bpf_pic.a libebl_riscv_pic.a    \
--	     libebl_csky_pic.a libebl_parisc_pic.a
-+	     libebl_csky_pic.a libebl_parisc_pic.a libebl_mips_pic.a
- noinst_LIBRARIES = $(libebl_pic)
- noinst_DATA = $(libebl_pic:_pic.a=.so)
  
-@@ -145,6 +145,10 @@ csky_SRCS = csky_attrs.c csky_init.c csky_symbol.c csky_cfi.c \
- libebl_csky_pic_a_SOURCES = $(csky_SRCS)
- am_libebl_csky_pic_a_OBJECTS = $(csky_SRCS:.c=.os)
+ parisc_SRCS = parisc_init.c parisc_symbol.c parisc_regs.c parisc_retval.c
+ 
+@@ -100,12 +100,14 @@ riscv_SRCS = riscv_init.c riscv_symbol.c riscv_cfi.c riscv_regs.c \
+ csky_SRCS = csky_attrs.c csky_init.c csky_symbol.c csky_cfi.c \
+ 	    csky_regs.c csky_initreg.c csky_corenote.c
  
 +mips_SRCS = mips_init.c mips_symbol.c mips_regs.c mips_retval.c
-+libebl_mips_pic_a_SOURCES = $(mips_SRCS)
-+am_libebl_mips_pic_a_OBJECTS = $(mips_SRCS:.c=.os)
 +
- libebl_%.so libebl_%.map: libebl_%_pic.a $(libelf) $(libdw) $(libeu)
- 	@rm -f $(@:.so=.map)
- 	$(AM_V_at)echo 'ELFUTILS_$(PACKAGE_VERSION) { global: $*_init; local: *; };' \
+ libebl_backends_a_SOURCES = $(i386_SRCS) $(sh_SRCS) $(x86_64_SRCS) \
+ 			    $(ia64_SRCS) $(alpha_SRCS) $(arm_SRCS) \
+ 			    $(aarch64_SRCS) $(sparc_SRCS) $(ppc_SRCS) \
+ 			    $(ppc64_SRCS) $(s390_SRCS) $(tilegx_SRCS) \
+ 			    $(m68k_SRCS) $(bpf_SRCS) $(riscv_SRCS) $(csky_SRCS) \
+-                            $(parisc_SRCS)
++                            $(parisc_SRCS) $(mips_SRCS)
+ 
+ libebl_backends_pic_a_SOURCES =
+ am_libebl_backends_pic_a_OBJECTS = $(libebl_backends_a_SOURCES:.c=.os)
 diff --git a/backends/mips_init.c b/backends/mips_init.c
 new file mode 100644
 index 0000000..975c04e
@@ -700,18 +699,26 @@ index 0000000..261b05d
 +    }
 +}
 diff --git a/libebl/eblopenbackend.c b/libebl/eblopenbackend.c
-index 01711f5..d0c3589 100644
+index 210b47e..1feac13 100644
 --- a/libebl/eblopenbackend.c
 +++ b/libebl/eblopenbackend.c
-@@ -71,6 +71,8 @@ static const struct
-   { "sparc", "elf_sparc", "sparc", 5, EM_SPARC, 0, 0 },
-   { "sparc", "elf_sparcv8plus", "sparc", 5, EM_SPARC32PLUS, 0, 0 },
-   { "s390", "ebl_s390", "s390", 4, EM_S390, 0, 0 },
-+  { "mips", "elf_mips", "mips", 4, EM_MIPS, 0, 0 },
-+  { "mips", "elf_mipsel", "mipsel", 4, EM_MIPS_RS3_LE, 0, 0 },
+@@ -57,6 +57,7 @@ const char *m68k_init (Elf *, GElf_Half, Ebl *, size_t);
+ const char *bpf_init (Elf *, GElf_Half, Ebl *, size_t);
+ const char *riscv_init (Elf *, GElf_Half, Ebl *, size_t);
+ const char *csky_init (Elf *, GElf_Half, Ebl *, size_t);
++const char *mips_init (Elf *, GElf_Half, Ebl *, size_t);
+ 
+ /* This table should contain the complete list of architectures as far
+    as the ELF specification is concerned.  */
+@@ -87,6 +88,8 @@ static const struct
+   { sparc_init, "elf_sparc", "sparc", 5, EM_SPARC, 0, 0 },
+   { sparc_init, "elf_sparcv8plus", "sparc", 5, EM_SPARC32PLUS, 0, 0 },
+   { s390_init, "ebl_s390", "s390", 4, EM_S390, 0, 0 },
++  { mips_init, "elf_mips", "mips", 4, EM_MIPS, 0, 0 },
++  { mips_init, "elf_mipsel", "mipsel", 4, EM_MIPS_RS3_LE, 0, 0 },
  
-   { "m32", "elf_m32", "m32", 3, EM_M32, 0, 0 },
-   { "m68k", "elf_m68k", "m68k", 4, EM_68K, ELFCLASS32, ELFDATA2MSB },
+   { NULL, "elf_m32", "m32", 3, EM_M32, 0, 0 },
+   { m68k_init, "elf_m68k", "m68k", 4, EM_68K, ELFCLASS32, ELFDATA2MSB },
 -- 
-2.7.4
+2.17.1
 
diff --git a/meta/recipes-devtools/elfutils/files/debian/mips_cfi.patch b/meta/recipes-devtools/elfutils/files/debian/mips_cfi.patch
index fda4f68059e..dd8f88a4542 100644
--- a/meta/recipes-devtools/elfutils/files/debian/mips_cfi.patch
+++ b/meta/recipes-devtools/elfutils/files/debian/mips_cfi.patch
@@ -1,33 +1,34 @@
-From 96e38289f2887ddb8e6d2fb91ea04bdbdf034ab5 Mon Sep 17 00:00:00 2001
+From 5bf6117a6eaf9007ce80adbb8b66a95ca98047a4 Mon Sep 17 00:00:00 2001
 From: Hongxu Jia <hongxu.jia@windriver.com>
 Date: Wed, 21 Aug 2019 17:00:30 +0800
-Subject: [PATCH 2/2] mips_cfi
+Subject: [PATCH] mips_cfi
 
 Upstream-Status: Pending [from debian]
 
 Rebase to 0.177
 
 Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+
 ---
  backends/Makefile.am |  2 +-
- backends/mips_cfi.c  | 80 ++++++++++++++++++++++++++++++++++++++++++++++++++++
+ backends/mips_cfi.c  | 80 ++++++++++++++++++++++++++++++++++++++++++++
  backends/mips_init.c |  1 +
  3 files changed, 82 insertions(+), 1 deletion(-)
  create mode 100644 backends/mips_cfi.c
 
 diff --git a/backends/Makefile.am b/backends/Makefile.am
-index aba8a4a..6ac0eec 100644
+index 07d45d7..dec3080 100644
 --- a/backends/Makefile.am
 +++ b/backends/Makefile.am
-@@ -145,7 +145,7 @@ csky_SRCS = csky_attrs.c csky_init.c csky_symbol.c csky_cfi.c \
- libebl_csky_pic_a_SOURCES = $(csky_SRCS)
- am_libebl_csky_pic_a_OBJECTS = $(csky_SRCS:.c=.os)
+@@ -100,7 +100,7 @@ riscv_SRCS = riscv_init.c riscv_symbol.c riscv_cfi.c riscv_regs.c \
+ csky_SRCS = csky_attrs.c csky_init.c csky_symbol.c csky_cfi.c \
+ 	    csky_regs.c csky_initreg.c csky_corenote.c
  
 -mips_SRCS = mips_init.c mips_symbol.c mips_regs.c mips_retval.c
 +mips_SRCS = mips_init.c mips_symbol.c mips_regs.c mips_retval.c mips_cfi.c
- libebl_mips_pic_a_SOURCES = $(mips_SRCS)
- am_libebl_mips_pic_a_OBJECTS = $(mips_SRCS:.c=.os)
  
+ libebl_backends_a_SOURCES = $(i386_SRCS) $(sh_SRCS) $(x86_64_SRCS) \
+ 			    $(ia64_SRCS) $(alpha_SRCS) $(arm_SRCS) \
 diff --git a/backends/mips_cfi.c b/backends/mips_cfi.c
 new file mode 100644
 index 0000000..9ffdab5
@@ -126,6 +127,3 @@ index 8482e7f..bce5abe 100644
  
    return MODVERSION;
  }
--- 
-2.7.4
-
-- 
2.17.1



^ permalink raw reply	[flat|nested] 64+ messages in thread

* [PATCH 14/28] libcap: update to 2.30
  2020-01-08 13:27 [PATCH 01/28] rpm: upgrade to 4.15.1 Alexander Kanavin
                   ` (11 preceding siblings ...)
  2020-01-08 13:27 ` [PATCH 13/28] elfutils: upgrade 0.177 -> 0.178 Alexander Kanavin
@ 2020-01-08 13:27 ` Alexander Kanavin
  2020-01-08 21:22   ` Richard Purdie
  2020-01-08 13:27 ` [PATCH 15/28] virglrenderer: update to 0.8.1 Alexander Kanavin
                   ` (14 subsequent siblings)
  27 siblings, 1 reply; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-08 13:27 UTC (permalink / raw)
  To: openembedded-core

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
 ...-tests-do-not-run-target-executables.patch | 33 +++++++++++++++++++
 .../libcap/{libcap_2.27.bb => libcap_2.30.bb} |  5 +--
 2 files changed, 36 insertions(+), 2 deletions(-)
 create mode 100644 meta/recipes-support/libcap/files/0002-tests-do-not-run-target-executables.patch
 rename meta/recipes-support/libcap/{libcap_2.27.bb => libcap_2.30.bb} (90%)

diff --git a/meta/recipes-support/libcap/files/0002-tests-do-not-run-target-executables.patch b/meta/recipes-support/libcap/files/0002-tests-do-not-run-target-executables.patch
new file mode 100644
index 00000000000..26d108c209e
--- /dev/null
+++ b/meta/recipes-support/libcap/files/0002-tests-do-not-run-target-executables.patch
@@ -0,0 +1,33 @@
+From 6309554225e05e76167eda4e0df383fb3d1a62c3 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Fri, 20 Dec 2019 16:54:05 +0100
+Subject: [PATCH] tests: do not run target executables
+
+Upstream-Status: Inappropriate [oe-core specific]
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+
+---
+ tests/Makefile | 3 ---
+ 1 file changed, 3 deletions(-)
+
+diff --git a/tests/Makefile b/tests/Makefile
+index 95e4ca6..7162cf0 100644
+--- a/tests/Makefile
++++ b/tests/Makefile
+@@ -19,8 +19,6 @@ sudotest: test
+ install: all
+ 
+ run_psx_test: psx_test psx_test_wrap
+-	./psx_test
+-	./psx_test_wrap
+ 
+ psx_test: psx_test.c $(DEPS)
+ 	$(CC) $(CFLAGS) $(IPATH) -DNOWRAP $< -o $@ $(LIBPSXLIB)
+@@ -29,7 +27,6 @@ psx_test_wrap: psx_test.c $(DEPS)
+ 	$(CC) $(CFLAGS) $(IPATH) $< -o $@ $(LIBPSXLIB) -Wl,-wrap,pthread_create
+ 
+ run_libcap_psx_test: libcap_psx_test
+-	./libcap_psx_test
+ 
+ libcap_psx_test: libcap_psx_test.c $(DEPS)
+ 	$(CC) $(CFLAGS) $(IPATH) $< -o $@ $(LIBCAPLIB) $(LIBPSXLIB) -Wl,-wrap,pthread_create --static
diff --git a/meta/recipes-support/libcap/libcap_2.27.bb b/meta/recipes-support/libcap/libcap_2.30.bb
similarity index 90%
rename from meta/recipes-support/libcap/libcap_2.27.bb
rename to meta/recipes-support/libcap/libcap_2.30.bb
index 3f64ff76364..890bf34bc0e 100644
--- a/meta/recipes-support/libcap/libcap_2.27.bb
+++ b/meta/recipes-support/libcap/libcap_2.30.bb
@@ -9,9 +9,10 @@ DEPENDS = "hostperl-runtime-native gperf-native"
 
 SRC_URI = "${KERNELORG_MIRROR}/linux/libs/security/linux-privs/${BPN}2/${BPN}-${PV}.tar.xz \
            file://0001-ensure-the-XATTR_NAME_CAPS-is-defined-when-it-is-use.patch \
+           file://0002-tests-do-not-run-target-executables.patch \
            "
-SRC_URI[md5sum] = "2e8f9fab32eb5ccb37969fe317fd17aa"
-SRC_URI[sha256sum] = "dac1792d0118bee6aae6ba7fb93ff1602c6a9bda812fd63916eee1435b9c486a"
+SRC_URI[md5sum] = "ea531f37a30a61dce8bf8544537a46e3"
+SRC_URI[sha256sum] = "a287bae0b0d95e5230a1c4177b835c70774511b631f87c7bd29e91a03e027f11"
 
 UPSTREAM_CHECK_URI = "https://www.kernel.org/pub/linux/libs/security/linux-privs/${BPN}2/"
 
-- 
2.17.1



^ permalink raw reply	[flat|nested] 64+ messages in thread

* [PATCH 15/28] virglrenderer: update to 0.8.1
  2020-01-08 13:27 [PATCH 01/28] rpm: upgrade to 4.15.1 Alexander Kanavin
                   ` (12 preceding siblings ...)
  2020-01-08 13:27 ` [PATCH 14/28] libcap: update to 2.30 Alexander Kanavin
@ 2020-01-08 13:27 ` Alexander Kanavin
  2020-01-08 13:27 ` [PATCH 16/28] systemtap: remove the unneeded patch Alexander Kanavin
                   ` (13 subsequent siblings)
  27 siblings, 0 replies; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-08 13:27 UTC (permalink / raw)
  To: openembedded-core

Switch over to meson build system, add a patch
to avoid target python3 dependency.

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
 ...uild-use-python3-directly-for-python.patch | 27 +++++++++++++++++++
 ...nderer_0.8.0.bb => virglrenderer_0.8.1.bb} |  5 ++--
 2 files changed, 30 insertions(+), 2 deletions(-)
 create mode 100644 meta/recipes-graphics/virglrenderer/virglrenderer/0001-meson.build-use-python3-directly-for-python.patch
 rename meta/recipes-graphics/virglrenderer/{virglrenderer_0.8.0.bb => virglrenderer_0.8.1.bb} (82%)

diff --git a/meta/recipes-graphics/virglrenderer/virglrenderer/0001-meson.build-use-python3-directly-for-python.patch b/meta/recipes-graphics/virglrenderer/virglrenderer/0001-meson.build-use-python3-directly-for-python.patch
new file mode 100644
index 00000000000..0fd1d511d6b
--- /dev/null
+++ b/meta/recipes-graphics/virglrenderer/virglrenderer/0001-meson.build-use-python3-directly-for-python.patch
@@ -0,0 +1,27 @@
+From 63788c63ed39a3ce9994f4315d8997e1a9300d4d Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Mon, 6 Jan 2020 12:44:42 +0100
+Subject: [PATCH] meson.build: use 'python3' directly for python
+
+This avoids a dependency on target python (due to meson probing
+its configuration).
+
+Upstream-Status: Inappropriate [oe-core specific]
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+---
+ meson.build | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/meson.build b/meson.build
+index 682d7c8..19d2eae 100644
+--- a/meson.build
++++ b/meson.build
+@@ -60,7 +60,7 @@ foreach w : warnings
+    endif
+ endforeach
+ 
+-prog_python = import('python').find_installation('python3')
++prog_python = 'python3'
+ 
+ libdrm_dep = dependency('libdrm', version : '>=2.4.50')
+ thread_dep = dependency('threads')
diff --git a/meta/recipes-graphics/virglrenderer/virglrenderer_0.8.0.bb b/meta/recipes-graphics/virglrenderer/virglrenderer_0.8.1.bb
similarity index 82%
rename from meta/recipes-graphics/virglrenderer/virglrenderer_0.8.0.bb
rename to meta/recipes-graphics/virglrenderer/virglrenderer_0.8.1.bb
index 4420d84ae5a..133618844a9 100644
--- a/meta/recipes-graphics/virglrenderer/virglrenderer_0.8.0.bb
+++ b/meta/recipes-graphics/virglrenderer/virglrenderer_0.8.1.bb
@@ -9,14 +9,15 @@ LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://COPYING;md5=c81c08eeefd9418fca8f88309a76db10"
 
 DEPENDS = "libdrm mesa libepoxy"
-SRCREV = "48cc96c9aebb9d0164830a157efc8916f08f00c0"
+SRCREV = "66c57963aaf09a1c41056bd2a001da1d51957a14"
 SRC_URI = "git://anongit.freedesktop.org/virglrenderer \
            file://0001-gallium-Expand-libc-check-to-be-platform-OS-check.patch \
+           file://0001-meson.build-use-python3-directly-for-python.patch \
            "
 
 S = "${WORKDIR}/git"
 
-inherit autotools pkgconfig features_check
+inherit meson pkgconfig features_check
 
 BBCLASSEXTEND = "native nativesdk"
 
-- 
2.17.1



^ permalink raw reply	[flat|nested] 64+ messages in thread

* [PATCH 16/28] systemtap: remove the unneeded patch
  2020-01-08 13:27 [PATCH 01/28] rpm: upgrade to 4.15.1 Alexander Kanavin
                   ` (13 preceding siblings ...)
  2020-01-08 13:27 ` [PATCH 15/28] virglrenderer: update to 0.8.1 Alexander Kanavin
@ 2020-01-08 13:27 ` Alexander Kanavin
  2020-01-08 13:27 ` [PATCH 17/28] lib/oe/package_manager.py: put the sdk_provides_dummy_target upfront Alexander Kanavin
                   ` (12 subsequent siblings)
  27 siblings, 0 replies; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-08 13:27 UTC (permalink / raw)
  To: openembedded-core

As the problem is now fixed with a backported patch to
gettext itself, the patch is no longer needed.

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
 ...-LINGUAS-drop-the-polish-translation.patch | 27 -------------------
 .../systemtap/systemtap_git.inc               |  1 -
 2 files changed, 28 deletions(-)
 delete mode 100644 meta/recipes-kernel/systemtap/systemtap/0001-po-LINGUAS-drop-the-polish-translation.patch

diff --git a/meta/recipes-kernel/systemtap/systemtap/0001-po-LINGUAS-drop-the-polish-translation.patch b/meta/recipes-kernel/systemtap/systemtap/0001-po-LINGUAS-drop-the-polish-translation.patch
deleted file mode 100644
index b2114abc379..00000000000
--- a/meta/recipes-kernel/systemtap/systemtap/0001-po-LINGUAS-drop-the-polish-translation.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From b9ba80a22bd4ac3438ad38819cbe550ec9e8a3f8 Mon Sep 17 00:00:00 2001
-From: Alexander Kanavin <alex.kanavin@gmail.com>
-Date: Mon, 16 Dec 2019 13:59:47 +0100
-Subject: [PATCH] po/LINGUAS: drop the polish translation
-
-There are no actual translated strings, and newer gettext (0.20)
-fails in this case.
-
-Upstream-Status: Pending
-Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
----
- po/LINGUAS | 1 -
- 1 file changed, 1 deletion(-)
-
-diff --git a/po/LINGUAS b/po/LINGUAS
-index 6f927b706..aa01eb56e 100644
---- a/po/LINGUAS
-+++ b/po/LINGUAS
-@@ -1,5 +1,4 @@
- en
--pl
- fr
- cs
- 
--- 
-2.17.1
-
diff --git a/meta/recipes-kernel/systemtap/systemtap_git.inc b/meta/recipes-kernel/systemtap/systemtap_git.inc
index 85c204ed238..116e83fe0ff 100644
--- a/meta/recipes-kernel/systemtap/systemtap_git.inc
+++ b/meta/recipes-kernel/systemtap/systemtap_git.inc
@@ -7,7 +7,6 @@ SRC_URI = "git://sourceware.org/git/systemtap.git \
            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://0001-po-LINGUAS-drop-the-polish-translation.patch \
            "
 
 COMPATIBLE_HOST = '(x86_64|i.86|powerpc|arm|aarch64|microblazeel|mips).*-linux'
-- 
2.17.1



^ permalink raw reply	[flat|nested] 64+ messages in thread

* [PATCH 17/28] lib/oe/package_manager.py: put the sdk_provides_dummy_target upfront
  2020-01-08 13:27 [PATCH 01/28] rpm: upgrade to 4.15.1 Alexander Kanavin
                   ` (14 preceding siblings ...)
  2020-01-08 13:27 ` [PATCH 16/28] systemtap: remove the unneeded patch Alexander Kanavin
@ 2020-01-08 13:27 ` Alexander Kanavin
  2020-01-08 13:27 ` [PATCH 18/28] dummy-sdk-package.inc: do multilib expanesion for RREPLACES as well Alexander Kanavin
                   ` (11 subsequent siblings)
  27 siblings, 0 replies; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-08 13:27 UTC (permalink / raw)
  To: openembedded-core

Otherwise, the package utilizing this architecure does not get
properly prioritized by rpm/dnf. This isn't seen single-lib builds
(as the architecture ends up upfront anyway), but is triggered in
multulib where the architecture may end up in the middle of the list
due to multilib expansion/trimming duplicates.

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
 meta/lib/oe/package_manager.py | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/meta/lib/oe/package_manager.py b/meta/lib/oe/package_manager.py
index 4ff19cf09c4..e15e3c4a315 100644
--- a/meta/lib/oe/package_manager.py
+++ b/meta/lib/oe/package_manager.py
@@ -768,6 +768,8 @@ class RpmPM(PackageManager):
         # This prevents accidental matching against libsolv's built-in policies
         if len(archs) <= 1:
             archs = archs + ["bogusarch"]
+        # This architecture needs to be upfront so that packages using it are properly prioritized
+        archs = ["sdk_provides_dummy_target"] + archs
         confdir = "%s/%s" %(self.target_rootfs, "etc/dnf/vars/")
         bb.utils.mkdirhier(confdir)
         open(confdir + "arch", 'w').write(":".join(archs))
-- 
2.17.1



^ permalink raw reply	[flat|nested] 64+ messages in thread

* [PATCH 18/28] dummy-sdk-package.inc: do multilib expanesion for RREPLACES as well
  2020-01-08 13:27 [PATCH 01/28] rpm: upgrade to 4.15.1 Alexander Kanavin
                   ` (15 preceding siblings ...)
  2020-01-08 13:27 ` [PATCH 17/28] lib/oe/package_manager.py: put the sdk_provides_dummy_target upfront Alexander Kanavin
@ 2020-01-08 13:27 ` Alexander Kanavin
  2020-01-08 13:27 ` [PATCH 19/28] staging.bbclass: correctly exclude ptest directories Alexander Kanavin
                   ` (10 subsequent siblings)
  27 siblings, 0 replies; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-08 13:27 UTC (permalink / raw)
  To: openembedded-core

Otherwise, multilib packages such as lib64-perl aren't properly replaced:
Error:
 Problem: package target-sdk-provides-dummy-1.0-r0.sdk_provides_dummy_target conflicts with lib64-perl provided by lib64-perl-5.30.1-r0.x86_64
  - package target-sdk-provides-dummy-1.0-r0.sdk_provides_dummy_target conflicts with lib64-perl-module-strict provided by lib64-perl-5.30.1-r0.x86_64
  - package target-sdk-provides-dummy-1.0-r0.sdk_provides_dummy_target conflicts with lib64-perl-module-warnings provided by lib64-perl-5.30.1-r0.x86_64
  - package target-sdk-provides-dummy-1.0-r0.sdk_provides_dummy_target conflicts with lib64-perl-module-vars provided by lib64-perl-5.30.1-r0.x86_64

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
 meta/recipes-core/meta/dummy-sdk-package.inc | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/meta/recipes-core/meta/dummy-sdk-package.inc b/meta/recipes-core/meta/dummy-sdk-package.inc
index 61afab1d768..bedde2965ca 100644
--- a/meta/recipes-core/meta/dummy-sdk-package.inc
+++ b/meta/recipes-core/meta/dummy-sdk-package.inc
@@ -19,12 +19,13 @@ PR[vardeps] += "DUMMYPROVIDES"
 PR[vardeps] += "DUMMYPROVIDES_PACKAGES"
 
 DUMMYPROVIDES_PACKAGES ??= ""
-DUMMYPROVIDES += "${@' '.join([multilib_pkg_extend(d, pkg) for pkg in d.getVar('DUMMYPROVIDES_PACKAGES').split()])}"
+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() {
     p = d.getVar("PN")
     d.appendVar("RPROVIDES_%s" % p, "${DUMMYPROVIDES}")
     d.appendVar("RCONFLICTS_%s" % p, "${DUMMYPROVIDES}")
-    d.appendVar("RREPLACES_%s" % p, "${DUMMYPROVIDES_PACKAGES}")
+    d.appendVar("RREPLACES_%s" % p, "${DUMMYPROVIDES_PACKAGES_MULTILIB}")
 }
 
-- 
2.17.1



^ permalink raw reply	[flat|nested] 64+ messages in thread

* [PATCH 19/28] staging.bbclass: correctly exclude ptest directories
  2020-01-08 13:27 [PATCH 01/28] rpm: upgrade to 4.15.1 Alexander Kanavin
                   ` (16 preceding siblings ...)
  2020-01-08 13:27 ` [PATCH 18/28] dummy-sdk-package.inc: do multilib expanesion for RREPLACES as well Alexander Kanavin
@ 2020-01-08 13:27 ` Alexander Kanavin
  2020-01-08 13:27 ` [PATCH 20/28] ptest: report ptests that couldn't be run at all Alexander Kanavin
                   ` (9 subsequent siblings)
  27 siblings, 0 replies; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-08 13:27 UTC (permalink / raw)
  To: openembedded-core

They were not excluded when multilib variants were being built.

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
 meta/classes/staging.bbclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/classes/staging.bbclass b/meta/classes/staging.bbclass
index 7e108950f5f..4dd2ed01010 100644
--- a/meta/classes/staging.bbclass
+++ b/meta/classes/staging.bbclass
@@ -32,7 +32,7 @@ SYSROOT_DIRS_BLACKLIST = " \
     ${datadir}/gtk-doc/html \
     ${datadir}/locale \
     ${datadir}/pixmaps \
-    ${libdir}/${PN}/ptest \
+    ${libdir}/${BPN}/ptest \
 "
 
 sysroot_stage_dir() {
-- 
2.17.1



^ permalink raw reply	[flat|nested] 64+ messages in thread

* [PATCH 20/28] ptest: report ptests that couldn't be run at all
  2020-01-08 13:27 [PATCH 01/28] rpm: upgrade to 4.15.1 Alexander Kanavin
                   ` (17 preceding siblings ...)
  2020-01-08 13:27 ` [PATCH 19/28] staging.bbclass: correctly exclude ptest directories Alexander Kanavin
@ 2020-01-08 13:27 ` Alexander Kanavin
  2020-01-08 13:27 ` [PATCH 21/28] ptest-packagelists.inc: add a couple of missed ptests Alexander Kanavin
                   ` (8 subsequent siblings)
  27 siblings, 0 replies; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-08 13:27 UTC (permalink / raw)
  To: openembedded-core

Currently if a ptest does not produce PASS or FAIL, but simply
errors out, this is not caught or reported; I think some ptests
may have silently regressed due to this.

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
 meta/lib/oeqa/runtime/cases/ptest.py | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/meta/lib/oeqa/runtime/cases/ptest.py b/meta/lib/oeqa/runtime/cases/ptest.py
index aef79f62a98..eb284df439b 100644
--- a/meta/lib/oeqa/runtime/cases/ptest.py
+++ b/meta/lib/oeqa/runtime/cases/ptest.py
@@ -67,6 +67,11 @@ class PtestRunnerTest(OERuntimeTestCase):
                 extras[testname] = {'status': result}
 
         failed_tests = {}
+
+        for section in sections:
+            if 'exitcode' in sections[section].keys():
+                failed_tests[section] = sections[section]["log"]
+
         for section in results:
             failed_testcases = [ "_".join(test.translate(trans).split()) for test in results[section] if results[section][test] == 'FAILED' ]
             if failed_testcases:
-- 
2.17.1



^ permalink raw reply	[flat|nested] 64+ messages in thread

* [PATCH 21/28] ptest-packagelists.inc: add a couple of missed ptests
  2020-01-08 13:27 [PATCH 01/28] rpm: upgrade to 4.15.1 Alexander Kanavin
                   ` (18 preceding siblings ...)
  2020-01-08 13:27 ` [PATCH 20/28] ptest: report ptests that couldn't be run at all Alexander Kanavin
@ 2020-01-08 13:27 ` Alexander Kanavin
  2020-01-08 13:27 ` [PATCH 22/28] gzip: do not pull in perl-ptest for gzip-ptest Alexander Kanavin
                   ` (7 subsequent siblings)
  27 siblings, 0 replies; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-08 13:27 UTC (permalink / raw)
  To: openembedded-core

Also remove mdadm-ptest as it is already included in the slow list.

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
 meta/conf/distro/include/ptest-packagelists.inc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/meta/conf/distro/include/ptest-packagelists.inc b/meta/conf/distro/include/ptest-packagelists.inc
index 26b8db5b607..bc4aaf6a4ca 100644
--- a/meta/conf/distro/include/ptest-packagelists.inc
+++ b/meta/conf/distro/include/ptest-packagelists.inc
@@ -53,8 +53,9 @@ PTESTS_FAST = "\
 #PTESTS_PROBLEMS = "\
 #    qemu-ptest \ # Doesn't run any tests?
 #    ruby-ptest \ # Timeout
-#    mdadm-ptest \ # Timeout
 #    clutter-1.0-ptest \ # Doesn't build due to depends on cogl-1.0
+#    lz4-ptest \ # Needs a rewrite
+#    rt-tests-ptest \ # Needs to be checked whether it runs at all
 #"
 
 PTESTS_SLOW = "\
-- 
2.17.1



^ permalink raw reply	[flat|nested] 64+ messages in thread

* [PATCH 22/28] gzip: do not pull in perl-ptest for gzip-ptest
  2020-01-08 13:27 [PATCH 01/28] rpm: upgrade to 4.15.1 Alexander Kanavin
                   ` (19 preceding siblings ...)
  2020-01-08 13:27 ` [PATCH 21/28] ptest-packagelists.inc: add a couple of missed ptests Alexander Kanavin
@ 2020-01-08 13:27 ` Alexander Kanavin
  2020-01-08 13:27 ` [PATCH 23/28] gettext: additional ptest fixing Alexander Kanavin
                   ` (6 subsequent siblings)
  27 siblings, 0 replies; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-08 13:27 UTC (permalink / raw)
  To: openembedded-core

This significantly adds to the ptest execution time and isn't
needed, as all tests pass anyway.

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
 meta/recipes-extended/gzip/gzip_1.10.bb | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/recipes-extended/gzip/gzip_1.10.bb b/meta/recipes-extended/gzip/gzip_1.10.bb
index 50dad7bf58c..9778e687e1a 100644
--- a/meta/recipes-extended/gzip/gzip_1.10.bb
+++ b/meta/recipes-extended/gzip/gzip_1.10.bb
@@ -12,7 +12,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \
 
 PROVIDES_append_class-native = " gzip-replacement-native"
 
-RDEPENDS_${PN}-ptest += "make perl perl-ptest grep diffutils"
+RDEPENDS_${PN}-ptest += "make perl grep diffutils"
 
 BBCLASSEXTEND = "native nativesdk"
 
-- 
2.17.1



^ permalink raw reply	[flat|nested] 64+ messages in thread

* [PATCH 23/28] gettext: additional ptest fixing
  2020-01-08 13:27 [PATCH 01/28] rpm: upgrade to 4.15.1 Alexander Kanavin
                   ` (20 preceding siblings ...)
  2020-01-08 13:27 ` [PATCH 22/28] gzip: do not pull in perl-ptest for gzip-ptest Alexander Kanavin
@ 2020-01-08 13:27 ` Alexander Kanavin
  2020-01-08 13:27 ` [PATCH 24/28] gawk: fix failing ptests Alexander Kanavin
                   ` (5 subsequent siblings)
  27 siblings, 0 replies; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-08 13:27 UTC (permalink / raw)
  To: openembedded-core

In previous testing some tests were skipped due to missing autotools;
when autotools are present on target, additional failures are exposed.

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
 ...01-tests-autopoint-3-unset-MAKEFLAGS.patch | 26 +++++++++++++++++++
 meta/recipes-core/gettext/gettext_0.20.1.bb   |  5 ++++
 2 files changed, 31 insertions(+)
 create mode 100644 meta/recipes-core/gettext/gettext-0.20.1/0001-tests-autopoint-3-unset-MAKEFLAGS.patch

diff --git a/meta/recipes-core/gettext/gettext-0.20.1/0001-tests-autopoint-3-unset-MAKEFLAGS.patch b/meta/recipes-core/gettext/gettext-0.20.1/0001-tests-autopoint-3-unset-MAKEFLAGS.patch
new file mode 100644
index 00000000000..96e5bf380fa
--- /dev/null
+++ b/meta/recipes-core/gettext/gettext-0.20.1/0001-tests-autopoint-3-unset-MAKEFLAGS.patch
@@ -0,0 +1,26 @@
+From 38b256e5aa7dfeb42acffd89565e53a2c0bab3e3 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Tue, 7 Jan 2020 16:44:38 +0100
+Subject: [PATCH] tests/autopoint-3: unset MAKEFLAGS
+
+This is needed when running ptests, as the MAKEFLAGS value (set up by run-ptest)
+is messing up the test.
+
+Upstream-Status: Inapppropriate [oe-core specific]
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+---
+ gettext-tools/tests/autopoint-3 | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/gettext-tools/tests/autopoint-3 b/gettext-tools/tests/autopoint-3
+index e13552b..55188df 100755
+--- a/gettext-tools/tests/autopoint-3
++++ b/gettext-tools/tests/autopoint-3
+@@ -126,6 +126,7 @@ test $? = 0 || { cat autopoint.err; Exit 1; }
+ ${CONFIG_SHELL} ./configure >/dev/null 2>autpoint.err
+ test $? = 0 || { cat autopoint.err; Exit 1; }
+ 
++unset MAKEFLAGS
+ ${MAKE} >/dev/null 2>autopoint.err
+ test $? = 0 || { cat autopoint.err; Exit 1; }
+ 
diff --git a/meta/recipes-core/gettext/gettext_0.20.1.bb b/meta/recipes-core/gettext/gettext_0.20.1.bb
index ca155fe8bf8..09628bc4a3b 100644
--- a/meta/recipes-core/gettext/gettext_0.20.1.bb
+++ b/meta/recipes-core/gettext/gettext_0.20.1.bb
@@ -24,6 +24,7 @@ SRC_URI = "${GNU_MIRROR}/gettext/gettext-${PV}.tar.gz \
            file://run-ptest \
            file://serial-tests-config.patch \
            file://0001-msgmerge-Fix-behaviour-of-for-msgfmt-on-PO-files-wit.patch \
+           file://0001-tests-autopoint-3-unset-MAKEFLAGS.patch \
            "
 
 SRC_URI[md5sum] = "bb5b0c0caa028105f3ca1905ddc306e2"
@@ -150,8 +151,12 @@ do_install_ptest() {
         mkdir -p                                        ${D}${PTEST_PATH}/misc
         mkdir -p                                        ${D}${PTEST_PATH}/its
         mkdir -p                                        ${D}${PTEST_PATH}/styles
+        mkdir -p                                        ${D}${PTEST_PATH}/gnulib-lib
+        mkdir -p                                        ${D}${PTEST_PATH}/examples
         cp -rf ${S}/gettext-tools/its/*                 ${D}${PTEST_PATH}/its
         cp -rf ${S}/gettext-tools/styles/*              ${D}${PTEST_PATH}/styles
+        cp -rf ${S}/gettext-tools/gnulib-lib/gettext.h  ${D}${PTEST_PATH}/gnulib-lib
+        cp -rf ${S}/gettext-tools/examples/hello-c      ${D}${PTEST_PATH}/examples
         cp -rf ${S}/gettext-tools/tests/*               ${D}${PTEST_PATH}/tests
         cp -rf ${B}/gettext-tools/tests/.libs/*         ${D}${PTEST_PATH}/tests
         cp -rf ${B}/gettext-runtime/intl/.libs/libgnuintl.so.8*         ${D}${libdir}/
-- 
2.17.1



^ permalink raw reply	[flat|nested] 64+ messages in thread

* [PATCH 24/28] gawk: fix failing ptests
  2020-01-08 13:27 [PATCH 01/28] rpm: upgrade to 4.15.1 Alexander Kanavin
                   ` (21 preceding siblings ...)
  2020-01-08 13:27 ` [PATCH 23/28] gettext: additional ptest fixing Alexander Kanavin
@ 2020-01-08 13:27 ` Alexander Kanavin
  2020-01-08 13:27 ` [PATCH 25/28] kbd: " Alexander Kanavin
                   ` (4 subsequent siblings)
  27 siblings, 0 replies; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-08 13:27 UTC (permalink / raw)
  To: openembedded-core

They were failing due to incorrect locale being used.

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
 meta/recipes-extended/gawk/gawk_5.0.1.bb | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/meta/recipes-extended/gawk/gawk_5.0.1.bb b/meta/recipes-extended/gawk/gawk_5.0.1.bb
index eaba6c78eda..e79ccfdebf0 100644
--- a/meta/recipes-extended/gawk/gawk_5.0.1.bb
+++ b/meta/recipes-extended/gawk/gawk_5.0.1.bb
@@ -46,6 +46,8 @@ do_install_ptest() {
 	done
 	sed -i -e 's|/usr/local/bin|${bindir}|g' \
 	    -e 's|#!${base_bindir}/awk|#!${bindir}/awk|g' ${D}${PTEST_PATH}/test/*.awk
+
+        sed -i -e "s|GAWKLOCALE|LANG|g" ${D}${PTEST_PATH}/test/Maketests
 }
 
 RDEPENDS_${PN}-ptest += "make"
-- 
2.17.1



^ permalink raw reply	[flat|nested] 64+ messages in thread

* [PATCH 25/28] kbd: fix failing ptests
  2020-01-08 13:27 [PATCH 01/28] rpm: upgrade to 4.15.1 Alexander Kanavin
                   ` (22 preceding siblings ...)
  2020-01-08 13:27 ` [PATCH 24/28] gawk: fix failing ptests Alexander Kanavin
@ 2020-01-08 13:27 ` Alexander Kanavin
  2020-01-08 13:27 ` [PATCH 26/28] perl: package Config.pm from arch directory into the main perl package Alexander Kanavin
                   ` (3 subsequent siblings)
  27 siblings, 0 replies; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-08 13:27 UTC (permalink / raw)
  To: openembedded-core

Some assumptions about where data files are needs to be adjusted.

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
 .../kbd/set-proper-path-of-resources.patch    | 58 ++++++++++++++-----
 meta/recipes-core/kbd/kbd_2.2.0.bb            |  4 +-
 2 files changed, 47 insertions(+), 15 deletions(-)

diff --git a/meta/recipes-core/kbd/kbd/set-proper-path-of-resources.patch b/meta/recipes-core/kbd/kbd/set-proper-path-of-resources.patch
index 5872cef36b7..4b1e5b8eeb8 100644
--- a/meta/recipes-core/kbd/kbd/set-proper-path-of-resources.patch
+++ b/meta/recipes-core/kbd/kbd/set-proper-path-of-resources.patch
@@ -1,4 +1,4 @@
-From 7f953dd689155bc1224a3369205c310bb5b760a7 Mon Sep 17 00:00:00 2001
+From cb3af8fb072f8999dbb5160bdc95a102b02fd37a Mon Sep 17 00:00:00 2001
 From: Kai Kang <kai.kang@windriver.com>
 Date: Fri, 30 Sep 2016 16:49:55 +0800
 Subject: [PATCH] kbd: create ptest sub-package
@@ -19,38 +19,53 @@ run as expected.
 Signed-off-by: Kai Kang <kai.kang@windriver.com>
 
 ---
- tests/Makefile.am           | 2 +-
- tests/alt-is-meta.in        | 6 ++----
+ tests/Makefile.am           | 4 ++--
+ tests/alt-is-meta.in        | 2 +-
+ tests/dumpkeys-bkeymap.in   | 4 ++--
  tests/dumpkeys-fulltable.in | 2 +-
- 3 files changed, 4 insertions(+), 6 deletions(-)
+ tests/dumpkeys-mktable.in   | 4 ++--
+ 5 files changed, 8 insertions(+), 8 deletions(-)
 
 diff --git a/tests/Makefile.am b/tests/Makefile.am
-index f32b9aa..973cd26 100644
+index 8d0ab69..5147c28 100644
 --- a/tests/Makefile.am
 +++ b/tests/Makefile.am
-@@ -7,7 +7,7 @@ AM_CPPFLAGS = \
+@@ -7,8 +7,8 @@ AM_CPPFLAGS = \
  	-I$(builddir)/../src/libkeymap \
  	-I$(srcdir)/../src/libkbdfile \
  	-I$(builddir)/../src/libkbdfile \
 -	-DDATADIR=\"$(srcdir)\" \
+-	-DABS_DATADIR=\"$(realpath $(srcdir))\" \
 +	-DDATADIR=\".\" \
- 	-DABS_DATADIR=\"$(realpath $(srcdir))\" \
++	-DABS_DATADIR=\"/usr/lib/kbd/ptest/tests\" \
  	-DBUILDDIR=\"$(builddir)\"
  
+ AM_CFLAGS = $(CHECK_CFLAGS) $(CODE_COVERAGE_CFLAGS)
 diff --git a/tests/alt-is-meta.in b/tests/alt-is-meta.in
-index 3a1441f..772fb51 100755
+index 3a1441f..d829f2e 100755
 --- a/tests/alt-is-meta.in
 +++ b/tests/alt-is-meta.in
-@@ -7,10 +7,8 @@ cd "$cwd"
+@@ -7,7 +7,7 @@ cd "$cwd"
  rc=0
  temp="$(mktemp "@BUILDDIR@/temp.XXXXXXXXX")"
  
 -datadir="@DATADIR@/data/alt-is-meta"
--
--./libkeymap-showmaps "$datadir"/alt-is-meta.map > "$temp" || rc=$?
--cmp -s "$datadir/alt-is-meta.output" "$temp" || rc=$?
-+./libkeymap-showmaps ./alt-is-meta.map > "$temp" || rc=$?
-+cmp -s "./alt-is-meta.output" "$temp" || rc=$?
++datadir="./data/alt-is-meta"
+ 
+ ./libkeymap-showmaps "$datadir"/alt-is-meta.map > "$temp" || rc=$?
+ cmp -s "$datadir/alt-is-meta.output" "$temp" || rc=$?
+diff --git a/tests/dumpkeys-bkeymap.in b/tests/dumpkeys-bkeymap.in
+index 03d4ca2..d1d0e26 100755
+--- a/tests/dumpkeys-bkeymap.in
++++ b/tests/dumpkeys-bkeymap.in
+@@ -9,8 +9,8 @@ temp="$(mktemp "@BUILDDIR@/temp.XXXXXXXXX")"
+ 
+ datadir="@DATADIR@"
+ 
+-./libkeymap-bkeymap "$datadir/"../data/keymaps/i386/qwerty/defkeymap.map > "$temp" || rc=$?
+-cmp -s "$datadir/data/dumpkeys-bkeymap/bkeymap.bin" "$temp" || rc=$?
++./libkeymap-bkeymap ../data/keymaps/i386/qwerty/defkeymap.map > "$temp" || rc=$?
++cmp -s "./data/dumpkeys-bkeymap/bkeymap.bin" "$temp" || rc=$?
  
  if [ "$rc" != 0 ]; then
  	printf 'failed\n'
@@ -67,3 +82,18 @@ index a3a5ece..67a73ef 100755
  
  check_keymap() {
  	local kmap temp rc
+diff --git a/tests/dumpkeys-mktable.in b/tests/dumpkeys-mktable.in
+index 0f17c40..7e5161d 100755
+--- a/tests/dumpkeys-mktable.in
++++ b/tests/dumpkeys-mktable.in
+@@ -7,8 +7,8 @@ cd "$cwd"
+ rc=0
+ temp="$(mktemp "@BUILDDIR@/temp.XXXXXXXXX")"
+ 
+-./libkeymap-mktable "@DATADIR@/"../data/keymaps/i386/qwerty/defkeymap.map > "$temp" || rc=$?
+-cmp -s "@DATADIR@/data/dumpkeys-mktable/defkeymap.c" "$temp" || rc=$?
++./libkeymap-mktable ../data/keymaps/i386/qwerty/defkeymap.map > "$temp" || rc=$?
++cmp -s "./data/dumpkeys-mktable/defkeymap.c" "$temp" || rc=$?
+ 
+ if [ "$rc" != 0 ]; then
+ 	printf 'failed\n'
diff --git a/meta/recipes-core/kbd/kbd_2.2.0.bb b/meta/recipes-core/kbd/kbd_2.2.0.bb
index 88041bc8789..df9b0bb90bd 100644
--- a/meta/recipes-core/kbd/kbd_2.2.0.bb
+++ b/meta/recipes-core/kbd/kbd_2.2.0.bb
@@ -45,7 +45,9 @@ do_install_ptest() {
 	-e '/^lib.*_SOURCES =/d' -e '/$(EXEEXT):/,/^$/d' ${D}${PTEST_PATH}/tests/Makefile
 
     find ${B}/tests -executable -exec install {} ${D}${PTEST_PATH}/tests \;
-    find ${S}/tests \( -name \*.map -o -name \*.bin -o -name \*.output \) -exec install {} ${D}${PTEST_PATH}/tests \;
+    cp -rf ${S}/tests/data ${D}${PTEST_PATH}/tests
+    cp -rf ${S}/tests/findfile ${D}${PTEST_PATH}/tests
+    cp -rf ${S}/data ${D}${PTEST_PATH}
 
     install -D -m 755 ${S}/config/test-driver ${D}${PTEST_PATH}/config/test-driver
 }
-- 
2.17.1



^ permalink raw reply	[flat|nested] 64+ messages in thread

* [PATCH 26/28] perl: package Config.pm from arch directory into the main perl package
  2020-01-08 13:27 [PATCH 01/28] rpm: upgrade to 4.15.1 Alexander Kanavin
                   ` (23 preceding siblings ...)
  2020-01-08 13:27 ` [PATCH 25/28] kbd: " Alexander Kanavin
@ 2020-01-08 13:27 ` Alexander Kanavin
  2020-01-08 13:27 ` [PATCH 27/28] perl: install typemap and other extutils metadata as part of perl-core Alexander Kanavin
                   ` (2 subsequent siblings)
  27 siblings, 0 replies; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-08 13:27 UTC (permalink / raw)
  To: openembedded-core

Otherwise, some modules such as libmodule-build-perl fail to work
properly.

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
 meta/recipes-devtools/perl/perl_5.30.1.bb | 1 +
 1 file changed, 1 insertion(+)

diff --git a/meta/recipes-devtools/perl/perl_5.30.1.bb b/meta/recipes-devtools/perl/perl_5.30.1.bb
index 6e0b2007fb7..d5318fb949b 100644
--- a/meta/recipes-devtools/perl/perl_5.30.1.bb
+++ b/meta/recipes-devtools/perl/perl_5.30.1.bb
@@ -198,6 +198,7 @@ require perl-ptest.inc
 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 \
                ${libdir}/perl5/${PV}/*/Config_git.pl \
                ${libdir}/perl5/${PV}/*/Config_heavy-target.pl \
                ${libdir}/perl5/config.sh \
-- 
2.17.1



^ permalink raw reply	[flat|nested] 64+ messages in thread

* [PATCH 27/28] perl: install typemap and other extutils metadata as part of perl-core
  2020-01-08 13:27 [PATCH 01/28] rpm: upgrade to 4.15.1 Alexander Kanavin
                   ` (24 preceding siblings ...)
  2020-01-08 13:27 ` [PATCH 26/28] perl: package Config.pm from arch directory into the main perl package Alexander Kanavin
@ 2020-01-08 13:27 ` Alexander Kanavin
  2020-01-08 13:27 ` [PATCH 28/28] libmodule-build-perl: fix ptests Alexander Kanavin
  2020-01-08 13:32 ` ✗ patchtest: failure for "rpm: upgrade to 4.15.1..." and 27 more Patchwork
  27 siblings, 0 replies; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-08 13:27 UTC (permalink / raw)
  To: openembedded-core

Modules actually make use of these files, so they belong in perl-core
other than perl-doc (the immediate failure was ptests for
libmodule-build-perl failing).

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
 meta/recipes-devtools/perl/perl_5.30.1.bb | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/meta/recipes-devtools/perl/perl_5.30.1.bb b/meta/recipes-devtools/perl/perl_5.30.1.bb
index d5318fb949b..66707e7f9d8 100644
--- a/meta/recipes-devtools/perl/perl_5.30.1.bb
+++ b/meta/recipes-devtools/perl/perl_5.30.1.bb
@@ -207,6 +207,9 @@ FILES_${PN} = "${bindir}/perl ${bindir}/perl.real ${bindir}/perl${PV} ${libdir}/
                ${libdir}/perl5/${PV}/warnings \
                ${libdir}/perl5/${PV}/vars.pm \
                ${libdir}/perl5/site_perl \
+               ${libdir}/perl5/${PV}/ExtUtils/MANIFEST.SKIP \
+               ${libdir}/perl5/${PV}/ExtUtils/xsubpp \
+               ${libdir}/perl5/${PV}/ExtUtils/typemap \
                "
 RPROVIDES_${PN} += "perl-module-strict perl-module-vars perl-module-config perl-module-warnings \
                     perl-module-warnings-register"
@@ -217,9 +220,6 @@ FILES_${PN}-dev_append = " ${libdir}/perl5/${PV}/*/CORE"
 
 FILES_${PN}-doc_append = " ${libdir}/perl5/${PV}/Unicode/Collate/*.txt \
                            ${libdir}/perl5/${PV}/*/.packlist \
-                           ${libdir}/perl5/${PV}/ExtUtils/MANIFEST.SKIP \
-                           ${libdir}/perl5/${PV}/ExtUtils/xsubpp \
-                           ${libdir}/perl5/${PV}/ExtUtils/typemap \
                            ${libdir}/perl5/${PV}/Encode/encode.h \
                          "
 PACKAGES += "${PN}-misc"
-- 
2.17.1



^ permalink raw reply	[flat|nested] 64+ messages in thread

* [PATCH 28/28] libmodule-build-perl: fix ptests
  2020-01-08 13:27 [PATCH 01/28] rpm: upgrade to 4.15.1 Alexander Kanavin
                   ` (25 preceding siblings ...)
  2020-01-08 13:27 ` [PATCH 27/28] perl: install typemap and other extutils metadata as part of perl-core Alexander Kanavin
@ 2020-01-08 13:27 ` Alexander Kanavin
  2020-01-08 13:32 ` ✗ patchtest: failure for "rpm: upgrade to 4.15.1..." and 27 more Patchwork
  27 siblings, 0 replies; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-08 13:27 UTC (permalink / raw)
  To: openembedded-core

Particularly remove a broken detection of skipped tests
(which was marking tests that actually passed), and install
additional artefacts needed for testing.

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
 meta/recipes-devtools/perl/libmodule-build-perl/run-ptest | 2 --
 meta/recipes-devtools/perl/libmodule-build-perl_0.4229.bb | 3 +++
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/meta/recipes-devtools/perl/libmodule-build-perl/run-ptest b/meta/recipes-devtools/perl/libmodule-build-perl/run-ptest
index 0d63d1513bc..d802781f9e6 100644
--- a/meta/recipes-devtools/perl/libmodule-build-perl/run-ptest
+++ b/meta/recipes-devtools/perl/libmodule-build-perl/run-ptest
@@ -6,8 +6,6 @@ for case in `find t -type f -name '*.t'`; do
     cat $case.output
     if [ $ret -ne 0 ]; then
         echo "FAIL: ${case%.t}"
-    elif grep -i 'SKIP' $case.output; then
-        echo "SKIP: ${case%.t}"
     else
         echo "PASS: ${case%.t}"
     fi
diff --git a/meta/recipes-devtools/perl/libmodule-build-perl_0.4229.bb b/meta/recipes-devtools/perl/libmodule-build-perl_0.4229.bb
index f759f862fb2..e3ba40d96c5 100644
--- a/meta/recipes-devtools/perl/libmodule-build-perl_0.4229.bb
+++ b/meta/recipes-devtools/perl/libmodule-build-perl_0.4229.bb
@@ -36,7 +36,10 @@ do_patch[postfuncs] += "do_patch_module_build"
 do_install_ptest() {
 	cp -r ${B}/inc ${D}${PTEST_PATH}
 	cp -r ${B}/blib ${D}${PTEST_PATH}
+	cp -r ${B}/_build ${D}${PTEST_PATH}
+	cp -r ${B}/lib ${D}${PTEST_PATH}
 	chown -R root:root ${D}${PTEST_PATH}
+	sed -i -e "s,'perl' => .*,'perl' => '/usr/bin/perl'\,,g" ${D}${PTEST_PATH}/_build/build_params
 }
 
 RDEPENDS_${PN} += " \
-- 
2.17.1



^ permalink raw reply	[flat|nested] 64+ messages in thread

* ✗ patchtest: failure for "rpm: upgrade to 4.15.1..." and 27 more
  2020-01-08 13:27 [PATCH 01/28] rpm: upgrade to 4.15.1 Alexander Kanavin
                   ` (26 preceding siblings ...)
  2020-01-08 13:27 ` [PATCH 28/28] libmodule-build-perl: fix ptests Alexander Kanavin
@ 2020-01-08 13:32 ` Patchwork
  27 siblings, 0 replies; 64+ messages in thread
From: Patchwork @ 2020-01-08 13:32 UTC (permalink / raw)
  To: Alexander Kanavin; +Cc: openembedded-core

== Series Details ==

Series: "rpm: upgrade to 4.15.1..." and 27 more
Revision: 1
URL   : https://patchwork.openembedded.org/series/21922/
State : failure

== Summary ==


Thank you for submitting this patch series to OpenEmbedded Core. This is
an automated response. Several tests have been executed on the proposed
series by patchtest resulting in the following failures:



* Issue             Series does not apply on top of target branch [test_series_merge_on_head] 
  Suggested fix    Rebase your series on top of targeted branch
  Targeted branch  master (currently at 4359a398af)

* Issue             Upstream-Status is in incorrect format [test_upstream_status_presence_format] 
  Suggested fix    Fix Upstream-Status format in 0001-tests-autopoint-3-unset-MAKEFLAGS.patch
  Current          Upstream-Status: Inapppropriate [oe-core specific]
  Standard format  Upstream-Status: <Valid status>
  Valid status     Pending, Accepted, Backport, Denied, Inappropriate [reason], Submitted [where]



If you believe any of these test results are incorrect, please reply to the
mailing list (openembedded-core@lists.openembedded.org) raising your concerns.
Otherwise we would appreciate you correcting the issues and submitting a new
version of the patchset if applicable. Please ensure you add/increment the
version number when sending the new version (i.e. [PATCH] -> [PATCH v2] ->
[PATCH v3] -> ...).

---
Guidelines:     https://www.openembedded.org/wiki/Commit_Patch_Message_Guidelines
Test framework: http://git.yoctoproject.org/cgit/cgit.cgi/patchtest
Test suite:     http://git.yoctoproject.org/cgit/cgit.cgi/patchtest-oe



^ permalink raw reply	[flat|nested] 64+ messages in thread

* Re: [PATCH 14/28] libcap: update to 2.30
  2020-01-08 13:27 ` [PATCH 14/28] libcap: update to 2.30 Alexander Kanavin
@ 2020-01-08 21:22   ` Richard Purdie
  2020-01-09  1:31     ` Khem Raj
  0 siblings, 1 reply; 64+ messages in thread
From: Richard Purdie @ 2020-01-08 21:22 UTC (permalink / raw)
  To: Alexander Kanavin, openembedded-core

On Wed, 2020-01-08 at 14:27 +0100, Alexander Kanavin wrote:
> Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
> ---
>  ...-tests-do-not-run-target-executables.patch | 33
> +++++++++++++++++++
>  .../libcap/{libcap_2.27.bb => libcap_2.30.bb} |  5 +--
>  2 files changed, 36 insertions(+), 2 deletions(-)
>  create mode 100644 meta/recipes-support/libcap/files/0002-tests-do-
> not-run-target-executables.patch
>  rename meta/recipes-support/libcap/{libcap_2.27.bb =>
> libcap_2.30.bb} (90%)

I think this causes iputils to fail to build:

https://autobuilder.yoctoproject.org/typhoon/#/builders/104/builds/331

Cheers,

Richard



^ permalink raw reply	[flat|nested] 64+ messages in thread

* Re: [PATCH 11/28] ifupdown: update 0.8.22 -> 0.8.35
  2020-01-08 13:27 ` [PATCH 11/28] ifupdown: update 0.8.22 -> 0.8.35 Alexander Kanavin
@ 2020-01-08 21:23   ` Richard Purdie
  2020-01-09 13:47     ` Alexander Kanavin
  0 siblings, 1 reply; 64+ messages in thread
From: Richard Purdie @ 2020-01-08 21:23 UTC (permalink / raw)
  To: Alexander Kanavin, openembedded-core

On Wed, 2020-01-08 at 14:27 +0100, Alexander Kanavin wrote:
> Remove inet-6-.defn-fix-inverted-checks-for-loopback.patch as
> it is difficult to rebase and not clear if still necessary.
> 
> Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
> ---
>  ...efn-fix-inverted-checks-for-loopback.patch | 403 ----------------
> --
>  ...{ifupdown_0.8.22.bb => ifupdown_0.8.35.bb} |  11 +-
>  2 files changed, 5 insertions(+), 409 deletions(-)
>  delete mode 100644 meta/recipes-core/ifupdown/files/inet-6-.defn-
> fix-inverted-checks-for-loopback.patch
>  rename meta/recipes-core/ifupdown/{ifupdown_0.8.22.bb =>
> ifupdown_0.8.35.bb} (83%)


http://errors.yoctoproject.org/Errors/Details/305656/

Cheers,

Richard



^ permalink raw reply	[flat|nested] 64+ messages in thread

* Re: [PATCH 05/28] python3: update to 3.8.1
  2020-01-08 13:27 ` [PATCH 05/28] python3: update to 3.8.1 Alexander Kanavin
@ 2020-01-08 23:02   ` Richard Purdie
  2020-01-09  1:23     ` Khem Raj
  2020-01-09 15:31     ` Alexander Kanavin
  0 siblings, 2 replies; 64+ messages in thread
From: Richard Purdie @ 2020-01-08 23:02 UTC (permalink / raw)
  To: Alexander Kanavin, openembedded-core

On Wed, 2020-01-08 at 14:27 +0100, Alexander Kanavin wrote:
> Drop backports, rebase other patches.
> 
> One patch I wasn't able to rebase as upstream code changed too much:
> 0003-setup.py-pass-missing-libraries-to-Extension-for-mul.patch
> Please determine if it is still needed, produce a new version,
> and work with upstream to get it merged.
> 
> 0001-main.c-if-OEPYTHON3HOME-is-set-use-instead-of-PYTHON.patch
> is removed as the use case (allowing python 2 and 3 to coexist
> in SDKs) is no longer relevant with Python 2.x reaching end of line
> and upstream has refactored the code making a rebase difficult.
> If needed, please re-add the patch to py2, rather than py3.
> 
> Python 3.8 no longer adds "m" to "3.8" in paths, so adjust the
> recipes
> and classes accordingly.
> 
> The manifest for the 3.8.0 version is updated; particularly pkgutil
> module is now packaged in -core (as other things in core need it);
> this also necessitates allowing empty -pkgutil package to avoid
> breakage across layers.


https://autobuilder.yoctoproject.org/typhoon/#/builders/65/builds/1442

Cheers,

Richard



^ permalink raw reply	[flat|nested] 64+ messages in thread

* Re: [PATCH 05/28] python3: update to 3.8.1
  2020-01-08 23:02   ` Richard Purdie
@ 2020-01-09  1:23     ` Khem Raj
  2020-01-09 15:31     ` Alexander Kanavin
  1 sibling, 0 replies; 64+ messages in thread
From: Khem Raj @ 2020-01-09  1:23 UTC (permalink / raw)
  To: Richard Purdie; +Cc: Patches and discussions about the oe-core layer

On Wed, Jan 8, 2020 at 3:03 PM Richard Purdie
<richard.purdie@linuxfoundation.org> wrote:
>
> On Wed, 2020-01-08 at 14:27 +0100, Alexander Kanavin wrote:
> > Drop backports, rebase other patches.
> >
> > One patch I wasn't able to rebase as upstream code changed too much:
> > 0003-setup.py-pass-missing-libraries-to-Extension-for-mul.patch
> > Please determine if it is still needed, produce a new version,
> > and work with upstream to get it merged.
> >
> > 0001-main.c-if-OEPYTHON3HOME-is-set-use-instead-of-PYTHON.patch
> > is removed as the use case (allowing python 2 and 3 to coexist
> > in SDKs) is no longer relevant with Python 2.x reaching end of line
> > and upstream has refactored the code making a rebase difficult.
> > If needed, please re-add the patch to py2, rather than py3.
> >
> > Python 3.8 no longer adds "m" to "3.8" in paths, so adjust the
> > recipes
> > and classes accordingly.
> >
> > The manifest for the 3.8.0 version is updated; particularly pkgutil
> > module is now packaged in -core (as other things in core need it);
> > this also necessitates allowing empty -pkgutil package to avoid
> > breakage across layers.
>
>
> https://autobuilder.yoctoproject.org/typhoon/#/builders/65/builds/1442
>

few more
https://errors.yoctoproject.org/Errors/Details/305697/
https://errors.yoctoproject.org/Errors/Details/305694/


> Cheers,
>
> Richard
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core


^ permalink raw reply	[flat|nested] 64+ messages in thread

* Re: [PATCH 13/28] elfutils: upgrade 0.177 -> 0.178
  2020-01-08 13:27 ` [PATCH 13/28] elfutils: upgrade 0.177 -> 0.178 Alexander Kanavin
@ 2020-01-09  1:27   ` Khem Raj
  0 siblings, 0 replies; 64+ messages in thread
From: Khem Raj @ 2020-01-09  1:27 UTC (permalink / raw)
  To: Alexander Kanavin; +Cc: Patches and discussions about the oe-core layer

regressing following package

http://errors.yoctoproject.org/Errors/Details/305730/

On Wed, Jan 8, 2020 at 5:30 AM Alexander Kanavin <alex.kanavin@gmail.com> wrote:
>
> Remove 0007-Fix-control-path-where-we-have-str-as-uninitialized-.patch
> as issue fixed upstream.
>
> Rebase other patches.
>
> Adjust ptests, pass rate is now 100% again:
>
> ======================
> All 206 tests passed
> (6 tests were not run)
> ======================
>
> Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
> ---
>  .../{elfutils_0.177.bb => elfutils_0.178.bb}  | 27 +++---
>  .../elfutils/files/0001-dso-link-change.patch | 12 +--
>  ...libasm-may-link-with-libbz2-if-found.patch |  8 +-
>  ...-fts.patch => 0001-musl-obstack-fts.patch} | 55 ++++++------
>  .../{musl-libs.patch => 0002-musl-libs.patch} |  7 +-
>  ...musl-utils.patch => 0003-musl-utils.patch} | 19 +++--
>  ...sts.patch => 0004-Fix-error-on-musl.patch} | 20 +++--
>  ...-where-we-have-str-as-uninitialized-.patch | 42 ---------
>  .../elfutils/files/debian/hppa_backend.diff   | 51 ++++++-----
>  .../elfutils/files/debian/mips_backend.diff   | 85 ++++++++++---------
>  .../elfutils/files/debian/mips_cfi.patch      | 22 +++--
>  11 files changed, 162 insertions(+), 186 deletions(-)
>  rename meta/recipes-devtools/elfutils/{elfutils_0.177.bb => elfutils_0.178.bb} (87%)
>  rename meta/recipes-devtools/elfutils/files/{musl-obstack-fts.patch => 0001-musl-obstack-fts.patch} (78%)
>  rename meta/recipes-devtools/elfutils/files/{musl-libs.patch => 0002-musl-libs.patch} (97%)
>  rename meta/recipes-devtools/elfutils/files/{musl-utils.patch => 0003-musl-utils.patch} (91%)
>  rename meta/recipes-devtools/elfutils/files/{musl-tests.patch => 0004-Fix-error-on-musl.patch} (69%)
>  delete mode 100644 meta/recipes-devtools/elfutils/files/0007-Fix-control-path-where-we-have-str-as-uninitialized-.patch
>
> diff --git a/meta/recipes-devtools/elfutils/elfutils_0.177.bb b/meta/recipes-devtools/elfutils/elfutils_0.178.bb
> similarity index 87%
> rename from meta/recipes-devtools/elfutils/elfutils_0.177.bb
> rename to meta/recipes-devtools/elfutils/elfutils_0.178.bb
> index e7740c7fb46..9393628dd13 100644
> --- a/meta/recipes-devtools/elfutils/elfutils_0.177.bb
> +++ b/meta/recipes-devtools/elfutils/elfutils_0.178.bb
> @@ -13,7 +13,6 @@ SRC_URI = "https://sourceware.org/elfutils/ftp/${PV}/${BP}.tar.bz2 \
>             file://0003-fixheadercheck.patch \
>             file://0004-Disable-the-test-to-convert-euc-jp.patch \
>             file://0006-Fix-build-on-aarch64-musl.patch \
> -           file://0007-Fix-control-path-where-we-have-str-as-uninitialized-.patch \
>             file://0001-libasm-may-link-with-libbz2-if-found.patch \
>             file://0001-libelf-elf_end.c-check-data_list.data.d.d_buf-before.patch \
>             file://debian/hppa_backend.diff \
> @@ -36,17 +35,17 @@ SRC_URI = "https://sourceware.org/elfutils/ftp/${PV}/${BP}.tar.bz2 \
>             file://ptest.patch \
>             "
>  SRC_URI_append_libc-musl = " \
> -           file://musl-obstack-fts.patch \
> -           file://musl-libs.patch \
> -           file://musl-utils.patch \
> -           file://musl-tests.patch \
> +           file://0001-musl-obstack-fts.patch \
> +           file://0002-musl-libs.patch \
> +           file://0003-musl-utils.patch \
> +           file://0004-Fix-error-on-musl.patch \
>             "
> -SRC_URI[md5sum] = "0b583722f911e1632544718d502aab87"
> -SRC_URI[sha256sum] = "fa489deccbcae7d8c920f60d85906124c1989c591196d90e0fd668e3dc05042e"
> +SRC_URI[md5sum] = "5480d0b7174446aba13a6adde107287f"
> +SRC_URI[sha256sum] = "31e7a00e96d4e9c4bda452e1f2cdac4daf8abd24f5e154dee232131899f3a0f2"
>
> -inherit autotools gettext ptest
> +inherit autotools gettext ptest pkgconfig
>
> -EXTRA_OECONF = "--program-prefix=eu-"
> +EXTRA_OECONF = "--program-prefix=eu- --disable-debuginfod"
>
>  DEPENDS_BZIP2 = "bzip2-replacement-native"
>  DEPENDS_BZIP2_class-target = "bzip2"
> @@ -73,10 +72,11 @@ do_compile_ptest() {
>  do_install_ptest() {
>         if [ ${PTEST_ENABLED} = "1" ]; then
>                 # copy the files which needed by the cases
> -               TEST_FILES="strip strip.o addr2line elfcmp objdump readelf size.o nm.o nm elflint"
> +               TEST_FILES="strip strip.o addr2line elfcmp objdump readelf size.o nm.o nm elflint elfcompress elfclassify stack unstrip"
>                 install -d -m 755                       ${D}${PTEST_PATH}/src
>                 install -d -m 755                       ${D}${PTEST_PATH}/libelf
>                 install -d -m 755                       ${D}${PTEST_PATH}/libdw
> +               install -d -m 755                       ${D}${PTEST_PATH}/libasm
>                 for test_file in ${TEST_FILES}; do
>                         if [ -f ${B}/src/${test_file} ]; then
>                                 cp -r ${B}/src/${test_file} ${D}${PTEST_PATH}/src
> @@ -84,6 +84,7 @@ do_install_ptest() {
>                 done
>                 cp ${D}${libdir}/libelf-${PV}.so ${D}${PTEST_PATH}/libelf/libelf.so
>                 cp ${D}${libdir}/libdw-${PV}.so ${D}${PTEST_PATH}/libdw/libdw.so
> +               cp ${D}${libdir}/libasm-${PV}.so ${D}${PTEST_PATH}/libasm/libasm.so
>                 cp -r ${S}/tests/                       ${D}${PTEST_PATH}
>                 cp -r ${B}/tests/*                      ${D}${PTEST_PATH}/tests
>                 cp -r ${B}/config.h                     ${D}${PTEST_PATH}
> @@ -146,10 +147,14 @@ INHIBIT_PACKAGE_STRIP_FILES = "\
>      ${PKGD}${PTEST_PATH}/src/readelf \
>      ${PKGD}${PTEST_PATH}/src/nm \
>      ${PKGD}${PTEST_PATH}/src/elflint \
> +    ${PKGD}${PTEST_PATH}/src/elfclassify \
> +    ${PKGD}${PTEST_PATH}/src/stack \
> +    ${PKGD}${PTEST_PATH}/src/unstrip \
>      ${PKGD}${PTEST_PATH}/libelf/libelf.so \
>      ${PKGD}${PTEST_PATH}/libdw/libdw.so \
> +    ${PKGD}${PTEST_PATH}/libasm/libasm.so \
>      ${PKGD}${PTEST_PATH}/backends/libebl_i386.so \
>      ${PKGD}${PTEST_PATH}/backends/libebl_x86_64.so \
>  "
>
> -PRIVATE_LIBS_${PN}-ptest = "libdw.so.1 libelf.so.1"
> +PRIVATE_LIBS_${PN}-ptest = "libdw.so.1 libelf.so.1 libasm.so.1"
> diff --git a/meta/recipes-devtools/elfutils/files/0001-dso-link-change.patch b/meta/recipes-devtools/elfutils/files/0001-dso-link-change.patch
> index af79ef496dd..62031073e31 100644
> --- a/meta/recipes-devtools/elfutils/files/0001-dso-link-change.patch
> +++ b/meta/recipes-devtools/elfutils/files/0001-dso-link-change.patch
> @@ -1,4 +1,4 @@
> -From b99aa12cf879ce200e03d75e543c7ab2dfa5503b Mon Sep 17 00:00:00 2001
> +From ec9a7742734aae5417c0ebbffce66ac353e6cae7 Mon Sep 17 00:00:00 2001
>  From: Hongxu Jia <hongxu.jia@windriver.com>
>  Date: Tue, 15 Aug 2017 17:10:57 +0800
>  Subject: [PATCH] dso link change
> @@ -23,10 +23,10 @@ Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
>   2 files changed, 2 insertions(+), 2 deletions(-)
>
>  diff --git a/src/Makefile.am b/src/Makefile.am
> -index 2b1c0dc..9305b84 100644
> +index e462e7d..ea1215b 100644
>  --- a/src/Makefile.am
>  +++ b/src/Makefile.am
> -@@ -44,7 +44,7 @@ libdw = ../libdw/libdw.a -lz $(zip_LIBS) $(libelf) $(libebl) -ldl
> +@@ -45,7 +45,7 @@ libdw = ../libdw/libdw.a -lz $(zip_LIBS) $(libelf) -ldl -lpthread
>   libelf = ../libelf/libelf.a -lz
>   else
>   libasm = ../libasm/libasm.so
> @@ -34,12 +34,12 @@ index 2b1c0dc..9305b84 100644
>  +libdw = ../libdw/libdw.so $(zip_LIBS) $(libelf) $(libebl) -ldl
>   libelf = ../libelf/libelf.so
>   endif
> - libebl = ../libebl/libebl.a
> + libebl = ../libebl/libebl.a ../backends/libebl_backends.a ../libcpu/libcpu.a
>  diff --git a/tests/Makefile.am b/tests/Makefile.am
> -index 1b0c7d3..bced19b 100644
> +index eab4ae6..f59a01f 100644
>  --- a/tests/Makefile.am
>  +++ b/tests/Makefile.am
> -@@ -476,7 +476,7 @@ libdw = ../libdw/libdw.a -lz $(zip_LIBS) $(libelf) $(libebl) -ldl
> +@@ -516,7 +516,7 @@ libdw = ../libdw/libdw.a -lz $(zip_LIBS) $(libelf) $(libebl) -ldl -lpthread
>   libelf = ../libelf/libelf.a -lz
>   libasm = ../libasm/libasm.a
>   else
> diff --git a/meta/recipes-devtools/elfutils/files/0001-libasm-may-link-with-libbz2-if-found.patch b/meta/recipes-devtools/elfutils/files/0001-libasm-may-link-with-libbz2-if-found.patch
> index 0d533c8f10a..73ead6d412f 100644
> --- a/meta/recipes-devtools/elfutils/files/0001-libasm-may-link-with-libbz2-if-found.patch
> +++ b/meta/recipes-devtools/elfutils/files/0001-libasm-may-link-with-libbz2-if-found.patch
> @@ -1,4 +1,4 @@
> -From d7be687c35fa42954874034c82ca9059d28196fe Mon Sep 17 00:00:00 2001
> +From 8e5fff8b1d819e0870fb22b27950bb5f10c7a272 Mon Sep 17 00:00:00 2001
>  From: Khem Raj <raj.khem@gmail.com>
>  Date: Wed, 4 Oct 2017 22:30:46 -0700
>  Subject: [PATCH] libasm may link with libbz2 if found
> @@ -17,16 +17,16 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
>   1 file changed, 2 insertions(+), 2 deletions(-)
>
>  diff --git a/src/Makefile.am b/src/Makefile.am
> -index 9305b84..9b7e853 100644
> +index ea1215b..13d9bda 100644
>  --- a/src/Makefile.am
>  +++ b/src/Makefile.am
> -@@ -39,11 +39,11 @@ EXTRA_DIST += make-debug-archive.in
> +@@ -40,11 +40,11 @@ EXTRA_DIST += make-debug-archive.in
>   CLEANFILES += make-debug-archive
>
>   if BUILD_STATIC
>  -libasm = ../libasm/libasm.a
>  +libasm = ../libasm/libasm.a $(zip_LIBS)
> - libdw = ../libdw/libdw.a -lz $(zip_LIBS) $(libelf) $(libebl) -ldl
> + libdw = ../libdw/libdw.a -lz $(zip_LIBS) $(libelf) -ldl -lpthread
>   libelf = ../libelf/libelf.a -lz
>   else
>  -libasm = ../libasm/libasm.so
> diff --git a/meta/recipes-devtools/elfutils/files/musl-obstack-fts.patch b/meta/recipes-devtools/elfutils/files/0001-musl-obstack-fts.patch
> similarity index 78%
> rename from meta/recipes-devtools/elfutils/files/musl-obstack-fts.patch
> rename to meta/recipes-devtools/elfutils/files/0001-musl-obstack-fts.patch
> index 40f2b69cf4c..f751a2ecdbe 100644
> --- a/meta/recipes-devtools/elfutils/files/musl-obstack-fts.patch
> +++ b/meta/recipes-devtools/elfutils/files/0001-musl-obstack-fts.patch
> @@ -1,7 +1,7 @@
> -From 77b89dbc9f9f965ad0ef2e341d7d46bce5f07549 Mon Sep 17 00:00:00 2001
> +From 8ccf3d92b8766b53f203df7e01b489604ef851f3 Mon Sep 17 00:00:00 2001
>  From: Hongxu Jia <hongxu.jia@windriver.com>
>  Date: Fri, 23 Aug 2019 10:17:25 +0800
> -Subject: [PATCH 1/3] musl-obstack-fts
> +Subject: [PATCH 1/4] musl-obstack-fts
>
>  Look for libfts and libobstack during configure, these
>  libraries are external to libc when using musl, whereas
> @@ -12,17 +12,18 @@ Upstream-Status: Inappropriate [workaround for musl]
>
>  Rebase to 0.177
>  Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
> +
>  ---
> - configure.ac      | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
> + configure.ac      | 54 +++++++++++++++++++++++++++++++++++++++++++++++
>   libdw/Makefile.am |  2 +-
> - src/Makefile.am   |  8 ++++----
> - 3 files changed, 59 insertions(+), 5 deletions(-)
> + src/Makefile.am   |  6 +++---
> + 3 files changed, 58 insertions(+), 4 deletions(-)
>
>  diff --git a/configure.ac b/configure.ac
> -index f93964c..b87b762 100644
> +index cad7b2b..6d4229b 100644
>  --- a/configure.ac
>  +++ b/configure.ac
> -@@ -494,6 +494,60 @@ else
> +@@ -529,6 +529,60 @@ else
>   fi
>   AC_SUBST([argp_LDADD])
>
> @@ -84,45 +85,43 @@ index f93964c..b87b762 100644
>
>   dnl Documentation.
>  diff --git a/libdw/Makefile.am b/libdw/Makefile.am
> -index 7a3d532..a541fa3 100644
> +index 33b5838..ff92e02 100644
>  --- a/libdw/Makefile.am
>  +++ b/libdw/Makefile.am
> -@@ -108,7 +108,7 @@ am_libdw_pic_a_OBJECTS = $(libdw_a_SOURCES:.c=.os)
> - libdw_so_LIBS = libdw_pic.a ../libdwelf/libdwelf_pic.a \
> -         ../libdwfl/libdwfl_pic.a ../libebl/libebl.a
> +@@ -109,7 +109,7 @@ libdw_so_LIBS = ../libebl/libebl_pic.a ../backends/libebl_backends_pic.a \
> +               ../libcpu/libcpu_pic.a libdw_pic.a ../libdwelf/libdwelf_pic.a \
> +               ../libdwfl/libdwfl_pic.a
>   libdw_so_DEPS = ../lib/libeu.a ../libelf/libelf.so
> --libdw_so_LDLIBS = $(libdw_so_DEPS) -ldl -lz $(argp_LDADD) $(zip_LIBS)
> -+libdw_so_LDLIBS = $(libdw_so_DEPS) -ldl -lz $(argp_LDADD) $(fts_LDADD) $(zip_LIBS)
> +-libdw_so_LDLIBS = $(libdw_so_DEPS) -ldl -lz $(argp_LDADD) $(zip_LIBS) -pthread
> ++libdw_so_LDLIBS = $(libdw_so_DEPS) -ldl -lz $(argp_LDADD) $(fts_LDADD) $(zip_LIBS) -pthread
>   libdw_so_SOURCES =
>   libdw.so$(EXEEXT): $(srcdir)/libdw.map $(libdw_so_LIBS) $(libdw_so_DEPS)
> - # The rpath is necessary for libebl because its $ORIGIN use will
> +       $(AM_V_CCLD)$(LINK) $(dso_LDFLAGS) -o $@ \
>  diff --git a/src/Makefile.am b/src/Makefile.am
> -index b72f853..2f3dfce 100644
> +index 13d9bda..d5a4f7d 100644
>  --- a/src/Makefile.am
>  +++ b/src/Makefile.am
> -@@ -69,8 +69,8 @@ ar_no_Wstack_usage = yes
> +@@ -69,7 +69,7 @@ ar_no_Wstack_usage = yes
>   unstrip_no_Wstack_usage = yes
>
> - readelf_LDADD = $(libdw) $(libebl) $(libelf) $(libeu) $(argp_LDADD) -ldl
> --nm_LDADD = $(libdw) $(libebl) $(libelf) $(libeu) $(argp_LDADD) -ldl \
> --         $(demanglelib)
> -+nm_LDADD = $(libdw) $(libebl) $(libelf) $(libeu) $(argp_LDADD) \
> -+         $(obstack_LDADD) -ldl $(demanglelib)
> + readelf_LDADD = $(libdw) $(libebl) $(libelf) $(libeu) $(argp_LDADD)
> +-nm_LDADD = $(libdw) $(libebl) $(libelf) $(libeu) $(argp_LDADD) \
> ++nm_LDADD = $(libdw) $(libebl) $(libelf) $(libeu) $(argp_LDADD) $(obstack_LDADD) \
> +          $(demanglelib)
>   size_LDADD = $(libelf) $(libeu) $(argp_LDADD)
> - strip_LDADD = $(libebl) $(libelf) $(libdw) $(libeu) $(argp_LDADD) -ldl
> - elflint_LDADD  = $(libebl) $(libelf) $(libeu) $(argp_LDADD) -ldl
> + strip_LDADD = $(libebl) $(libelf) $(libdw) $(libeu) $(argp_LDADD)
>  @@ -78,9 +78,9 @@ findtextrel_LDADD = $(libdw) $(libelf) $(libeu) $(argp_LDADD)
>   addr2line_LDADD = $(libdw) $(libelf) $(libeu) $(argp_LDADD) $(demanglelib)
> - elfcmp_LDADD = $(libebl) $(libelf) $(libeu) $(argp_LDADD) -ldl
> - objdump_LDADD  = $(libasm) $(libebl) $(libelf) $(libeu) $(argp_LDADD) -ldl
> + elfcmp_LDADD = $(libebl) $(libdw) $(libelf) $(libeu) $(argp_LDADD)
> + objdump_LDADD  = $(libasm) $(libebl) $(libdw) $(libelf) $(libeu) $(argp_LDADD)
>  -ranlib_LDADD = libar.a $(libelf) $(libeu) $(argp_LDADD)
>  +ranlib_LDADD = libar.a $(libelf) $(libeu) $(argp_LDADD) $(obstack_LDADD)
>   strings_LDADD = $(libelf) $(libeu) $(argp_LDADD)
>  -ar_LDADD = libar.a $(libelf) $(libeu) $(argp_LDADD)
>  +ar_LDADD = libar.a $(libelf) $(libeu) $(argp_LDADD) $(obstack_LDADD)
> - unstrip_LDADD = $(libebl) $(libelf) $(libdw) $(libeu) $(argp_LDADD) -ldl
> - stack_LDADD = $(libebl) $(libelf) $(libdw) $(libeu) $(argp_LDADD) -ldl $(demanglelib)
> + unstrip_LDADD = $(libebl) $(libelf) $(libdw) $(libeu) $(argp_LDADD)
> + stack_LDADD = $(libebl) $(libelf) $(libdw) $(libeu) $(argp_LDADD) $(demanglelib)
>   elfcompress_LDADD = $(libebl) $(libelf) $(libdw) $(libeu) $(argp_LDADD)
>  --
> -2.7.4
> +2.17.1
>
> diff --git a/meta/recipes-devtools/elfutils/files/musl-libs.patch b/meta/recipes-devtools/elfutils/files/0002-musl-libs.patch
> similarity index 97%
> rename from meta/recipes-devtools/elfutils/files/musl-libs.patch
> rename to meta/recipes-devtools/elfutils/files/0002-musl-libs.patch
> index b9b9f120dfa..cf146838645 100644
> --- a/meta/recipes-devtools/elfutils/files/musl-libs.patch
> +++ b/meta/recipes-devtools/elfutils/files/0002-musl-libs.patch
> @@ -1,7 +1,7 @@
> -From d5a1651df9884fcf57ed320bc2f866538af2f420 Mon Sep 17 00:00:00 2001
> +From ea908c7009de5a208383abf4bec4c6b3d9519ca3 Mon Sep 17 00:00:00 2001
>  From: Hongxu Jia <hongxu.jia@windriver.com>
>  Date: Fri, 23 Aug 2019 10:18:47 +0800
> -Subject: [PATCH 2/3] musl-libs
> +Subject: [PATCH 2/4] musl-libs
>
>  Collection of fixes needed to compile libelf and other libraries
>  provided by elfutils for musl targets
> @@ -14,6 +14,7 @@ Upstream-Status: Inappropriate [workaround for musl]
>
>  Rebase to 0.177
>  Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
> +
>  ---
>   lib/error.h                    | 27 +++++++++++++++++++++++++++
>   lib/fixedsizehash.h            |  1 -
> @@ -140,5 +141,5 @@ index bed273d..be228e6 100644
>  +#endif
>   #endif        /* elf.h */
>  --
> -2.7.4
> +2.17.1
>
> diff --git a/meta/recipes-devtools/elfutils/files/musl-utils.patch b/meta/recipes-devtools/elfutils/files/0003-musl-utils.patch
> similarity index 91%
> rename from meta/recipes-devtools/elfutils/files/musl-utils.patch
> rename to meta/recipes-devtools/elfutils/files/0003-musl-utils.patch
> index a8ad9312364..79c9d9ad578 100644
> --- a/meta/recipes-devtools/elfutils/files/musl-utils.patch
> +++ b/meta/recipes-devtools/elfutils/files/0003-musl-utils.patch
> @@ -1,7 +1,7 @@
> -From 7f5e2fd86d54e0a4d195ec65afb9b411829dff9f Mon Sep 17 00:00:00 2001
> +From 94028b16e56c8eef1aa02dcc4da268a0e471b4ea Mon Sep 17 00:00:00 2001
>  From: Hongxu Jia <hongxu.jia@windriver.com>
>  Date: Fri, 23 Aug 2019 10:19:48 +0800
> -Subject: [PATCH 3/3] musl-utils
> +Subject: [PATCH 3/4] musl-utils
>
>  Provide missing defines which otherwise are available on glibc system headers
>
> @@ -13,6 +13,7 @@ Upstream-Status: Inappropriate [workaround for musl]
>
>  Rebase to 0.177
>  Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
> +
>  ---
>   src/arlib.h       |  6 ++++++
>   src/elfcompress.c |  7 +++++++
> @@ -57,10 +58,10 @@ index 6ba6af4..0c7674b 100644
>   ARGP_PROGRAM_VERSION_HOOK_DEF = print_version;
>
>  diff --git a/src/readelf.c b/src/readelf.c
> -index 5c02a9b..817562d 100644
> +index 5994615..f3cc071 100644
>  --- a/src/readelf.c
>  +++ b/src/readelf.c
> -@@ -4813,10 +4813,11 @@ listptr_base (struct listptr *p)
> +@@ -4829,10 +4829,11 @@ listptr_base (struct listptr *p)
>     return cudie_base (&cu);
>   }
>
> @@ -74,7 +75,7 @@ index 5c02a9b..817562d 100644
>     struct listptr *p1 = (void *) a;
>     struct listptr *p2 = (void *) b;
>
> -@@ -4832,21 +4833,21 @@ compare_listptr (const void *a, const void *b, void *arg)
> +@@ -4848,21 +4849,21 @@ compare_listptr (const void *a, const void *b, void *arg)
>           p1->warned = p2->warned = true;
>           error (0, 0,
>                  gettext ("%s %#" PRIx64 " used with different address sizes"),
> @@ -99,7 +100,7 @@ index 5c02a9b..817562d 100644
>         }
>         if (p1->attr != p2 ->attr)
>         {
> -@@ -4854,7 +4855,7 @@ compare_listptr (const void *a, const void *b, void *arg)
> +@@ -4870,7 +4871,7 @@ compare_listptr (const void *a, const void *b, void *arg)
>           error (0, 0,
>                  gettext ("%s %#" PRIx64
>                           " used with different attribute %s and %s"),
> @@ -108,7 +109,7 @@ index 5c02a9b..817562d 100644
>                  dwarf_attr_name (p2->attr));
>         }
>       }
> -@@ -4926,8 +4927,11 @@ static void
> +@@ -4942,8 +4943,11 @@ static void
>   sort_listptr (struct listptr_table *table, const char *name)
>   {
>     if (table->n > 0)
> @@ -141,7 +142,7 @@ index 4054c2a..d2d2176 100644
>
>   /* Name and version of program.  */
>  diff --git a/src/unstrip.c b/src/unstrip.c
> -index fc87832..21ea6b3 100644
> +index 9b8c09a..1fb5063 100644
>  --- a/src/unstrip.c
>  +++ b/src/unstrip.c
>  @@ -56,6 +56,15 @@
> @@ -161,5 +162,5 @@ index fc87832..21ea6b3 100644
>   ARGP_PROGRAM_VERSION_HOOK_DEF = print_version;
>
>  --
> -2.7.4
> +2.17.1
>
> diff --git a/meta/recipes-devtools/elfutils/files/musl-tests.patch b/meta/recipes-devtools/elfutils/files/0004-Fix-error-on-musl.patch
> similarity index 69%
> rename from meta/recipes-devtools/elfutils/files/musl-tests.patch
> rename to meta/recipes-devtools/elfutils/files/0004-Fix-error-on-musl.patch
> index be35791b1af..1b2f9ed98b2 100644
> --- a/meta/recipes-devtools/elfutils/files/musl-tests.patch
> +++ b/meta/recipes-devtools/elfutils/files/0004-Fix-error-on-musl.patch
> @@ -1,4 +1,7 @@
> -Fix error on musl:
> +From 7ff8cbecde7455b530fa7894a78d2326799f2556 Mon Sep 17 00:00:00 2001
> +From: Richard Purdie <richard.purdie@linuxfoundation.org>
> +Date: Wed, 1 May 2019 22:15:03 +0100
> +Subject: [PATCH 4/4] Fix error on musl:
>
>  | ../../elfutils-0.176/tests/elfstrmerge.c: In function 'main':
>  | ../../elfutils-0.176/tests/elfstrmerge.c:370:60: error: 'ALLPERMS' undeclared (first use in this function); did you mean 'EPERM'?
> @@ -11,10 +14,14 @@ Upstream-Status: Inappropriate [workaround in musl]
>
>  Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
>
> -Index: elfutils-0.176/tests/elfstrmerge.c
> -===================================================================
> ---- elfutils-0.176.orig/tests/elfstrmerge.c
> -+++ elfutils-0.176/tests/elfstrmerge.c
> +---
> + tests/elfstrmerge.c | 5 +++++
> + 1 file changed, 5 insertions(+)
> +
> +diff --git a/tests/elfstrmerge.c b/tests/elfstrmerge.c
> +index ba0d68d..1d2447f 100644
> +--- a/tests/elfstrmerge.c
> ++++ b/tests/elfstrmerge.c
>  @@ -33,6 +33,11 @@
>   #include ELFUTILS_HEADER(dwelf)
>   #include "elf-knowledge.h"
> @@ -27,3 +34,6 @@ Index: elfutils-0.176/tests/elfstrmerge.c
>   /* The original ELF file.  */
>   static int fd = -1;
>   static Elf *elf = NULL;
> +--
> +2.17.1
> +
> diff --git a/meta/recipes-devtools/elfutils/files/0007-Fix-control-path-where-we-have-str-as-uninitialized-.patch b/meta/recipes-devtools/elfutils/files/0007-Fix-control-path-where-we-have-str-as-uninitialized-.patch
> deleted file mode 100644
> index 611a24c0f54..00000000000
> --- a/meta/recipes-devtools/elfutils/files/0007-Fix-control-path-where-we-have-str-as-uninitialized-.patch
> +++ /dev/null
> @@ -1,42 +0,0 @@
> -From 112d1645bab7922c7796fe32ddea8fa6e1bbded1 Mon Sep 17 00:00:00 2001
> -From: Hongxu Jia <hongxu.jia@windriver.com>
> -Date: Fri, 29 Jun 2018 15:14:28 +0800
> -Subject: [PATCH] Fix control path where we have str as uninitialized string
> -
> -|
> -/home/ubuntu/work/oe/openembedded-core/build/tmp-musl/work/i586-oe-linux-musl/elfutils/0.164-r0/elfutils-0.164/libcpu/i386_disasm.c:
> -In function 'i386_disasm':
> -|
> -/home/ubuntu/work/oe/openembedded-core/build/tmp-musl/work/i586-oe-linux-musl/elfutils/0.164-r0/elfutils-0.164/libcpu/i386_disasm.c:310:5:
> -error: 'str' may be used uninitialized in this function
> -[-Werror=maybe-uninitialized]
> -|      memcpy (buf + bufcnt, _str, _len);           \
> -|      ^
> -|
> -/home/ubuntu/work/oe/openembedded-core/build/tmp-musl/work/i586-oe-linux-musl/elfutils/0.164-r0/elfutils-0.164/libcpu/i386_disasm.c:709:17:
> -note: 'str' was declared here
> -|      const char *str;
> -
> -Signed-off-by: Khem Raj <raj.khem@gmail.com>
> -Upstream-Status: Pending
> -
> -Rebase to 0.172
> -
> -Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
> -
> ----
> - libcpu/i386_disasm.c | 1 +
> - 1 file changed, 1 insertion(+)
> -
> -diff --git a/libcpu/i386_disasm.c b/libcpu/i386_disasm.c
> -index a7e03f9..837a3a8 100644
> ---- a/libcpu/i386_disasm.c
> -+++ b/libcpu/i386_disasm.c
> -@@ -821,6 +821,7 @@ i386_disasm (Ebl *ebl __attribute__((unused)),
> -                           }
> -                         FALLTHROUGH;
> -                       default:
> -+                        str = "";
> -                         assert (! "INVALID not handled");
> -                       }
> -                   }
> diff --git a/meta/recipes-devtools/elfutils/files/debian/hppa_backend.diff b/meta/recipes-devtools/elfutils/files/debian/hppa_backend.diff
> index 4460d582c73..53fa2f435b4 100644
> --- a/meta/recipes-devtools/elfutils/files/debian/hppa_backend.diff
> +++ b/meta/recipes-devtools/elfutils/files/debian/hppa_backend.diff
> @@ -1,4 +1,4 @@
> -From 8efad9105b38985bea373416ae8fcacf21d1d129 Mon Sep 17 00:00:00 2001
> +From ffb811e18d7046d5bbe54ede5b1b7e14eaac0146 Mon Sep 17 00:00:00 2001
>  From: Hongxu Jia <hongxu.jia@windriver.com>
>  Date: Wed, 21 Aug 2019 15:44:18 +0800
>  Subject: [PATCH] hppa backend
> @@ -6,15 +6,16 @@ Subject: [PATCH] hppa backend
>  Rebase to 0.177
>  Upstream-Status: Pending [from debian]
>  Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
> +
>  ---
>   backends/Makefile.am      |   7 +-
>   backends/libebl_parisc.h  |   9 ++
> - backends/parisc_init.c    |  73 ++++++++++++++++
> - backends/parisc_regs.c    | 159 ++++++++++++++++++++++++++++++++++
> - backends/parisc_reloc.def | 128 ++++++++++++++++++++++++++++
> - backends/parisc_retval.c  | 213 ++++++++++++++++++++++++++++++++++++++++++++++
> - backends/parisc_symbol.c  | 113 ++++++++++++++++++++++++
> - libelf/elf.h              |  11 +++
> + backends/parisc_init.c    |  73 +++++++++++++
> + backends/parisc_regs.c    | 159 ++++++++++++++++++++++++++++
> + backends/parisc_reloc.def | 128 +++++++++++++++++++++++
> + backends/parisc_retval.c  | 213 ++++++++++++++++++++++++++++++++++++++
> + backends/parisc_symbol.c  | 113 ++++++++++++++++++++
> + libelf/elf.h              |  11 ++
>   8 files changed, 711 insertions(+), 2 deletions(-)
>   create mode 100644 backends/libebl_parisc.h
>   create mode 100644 backends/parisc_init.c
> @@ -24,31 +25,30 @@ Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
>   create mode 100644 backends/parisc_symbol.c
>
>  diff --git a/backends/Makefile.am b/backends/Makefile.am
> -index 175468f..91a38e2 100644
> +index f405212..4755f61 100644
>  --- a/backends/Makefile.am
>  +++ b/backends/Makefile.am
> -@@ -33,16 +33,19 @@ AM_CPPFLAGS += -I$(top_srcdir)/libebl -I$(top_srcdir)/libasm \
> -
> +@@ -37,7 +37,9 @@ AM_CPPFLAGS += -I$(top_srcdir)/libebl -I$(top_srcdir)/libasm \
> + noinst_LIBRARIES = libebl_backends.a libebl_backends_pic.a
>
>   modules = i386 sh x86_64 ia64 alpha arm aarch64 sparc ppc ppc64 s390 \
>  -        tilegx m68k bpf riscv csky
>  +        tilegx m68k bpf riscv csky parisc
> - libebl_pic = libebl_i386_pic.a libebl_sh_pic.a libebl_x86_64_pic.a    \
> -            libebl_ia64_pic.a libebl_alpha_pic.a libebl_arm_pic.a    \
> -            libebl_aarch64_pic.a libebl_sparc_pic.a libebl_ppc_pic.a \
> -            libebl_ppc64_pic.a libebl_s390_pic.a libebl_tilegx_pic.a \
> -            libebl_m68k_pic.a libebl_bpf_pic.a libebl_riscv_pic.a    \
> --           libebl_csky_pic.a
> -+           libebl_csky_pic.a libebl_parisc_pic.a
> - noinst_LIBRARIES = $(libebl_pic)
> - noinst_DATA = $(libebl_pic:_pic.a=.so)
> -
> ++
>  +parisc_SRCS = parisc_init.c parisc_symbol.c parisc_regs.c parisc_retval.c
> -+libebl_parisc_pic_a_SOURCES = $(parisc_SRCS)
> -+am_libebl_parisc_pic_a_OBJECTS = $(parisc_SRCS:.c=.os)
>
> - libelf = ../libelf/libelf.so
> - libdw = ../libdw/libdw.so
> + i386_SRCS = i386_init.c i386_symbol.c i386_corenote.c i386_cfi.c \
> +           i386_retval.c i386_regs.c i386_auxv.c i386_syscall.c \
> +@@ -102,7 +104,8 @@ libebl_backends_a_SOURCES = $(i386_SRCS) $(sh_SRCS) $(x86_64_SRCS) \
> +                           $(ia64_SRCS) $(alpha_SRCS) $(arm_SRCS) \
> +                           $(aarch64_SRCS) $(sparc_SRCS) $(ppc_SRCS) \
> +                           $(ppc64_SRCS) $(s390_SRCS) $(tilegx_SRCS) \
> +-                          $(m68k_SRCS) $(bpf_SRCS) $(riscv_SRCS) $(csky_SRCS)
> ++                          $(m68k_SRCS) $(bpf_SRCS) $(riscv_SRCS) $(csky_SRCS) \
> ++                            $(parisc_SRCS)
> +
> + libebl_backends_pic_a_SOURCES =
> + am_libebl_backends_pic_a_OBJECTS = $(libebl_backends_a_SOURCES:.c=.os)
>  diff --git a/backends/libebl_parisc.h b/backends/libebl_parisc.h
>  new file mode 100644
>  index 0000000..f473b79
> @@ -826,6 +826,3 @@ index 01648bd..218ceb2 100644
>   #define R_PARISC_SEGREL64     112     /* 64 bits segment rel. address.  */
>   #define R_PARISC_PLTOFF14WR   115     /* PLT-rel. address, right 14 bits.  */
>   #define R_PARISC_PLTOFF14DR   116     /* PLT-rel. address, right 14 bits.  */
> ---
> -2.7.4
> -
> diff --git a/meta/recipes-devtools/elfutils/files/debian/mips_backend.diff b/meta/recipes-devtools/elfutils/files/debian/mips_backend.diff
> index 1097b0ec6f2..749faa403f5 100644
> --- a/meta/recipes-devtools/elfutils/files/debian/mips_backend.diff
> +++ b/meta/recipes-devtools/elfutils/files/debian/mips_backend.diff
> @@ -1,4 +1,4 @@
> -From 68b497668cde5171880d073a7ea50d11c3bddbfc Mon Sep 17 00:00:00 2001
> +From 7e0b036d087dfff7f5e306f52fc78745f99454c3 Mon Sep 17 00:00:00 2001
>  From: Hongxu Jia <hongxu.jia@windriver.com>
>  Date: Wed, 21 Aug 2019 15:49:52 +0800
>  Subject: [PATCH] mips backend
> @@ -7,15 +7,16 @@ Rebase to 0.177
>  Upstream-Status: Pending [from debian]
>
>  Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
> +
>  ---
> - backends/Makefile.am    |   8 +-
> - backends/mips_init.c    |  59 +++++++++
> - backends/mips_regs.c    | 104 ++++++++++++++++
> - backends/mips_reloc.def |  79 ++++++++++++
> - backends/mips_retval.c  | 321 ++++++++++++++++++++++++++++++++++++++++++++++++
> - backends/mips_symbol.c  |  53 ++++++++
> - libebl/eblopenbackend.c |   2 +
> - 7 files changed, 624 insertions(+), 2 deletions(-)
> + backends/Makefile.am    |   6 +-
> + backends/mips_init.c    |  59 ++++++++
> + backends/mips_regs.c    | 104 +++++++++++++
> + backends/mips_reloc.def |  79 ++++++++++
> + backends/mips_retval.c  | 321 ++++++++++++++++++++++++++++++++++++++++
> + backends/mips_symbol.c  |  53 +++++++
> + libebl/eblopenbackend.c |   3 +
> + 7 files changed, 623 insertions(+), 2 deletions(-)
>   create mode 100644 backends/mips_init.c
>   create mode 100644 backends/mips_regs.c
>   create mode 100644 backends/mips_reloc.def
> @@ -23,36 +24,34 @@ Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
>   create mode 100644 backends/mips_symbol.c
>
>  diff --git a/backends/Makefile.am b/backends/Makefile.am
> -index 91a38e2..aba8a4a 100644
> +index 4755f61..07d45d7 100644
>  --- a/backends/Makefile.am
>  +++ b/backends/Makefile.am
> -@@ -33,13 +33,13 @@ AM_CPPFLAGS += -I$(top_srcdir)/libebl -I$(top_srcdir)/libasm \
> -
> +@@ -37,7 +37,7 @@ AM_CPPFLAGS += -I$(top_srcdir)/libebl -I$(top_srcdir)/libasm \
> + noinst_LIBRARIES = libebl_backends.a libebl_backends_pic.a
>
>   modules = i386 sh x86_64 ia64 alpha arm aarch64 sparc ppc ppc64 s390 \
>  -        tilegx m68k bpf riscv csky parisc
>  +        tilegx m68k bpf riscv csky parisc mips
> - libebl_pic = libebl_i386_pic.a libebl_sh_pic.a libebl_x86_64_pic.a    \
> -            libebl_ia64_pic.a libebl_alpha_pic.a libebl_arm_pic.a    \
> -            libebl_aarch64_pic.a libebl_sparc_pic.a libebl_ppc_pic.a \
> -            libebl_ppc64_pic.a libebl_s390_pic.a libebl_tilegx_pic.a \
> -            libebl_m68k_pic.a libebl_bpf_pic.a libebl_riscv_pic.a    \
> --           libebl_csky_pic.a libebl_parisc_pic.a
> -+           libebl_csky_pic.a libebl_parisc_pic.a libebl_mips_pic.a
> - noinst_LIBRARIES = $(libebl_pic)
> - noinst_DATA = $(libebl_pic:_pic.a=.so)
>
> -@@ -145,6 +145,10 @@ csky_SRCS = csky_attrs.c csky_init.c csky_symbol.c csky_cfi.c \
> - libebl_csky_pic_a_SOURCES = $(csky_SRCS)
> - am_libebl_csky_pic_a_OBJECTS = $(csky_SRCS:.c=.os)
> + parisc_SRCS = parisc_init.c parisc_symbol.c parisc_regs.c parisc_retval.c
> +
> +@@ -100,12 +100,14 @@ riscv_SRCS = riscv_init.c riscv_symbol.c riscv_cfi.c riscv_regs.c \
> + csky_SRCS = csky_attrs.c csky_init.c csky_symbol.c csky_cfi.c \
> +           csky_regs.c csky_initreg.c csky_corenote.c
>
>  +mips_SRCS = mips_init.c mips_symbol.c mips_regs.c mips_retval.c
> -+libebl_mips_pic_a_SOURCES = $(mips_SRCS)
> -+am_libebl_mips_pic_a_OBJECTS = $(mips_SRCS:.c=.os)
>  +
> - libebl_%.so libebl_%.map: libebl_%_pic.a $(libelf) $(libdw) $(libeu)
> -       @rm -f $(@:.so=.map)
> -       $(AM_V_at)echo 'ELFUTILS_$(PACKAGE_VERSION) { global: $*_init; local: *; };' \
> + libebl_backends_a_SOURCES = $(i386_SRCS) $(sh_SRCS) $(x86_64_SRCS) \
> +                           $(ia64_SRCS) $(alpha_SRCS) $(arm_SRCS) \
> +                           $(aarch64_SRCS) $(sparc_SRCS) $(ppc_SRCS) \
> +                           $(ppc64_SRCS) $(s390_SRCS) $(tilegx_SRCS) \
> +                           $(m68k_SRCS) $(bpf_SRCS) $(riscv_SRCS) $(csky_SRCS) \
> +-                            $(parisc_SRCS)
> ++                            $(parisc_SRCS) $(mips_SRCS)
> +
> + libebl_backends_pic_a_SOURCES =
> + am_libebl_backends_pic_a_OBJECTS = $(libebl_backends_a_SOURCES:.c=.os)
>  diff --git a/backends/mips_init.c b/backends/mips_init.c
>  new file mode 100644
>  index 0000000..975c04e
> @@ -700,18 +699,26 @@ index 0000000..261b05d
>  +    }
>  +}
>  diff --git a/libebl/eblopenbackend.c b/libebl/eblopenbackend.c
> -index 01711f5..d0c3589 100644
> +index 210b47e..1feac13 100644
>  --- a/libebl/eblopenbackend.c
>  +++ b/libebl/eblopenbackend.c
> -@@ -71,6 +71,8 @@ static const struct
> -   { "sparc", "elf_sparc", "sparc", 5, EM_SPARC, 0, 0 },
> -   { "sparc", "elf_sparcv8plus", "sparc", 5, EM_SPARC32PLUS, 0, 0 },
> -   { "s390", "ebl_s390", "s390", 4, EM_S390, 0, 0 },
> -+  { "mips", "elf_mips", "mips", 4, EM_MIPS, 0, 0 },
> -+  { "mips", "elf_mipsel", "mipsel", 4, EM_MIPS_RS3_LE, 0, 0 },
> +@@ -57,6 +57,7 @@ const char *m68k_init (Elf *, GElf_Half, Ebl *, size_t);
> + const char *bpf_init (Elf *, GElf_Half, Ebl *, size_t);
> + const char *riscv_init (Elf *, GElf_Half, Ebl *, size_t);
> + const char *csky_init (Elf *, GElf_Half, Ebl *, size_t);
> ++const char *mips_init (Elf *, GElf_Half, Ebl *, size_t);
> +
> + /* This table should contain the complete list of architectures as far
> +    as the ELF specification is concerned.  */
> +@@ -87,6 +88,8 @@ static const struct
> +   { sparc_init, "elf_sparc", "sparc", 5, EM_SPARC, 0, 0 },
> +   { sparc_init, "elf_sparcv8plus", "sparc", 5, EM_SPARC32PLUS, 0, 0 },
> +   { s390_init, "ebl_s390", "s390", 4, EM_S390, 0, 0 },
> ++  { mips_init, "elf_mips", "mips", 4, EM_MIPS, 0, 0 },
> ++  { mips_init, "elf_mipsel", "mipsel", 4, EM_MIPS_RS3_LE, 0, 0 },
>
> -   { "m32", "elf_m32", "m32", 3, EM_M32, 0, 0 },
> -   { "m68k", "elf_m68k", "m68k", 4, EM_68K, ELFCLASS32, ELFDATA2MSB },
> +   { NULL, "elf_m32", "m32", 3, EM_M32, 0, 0 },
> +   { m68k_init, "elf_m68k", "m68k", 4, EM_68K, ELFCLASS32, ELFDATA2MSB },
>  --
> -2.7.4
> +2.17.1
>
> diff --git a/meta/recipes-devtools/elfutils/files/debian/mips_cfi.patch b/meta/recipes-devtools/elfutils/files/debian/mips_cfi.patch
> index fda4f68059e..dd8f88a4542 100644
> --- a/meta/recipes-devtools/elfutils/files/debian/mips_cfi.patch
> +++ b/meta/recipes-devtools/elfutils/files/debian/mips_cfi.patch
> @@ -1,33 +1,34 @@
> -From 96e38289f2887ddb8e6d2fb91ea04bdbdf034ab5 Mon Sep 17 00:00:00 2001
> +From 5bf6117a6eaf9007ce80adbb8b66a95ca98047a4 Mon Sep 17 00:00:00 2001
>  From: Hongxu Jia <hongxu.jia@windriver.com>
>  Date: Wed, 21 Aug 2019 17:00:30 +0800
> -Subject: [PATCH 2/2] mips_cfi
> +Subject: [PATCH] mips_cfi
>
>  Upstream-Status: Pending [from debian]
>
>  Rebase to 0.177
>
>  Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
> +
>  ---
>   backends/Makefile.am |  2 +-
> - backends/mips_cfi.c  | 80 ++++++++++++++++++++++++++++++++++++++++++++++++++++
> + backends/mips_cfi.c  | 80 ++++++++++++++++++++++++++++++++++++++++++++
>   backends/mips_init.c |  1 +
>   3 files changed, 82 insertions(+), 1 deletion(-)
>   create mode 100644 backends/mips_cfi.c
>
>  diff --git a/backends/Makefile.am b/backends/Makefile.am
> -index aba8a4a..6ac0eec 100644
> +index 07d45d7..dec3080 100644
>  --- a/backends/Makefile.am
>  +++ b/backends/Makefile.am
> -@@ -145,7 +145,7 @@ csky_SRCS = csky_attrs.c csky_init.c csky_symbol.c csky_cfi.c \
> - libebl_csky_pic_a_SOURCES = $(csky_SRCS)
> - am_libebl_csky_pic_a_OBJECTS = $(csky_SRCS:.c=.os)
> +@@ -100,7 +100,7 @@ riscv_SRCS = riscv_init.c riscv_symbol.c riscv_cfi.c riscv_regs.c \
> + csky_SRCS = csky_attrs.c csky_init.c csky_symbol.c csky_cfi.c \
> +           csky_regs.c csky_initreg.c csky_corenote.c
>
>  -mips_SRCS = mips_init.c mips_symbol.c mips_regs.c mips_retval.c
>  +mips_SRCS = mips_init.c mips_symbol.c mips_regs.c mips_retval.c mips_cfi.c
> - libebl_mips_pic_a_SOURCES = $(mips_SRCS)
> - am_libebl_mips_pic_a_OBJECTS = $(mips_SRCS:.c=.os)
>
> + libebl_backends_a_SOURCES = $(i386_SRCS) $(sh_SRCS) $(x86_64_SRCS) \
> +                           $(ia64_SRCS) $(alpha_SRCS) $(arm_SRCS) \
>  diff --git a/backends/mips_cfi.c b/backends/mips_cfi.c
>  new file mode 100644
>  index 0000000..9ffdab5
> @@ -126,6 +127,3 @@ index 8482e7f..bce5abe 100644
>
>     return MODVERSION;
>   }
> ---
> -2.7.4
> -
> --
> 2.17.1
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core


^ permalink raw reply	[flat|nested] 64+ messages in thread

* Re: [PATCH 07/28] acl/attr: update to latest upstream releases
  2020-01-08 13:27 ` [PATCH 07/28] acl/attr: update to latest upstream releases Alexander Kanavin
@ 2020-01-09  1:30   ` Khem Raj
  2020-01-10 11:02   ` Richard Purdie
  1 sibling, 0 replies; 64+ messages in thread
From: Khem Raj @ 2020-01-09  1:30 UTC (permalink / raw)
  To: Alexander Kanavin; +Cc: Patches and discussions about the oe-core layer

Fails smbnetfs, perhaps xattr/attr.h -> sys/attr.h fix is needed here too

https://errors.yoctoproject.org/Errors/Details/305698/

On Wed, Jan 8, 2020 at 5:29 AM Alexander Kanavin <alex.kanavin@gmail.com> wrote:
>
> The latest release use standard autotools, so drop all
> the build system related hacks and patches.
>
> Ptests have been rewritten, with 100% pass rate for both.
>
> Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
> ---
>  .../0001-test-patch-out-failing-bits.patch    |  63 ++
>  ...dcode-the-build-path-into-a-helper-l.patch |  24 +
>  ...file-libacl-should-depend-on-include.patch |  51 --
>  ...-order-of-expected-output-of-getfacl.patch | 198 ------
>  meta/recipes-support/attr/acl/configure.ac    |  49 --
>  meta/recipes-support/attr/acl/run-ptest       |  60 +-
>  .../acl/test-fix-directory-permissions.patch  |  37 -
>  .../test-fix-insufficient-quoting-of.patch    | 100 ---
>  ...-SELinux-machines-for-root-testcases.patch |  84 ---
>  meta/recipes-support/attr/acl_2.2.52.bb       |  52 --
>  meta/recipes-support/attr/acl_2.2.53.bb       |  64 ++
>  meta/recipes-support/attr/attr.inc            |  41 +-
>  .../0001-Use-stdint-types-consistently.patch  |  69 --
>  .../attr/attr/attr-Missing-configure.ac.patch |  63 --
>  .../attr/attr/dont-use-decl-macros.patch      |  56 --
>  meta/recipes-support/attr/attr/run-ptest      |   3 +
>  meta/recipes-support/attr/attr_2.4.47.bb      |  15 -
>  meta/recipes-support/attr/attr_2.4.48.bb      |   6 +
>  meta/recipes-support/attr/ea-acl.inc          |  52 --
>  ...option-to-enable-disable-static-libr.patch |  70 --
>  ...e-attr.5-man-page-moved-to-man-pages.patch | 240 -------
>  .../Remove-the-section-2-man-pages.patch      | 666 ------------------
>  .../attr/files/relative-libdir.patch          |  25 -
>  meta/recipes-support/attr/files/run-ptest     |   5 -
>  24 files changed, 188 insertions(+), 1905 deletions(-)
>  create mode 100644 meta/recipes-support/attr/acl/0001-test-patch-out-failing-bits.patch
>  create mode 100644 meta/recipes-support/attr/acl/0001-tests-do-not-hardcode-the-build-path-into-a-helper-l.patch
>  delete mode 100644 meta/recipes-support/attr/acl/Makefile-libacl-should-depend-on-include.patch
>  delete mode 100644 meta/recipes-support/attr/acl/acl-fix-the-order-of-expected-output-of-getfacl.patch
>  delete mode 100644 meta/recipes-support/attr/acl/configure.ac
>  delete mode 100644 meta/recipes-support/attr/acl/test-fix-directory-permissions.patch
>  delete mode 100644 meta/recipes-support/attr/acl/test-fix-insufficient-quoting-of.patch
>  delete mode 100644 meta/recipes-support/attr/acl/test-fixups-on-SELinux-machines-for-root-testcases.patch
>  delete mode 100644 meta/recipes-support/attr/acl_2.2.52.bb
>  create mode 100644 meta/recipes-support/attr/acl_2.2.53.bb
>  delete mode 100644 meta/recipes-support/attr/attr/0001-Use-stdint-types-consistently.patch
>  delete mode 100644 meta/recipes-support/attr/attr/attr-Missing-configure.ac.patch
>  delete mode 100644 meta/recipes-support/attr/attr/dont-use-decl-macros.patch
>  create mode 100644 meta/recipes-support/attr/attr/run-ptest
>  delete mode 100644 meta/recipes-support/attr/attr_2.4.47.bb
>  create mode 100644 meta/recipes-support/attr/attr_2.4.48.bb
>  delete mode 100644 meta/recipes-support/attr/ea-acl.inc
>  delete mode 100644 meta/recipes-support/attr/files/0001-Added-configure-option-to-enable-disable-static-libr.patch
>  delete mode 100644 meta/recipes-support/attr/files/Remove-the-attr.5-man-page-moved-to-man-pages.patch
>  delete mode 100644 meta/recipes-support/attr/files/Remove-the-section-2-man-pages.patch
>  delete mode 100644 meta/recipes-support/attr/files/relative-libdir.patch
>  delete mode 100644 meta/recipes-support/attr/files/run-ptest
>
> diff --git a/meta/recipes-support/attr/acl/0001-test-patch-out-failing-bits.patch b/meta/recipes-support/attr/acl/0001-test-patch-out-failing-bits.patch
> new file mode 100644
> index 00000000000..ba2ffee5d27
> --- /dev/null
> +++ b/meta/recipes-support/attr/acl/0001-test-patch-out-failing-bits.patch
> @@ -0,0 +1,63 @@
> +From 9e08219e0e99ee2589cf35fa8d52cef3515accce Mon Sep 17 00:00:00 2001
> +From: Alexander Kanavin <alex.kanavin@gmail.com>
> +Date: Thu, 12 Dec 2019 15:47:49 +0100
> +Subject: [PATCH] test: patch out failing bits
> +
> +I have confirmed on the host distro (Ubuntu 18.04) that they
> +fail as well; upstream probably haven't noticed because the
> +test is only executed under sudo.
> +
> +Upstream-Status: Inappropriate [disabling tests instead of fixing them properly]
> +Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
> +---
> + test/root/permissions.test | 13 -------------
> + 1 file changed, 13 deletions(-)
> +
> +diff --git a/test/root/permissions.test b/test/root/permissions.test
> +index 8f8f825..21e8a95 100644
> +--- a/test/root/permissions.test
> ++++ b/test/root/permissions.test
> +@@ -50,10 +50,6 @@ User daemon is a member in the owning group, which has only read access.
> + Verify this.
> +
> +       $ su daemon
> +-      $ cat f
> +-      > root
> +-      > bin
> +-
> +       $ echo daemon >> f
> +       >~ .*f: Permission denied$
> +
> +@@ -146,8 +142,6 @@ the owning group, he should still have no write access.
> +       $ setfacl -x g:daemon f
> +
> +       $ su daemon
> +-      $ echo daemon4 >> f
> +-      >~ .*f: Permission denied$
> +
> +
> + Change the owning group. The other permissions should now grant user
> +@@ -158,12 +152,6 @@ daemon write access.
> +
> +       $ su daemon
> +       $ echo daemon5 >> f
> +-      $ cat f
> +-      > root
> +-      > bin
> +-      > daemon
> +-      > daemon2
> +-      > daemon5
> +
> +
> + Verify that permissions in separate matching ACL entries do not
> +@@ -173,7 +161,6 @@ accumulate.
> +       $ setfacl -m g:bin:r,g:daemon:w f
> +
> +       $ su daemon
> +-      $ : < f
> +       $ : > f
> +       $ : <> f
> +       >~ .*f: Permission denied$
> +--
> +2.17.1
> +
> diff --git a/meta/recipes-support/attr/acl/0001-tests-do-not-hardcode-the-build-path-into-a-helper-l.patch b/meta/recipes-support/attr/acl/0001-tests-do-not-hardcode-the-build-path-into-a-helper-l.patch
> new file mode 100644
> index 00000000000..57ef0bb728c
> --- /dev/null
> +++ b/meta/recipes-support/attr/acl/0001-tests-do-not-hardcode-the-build-path-into-a-helper-l.patch
> @@ -0,0 +1,24 @@
> +From 39d332a8801de5d9ef09dacb3dba85c208b7b2ad Mon Sep 17 00:00:00 2001
> +From: Alexander Kanavin <alex.kanavin@gmail.com>
> +Date: Thu, 12 Dec 2019 13:45:52 +0100
> +Subject: [PATCH] tests: do not hardcode the build path into a helper library
> +
> +Upstream-Status: Inappropriate [oe-core specific]
> +Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
> +---
> + test/Makemodule.am | 2 +-
> + 1 file changed, 1 insertion(+), 1 deletion(-)
> +
> +diff --git a/test/Makemodule.am b/test/Makemodule.am
> +index 17d4927..015de7f 100644
> +--- a/test/Makemodule.am
> ++++ b/test/Makemodule.am
> +@@ -30,7 +30,7 @@ EXTRA_DIST += \
> + check_LTLIBRARIES = libtestlookup.la
> +
> + libtestlookup_la_SOURCES = test/test_passwd.c test/test_group.c
> +-libtestlookup_la_CFLAGS = -DBASEDIR=\"$(abs_srcdir)\"
> ++libtestlookup_la_CFLAGS = -DBASEDIR=\"/tmp/acl-ptest\"
> + libtestlookup_la_LDFLAGS = -rpath $(abs_builddir)
> +
> + AM_TESTS_ENVIRONMENT = PATH="$(abs_top_builddir):$$PATH";
> diff --git a/meta/recipes-support/attr/acl/Makefile-libacl-should-depend-on-include.patch b/meta/recipes-support/attr/acl/Makefile-libacl-should-depend-on-include.patch
> deleted file mode 100644
> index 4c7cba3b88d..00000000000
> --- a/meta/recipes-support/attr/acl/Makefile-libacl-should-depend-on-include.patch
> +++ /dev/null
> @@ -1,51 +0,0 @@
> -From d82457ce5ca7455e336da5e244d95f90e52aaef8 Mon Sep 17 00:00:00 2001
> -From: Robert Yang <liezhi.yang@windriver.com>
> -Date: Tue, 18 Apr 2017 01:17:26 -0700
> -Subject: [PATCH] Makefile: libacl should depend on include
> -
> -Fixed race issue:
> - In file included from acl_copy_entry.c:22:0:
> - libacl.h:19:21: fatal error: sys/acl.h: No such file or directory
> -  #include <sys/acl.h>
> -
> -[snip]
> -
> - compilation terminated.
> - acl_get_file.c:27:24: fatal error: acl/libacl.h: No such file or directory
> -  #include <acl/libacl.h>
> -                         ^
> -
> -The acl.h is in "include" directory, and include/Makefile creates
> -symlink "sys" and "acl" poinst to current dirctory:
> -$ ls include/ -l
> -acl -> .
> -sys -> .
> -
> -So if "libacl" target runs before "include", the error would happen
> -since no "acl" or "sys" directory.
> -
> -Let libacl depend on include can fix the problem.
> -
> -Upstream-Status: Pending
> -
> -Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
> ----
> - Makefile | 2 +-
> - 1 file changed, 1 insertion(+), 1 deletion(-)
> -
> -diff --git a/Makefile b/Makefile
> -index dce32d3..8a79379 100644
> ---- a/Makefile
> -+++ b/Makefile
> -@@ -48,7 +48,7 @@ else
> - endif
> -
> - # tool/lib dependencies
> --libacl: libmisc
> -+libacl: include libmisc
> - getfacl setfacl chacl: libacl
> -
> - ifeq ($(HAVE_BUILDDEFS), yes)
> ---
> -2.10.2
> -
> diff --git a/meta/recipes-support/attr/acl/acl-fix-the-order-of-expected-output-of-getfacl.patch b/meta/recipes-support/attr/acl/acl-fix-the-order-of-expected-output-of-getfacl.patch
> deleted file mode 100644
> index cf765fdbb89..00000000000
> --- a/meta/recipes-support/attr/acl/acl-fix-the-order-of-expected-output-of-getfacl.patch
> +++ /dev/null
> @@ -1,198 +0,0 @@
> -acl: fix the order of expected output of getfacl
> -
> -The result of getfacl is sorted by user id.
> -In Centos or RHEL, bin user id is 1 and daemon user id is 2.
> -But in our image, bin user id is 2 and daemon user id is 1.
> -The patch fixes this issue to make ptest pass.
> -
> -Upstream-Status: Inappropriate [embedded specific]
> -
> -Signed-off-by: Chong Lu <Chong.Lu@windriver.com>
> ----
> - test/misc.test |   38 +++++++++++++++++++-------------------
> - 1 file changed, 19 insertions(+), 19 deletions(-)
> -
> -diff --git a/test/misc.test b/test/misc.test
> -index 6e98053..53ae5b0 100644
> ---- a/test/misc.test
> -+++ b/test/misc.test
> -@@ -79,8 +79,8 @@ Multiple users
> -
> -       $ getfacl --omit-header f
> -       > user::rw-
> --      > user:bin:rw-
> -       > user:daemon:r--
> -+      > user:bin:rw-
> -       > group::r--
> -       > mask::rw-
> -       > other::r--
> -@@ -94,8 +94,8 @@ Multiple groups
> -
> -       $ getfacl --omit-header f
> -       > user::rw-
> --      > user:bin:rw-
> -       > user:daemon:r--
> -+      > user:bin:rw-
> -       > group::r--
> -       > group:daemon:r--
> -       > group:users:rw-
> -@@ -111,8 +111,8 @@ Remove one group
> -
> -       $ getfacl --omit-header f
> -       > user::rw-
> --      > user:bin:rw-
> -       > user:daemon:r--
> -+      > user:bin:rw-
> -       > group::r--
> -       > group:daemon:r--
> -       > mask::rw-
> -@@ -146,8 +146,8 @@ Default ACL
> -
> -       $ getfacl --omit-header d
> -       > user::rwx
> --      > user:bin:rwx
> -       > user:daemon:rw-
> -+      > user:bin:rwx
> -       > group::r-x
> -       > mask::rwx
> -       > other::---
> -@@ -236,16 +236,16 @@ Add some users and groups
> -
> -       $ getfacl --omit-header d/d
> -       > user::rwx
> --      > user:bin:rwx  #effective:r-x
> -       > user:daemon:r-x
> -+      > user:bin:rwx  #effective:r-x
> -       > group::r-x
> -       > group:daemon:rwx      #effective:r-x
> -       > group:users:r-x
> -       > mask::r-x
> -       > other::---
> -       > default:user::rwx
> --      > default:user:bin:rwx  #effective:r-x
> -       > default:user:daemon:r-x
> -+      > default:user:bin:rwx  #effective:r-x
> -       > default:group::r-x
> -       > default:mask::r-x
> -       > default:other::---
> -@@ -262,16 +262,16 @@ Symlink in directory with default ACL?
> -
> -       $ getfacl --omit-header d/l
> -       > user::rwx
> --      > user:bin:rwx  #effective:r-x
> -       > user:daemon:r-x
> -+      > user:bin:rwx  #effective:r-x
> -       > group::r-x
> -       > group:daemon:rwx      #effective:r-x
> -       > group:users:r-x
> -       > mask::r-x
> -       > other::---
> -       > default:user::rwx
> --      > default:user:bin:rwx  #effective:r-x
> -       > default:user:daemon:r-x
> -+      > default:user:bin:rwx  #effective:r-x
> -       > default:group::r-x
> -       > default:mask::r-x
> -       > default:other::---
> -@@ -287,16 +287,16 @@ Does mask manipulation work?
> -
> -       $ getfacl --omit-header d/d
> -       > user::rwx
> --      > user:bin:r-x
> -       > user:daemon:r-x
> -+      > user:bin:r-x
> -       > group::r-x
> -       > group:daemon:r-x
> -       > group:users:r-x
> -       > mask::r-x
> -       > other::---
> -       > default:user::rwx
> --      > default:user:bin:rwx  #effective:r-x
> -       > default:user:daemon:r-x
> -+      > default:user:bin:rwx  #effective:r-x
> -       > default:group::r-x
> -       > default:mask::r-x
> -       > default:other::---
> -@@ -308,16 +308,16 @@ Does mask manipulation work?
> -
> -       $ getfacl --omit-header d/d
> -       > user::rwx
> --      > user:bin:r-x
> -       > user:daemon:r-x
> -+      > user:bin:r-x
> -       > group::r-x
> -       > group:daemon:r-x
> -       > group:users:r-x
> -       > mask::r-x
> -       > other::---
> -       > default:user::rwx
> --      > default:user:bin:rwx
> -       > default:user:daemon:r-x
> -+      > default:user:bin:rwx
> -       > default:group::r-x
> -       > default:mask::rwx
> -       > default:other::---
> -@@ -333,8 +333,8 @@ Remove the default ACL
> -
> -       $ getfacl --omit-header d
> -       > user::rwx
> --      > user:bin:rwx
> -       > user:daemon:rw-
> -+      > user:bin:rwx
> -       > group::r-x
> -       > mask::rwx
> -       > other::---
> -@@ -373,14 +373,14 @@ Now, chmod should change the group_obj entry
> -
> -       $ getfacl --omit-header d
> -       > user::rwx
> --      > user:bin:r-x
> -       > user:daemon:rwx
> -+      > user:bin:r-x
> -       > group::rwx
> -       > mask::rwx
> -       > other::r-x
> -       > default:user::rwx
> --      > default:user:bin:r-x
> -       > default:user:daemon:rwx
> -+      > default:user:bin:r-x
> -       > default:group::rwx
> -       > default:mask::rwx
> -       > default:other::r-x
> -@@ -392,14 +392,14 @@ Now, chmod should change the group_obj entry
> -
> -       $ getfacl --omit-header d
> -       > user::rwx
> --      > user:bin:r-x
> -       > user:daemon:rwx       #effective:r-x
> -+      > user:bin:r-x
> -       > group::rwx    #effective:r-x
> -       > mask::r-x
> -       > other::---
> -       > default:user::rwx
> --      > default:user:bin:r-x
> -       > default:user:daemon:rwx
> -+      > default:user:bin:r-x
> -       > default:group::rwx
> -       > default:mask::rwx
> -       > default:other::r-x
> -@@ -411,14 +411,14 @@ Now, chmod should change the group_obj entry
> -
> -       $ getfacl --omit-header d
> -       > user::rwx
> --      > user:bin:r-x
> -       > user:daemon:rwx       #effective:r-x
> -+      > user:bin:r-x
> -       > group::rwx    #effective:r-x
> -       > mask::r-x
> -       > other::---
> -       > default:user::rwx
> --      > default:user:bin:r-x
> -       > default:user:daemon:rwx
> -+      > default:user:bin:r-x
> -       > default:group::rwx
> -       > default:mask::rwx
> -       > default:other::r-x
> ---
> -1.7.9.5
> -
> diff --git a/meta/recipes-support/attr/acl/configure.ac b/meta/recipes-support/attr/acl/configure.ac
> deleted file mode 100644
> index 7af2e8d886e..00000000000
> --- a/meta/recipes-support/attr/acl/configure.ac
> +++ /dev/null
> @@ -1,49 +0,0 @@
> -# Copyright (C) 2009  Andreas Gruenbacher <agruen@suse.de>
> -#
> -# 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 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.
> -#
> -# You should have received a copy of the GNU General Public License
> -# along with this program.  If not, see <http://www.gnu.org/licenses/>.
> -#
> -AC_INIT(include/acl.h)
> -AC_CONFIG_AUX_DIR([.])
> -AC_CONFIG_MACRO_DIR([m4])
> -AC_CONFIG_HEADER(include/config.h)
> -AC_PREFIX_DEFAULT(/usr)
> -
> -AC_PROG_LIBTOOL
> -
> -AC_ARG_ENABLE(shared,
> -[ --enable-shared=[yes/no] Enable use of shared libraries [default=yes]],,
> -       enable_shared=yes)
> -AC_SUBST(enable_shared)
> -
> -AC_ARG_ENABLE(gettext,
> -[ --enable-gettext=[yes/no] Enable alternate language support [default=yes]],,
> -       enable_gettext=yes)
> -AC_SUBST(enable_gettext)
> -
> -AC_ARG_ENABLE(lib64,
> -[ --enable-lib64=[yes/no] Enable lib64 support [default=no]],,
> -       enable_lib64=no)
> -AC_SUBST(enable_lib64)
> -
> -AC_PACKAGE_GLOBALS(acl)
> -AC_PACKAGE_UTILITIES(acl)
> -AC_PACKAGE_NEED_ATTR_XATTR_H
> -AC_PACKAGE_NEED_ATTR_ERROR_H
> -AC_MULTILIB($enable_lib64)
> -AC_PACKAGE_NEED_GETXATTR_LIBATTR
> -AC_MANUAL_FORMAT
> -
> -AC_FUNC_GCC_VISIBILITY
> -
> -AC_OUTPUT(include/builddefs)
> diff --git a/meta/recipes-support/attr/acl/run-ptest b/meta/recipes-support/attr/acl/run-ptest
> index a56946d8e6f..43128233654 100644
> --- a/meta/recipes-support/attr/acl/run-ptest
> +++ b/meta/recipes-support/attr/acl/run-ptest
> @@ -4,61 +4,7 @@
>
>  #umask 077
>
> -EXT3_IMAGE=ext3.img
> -EXT3_MOUNT_POINT=/mnt/ext3
> +mkdir -p /tmp/acl-ptest/test
> +cp test/test.* /tmp/acl-ptest/test
>
> -trap 'rm -f ${EXT3_IMAGE}' EXIT
> -
> -dd if=/dev/zero of=${EXT3_IMAGE} bs=1M count=1
> -if [ "$?" -eq 0 ]; then
> -       echo "PASS: dump ext3.img"
> -else
> -       echo "FAIL: dump ext3.img"
> -       exit 1
> -fi
> -
> -mkfs.ext3 -F ${EXT3_IMAGE}
> -if [ "$?" -eq 0 ]; then
> -       echo "PASS: mkfs.ext3 -F ext3.img"
> -else
> -       echo "FAIL: mkfs.ext3 -F ext3.img"
> -       exit 1
> -fi
> -
> -if [ -d $EXT3_MOUNT_POINT ]; then
> -       echo "mount point exist"
> -else
> -       mkdir -p $EXT3_MOUNT_POINT
> -fi
> -
> -
> -mount -o loop,rw,acl  ${EXT3_IMAGE} $EXT3_MOUNT_POINT
> -if [ "$?" -eq 0 ]; then
> -       echo "PASS: mount ext3.img"
> -else
> -       echo "FAIL: mount ext3.img"
> -       exit 1
> -fi
> -
> -cp -rf ./test/ $EXT3_MOUNT_POINT
> -
> -cd $EXT3_MOUNT_POINT/test/
> -
> -if     sed -e 's!^bin:x:2:$!bin:x:2:daemon!' < /etc/group > gtmp
> -then   if      cp /etc/group group.orig;
> -       then    cp gtmp /etc/group
> -               make  -k tests root-tests | sed \
> -                       -e 's|^\[.*\] \(.*\) -- ok$|PASS: \1|' \
> -                       -e 's|^\[.*\] \(.*\) -- failed|FAIL: \1|'
> -               cp group.orig /etc/group
> -       else    echo "FAIL: couldn't save original group file."
> -               exit 1
> -       fi
> -else   echo "FAIL: couldn't create modified group file."
> -       exit 1
> -fi
> -
> -cd -
> -umount $EXT3_MOUNT_POINT
> -rm -rf $EXT3_MOUNT_POINT
> -rm $EXT3_IMAGE
> +make test-suite.log
> diff --git a/meta/recipes-support/attr/acl/test-fix-directory-permissions.patch b/meta/recipes-support/attr/acl/test-fix-directory-permissions.patch
> deleted file mode 100644
> index e64990ad5b9..00000000000
> --- a/meta/recipes-support/attr/acl/test-fix-directory-permissions.patch
> +++ /dev/null
> @@ -1,37 +0,0 @@
> -From 311589fedf196168382d8f0db303ab328bcf9d83 Mon Sep 17 00:00:00 2001
> -From: Peter Seebach <peter.seebach@windriver.com>
> -Date: Wed, 11 May 2016 15:16:06 -0500
> -Subject: [PATCH] acl.inc, run-ptest: improve ptest functionality on limited
> -
> -commit c45bae84817a70fef6c2b661a07a492a0d23ae85
> -
> -    Fix permissions on temporary directory
> -
> -    The temporary directory's permissions have to allow other users to
> -    view the directory. A default umask of 022 is common, but not mandatory,
> -    and secure systems may have more restrictive defaults.
> -
> -    Signed-off-by: Peter Seebach <peter.seebach@windriver.com>
> -
> -Upstream-Status: Backport [ http://git.savannah.gnu.org/cgit/acl.git/commit/?id=c6772a958800de064482634f77c20a0faafc5af6 ]
> -
> -Signed-off-by: Dengke Du <dengke.du@windriver.com>
> ----
> - test/root/permissions.test | 1 +
> - 1 file changed, 1 insertion(+)
> -
> -diff --git a/test/root/permissions.test b/test/root/permissions.test
> -index 42615f5..098b52a 100644
> ---- a/test/root/permissions.test
> -+++ b/test/root/permissions.test
> -@@ -16,6 +16,7 @@ Cry immediately if we are not running as root.
> - First, set up a temporary directory and create a regular file with
> - defined permissions.
> -
> -+      $ umask 022
> -       $ mkdir d
> -       $ cd d
> -       $ umask 027
> ---
> -2.8.1
> -
> diff --git a/meta/recipes-support/attr/acl/test-fix-insufficient-quoting-of.patch b/meta/recipes-support/attr/acl/test-fix-insufficient-quoting-of.patch
> deleted file mode 100644
> index f392465b58e..00000000000
> --- a/meta/recipes-support/attr/acl/test-fix-insufficient-quoting-of.patch
> +++ /dev/null
> @@ -1,100 +0,0 @@
> -From e98ce8acf84d12ea67a3ac76bf63c6d87d9af86d Mon Sep 17 00:00:00 2001
> -From: Kamil Dudka <kdudka@redhat.com>
> -Date: Mon, 20 May 2013 16:38:06 +0200
> -Subject: [PATCH] test: fix insufficient quoting of '\'
> -
> -This is a follow-up to 7f2c91b8369242a8dbc2b304a5b71b2a85f5b855, which
> -caused sbits-restore.test to fail in the following way in case SELinux
> -was disabled:
> -
> -*** sbits-restore.test ***
> -[3] $ umask 022 -- ok
> -[4] $ mkdir d -- ok
> -[5] $ touch d/g -- ok
> -[6] $ touch d/u -- ok
> -[7] $ chmod u+s d/u -- ok
> -[8] $ chmod g+s d/g -- ok
> -[9] $ chmod +t d -- ok
> -[10] $ getfacl -R d > d.acl -- ok
> -[11] $ rm -R d -- ok
> -[12] $ mkdir d -- ok
> -[13] $ touch d/g -- ok
> -[14] $ touch d/u -- ok
> -[15] $ setfacl --restore d.acl -- ok
> -[16] $ ls -dl d | awk '{print $1}' | sed 's/.$//g' -- failed
> -drwxr-xr-                             != drwxr-xr-t
> -[18] $ ls -dl d/u | awk '{print $1}' | sed 's/.$//g' -- failed
> --rwSr--r-                             != -rwSr--r--
> -[20] $ ls -dl d/g | awk '{print $1}' | sed 's/.$//g' -- failed
> --rw-r-Sr-                             != -rw-r-Sr--
> -[22] $ rm -Rf d -- ok
> -17 commands (14 passed, 3 failed)
> -
> -Upstream-Status: Backport
> -http://git.savannah.gnu.org/cgit/acl.git/commit/?id=e98ce8acf84d12ea67a3ac76bf63c6d87d9af86d
> -
> -Signed-off-by: Kamil Dudka <kdudka@redhat.com>
> -Signed-off-by: He Zhe <zhe.he@windriver.com>
> -
> -Index: acl-2.2.52/test/cp.test
> -===================================================================
> ---- acl-2.2.52.orig/test/cp.test
> -+++ acl-2.2.52/test/cp.test
> -@@ -9,7 +9,7 @@ The cp utility should only copy ACLs if
> -       > -rw-rw-r--+
> -
> -       $ cp f g
> --      $ ls -l g | awk -- '{ print $1 }' | sed 's/\.$//g'
> -+      $ ls -l g | awk -- '{ print $1 }' | sed 's/\\.$//g'
> -       > -rw-r--r--
> -
> -       $ rm g
> -Index: acl-2.2.52/test/misc.test
> -===================================================================
> ---- acl-2.2.52.orig/test/misc.test
> -+++ acl-2.2.52/test/misc.test
> -@@ -254,7 +254,7 @@ Add some users and groups
> - Symlink in directory with default ACL?
> -
> -       $ ln -s d d/l
> --      $ ls -dl d/l | awk '{print $1}' | sed 's/\.$//g'
> -+      $ ls -dl d/l | awk '{print $1}' | sed 's/\\.$//g'
> -       > lrwxrwxrwx
> -
> -       $ ls -dl -L d/l | awk '{print $1}'
> -@@ -343,7 +343,7 @@ Remove the default ACL
> - Reset to base entries
> -
> -       $ setfacl -b d
> --      $ ls -dl d | awk '{print $1}' | sed 's/\.$//g'
> -+      $ ls -dl d | awk '{print $1}' | sed 's/\\.$//g'
> -       > drwxr-x---
> -
> -       $ getfacl --omit-header d
> -@@ -355,7 +355,7 @@ Reset to base entries
> - Now, chmod should change the group_obj entry
> -
> -       $ chmod 775 d
> --      $ ls -dl d | awk '{print $1}' | sed 's/\.$//g'
> -+      $ ls -dl d | awk '{print $1}' | sed 's/\\.$//g'
> -       > drwxrwxr-x
> -
> -       $ getfacl --omit-header d
> -Index: acl-2.2.52/test/sbits-restore.test
> -===================================================================
> ---- acl-2.2.52.orig/test/sbits-restore.test
> -+++ acl-2.2.52/test/sbits-restore.test
> -@@ -13,10 +13,10 @@ Ensure setting of SUID/SGID/sticky via -
> -       $ touch d/g
> -       $ touch d/u
> -       $ setfacl --restore d.acl
> --      $ ls -dl d | awk '{print $1}' | sed 's/\.$//g'
> -+      $ ls -dl d | awk '{print $1}' | sed 's/\\.$//g'
> -       > drwxr-xr-t
> --      $ ls -dl d/u | awk '{print $1}' | sed 's/\.$//g'
> -+      $ ls -dl d/u | awk '{print $1}' | sed 's/\\.$//g'
> -       > -rwSr--r--
> --      $ ls -dl d/g | awk '{print $1}' | sed 's/\.$//g'
> -+      $ ls -dl d/g | awk '{print $1}' | sed 's/\\.$//g'
> -       > -rw-r-Sr--
> -       $ rm -Rf d
> diff --git a/meta/recipes-support/attr/acl/test-fixups-on-SELinux-machines-for-root-testcases.patch b/meta/recipes-support/attr/acl/test-fixups-on-SELinux-machines-for-root-testcases.patch
> deleted file mode 100644
> index 8cc11a63e12..00000000000
> --- a/meta/recipes-support/attr/acl/test-fixups-on-SELinux-machines-for-root-testcases.patch
> +++ /dev/null
> @@ -1,84 +0,0 @@
> -From d2f49ee6fe4850b8dda5b08676b36201d3c43710 Mon Sep 17 00:00:00 2001
> -From: He Zhe <zhe.he@windriver.com>
> -Date: Wed, 2 Mar 2016 15:46:57 +0800
> -Subject: [PATCH] test: fixups on SELinux machines for root testcases
> -
> -ls adds a '.' at the end of the permission field list on SELinux
> -machines, filter this out so root tests work on SELinux machines.
> -
> -Upstream-Status: Accepted
> -http://git.savannah.gnu.org/cgit/acl.git/commit/?id=26a87d36f80d5e98bccb5878834d9e69dadfe3e9
> -
> -Signed-off-by: He Zhe <zhe.he@windriver.com>
> ----
> - test/root/permissions.test | 8 ++++----
> - test/root/restore.test     | 2 +-
> - test/root/setfacl.test     | 2 +-
> - 3 files changed, 6 insertions(+), 6 deletions(-)
> -
> -diff --git a/test/root/permissions.test b/test/root/permissions.test
> -index 9b9e3de..665339a 100644
> ---- a/test/root/permissions.test
> -+++ b/test/root/permissions.test
> -@@ -19,7 +19,7 @@ defined permissions.
> -       $ cd d
> -       $ umask 027
> -       $ touch f
> --      $ ls -l f | awk -- '{ print $1, $3, $4 }'
> -+      $ ls -l f | awk -- '{ print $1, $3, $4 }' | sed 's/\\.//g'
> -       > -rw-r----- root root
> -
> -
> -@@ -39,7 +39,7 @@ Now, change the ownership of the file to bin:bin and verify that this
> - gives user bin write access.
> -
> -       $ chown bin:bin f
> --      $ ls -l f | awk -- '{ print $1, $3, $4 }'
> -+      $ ls -l f | awk -- '{ print $1, $3, $4 }' | sed 's/\\.//g'
> -       > -rw-r----- bin bin
> -       $ su bin
> -       $ echo bin >> f
> -@@ -256,12 +256,12 @@ directories if the file has an ACL and only CAP_FOWNER would grant them.
> -       $ mkdir -m 600 x
> -       $ chown daemon:daemon x
> -       $ echo j > x/j
> --      $ ls -l x/j | awk -- '{ print $1, $3, $4 }'
> -+      $ ls -l x/j | awk -- '{ print $1, $3, $4 }' | sed 's/\\.//g'
> -       > -rw-r----- root root
> -
> -       $ setfacl -m u:daemon:r x
> -
> --      $ ls -l x/j | awk -- '{ print $1, $3, $4 }'
> -+      $ ls -l x/j | awk -- '{ print $1, $3, $4 }' | sed 's/\\.//g'
> -       > -rw-r----- root root
> -       (With the bug this gives: `ls: x/j: Permission denied'.)
> -
> -diff --git a/test/root/restore.test b/test/root/restore.test
> -index 63a9d01..c85097c 100644
> ---- a/test/root/restore.test
> -+++ b/test/root/restore.test
> -@@ -21,7 +21,7 @@ Cry immediately if we are not running as root.
> -       $ chown bin passwd
> -       $ chmod u+s passwd
> -       $ setfacl --restore passwd.acl
> --      $ ls -dl passwd | awk '{print $1 " " $3 " " $4}'
> -+      $ ls -dl passwd | awk '{print $1 " " $3 " " $4}' | sed 's/\\.//g'
> -       > -rwsr-xr-x root root
> -
> -       $ rm passwd passwd.acl
> -diff --git a/test/root/setfacl.test b/test/root/setfacl.test
> -index a46a9f4..7efbad7 100644
> ---- a/test/root/setfacl.test
> -+++ b/test/root/setfacl.test
> -@@ -12,7 +12,7 @@ Cry immediately if we are not running as root.
> -       $ sg bin
> -       $ umask 027
> -       $ touch g
> --      $ ls -dl g | awk '{print $1}'
> -+      $ ls -dl g | awk '{print $1}' | sed 's/\\.//g'
> -       > -rw-r-----
> -
> -       $ setfacl -m m:- g
> ---
> -1.9.1
> -
> diff --git a/meta/recipes-support/attr/acl_2.2.52.bb b/meta/recipes-support/attr/acl_2.2.52.bb
> deleted file mode 100644
> index 6bc77d868d5..00000000000
> --- a/meta/recipes-support/attr/acl_2.2.52.bb
> +++ /dev/null
> @@ -1,52 +0,0 @@
> -SUMMARY = "Utilities for managing POSIX Access Control Lists"
> -HOMEPAGE = "http://savannah.nongnu.org/projects/acl/"
> -SECTION = "libs"
> -
> -LICENSE = "LGPLv2.1+ & GPLv2+"
> -LICENSE_${PN} = "GPLv2+"
> -LICENSE_lib${BPN} = "LGPLv2.1+"
> -LIC_FILES_CHKSUM = "file://doc/COPYING;md5=c781d70ed2b4d48995b790403217a249 \
> -                    file://doc/COPYING.LGPL;md5=9e9a206917f8af112da634ce3ab41764"
> -
> -DEPENDS = "attr"
> -
> -SRC_URI = "${SAVANNAH_GNU_MIRROR}/acl/${BP}.src.tar.gz \
> -           file://configure.ac;subdir=${BP} \
> -           file://run-ptest \
> -           file://acl-fix-the-order-of-expected-output-of-getfacl.patch \
> -           file://test-fix-insufficient-quoting-of.patch \
> -           file://test-fixups-on-SELinux-machines-for-root-testcases.patch \
> -           file://test-fix-directory-permissions.patch \
> -           file://Makefile-libacl-should-depend-on-include.patch \
> -"
> -
> -SRC_URI[md5sum] = "a61415312426e9c2212bd7dc7929abda"
> -SRC_URI[sha256sum] = "179074bb0580c06c4b4137be4c5a92a701583277967acdb5546043c7874e0d23"
> -
> -require ea-acl.inc
> -
> -# avoid RPATH hardcode to staging dir
> -do_configure_append() {
> -       sed -i ${S}/config.status -e s,^\\\(hardcode_into_libs=\\\).*$,\\1\'no\',
> -       ${S}/config.status
> -}
> -
> -# libdir should point to .la
> -do_install_append() {
> -       sed -i ${D}${libdir}/libacl.la -e \
> -           s,^libdir=\'${base_libdir}\'$,libdir=\'${libdir}\',
> -}
> -
> -inherit ptest
> -
> -PTEST_BUILD_HOST_FILES = "builddefs"
> -PTEST_BUILD_HOST_PATTERN = "^RPM"
> -do_install_ptest() {
> -       tar -c --exclude=nfs test/ | ( cd ${D}${PTEST_PATH} && tar -xf - )
> -       install -d ${D}${PTEST_PATH}/include
> -       install -m 644 ${S}/include/builddefs ${S}/include/buildmacros ${S}/include/buildrules ${D}${PTEST_PATH}/include/
> -}
> -
> -RDEPENDS_${PN}-ptest = "acl bash coreutils perl perl-module-filehandle perl-module-getopt-std perl-module-posix shadow"
> -
> -BBCLASSEXTEND = "native nativesdk"
> diff --git a/meta/recipes-support/attr/acl_2.2.53.bb b/meta/recipes-support/attr/acl_2.2.53.bb
> new file mode 100644
> index 00000000000..6db4d940aae
> --- /dev/null
> +++ b/meta/recipes-support/attr/acl_2.2.53.bb
> @@ -0,0 +1,64 @@
> +SUMMARY = "Utilities for managing POSIX Access Control Lists"
> +HOMEPAGE = "http://savannah.nongnu.org/projects/acl/"
> +SECTION = "libs"
> +
> +LICENSE = "LGPLv2.1+ & GPLv2+"
> +LICENSE_${PN} = "GPLv2+"
> +LICENSE_lib${BPN} = "LGPLv2.1+"
> +LIC_FILES_CHKSUM = "file://doc/COPYING;md5=c781d70ed2b4d48995b790403217a249 \
> +                    file://doc/COPYING.LGPL;md5=9e9a206917f8af112da634ce3ab41764"
> +
> +DEPENDS = "attr"
> +
> +SRC_URI = "${SAVANNAH_GNU_MIRROR}/acl/${BP}.tar.gz \
> +           file://run-ptest \
> +           file://0001-tests-do-not-hardcode-the-build-path-into-a-helper-l.patch \
> +           file://0001-test-patch-out-failing-bits.patch \
> +           "
> +
> +SRC_URI[md5sum] = "007aabf1dbb550bcddde52a244cd1070"
> +SRC_URI[sha256sum] = "06be9865c6f418d851ff4494e12406568353b891ffe1f596b34693c387af26c7"
> +
> +inherit autotools gettext ptest
> +
> +PACKAGES =+ "lib${BPN}"
> +
> +FILES_lib${BPN} = "${libdir}/lib*${SOLIBS}"
> +
> +PTEST_BUILD_HOST_FILES = "builddefs"
> +PTEST_BUILD_HOST_PATTERN = "^RPM"
> +
> +do_compile_ptest() {
> +        oe_runmake libtestlookup.la
> +}
> +
> +do_install_ptest() {
> +       cp -rf ${S}/test/ ${D}${PTEST_PATH}
> +       cp -rf ${S}/build-aux/ ${D}${PTEST_PATH}
> +        mkdir -p ${D}${PTEST_PATH}/.libs
> +       cp -rf ${B}/.libs/libtestlookup* ${D}${PTEST_PATH}/.libs
> +        cp ${B}/Makefile ${D}${PTEST_PATH}
> +        sed -i "s|^srcdir =.*|srcdir = \.|g" ${D}${PTEST_PATH}/Makefile
> +        sed -i "s|^abs_srcdir =.*|abs_srcdir = \.|g" ${D}${PTEST_PATH}/Makefile
> +        sed -i "s|^abs_top_srcdir =.*|abs_top_srcdir = \.\.|g" ${D}${PTEST_PATH}/Makefile
> +        sed -i "s|^Makefile:.*|Makefile:|g" ${D}${PTEST_PATH}/Makefile
> +}
> +
> +RDEPENDS_${PN}-ptest = "acl \
> +                        bash \
> +                        coreutils \
> +                        perl \
> +                        perl-module-filehandle \
> +                        perl-module-getopt-std \
> +                        perl-module-posix \
> +                        shadow \
> +                        make \
> +                        gawk \
> +                        e2fsprogs-mke2fs \
> +                        perl-module-cwd \
> +                        perl-module-file-basename \
> +                        perl-module-file-path \
> +                        perl-module-file-spec \
> +                       "
> +
> +BBCLASSEXTEND = "native nativesdk"
> diff --git a/meta/recipes-support/attr/attr.inc b/meta/recipes-support/attr/attr.inc
> index 3503d66b9e1..54b1a81d904 100644
> --- a/meta/recipes-support/attr/attr.inc
> +++ b/meta/recipes-support/attr/attr.inc
> @@ -8,22 +8,18 @@ LICENSE = "LGPLv2.1+ & GPLv2+"
>  LICENSE_${PN} = "GPLv2+"
>  LICENSE_lib${BPN} = "LGPLv2.1+"
>  LIC_FILES_CHKSUM = "file://doc/COPYING;md5=2d0aa14b3fce4694e4f615e30186335f \
> -                    file://attr/attr.c;endline=17;md5=be0403261f0847e5f43ed5b08d19593c \
> +                    file://tools/attr.c;endline=17;md5=be0403261f0847e5f43ed5b08d19593c \
>                      file://libattr/libattr.c;endline=17;md5=7970f77049f8fa1199fff62a7ab724fb"
>
> -SRC_URI = "${SAVANNAH_GNU_MIRROR}/attr/${BP}.src.tar.gz \
> +SRC_URI = "${SAVANNAH_GNU_MIRROR}/attr/${BP}.tar.gz \
>             file://run-ptest \
>  "
>
> -require ea-acl.inc
> +inherit ptest update-alternatives autotools gettext
>
> -# libdir should point to .la
> -do_install_append() {
> -       sed -i ${D}${libdir}/libattr.la -e \
> -           s,^libdir=\'${base_libdir}\'$,libdir=\'${libdir}\',
> -}
> +PACKAGES =+ "lib${BPN}"
>
> -inherit ptest update-alternatives
> +FILES_lib${BPN} = "${libdir}/lib*${SOLIBS}"
>
>  ALTERNATIVE_PRIORITY = "100"
>  ALTERNATIVE_${PN} = "setfattr"
> @@ -33,14 +29,27 @@ PTEST_BUILD_HOST_FILES = "builddefs"
>  PTEST_BUILD_HOST_PATTERN = "^RPM"
>
>  do_install_ptest() {
> -       tar -c --exclude=ext test/ | ( cd ${D}${PTEST_PATH} && tar -xf - )
> -       mkdir ${D}${PTEST_PATH}/include
> -       for i in builddefs buildmacros buildrules; \
> -         do cp ${S}/include/$i ${D}${PTEST_PATH}/include/; \
> -       done
> -       sed -e 's|; @echo|; echo|' -i ${D}${PTEST_PATH}/test/Makefile
> +        cp ${B}/Makefile ${D}${PTEST_PATH}
> +        sed -i "s|^srcdir =.*|srcdir = \.|g" ${D}${PTEST_PATH}/Makefile
> +        sed -i "s|^abs_srcdir =.*|abs_srcdir = \.|g" ${D}${PTEST_PATH}/Makefile
> +        sed -i "s|^abs_top_srcdir =.*|abs_top_srcdir = \.\.|g" ${D}${PTEST_PATH}/Makefile
> +        sed -i "s|^Makefile:.*|Makefile:|g" ${D}${PTEST_PATH}/Makefile
> +       cp -rf ${S}/build-aux/ ${D}${PTEST_PATH}
> +       cp -rf ${S}/test/ ${D}${PTEST_PATH}
>  }
>
> -RDEPENDS_${PN}-ptest = "attr coreutils perl-module-filehandle perl-module-getopt-std perl-module-posix make perl"
> +RDEPENDS_${PN}-ptest = "attr \
> +                        coreutils \
> +                        perl-module-filehandle \
> +                        perl-module-getopt-std \
> +                        perl-module-posix \
> +                        make \
> +                        perl \
> +                        gawk \
> +                        perl-module-cwd \
> +                        perl-module-file-basename \
> +                        perl-module-file-path \
> +                        perl-module-file-spec \
> +                        "
>
>  BBCLASSEXTEND = "native nativesdk"
> diff --git a/meta/recipes-support/attr/attr/0001-Use-stdint-types-consistently.patch b/meta/recipes-support/attr/attr/0001-Use-stdint-types-consistently.patch
> deleted file mode 100644
> index dcd6507bcc5..00000000000
> --- a/meta/recipes-support/attr/attr/0001-Use-stdint-types-consistently.patch
> +++ /dev/null
> @@ -1,69 +0,0 @@
> -From 37a27b6fd09ecb37097b85e5db74e4f77b80fe0a Mon Sep 17 00:00:00 2001
> -From: Felix Janda <felix.janda@posteo.de>
> -Date: Tue, 12 Jan 2016 22:20:33 +0100
> -Subject: [PATCH] Use stdint types consistently
> -
> ----
> -Upstream-Status: Backport
> -Signed-off-by: Khem Raj <raj.khem@gmail.com>
> -
> - include/attributes.h | 6 ++++--
> - man/man3/attr_list.3 | 8 ++++----
> - 2 files changed, 8 insertions(+), 6 deletions(-)
> -
> -Index: attr-2.4.47/include/attributes.h
> -===================================================================
> ---- attr-2.4.47.orig/include/attributes.h
> -+++ attr-2.4.47/include/attributes.h
> -@@ -22,6 +22,7 @@
> - extern "C" {
> - #endif
> -
> -+#include <stdint.h>
> - /*
> -  *    An almost-IRIX-compatible extended attributes API
> -  *    (the IRIX attribute "list" operation is missing, added ATTR_SECURE).
> -@@ -69,7 +70,7 @@ typedef struct attrlist {
> -  * al_offset[i] entry points to.
> -  */
> - typedef struct attrlist_ent { /* data from attr_list() */
> --      u_int32_t       a_valuelen;     /* number bytes in value of attr */
> -+      uint32_t        a_valuelen;     /* number bytes in value of attr */
> -       char            a_name[1];      /* attr name (NULL terminated) */
> - } attrlist_ent_t;
> -
> -@@ -90,7 +91,7 @@ typedef struct attrlist_ent {        /* data fr
> -  * operation on a cursor is to bzero() it.
> -  */
> - typedef struct attrlist_cursor {
> --      u_int32_t       opaque[4];      /* an opaque cookie */
> -+      uint32_t        opaque[4];      /* an opaque cookie */
> - } attrlist_cursor_t;
> -
> - /*
> -Index: attr-2.4.47/man/man3/attr_list.3
> -===================================================================
> ---- attr-2.4.47.orig/man/man3/attr_list.3
> -+++ attr-2.4.47/man/man3/attr_list.3
> -@@ -72,9 +72,9 @@ The contents of an \f4attrlist_t\fP stru
> - .nf
> - .ft 4
> - .ta 9n 22n
> --__int32_t al_count; /\(** number of entries in attrlist \(**/
> --__int32_t al_more; /\(** T/F: more attrs (do syscall again) \(**/
> --__int32_t al_offset[1]; /\(** byte offsets of attrs [var-sized] \(**/
> -+int32_t al_count; /\(** number of entries in attrlist \(**/
> -+int32_t al_more; /\(** T/F: more attrs (do syscall again) \(**/
> -+int32_t al_offset[1]; /\(** byte offsets of attrs [var-sized] \(**/
> - .ft 1
> - .fi
> - .RE
> -@@ -113,7 +113,7 @@ include the following members:
> - .nf
> - .ft 4
> - .ta 9n 22n
> --u_int32_t a_valuelen; /\(** number bytes in value of attr \(**/
> -+uint32_t a_valuelen; /\(** number bytes in value of attr \(**/
> - char a_name[]; /\(** attr name (NULL terminated) \(**/
> - .ft 1
> - .fi
> diff --git a/meta/recipes-support/attr/attr/attr-Missing-configure.ac.patch b/meta/recipes-support/attr/attr/attr-Missing-configure.ac.patch
> deleted file mode 100644
> index 20fcc3cee7b..00000000000
> --- a/meta/recipes-support/attr/attr/attr-Missing-configure.ac.patch
> +++ /dev/null
> @@ -1,63 +0,0 @@
> -Subject: [PATCH] attr: Missing configure.ac
> -
> -Upstream-Status: Backport [Upstream released tarball missing this file]
> -Signed-off-by: Nathan Rossi <nathan.rossi@xilinx.com>
> ----
> - configure.ac |   48 ++++++++++++++++++++++++++++++++++++++++++++++++
> - 1 file changed, 48 insertions(+)
> - create mode 100644 configure.ac
> -
> -diff --git a/configure.ac b/configure.ac
> -new file mode 100644
> -index 0000000..b966d0e
> ---- /dev/null
> -+++ b/configure.ac
> -@@ -0,0 +1,48 @@
> -+# Copyright (C) 2009  Andreas Gruenbacher <agruen@suse.de>
> -+#
> -+# 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 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.
> -+#
> -+# You should have received a copy of the GNU General Public License
> -+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
> -+#
> -+AC_INIT(include/attributes.h)
> -+AC_CONFIG_AUX_DIR([.])
> -+AC_CONFIG_MACRO_DIR([m4])
> -+AC_CONFIG_HEADER(include/config.h)
> -+AC_PREFIX_DEFAULT(/usr)
> -+
> -+AC_PROG_LIBTOOL
> -+
> -+AC_ARG_ENABLE(shared,
> -+[ --enable-shared=[yes/no] Enable use of shared libraries [default=yes]],,
> -+      enable_shared=yes)
> -+AC_SUBST(enable_shared)
> -+
> -+AC_ARG_ENABLE(gettext,
> -+[ --enable-gettext=[yes/no] Enable alternate language support [default=yes]],,
> -+      enable_gettext=yes)
> -+AC_SUBST(enable_gettext)
> -+
> -+AC_ARG_ENABLE(lib64,
> -+[ --enable-lib64=[yes/no] Enable lib64 support [default=no]],,
> -+      enable_lib64=no)
> -+AC_SUBST(enable_lib64)
> -+
> -+AC_PACKAGE_GLOBALS(attr)
> -+AC_PACKAGE_UTILITIES(attr)
> -+AC_MANUAL_FORMAT
> -+AC_MULTILIB($enable_lib64)
> -+
> -+AC_C_CONST
> -+AC_TYPE_MODE_T
> -+AC_FUNC_ALLOCA
> -+
> -+AC_OUTPUT(include/builddefs)
> diff --git a/meta/recipes-support/attr/attr/dont-use-decl-macros.patch b/meta/recipes-support/attr/attr/dont-use-decl-macros.patch
> deleted file mode 100644
> index 9d4b8929e89..00000000000
> --- a/meta/recipes-support/attr/attr/dont-use-decl-macros.patch
> +++ /dev/null
> @@ -1,56 +0,0 @@
> -Use extern "C" instead of __BEGIN_DECL/__END_DECL macros
> -these macros are defined in sys/cdefs.h for glibc and this header is not available on all libc
> -
> -anyway they defined like below
> -
> -#ifdef __cplusplus
> -# define __BEGIN_DECLS extern "C" {
> -# define __END_DECLS }
> -#else
> -# define __BEGIN_DECLS /* empty */
> -# define __END_DECLS /* empty */
> -#endif
> -
> -__THROW macro is also not available on musl, defined thusly
> -
> -Upstream-Status: Pending
> -
> -Signed-off-by: Khem Raj <raj.khem@gmail.com>
> -
> -Index: attr-2.4.47/include/xattr.h
> -===================================================================
> ---- attr-2.4.47.orig/include/xattr.h   2014-04-02 00:01:30.252091280 -0700
> -+++ attr-2.4.47/include/xattr.h        2014-04-02 00:12:57.985428099 -0700
> -@@ -30,8 +30,20 @@
> - #define XATTR_CREATE  0x1       /* set value, fail if attr already exists */
> - #define XATTR_REPLACE 0x2       /* set value, fail if attr does not exist */
> -
> --
> --__BEGIN_DECLS
> -+#ifndef __THROW
> -+# ifndef __GNUC_PREREQ
> -+#  define __GNUC_PREREQ(maj, min) (0)
> -+# endif
> -+# if defined __cplusplus && __GNUC_PREREQ (2,8)
> -+#  define __THROW       throw ()
> -+# else
> -+#  define __THROW
> -+# endif
> -+#endif
> -+
> -+#ifdef __cplusplus
> -+extern "C" {
> -+#endif
> -
> - extern int setxattr (const char *__path, const char *__name,
> -                     const void *__value, size_t __size, int __flags) __THROW;
> -@@ -58,6 +70,8 @@
> - extern int lremovexattr (const char *__path, const char *__name) __THROW;
> - extern int fremovexattr (int __filedes,   const char *__name) __THROW;
> -
> --__END_DECLS
> -+#ifdef __cplusplus
> -+}
> -+#endif
> -
> - #endif        /* __XATTR_H__ */
> diff --git a/meta/recipes-support/attr/attr/run-ptest b/meta/recipes-support/attr/attr/run-ptest
> new file mode 100644
> index 00000000000..f64244f2393
> --- /dev/null
> +++ b/meta/recipes-support/attr/attr/run-ptest
> @@ -0,0 +1,3 @@
> +#!/bin/sh
> +
> +make test-suite.log
> diff --git a/meta/recipes-support/attr/attr_2.4.47.bb b/meta/recipes-support/attr/attr_2.4.47.bb
> deleted file mode 100644
> index fc88bef830b..00000000000
> --- a/meta/recipes-support/attr/attr_2.4.47.bb
> +++ /dev/null
> @@ -1,15 +0,0 @@
> -require attr.inc
> -
> -# configure.ac was missing from the release tarball. This should be fixed in
> -# future releases of attr, remove this when updating the recipe.
> -SRC_URI += "file://attr-Missing-configure.ac.patch \
> -            file://dont-use-decl-macros.patch \
> -            file://Remove-the-section-2-man-pages.patch \
> -            file://Remove-the-attr.5-man-page-moved-to-man-pages.patch \
> -            file://0001-Use-stdint-types-consistently.patch \
> -           "
> -
> -SRC_URI[md5sum] = "84f58dec00b60f2dc8fd1c9709291cc7"
> -SRC_URI[sha256sum] = "25772f653ac5b2e3ceeb89df50e4688891e21f723c460636548971652af0a859"
> -
> -BBCLASSEXTEND = "native nativesdk"
> diff --git a/meta/recipes-support/attr/attr_2.4.48.bb b/meta/recipes-support/attr/attr_2.4.48.bb
> new file mode 100644
> index 00000000000..530d4e48833
> --- /dev/null
> +++ b/meta/recipes-support/attr/attr_2.4.48.bb
> @@ -0,0 +1,6 @@
> +require attr.inc
> +
> +SRC_URI[md5sum] = "bc1e5cb5c96d99b24886f1f527d3bb3d"
> +SRC_URI[sha256sum] = "5ead72b358ec709ed00bbf7a9eaef1654baad937c001c044fe8b74c57f5324e7"
> +
> +BBCLASSEXTEND = "native nativesdk"
> diff --git a/meta/recipes-support/attr/ea-acl.inc b/meta/recipes-support/attr/ea-acl.inc
> deleted file mode 100644
> index 9336ffc9389..00000000000
> --- a/meta/recipes-support/attr/ea-acl.inc
> +++ /dev/null
> @@ -1,52 +0,0 @@
> -# this build system is mostly shared by attr and acl
> -
> -SRC_URI += "file://relative-libdir.patch;striplevel=0 \
> -           "
> -# This patch should be applied after '(attr\|acl)-Missing-configure.ac.patch'
> -SRC_URI_append = " file://0001-Added-configure-option-to-enable-disable-static-libr.patch"
> -
> -inherit autotools-brokensep gettext
> -
> -# When upstream is using automake properly, this can be removed
> -CLEANBROKEN = "1"
> -
> -# the package comes with a custom config.h.in, it cannot be
> -# overwritten by autoheader
> -EXTRA_AUTORECONF += "--exclude=autoheader"
> -EXTRA_OECONF = "INSTALL_USER=root INSTALL_GROUP=root"
> -EXTRA_OECONF_append_class-native = " --enable-gettext=no"
> -EXTRA_OECONF_append_class-target = "${@['', ' --disable-gettext '][(d.getVar('USE_NLS') == 'no')]}"
> -
> -EXTRA_OEMAKE = "PKG_LIB_DIR=${base_libdir} PKG_DEVLIB_DIR=${libdir}"
> -
> -do_install () {
> -       oe_runmake install install-lib install-dev DIST_ROOT="${D}" ZIP="gzip -n"
> -}
> -
> -do_install_append_class-native () {
> -       if test "${libdir}" = "${base_libdir}" ; then
> -               return
> -       fi
> -       librelpath=${@os.path.relpath(d.getVar('libdir'), d.getVar('base_libdir'))}
> -       baselibrelpath=${@os.path.relpath(d.getVar('base_libdir'), d.getVar('libdir'))}
> -
> -       # Remove bad symlinks & create the correct symlinks
> -       if test -L ${D}${libdir}/lib${BPN}.so ; then
> -               rm -rf ${D}${libdir}/lib${BPN}.so
> -               ln -sf $baselibrelpath/lib${BPN}.so ${D}${libdir}/lib${BPN}.so
> -       fi
> -       if test -L ${D}${base_libdir}/lib${BPN}.a ; then
> -               rm -rf ${D}${base_libdir}/lib${BPN}.a
> -               ln -sf $librelpath/lib${BPN}.a ${D}${base_libdir}/lib${BPN}.a
> -       fi
> -       if test -L  ${D}${base_libdir}/lib${BPN}.la ; then
> -               rm -rf ${D}${base_libdir}/lib${BPN}.la
> -               ln -sf $librelpath/lib${BPN}.la ${D}${base_libdir}/lib${BPN}.la
> -       fi
> -}
> -
> -PACKAGES =+ "lib${BPN}"
> -
> -FILES_lib${BPN} = "${base_libdir}/lib*${SOLIBS}"
> -
> -BBCLASSEXTEND = "native"
> diff --git a/meta/recipes-support/attr/files/0001-Added-configure-option-to-enable-disable-static-libr.patch b/meta/recipes-support/attr/files/0001-Added-configure-option-to-enable-disable-static-libr.patch
> deleted file mode 100644
> index 1c1159f2c90..00000000000
> --- a/meta/recipes-support/attr/files/0001-Added-configure-option-to-enable-disable-static-libr.patch
> +++ /dev/null
> @@ -1,70 +0,0 @@
> -From 01256c61ba126449c46dd4ab5d5e145488b981fa Mon Sep 17 00:00:00 2001
> -From: Amarnath Valluri <amarnath.valluri@intel.com>
> -Date: Mon, 23 Jan 2017 13:25:13 +0200
> -Subject: [PATCH] Added configure option to enable/disable static library
> -
> -Create static library archive only in case of --enable-static.
> -
> -Upstream-Status: Pending
> -
> -Signed-off-by: Amarnath Valluri <amarnath.valluri@intel.com>
> ----
> - configure.ac         | 6 ++++++
> - include/builddefs.in | 1 +
> - include/buildmacros  | 3 +++
> - 3 files changed, 10 insertions(+)
> -
> -diff --git a/configure.ac b/configure.ac
> -index b966d0e..e48268b 100644
> ---- a/configure.ac
> -+++ b/configure.ac
> -@@ -26,6 +26,12 @@ AC_ARG_ENABLE(shared,
> -       enable_shared=yes)
> - AC_SUBST(enable_shared)
> -
> -+AC_ARG_ENABLE(static,
> -+[ --enable-static=[yes/no] Enable use of static libraries [default=yes]],,
> -+      enable_static=yes)
> -+AC_SUBST(enable_static)
> -+
> -+
> - AC_ARG_ENABLE(gettext,
> - [ --enable-gettext=[yes/no] Enable alternate language support [default=yes]],,
> -       enable_gettext=yes)
> -diff --git a/include/builddefs.in b/include/builddefs.in
> -index d9931db..3b3dbd2 100644
> ---- a/include/builddefs.in
> -+++ b/include/builddefs.in
> -@@ -71,6 +71,7 @@ RPMBUILD     = @rpmbuild@
> - RPM_VERSION   = @rpm_version@
> -
> - ENABLE_SHARED = @enable_shared@
> -+ENABLE_STATIC         = @enable_static@
> - ENABLE_GETTEXT        = @enable_gettext@
> -
> - HAVE_ZIPPED_MANPAGES = @have_zipped_manpages@
> -diff --git a/include/buildmacros b/include/buildmacros
> -index 39fa7e2..b0f25c5 100644
> ---- a/include/buildmacros
> -+++ b/include/buildmacros
> -@@ -80,6 +80,7 @@ endif
> - # /usr/lib.
> - ifeq ($(ENABLE_SHARED),yes)
> - INSTALL_LTLIB_DEV = \
> -+      set -x; \
> -       cd $(TOPDIR)/$(LIBNAME)/.libs; \
> -       ../$(INSTALL) -m 755 -d $(PKG_DEVLIB_DIR); \
> -       ../$(INSTALL) -m 644 -T old_lib $(LIBNAME).lai $(PKG_DEVLIB_DIR); \
> -@@ -88,7 +89,9 @@ INSTALL_LTLIB_DEV = \
> -       ../$(INSTALL) -T so_base $(LIBNAME).lai $(PKG_LIB_DIR); \
> -       if test "x$(PKG_DEVLIB_DIR)" != "x$(PKG_LIB_DIR)" ; then \
> -       rel_lib_prefix=$$(echo $(PKG_LIB_DIR) | sed 's,\(^/\|\)[^/][^/]*,..,g'); \
> -+      if test "$(ENABLE_STATIC)" = "yes" ; then \
> -       ../$(INSTALL) -S $$rel_lib_prefix$(PKG_DEVLIB_DIR)/$(LIBNAME).a $(PKG_LIB_DIR)/$(LIBNAME).a; \
> -+      fi ;\
> -       ../$(INSTALL) -S $$rel_lib_prefix$(PKG_DEVLIB_DIR)/$(LIBNAME).la $(PKG_LIB_DIR)/$(LIBNAME).la; \
> -       rel_devlib_prefix=$$(echo $(PKG_DEVLIB_DIR) | sed 's,\(^/\|\)[^/][^/]*,..,g'); \
> -       ../$(INSTALL) -S $$rel_devlib_prefix$(PKG_LIB_DIR)/$(LIBNAME).so $(PKG_DEVLIB_DIR)/$(LIBNAME).so; \
> ---
> -2.7.4
> -
> diff --git a/meta/recipes-support/attr/files/Remove-the-attr.5-man-page-moved-to-man-pages.patch b/meta/recipes-support/attr/files/Remove-the-attr.5-man-page-moved-to-man-pages.patch
> deleted file mode 100644
> index d5ab83d7c68..00000000000
> --- a/meta/recipes-support/attr/files/Remove-the-attr.5-man-page-moved-to-man-pages.patch
> +++ /dev/null
> @@ -1,240 +0,0 @@
> -From 6047c8522b91235ad1e835f44f5e36472d9d49b2 Mon Sep 17 00:00:00 2001
> -From: Andreas Gruenbacher <andreas.gruenbacher@gmail.com>
> -Date: Wed, 22 Apr 2015 11:46:59 +0200
> -Subject: [PATCH 2/2] Remove the attr.5 man page (moved to man-pages)
> -
> -Commit dce9b4448c7f2b22bd206cd068fb05cb2f3255b9 from
> -https://git.savannah.nongnu.org/git/attr.git
> -
> -The attr.5 page is part of the extended attribute system call documentation,
> -which has been moved into the man-pages package. Move the attr.5 page there
> -as well.
> -
> -Upstream-Status: Backport
> -
> -[MA: updated to apply directly to v2.4.47]
> -Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com>
> ----
> - man/Makefile      |   2 +-
> - man/man5/Makefile |  35 -------------
> - man/man5/attr.5   | 153 ------------------------------------------------------
> - 3 files changed, 1 insertion(+), 189 deletions(-)
> - delete mode 100644 man/man5/Makefile
> - delete mode 100644 man/man5/attr.5
> -
> -diff --git a/man/Makefile b/man/Makefile
> -index 755daed..9301f09 100644
> ---- a/man/Makefile
> -+++ b/man/Makefile
> -@@ -19,7 +19,7 @@
> - TOPDIR = ..
> - include $(TOPDIR)/include/builddefs
> -
> --SUBDIRS = man1 man3 man5
> -+SUBDIRS = man1 man3
> -
> - default : $(SUBDIRS)
> -
> -diff --git a/man/man5/Makefile b/man/man5/Makefile
> -deleted file mode 100644
> -index 6b70d3d..0000000
> ---- a/man/man5/Makefile
> -+++ /dev/null
> -@@ -1,35 +0,0 @@
> --#
> --# Copyright (c) 2000, 2002 Silicon Graphics, Inc.  All Rights Reserved.
> --# Copyright (C) 2009  Andreas Gruenbacher <agruen@suse.de>
> --#
> --# 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 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.
> --#
> --# You should have received a copy of the GNU General Public License
> --# along with this program.  If not, see <http://www.gnu.org/licenses/>.
> --#
> --
> --TOPDIR = ../..
> --include $(TOPDIR)/include/builddefs
> --
> --MAN_SECTION   = 5
> --
> --MAN_PAGES     = $(shell echo *.$(MAN_SECTION))
> --MAN_DEST      = $(PKG_MAN_DIR)/man$(MAN_SECTION)
> --LSRCFILES     = $(MAN_PAGES)
> --
> --default : $(MAN_PAGES)
> --
> --include $(BUILDRULES)
> --
> --install : default
> --      $(INSTALL) -m 755 -d $(MAN_DEST)
> --      $(INSTALL_MAN)
> --install-dev install-lib:
> -diff --git a/man/man5/attr.5 b/man/man5/attr.5
> -deleted file mode 100644
> -index a02757d..0000000
> ---- a/man/man5/attr.5
> -+++ /dev/null
> -@@ -1,153 +0,0 @@
> --.\" Extended attributes manual page
> --.\"
> --.\" Copyright (C) 2000, 2002, 2007  Andreas Gruenbacher <agruen@suse.de>
> --.\" Copyright (C) 2001, 2002, 2004, 2007 Silicon Graphics, Inc.
> --.\" All rights reserved.
> --.\"
> --.\" This is free documentation; 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 2 of
> --.\" the License, or (at your option) any later version.
> --.\"
> --.\" The GNU General Public License's references to "object code"
> --.\" and "executables" are to be interpreted as the output of any
> --.\" document formatting or typesetting system, including
> --.\" intermediate and printed output.
> --.\"
> --.\" This manual 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.
> --.\"
> --.\" You should have received a copy of the GNU General Public
> --.\" License along with this manual.  If not, see
> --.\" <http://www.gnu.org/licenses/>.
> --.\"
> --.TH ATTR 5
> --.SH NAME
> --attr - Extended attributes
> --.SH DESCRIPTION
> --Extended attributes are name:value pairs associated permanently with
> --files and directories, similar to the environment strings associated
> --with a process.
> --An attribute may be defined or undefined.
> --If it is defined, its value may be empty or non-empty.
> --.PP
> --Extended attributes are extensions to the normal attributes which are
> --associated with all inodes in the system (i.e. the
> --.BR stat (2)
> --data).
> --They are often used to provide additional functionality
> --to a filesystem \- for example, additional security features such as
> --Access Control Lists (ACLs) may be implemented using extended attributes.
> --.PP
> --Users with search access to a file or directory may retrieve a list of
> --attribute names defined for that file or directory.
> --.PP
> --Extended attributes are accessed as atomic objects.
> --Reading retrieves the whole value of an attribute and stores it in a buffer.
> --Writing replaces any previous value with the new value.
> --.PP
> --Space consumed for extended attributes is counted towards the disk quotas
> --of the file owner and file group.
> --.PP
> --Currently, support for extended attributes is implemented on Linux by the
> --ext2, ext3, ext4, XFS, JFS and reiserfs filesystems.
> --.SH EXTENDED ATTRIBUTE NAMESPACES
> --Attribute names are zero-terminated strings.
> --The attribute name is always specified in the fully qualified
> --.IR namespace.attribute
> --form, eg.
> --.IR user.mime_type ,
> --.IR trusted.md5sum ,
> --.IR system.posix_acl_access ,
> --or
> --.IR security.selinux .
> --.PP
> --The namespace mechanism is used to define different classes of extended
> --attributes.
> --These different classes exist for several reasons, e.g. the permissions
> --and capabilities required for manipulating extended attributes of one
> --namespace may differ to another.
> --.PP
> --Currently the
> --.IR security ,
> --.IR system ,
> --.IR trusted ,
> --and
> --.IR user
> --extended attribute classes are defined as described below. Additional
> --classes may be added in the future.
> --.SS Extended security attributes
> --The security attribute namespace is used by kernel security modules,
> --such as Security Enhanced Linux.
> --Read and write access permissions to security attributes depend on the
> --policy implemented for each security attribute by the security module.
> --When no security module is loaded, all processes have read access to
> --extended security attributes, and write access is limited to processes
> --that have the CAP_SYS_ADMIN capability.
> --.SS Extended system attributes
> --Extended system attributes are used by the kernel to store system
> --objects such as Access Control Lists and Capabilities.  Read and write
> --access permissions to system attributes depend on the policy implemented
> --for each system attribute implemented by filesystems in the kernel.
> --.SS Trusted extended attributes
> --Trusted extended attributes are visible and accessible only to processes that
> --have the CAP_SYS_ADMIN capability (the super user usually has this
> --capability).
> --Attributes in this class are used to implement mechanisms in user
> --space (i.e., outside the kernel) which keep information in extended attributes
> --to which ordinary processes should not have access.
> --.SS Extended user attributes
> --Extended user attributes may be assigned to files and directories for
> --storing arbitrary additional information such as the mime type,
> --character set or encoding of a file. The access permissions for user
> --attributes are defined by the file permission bits.
> --.PP
> --The file permission bits of regular files and directories are
> --interpreted differently from the file permission bits of special files
> --and symbolic links. For regular files and directories the file
> --permission bits define access to the file's contents, while for device special
> --files they define access to the device described by the special file.
> --The file permissions of symbolic links are not used in access
> --checks. These differences would allow users to consume filesystem resources in
> --a way not controllable by disk quotas for group or world writable special files and directories.
> --.PP
> --For this reason, extended user attributes are only allowed for regular files and directories, and access to extended user attributes is restricted to the
> --owner and to users with appropriate capabilities for directories with the
> --sticky bit set (see the
> --.BR chmod (1)
> --manual page for an explanation of Sticky Directories).
> --.SH FILESYSTEM DIFFERENCES
> --The kernel and the filesystem may place limits on the maximum number
> --and size of extended attributes that can be associated with a file.
> --Some file systems, such as ext2/3 and reiserfs, require the filesystem
> --to be mounted with the
> --.B user_xattr
> --mount option in order for extended user attributes to be used.
> --.PP
> --In the current ext2, ext3 and ext4 filesystem implementations, each
> --extended attribute must fit on a single filesystem block (1024, 2048
> --or 4096 bytes, depending on the block size specified when the
> --filesystem was created).
> --.PP
> --In the XFS and reiserfs filesystem implementations, there is no
> --practical limit on the number or size of extended attributes
> --associated with a file, and the algorithms used to store extended
> --attribute information on disk are scalable.
> --.PP
> --In the JFS filesystem implementation, names can be up to 255 bytes and
> --values up to 65,535 bytes.
> --.SH ADDITIONAL NOTES
> --Since the filesystems on which extended attributes are stored might also
> --be used on architectures with a different byte order and machine word
> --size, care should be taken to store attribute values in an architecture
> --independent format.
> --.SH AUTHORS
> --Andreas Gruenbacher,
> --.RI < a.gruenbacher@bestbits.at >
> --and the SGI XFS development team,
> --.RI < linux-xfs@oss.sgi.com >.
> --.SH SEE ALSO
> --getfattr(1),
> --setfattr(1).
> ---
> -2.7.4
> -
> diff --git a/meta/recipes-support/attr/files/Remove-the-section-2-man-pages.patch b/meta/recipes-support/attr/files/Remove-the-section-2-man-pages.patch
> deleted file mode 100644
> index 044c5a037c8..00000000000
> --- a/meta/recipes-support/attr/files/Remove-the-section-2-man-pages.patch
> +++ /dev/null
> @@ -1,666 +0,0 @@
> -From b972600a26f3a930e53e2fce2625266a5d29813e Mon Sep 17 00:00:00 2001
> -From: Andreas Gruenbacher <andreas.gruenbacher@gmail.com>
> -Date: Tue, 14 Apr 2015 23:53:11 +0200
> -Subject: [PATCH 1/2] Remove the section 2 man pages
> -
> -Commit 8d1263bca95722d66a6f8e83450f49d0956ea534 from upstream
> -https://git.savannah.nongnu.org/git/attr.git/
> -
> -The section 2 man pages have long since been added to the man-pages package
> -which documents all system calls; they were disabled in attr by default since
> -January 2014.  Get rid of them here.
> -
> -Upstream-Status: Backport
> -
> -[MA: modified to apply directly to v2.4.47]
> -Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com>
> ----
> - man/Makefile           |   2 +-
> - man/man2/Makefile      |  35 -----------
> - man/man2/getxattr.2    | 143 --------------------------------------------
> - man/man2/listxattr.2   | 158 -------------------------------------------------
> - man/man2/removexattr.2 | 111 ----------------------------------
> - man/man2/setxattr.2    | 143 --------------------------------------------
> - 6 files changed, 1 insertion(+), 591 deletions(-)
> - delete mode 100644 man/man2/Makefile
> - delete mode 100644 man/man2/getxattr.2
> - delete mode 100644 man/man2/listxattr.2
> - delete mode 100644 man/man2/removexattr.2
> - delete mode 100644 man/man2/setxattr.2
> -
> -diff --git a/man/Makefile b/man/Makefile
> -index 9535426..755daed 100644
> ---- a/man/Makefile
> -+++ b/man/Makefile
> -@@ -19,7 +19,7 @@
> - TOPDIR = ..
> - include $(TOPDIR)/include/builddefs
> -
> --SUBDIRS = man1 man2 man3 man5
> -+SUBDIRS = man1 man3 man5
> -
> - default : $(SUBDIRS)
> -
> -diff --git a/man/man2/Makefile b/man/man2/Makefile
> -deleted file mode 100644
> -index d77309d..0000000
> ---- a/man/man2/Makefile
> -+++ /dev/null
> -@@ -1,35 +0,0 @@
> --#
> --# Copyright (c) 2000-2002 Silicon Graphics, Inc.  All Rights Reserved.
> --# Copyright (C) 2009  Andreas Gruenbacher <agruen@suse.de>
> --#
> --# 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 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.
> --#
> --# You should have received a copy of the GNU General Public License
> --# along with this program.  If not, see <http://www.gnu.org/licenses/>.
> --#
> --
> --TOPDIR = ../..
> --include $(TOPDIR)/include/builddefs
> --
> --MAN_SECTION   = 2
> --
> --MAN_PAGES     = $(shell echo *.$(MAN_SECTION))
> --MAN_DEST      = $(PKG_MAN_DIR)/man$(MAN_SECTION)
> --LSRCFILES     = $(MAN_PAGES)
> --
> --default install : $(MAN_PAGES)
> --
> --include $(BUILDRULES)
> --
> --install-dev : default
> --      $(INSTALL) -m 755 -d $(MAN_DEST)
> --      $(INSTALL_MAN)
> --install-lib:
> -diff --git a/man/man2/getxattr.2 b/man/man2/getxattr.2
> -deleted file mode 100644
> -index 405ad89..0000000
> ---- a/man/man2/getxattr.2
> -+++ /dev/null
> -@@ -1,143 +0,0 @@
> --.\"
> --.\" Extended attributes system calls manual pages
> --.\"
> --.\" (C) Andreas Gruenbacher, February 2001
> --.\" (C) Silicon Graphics Inc, September 2001
> --.\"
> --.\" This is free documentation; 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 2 of
> --.\" the License, or (at your option) any later version.
> --.\"
> --.\" The GNU General Public License's references to "object code"
> --.\" and "executables" are to be interpreted as the output of any
> --.\" document formatting or typesetting system, including
> --.\" intermediate and printed output.
> --.\"
> --.\" This manual 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.
> --.\"
> --.\" You should have received a copy of the GNU General Public
> --.\" License along with this manual.  If not, see
> --.\" <http://www.gnu.org/licenses/>.
> --.\"
> --.TH GETXATTR 2 "Extended Attributes" "Dec 2001" "System calls"
> --.SH NAME
> --getxattr, lgetxattr, fgetxattr \- retrieve an extended attribute value
> --.SH SYNOPSIS
> --.fam C
> --.nf
> --.B #include <sys/types.h>
> --.B #include <attr/xattr.h>
> --.sp
> --.BI "ssize_t getxattr (const char\ *" path ", const char\ *" name ",
> --.BI "\t\t\t\t void\ *" value ", size_t " size );
> --.BI "ssize_t lgetxattr (const char\ *" path ", const char\ *" name ",
> --.BI "\t\t\t\t void\ *" value ", size_t " size );
> --.BI "ssize_t fgetxattr (int " filedes ", const char\ *" name ",
> --.BI "\t\t\t\t void\ *" value ", size_t " size );
> --.fi
> --.fam T
> --.SH DESCRIPTION
> --Extended attributes are
> --.IR name :\c
> --.I value
> --pairs associated with inodes (files, directories, symlinks, etc).
> --They are extensions to the normal attributes which are associated
> --with all inodes in the system (i.e. the
> --.BR stat (2)
> --data).
> --A complete overview of extended attributes concepts can be found in
> --.BR attr (5).
> --.PP
> --.B getxattr
> --retrieves the
> --.I value
> --of the extended attribute identified by
> --.I name
> --and associated with the given
> --.I path
> --in the filesystem.
> --The length of the attribute
> --.I value
> --is returned.
> --.PP
> --.B lgetxattr
> --is identical to
> --.BR getxattr ,
> --except in the case of a symbolic link, where the link itself is
> --interrogated, not the file that it refers to.
> --.PP
> --.B fgetxattr
> --is identical to
> --.BR getxattr ,
> --only the open file pointed to by
> --.I filedes
> --(as returned by
> --.BR open (2))
> --is interrogated in place of
> --.IR path .
> --.PP
> --An extended attribute
> --.I name
> --is a simple NULL-terminated string.
> --The name includes a namespace prefix \- there may be several, disjoint
> --namespaces associated with an individual inode.
> --The value of an extended attribute is a chunk of arbitrary textual or
> --binary data of specified length.
> --.PP
> --An empty buffer of
> --.I size
> --zero can be passed into these calls to return the current size of the
> --named extended attribute, which can be used to estimate the size of a
> --buffer which is sufficiently large to hold the value associated with
> --the extended attribute.
> --.PP
> --The interface is designed to allow guessing of initial buffer
> --sizes, and to enlarge buffers when the return value indicates
> --that the buffer provided was too small.
> --.SH RETURN VALUE
> --On success, a positive number is returned indicating the size of the
> --extended attribute value.
> --On failure, \-1 is returned and
> --.I errno
> --is set appropriately.
> --.PP
> --If the named attribute does not exist, or the process has no access to
> --this attribute,
> --.I errno
> --is set to ENOATTR.
> --.PP
> --If the
> --.I size
> --of the
> --.I value
> --buffer is too small to hold the result,
> --.I errno
> --is set to ERANGE.
> --.PP
> --If extended attributes are not supported by the filesystem, or are disabled,
> --.I errno
> --is set to ENOTSUP.
> --.PP
> --The errors documented for the
> --.BR stat (2)
> --system call are also applicable here.
> --.SH AUTHORS
> --Andreas Gruenbacher,
> --.RI < a.gruenbacher@bestbits.at >
> --and the SGI XFS development team,
> --.RI < linux-xfs@oss.sgi.com >.
> --Please send any bug reports or comments to these addresses.
> --.SH SEE ALSO
> --.BR getfattr (1),
> --.BR setfattr (1),
> --.BR open (2),
> --.BR stat (2),
> --.BR setxattr (2),
> --.BR listxattr (2),
> --.BR removexattr (2),
> --and
> --.BR attr (5).
> -diff --git a/man/man2/listxattr.2 b/man/man2/listxattr.2
> -deleted file mode 100644
> -index 8b4371c..0000000
> ---- a/man/man2/listxattr.2
> -+++ /dev/null
> -@@ -1,158 +0,0 @@
> --.\"
> --.\" Extended attributes system calls manual pages
> --.\"
> --.\" (C) Andreas Gruenbacher, February 2001
> --.\" (C) Silicon Graphics Inc, September 2001
> --.\"
> --.\" This is free documentation; 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 2 of
> --.\" the License, or (at your option) any later version.
> --.\"
> --.\" The GNU General Public License's references to "object code"
> --.\" and "executables" are to be interpreted as the output of any
> --.\" document formatting or typesetting system, including
> --.\" intermediate and printed output.
> --.\"
> --.\" This manual 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.
> --.\"
> --.\" You should have received a copy of the GNU General Public
> --.\" License along with this manual.  If not, see
> --.\" <http://www.gnu.org/licenses/>.
> --.\"
> --.TH LISTXATTR 2 "Extended Attributes" "Dec 2001" "System calls"
> --.SH NAME
> --listxattr, llistxattr, flistxattr \- list extended attribute names
> --.SH SYNOPSIS
> --.fam C
> --.nf
> --.B #include <sys/types.h>
> --.B #include <attr/xattr.h>
> --.sp
> --.BI "ssize_t listxattr (const char\ *" path ",
> --.BI "\t\t\t\t char\ *" list ", size_t " size );
> --.BI "ssize_t llistxattr (const char\ *" path ",
> --.BI "\t\t\t\t char\ *" list ", size_t " size );
> --.BI "ssize_t flistxattr (int " filedes ",
> --.BI "\t\t\t\t char\ *" list ", size_t " size );
> --.fi
> --.fam T
> --.SH DESCRIPTION
> --Extended attributes are name:value
> --pairs associated with inodes (files, directories, symlinks, etc).
> --They are extensions to the normal attributes which are associated
> --with all inodes in the system (i.e. the
> --.BR stat (2)
> --data).
> --A complete overview of extended attributes concepts can be found in
> --.BR attr (5).
> --.PP
> --.B listxattr
> --retrieves the
> --.I list
> --of extended attribute names associated with the given
> --.I path
> --in the filesystem.
> --The list is the set of (NULL-terminated) names, one after the other.
> --Names of extended attributes to which the calling process does not
> --have access may be omitted from the list.
> --The length of the attribute name
> --.I list
> --is returned.
> --.PP
> --.B llistxattr
> --is identical to
> --.BR listxattr ,
> --except in the case of a symbolic link, where the list of names of
> --extended attributes associated with the link itself is retrieved,
> --not the file that it refers to.
> --.I list
> --is a caller-allocated buffer of size
> --.IR size .
> --.PP
> --.B flistxattr
> --is identical to
> --.BR listxattr ,
> --only the open file pointed to by
> --.I filedes
> --(as returned by
> --.BR open (2))
> --is interrogated in place of
> --.IR path .
> --.PP
> --A single extended attribute
> --.I name
> --is a simple NULL-terminated string.
> --The name includes a namespace prefix \- there may be several, disjoint
> --namespaces associated with an individual inode.
> --.PP
> --An empty buffer of
> --.I size
> --zero can be passed into these calls to return the current size of the
> --list of extended attribute names, which can be used to estimate the
> --size of a buffer which is sufficiently large to hold the list of names.
> --.SH EXAMPLES
> --The
> --.I list
> --of names is returned as an unordered array of NULL-terminated character
> --strings (attribute names are separated by NULL characters), like this:
> --.fam C
> --.RS
> --.nf
> --user.name1\\0system.name1\\0user.name2\\0
> --.fi
> --.RE
> --.fam T
> --.P
> --Filesystems like ext2, ext3 and XFS which implement POSIX ACLs using
> --extended attributes, might return a
> --.I list
> --like this:
> --.fam C
> --.RS
> --.nf
> --system.posix_acl_access\\0system.posix_acl_default\\0
> --.fi
> --.RE
> --.fam T
> --.SH RETURN VALUE
> --On success, a positive number is returned indicating the size of the
> --extended attribute name list.
> --On failure, \-1 is returned and
> --.I errno
> --is set appropriately.
> --.PP
> --If the
> --.I size
> --of the
> --.I list
> --buffer is too small to hold the result,
> --.I errno
> --is set to ERANGE.
> --.PP
> --If extended attributes are not supported by the filesystem, or are disabled,
> --.I errno
> --is set to ENOTSUP.
> --.PP
> --The errors documented for the
> --.BR stat (2)
> --system call are also applicable here.
> --.SH AUTHORS
> --Andreas Gruenbacher,
> --.RI < a.gruenbacher@bestbits.at >
> --and the SGI XFS development team,
> --.RI < linux-xfs@oss.sgi.com >.
> --Please send any bug reports or comments to these addresses.
> --.SH SEE ALSO
> --.BR getfattr (1),
> --.BR setfattr (1),
> --.BR open (2),
> --.BR stat (2),
> --.BR getxattr (2),
> --.BR setxattr (2),
> --.BR removexattr (2),
> --and
> --.BR attr (5).
> -diff --git a/man/man2/removexattr.2 b/man/man2/removexattr.2
> -deleted file mode 100644
> -index 2c7d934..0000000
> ---- a/man/man2/removexattr.2
> -+++ /dev/null
> -@@ -1,111 +0,0 @@
> --.\"
> --.\" Extended attributes system calls manual pages
> --.\"
> --.\" (C) Andreas Gruenbacher, February 2001
> --.\" (C) Silicon Graphics Inc, September 2001
> --.\"
> --.\" This is free documentation; 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 2 of
> --.\" the License, or (at your option) any later version.
> --.\"
> --.\" The GNU General Public License's references to "object code"
> --.\" and "executables" are to be interpreted as the output of any
> --.\" document formatting or typesetting system, including
> --.\" intermediate and printed output.
> --.\"
> --.\" This manual 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.
> --.\"
> --.\" You should have received a copy of the GNU General Public
> --.\" License along with this manual.  If not, see
> --.\" <http://www.gnu.org/licenses/>.
> --.\"
> --.TH REMOVEXATTR 2 "Extended Attributes" "Dec 2001" "System calls"
> --.SH NAME
> --removexattr, lremovexattr, fremovexattr \- remove an extended attribute
> --.SH SYNOPSIS
> --.fam C
> --.nf
> --.B #include <sys/types.h>
> --.B #include <attr/xattr.h>
> --.sp
> --.BI "int removexattr (const char\ *" path ", const char\ *" name );
> --.BI "int lremovexattr (const char\ *" path ", const char\ *" name );
> --.BI "int fremovexattr (int " filedes ", const char\ *" name );
> --.fi
> --.fam T
> --.SH DESCRIPTION
> --Extended attributes are
> --.IR name :\c
> --value pairs associated with inodes (files, directories, symlinks, etc).
> --They are extensions to the normal attributes which are associated
> --with all inodes in the system (i.e. the
> --.BR stat (2)
> --data).
> --A complete overview of extended attributes concepts can be found in
> --.BR attr (5).
> --.PP
> --.B removexattr
> --removes the extended attribute identified by
> --.I name
> --and associated with the given
> --.I path
> --in the filesystem.
> --.PP
> --.B lremovexattr
> --is identical to
> --.BR removexattr ,
> --except in the case of a symbolic link, where the extended attribute is
> --removed from the link itself, not the file that it refers to.
> --.PP
> --.B fremovexattr
> --is identical to
> --.BR removexattr ,
> --only the extended attribute is removed from the open file pointed to by
> --.I filedes
> --(as returned by
> --.BR open (2))
> --in place of
> --.IR path .
> --.PP
> --An extended attribute name is a simple NULL-terminated string.
> --The
> --.I name
> --includes a namespace prefix \- there may be several, disjoint
> --namespaces associated with an individual inode.
> --.SH RETURN VALUE
> --On success, zero is returned.
> --On failure, \-1 is returned and
> --.I errno
> --is set appropriately.
> --.PP
> --If the named attribute does not exist,
> --.I errno
> --is set to ENOATTR.
> --.PP
> --If extended attributes are not supported by the filesystem, or are disabled,
> --.I errno
> --is set to ENOTSUP.
> --.PP
> --The errors documented for the
> --.BR stat (2)
> --system call are also applicable here.
> --.SH AUTHORS
> --Andreas Gruenbacher,
> --.RI < a.gruenbacher@bestbits.at >
> --and the SGI XFS development team,
> --.RI < linux-xfs@oss.sgi.com >.
> --Please send any bug reports or comments to these addresses.
> --.SH SEE ALSO
> --.BR getfattr (1),
> --.BR setfattr (1),
> --.BR open (2),
> --.BR stat (2),
> --.BR setxattr (2),
> --.BR getxattr (2),
> --.BR listxattr (2),
> --and
> --.BR attr (5).
> -diff --git a/man/man2/setxattr.2 b/man/man2/setxattr.2
> -deleted file mode 100644
> -index b20dc9f..0000000
> ---- a/man/man2/setxattr.2
> -+++ /dev/null
> -@@ -1,143 +0,0 @@
> --.\"
> --.\" Extended attributes system calls manual pages
> --.\"
> --.\" (C) Andreas Gruenbacher, February 2001
> --.\" (C) Silicon Graphics Inc, September 2001
> --.\"
> --.\" This is free documentation; 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 2 of
> --.\" the License, or (at your option) any later version.
> --.\"
> --.\" The GNU General Public License's references to "object code"
> --.\" and "executables" are to be interpreted as the output of any
> --.\" document formatting or typesetting system, including
> --.\" intermediate and printed output.
> --.\"
> --.\" This manual 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.
> --.\"
> --.\" You should have received a copy of the GNU General Public
> --.\" License along with this manual.  If not, see
> --.\" <http://www.gnu.org/licenses/>.
> --.\"
> --.TH SETXATTR 2 "Extended Attributes" "Dec 2001" "System calls"
> --.SH NAME
> --setxattr, lsetxattr, fsetxattr \- set an extended attribute value
> --.SH SYNOPSIS
> --.fam C
> --.nf
> --.B #include <sys/types.h>
> --.B #include <attr/xattr.h>
> --.sp
> --.BI "int setxattr (const char\ *" path ", const char\ *" name ",
> --.BI "\t\t\t const void\ *" value ", size_t " size ", int " flags );
> --.BI "int lsetxattr (const char\ *" path ", const char\ *" name ",
> --.BI "\t\t\t const void\ *" value ", size_t " size ", int " flags );
> --.BI "int fsetxattr (int " filedes ", const char\ *" name ",
> --.BI "\t\t\t const void\ *" value ", size_t " size ", int " flags );
> --.fi
> --.fam T
> --.SH DESCRIPTION
> --Extended attributes are
> --.IR name :\c
> --.I value
> --pairs associated with inodes (files, directories, symlinks, etc).
> --They are extensions to the normal attributes which are associated
> --with all inodes in the system (i.e. the
> --.BR stat (2)
> --data).
> --A complete overview of extended attributes concepts can be found in
> --.BR attr (5).
> --.PP
> --.B setxattr
> --sets the
> --.I value
> --of the extended attribute identified by
> --.I name
> --and associated with the given
> --.I path
> --in the filesystem.
> --The
> --.I size
> --of the
> --.I value
> --must be specified.
> --.PP
> --.B lsetxattr
> --is identical to
> --.BR setxattr ,
> --except in the case of a symbolic link, where the extended attribute is
> --set on the link itself, not the file that it refers to.
> --.PP
> --.B fsetxattr
> --is identical to
> --.BR setxattr ,
> --only the extended attribute is set on the open file pointed to by
> --.I filedes
> --(as returned by
> --.BR open (2))
> --in place of
> --.IR path .
> --.PP
> --An extended attribute name is a simple NULL-terminated string.
> --The
> --.I name
> --includes a namespace prefix \- there may be several, disjoint
> --namespaces associated with an individual inode.
> --The
> --.I value
> --of an extended attribute is a chunk of arbitrary textual or
> --binary data of specified length.
> --.PP
> --The
> --.I flags
> --parameter can be used to refine the semantics of the operation.
> --XATTR_CREATE specifies a pure create, which fails if the named
> --attribute exists already.
> --XATTR_REPLACE specifies a pure replace operation, which fails if the
> --named attribute does not already exist.
> --By default (no flags), the extended attribute will be created if
> --need be, or will simply replace the value if the attribute exists.
> --.SH RETURN VALUE
> --On success, zero is returned.
> --On failure, \-1 is returned and
> --.I errno
> --is set appropriately.
> --.PP
> --If XATTR_CREATE is specified, and the attribute exists already,
> --.I errno
> --is set to EEXIST.
> --If XATTR_REPLACE is specified, and the attribute does not exist,
> --.I errno
> --is set to ENOATTR.
> --.PP
> --If there is insufficient space remaining to store the extended attribute,
> --.I errno
> --is set to either ENOSPC, or EDQUOT if quota enforcement was the cause.
> --.PP
> --If extended attributes are not supported by the filesystem, or are disabled,
> --.I errno
> --is set to ENOTSUP.
> --.PP
> --The errors documented for the
> --.BR stat (2)
> --system call are also applicable here.
> --.SH AUTHORS
> --Andreas Gruenbacher,
> --.RI < a.gruenbacher@bestbits.at >
> --and the SGI XFS development team,
> --.RI < linux-xfs@oss.sgi.com >.
> --Please send any bug reports or comments to these addresses.
> --.SH SEE ALSO
> --.BR getfattr (1),
> --.BR setfattr (1),
> --.BR open (2),
> --.BR stat (2),
> --.BR getxattr (2),
> --.BR listxattr (2),
> --.BR removexattr (2),
> --and
> --.BR attr (5).
> ---
> -2.7.4
> -
> diff --git a/meta/recipes-support/attr/files/relative-libdir.patch b/meta/recipes-support/attr/files/relative-libdir.patch
> deleted file mode 100644
> index b72bf184d6f..00000000000
> --- a/meta/recipes-support/attr/files/relative-libdir.patch
> +++ /dev/null
> @@ -1,25 +0,0 @@
> -Upstream-Status: Pending
> -
> -use relative path in symbolic links, or it fails in staging
> -sed expression from udev
> -
> -7/29/2010 - created by Qing He <qing.he@intel.com>
> -
> -diff -u include.orig/buildmacros include/buildmacros
> ---- include.orig/buildmacros   2010-07-29 17:39:48.000000000 +0800
> -+++ include/buildmacros        2010-07-29 18:20:34.000000000 +0800
> -@@ -88,9 +88,11 @@
> -       ../$(INSTALL) -m 755 -d $(PKG_LIB_DIR); \
> -       ../$(INSTALL) -T so_base $(LIBNAME).lai $(PKG_LIB_DIR); \
> -       if test "x$(PKG_DEVLIB_DIR)" != "x$(PKG_LIB_DIR)" ; then \
> --      ../$(INSTALL) -S $(PKG_DEVLIB_DIR)/$(LIBNAME).a $(PKG_LIB_DIR)/$(LIBNAME).a; \
> --      ../$(INSTALL) -S $(PKG_DEVLIB_DIR)/$(LIBNAME).la $(PKG_LIB_DIR)/$(LIBNAME).la; \
> --      ../$(INSTALL) -S $(PKG_LIB_DIR)/$(LIBNAME).so $(PKG_DEVLIB_DIR)/$(LIBNAME).so; \
> -+      rel_lib_prefix=$$(echo $(PKG_LIB_DIR) | sed 's,\(^/\|\)[^/][^/]*,..,g'); \
> -+      ../$(INSTALL) -S $$rel_lib_prefix$(PKG_DEVLIB_DIR)/$(LIBNAME).a $(PKG_LIB_DIR)/$(LIBNAME).a; \
> -+      ../$(INSTALL) -S $$rel_lib_prefix$(PKG_DEVLIB_DIR)/$(LIBNAME).la $(PKG_LIB_DIR)/$(LIBNAME).la; \
> -+      rel_devlib_prefix=$$(echo $(PKG_DEVLIB_DIR) | sed 's,\(^/\|\)[^/][^/]*,..,g'); \
> -+      ../$(INSTALL) -S $$rel_devlib_prefix$(PKG_LIB_DIR)/$(LIBNAME).so $(PKG_DEVLIB_DIR)/$(LIBNAME).so; \
> -       fi
> - else
> - INSTALL_LTLIB_DEV = $(INSTALL_LTLIB_STATIC)
> diff --git a/meta/recipes-support/attr/files/run-ptest b/meta/recipes-support/attr/files/run-ptest
> deleted file mode 100644
> index a6c6867f2d9..00000000000
> --- a/meta/recipes-support/attr/files/run-ptest
> +++ /dev/null
> @@ -1,5 +0,0 @@
> -#!/bin/sh
> -
> -make -C test -k tests root-tests |sed \
> - -e 's|^\[.*\] \(.*\) -- ok$|PASS: \1|' \
> - -e 's|^\[.*\] \(.*\) -- failed|FAIL: \1|'
> --
> 2.17.1
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core


^ permalink raw reply	[flat|nested] 64+ messages in thread

* Re: [PATCH 14/28] libcap: update to 2.30
  2020-01-08 21:22   ` Richard Purdie
@ 2020-01-09  1:31     ` Khem Raj
  2020-01-09 11:46       ` Adrian Bunk
  0 siblings, 1 reply; 64+ messages in thread
From: Khem Raj @ 2020-01-09  1:31 UTC (permalink / raw)
  To: Richard Purdie; +Cc: Patches and discussions about the oe-core layer

On Wed, Jan 8, 2020 at 1:22 PM Richard Purdie
<richard.purdie@linuxfoundation.org> wrote:
>
> On Wed, 2020-01-08 at 14:27 +0100, Alexander Kanavin wrote:
> > Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
> > ---
> >  ...-tests-do-not-run-target-executables.patch | 33
> > +++++++++++++++++++
> >  .../libcap/{libcap_2.27.bb => libcap_2.30.bb} |  5 +--
> >  2 files changed, 36 insertions(+), 2 deletions(-)
> >  create mode 100644 meta/recipes-support/libcap/files/0002-tests-do-
> > not-run-target-executables.patch
> >  rename meta/recipes-support/libcap/{libcap_2.27.bb =>
> > libcap_2.30.bb} (90%)
>
> I think this causes iputils to fail to build:
>
> https://autobuilder.yoctoproject.org/typhoon/#/builders/104/builds/331

also
https://errors.yoctoproject.org/Errors/Details/305696/

>
> Cheers,
>
> Richard
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core


^ permalink raw reply	[flat|nested] 64+ messages in thread

* Re: [PATCH 09/28] ltp: update to 20190930
  2020-01-08 13:27 ` [PATCH 09/28] ltp: update to 20190930 Alexander Kanavin
@ 2020-01-09  9:15   ` Richard Purdie
  0 siblings, 0 replies; 64+ messages in thread
From: Richard Purdie @ 2020-01-09  9:15 UTC (permalink / raw)
  To: Alexander Kanavin, openembedded-core

On Wed, 2020-01-08 at 14:27 +0100, Alexander Kanavin wrote:
> Drop a big pile of backports.
> 
> Add a patch to address absent string formatting error.
> 
> Additional fixing of builds with musl.

https://autobuilder.yoctoproject.org/typhoon/#/builders/95/builds/444
https://autobuilder.yoctoproject.org/typhoon/#/builders/96/builds/379

Cheers,

Richard



^ permalink raw reply	[flat|nested] 64+ messages in thread

* Re: [PATCH 14/28] libcap: update to 2.30
  2020-01-09  1:31     ` Khem Raj
@ 2020-01-09 11:46       ` Adrian Bunk
  2020-01-09 13:16         ` Alexander Kanavin
  0 siblings, 1 reply; 64+ messages in thread
From: Adrian Bunk @ 2020-01-09 11:46 UTC (permalink / raw)
  To: Khem Raj; +Cc: Patches and discussions about the oe-core layer

On Wed, Jan 08, 2020 at 05:31:45PM -0800, Khem Raj wrote:
> On Wed, Jan 8, 2020 at 1:22 PM Richard Purdie
> <richard.purdie@linuxfoundation.org> wrote:
> >
> > On Wed, 2020-01-08 at 14:27 +0100, Alexander Kanavin wrote:
> > > Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
> > > ---
> > >  ...-tests-do-not-run-target-executables.patch | 33
> > > +++++++++++++++++++
> > >  .../libcap/{libcap_2.27.bb => libcap_2.30.bb} |  5 +--
> > >  2 files changed, 36 insertions(+), 2 deletions(-)
> > >  create mode 100644 meta/recipes-support/libcap/files/0002-tests-do-
> > > not-run-target-executables.patch
> > >  rename meta/recipes-support/libcap/{libcap_2.27.bb =>
> > > libcap_2.30.bb} (90%)
> >
> > I think this causes iputils to fail to build:
> >
> > https://autobuilder.yoctoproject.org/typhoon/#/builders/104/builds/331
> 
> also
> https://errors.yoctoproject.org/Errors/Details/305696/

https://github.com/iputils/iputils/issues/246

cu
Adrian


^ permalink raw reply	[flat|nested] 64+ messages in thread

* Re: [PATCH 14/28] libcap: update to 2.30
  2020-01-09 11:46       ` Adrian Bunk
@ 2020-01-09 13:16         ` Alexander Kanavin
  0 siblings, 0 replies; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-09 13:16 UTC (permalink / raw)
  To: Adrian Bunk; +Cc: Patches and discussions about the oe-core layer

[-- Attachment #1: Type: text/plain, Size: 1351 bytes --]

Thanks, this is now resolved.

Alex

On Thu, 9 Jan 2020 at 12:46, Adrian Bunk <bunk@stusta.de> wrote:

> On Wed, Jan 08, 2020 at 05:31:45PM -0800, Khem Raj wrote:
> > On Wed, Jan 8, 2020 at 1:22 PM Richard Purdie
> > <richard.purdie@linuxfoundation.org> wrote:
> > >
> > > On Wed, 2020-01-08 at 14:27 +0100, Alexander Kanavin wrote:
> > > > Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
> > > > ---
> > > >  ...-tests-do-not-run-target-executables.patch | 33
> > > > +++++++++++++++++++
> > > >  .../libcap/{libcap_2.27.bb => libcap_2.30.bb} |  5 +--
> > > >  2 files changed, 36 insertions(+), 2 deletions(-)
> > > >  create mode 100644 meta/recipes-support/libcap/files/0002-tests-do-
> > > > not-run-target-executables.patch
> > > >  rename meta/recipes-support/libcap/{libcap_2.27.bb =>
> > > > libcap_2.30.bb} (90%)
> > >
> > > I think this causes iputils to fail to build:
> > >
> > > https://autobuilder.yoctoproject.org/typhoon/#/builders/104/builds/331
> >
> > also
> > https://errors.yoctoproject.org/Errors/Details/305696/
>
> https://github.com/iputils/iputils/issues/246
>
> cu
> Adrian
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
>

[-- Attachment #2: Type: text/html, Size: 2799 bytes --]

^ permalink raw reply	[flat|nested] 64+ messages in thread

* Re: [PATCH 11/28] ifupdown: update 0.8.22 -> 0.8.35
  2020-01-08 21:23   ` Richard Purdie
@ 2020-01-09 13:47     ` Alexander Kanavin
  2020-01-09 13:54       ` Alexander Kanavin
  0 siblings, 1 reply; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-09 13:47 UTC (permalink / raw)
  To: Richard Purdie; +Cc: OE-core

[-- Attachment #1: Type: text/plain, Size: 1115 bytes --]

On Wed, 8 Jan 2020 at 22:23, Richard Purdie <
richard.purdie@linuxfoundation.org> wrote:

> On Wed, 2020-01-08 at 14:27 +0100, Alexander Kanavin wrote:
> > Remove inet-6-.defn-fix-inverted-checks-for-loopback.patch as
> > it is difficult to rebase and not clear if still necessary.
> >
> > Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
> > ---
> >  ...efn-fix-inverted-checks-for-loopback.patch | 403 ----------------
> > --
> >  ...{ifupdown_0.8.22.bb => ifupdown_0.8.35.bb} |  11 +-
> >  2 files changed, 5 insertions(+), 409 deletions(-)
> >  delete mode 100644 meta/recipes-core/ifupdown/files/inet-6-.defn-
> > fix-inverted-checks-for-loopback.patch
> >  rename meta/recipes-core/ifupdown/{ifupdown_0.8.22.bb =>
> > ifupdown_0.8.35.bb} (83%)
>
>
> http://errors.yoctoproject.org/Errors/Details/305656/
>

I had a closer look at how and where ifupdown recipe is used, and from what
I see it isn't:
every configuration is relying on busybox to provide the same utilities.
That's why the failure is seen only in world builds :)

Should we drop the ifupdown recipe?

Alex

[-- Attachment #2: Type: text/html, Size: 2084 bytes --]

^ permalink raw reply	[flat|nested] 64+ messages in thread

* Re: [PATCH 11/28] ifupdown: update 0.8.22 -> 0.8.35
  2020-01-09 13:47     ` Alexander Kanavin
@ 2020-01-09 13:54       ` Alexander Kanavin
  2020-01-09 13:55         ` Richard Purdie
  0 siblings, 1 reply; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-09 13:54 UTC (permalink / raw)
  To: Richard Purdie; +Cc: Tom Rini, OE-core

[-- Attachment #1: Type: text/plain, Size: 848 bytes --]

On Thu, 9 Jan 2020 at 14:47, Alexander Kanavin <alex.kanavin@gmail.com>
wrote:

>
> I had a closer look at how and where ifupdown recipe is used, and from
> what I see it isn't:
> every configuration is relying on busybox to provide the same utilities.
> That's why the failure is seen only in world builds :)
>
> Should we drop the ifupdown recipe?
>

A followup: there is a busybox-free set put together in
meta/recipes-extended/packagegroups/packagegroup-core-base-utils.bb
which includes ifupdown only if systemd is not in use.

However that packagegroup is not used in any images, and the only test for
it is in lib/oeqa/selftest/cases/imagefeatures.py
which does enable systemd, so that doesn't pull in ifupdown either.

This means ifupdown isn't runtime-tested now, and probably hasn't been
tested for a while.

Alex

[-- Attachment #2: Type: text/html, Size: 1520 bytes --]

^ permalink raw reply	[flat|nested] 64+ messages in thread

* Re: [PATCH 11/28] ifupdown: update 0.8.22 -> 0.8.35
  2020-01-09 13:54       ` Alexander Kanavin
@ 2020-01-09 13:55         ` Richard Purdie
  2020-01-09 14:36           ` Alexander Kanavin
  0 siblings, 1 reply; 64+ messages in thread
From: Richard Purdie @ 2020-01-09 13:55 UTC (permalink / raw)
  To: Alexander Kanavin; +Cc: Tom Rini, OE-core

On Thu, 2020-01-09 at 14:54 +0100, Alexander Kanavin wrote:
> On Thu, 9 Jan 2020 at 14:47, Alexander Kanavin <
> alex.kanavin@gmail.com> wrote:
> > I had a closer look at how and where ifupdown recipe is used, and
> > from what I see it isn't:
> > every configuration is relying on busybox to provide the same
> > utilities. That's why the failure is seen only in world builds :)
> > 
> > Should we drop the ifupdown recipe?
> > 
> 
> A followup: there is a busybox-free set put together in meta/recipes-
> extended/packagegroups/packagegroup-core-base-utils.bb
> which includes ifupdown only if systemd is not in use.
> 
> However that packagegroup is not used in any images, and the only
> test for it is in lib/oeqa/selftest/cases/imagefeatures.py
> which does enable systemd, so that doesn't pull in ifupdown either.
> 
> This means ifupdown isn't runtime-tested now, and probably hasn't
> been tested for a while.

That may be but I think this is an oversight, not an intention and we
should support busybox-free images...

Cheers,

Richard



^ permalink raw reply	[flat|nested] 64+ messages in thread

* Re: [PATCH 11/28] ifupdown: update 0.8.22 -> 0.8.35
  2020-01-09 13:55         ` Richard Purdie
@ 2020-01-09 14:36           ` Alexander Kanavin
  2020-01-09 14:44             ` Tom Rini
  2020-01-15  1:10             ` Randy MacLeod
  0 siblings, 2 replies; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-09 14:36 UTC (permalink / raw)
  To: Richard Purdie; +Cc: Tom Rini, OE-core

[-- Attachment #1: Type: text/plain, Size: 341 bytes --]

On Thu, 9 Jan 2020 at 14:55, Richard Purdie <
richard.purdie@linuxfoundation.org> wrote:

>
> That may be but I think this is an oversight, not an intention and we
> should support busybox-free images...
>

Right, I'll fix the build, but the implementation of runtime testing is up
to people who need this kind of feature.

Alex

[-- Attachment #2: Type: text/html, Size: 663 bytes --]

^ permalink raw reply	[flat|nested] 64+ messages in thread

* Re: [PATCH 11/28] ifupdown: update 0.8.22 -> 0.8.35
  2020-01-09 14:36           ` Alexander Kanavin
@ 2020-01-09 14:44             ` Tom Rini
  2020-01-09 14:47               ` Alexander Kanavin
  2020-01-15  1:10             ` Randy MacLeod
  1 sibling, 1 reply; 64+ messages in thread
From: Tom Rini @ 2020-01-09 14:44 UTC (permalink / raw)
  To: Alexander Kanavin; +Cc: OE-core

[-- Attachment #1: Type: text/plain, Size: 576 bytes --]

On Thu, Jan 09, 2020 at 03:36:08PM +0100, Alexander Kanavin wrote:
> On Thu, 9 Jan 2020 at 14:55, Richard Purdie <
> richard.purdie@linuxfoundation.org> wrote:
> 
> >
> > That may be but I think this is an oversight, not an intention and we
> > should support busybox-free images...
> >
> 
> Right, I'll fix the build, but the implementation of runtime testing is up
> to people who need this kind of feature.

The problem here would have been caught with systemd-free and
busybox-free being a check in lib/oeqa/selftest/cases/imagefeatures.py
yes?

-- 
Tom

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 849 bytes --]

^ permalink raw reply	[flat|nested] 64+ messages in thread

* Re: [PATCH 11/28] ifupdown: update 0.8.22 -> 0.8.35
  2020-01-09 14:44             ` Tom Rini
@ 2020-01-09 14:47               ` Alexander Kanavin
  2020-01-09 15:01                 ` Tom Rini
  0 siblings, 1 reply; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-09 14:47 UTC (permalink / raw)
  To: Tom Rini; +Cc: OE-core

[-- Attachment #1: Type: text/plain, Size: 346 bytes --]

On Thu, 9 Jan 2020 at 15:44, Tom Rini <trini@konsulko.com> wrote:

> The problem here would have been caught with systemd-free and
> busybox-free being a check in lib/oeqa/selftest/cases/imagefeatures.py
> yes?
>

Yes, and you'd also need to do -c testimage on the image to make sure it
boots and has the network up and working.

Alex

[-- Attachment #2: Type: text/html, Size: 653 bytes --]

^ permalink raw reply	[flat|nested] 64+ messages in thread

* Re: [PATCH 11/28] ifupdown: update 0.8.22 -> 0.8.35
  2020-01-09 14:47               ` Alexander Kanavin
@ 2020-01-09 15:01                 ` Tom Rini
  2020-01-09 15:33                   ` Alexander Kanavin
  0 siblings, 1 reply; 64+ messages in thread
From: Tom Rini @ 2020-01-09 15:01 UTC (permalink / raw)
  To: Alexander Kanavin; +Cc: OE-core

[-- Attachment #1: Type: text/plain, Size: 579 bytes --]

On Thu, Jan 09, 2020 at 03:47:24PM +0100, Alexander Kanavin wrote:
> On Thu, 9 Jan 2020 at 15:44, Tom Rini <trini@konsulko.com> wrote:
> 
> > The problem here would have been caught with systemd-free and
> > busybox-free being a check in lib/oeqa/selftest/cases/imagefeatures.py
> > yes?
> 
> Yes, and you'd also need to do -c testimage on the image to make sure it
> boots and has the network up and working.

Yes, but I'm thinking in terms of what to change / add so that it would
be part of the standard suite.  busybox-free but systemd is today, yes?

-- 
Tom

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 849 bytes --]

^ permalink raw reply	[flat|nested] 64+ messages in thread

* Re: [PATCH 05/28] python3: update to 3.8.1
  2020-01-08 23:02   ` Richard Purdie
  2020-01-09  1:23     ` Khem Raj
@ 2020-01-09 15:31     ` Alexander Kanavin
  2020-01-09 19:28       ` André Draszik
  1 sibling, 1 reply; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-09 15:31 UTC (permalink / raw)
  To: Richard Purdie; +Cc: OE-core

[-- Attachment #1: Type: text/plain, Size: 1963 bytes --]

On Thu, 9 Jan 2020 at 00:02, Richard Purdie <
richard.purdie@linuxfoundation.org> wrote:

> On Wed, 2020-01-08 at 14:27 +0100, Alexander Kanavin wrote:
> > Drop backports, rebase other patches.
> >
> > One patch I wasn't able to rebase as upstream code changed too much:
> > 0003-setup.py-pass-missing-libraries-to-Extension-for-mul.patch
> > Please determine if it is still needed, produce a new version,
> > and work with upstream to get it merged.
> >
> > 0001-main.c-if-OEPYTHON3HOME-is-set-use-instead-of-PYTHON.patch
> > is removed as the use case (allowing python 2 and 3 to coexist
> > in SDKs) is no longer relevant with Python 2.x reaching end of line
> > and upstream has refactored the code making a rebase difficult.
> > If needed, please re-add the patch to py2, rather than py3.
> >
> > Python 3.8 no longer adds "m" to "3.8" in paths, so adjust the
> > recipes
> > and classes accordingly.
> >
> > The manifest for the 3.8.0 version is updated; particularly pkgutil
> > module is now packaged in -core (as other things in core need it);
> > this also necessitates allowing empty -pkgutil package to avoid
> > breakage across layers.
>
>
> https://autobuilder.yoctoproject.org/typhoon/#/builders/65/builds/1442
>

This is a weird one, and I can't reproduce it locally. Hints?

File: '/home/pokybuild/yocto-worker/beaglebone/build/meta/lib/oe/sstatesig.py',
lineno: 544, function: process
     0540:                else:
     0541:                    add_perm(stat.S_IXOTH, 'x')
     0542:
     0543:                if include_owners:
 *** 0544:                    update_hash(" %10s" %
pwd.getpwuid(s.st_uid).pw_name)
     0545:                    update_hash(" %10s" %
grp.getgrgid(s.st_gid).gr_name)
     0546:
     0547:                update_hash(" ")
     0548:                if stat.S_ISBLK(s.st_mode) or stat.S_ISCHR(s.st_mode):
Exception: KeyError: 'getpwuid(): uid not found: 6000'


Alex

[-- Attachment #2: Type: text/html, Size: 4479 bytes --]

^ permalink raw reply	[flat|nested] 64+ messages in thread

* Re: [PATCH 11/28] ifupdown: update 0.8.22 -> 0.8.35
  2020-01-09 15:01                 ` Tom Rini
@ 2020-01-09 15:33                   ` Alexander Kanavin
  2020-01-09 15:55                     ` Tom Rini
  0 siblings, 1 reply; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-09 15:33 UTC (permalink / raw)
  To: Tom Rini; +Cc: OE-core

[-- Attachment #1: Type: text/plain, Size: 702 bytes --]

On Thu, 9 Jan 2020 at 16:01, Tom Rini <trini@konsulko.com> wrote:

> On Thu, Jan 09, 2020 at 03:47:24PM +0100, Alexander Kanavin wrote:
> > On Thu, 9 Jan 2020 at 15:44, Tom Rini <trini@konsulko.com> wrote:
> >
> > > The problem here would have been caught with systemd-free and
> > > busybox-free being a check in lib/oeqa/selftest/cases/imagefeatures.py
> > > yes?
> >
> > Yes, and you'd also need to do -c testimage on the image to make sure it
> > boots and has the network up and working.
>
> Yes, but I'm thinking in terms of what to change / add so that it would
> be part of the standard suite.  busybox-free but systemd is today, yes?
>

I can't parse your question :)

Alex

[-- Attachment #2: Type: text/html, Size: 1135 bytes --]

^ permalink raw reply	[flat|nested] 64+ messages in thread

* Re: [PATCH 11/28] ifupdown: update 0.8.22 -> 0.8.35
  2020-01-09 15:33                   ` Alexander Kanavin
@ 2020-01-09 15:55                     ` Tom Rini
  2020-01-09 16:12                       ` Alexander Kanavin
  0 siblings, 1 reply; 64+ messages in thread
From: Tom Rini @ 2020-01-09 15:55 UTC (permalink / raw)
  To: Alexander Kanavin; +Cc: OE-core

[-- Attachment #1: Type: text/plain, Size: 1085 bytes --]

On Thu, Jan 09, 2020 at 04:33:58PM +0100, Alexander Kanavin wrote:
> On Thu, 9 Jan 2020 at 16:01, Tom Rini <trini@konsulko.com> wrote:
> 
> > On Thu, Jan 09, 2020 at 03:47:24PM +0100, Alexander Kanavin wrote:
> > > On Thu, 9 Jan 2020 at 15:44, Tom Rini <trini@konsulko.com> wrote:
> > >
> > > > The problem here would have been caught with systemd-free and
> > > > busybox-free being a check in lib/oeqa/selftest/cases/imagefeatures.py
> > > > yes?
> > >
> > > Yes, and you'd also need to do -c testimage on the image to make sure it
> > > boots and has the network up and working.
> >
> > Yes, but I'm thinking in terms of what to change / add so that it would
> > be part of the standard suite.  busybox-free but systemd is today, yes?
> 
> I can't parse your question :)

I have to admit I'm guessing at what level of automated run-time testing
we normally have today.  We sanity test a sysvinit+busybox image with
networking, yes?  If so, we also do that on systemd and I assume with
what I put for the systemd+busybox-free we also do there, yes?

-- 
Tom

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 849 bytes --]

^ permalink raw reply	[flat|nested] 64+ messages in thread

* Re: [PATCH 11/28] ifupdown: update 0.8.22 -> 0.8.35
  2020-01-09 15:55                     ` Tom Rini
@ 2020-01-09 16:12                       ` Alexander Kanavin
  2020-01-10 15:00                         ` Adrian Bunk
  0 siblings, 1 reply; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-09 16:12 UTC (permalink / raw)
  To: Tom Rini; +Cc: OE-core

[-- Attachment #1: Type: text/plain, Size: 638 bytes --]

On Thu, 9 Jan 2020 at 16:55, Tom Rini <trini@konsulko.com> wrote:

> I have to admit I'm guessing at what level of automated run-time testing
> we normally have today.  We sanity test a sysvinit+busybox image with
> networking, yes?  If so, we also do that on systemd and I assume with
> what I put for the systemd+busybox-free we also do there, yes?
>

I believe we test sysvinit+busybox, and systemd+busybox at runtime via poky
and poky-alt distro configs.

We also test systemd+busybox-free core-base-utils (without ifupdown), but
only as a build (no runtime tests). See
lib/oeqa/selftest/cases/imagefeatures.py.

Alex

[-- Attachment #2: Type: text/html, Size: 970 bytes --]

^ permalink raw reply	[flat|nested] 64+ messages in thread

* Re: [PATCH 05/28] python3: update to 3.8.1
  2020-01-09 15:31     ` Alexander Kanavin
@ 2020-01-09 19:28       ` André Draszik
  2020-01-09 19:37         ` André Draszik
  0 siblings, 1 reply; 64+ messages in thread
From: André Draszik @ 2020-01-09 19:28 UTC (permalink / raw)
  To: OE-core

On Thu, 2020-01-09 at 16:31 +0100, Alexander Kanavin wrote:
> On Thu, 9 Jan 2020 at 00:02, Richard Purdie <richard.purdie@linuxfoundation.org> wrote:
> > On Wed, 2020-01-08 at 14:27 +0100, Alexander Kanavin wrote:
> > > Drop backports, rebase other patches.
> > > 
> > > One patch I wasn't able to rebase as upstream code changed too much:
> > > 0003-setup.py-pass-missing-libraries-to-Extension-for-mul.patch
> > > Please determine if it is still needed, produce a new version,
> > > and work with upstream to get it merged.
> > > 
> > > 0001-main.c-if-OEPYTHON3HOME-is-set-use-instead-of-PYTHON.patch
> > > is removed as the use case (allowing python 2 and 3 to coexist
> > > in SDKs) is no longer relevant with Python 2.x reaching end of line
> > > and upstream has refactored the code making a rebase difficult.
> > > If needed, please re-add the patch to py2, rather than py3.
> > > 
> > > Python 3.8 no longer adds "m" to "3.8" in paths, so adjust the
> > > recipes
> > > and classes accordingly.
> > > 
> > > The manifest for the 3.8.0 version is updated; particularly pkgutil
> > > module is now packaged in -core (as other things in core need it);
> > > this also necessitates allowing empty -pkgutil package to avoid
> > > breakage across layers.
> > 
> > 
> > https://autobuilder.yoctoproject.org/typhoon/#/builders/65/builds/1442
> 
> This is a weird one, and I can't reproduce it locally. Hints?
> 
> File: '/home/pokybuild/yocto-worker/beaglebone/build/meta/lib/oe/sstatesig.py', lineno: 544, function: process
>      0540:                else:
>      0541:                    add_perm(stat.S_IXOTH, 'x')
>      0542:
>      0543:                if include_owners:
>  *** 0544:                    update_hash(" %10s" % pwd.getpwuid(s.st_uid).pw_name)
>      0545:                    update_hash(" %10s" % grp.getgrgid(s.st_gid).gr_name)
>      0546:
>      0547:                update_hash(" ")
>      0548:                if stat.S_ISBLK(s.st_mode) or stat.S_ISCHR(s.st_mode):
> Exception: KeyError: 'getpwuid(): uid not found: 6000'

I believe this typically means that the file is owned by the user running bitbake.

It could be useful to add the file in question to the exception trace, for easier
debug / fixing.

This will happen if
* files were installed outside do_install() in a different task
  that is not running under pseudo (fakeroot), or alternatively:
* cp without --no-preserve=ownership
* tar without --no-same-owner
* cpio without --no-preserve-owner


HTH,
A.




^ permalink raw reply	[flat|nested] 64+ messages in thread

* Re: [PATCH 05/28] python3: update to 3.8.1
  2020-01-09 19:28       ` André Draszik
@ 2020-01-09 19:37         ` André Draszik
  2020-01-09 19:49           ` Alexander Kanavin
  0 siblings, 1 reply; 64+ messages in thread
From: André Draszik @ 2020-01-09 19:37 UTC (permalink / raw)
  To: OE-core

On Thu, 2020-01-09 at 19:28 +0000, André Draszik wrote:
> On Thu, 2020-01-09 at 16:31 +0100, Alexander Kanavin wrote:
> > On Thu, 9 Jan 2020 at 00:02, Richard Purdie <richard.purdie@linuxfoundation.org> wrote:
> > > On Wed, 2020-01-08 at 14:27 +0100, Alexander Kanavin wrote:
> > > > Drop backports, rebase other patches.
> > > > 
> > > > One patch I wasn't able to rebase as upstream code changed too much:
> > > > 0003-setup.py-pass-missing-libraries-to-Extension-for-mul.patch
> > > > Please determine if it is still needed, produce a new version,
> > > > and work with upstream to get it merged.
> > > > 
> > > > 0001-main.c-if-OEPYTHON3HOME-is-set-use-instead-of-PYTHON.patch
> > > > is removed as the use case (allowing python 2 and 3 to coexist
> > > > in SDKs) is no longer relevant with Python 2.x reaching end of line
> > > > and upstream has refactored the code making a rebase difficult.
> > > > If needed, please re-add the patch to py2, rather than py3.
> > > > 
> > > > Python 3.8 no longer adds "m" to "3.8" in paths, so adjust the
> > > > recipes
> > > > and classes accordingly.
> > > > 
> > > > The manifest for the 3.8.0 version is updated; particularly pkgutil
> > > > module is now packaged in -core (as other things in core need it);
> > > > this also necessitates allowing empty -pkgutil package to avoid
> > > > breakage across layers.
> > > 
> > > https://autobuilder.yoctoproject.org/typhoon/#/builders/65/builds/1442
> > 
> > This is a weird one, and I can't reproduce it locally. Hints?
> > 
> > File: '/home/pokybuild/yocto-worker/beaglebone/build/meta/lib/oe/sstatesig.py', lineno: 544, function: process
> >      0540:                else:
> >      0541:                    add_perm(stat.S_IXOTH, 'x')
> >      0542:
> >      0543:                if include_owners:
> >  *** 0544:                    update_hash(" %10s" % pwd.getpwuid(s.st_uid).pw_name)
> >      0545:                    update_hash(" %10s" % grp.getgrgid(s.st_gid).gr_name)
> >      0546:
> >      0547:                update_hash(" ")
> >      0548:                if stat.S_ISBLK(s.st_mode) or stat.S_ISCHR(s.st_mode):
> > Exception: KeyError: 'getpwuid(): uid not found: 6000'
> 
> I believe this typically means that the file is owned by the user running bitbake.

... or more generally that it's owned by a user not known inside the build environment.

A
 
> 
> It could be useful to add the file in question to the exception trace, for easier
> debug / fixing.
> 
> This will happen if
> * files were installed outside do_install() in a different task
>   that is not running under pseudo (fakeroot), or alternatively:
> * cp without --no-preserve=ownership
> * tar without --no-same-owner
> * cpio without --no-preserve-owner
> 
> 
> HTH,
> A.
> 
> 



^ permalink raw reply	[flat|nested] 64+ messages in thread

* Re: [PATCH 05/28] python3: update to 3.8.1
  2020-01-09 19:37         ` André Draszik
@ 2020-01-09 19:49           ` Alexander Kanavin
  2020-01-09 22:14             ` Richard Purdie
  0 siblings, 1 reply; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-09 19:49 UTC (permalink / raw)
  To: André Draszik; +Cc: OE-core

[-- Attachment #1: Type: text/plain, Size: 3330 bytes --]

The problem is, I couldn't reproduce this locally at all. Random glitch?

Alex

On Thu, 9 Jan 2020 at 20:37, André Draszik <git@andred.net> wrote:

> On Thu, 2020-01-09 at 19:28 +0000, André Draszik wrote:
> > On Thu, 2020-01-09 at 16:31 +0100, Alexander Kanavin wrote:
> > > On Thu, 9 Jan 2020 at 00:02, Richard Purdie <
> richard.purdie@linuxfoundation.org> wrote:
> > > > On Wed, 2020-01-08 at 14:27 +0100, Alexander Kanavin wrote:
> > > > > Drop backports, rebase other patches.
> > > > >
> > > > > One patch I wasn't able to rebase as upstream code changed too
> much:
> > > > > 0003-setup.py-pass-missing-libraries-to-Extension-for-mul.patch
> > > > > Please determine if it is still needed, produce a new version,
> > > > > and work with upstream to get it merged.
> > > > >
> > > > > 0001-main.c-if-OEPYTHON3HOME-is-set-use-instead-of-PYTHON.patch
> > > > > is removed as the use case (allowing python 2 and 3 to coexist
> > > > > in SDKs) is no longer relevant with Python 2.x reaching end of line
> > > > > and upstream has refactored the code making a rebase difficult.
> > > > > If needed, please re-add the patch to py2, rather than py3.
> > > > >
> > > > > Python 3.8 no longer adds "m" to "3.8" in paths, so adjust the
> > > > > recipes
> > > > > and classes accordingly.
> > > > >
> > > > > The manifest for the 3.8.0 version is updated; particularly pkgutil
> > > > > module is now packaged in -core (as other things in core need it);
> > > > > this also necessitates allowing empty -pkgutil package to avoid
> > > > > breakage across layers.
> > > >
> > > >
> https://autobuilder.yoctoproject.org/typhoon/#/builders/65/builds/1442
> > >
> > > This is a weird one, and I can't reproduce it locally. Hints?
> > >
> > > File:
> '/home/pokybuild/yocto-worker/beaglebone/build/meta/lib/oe/sstatesig.py',
> lineno: 544, function: process
> > >      0540:                else:
> > >      0541:                    add_perm(stat.S_IXOTH, 'x')
> > >      0542:
> > >      0543:                if include_owners:
> > >  *** 0544:                    update_hash(" %10s" %
> pwd.getpwuid(s.st_uid).pw_name)
> > >      0545:                    update_hash(" %10s" %
> grp.getgrgid(s.st_gid).gr_name)
> > >      0546:
> > >      0547:                update_hash(" ")
> > >      0548:                if stat.S_ISBLK(s.st_mode) or
> stat.S_ISCHR(s.st_mode):
> > > Exception: KeyError: 'getpwuid(): uid not found: 6000'
> >
> > I believe this typically means that the file is owned by the user
> running bitbake.
>
> ... or more generally that it's owned by a user not known inside the build
> environment.
>
> A
>
> >
> > It could be useful to add the file in question to the exception trace,
> for easier
> > debug / fixing.
> >
> > This will happen if
> > * files were installed outside do_install() in a different task
> >   that is not running under pseudo (fakeroot), or alternatively:
> > * cp without --no-preserve=ownership
> > * tar without --no-same-owner
> > * cpio without --no-preserve-owner
> >
> >
> > HTH,
> > A.
> >
> >
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
>

[-- Attachment #2: Type: text/html, Size: 4750 bytes --]

^ permalink raw reply	[flat|nested] 64+ messages in thread

* Re: [PATCH 05/28] python3: update to 3.8.1
  2020-01-09 19:49           ` Alexander Kanavin
@ 2020-01-09 22:14             ` Richard Purdie
  2020-01-13 14:15               ` Alexander Kanavin
  0 siblings, 1 reply; 64+ messages in thread
From: Richard Purdie @ 2020-01-09 22:14 UTC (permalink / raw)
  To: Alexander Kanavin, André Draszik; +Cc: OE-core

On Thu, 2020-01-09 at 20:49 +0100, Alexander Kanavin wrote:
> The problem is, I couldn't reproduce this locally at all. Random
> glitch?

No, its happened on multiple workers and there should be a pattern, we
just don't understand it yet :(. I don't have ideas right now although
the build user is 1000 on many machines, 6000 is a minority.

Cheers,

Richard



^ permalink raw reply	[flat|nested] 64+ messages in thread

* Re: [PATCH 07/28] acl/attr: update to latest upstream releases
  2020-01-08 13:27 ` [PATCH 07/28] acl/attr: update to latest upstream releases Alexander Kanavin
  2020-01-09  1:30   ` Khem Raj
@ 2020-01-10 11:02   ` Richard Purdie
  2020-01-10 14:48     ` Alexander Kanavin
  1 sibling, 1 reply; 64+ messages in thread
From: Richard Purdie @ 2020-01-10 11:02 UTC (permalink / raw)
  To: Alexander Kanavin, openembedded-core

On Wed, 2020-01-08 at 14:27 +0100, Alexander Kanavin wrote:
> The latest release use standard autotools, so drop all
> the build system related hacks and patches.
> 
> Ptests have been rewritten, with 100% pass rate for both.
> 
> Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
> ---
>  .../0001-test-patch-out-failing-bits.patch    |  63 ++
>  ...dcode-the-build-path-into-a-helper-l.patch |  24 +
>  ...file-libacl-should-depend-on-include.patch |  51 --
>  ...-order-of-expected-output-of-getfacl.patch | 198 ------
>  meta/recipes-support/attr/acl/configure.ac    |  49 --
>  meta/recipes-support/attr/acl/run-ptest       |  60 +-
>  .../acl/test-fix-directory-permissions.patch  |  37 -
>  .../test-fix-insufficient-quoting-of.patch    | 100 ---
>  ...-SELinux-machines-for-root-testcases.patch |  84 ---
>  meta/recipes-support/attr/acl_2.2.52.bb       |  52 --
>  meta/recipes-support/attr/acl_2.2.53.bb       |  64 ++
>  meta/recipes-support/attr/attr.inc            |  41 +-
>  .../0001-Use-stdint-types-consistently.patch  |  69 --
>  .../attr/attr/attr-Missing-configure.ac.patch |  63 --
>  .../attr/attr/dont-use-decl-macros.patch      |  56 --
>  meta/recipes-support/attr/attr/run-ptest      |   3 +
>  meta/recipes-support/attr/attr_2.4.47.bb      |  15 -
>  meta/recipes-support/attr/attr_2.4.48.bb      |   6 +
>  meta/recipes-support/attr/ea-acl.inc          |  52 --
>  ...option-to-enable-disable-static-libr.patch |  70 --
>  ...e-attr.5-man-page-moved-to-man-pages.patch | 240 -------
> 

Fails build reproducibility in ptest:

https://autobuilder.yoctoproject.org/typhoon/#/builders/86/builds/610

Cheers,

Richard



^ permalink raw reply	[flat|nested] 64+ messages in thread

* Re: [PATCH 07/28] acl/attr: update to latest upstream releases
  2020-01-10 11:02   ` Richard Purdie
@ 2020-01-10 14:48     ` Alexander Kanavin
  0 siblings, 0 replies; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-10 14:48 UTC (permalink / raw)
  To: Richard Purdie; +Cc: OE-core

[-- Attachment #1: Type: text/plain, Size: 1971 bytes --]

This was because ptests shipped a Makefile without stripping build paths
out. I'll resend with a fix.

Alex

On Fri, 10 Jan 2020 at 12:02, Richard Purdie <
richard.purdie@linuxfoundation.org> wrote:

> On Wed, 2020-01-08 at 14:27 +0100, Alexander Kanavin wrote:
> > The latest release use standard autotools, so drop all
> > the build system related hacks and patches.
> >
> > Ptests have been rewritten, with 100% pass rate for both.
> >
> > Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
> > ---
> >  .../0001-test-patch-out-failing-bits.patch    |  63 ++
> >  ...dcode-the-build-path-into-a-helper-l.patch |  24 +
> >  ...file-libacl-should-depend-on-include.patch |  51 --
> >  ...-order-of-expected-output-of-getfacl.patch | 198 ------
> >  meta/recipes-support/attr/acl/configure.ac    |  49 --
> >  meta/recipes-support/attr/acl/run-ptest       |  60 +-
> >  .../acl/test-fix-directory-permissions.patch  |  37 -
> >  .../test-fix-insufficient-quoting-of.patch    | 100 ---
> >  ...-SELinux-machines-for-root-testcases.patch |  84 ---
> >  meta/recipes-support/attr/acl_2.2.52.bb       |  52 --
> >  meta/recipes-support/attr/acl_2.2.53.bb       |  64 ++
> >  meta/recipes-support/attr/attr.inc            |  41 +-
> >  .../0001-Use-stdint-types-consistently.patch  |  69 --
> >  .../attr/attr/attr-Missing-configure.ac.patch |  63 --
> >  .../attr/attr/dont-use-decl-macros.patch      |  56 --
> >  meta/recipes-support/attr/attr/run-ptest      |   3 +
> >  meta/recipes-support/attr/attr_2.4.47.bb      |  15 -
> >  meta/recipes-support/attr/attr_2.4.48.bb      |   6 +
> >  meta/recipes-support/attr/ea-acl.inc          |  52 --
> >  ...option-to-enable-disable-static-libr.patch |  70 --
> >  ...e-attr.5-man-page-moved-to-man-pages.patch | 240 -------
> >
>
> Fails build reproducibility in ptest:
>
> https://autobuilder.yoctoproject.org/typhoon/#/builders/86/builds/610
>
> Cheers,
>
> Richard
>
>

[-- Attachment #2: Type: text/html, Size: 3077 bytes --]

^ permalink raw reply	[flat|nested] 64+ messages in thread

* Re: [PATCH 11/28] ifupdown: update 0.8.22 -> 0.8.35
  2020-01-09 16:12                       ` Alexander Kanavin
@ 2020-01-10 15:00                         ` Adrian Bunk
  2020-01-10 15:12                           ` Alexander Kanavin
  0 siblings, 1 reply; 64+ messages in thread
From: Adrian Bunk @ 2020-01-10 15:00 UTC (permalink / raw)
  To: Alexander Kanavin; +Cc: Tom Rini, OE-core

On Thu, Jan 09, 2020 at 05:12:58PM +0100, Alexander Kanavin wrote:
> On Thu, 9 Jan 2020 at 16:55, Tom Rini <trini@konsulko.com> wrote:
> 
> > I have to admit I'm guessing at what level of automated run-time testing
> > we normally have today.  We sanity test a sysvinit+busybox image with
> > networking, yes?  If so, we also do that on systemd and I assume with
> > what I put for the systemd+busybox-free we also do there, yes?
> >
> 
> I believe we test sysvinit+busybox, and systemd+busybox at runtime via poky
> and poky-alt distro configs.
> 
> We also test systemd+busybox-free core-base-utils (without ifupdown), but
> only as a build (no runtime tests). See
> lib/oeqa/selftest/cases/imagefeatures.py.

Is musl runtime tested at all?

ifupdown is one of these recipes where a musl build error was "fixed" 
with a patch that makes something do the wrong thing at runtime when
using musl.

> Alex

cu
Adrian


^ permalink raw reply	[flat|nested] 64+ messages in thread

* Re: [PATCH 11/28] ifupdown: update 0.8.22 -> 0.8.35
  2020-01-10 15:00                         ` Adrian Bunk
@ 2020-01-10 15:12                           ` Alexander Kanavin
  0 siblings, 0 replies; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-10 15:12 UTC (permalink / raw)
  To: Adrian Bunk; +Cc: Tom Rini, OE-core

[-- Attachment #1: Type: text/plain, Size: 387 bytes --]

On Fri, 10 Jan 2020 at 16:00, Adrian Bunk <bunk@stusta.de> wrote:

> Is musl runtime tested at all?
>
> ifupdown is one of these recipes where a musl build error was "fixed"
> with a patch that makes something do the wrong thing at runtime when
> using musl.
>

musl runtime is tested, just not with ifupdown, it's replaced by busybox in
all of the testing scenarios.

Alex

[-- Attachment #2: Type: text/html, Size: 706 bytes --]

^ permalink raw reply	[flat|nested] 64+ messages in thread

* Re: [PATCH 05/28] python3: update to 3.8.1
  2020-01-09 22:14             ` Richard Purdie
@ 2020-01-13 14:15               ` Alexander Kanavin
  2020-01-14 10:23                 ` Richard Purdie
  0 siblings, 1 reply; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-13 14:15 UTC (permalink / raw)
  To: Richard Purdie; +Cc: OE-core

[-- Attachment #1: Type: text/plain, Size: 547 bytes --]

On Thu, 9 Jan 2020 at 23:14, Richard Purdie <
richard.purdie@linuxfoundation.org> wrote:

> On Thu, 2020-01-09 at 20:49 +0100, Alexander Kanavin wrote:
> > The problem is, I couldn't reproduce this locally at all. Random
> > glitch?
>
> No, its happened on multiple workers and there should be a pattern, we
> just don't understand it yet :(. I don't have ideas right now although
> the build user is 1000 on many machines, 6000 is a minority.
>

I guess we'll have to save the build folder on next failure and inspect
that.

Alex

[-- Attachment #2: Type: text/html, Size: 895 bytes --]

^ permalink raw reply	[flat|nested] 64+ messages in thread

* Re: [PATCH 05/28] python3: update to 3.8.1
  2020-01-13 14:15               ` Alexander Kanavin
@ 2020-01-14 10:23                 ` Richard Purdie
  2020-01-14 12:19                   ` Alexander Kanavin
  0 siblings, 1 reply; 64+ messages in thread
From: Richard Purdie @ 2020-01-14 10:23 UTC (permalink / raw)
  To: Alexander Kanavin; +Cc: OE-core

On Mon, 2020-01-13 at 15:15 +0100, Alexander Kanavin wrote:
> On Thu, 9 Jan 2020 at 23:14, Richard Purdie <
> richard.purdie@linuxfoundation.org> wrote:
> > On Thu, 2020-01-09 at 20:49 +0100, Alexander Kanavin wrote:
> > > The problem is, I couldn't reproduce this locally at all. Random
> > > glitch?
> > 
> > No, its happened on multiple workers and there should be a pattern,
> > we
> > just don't understand it yet :(. I don't have ideas right now
> > although
> > the build user is 1000 on many machines, 6000 is a minority.
> 
> I guess we'll have to save the build folder on next failure and
> inspect that.

For extra data I reran this on a builder where it failed. This time it
worked out ok. I can think of two different things we could try:

a) Add some debug to the code so that when a unknown user error occurs,
it triggers a mention of the filename with the issue

b) Potentially try turning off any parallel install code for python.
I'm starting to wonder if that is racing somehow over file ownership.
Making it single thread may make the issue appear (or it may
disappear).

Cheers,

Richard



^ permalink raw reply	[flat|nested] 64+ messages in thread

* Re: [PATCH 05/28] python3: update to 3.8.1
  2020-01-14 10:23                 ` Richard Purdie
@ 2020-01-14 12:19                   ` Alexander Kanavin
  2020-01-14 18:37                     ` Richard Purdie
  0 siblings, 1 reply; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-14 12:19 UTC (permalink / raw)
  To: Richard Purdie; +Cc: OE-core

[-- Attachment #1: Type: text/plain, Size: 805 bytes --]

On Tue, 14 Jan 2020 at 11:23, Richard Purdie <
richard.purdie@linuxfoundation.org> wrote:

> For extra data I reran this on a builder where it failed. This time it
> worked out ok. I can think of two different things we could try:
>
> a) Add some debug to the code so that when a unknown user error occurs,
> it triggers a mention of the filename with the issue
>
> b) Potentially try turning off any parallel install code for python.
> I'm starting to wonder if that is racing somehow over file ownership.
> Making it single thread may make the issue appear (or it may
> disappear).
>

I tried setting PARALLEL_MAKEINST to "", and it didn't make any difference
(python is using standard autotools). I guess we'll have to catch the build
directory when it happens again somehow.

Alex

[-- Attachment #2: Type: text/html, Size: 1159 bytes --]

^ permalink raw reply	[flat|nested] 64+ messages in thread

* Re: [PATCH 05/28] python3: update to 3.8.1
  2020-01-14 12:19                   ` Alexander Kanavin
@ 2020-01-14 18:37                     ` Richard Purdie
  2020-01-15 18:26                       ` Alexander Kanavin
  0 siblings, 1 reply; 64+ messages in thread
From: Richard Purdie @ 2020-01-14 18:37 UTC (permalink / raw)
  To: Alexander Kanavin; +Cc: OE-core

On Tue, 2020-01-14 at 13:19 +0100, Alexander Kanavin wrote:
> On Tue, 14 Jan 2020 at 11:23, Richard Purdie <
> richard.purdie@linuxfoundation.org> wrote:
> > For extra data I reran this on a builder where it failed. This time
> > it
> > worked out ok. I can think of two different things we could try:
> > 
> > a) Add some debug to the code so that when a unknown user error
> > occurs,
> > it triggers a mention of the filename with the issue
> > 
> > b) Potentially try turning off any parallel install code for
> > python.
> > I'm starting to wonder if that is racing somehow over file
> > ownership.
> > Making it single thread may make the issue appear (or it may
> > disappear).
> 
> I tried setting PARALLEL_MAKEINST to "", and it didn't make any
> difference (python is using standard autotools). I guess we'll have
> to catch the build directory when it happens again somehow.

The autobuilder failed with this again, I went in and the first bit of
debugging I added was to say which file its failing on. Answer was:

WARNING: python3-3.8.1-r0 do_package: ./package/usr/libx32/python3.8/__pycache__/_bootlocale.cpython-38.opt-2.pyc

so for some reason the ownership of the pyc file (or files) is suspect.

I did a quick inspection of the pseudo database and its only this one
file. That leads me to suspect its a race in how its being
generated/owned...

Cheers,

Richard




^ permalink raw reply	[flat|nested] 64+ messages in thread

* Re: [PATCH 11/28] ifupdown: update 0.8.22 -> 0.8.35
  2020-01-09 14:36           ` Alexander Kanavin
  2020-01-09 14:44             ` Tom Rini
@ 2020-01-15  1:10             ` Randy MacLeod
  1 sibling, 0 replies; 64+ messages in thread
From: Randy MacLeod @ 2020-01-15  1:10 UTC (permalink / raw)
  To: Alexander Kanavin, Richard Purdie; +Cc: Tom Rini, OE-core

On 1/9/20 9:36 AM, Alexander Kanavin wrote:
> On Thu, 9 Jan 2020 at 14:55, Richard Purdie 
> <richard.purdie@linuxfoundation.org 
> <mailto:richard.purdie@linuxfoundation.org>> wrote:
> 
> 
>     That may be but I think this is an oversight, not an intention and we
>     should support busybox-free images...
> 
> 
> Right, I'll fix the build, but the implementation of runtime testing is 
> up to people who need this kind of feature.
> 
> Alex
> 

We use a sysvinit image with ifupdown and without busybox so
we'll write a test. I've created a defect to track the work:
    https://bugzilla.yoctoproject.org/show_bug.cgi?id=13736

-- 
# Randy MacLeod
# Wind River Linux


^ permalink raw reply	[flat|nested] 64+ messages in thread

* Re: [PATCH 05/28] python3: update to 3.8.1
  2020-01-14 18:37                     ` Richard Purdie
@ 2020-01-15 18:26                       ` Alexander Kanavin
  0 siblings, 0 replies; 64+ messages in thread
From: Alexander Kanavin @ 2020-01-15 18:26 UTC (permalink / raw)
  To: Richard Purdie; +Cc: OE-core

[-- Attachment #1: Type: text/plain, Size: 1678 bytes --]

On Tue, 14 Jan 2020 at 19:37, Richard Purdie <
richard.purdie@linuxfoundation.org> wrote:

>
> The autobuilder failed with this again, I went in and the first bit of
> debugging I added was to say which file its failing on. Answer was:
>
> WARNING: python3-3.8.1-r0 do_package:
> ./package/usr/libx32/python3.8/__pycache__/_bootlocale.cpython-38.opt-2.pyc
>
> so for some reason the ownership of the pyc file (or files) is suspect.
>
> I did a quick inspection of the pseudo database and its only this one
> file. That leads me to suspect its a race in how its being
> generated/owned...
>

I started looking into this - the likely culprit is this commit
https://github.com/python/cpython/commit/1a2dd82f56bd813aacc570e172cefe55a8a41504
which introduces parallel .pyc compilation. Previously (in 3.7) the
bootlocale.py file was compiled only once, and now I am seeing this in
log.do_install:

/home/alexander/development/poky/build-x86-64/tmp/hosttools/install -c -m
644 ../Python-3.8.1/Lib/_bootlocale.py /usr/lib/python3.8
Compiling
'/home/alexander/development/poky/build-x86-64/tmp/work/core2-64-poky-linux/python3/3.8.1-r0/image/usr/lib/python3.8/_bootlocale.py'...
Compiling
'/home/alexander/development/poky/build-x86-64/tmp/work/core2-64-poky-linux/python3/3.8.1-r0/image/usr/lib/python3.8/_bootlocale.py'...
Compiling
'/home/alexander/development/poky/build-x86-64/tmp/work/core2-64-poky-linux/python3/3.8.1-r0/image/usr/lib/python3.8/_bootlocale.py'...

I don't yet know how this file ends up being compiled several times, or
whether they indeed race.

Also I am still unsure how it ends up with the wrong ownership. Hints?

Alex

[-- Attachment #2: Type: text/html, Size: 2239 bytes --]

^ permalink raw reply	[flat|nested] 64+ messages in thread

end of thread, other threads:[~2020-01-15 18:26 UTC | newest]

Thread overview: 64+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-01-08 13:27 [PATCH 01/28] rpm: upgrade to 4.15.1 Alexander Kanavin
2020-01-08 13:27 ` [PATCH 02/28] rpm: switch to openssl from nss Alexander Kanavin
2020-01-08 13:27 ` [PATCH 03/28] rpm: fix with musl and latest elfutils Alexander Kanavin
2020-01-08 13:27 ` [PATCH 04/28] nss: update to 3.48 Alexander Kanavin
2020-01-08 13:27 ` [PATCH 05/28] python3: update to 3.8.1 Alexander Kanavin
2020-01-08 23:02   ` Richard Purdie
2020-01-09  1:23     ` Khem Raj
2020-01-09 15:31     ` Alexander Kanavin
2020-01-09 19:28       ` André Draszik
2020-01-09 19:37         ` André Draszik
2020-01-09 19:49           ` Alexander Kanavin
2020-01-09 22:14             ` Richard Purdie
2020-01-13 14:15               ` Alexander Kanavin
2020-01-14 10:23                 ` Richard Purdie
2020-01-14 12:19                   ` Alexander Kanavin
2020-01-14 18:37                     ` Richard Purdie
2020-01-15 18:26                       ` Alexander Kanavin
2020-01-08 13:27 ` [PATCH 06/28] gstreamer1.0-python: add a patch to fix python 3.8 builds Alexander Kanavin
2020-01-08 13:27 ` [PATCH 07/28] acl/attr: update to latest upstream releases Alexander Kanavin
2020-01-09  1:30   ` Khem Raj
2020-01-10 11:02   ` Richard Purdie
2020-01-10 14:48     ` Alexander Kanavin
2020-01-08 13:27 ` [PATCH 08/28] pseudo: adjust for attr 2.4.48 Alexander Kanavin
2020-01-08 13:27 ` [PATCH 09/28] ltp: update to 20190930 Alexander Kanavin
2020-01-09  9:15   ` Richard Purdie
2020-01-08 13:27 ` [PATCH 10/28] resolvconf: update to 1.82 Alexander Kanavin
2020-01-08 13:27 ` [PATCH 11/28] ifupdown: update 0.8.22 -> 0.8.35 Alexander Kanavin
2020-01-08 21:23   ` Richard Purdie
2020-01-09 13:47     ` Alexander Kanavin
2020-01-09 13:54       ` Alexander Kanavin
2020-01-09 13:55         ` Richard Purdie
2020-01-09 14:36           ` Alexander Kanavin
2020-01-09 14:44             ` Tom Rini
2020-01-09 14:47               ` Alexander Kanavin
2020-01-09 15:01                 ` Tom Rini
2020-01-09 15:33                   ` Alexander Kanavin
2020-01-09 15:55                     ` Tom Rini
2020-01-09 16:12                       ` Alexander Kanavin
2020-01-10 15:00                         ` Adrian Bunk
2020-01-10 15:12                           ` Alexander Kanavin
2020-01-15  1:10             ` Randy MacLeod
2020-01-08 13:27 ` [PATCH 12/28] ovmf: update to 201911 Alexander Kanavin
2020-01-08 13:27 ` [PATCH 13/28] elfutils: upgrade 0.177 -> 0.178 Alexander Kanavin
2020-01-09  1:27   ` Khem Raj
2020-01-08 13:27 ` [PATCH 14/28] libcap: update to 2.30 Alexander Kanavin
2020-01-08 21:22   ` Richard Purdie
2020-01-09  1:31     ` Khem Raj
2020-01-09 11:46       ` Adrian Bunk
2020-01-09 13:16         ` Alexander Kanavin
2020-01-08 13:27 ` [PATCH 15/28] virglrenderer: update to 0.8.1 Alexander Kanavin
2020-01-08 13:27 ` [PATCH 16/28] systemtap: remove the unneeded patch Alexander Kanavin
2020-01-08 13:27 ` [PATCH 17/28] lib/oe/package_manager.py: put the sdk_provides_dummy_target upfront Alexander Kanavin
2020-01-08 13:27 ` [PATCH 18/28] dummy-sdk-package.inc: do multilib expanesion for RREPLACES as well Alexander Kanavin
2020-01-08 13:27 ` [PATCH 19/28] staging.bbclass: correctly exclude ptest directories Alexander Kanavin
2020-01-08 13:27 ` [PATCH 20/28] ptest: report ptests that couldn't be run at all Alexander Kanavin
2020-01-08 13:27 ` [PATCH 21/28] ptest-packagelists.inc: add a couple of missed ptests Alexander Kanavin
2020-01-08 13:27 ` [PATCH 22/28] gzip: do not pull in perl-ptest for gzip-ptest Alexander Kanavin
2020-01-08 13:27 ` [PATCH 23/28] gettext: additional ptest fixing Alexander Kanavin
2020-01-08 13:27 ` [PATCH 24/28] gawk: fix failing ptests Alexander Kanavin
2020-01-08 13:27 ` [PATCH 25/28] kbd: " Alexander Kanavin
2020-01-08 13:27 ` [PATCH 26/28] perl: package Config.pm from arch directory into the main perl package Alexander Kanavin
2020-01-08 13:27 ` [PATCH 27/28] perl: install typemap and other extutils metadata as part of perl-core Alexander Kanavin
2020-01-08 13:27 ` [PATCH 28/28] libmodule-build-perl: fix ptests Alexander Kanavin
2020-01-08 13:32 ` ✗ patchtest: failure for "rpm: upgrade to 4.15.1..." and 27 more Patchwork

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.