reset upstream subtrees to HEAD

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

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

Change-Id: I268e2646d9174ad305630c6bbd3fbc1a6105f43d
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
diff --git a/poky/meta/recipes-devtools/python/python3/0001-Do-not-hardcode-lib-as-location-for-site-packages-an.patch b/poky/meta/recipes-devtools/python/python3/0001-Do-not-hardcode-lib-as-location-for-site-packages-an.patch
new file mode 100644
index 0000000..661f52d
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python3/0001-Do-not-hardcode-lib-as-location-for-site-packages-an.patch
@@ -0,0 +1,196 @@
+From 0fbdad1eaf541a8e92be81f39514cd249b3b0801 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
+ and lib-dynload
+
+Upstream-Status: Inappropriate [oe-core specific]
+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 ++++++++++++------
+ Python/getplatform.c | 10 ++++++++++
+ Python/sysmodule.c   |  2 ++
+ 6 files changed, 31 insertions(+), 10 deletions(-)
+
+diff --git a/Include/pythonrun.h b/Include/pythonrun.h
+index 6f0c6fc..0a17edd 100644
+--- a/Include/pythonrun.h
++++ b/Include/pythonrun.h
+@@ -7,6 +7,8 @@
+ extern "C" {
+ #endif
+ 
++PyAPI_FUNC(const char *) Py_GetLib(void);
++
+ #ifndef Py_LIMITED_API
+ PyAPI_FUNC(int) PyRun_SimpleStringFlags(const char *, PyCompilerFlags *);
+ PyAPI_FUNC(int) PyRun_AnyFileFlags(FILE *, const char *, PyCompilerFlags *);
+diff --git a/Lib/site.py b/Lib/site.py
+index ffd132b..b55f6d8 100644
+--- a/Lib/site.py
++++ b/Lib/site.py
+@@ -334,12 +334,12 @@ def getsitepackages(prefixes=None):
+         seen.add(prefix)
+ 
+         if os.sep == '/':
+-            sitepackages.append(os.path.join(prefix, "lib",
++            sitepackages.append(os.path.join(prefix, sys.lib,
+                                         "python%d.%d" % sys.version_info[:2],
+                                         "site-packages"))
+         else:
+             sitepackages.append(prefix)
+-            sitepackages.append(os.path.join(prefix, "lib", "site-packages"))
++            sitepackages.append(os.path.join(prefix, sys.lib, "site-packages"))
+     return sitepackages
+ 
+ def addsitepackages(known_paths, prefixes=None):
+diff --git a/Makefile.pre.in b/Makefile.pre.in
+index 6e81b2f..671a20e 100644
+--- a/Makefile.pre.in
++++ b/Makefile.pre.in
+@@ -142,7 +142,7 @@ LIBDIR=		@libdir@
+ MANDIR=		@mandir@
+ INCLUDEDIR=	@includedir@
+ CONFINCLUDEDIR=	$(exec_prefix)/include
+-SCRIPTDIR=	$(prefix)/lib
++SCRIPTDIR=	@libdir@
+ ABIFLAGS=	@ABIFLAGS@
+ 
+ # Detailed destination directories
+@@ -768,6 +768,7 @@ Modules/getpath.o: $(srcdir)/Modules/getpath.c Makefile
+ 		-DEXEC_PREFIX='"$(exec_prefix)"' \
+ 		-DVERSION='"$(VERSION)"' \
+ 		-DVPATH='"$(VPATH)"' \
++		-DLIB='"$(LIB)"' \
+ 		-o $@ $(srcdir)/Modules/getpath.c
+ 
+ Programs/python.o: $(srcdir)/Programs/python.c
+@@ -856,7 +857,7 @@ regen-opcode:
+ Python/compile.o Python/symtable.o Python/ast_unparse.o Python/ast.o: $(srcdir)/Include/graminit.h $(srcdir)/Include/Python-ast.h
+ 
+ Python/getplatform.o: $(srcdir)/Python/getplatform.c
+-		$(CC) -c $(PY_CORE_CFLAGS) -DPLATFORM='"$(MACHDEP)"' -o $@ $(srcdir)/Python/getplatform.c
++		$(CC) -c $(PY_CORE_CFLAGS) -DPLATFORM='"$(MACHDEP)"' -DLIB='"$(LIB)"' -o $@ $(srcdir)/Python/getplatform.c
+ 
+ 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
+--- a/Modules/getpath.c
++++ b/Modules/getpath.c
+@@ -123,6 +123,7 @@ typedef struct {
+     wchar_t *exec_prefix;              /* EXEC_PREFIX define */
+ 
+     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,
+         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);
+     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);
+         }
+         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;
+     }
+@@ -464,7 +465,7 @@ search_for_exec_prefix(const _PyCoreConfig *core_config,
+     copy_absolute(exec_prefix, calculate->argv0_path, MAXPATHLEN+1);
+     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,
+     if (!calculate->lib_python) {
+         return DECODE_LOCALE_ERR("EXEC_PREFIX define", len);
+     }
++    calculate->multilib_python = Py_DecodeLocale(LIB "/python" VERSION, &len);
++    if (!calculate->multilib_python) {
++        return DECODE_LOCALE_ERR("EXEC_PREFIX define", len);
++    }
+     return _Py_INIT_OK();
+ }
+ 
+@@ -882,6 +887,7 @@ calculate_free(PyCalculatePath *calculate)
+     PyMem_RawFree(calculate->prefix);
+     PyMem_RawFree(calculate->exec_prefix);
+     PyMem_RawFree(calculate->lib_python);
++    PyMem_RawFree(calculate->multilib_python);
+     PyMem_RawFree(calculate->path_env);
+ }
+ 
+diff --git a/Python/getplatform.c b/Python/getplatform.c
+index 81a0f7a..d55396b 100644
+--- a/Python/getplatform.c
++++ b/Python/getplatform.c
+@@ -10,3 +10,13 @@ Py_GetPlatform(void)
+ {
+     return PLATFORM;
+ }
++
++#ifndef LIB
++#define LIB "lib"
++#endif
++
++const char *
++Py_GetLib(void)
++{
++	return LIB;
++}
+diff --git a/Python/sysmodule.c b/Python/sysmodule.c
+index efe5b29..de77b17 100644
+--- a/Python/sysmodule.c
++++ b/Python/sysmodule.c
+@@ -2319,6 +2319,8 @@ _PySys_BeginInit(PyObject **sysmod)
+                         PyUnicode_FromString(Py_GetCopyright()));
+     SET_SYS_FROM_STRING("platform",
+                         PyUnicode_FromString(Py_GetPlatform()));
++    SET_SYS_FROM_STRING("lib",
++                        PyUnicode_FromString(Py_GetLib()));
+     SET_SYS_FROM_STRING("maxsize",
+                         PyLong_FromSsize_t(PY_SSIZE_T_MAX));
+     SET_SYS_FROM_STRING("float_info",