All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 01/17] systemd: Upgrade 219 -> 224
  2015-08-24 20:03 [PATCH 00/17] systemd upgrade, distribute->setuptools and clang fixes Khem Raj
@ 2015-08-24 20:03 ` Khem Raj
  2015-09-01 21:15   ` Richard Purdie
  2015-08-24 20:03 ` [PATCH 02/17] core-image-minimal: Add 4M extra space when using systemd Khem Raj
                   ` (15 subsequent siblings)
  16 siblings, 1 reply; 31+ messages in thread
From: Khem Raj @ 2015-08-24 20:03 UTC (permalink / raw)
  To: openembedded-core

Drop patches that were straight backports from upstream

MIT licence was unused and dropped from systemd sources
for more details see
https://github.com/systemd/systemd/commit/8f1e0c5f38cdf7e401ab4d2bb93ad816d08e7715

Drop gtkdoc dependency since libudev API documentation has been converted from gtkdoc into man pages
Remove packaging gudev as it has moved to separate repository outside
systemd

For more details see
https://github.com/systemd/systemd/commit/2375607039517c88df51ef16ddbb624ec1c10654

package newly added script for xorg to be usable with systemd --user
intance
For more details see
https://github.com/systemd/systemd/commit/1401ec2d34bcde406ced531a72dc46ebaf332594

For complete differences between two releases run
git log --oneline v219..v224
in systemd git clone

Change-Id: I998e652382950a3c74c4839f3767ef8bef23d88f
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 ...-mount-add-dependencies-to-dynamically-mo.patch |  36 ----
 ...ed-missing.h-fall-back-to-insecure-getenv.patch |  25 ---
 ...t-install-dependency-links-at-install-tim.patch |  35 ++--
 ...heck-for-additional-features-that-uclibc-.patch |  23 ++-
 ...wn-Use-execvpe-only-when-libc-supports-it.patch |  37 ++---
 ...til-Use-mkostemp-only-if-libc-supports-it.patch |   8 +-
 ...-unimplemented-_SC_PHYS_PAGES-system-conf.patch |   8 +-
 ...0-Make-root-s-home-directory-configurable.patch | 136 ++++++++-------
 ...files.c-Honor-ordering-within-files-as-th.patch | 185 ---------------------
 ...-remove-userspace-firmware-loading-suppor.patch |  99 ++++++-----
 .../systemd/systemd/tmpfiles-pam.patch             |  30 ----
 .../systemd/{systemd_219.bb => systemd_224.bb}     |  25 +--
 12 files changed, 174 insertions(+), 473 deletions(-)
 delete mode 100644 meta/recipes-core/systemd/systemd/0001-Revert-core-mount-add-dependencies-to-dynamically-mo.patch
 delete mode 100644 meta/recipes-core/systemd/systemd/0002-shared-missing.h-fall-back-to-insecure-getenv.patch
 delete mode 100644 meta/recipes-core/systemd/systemd/0012-systemd-tmpfiles.c-Honor-ordering-within-files-as-th.patch
 delete mode 100644 meta/recipes-core/systemd/systemd/tmpfiles-pam.patch
 rename meta/recipes-core/systemd/{systemd_219.bb => systemd_224.bb} (95%)

diff --git a/meta/recipes-core/systemd/systemd/0001-Revert-core-mount-add-dependencies-to-dynamically-mo.patch b/meta/recipes-core/systemd/systemd/0001-Revert-core-mount-add-dependencies-to-dynamically-mo.patch
deleted file mode 100644
index d69cfe0..0000000
--- a/meta/recipes-core/systemd/systemd/0001-Revert-core-mount-add-dependencies-to-dynamically-mo.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From eb7a760052667c5a35637901de9359c377263804 Mon Sep 17 00:00:00 2001
-From: Colin Walters <walters@verbum.org>
-Date: Tue, 24 Feb 2015 10:12:28 -0500
-Subject: [PATCH] Revert "core/mount: add dependencies to dynamically mounted
- mounts too"
-
-This reverts commit 06e97888883e2cc12eb6514e80c7f0014295f59b.
-
-This patch was imported from Fedora (http://pkgs.fedoraproject.org/cgit/systemd.git/commit/?h=f22&id=9bbe0e92dc59d5a42258c729b105a7d9901eb35e).
-
-It fixes an issue where mount points not listed in fstab are immediately
-unmounted after a call to mount.
-
-Upstream-Status: Inappropriate [fixed upstream]
-
-Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
----
- src/core/mount.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/core/mount.c b/src/core/mount.c
-index 40037e7..cddb5e2 100644
---- a/src/core/mount.c
-+++ b/src/core/mount.c
-@@ -295,7 +295,7 @@ static int mount_add_device_links(Mount *m) {
- 
-         assert(m);
- 
--        p = get_mount_parameters(m);
-+        p = get_mount_parameters_fragment(m);
-         if (!p)
-                 return 0;
- 
--- 
-1.8.3.1
-
diff --git a/meta/recipes-core/systemd/systemd/0002-shared-missing.h-fall-back-to-insecure-getenv.patch b/meta/recipes-core/systemd/systemd/0002-shared-missing.h-fall-back-to-insecure-getenv.patch
deleted file mode 100644
index 1cf7840..0000000
--- a/meta/recipes-core/systemd/systemd/0002-shared-missing.h-fall-back-to-insecure-getenv.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 03baade6db2cf83b44a157818ba827d725449bb0 Mon Sep 17 00:00:00 2001
-From: Emil Renner Berthing <systemd@esmil.dk>
-Date: Thu, 18 Sep 2014 15:24:47 +0200
-Subject: [PATCH 02/11] shared/missing.h: fall back to insecure getenv
-
----
- src/shared/missing.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/shared/missing.h b/src/shared/missing.h
-index b33a70c..11cca04 100644
---- a/src/shared/missing.h
-+++ b/src/shared/missing.h
-@@ -366,7 +366,7 @@ static inline int name_to_handle_at(int fd, const char *name, struct file_handle
- #  ifdef HAVE___SECURE_GETENV
- #    define secure_getenv __secure_getenv
- #  else
--#    error "neither secure_getenv nor __secure_getenv are available"
-+#    define secure_getenv getenv
- #  endif
- #endif
- 
--- 
-2.1.4
-
diff --git a/meta/recipes-core/systemd/systemd/0003-binfmt-Don-t-install-dependency-links-at-install-tim.patch b/meta/recipes-core/systemd/systemd/0003-binfmt-Don-t-install-dependency-links-at-install-tim.patch
index c14cc6f..0e20fd0 100644
--- a/meta/recipes-core/systemd/systemd/0003-binfmt-Don-t-install-dependency-links-at-install-tim.patch
+++ b/meta/recipes-core/systemd/systemd/0003-binfmt-Don-t-install-dependency-links-at-install-tim.patch
@@ -23,11 +23,11 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
  units/systemd-binfmt.service.in         | 5 +++++
  3 files changed, 8 insertions(+), 4 deletions(-)
 
-diff --git a/Makefile.am b/Makefile.am
-index ba63f68..0fb3f9f 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -4838,10 +4838,6 @@ INSTALL_DIRS += \
+Index: git/Makefile.am
+===================================================================
+--- git.orig/Makefile.am
++++ git/Makefile.am
+@@ -4271,10 +4271,6 @@ INSTALL_DIRS += \
  	$(prefix)/lib/binfmt.d \
  	$(sysconfdir)/binfmt.d
  
@@ -38,10 +38,10 @@ index ba63f68..0fb3f9f 100644
  endif
  
  EXTRA_DIST += \
-diff --git a/units/proc-sys-fs-binfmt_misc.automount b/units/proc-sys-fs-binfmt_misc.automount
-index 6be3893..709adef 100644
---- a/units/proc-sys-fs-binfmt_misc.automount
-+++ b/units/proc-sys-fs-binfmt_misc.automount
+Index: git/units/proc-sys-fs-binfmt_misc.automount
+===================================================================
+--- git.orig/units/proc-sys-fs-binfmt_misc.automount
++++ git/units/proc-sys-fs-binfmt_misc.automount
 @@ -16,3 +16,6 @@ ConditionPathIsReadWrite=/proc/sys/
  
  [Automount]
@@ -49,11 +49,11 @@ index 6be3893..709adef 100644
 +
 +[Install]
 +WantedBy=sysinit.target
-diff --git a/units/systemd-binfmt.service.in b/units/systemd-binfmt.service.in
-index 34a5d52..617462b 100644
---- a/units/systemd-binfmt.service.in
-+++ b/units/systemd-binfmt.service.in
-@@ -11,6 +11,8 @@ Documentation=man:systemd-binfmt.service(8) man:binfmt.d(5)
+Index: git/units/systemd-binfmt.service.in
+===================================================================
+--- git.orig/units/systemd-binfmt.service.in
++++ git/units/systemd-binfmt.service.in
+@@ -11,6 +11,8 @@ Documentation=man:systemd-binfmt.service
  Documentation=https://www.kernel.org/doc/Documentation/binfmt_misc.txt
  DefaultDependencies=no
  Conflicts=shutdown.target
@@ -62,13 +62,10 @@ index 34a5d52..617462b 100644
  After=proc-sys-fs-binfmt_misc.automount
  Before=sysinit.target shutdown.target
  ConditionPathIsReadWrite=/proc/sys/
-@@ -24,3 +26,6 @@ ConditionDirectoryNotEmpty=|/run/binfmt.d
- Type=oneshot
+@@ -25,3 +27,6 @@ Type=oneshot
  RemainAfterExit=yes
  ExecStart=@rootlibexecdir@/systemd-binfmt
+ TimeoutSec=90s
 +
 +[Install]
 +WantedBy=sysinit.target
--- 
-2.1.4
-
diff --git a/meta/recipes-core/systemd/systemd/0004-configure-Check-for-additional-features-that-uclibc-.patch b/meta/recipes-core/systemd/systemd/0004-configure-Check-for-additional-features-that-uclibc-.patch
index dddb7da..8078da9 100644
--- a/meta/recipes-core/systemd/systemd/0004-configure-Check-for-additional-features-that-uclibc-.patch
+++ b/meta/recipes-core/systemd/systemd/0004-configure-Check-for-additional-features-that-uclibc-.patch
@@ -14,13 +14,13 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
  configure.ac | 18 ++++++++++++++++++
  1 file changed, 18 insertions(+)
 
-diff --git a/configure.ac b/configure.ac
-index 9a2235b..a5b2e6e 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -103,6 +103,24 @@ AS_IF([! ln --relative --help > /dev/null 2>&1], [AC_MSG_ERROR([*** ln doesn't s
+Index: git/configure.ac
+===================================================================
+--- git.orig/configure.ac
++++ git/configure.ac
+@@ -110,6 +110,24 @@ AC_PATH_PROG([UMOUNT_PATH], [umount], [/
  
- M4_DEFINES=
+ AS_IF([! ln --relative --help > /dev/null 2>&1], [AC_MSG_ERROR([*** ln doesn't support --relative ***])])
  
 +# check for few functions not implemented in uClibc
 +
@@ -31,7 +31,7 @@ index 9a2235b..a5b2e6e 100644
 +AC_MSG_CHECKING([whether %ms format is supported by *scanf])
 +
 +AC_LINK_IFELSE(
-+	[AC_LANG_PROGRAM([ 
++	[AC_LANG_PROGRAM([
 +	 #include <stdio.h>
 +	 ],[
 +	    char *buf1, *buf2, *buf3, str="1 2.3 abcde" ;
@@ -40,9 +40,6 @@ index 9a2235b..a5b2e6e 100644
 +	[AC_DEFINE([HAVE_MSFORMAT], [1], [Define if %ms format is supported by *scanf.])],
 +	[AC_MSG_RESULT([no])])
 +
- # gtkdocize greps for '^GTK_DOC_CHECK', so it needs to be on its own line
- m4_ifdef([GTK_DOC_CHECK], [
- GTK_DOC_CHECK([1.18],[--flavour no-tmpl])],
--- 
-2.1.4
-
+ M4_DEFINES=
+ 
+ AC_CHECK_TOOL(OBJCOPY, objcopy)
diff --git a/meta/recipes-core/systemd/systemd/0005-nspawn-Use-execvpe-only-when-libc-supports-it.patch b/meta/recipes-core/systemd/systemd/0005-nspawn-Use-execvpe-only-when-libc-supports-it.patch
index 85279d6..55a0088 100644
--- a/meta/recipes-core/systemd/systemd/0005-nspawn-Use-execvpe-only-when-libc-supports-it.patch
+++ b/meta/recipes-core/systemd/systemd/0005-nspawn-Use-execvpe-only-when-libc-supports-it.patch
@@ -10,32 +10,29 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
  src/nspawn/nspawn.c | 7 +++++++
  1 file changed, 7 insertions(+)
 
-diff --git a/src/nspawn/nspawn.c b/src/nspawn/nspawn.c
-index 0d8d199..b597edb 100644
---- a/src/nspawn/nspawn.c
-+++ b/src/nspawn/nspawn.c
-@@ -129,6 +129,8 @@ typedef enum Volatile {
-         VOLATILE_STATE,
- } Volatile;
+Index: git/src/nspawn/nspawn.c
+===================================================================
+--- git.orig/src/nspawn/nspawn.c
++++ git/src/nspawn/nspawn.c
+@@ -143,6 +143,8 @@ typedef struct CustomMount {
+         char **lower;
+ } CustomMount;
  
 +#include "config.h"
 +
  static char *arg_directory = NULL;
  static char *arg_template = NULL;
  static char *arg_user = NULL;
-@@ -4257,7 +4259,12 @@ int main(int argc, char *argv[]) {
-                                 a[0] = (char*) "/sbin/init";
-                                 execve(a[0], a, env_use);
-                         } else if (argc > optind)
+@@ -4238,7 +4240,12 @@ static int inner_child(
+                 a[0] = (char*) "/sbin/init";
+                 execve(a[0], a, env_use);
+         } else if (argc > optind)
 +#ifdef HAVE_EXECVPE
-                                 execvpe(argv[optind], argv + optind, env_use);
+                 execvpe(argv[optind], argv + optind, env_use);
 +#else
-+                                environ = env_use;
-+                                execvp(argv[optind], argv + optind);
++                environ = env_use;
++                execvp(argv[optind], argv + optind);
 +#endif /* HAVE_EXECVPE */
-                         else {
-                                 chdir(home ? home : "/root");
-                                 execle("/bin/bash", "-bash", NULL, env_use);
--- 
-2.1.4
-
+         else {
+                 chdir(home ? home : "/root");
+                 execle("/bin/bash", "-bash", NULL, env_use);
diff --git a/meta/recipes-core/systemd/systemd/0007-util-Use-mkostemp-only-if-libc-supports-it.patch b/meta/recipes-core/systemd/systemd/0007-util-Use-mkostemp-only-if-libc-supports-it.patch
index 29c20c0..b8ab7c4 100644
--- a/meta/recipes-core/systemd/systemd/0007-util-Use-mkostemp-only-if-libc-supports-it.patch
+++ b/meta/recipes-core/systemd/systemd/0007-util-Use-mkostemp-only-if-libc-supports-it.patch
@@ -7,13 +7,13 @@ Upstream-Status: Denied [no desire for uclibc support]
 
 Signed-off-by: Khem Raj <raj.khem@gmail.com>
 ---
- src/shared/util.c | 8 ++++++++
+ src/basic/util.c | 8 ++++++++
  1 file changed, 8 insertions(+)
 
-diff --git a/src/shared/util.c b/src/shared/util.c
+diff --git a/src/basic/util.c b/src/basic/util.c
 index dc65280..72f4665 100644
---- a/src/shared/util.c
-+++ b/src/shared/util.c
+--- a/src/basic/util.c
++++ b/src/basic/util.c
 @@ -97,6 +97,8 @@
  #include "def.h"
  #include "sparse-endian.h"
diff --git a/meta/recipes-core/systemd/systemd/0008-util-bypass-unimplemented-_SC_PHYS_PAGES-system-conf.patch b/meta/recipes-core/systemd/systemd/0008-util-bypass-unimplemented-_SC_PHYS_PAGES-system-conf.patch
index 5297625..3f4d4de 100644
--- a/meta/recipes-core/systemd/systemd/0008-util-bypass-unimplemented-_SC_PHYS_PAGES-system-conf.patch
+++ b/meta/recipes-core/systemd/systemd/0008-util-bypass-unimplemented-_SC_PHYS_PAGES-system-conf.patch
@@ -8,13 +8,13 @@ Upstream-Status: Inappropriate [uclibc-specific]
 
 Signed-off-by: Khem Raj <raj.khem@gmail.com>
 ---
- src/shared/util.c | 15 +++++++++++++++
+ src/basic/util.c | 15 +++++++++++++++
  1 file changed, 15 insertions(+)
 
-diff --git a/src/shared/util.c b/src/shared/util.c
+diff --git a/src/basic/util.c b/src/basic/util.c
 index 72f4665..cbbe3b1 100644
---- a/src/shared/util.c
-+++ b/src/shared/util.c
+--- a/src/basic/util.c
++++ b/src/basic/util.c
 @@ -6793,10 +6793,25 @@ uint64_t physical_memory(void) {
          /* We return this as uint64_t in case we are running as 32bit
           * process on a 64bit kernel with huge amounts of memory */
diff --git a/meta/recipes-core/systemd/systemd/0010-Make-root-s-home-directory-configurable.patch b/meta/recipes-core/systemd/systemd/0010-Make-root-s-home-directory-configurable.patch
index 76a9481..ed7ff5b 100644
--- a/meta/recipes-core/systemd/systemd/0010-Make-root-s-home-directory-configurable.patch
+++ b/meta/recipes-core/systemd/systemd/0010-Make-root-s-home-directory-configurable.patch
@@ -19,26 +19,25 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
  configure.ac                      | 7 +++++++
  src/core/unit-printf.c            | 2 +-
  src/nspawn/nspawn.c               | 4 ++--
- src/shared/util.c                 | 4 ++--
+ src/basic/util.c                 | 4 ++--
  units/console-shell.service.m4.in | 4 ++--
  units/emergency.service.in        | 4 ++--
  units/rescue.service.in           | 4 ++--
  8 files changed, 20 insertions(+), 11 deletions(-)
 
-diff --git a/Makefile.am b/Makefile.am
-index 0fb3f9f..4623963 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -199,7 +199,8 @@ AM_CPPFLAGS = \
- 	-DKEXEC=\"$(KEXEC)\" \
+Index: git/Makefile.am
+===================================================================
+--- git.orig/Makefile.am
++++ git/Makefile.am
+@@ -208,6 +208,7 @@ AM_CPPFLAGS = \
  	-DLIBDIR=\"$(libdir)\" \
  	-DROOTLIBDIR=\"$(rootlibdir)\" \
  	-DROOTLIBEXECDIR=\"$(rootlibexecdir)\" \
 +	-DROOTHOMEDIR=\"$(roothomedir)\" \
  	-DTEST_DIR=\"$(abs_top_srcdir)/test\" \
  	-I $(top_srcdir)/src \
- 	-I $(top_builddir)/src/shared \
-@@ -6342,6 +6343,7 @@ EXTRA_DIST += \
+ 	-I $(top_builddir)/src/basic \
+@@ -5615,6 +5616,7 @@ EXTRA_DIST += \
  substitutions = \
         '|rootlibexecdir=$(rootlibexecdir)|' \
         '|rootbindir=$(rootbindir)|' \
@@ -46,13 +45,13 @@ index 0fb3f9f..4623963 100644
         '|bindir=$(bindir)|' \
         '|SYSTEMCTL=$(rootbindir)/systemctl|' \
         '|SYSTEMD_NOTIFY=$(rootbindir)/systemd-notify|' \
-diff --git a/configure.ac b/configure.ac
-index a5b2e6e..55bb7d8 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -1428,6 +1428,11 @@ AC_ARG_WITH([rootlibdir],
-         [],
+Index: git/configure.ac
+===================================================================
+--- git.orig/configure.ac
++++ git/configure.ac
+@@ -1383,6 +1383,11 @@ AC_ARG_WITH([rootlibdir],
          [with_rootlibdir=${libdir}])
+ AX_NORMALIZE_PATH([with_rootlibdir])
  
 +AC_ARG_WITH([roothomedir],
 +        AS_HELP_STRING([--with-roothomedir=DIR], [Home directory for the root user]),
@@ -62,62 +61,62 @@ index a5b2e6e..55bb7d8 100644
  AC_ARG_WITH([pamlibdir],
          AS_HELP_STRING([--with-pamlibdir=DIR], [Directory for PAM modules]),
          [],
-@@ -1518,6 +1523,7 @@ AC_SUBST([pamlibdir], [$with_pamlibdir])
+@@ -1474,6 +1479,7 @@ AC_SUBST([pamlibdir], [$with_pamlibdir])
  AC_SUBST([pamconfdir], [$with_pamconfdir])
  AC_SUBST([rootprefix], [$with_rootprefix])
  AC_SUBST([rootlibdir], [$with_rootlibdir])
 +AC_SUBST([roothomedir], [$with_roothomedir])
  
  AC_CONFIG_FILES([
-         Makefile po/Makefile.in
-@@ -1617,6 +1623,7 @@ AC_MSG_RESULT([
-         include_prefix:          ${INCLUDE_PREFIX}
+         Makefile
+@@ -1563,6 +1569,7 @@ AC_MSG_RESULT([
+         includedir:              ${includedir}
          lib dir:                 ${libdir}
          rootlib dir:             ${with_rootlibdir}
 +        root home dir:           ${with_roothomedir}
          SysV init scripts:       ${SYSTEM_SYSVINIT_PATH}
          SysV rc?.d directories:  ${SYSTEM_SYSVRCND_PATH}
          Build Python:            ${PYTHON}
-diff --git a/src/core/unit-printf.c b/src/core/unit-printf.c
-index 97135db..14d12f1 100644
---- a/src/core/unit-printf.c
-+++ b/src/core/unit-printf.c
-@@ -259,7 +259,7 @@ static int specifier_user_home(char specifier, void *data, void *userdata, char
+Index: git/src/core/unit-printf.c
+===================================================================
+--- git.orig/src/core/unit-printf.c
++++ git/src/core/unit-printf.c
+@@ -237,7 +237,7 @@ static int specifier_user_home(char spec
                   * best of it if we can, but fail if we can't */
  
                  if (!c->user || streq(c->user, "root") || streq(c->user, "0"))
 -                        n = strdup("/root");
 +                        n = strdup(ROOTHOMEDIR);
                  else
-                         return -ENOTSUP;
+                         return -EOPNOTSUPP;
  
-diff --git a/src/nspawn/nspawn.c b/src/nspawn/nspawn.c
-index b597edb..0b32673 100644
---- a/src/nspawn/nspawn.c
-+++ b/src/nspawn/nspawn.c
-@@ -4192,7 +4192,7 @@ int main(int argc, char *argv[]) {
-                         if (r < 0)
-                                 _exit(EXIT_FAILURE);
+Index: git/src/nspawn/nspawn.c
+===================================================================
+--- git.orig/src/nspawn/nspawn.c
++++ git/src/nspawn/nspawn.c
+@@ -4176,7 +4176,7 @@ static int inner_child(
+         if (envp[n_env])
+                 n_env ++;
  
--                        if ((asprintf((char**)(envp + n_env++), "HOME=%s", home ? home: "/root") < 0) ||
-+                        if ((asprintf((char**)(envp + n_env++), "HOME=%s", home ? home: ROOTHOMEDIR) < 0) ||
-                             (asprintf((char**)(envp + n_env++), "USER=%s", arg_user ? arg_user : "root") < 0) ||
-                             (asprintf((char**)(envp + n_env++), "LOGNAME=%s", arg_user ? arg_user : "root") < 0)) {
-                                 log_oom();
-@@ -4266,7 +4266,7 @@ int main(int argc, char *argv[]) {
-                                 execvp(argv[optind], argv + optind);
+-        if ((asprintf((char**)(envp + n_env++), "HOME=%s", home ? home: "/root") < 0) ||
++        if ((asprintf((char**)(envp + n_env++), "HOME=%s", home ? home: ROOTHOMEDIR) < 0) ||
+             (asprintf((char**)(envp + n_env++), "USER=%s", arg_user ? arg_user : "root") < 0) ||
+             (asprintf((char**)(envp + n_env++), "LOGNAME=%s", arg_user ? arg_user : "root") < 0))
+                 return log_oom();
+@@ -4247,7 +4247,7 @@ static int inner_child(
+                 execvp(argv[optind], argv + optind);
  #endif /* HAVE_EXECVPE */
-                         else {
--                                chdir(home ? home : "/root");
-+                                chdir(home ? home : ROOTHOMEDIR);
-                                 execle("/bin/bash", "-bash", NULL, env_use);
-                                 execle("/bin/sh", "-sh", NULL, env_use);
-                         }
-diff --git a/src/shared/util.c b/src/shared/util.c
-index cbbe3b1..a0e3cc5 100644
---- a/src/shared/util.c
-+++ b/src/shared/util.c
-@@ -4609,7 +4609,7 @@ int get_user_creds(
+         else {
+-                chdir(home ? home : "/root");
++                chdir(home ? home : ROOTHOMEDIR);
+                 execle("/bin/bash", "-bash", NULL, env_use);
+                 execle("/bin/sh", "-sh", NULL, env_use);
+         }
+Index: git/src/basic/util.c
+===================================================================
+--- git.orig/src/basic/util.c
++++ git/src/basic/util.c
+@@ -3233,7 +3233,7 @@ int get_user_creds(
                          *gid = 0;
  
                  if (home)
@@ -126,7 +125,7 @@ index cbbe3b1..a0e3cc5 100644
  
                  if (shell)
                          *shell = "/bin/sh";
-@@ -5611,7 +5611,7 @@ int get_home_dir(char **_h) {
+@@ -4069,7 +4069,7 @@ int get_home_dir(char **_h) {
          /* Hardcode home directory for root to avoid NSS */
          u = getuid();
          if (u == 0) {
@@ -135,10 +134,10 @@ index cbbe3b1..a0e3cc5 100644
                  if (!h)
                          return -ENOMEM;
  
-diff --git a/units/console-shell.service.m4.in b/units/console-shell.service.m4.in
-index 5c80722..efde5f0 100644
---- a/units/console-shell.service.m4.in
-+++ b/units/console-shell.service.m4.in
+Index: git/units/console-shell.service.m4.in
+===================================================================
+--- git.orig/units/console-shell.service.m4.in
++++ git/units/console-shell.service.m4.in
 @@ -15,8 +15,8 @@ After=rc-local.service
  Before=getty.target
  
@@ -150,10 +149,10 @@ index 5c80722..efde5f0 100644
  ExecStart=-@SULOGIN@
  ExecStopPost=-@SYSTEMCTL@ poweroff
  Type=idle
-diff --git a/units/emergency.service.in b/units/emergency.service.in
-index 2695d7b..7f47b73 100644
---- a/units/emergency.service.in
-+++ b/units/emergency.service.in
+Index: git/units/emergency.service.in
+===================================================================
+--- git.orig/units/emergency.service.in
++++ git/units/emergency.service.in
 @@ -14,8 +14,8 @@ Conflicts=rescue.service
  Before=shutdown.target
  
@@ -162,14 +161,14 @@ index 2695d7b..7f47b73 100644
 -WorkingDirectory=/root
 +Environment=HOME=@roothomedir@
 +WorkingDirectory=@roothomedir@
- ExecStartPre=-/bin/plymouth quit
+ ExecStartPre=-/bin/plymouth --wait quit
  ExecStartPre=-/bin/echo -e 'Welcome to emergency mode! After logging in, type "journalctl -xb" to view\\nsystem logs, "systemctl reboot" to reboot, "systemctl default" or ^D to\\ntry again to boot into default mode.'
- ExecStart=-/bin/sh -c "@SULOGIN@; @SYSTEMCTL@ --fail --no-block default"
-diff --git a/units/rescue.service.in b/units/rescue.service.in
-index de73fee..47f3593 100644
---- a/units/rescue.service.in
-+++ b/units/rescue.service.in
-@@ -14,8 +14,8 @@ After=sysinit.target plymouth-start.service
+ ExecStart=-/bin/sh -c "@SULOGIN@; @SYSTEMCTL@ --job-mode=fail --no-block default"
+Index: git/units/rescue.service.in
+===================================================================
+--- git.orig/units/rescue.service.in
++++ git/units/rescue.service.in
+@@ -14,8 +14,8 @@ After=sysinit.target plymouth-start.serv
  Before=shutdown.target
  
  [Service]
@@ -179,7 +178,4 @@ index de73fee..47f3593 100644
 +WorkingDirectory=@roothomedir@
  ExecStartPre=-/bin/plymouth quit
  ExecStartPre=-/bin/echo -e 'Welcome to emergency mode! After logging in, type "journalctl -xb" to view\\nsystem logs, "systemctl reboot" to reboot, "systemctl default" or ^D to\\nboot into default mode.'
- ExecStart=-/bin/sh -c "@SULOGIN@; @SYSTEMCTL@ --fail --no-block default"
--- 
-2.1.4
-
+ ExecStart=-/bin/sh -c "@SULOGIN@; @SYSTEMCTL@ --job-mode=fail --no-block default"
diff --git a/meta/recipes-core/systemd/systemd/0012-systemd-tmpfiles.c-Honor-ordering-within-files-as-th.patch b/meta/recipes-core/systemd/systemd/0012-systemd-tmpfiles.c-Honor-ordering-within-files-as-th.patch
deleted file mode 100644
index ccd6757..0000000
--- a/meta/recipes-core/systemd/systemd/0012-systemd-tmpfiles.c-Honor-ordering-within-files-as-th.patch
+++ /dev/null
@@ -1,185 +0,0 @@
-From 2abf886295b979bce6d3f0a240f6f5ecfd70ba37 Mon Sep 17 00:00:00 2001
-From: Randy Witt <randy.e.witt@linux.intel.com>
-Date: Wed, 4 Mar 2015 18:32:40 -0800
-Subject: [PATCH] tmpfiles.c: Honor ordering within files as the docs say.
-
-Previously, globs would always get processed first followed by any other
-items in arbitrary order. This is contrary to the documentation which
-states "Otherwise, the files/directories are processed in the order they
-are listed."
-
-To fix this, remove the separate "globs" hashmap, and instead use only one
-marking each entry as a glob or not. There should be little overhead
-from doing this, considering the only time nested processing will occur
-is for processing of globs which are not of type "X".
-
-Signed-off-by: Randy Witt <randy.e.witt@linux.intel.com>
----
- src/tmpfiles/tmpfiles.c | 53 ++++++++++++++++++++++---------------------------
- 1 file changed, 24 insertions(+), 29 deletions(-)
-
-diff --git a/src/tmpfiles/tmpfiles.c b/src/tmpfiles/tmpfiles.c
-index 917bb3c..0b6d226 100644
---- a/src/tmpfiles/tmpfiles.c
-+++ b/src/tmpfiles/tmpfiles.c
-@@ -116,6 +116,7 @@ typedef struct Item {
-         bool force:1;
- 
-         bool done:1;
-+        bool glob:1;
- } Item;
- 
- typedef struct ItemArray {
-@@ -137,7 +138,7 @@ static const char conf_file_dirs[] = CONF_DIRS_NULSTR("tmpfiles");
- 
- #define MAX_DEPTH 256
- 
--static Hashmap *items = NULL, *globs = NULL;
-+static OrderedHashmap *items = NULL;
- static Set *unix_sockets = NULL;
- 
- static bool needs_glob(ItemType t) {
-@@ -176,17 +177,17 @@ static bool takes_ownership(ItemType t) {
-                       RECURSIVE_REMOVE_PATH);
- }
- 
--static struct Item* find_glob(Hashmap *h, const char *match) {
-+static struct Item* find_glob(OrderedHashmap *h, const char *match) {
-         ItemArray *j;
-         Iterator i;
- 
--        HASHMAP_FOREACH(j, h, i) {
-+        ORDERED_HASHMAP_FOREACH(j, h, i) {
-                 unsigned n;
- 
-                 for (n = 0; n < j->count; n++) {
-                         Item *item = j->items + n;
- 
--                        if (fnmatch(item->path, match, FNM_PATHNAME|FNM_PERIOD) == 0)
-+                        if (item->glob && fnmatch(item->path, match, FNM_PATHNAME|FNM_PERIOD) == 0)
-                                 return item;
-                 }
-         }
-@@ -391,12 +392,12 @@ static int dir_cleanup(
-                 }
- 
-                 /* Is there an item configured for this path? */
--                if (hashmap_get(items, sub_path)) {
-+                if (ordered_hashmap_get(items, sub_path)) {
-                         log_debug("Ignoring \"%s\": a separate entry exists.", sub_path);
-                         continue;
-                 }
- 
--                if (find_glob(globs, sub_path)) {
-+                if (find_glob(items, sub_path)) {
-                         log_debug("Ignoring \"%s\": a separate glob exists.", sub_path);
-                         continue;
-                 }
-@@ -1378,7 +1379,7 @@ static int process_item(Item *i) {
-         PATH_FOREACH_PREFIX(prefix, i->path) {
-                 ItemArray *j;
- 
--                j = hashmap_get(items, prefix);
-+                j = ordered_hashmap_get(items, prefix);
-                 if (j) {
-                         int s;
- 
-@@ -1505,7 +1506,6 @@ static int parse_line(const char *fname, unsigned line, const char *buffer) {
-         _cleanup_free_ char *action = NULL, *mode = NULL, *user = NULL, *group = NULL, *age = NULL, *path = NULL;
-         _cleanup_(item_free_contents) Item i = {};
-         ItemArray *existing;
--        Hashmap *h;
-         int r, c = -1, pos;
-         bool force = false, boot = false;
- 
-@@ -1739,9 +1739,9 @@ static int parse_line(const char *fname, unsigned line, const char *buffer) {
-                 i.age_set = true;
-         }
- 
--        h = needs_glob(i.type) ? globs : items;
-+        i.glob = needs_glob(i.type);
- 
--        existing = hashmap_get(h, i.path);
-+        existing = ordered_hashmap_get(items, i.path);
-         if (existing) {
-                 unsigned n;
- 
-@@ -1752,7 +1752,7 @@ static int parse_line(const char *fname, unsigned line, const char *buffer) {
-                 }
-         } else {
-                 existing = new0(ItemArray, 1);
--                r = hashmap_put(h, i.path, existing);
-+                r = ordered_hashmap_put(items, i.path, existing);
-                 if (r < 0)
-                         return log_oom();
-         }
-@@ -1911,14 +1911,20 @@ static int read_config_file(const char *fn, bool ignore_enoent) {
-         }
- 
-         /* we have to determine age parameter for each entry of type X */
--        HASHMAP_FOREACH(i, globs, iterator) {
-+        ORDERED_HASHMAP_FOREACH(i, items, iterator) {
-                 Iterator iter;
-                 Item *j, *candidate_item = NULL;
-+                int number = 0;
- 
-+                if (!i->glob)
-+                        continue;
-                 if (i->type != IGNORE_DIRECTORY_PATH)
-                         continue;
- 
--                HASHMAP_FOREACH(j, items, iter) {
-+                ORDERED_HASHMAP_FOREACH(j, items, iter) {
-+                        number++;
-+                        if (j == i)
-+                                continue;
-                         if (j->type != CREATE_DIRECTORY && j->type != TRUNCATE_DIRECTORY && j->type != CREATE_SUBVOLUME)
-                                 continue;
- 
-@@ -1964,10 +1970,9 @@ int main(int argc, char *argv[]) {
- 
-         mac_selinux_init(NULL);
- 
--        items = hashmap_new(&string_hash_ops);
--        globs = hashmap_new(&string_hash_ops);
-+        items = ordered_hashmap_new(&string_hash_ops);
- 
--        if (!items || !globs) {
-+        if (!items) {
-                 r = log_oom();
-                 goto finish;
-         }
-@@ -2000,27 +2005,17 @@ int main(int argc, char *argv[]) {
-                 }
-         }
- 
--        HASHMAP_FOREACH(a, globs, iterator) {
--                k = process_item_array(a);
--                if (k < 0 && r == 0)
--                        r = k;
--        }
--
--        HASHMAP_FOREACH(a, items, iterator) {
-+        ORDERED_HASHMAP_FOREACH(a, items, iterator) {
-                 k = process_item_array(a);
-                 if (k < 0 && r == 0)
-                         r = k;
-         }
- 
- finish:
--        while ((a = hashmap_steal_first(items)))
--                item_array_free(a);
--
--        while ((a = hashmap_steal_first(globs)))
-+        while ((a = ordered_hashmap_steal_first(items)))
-                 item_array_free(a);
- 
--        hashmap_free(items);
--        hashmap_free(globs);
-+        ordered_hashmap_free(items);
- 
-         free(arg_include_prefixes);
-         free(arg_exclude_prefixes);
--- 
-1.9.3
-
diff --git a/meta/recipes-core/systemd/systemd/0015-Revert-udev-remove-userspace-firmware-loading-suppor.patch b/meta/recipes-core/systemd/systemd/0015-Revert-udev-remove-userspace-firmware-loading-suppor.patch
index 3e3aa27..6308cc7 100644
--- a/meta/recipes-core/systemd/systemd/0015-Revert-udev-remove-userspace-firmware-loading-suppor.patch
+++ b/meta/recipes-core/systemd/systemd/0015-Revert-udev-remove-userspace-firmware-loading-suppor.patch
@@ -21,11 +21,11 @@ Signed-off-by: Jonathan Liu <net147@gmail.com>
  8 files changed, 214 insertions(+), 4 deletions(-)
  create mode 100644 src/udev/udev-builtin-firmware.c
 
-diff --git a/Makefile.am b/Makefile.am
-index bf04d31..9394700 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -3678,6 +3678,18 @@ libudev_core_la_LIBADD = \
+Index: git/Makefile.am
+===================================================================
+--- git.orig/Makefile.am
++++ git/Makefile.am
+@@ -3470,6 +3470,18 @@ libudev_core_la_LIBADD = \
  	$(BLKID_LIBS) \
  	$(KMOD_LIBS)
  
@@ -44,10 +44,10 @@ index bf04d31..9394700 100644
  if HAVE_KMOD
  libudev_core_la_SOURCES += \
  	src/udev/udev-builtin-kmod.c
-diff --git a/README b/README
-index c722092..db382d2 100644
---- a/README
-+++ b/README
+Index: git/README
+===================================================================
+--- git.orig/README
++++ git/README
 @@ -36,7 +36,8 @@ LICENSE:
          - except src/udev/* which is (currently still) GPLv2, GPLv2+
  
@@ -76,11 +76,11 @@ index c722092..db382d2 100644
            CONFIG_FW_LOADER_USER_HELPER=n
  
          Some udev rules and virtualization detection relies on it:
-diff --git a/TODO b/TODO
-index 255a4f2..407bdd0 100644
---- a/TODO
-+++ b/TODO
-@@ -727,6 +727,7 @@ Features:
+Index: git/TODO
+===================================================================
+--- git.orig/TODO
++++ git/TODO
+@@ -754,6 +754,7 @@ Features:
  * ExecOnFailure=/usr/bin/foo
  
  * udev:
@@ -88,11 +88,11 @@ index 255a4f2..407bdd0 100644
    - move to LGPL
    - kill scsi_id
    - add trigger --subsystem-match=usb/usb_device device
-diff --git a/configure.ac b/configure.ac
-index 97a29d6..13b80ce 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -1245,6 +1245,25 @@ fi
+Index: git/configure.ac
+===================================================================
+--- git.orig/configure.ac
++++ git/configure.ac
+@@ -1268,6 +1268,26 @@ fi
  AM_CONDITIONAL(HAVE_MYHOSTNAME, [test "$have_myhostname" = "yes"])
  
  # ------------------------------------------------------------------------------
@@ -114,23 +114,23 @@ index 97a29d6..13b80ce 100644
 +AS_IF([test "x${FIRMWARE_PATH}" != "x"], [ AC_DEFINE(HAVE_FIRMWARE, 1, [Define if FIRMWARE is available]) ])
 +AM_CONDITIONAL(ENABLE_FIRMWARE, [test "x${FIRMWARE_PATH}" != "x"])
 +
++
 +# ------------------------------------------------------------------------------
- AC_ARG_ENABLE([gudev],
-        AS_HELP_STRING([--disable-gudev], [disable Gobject libudev support @<:@default=enabled@:>@]),
-        [], [enable_gudev=yes])
-@@ -1533,6 +1552,7 @@ AC_MSG_RESULT([
+ AC_ARG_ENABLE(hwdb, [AC_HELP_STRING([--disable-hwdb], [disable hardware database support])],
+        enable_hwdb=$enableval, enable_hwdb=yes)
+ AM_CONDITIONAL(ENABLE_HWDB, [test x$enable_hwdb = xyes])
+@@ -1574,6 +1594,7 @@ AC_MSG_RESULT([
+         SysV rc?.d directories:  ${SYSTEM_SYSVRCND_PATH}
          Build Python:            ${PYTHON}
-         Installation Python:     ${PYTHON_BINARY}
          sphinx binary:           ${SPHINX_BUILD}
 +        firmware path:           ${FIRMWARE_PATH}
          PAM modules dir:         ${with_pamlibdir}
          PAM configuration dir:   ${with_pamconfdir}
          D-Bus policy dir:        ${with_dbuspolicydir}
-diff --git a/src/udev/udev-builtin-firmware.c b/src/udev/udev-builtin-firmware.c
-new file mode 100644
-index 0000000..bd8c2fb
+Index: git/src/udev/udev-builtin-firmware.c
+===================================================================
 --- /dev/null
-+++ b/src/udev/udev-builtin-firmware.c
++++ git/src/udev/udev-builtin-firmware.c
 @@ -0,0 +1,154 @@
 +/*
 + * firmware - Kernel firmware loader
@@ -286,11 +286,11 @@ index 0000000..bd8c2fb
 +        .help = "kernel firmware loader",
 +        .run_once = true,
 +};
-diff --git a/src/udev/udev-builtin.c b/src/udev/udev-builtin.c
-index 1950ec2..f21c0b6 100644
---- a/src/udev/udev-builtin.c
-+++ b/src/udev/udev-builtin.c
-@@ -34,6 +34,9 @@ static const struct udev_builtin *builtins[] = {
+Index: git/src/udev/udev-builtin.c
+===================================================================
+--- git.orig/src/udev/udev-builtin.c
++++ git/src/udev/udev-builtin.c
+@@ -30,6 +30,9 @@ static const struct udev_builtin *builti
          [UDEV_BUILTIN_BLKID] = &udev_builtin_blkid,
  #endif
          [UDEV_BUILTIN_BTRFS] = &udev_builtin_btrfs,
@@ -300,11 +300,11 @@ index 1950ec2..f21c0b6 100644
          [UDEV_BUILTIN_HWDB] = &udev_builtin_hwdb,
          [UDEV_BUILTIN_INPUT_ID] = &udev_builtin_input_id,
          [UDEV_BUILTIN_KEYBOARD] = &udev_builtin_keyboard,
-diff --git a/src/udev/udev.h b/src/udev/udev.h
-index dece6ec..f7ee1e7 100644
---- a/src/udev/udev.h
-+++ b/src/udev/udev.h
-@@ -151,6 +151,9 @@ enum udev_builtin_cmd {
+Index: git/src/udev/udev.h
+===================================================================
+--- git.orig/src/udev/udev.h
++++ git/src/udev/udev.h
+@@ -146,6 +146,9 @@ enum udev_builtin_cmd {
          UDEV_BUILTIN_BLKID,
  #endif
          UDEV_BUILTIN_BTRFS,
@@ -314,7 +314,7 @@ index dece6ec..f7ee1e7 100644
          UDEV_BUILTIN_HWDB,
          UDEV_BUILTIN_INPUT_ID,
          UDEV_BUILTIN_KEYBOARD,
-@@ -179,6 +182,9 @@ struct udev_builtin {
+@@ -174,6 +177,9 @@ struct udev_builtin {
  extern const struct udev_builtin udev_builtin_blkid;
  #endif
  extern const struct udev_builtin udev_builtin_btrfs;
@@ -324,21 +324,21 @@ index dece6ec..f7ee1e7 100644
  extern const struct udev_builtin udev_builtin_hwdb;
  extern const struct udev_builtin udev_builtin_input_id;
  extern const struct udev_builtin udev_builtin_keyboard;
-diff --git a/src/udev/udevd.c b/src/udev/udevd.c
-index 99d4c89..71af1e1 100644
---- a/src/udev/udevd.c
-+++ b/src/udev/udevd.c
-@@ -99,6 +99,9 @@ struct event {
-         dev_t devnum;
-         int ifindex;
+Index: git/src/udev/udevd.c
+===================================================================
+--- git.orig/src/udev/udevd.c
++++ git/src/udev/udevd.c
+@@ -116,6 +116,9 @@ struct event {
          bool is_block;
+         sd_event_source *timeout_warning;
+         sd_event_source *timeout;
 +#ifdef HAVE_FIRMWARE
 +        bool nodelay;
 +#endif
  };
  
  static inline struct event *node_to_event(struct udev_list_node *node) {
-@@ -472,6 +475,10 @@ static int event_queue_insert(struct udev_device *dev) {
+@@ -607,6 +610,10 @@ static int event_queue_insert(Manager *m
          event->devnum = udev_device_get_devnum(dev);
          event->is_block = streq("block", udev_device_get_subsystem(dev));
          event->ifindex = udev_device_get_ifindex(dev);
@@ -349,7 +349,7 @@ index 99d4c89..71af1e1 100644
  
          log_debug("seq %llu queued, '%s' '%s'", udev_device_get_seqnum(dev),
               udev_device_get_action(dev), udev_device_get_subsystem(dev));
-@@ -548,6 +555,12 @@ static bool is_devpath_busy(struct event *event) {
+@@ -692,6 +699,12 @@ static bool is_devpath_busy(Manager *man
                          return true;
                  }
  
@@ -362,6 +362,3 @@ index 99d4c89..71af1e1 100644
                  /* parent device event found */
                  if (event->devpath[common] == '/') {
                          event->delaying_seqnum = loop_event->seqnum;
--- 
-2.3.3
-
diff --git a/meta/recipes-core/systemd/systemd/tmpfiles-pam.patch b/meta/recipes-core/systemd/systemd/tmpfiles-pam.patch
deleted file mode 100644
index a40b1b9..0000000
--- a/meta/recipes-core/systemd/systemd/tmpfiles-pam.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-Upstream-Status: Submitted
-Signed-off-by: Ross Burton <ross.burton@intel.com>
-
-From 0802aaaa9784813d318d045c79533a044eedf542 Mon Sep 17 00:00:00 2001
-From: Ross Burton <ross.burton@intel.com>
-Date: Tue, 3 Mar 2015 11:32:29 +0000
-Subject: [PATCH] tmpfiles.d: only copy /etc/pam.d if PAM is present
-
-If HAVE_PAM isn't set then don't attempt to copy /etc/pam.d from the factory, as
-it doesn't get installed.
-
-Signed-off-by: Ross Burton <ross.burton@intel.com>
----
- tmpfiles.d/etc.conf.m4 |    2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/tmpfiles.d/etc.conf.m4 b/tmpfiles.d/etc.conf.m4
-index 9b0e080..ab5cd16 100644
---- a/tmpfiles.d/etc.conf.m4
-+++ b/tmpfiles.d/etc.conf.m4
-@@ -14,4 +14,6 @@ m4_ifdef(`ENABLE_RESOLVED',
- L /etc/resolv.conf - - - - ../run/systemd/resolve/resolv.conf
- )m4_dnl
- C /etc/nsswitch.conf - - - -
-+m4_ifdef(`HAVE_PAM',
- C /etc/pam.d - - - -
-+)m4_dnl
--- 
-1.7.10.4
-
diff --git a/meta/recipes-core/systemd/systemd_219.bb b/meta/recipes-core/systemd/systemd_224.bb
similarity index 95%
rename from meta/recipes-core/systemd/systemd_219.bb
rename to meta/recipes-core/systemd/systemd_224.bb
index e187cea..16eb497 100644
--- a/meta/recipes-core/systemd/systemd_219.bb
+++ b/meta/recipes-core/systemd/systemd_224.bb
@@ -10,10 +10,9 @@ state, maintains mount and automount points and implements an \
 elaborate transactional dependency-based service control logic. It can \
 work as a drop-in replacement for sysvinit."
 
-LICENSE = "GPLv2 & LGPLv2.1 & MIT"
+LICENSE = "GPLv2 & LGPLv2.1"
 LIC_FILES_CHKSUM = "file://LICENSE.GPL2;md5=751419260aa954499f7abaabaa882bbe \
-                    file://LICENSE.LGPL2.1;md5=4fbd65380cdd255951079008b364516c \
-                    file://LICENSE.MIT;md5=544799d0b492f119fa04641d1b8868ed"
+                    file://LICENSE.LGPL2.1;md5=4fbd65380cdd255951079008b364516c"
 
 PROVIDES = "udev"
 
@@ -23,14 +22,13 @@ DEPENDS = "kmod docbook-sgml-dtd-4.1-native intltool-native gperf-native acl rea
 
 SECTION = "base/shell"
 
-inherit gtk-doc useradd pkgconfig autotools perlnative update-rc.d update-alternatives qemu systemd ptest gettext
+inherit useradd pkgconfig autotools perlnative update-rc.d update-alternatives qemu systemd ptest gettext
 
-SRCREV = "85a6fabdd3e43cfab0fc6359e9f2a9e368d4a3ed"
+SRCREV = "b2a0ac5e5b29c73ca7c0da23369a4769d5a91ddd"
 
-PV = "219-stable+git${SRCPV}"
+PV = "224+git${SRCPV}"
 
-SRC_URI = "git://github.com/systemd/systemd-stable;branch=v219-stable;protocol=git \
-           file://0002-shared-missing.h-fall-back-to-insecure-getenv.patch \
+SRC_URI = "git://github.com/systemd/systemd.git;protocol=git \
            file://0003-binfmt-Don-t-install-dependency-links-at-install-tim.patch \
            file://0004-configure-Check-for-additional-features-that-uclibc-.patch \
            file://0005-nspawn-Use-execvpe-only-when-libc-supports-it.patch \
@@ -40,11 +38,8 @@ SRC_URI = "git://github.com/systemd/systemd-stable;branch=v219-stable;protocol=g
            file://0009-sysv-generator-add-support-for-executing-scripts-und.patch \
            file://0010-Make-root-s-home-directory-configurable.patch \
            file://0011-systemd-user-avoid-using-system-auth.patch \
-           file://0012-systemd-tmpfiles.c-Honor-ordering-within-files-as-th.patch \
            file://0014-Revert-rules-remove-firmware-loading-rules.patch \
            file://0015-Revert-udev-remove-userspace-firmware-loading-suppor.patch \
-           file://tmpfiles-pam.patch \
-           file://0001-Revert-core-mount-add-dependencies-to-dynamically-mo.patch \
            file://touchscreen.rules \
            file://00-create-volatile.conf \
            file://init \
@@ -108,8 +103,6 @@ EXTRA_OECONF = " --with-rootprefix=${rootprefix} \
                  --with-rootlibdir=${rootlibdir} \
                  --with-roothomedir=${ROOT_HOME} \
                  --disable-coredump \
-                 --disable-introspection \
-                 --disable-kdbus \
                  --enable-split-usr \
                  --without-python \
                  --with-sysvrcnd-path=${sysconfdir} \
@@ -210,7 +203,7 @@ python populate_packages_prepend (){
 PACKAGES_DYNAMIC += "^lib(udev|systemd).*"
 
 PACKAGES =+ "${PN}-gui ${PN}-vconsole-setup ${PN}-initramfs ${PN}-analyze ${PN}-kernel-install \
-             ${PN}-rpm-macros ${PN}-binfmt ${PN}-pam ${PN}-zsh libgudev"
+             ${PN}-rpm-macros ${PN}-binfmt ${PN}-pam ${PN}-zsh ${PN}-xorg-xinitrc"
 
 SYSTEMD_PACKAGES = "${PN}-binfmt"
 SYSTEMD_SERVICE_${PN}-binfmt = "systemd-binfmt.service"
@@ -224,8 +217,6 @@ FILES_${PN}-analyze = "${bindir}/systemd-analyze"
 FILES_${PN}-initramfs = "/init"
 RDEPENDS_${PN}-initramfs = "${PN}"
 
-FILES_libgudev = "${libdir}/libgudev*${SOLIBS}"
-
 RDEPENDS_${PN}-ptest += "perl python bash"
 FILES_${PN}-ptest += "${libdir}/udev/rules.d"
 
@@ -245,6 +236,8 @@ FILES_${PN}-kernel-install = "${bindir}/kernel-install \
 FILES_${PN}-rpm-macros = "${exec_prefix}/lib/rpm \
                          "
 
+FILES_${PN}-xorg-xinitrc = "${sysconfdir}/X11/xinit/xinitrc.d/*"
+
 FILES_${PN}-zsh = "${datadir}/zsh/site-functions"
 
 FILES_${PN}-binfmt = "${sysconfdir}/binfmt.d/ \
-- 
2.1.4



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

* [PATCH 02/17] core-image-minimal: Add 4M extra space when using systemd
  2015-08-24 20:03 [PATCH 00/17] systemd upgrade, distribute->setuptools and clang fixes Khem Raj
  2015-08-24 20:03 ` [PATCH 01/17] systemd: Upgrade 219 -> 224 Khem Raj
@ 2015-08-24 20:03 ` Khem Raj
  2015-08-24 20:03 ` [PATCH 03/17] systemd: Cache/define tool paths for target Khem Raj
                   ` (14 subsequent siblings)
  16 siblings, 0 replies; 31+ messages in thread
From: Khem Raj @ 2015-08-24 20:03 UTC (permalink / raw)
  To: openembedded-core

qemu images fail to rebuild the hwdb due to no space letf on device

 systemd-hwdb-update.service - Rebuild Hardware Database
   Loaded: loaded (/lib/systemd/system/systemd-hwdb-update.service;
   static; vendor preset: enabled)
      Active: failed (Result: exit-code) since Sat 2015-08-15 21:39:28
      UTC; 28s ago
      Docs: man:hwdb(7)
            man:systemd-hwdb(8)
	        Process: 92 ExecStart=/bin/systemd-hwdb update
		(code=exited, status=1/FAILURE)
		 Main PID: 92 (code=exited, status=1/FAILURE)

	 Aug 15 21:39:28 qemux86 systemd-hwdb[92]:
		 Failure writing database //etc/udev/hwdb.bin:
		 No space left on device
		 Aug 15 21:39:28 qemux86 systemd[1]:
		 systemd-hwdb-update.service: Main process
		 exited, code=exited, status=1/FAILURE
		 Aug 15 21:39:28 qemux86 systemd[1]: Failed to
		 start Rebuild Hardware Database.

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta/recipes-core/images/core-image-minimal.bb | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/recipes-core/images/core-image-minimal.bb b/meta/recipes-core/images/core-image-minimal.bb
index 9716274..8dd77b3 100644
--- a/meta/recipes-core/images/core-image-minimal.bb
+++ b/meta/recipes-core/images/core-image-minimal.bb
@@ -9,4 +9,4 @@ LICENSE = "MIT"
 inherit core-image
 
 IMAGE_ROOTFS_SIZE ?= "8192"
-
+IMAGE_ROOTFS_EXTRA_SPACE_append = "${@bb.utils.contains("DISTRO_FEATURES", "systemd", " + 4096", "" ,d)}"
-- 
2.1.4



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

* [PATCH 00/17] systemd upgrade, distribute->setuptools and clang fixes
@ 2015-08-24 20:03 Khem Raj
  2015-08-24 20:03 ` [PATCH 01/17] systemd: Upgrade 219 -> 224 Khem Raj
                   ` (16 more replies)
  0 siblings, 17 replies; 31+ messages in thread
From: Khem Raj @ 2015-08-24 20:03 UTC (permalink / raw)
  To: openembedded-core

This is a cumulative series containing

first three and then patch 11 and 12  patches are for systemd upgrade to 224
last two patches deal with distribute to setuptools change
Rest of them improve the recipes in way so they work with clang compiler


Khem Raj (17):
  systemd: Upgrade 219 -> 224
  core-image-minimal: Add 4M extra space when using systemd
  systemd: Cache/define tool paths for target
  kernel-arch: Force BFD kernel when using gcc for linking
  sysvinit: Fix makefile bug found with clang
  alsa-lib: Lift the limitation to use gcc only cross compiler
  json-c: Include math_compat.c for NAN/INF values
  libvorbis: Update libvorbis_1.3.4.bb -> libvorbis_1.3.5.bb
  psplash: Turn psplash_fb_plot_pixel() into static inline
  mdadm: Upgrade mdadm_3.3.2.bb -> mdadm_3.3.4.bb
  bitbake.conf: Define fallback DISTRO_NAME
  systemd: Remove exporting special CPP
  diffstat: Add TOOLCHAIN_OPTIONS to Linker calls
  liburcu: Fix atomic function parameter types in calls
  busybox: Use CC instead of bare LD to be the Linker
  python-distribute,python-setuptools: Migrate to good old
    python-setuptools
  classes,conf: Remove python-distribute refrences

 meta/classes/kernel-arch.bbclass                   |   2 +-
 meta/classes/setuptools.bbclass                    |   2 +-
 meta/conf/bitbake.conf                             |  20 +--
 meta/conf/distro/include/distro_alias.inc          |   2 -
 meta/conf/distro/include/package_regex.inc         |   4 -
 ...-linking-instead-of-LD-and-use-CFLAGS-and.patch | 121 ++++++++++++++
 .../busybox/0002-Passthrough-r-to-linker.patch     |  32 ++++
 meta/recipes-core/busybox/busybox_1.23.2.bb        |   2 +
 meta/recipes-core/images/core-image-minimal.bb     |   2 +-
 ...Convert-psplash_fb_plot_pixel-to-a-static.patch |  53 ++++++
 meta/recipes-core/psplash/psplash_git.bb           |   1 +
 ...-mount-add-dependencies-to-dynamically-mo.patch |  36 ----
 ...ed-missing.h-fall-back-to-insecure-getenv.patch |  25 ---
 ...t-install-dependency-links-at-install-tim.patch |  35 ++--
 ...heck-for-additional-features-that-uclibc-.patch |  23 ++-
 ...wn-Use-execvpe-only-when-libc-supports-it.patch |  37 ++---
 ...til-Use-mkostemp-only-if-libc-supports-it.patch |   8 +-
 ...-unimplemented-_SC_PHYS_PAGES-system-conf.patch |   8 +-
 ...0-Make-root-s-home-directory-configurable.patch | 136 ++++++++-------
 ...files.c-Honor-ordering-within-files-as-th.patch | 185 ---------------------
 ...-remove-userspace-firmware-loading-suppor.patch |  99 ++++++-----
 .../systemd/systemd/tmpfiles-pam.patch             |  30 ----
 .../systemd/{systemd_219.bb => systemd_224.bb}     |  38 +++--
 ...an-issue-that-clang-reports-about-mutlipl.patch |  52 ++++++
 meta/recipes-core/sysvinit/sysvinit_2.88dsf.bb     |   1 +
 meta/recipes-devtools/diffstat/diffstat_1.60.bb    |   2 +
 .../0001-json_tokener-requires-INF-and-NAN.patch   |  37 +++++
 meta/recipes-devtools/json-c/json-c_0.12.bb        |   6 +-
 .../python/python-distribute_0.6.32.bb             |  63 -------
 .../python/python-setuptools_18.2.bb               |  46 +++++
 ...tuptools_15.2.bb => python3-setuptools_18.2.bb} |   0
 meta/recipes-extended/mdadm/files/inline.patch     |  39 -----
 .../mdadm/files/mdadm-3.3.2_x32_abi_time_t.patch   |  23 ++-
 .../mdadm/{mdadm_3.3.2.bb => mdadm_3.3.4.bb}       |   6 +-
 ...build-Do-not-try-to-detect-cross-compiler.patch |  45 +++++
 meta/recipes-multimedia/alsa/alsa-lib_1.0.29.bb    |   1 +
 .../{libvorbis_1.3.4.bb => libvorbis_1.3.5.bb}     |   7 +-
 ...cify-complete-types-for-atomic-function-c.patch | 158 ++++++++++++++++++
 meta/recipes-support/liburcu/liburcu_0.8.7.bb      |   1 +
 39 files changed, 769 insertions(+), 619 deletions(-)
 create mode 100644 meta/recipes-core/busybox/busybox/0001-Use-CC-when-linking-instead-of-LD-and-use-CFLAGS-and.patch
 create mode 100644 meta/recipes-core/busybox/busybox/0002-Passthrough-r-to-linker.patch
 create mode 100644 meta/recipes-core/psplash/files/0001-psplash-fb-Convert-psplash_fb_plot_pixel-to-a-static.patch
 delete mode 100644 meta/recipes-core/systemd/systemd/0001-Revert-core-mount-add-dependencies-to-dynamically-mo.patch
 delete mode 100644 meta/recipes-core/systemd/systemd/0002-shared-missing.h-fall-back-to-insecure-getenv.patch
 delete mode 100644 meta/recipes-core/systemd/systemd/0012-systemd-tmpfiles.c-Honor-ordering-within-files-as-th.patch
 delete mode 100644 meta/recipes-core/systemd/systemd/tmpfiles-pam.patch
 rename meta/recipes-core/systemd/{systemd_219.bb => systemd_224.bb} (94%)
 create mode 100644 meta/recipes-core/sysvinit/sysvinit/0001-This-fixes-an-issue-that-clang-reports-about-mutlipl.patch
 create mode 100644 meta/recipes-devtools/json-c/json-c/0001-json_tokener-requires-INF-and-NAN.patch
 delete mode 100644 meta/recipes-devtools/python/python-distribute_0.6.32.bb
 create mode 100644 meta/recipes-devtools/python/python-setuptools_18.2.bb
 rename meta/recipes-devtools/python/{python3-setuptools_15.2.bb => python3-setuptools_18.2.bb} (100%)
 delete mode 100644 meta/recipes-extended/mdadm/files/inline.patch
 rename meta/recipes-extended/mdadm/{mdadm_3.3.2.bb => mdadm_3.3.4.bb} (92%)
 create mode 100644 meta/recipes-multimedia/alsa/alsa-lib/0001-build-Do-not-try-to-detect-cross-compiler.patch
 rename meta/recipes-multimedia/libvorbis/{libvorbis_1.3.4.bb => libvorbis_1.3.5.bb} (78%)
 create mode 100644 meta/recipes-support/liburcu/liburcu/0001-uatomic-Specify-complete-types-for-atomic-function-c.patch

-- 
2.1.4



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

* [PATCH 03/17] systemd: Cache/define tool paths for target
  2015-08-24 20:03 [PATCH 00/17] systemd upgrade, distribute->setuptools and clang fixes Khem Raj
  2015-08-24 20:03 ` [PATCH 01/17] systemd: Upgrade 219 -> 224 Khem Raj
  2015-08-24 20:03 ` [PATCH 02/17] core-image-minimal: Add 4M extra space when using systemd Khem Raj
@ 2015-08-24 20:03 ` Khem Raj
  2015-08-24 20:03 ` [PATCH 04/17] kernel-arch: Force BFD kernel when using gcc for linking Khem Raj
                   ` (13 subsequent siblings)
  16 siblings, 0 replies; 31+ messages in thread
From: Khem Raj @ 2015-08-24 20:03 UTC (permalink / raw)
  To: openembedded-core

Recently, systemd has added a patch

f00929ad622c978f8ad83590a15a765b4beecac9

where it now pokes at the system to find
out the path of mount/umount tools, this caused the builds to fail
because it ended up with identifying these programs from native sysroot
but they were actually meant for target, this lead to boot failures due
to none of mount worked because the paths are encoded into systemd
binaries during build time.

Correct few others while here, these are not yet detected wrongly in my
build, because those binaries are not found in my native sysroot but if
some one staged the native providers of these packages they will fail too.

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta/recipes-core/systemd/systemd_224.bb | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/meta/recipes-core/systemd/systemd_224.bb b/meta/recipes-core/systemd/systemd_224.bb
index 16eb497..97d5d22 100644
--- a/meta/recipes-core/systemd/systemd_224.bb
+++ b/meta/recipes-core/systemd/systemd_224.bb
@@ -98,7 +98,17 @@ rootprefix ?= "${base_prefix}"
 rootlibdir ?= "${base_libdir}"
 rootlibexecdir = "${rootprefix}/lib"
 
-# The gtk+ tools should get built as a separate recipe e.g. systemd-tools
+CACHED_CONFIGUREVARS_class-target = "\
+                         ac_cv_path_MOUNT_PATH=${base_bindir}/mount \
+                         ac_cv_path_UMOUNT_PATH=${base_bindir}/umount \
+                         ac_cv_path_KMOD=${base_bindir}/kmod \
+                         ac_cv_path_KILL=${base_bindir}/kill \
+                         ac_cv_path_SULOGIN=${base_sbindir}/sulogin \
+                         ac_cv_path_KEXEC=${sbindir}/kexec \
+                         ac_cv_path_QUOTACHECK=${sbindir}/quotacheck \
+                         ac_cv_path_QUOTAON=${sbindir}/quotaon \
+			 "
+
 EXTRA_OECONF = " --with-rootprefix=${rootprefix} \
                  --with-rootlibdir=${rootlibdir} \
                  --with-roothomedir=${ROOT_HOME} \
-- 
2.1.4



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

* [PATCH 04/17] kernel-arch: Force BFD kernel when using gcc for linking
  2015-08-24 20:03 [PATCH 00/17] systemd upgrade, distribute->setuptools and clang fixes Khem Raj
                   ` (2 preceding siblings ...)
  2015-08-24 20:03 ` [PATCH 03/17] systemd: Cache/define tool paths for target Khem Raj
@ 2015-08-24 20:03 ` Khem Raj
  2015-08-24 20:03 ` [PATCH 05/17] sysvinit: Fix makefile bug found with clang Khem Raj
                   ` (12 subsequent siblings)
  16 siblings, 0 replies; 31+ messages in thread
From: Khem Raj @ 2015-08-24 20:03 UTC (permalink / raw)
  To: openembedded-core

We redefine LD to point to ld.bfd when building kernel, which works in
most cases since kbuild system calls out for bare LD most of the time,
however some of newer kernels e.g. 4.1+ have some code added which can
call gcc directly to do the linking job e.g. arm vdso code

This causes build failures when we have configured the default cross
toolchain to use gold linker as default. Errors like

BFD: arch/arm/vdso/vdso.so: Not enough room for program headers, try
linking with -N
| arm-angstrom-linux-gnueabi-objcopy:arch/arm/vdso/vdso.so[.hash]: Bad
value

start happening.

With this patch we force gcc to choose bfd linker as well

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta/classes/kernel-arch.bbclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/classes/kernel-arch.bbclass b/meta/classes/kernel-arch.bbclass
index 6650870..211b72b 100644
--- a/meta/classes/kernel-arch.bbclass
+++ b/meta/classes/kernel-arch.bbclass
@@ -53,7 +53,7 @@ HOST_LD_KERNEL_ARCH ?= "${TARGET_LD_KERNEL_ARCH}"
 TARGET_AR_KERNEL_ARCH ?= ""
 HOST_AR_KERNEL_ARCH ?= "${TARGET_AR_KERNEL_ARCH}"
 
-KERNEL_CC = "${CCACHE}${HOST_PREFIX}gcc ${HOST_CC_KERNEL_ARCH}"
+KERNEL_CC = "${CCACHE}${HOST_PREFIX}gcc ${HOST_CC_KERNEL_ARCH} -fuse-ld=bfd"
 KERNEL_LD = "${CCACHE}${HOST_PREFIX}ld.bfd ${HOST_LD_KERNEL_ARCH}"
 KERNEL_AR = "${CCACHE}${HOST_PREFIX}ar ${HOST_AR_KERNEL_ARCH}"
 
-- 
2.1.4



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

* [PATCH 05/17] sysvinit: Fix makefile bug found with clang
  2015-08-24 20:03 [PATCH 00/17] systemd upgrade, distribute->setuptools and clang fixes Khem Raj
                   ` (3 preceding siblings ...)
  2015-08-24 20:03 ` [PATCH 04/17] kernel-arch: Force BFD kernel when using gcc for linking Khem Raj
@ 2015-08-24 20:03 ` Khem Raj
  2015-08-24 20:03 ` [PATCH 06/17] alsa-lib: Lift the limitation to use gcc only cross compiler Khem Raj
                   ` (11 subsequent siblings)
  16 siblings, 0 replies; 31+ messages in thread
From: Khem Raj @ 2015-08-24 20:03 UTC (permalink / raw)
  To: openembedded-core

This is due to specifying .h files on linker cmdline
clang driver is picky about it, and its not entirely correct
either

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 ...an-issue-that-clang-reports-about-mutlipl.patch | 52 ++++++++++++++++++++++
 meta/recipes-core/sysvinit/sysvinit_2.88dsf.bb     |  1 +
 2 files changed, 53 insertions(+)
 create mode 100644 meta/recipes-core/sysvinit/sysvinit/0001-This-fixes-an-issue-that-clang-reports-about-mutlipl.patch

diff --git a/meta/recipes-core/sysvinit/sysvinit/0001-This-fixes-an-issue-that-clang-reports-about-mutlipl.patch b/meta/recipes-core/sysvinit/sysvinit/0001-This-fixes-an-issue-that-clang-reports-about-mutlipl.patch
new file mode 100644
index 0000000..f35c15c
--- /dev/null
+++ b/meta/recipes-core/sysvinit/sysvinit/0001-This-fixes-an-issue-that-clang-reports-about-mutlipl.patch
@@ -0,0 +1,52 @@
+From 36ac97bfe51797458442a6035219a504a42e703a Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 21 Aug 2015 10:56:40 -0700
+Subject: [PATCH] This fixes an issue that clang reports about mutliple output
+ files
+
+Issue is that we are passing .h file to link step as seen below.
+
+| arm-oe-linux-gnueabi-clang  -march=armv7-a -mthumb  -mfloat-abi=hard
+-mfpu=neon-vfpv4 -mtune=cortex-a7 -D__extern_always_inline=inline
+-no-integrated-as
+--sysroot=/mnt/home/kraj/work/angstrom/sources/openembedded-core/build/tmp-glibc/sysroots/raspberrypi2
+-Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed  halt.o ifdown.o hddown.o
+utmp.o reboot.h   -o halt
+| clang-3.7: error: cannot specify -o when generating multiple output
+files
+
+Upstream-Status: Pending
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/Makefile | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/src/Makefile b/src/Makefile
+index e77ed5f..a6f9f40 100644
+--- a/src/Makefile
++++ b/src/Makefile
+@@ -103,9 +103,9 @@ all:		$(BIN) $(SBIN) $(USRBIN)
+ init:		LDLIBS += $(INITLIBS) $(STATIC)
+ init:		init.o init_utmp.o
+ 
+-halt:		halt.o ifdown.o hddown.o utmp.o reboot.h
++halt:		halt.o ifdown.o hddown.o utmp.o
+ 
+-last:		last.o oldutmp.h
++last:		last.o
+ 
+ mesg:		mesg.o
+ 
+@@ -120,7 +120,7 @@ sulogin:	sulogin.o
+ 
+ wall:		dowall.o wall.o
+ 
+-shutdown:	dowall.o shutdown.o utmp.o reboot.h
++shutdown:	dowall.o shutdown.o utmp.o
+ 
+ bootlogd:	LDLIBS += -lutil
+ bootlogd:	bootlogd.o
+-- 
+2.1.4
+
diff --git a/meta/recipes-core/sysvinit/sysvinit_2.88dsf.bb b/meta/recipes-core/sysvinit/sysvinit_2.88dsf.bb
index 6709a9b..5dfe39e 100644
--- a/meta/recipes-core/sysvinit/sysvinit_2.88dsf.bb
+++ b/meta/recipes-core/sysvinit/sysvinit_2.88dsf.bb
@@ -13,6 +13,7 @@ SRC_URI = "${SAVANNAH_GNU_MIRROR}/sysvinit/sysvinit-${PV}.tar.bz2 \
            file://install.patch \
            file://crypt-lib.patch \
            file://pidof-add-m-option.patch \
+           file://0001-This-fixes-an-issue-that-clang-reports-about-mutlipl.patch \
            file://rcS-default \
            file://rc \
            file://rcS \
-- 
2.1.4



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

* [PATCH 06/17] alsa-lib: Lift the limitation to use gcc only cross compiler
  2015-08-24 20:03 [PATCH 00/17] systemd upgrade, distribute->setuptools and clang fixes Khem Raj
                   ` (4 preceding siblings ...)
  2015-08-24 20:03 ` [PATCH 05/17] sysvinit: Fix makefile bug found with clang Khem Raj
@ 2015-08-24 20:03 ` Khem Raj
  2015-08-24 20:03 ` [PATCH 07/17] json-c: Include math_compat.c for NAN/INF values Khem Raj
                   ` (10 subsequent siblings)
  16 siblings, 0 replies; 31+ messages in thread
From: Khem Raj @ 2015-08-24 20:03 UTC (permalink / raw)
  To: openembedded-core

alsa-lib configure tries to see that if CC variabled doesnt contain
'gcc' then it tries to guess and redefine CC to be something gcc, which
doesnt work with OE since we define CC to have sysroot and options
attached to it. So all tests fail when configure constructs the CC for
cross compiler like this. This portion is not needed at all

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 ...build-Do-not-try-to-detect-cross-compiler.patch | 45 ++++++++++++++++++++++
 meta/recipes-multimedia/alsa/alsa-lib_1.0.29.bb    |  1 +
 2 files changed, 46 insertions(+)
 create mode 100644 meta/recipes-multimedia/alsa/alsa-lib/0001-build-Do-not-try-to-detect-cross-compiler.patch

diff --git a/meta/recipes-multimedia/alsa/alsa-lib/0001-build-Do-not-try-to-detect-cross-compiler.patch b/meta/recipes-multimedia/alsa/alsa-lib/0001-build-Do-not-try-to-detect-cross-compiler.patch
new file mode 100644
index 0000000..583bc3d
--- /dev/null
+++ b/meta/recipes-multimedia/alsa/alsa-lib/0001-build-Do-not-try-to-detect-cross-compiler.patch
@@ -0,0 +1,45 @@
+From 17aeb3565f411e7796cabe403f92d15948a8ca95 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 21 Aug 2015 14:42:45 -0700
+Subject: [PATCH] build: Do not try to detect cross-compiler
+
+cross compilers are passed via path may not be a gcc based cross
+compiler in such cases this check fails and try's to force gcc based
+cross compiler detection, This code is a convenience that limits the
+build system
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+Upstream-Status: Pending
+
+ configure.ac | 14 --------------
+ 1 file changed, 14 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 3022cf8..9d77440 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -27,20 +27,6 @@ AC_PREFIX_DEFAULT(/usr)
+ 
+ dnl Checks for programs.
+ 
+-dnl try to gues cross-compiler if not set
+-if test "x$host" != "x$build" -a -z "`echo $CC | grep -e '-gcc'`";
+-then
+-  AC_MSG_CHECKING(for cross-compiler)
+-
+-  which ${program_prefix}gcc >/dev/null 2>&1 && CC=${program_prefix}gcc
+-  which ${host_cpu}-${host_os}-gcc >/dev/null 2>&1 \
+-  && CC=${host_cpu}-${host_os}-gcc
+-  which ${host_cpu}-${host_vendor}-${host_os}-gcc >/dev/null 2>&1 \
+-  && CC=${host_cpu}-${host_vendor}-${host_os}-gcc
+-
+-  AC_MSG_RESULT($CC)
+-fi
+-	    
+ CFLAGS="$CFLAGS -D_GNU_SOURCE"
+ 
+ 
+-- 
+2.1.4
+
diff --git a/meta/recipes-multimedia/alsa/alsa-lib_1.0.29.bb b/meta/recipes-multimedia/alsa/alsa-lib_1.0.29.bb
index fc6ba69..730f427 100644
--- a/meta/recipes-multimedia/alsa/alsa-lib_1.0.29.bb
+++ b/meta/recipes-multimedia/alsa/alsa-lib_1.0.29.bb
@@ -16,6 +16,7 @@ ARM_INSTRUCTION_SET = "arm"
 
 SRC_URI = "ftp://ftp.alsa-project.org/pub/lib/${BP}.tar.bz2 \
            file://Check-if-wordexp-function-is-supported.patch \
+           file://0001-build-Do-not-try-to-detect-cross-compiler.patch \
 "
 SRC_URI[md5sum] = "de67e0eca72474d6b1121037dafe1024"
 SRC_URI[sha256sum] = "73043c35eb9636be0f4af6a240235c213f12a25feb1f04aeeac8cb7e30fcbdd0"
-- 
2.1.4



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

* [PATCH 07/17] json-c: Include math_compat.c for NAN/INF values
  2015-08-24 20:03 [PATCH 00/17] systemd upgrade, distribute->setuptools and clang fixes Khem Raj
                   ` (5 preceding siblings ...)
  2015-08-24 20:03 ` [PATCH 06/17] alsa-lib: Lift the limitation to use gcc only cross compiler Khem Raj
@ 2015-08-24 20:03 ` Khem Raj
  2015-08-24 20:03 ` [PATCH 08/17] libvorbis: Update libvorbis_1.3.4.bb -> libvorbis_1.3.5.bb Khem Raj
                   ` (9 subsequent siblings)
  16 siblings, 0 replies; 31+ messages in thread
From: Khem Raj @ 2015-08-24 20:03 UTC (permalink / raw)
  To: openembedded-core

The backport patch also fixes the warning which was being work arounded
by disabling unused-but-set-variable

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../0001-json_tokener-requires-INF-and-NAN.patch   | 37 ++++++++++++++++++++++
 meta/recipes-devtools/json-c/json-c_0.12.bb        |  6 ++--
 2 files changed, 40 insertions(+), 3 deletions(-)
 create mode 100644 meta/recipes-devtools/json-c/json-c/0001-json_tokener-requires-INF-and-NAN.patch

diff --git a/meta/recipes-devtools/json-c/json-c/0001-json_tokener-requires-INF-and-NAN.patch b/meta/recipes-devtools/json-c/json-c/0001-json_tokener-requires-INF-and-NAN.patch
new file mode 100644
index 0000000..d29d911
--- /dev/null
+++ b/meta/recipes-devtools/json-c/json-c/0001-json_tokener-requires-INF-and-NAN.patch
@@ -0,0 +1,37 @@
+From 9be71700eb580c815688584a64621a38867c3fdd Mon Sep 17 00:00:00 2001
+From: James Myatt <james.myatt@tessella.com>
+Date: Thu, 5 Feb 2015 15:57:14 +0000
+Subject: [PATCH] json_tokener requires INF and NAN
+
+---
+Upstream-Status: Backport
+
+ json_tokener.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+Index: json-c-0.12/json_tokener.c
+===================================================================
+--- json-c-0.12.orig/json_tokener.c
++++ json-c-0.12/json_tokener.c
+@@ -16,6 +16,7 @@
+ #include "config.h"
+ 
+ #include <math.h>
++#include "math_compat.h"
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <stddef.h>
+@@ -352,12 +353,10 @@ struct json_object* json_tokener_parse_e
+ 
+     case json_tokener_state_inf: /* aka starts with 'i' */
+       {
+-	int size;
+-	int size_inf;
++	size_t size_inf;
+ 	int is_negative = 0;
+ 
+ 	printbuf_memappend_fast(tok->pb, &c, 1);
+-	size = json_min(tok->st_pos+1, json_null_str_len);
+ 	size_inf = json_min(tok->st_pos+1, json_inf_str_len);
+ 	char *infbuf = tok->pb->buf;
+ 	if (*infbuf == '-')
diff --git a/meta/recipes-devtools/json-c/json-c_0.12.bb b/meta/recipes-devtools/json-c/json-c_0.12.bb
index e9c5b31..cfef03d 100644
--- a/meta/recipes-devtools/json-c/json-c_0.12.bb
+++ b/meta/recipes-devtools/json-c/json-c_0.12.bb
@@ -4,7 +4,9 @@ HOMEPAGE = "https://github.com/json-c/json-c/wiki"
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://COPYING;md5=de54b60fbbc35123ba193fea8ee216f2"
 
-SRC_URI = "https://s3.amazonaws.com/json-c_releases/releases/${BP}.tar.gz"
+SRC_URI = "https://s3.amazonaws.com/json-c_releases/releases/${BP}.tar.gz \
+           file://0001-json_tokener-requires-INF-and-NAN.patch \
+          "
 
 SRC_URI[md5sum] = "3ca4bbb881dfc4017e8021b5e0a8c491"
 SRC_URI[sha256sum] = "000c01b2b3f82dcb4261751eb71f1b084404fb7d6a282f06074d3c17078b9f3f"
@@ -17,5 +19,3 @@ do_configure_prepend() {
     # Clean up autoconf cruft that should not be in the tarball
     rm -f ${S}/config.status
 }
-
-CFLAGS += "-Wno-error=unused-but-set-variable"
-- 
2.1.4



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

* [PATCH 08/17] libvorbis: Update libvorbis_1.3.4.bb -> libvorbis_1.3.5.bb
  2015-08-24 20:03 [PATCH 00/17] systemd upgrade, distribute->setuptools and clang fixes Khem Raj
                   ` (6 preceding siblings ...)
  2015-08-24 20:03 ` [PATCH 07/17] json-c: Include math_compat.c for NAN/INF values Khem Raj
@ 2015-08-24 20:03 ` Khem Raj
  2015-08-24 20:03 ` [PATCH 09/17] psplash: Turn psplash_fb_plot_pixel() into static inline Khem Raj
                   ` (8 subsequent siblings)
  16 siblings, 0 replies; 31+ messages in thread
From: Khem Raj @ 2015-08-24 20:03 UTC (permalink / raw)
  To: openembedded-core

Licence years have changes causing checksum changes

-Copyright (c) 2002-2008 Xiph.org Foundation
+Copyright (c) 2002-2015 Xiph.org Foundation

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../libvorbis/{libvorbis_1.3.4.bb => libvorbis_1.3.5.bb}           | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)
 rename meta/recipes-multimedia/libvorbis/{libvorbis_1.3.4.bb => libvorbis_1.3.5.bb} (78%)

diff --git a/meta/recipes-multimedia/libvorbis/libvorbis_1.3.4.bb b/meta/recipes-multimedia/libvorbis/libvorbis_1.3.5.bb
similarity index 78%
rename from meta/recipes-multimedia/libvorbis/libvorbis_1.3.4.bb
rename to meta/recipes-multimedia/libvorbis/libvorbis_1.3.5.bb
index 0788c94..b7a0667 100644
--- a/meta/recipes-multimedia/libvorbis/libvorbis_1.3.4.bb
+++ b/meta/recipes-multimedia/libvorbis/libvorbis_1.3.5.bb
@@ -6,14 +6,13 @@ HOMEPAGE = "http://www.vorbis.com/"
 BUGTRACKER = "https://trac.xiph.org"
 SECTION = "libs"
 LICENSE = "BSD"
-LIC_FILES_CHKSUM = "file://COPYING;md5=ca77c6c3ea4d29cb68dce8ef5ab0d897 \
+LIC_FILES_CHKSUM = "file://COPYING;md5=7d2c487d2fc7dd3e3c7c465a5b7f6217 \
                     file://include/vorbis/vorbisenc.h;beginline=1;endline=11;md5=d1c1d138863d6315131193d4046d81cb"
 DEPENDS = "libogg"
 
 SRC_URI = "http://downloads.xiph.org/releases/vorbis/${BP}.tar.xz"
-
-SRC_URI[md5sum] = "55f2288055e44754275a17c9a2497391"
-SRC_URI[sha256sum] = "2f05497d29195dc23ee952a24ee3973a74e6277569c4c2eca0ec5968e541f372"
+SRC_URI[md5sum] = "28cb28097c07a735d6af56e598e1c90f"
+SRC_URI[sha256sum] = "54f94a9527ff0a88477be0a71c0bab09a4c3febe0ed878b24824906cd4b0e1d1"
 
 inherit autotools pkgconfig
 
-- 
2.1.4



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

* [PATCH 09/17] psplash: Turn psplash_fb_plot_pixel() into static inline
  2015-08-24 20:03 [PATCH 00/17] systemd upgrade, distribute->setuptools and clang fixes Khem Raj
                   ` (7 preceding siblings ...)
  2015-08-24 20:03 ` [PATCH 08/17] libvorbis: Update libvorbis_1.3.4.bb -> libvorbis_1.3.5.bb Khem Raj
@ 2015-08-24 20:03 ` Khem Raj
  2015-08-24 20:03 ` [PATCH 10/17] mdadm: Upgrade mdadm_3.3.2.bb -> mdadm_3.3.4.bb Khem Raj
                   ` (7 subsequent siblings)
  16 siblings, 0 replies; 31+ messages in thread
From: Khem Raj @ 2015-08-24 20:03 UTC (permalink / raw)
  To: openembedded-core

This function is not used anywhere except psplash-fb.c so make it static
inline function which is portable across compilers

Fixes issues like
psplash-fb.o: In function `psplash_fb_draw_rect':
|
/mnt/home/kraj/work/angstrom/sources/openembedded-core/build/tmp-glibc/work/i586-oe-linux/psplash/0.1+gitAUTOINC+14c8f7b705-r15/git/psplash-fb.c:363:
undefined reference to `psplash_fb_plot_pixel'

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 ...Convert-psplash_fb_plot_pixel-to-a-static.patch | 53 ++++++++++++++++++++++
 meta/recipes-core/psplash/psplash_git.bb           |  1 +
 2 files changed, 54 insertions(+)
 create mode 100644 meta/recipes-core/psplash/files/0001-psplash-fb-Convert-psplash_fb_plot_pixel-to-a-static.patch

diff --git a/meta/recipes-core/psplash/files/0001-psplash-fb-Convert-psplash_fb_plot_pixel-to-a-static.patch b/meta/recipes-core/psplash/files/0001-psplash-fb-Convert-psplash_fb_plot_pixel-to-a-static.patch
new file mode 100644
index 0000000..93b3c6b
--- /dev/null
+++ b/meta/recipes-core/psplash/files/0001-psplash-fb-Convert-psplash_fb_plot_pixel-to-a-static.patch
@@ -0,0 +1,53 @@
+From 8f5de12cc75bfaa8400adf32f30c015d8f813540 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 22 Aug 2015 07:12:20 -0700
+Subject: [PATCH] psplash-fb: Convert psplash_fb_plot_pixel() to a static
+ inline
+
+This function is not used outside psplash-fb.c and by making it
+static inline we keep the performance and also make it portable across
+multiple compilers and gcc versions
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+Upstream-Status: Pending
+
+ psplash-fb.c | 2 +-
+ psplash-fb.h | 8 --------
+ 2 files changed, 1 insertion(+), 9 deletions(-)
+
+diff --git a/psplash-fb.c b/psplash-fb.c
+index bd9cd9d..6d235db 100644
+--- a/psplash-fb.c
++++ b/psplash-fb.c
+@@ -260,7 +260,7 @@ psplash_fb_new (int angle)
+ 
+ #define OFFSET(fb,x,y) (((y) * (fb)->stride) + ((x) * ((fb)->bpp >> 3)))
+ 
+-inline void
++static inline void
+ psplash_fb_plot_pixel (PSplashFB    *fb,
+ 		       int          x,
+ 		       int          y,
+diff --git a/psplash-fb.h b/psplash-fb.h
+index 42592ed..c6c3144 100644
+--- a/psplash-fb.h
++++ b/psplash-fb.h
+@@ -57,14 +57,6 @@ psplash_fb_destroy (PSplashFB *fb);
+ PSplashFB*
+ psplash_fb_new (int angle);
+ 
+-inline void
+-psplash_fb_plot_pixel (PSplashFB    *fb, 
+-		       int          x, 
+-		       int          y, 
+-		       uint8        red,
+-		       uint8        green,
+-		       uint8        blue);
+-
+ void
+ psplash_fb_draw_rect (PSplashFB    *fb, 
+ 		      int          x, 
+-- 
+2.1.4
+
diff --git a/meta/recipes-core/psplash/psplash_git.bb b/meta/recipes-core/psplash/psplash_git.bb
index 7f0dc78..b3b6479 100644
--- a/meta/recipes-core/psplash/psplash_git.bb
+++ b/meta/recipes-core/psplash/psplash_git.bb
@@ -10,6 +10,7 @@ PV = "0.1+git${SRCPV}"
 PR = "r15"
 
 SRC_URI = "git://git.yoctoproject.org/${BPN} \
+           file://0001-psplash-fb-Convert-psplash_fb_plot_pixel-to-a-static.patch \
            file://psplash-init \
            ${SPLASH_IMAGES}"
 
-- 
2.1.4



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

* [PATCH 10/17] mdadm: Upgrade mdadm_3.3.2.bb -> mdadm_3.3.4.bb
  2015-08-24 20:03 [PATCH 00/17] systemd upgrade, distribute->setuptools and clang fixes Khem Raj
                   ` (8 preceding siblings ...)
  2015-08-24 20:03 ` [PATCH 09/17] psplash: Turn psplash_fb_plot_pixel() into static inline Khem Raj
@ 2015-08-24 20:03 ` Khem Raj
  2015-08-24 20:03 ` [PATCH 11/17] bitbake.conf: Define fallback DISTRO_NAME Khem Raj
                   ` (6 subsequent siblings)
  16 siblings, 0 replies; 31+ messages in thread
From: Khem Raj @ 2015-08-24 20:03 UTC (permalink / raw)
  To: openembedded-core

Drop upstreamed patch for gcc5 compatibility
Forward port x32 patch

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta/recipes-extended/mdadm/files/inline.patch     | 39 ----------------------
 .../mdadm/files/mdadm-3.3.2_x32_abi_time_t.patch   | 23 ++++++-------
 .../mdadm/{mdadm_3.3.2.bb => mdadm_3.3.4.bb}       |  6 ++--
 3 files changed, 13 insertions(+), 55 deletions(-)
 delete mode 100644 meta/recipes-extended/mdadm/files/inline.patch
 rename meta/recipes-extended/mdadm/{mdadm_3.3.2.bb => mdadm_3.3.4.bb} (92%)

diff --git a/meta/recipes-extended/mdadm/files/inline.patch b/meta/recipes-extended/mdadm/files/inline.patch
deleted file mode 100644
index 9009f06..0000000
--- a/meta/recipes-extended/mdadm/files/inline.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-with gnu11 turning on a default with gcc-5 we have to abide by new inline semantics
-using 'inline' and using is in same translation unit means an external definition has to exist
-same like "external inline" in gnu89, we simply make the functions static inline since they
-are just meant to be used in this file
-
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
-Index: mdadm-3.3.2/bitmap.c
-===================================================================
---- mdadm-3.3.2.orig/bitmap.c
-+++ mdadm-3.3.2/bitmap.c
-@@ -20,7 +20,7 @@
- 
- #include "mdadm.h"
- 
--inline void sb_le_to_cpu(bitmap_super_t *sb)
-+static inline void sb_le_to_cpu(bitmap_super_t *sb)
- {
- 	sb->magic = __le32_to_cpu(sb->magic);
- 	sb->version = __le32_to_cpu(sb->version);
-@@ -34,7 +34,7 @@ inline void sb_le_to_cpu(bitmap_super_t
- 	sb->write_behind = __le32_to_cpu(sb->write_behind);
- }
- 
--inline void sb_cpu_to_le(bitmap_super_t *sb)
-+static inline void sb_cpu_to_le(bitmap_super_t *sb)
- {
- 	sb_le_to_cpu(sb); /* these are really the same thing */
- }
-@@ -74,7 +74,7 @@ typedef struct bitmap_info_s {
- } bitmap_info_t;
- 
- /* count the dirty bits in the first num_bits of byte */
--inline int count_dirty_bits_byte(char byte, int num_bits)
-+static inline int count_dirty_bits_byte(char byte, int num_bits)
- {
- 	int num = 0;
- 
diff --git a/meta/recipes-extended/mdadm/files/mdadm-3.3.2_x32_abi_time_t.patch b/meta/recipes-extended/mdadm/files/mdadm-3.3.2_x32_abi_time_t.patch
index 143a8d9..c656d07 100644
--- a/meta/recipes-extended/mdadm/files/mdadm-3.3.2_x32_abi_time_t.patch
+++ b/meta/recipes-extended/mdadm/files/mdadm-3.3.2_x32_abi_time_t.patch
@@ -5,22 +5,21 @@ Upstream-Status: Pending
 
 Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
 
-diff --git a/monitor.c b/monitor.c
-index f81e707..19ea041 100644
---- a/monitor.c
-+++ b/monitor.c
-@@ -260,8 +260,13 @@ static int read_and_act(struct active_array *a)
+Index: mdadm-3.3.4/monitor.c
+===================================================================
+--- mdadm-3.3.4.orig/monitor.c
++++ mdadm-3.3.4/monitor.c
+@@ -257,9 +257,12 @@ static int read_and_act(struct active_ar
+ 			mdi->curr_state = read_dev_state(mdi->state_fd);
+ 		}
  	}
- 
+-
  	gettimeofday(&tv, NULL);
 +#if defined(__x86_64__) && defined(__ILP32__)
-+	dprintf("%s(%d): %lld.%06lld state:%s prev:%s action:%s prev: %s start:%llu\n",
++	dprintf("(%d): %lld.%06lld state:%s prev:%s action:%s prev: %s start:%llu\n",
 +#else
- 	dprintf("%s(%d): %ld.%06ld state:%s prev:%s action:%s prev: %s start:%llu\n",
--		__func__, a->info.container_member,
+ 	dprintf("(%d): %ld.%06ld state:%s prev:%s action:%s prev: %s start:%llu\n",
 +#endif
-+		__func__,
-+		a->info.container_member,
+ 		a->info.container_member,
  		tv.tv_sec, tv.tv_usec,
  		array_states[a->curr_state],
- 		array_states[a->prev_state],
diff --git a/meta/recipes-extended/mdadm/mdadm_3.3.2.bb b/meta/recipes-extended/mdadm/mdadm_3.3.4.bb
similarity index 92%
rename from meta/recipes-extended/mdadm/mdadm_3.3.2.bb
rename to meta/recipes-extended/mdadm/mdadm_3.3.4.bb
index b2fbe4a..460a430 100644
--- a/meta/recipes-extended/mdadm/mdadm_3.3.2.bb
+++ b/meta/recipes-extended/mdadm/mdadm_3.3.4.bb
@@ -12,12 +12,10 @@ SRC_URI = "${KERNELORG_MIRROR}/linux/utils/raid/mdadm/${BPN}-${PV}.tar.xz \
            file://mdadm-3.2.2_fix_for_x32.patch \
            file://gcc-4.9.patch \
            file://mdadm-3.3.2_x32_abi_time_t.patch \
-           file://inline.patch \
            file://run-ptest \
 	  "
-
-SRC_URI[md5sum] = "44698d351501cac6a89072dc877eb220"
-SRC_URI[sha256sum] = "0f3a7e1a76b13892b79f9fceaf99ecb23513260389a768ac644ffa3ae06e5b8c"
+SRC_URI[md5sum] = "7ca8b114710f98f53f20c5787b674a09"
+SRC_URI[sha256sum] = "8ae5f45306b873190e91f410709b00e51997b633c072b33f8efd9f7df022ca68"
 
 CFLAGS += "-fno-strict-aliasing"
 
-- 
2.1.4



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

* [PATCH 11/17] bitbake.conf: Define fallback DISTRO_NAME
  2015-08-24 20:03 [PATCH 00/17] systemd upgrade, distribute->setuptools and clang fixes Khem Raj
                   ` (9 preceding siblings ...)
  2015-08-24 20:03 ` [PATCH 10/17] mdadm: Upgrade mdadm_3.3.2.bb -> mdadm_3.3.4.bb Khem Raj
@ 2015-08-24 20:03 ` Khem Raj
  2015-08-24 20:03 ` [PATCH 12/17] systemd: Remove exporting special CPP Khem Raj
                   ` (5 subsequent siblings)
  16 siblings, 0 replies; 31+ messages in thread
From: Khem Raj @ 2015-08-24 20:03 UTC (permalink / raw)
  To: openembedded-core

When using OE-Core only we miss this define and its now used in recipes
like os-release, which goes undefined and when booting we see messages
like

Welcome to ${DISTRO_NAME} nodistro.0!

This would change to
Welcome to OpenEmbedded nodistro.0!

Remove all trailing whitespaces while touching this file

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta/conf/bitbake.conf | 20 ++++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)

diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf
index 21f1698..c382c58 100644
--- a/meta/conf/bitbake.conf
+++ b/meta/conf/bitbake.conf
@@ -2,7 +2,7 @@
 # Standard target filesystem paths.
 ##################################################################
 #
-# If changing these values, beware that native/cross/nativesdk bbclass 
+# If changing these values, beware that native/cross/nativesdk bbclass
 # files may also need changes to keep in sync.
 #
 
@@ -161,7 +161,7 @@ DATETIME = "${DATE}${TIME}"
 # Openembedded Software Prerequisites.
 ##################################################################
 
-# python-native should be here but python relies on building 
+# python-native should be here but python relies on building
 # its own in staging
 ASSUME_PROVIDED = "\
     bzip2-native \
@@ -417,7 +417,7 @@ IMAGE_LINK_NAME = "${IMAGE_BASENAME}-${MACHINE}"
 # This option allows for a percentage overage of the actual image size rather than a
 # fixed extra space, this is space needed for initial startup and basic operations.
 IMAGE_OVERHEAD_FACTOR ?= "1.3"
-# This option allows for adding additional space in K above and beyond what the 
+# This option allows for adding additional space in K above and beyond what the
 # IMAGE_OVERHEAD_FACTOR might add. This space is for additional packages, user data, ...
 # To set a fixed size then overriding IMAGE_ROOTFS_SIZE with the max size one wants
 # should do the trick
@@ -646,18 +646,18 @@ export PKG_CONFIG_DISABLE_UNINSTALLED = "yes"
 ### Config file processing
 ###
 
-# An empty distro leads to :: entries in OVERRIDES and FILEOVERRIDES which 
+# An empty distro leads to :: entries in OVERRIDES and FILEOVERRIDES which
 # is a bad idea. Setting a dummy value is better than a ton of anonymous python.
 DISTRO ??= "nodistro"
-
+DISTRO_NAME ??= "OpenEmbedded"
 # Overrides are processed left to right, so the ones that are named later take precedence.
 # You generally want them to go from least to most specific.
-# 
+#
 # This means that an envionment variable named '<foo>_arm' overrides an
 # environment variable '<foo>' (when ${TARGET_ARCH} is arm).
 # An environment variable '<foo>_qemuarm' overrides '<foo>' and overrides
-# '<foo>_arm' when ${MACHINE} is 'qemuarm'. 
-# If you use combination ie '<foo>_qemuarm_arm', then '<foo>_qemuarm_arm' will override 
+# '<foo>_arm' when ${MACHINE} is 'qemuarm'.
+# If you use combination ie '<foo>_qemuarm_arm', then '<foo>_qemuarm_arm' will override
 # '<foo>_qemuarm' and then '<foo>' will be overriden with that value from '<foo>_qemuarm'.
 # And finally '<foo>_forcevariable' overrides any standard variable, with the highest priority.
 #
@@ -706,7 +706,7 @@ MACHINE_TASK_PROVIDER ?= "${DEFAULT_TASK_PROVIDER}"
 # and no effect if less than it.
 IMAGE_ROOTFS_SIZE ??= "65536"
 
-# Forcefully set CACHE now so future changes to things like 
+# Forcefully set CACHE now so future changes to things like
 # MACHINE don't change the path to the cache
 CACHE := "${CACHE}"
 
@@ -755,7 +755,7 @@ BAD_RECOMMENDATIONS ?= ""
 MACHINE[unexport] = "1"
 
 # Make sure TARGET_ARCH isn't exported
-# (breaks Makefiles using implicit rules, e.g. quilt, as GNU make has this 
+# (breaks Makefiles using implicit rules, e.g. quilt, as GNU make has this
 # in them, undocumented)
 TARGET_ARCH[unexport] = "1"
 
-- 
2.1.4



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

* [PATCH 12/17] systemd: Remove exporting special CPP
  2015-08-24 20:03 [PATCH 00/17] systemd upgrade, distribute->setuptools and clang fixes Khem Raj
                   ` (10 preceding siblings ...)
  2015-08-24 20:03 ` [PATCH 11/17] bitbake.conf: Define fallback DISTRO_NAME Khem Raj
@ 2015-08-24 20:03 ` Khem Raj
  2015-08-24 20:03 ` [PATCH 13/17] diffstat: Add TOOLCHAIN_OPTIONS to Linker calls Khem Raj
                   ` (4 subsequent siblings)
  16 siblings, 0 replies; 31+ messages in thread
From: Khem Raj @ 2015-08-24 20:03 UTC (permalink / raw)
  To: openembedded-core

This is no more needed.
it was done long ago while systemd lived in meta-openembedded
http://lists.openembedded.org/pipermail/openembedded-commits/2012-August/141061.html
The accompanying patch has been applied to systemd already so we were
not needing to set CPP for sometime now.

as a nice side effect it helps compiling systemd with clang

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta/recipes-core/systemd/systemd_224.bb | 1 -
 1 file changed, 1 deletion(-)

diff --git a/meta/recipes-core/systemd/systemd_224.bb b/meta/recipes-core/systemd/systemd_224.bb
index 97d5d22..98efe7a 100644
--- a/meta/recipes-core/systemd/systemd_224.bb
+++ b/meta/recipes-core/systemd/systemd_224.bb
@@ -122,7 +122,6 @@ EXTRA_OECONF = " --with-rootprefix=${rootprefix} \
 EXTRA_OECONF_append_libc-uclibc = " --disable-myhostname "
 
 do_configure_prepend() {
-	export CPP="${HOST_PREFIX}cpp ${TOOLCHAIN_OPTIONS} ${HOST_CC_ARCH}"
 	export NM="${HOST_PREFIX}gcc-nm"
 	export AR="${HOST_PREFIX}gcc-ar"
 	export RANLIB="${HOST_PREFIX}gcc-ranlib"
-- 
2.1.4



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

* [PATCH 13/17] diffstat: Add TOOLCHAIN_OPTIONS to Linker calls
  2015-08-24 20:03 [PATCH 00/17] systemd upgrade, distribute->setuptools and clang fixes Khem Raj
                   ` (11 preceding siblings ...)
  2015-08-24 20:03 ` [PATCH 12/17] systemd: Remove exporting special CPP Khem Raj
@ 2015-08-24 20:03 ` Khem Raj
  2015-08-24 20:03 ` [PATCH 14/17] liburcu: Fix atomic function parameter types in calls Khem Raj
                   ` (3 subsequent siblings)
  16 siblings, 0 replies; 31+ messages in thread
From: Khem Raj @ 2015-08-24 20:03 UTC (permalink / raw)
  To: openembedded-core

configure in this case does a novel thing where it drops all additional
compiler options from CC variable into CFLAGS which in OE's case include
the options added by TOOLCHAIN_OPTIONS and then it does exactly same for
LD as well, the problem starts when we miss the --sysroot options and
ABI options which are part of CC variables usually in OE, in the end it
assigns LD = CC but doesnt add newly separated CFLAGS to LDFLAGS hence
the compile still works since all those needed options are getting into
compiler cmdline but link step fails especially when using gold, since
it does not find --sysroot option on cmdline it starts to complain about
missing libraries and paths

This shows up with clang more so because clang does not have implicit
sysroot that it silently passes down to linker like gcc does when
confgured with sysroot

We see errors like

arm-angstrom-linux-gnueabi-clang -c -I.
-I/mnt/home/kraj/work/angstrom/build/tmp-angstrom-glibc/work/armv7at2hf-vfp-neon-angstrom-linux-gnueabi/diffstat/1.60-r0/diffstat-1.60
-DHAVE_CONFIG_H   -D__extern_always_inline=inline -D_GNU_SOURCE -O2
-pipe -g -feliminate-unused-debug-types  -march=armv7-a -mthumb
-mfloat-abi=hard -mfpu=neon -no-integrated-as
--sysroot=/mnt/home/kraj/work/angstrom/build/tmp-angstrom-glibc/sysroots/raspberrypi2
/mnt/home/kraj/work/angstrom/build/tmp-angstrom-glibc/work/armv7at2hf-vfp-neon-angstrom-linux-gnueabi/diffstat/1.60-r0/diffstat-1.60/diffstat.c
NOTE: make -j 16
arm-angstrom-linux-gnueabi-clang -Wl,-O1 -Wl,--hash-style=gnu
-Wl,--as-needed -o diffstat diffstat.o
/mnt/home/kraj/work/angstrom/build/tmp-angstrom-glibc/sysroots/x86_64-linux/usr/bin/arm-angstrom-linux-gnueabi/arm-angstrom-linux-gnueabi-ld:
error: cannot open crt1.o: No such file or directory
/mnt/home/kraj/work/angstrom/build/tmp-angstrom-glibc/sysroots/x86_64-linux/usr/bin/arm-angstrom-linux-gnueabi/arm-angstrom-linux-gnueabi-ld:
error: cannot open crti.o: No such file or directory
/mnt/home/kraj/work/angstrom/build/tmp-angstrom-glibc/sysroots/x86_64-linux/usr/bin/arm-angstrom-linux-gnueabi/arm-angstrom-linux-gnueabi-ld:
error: cannot open crtbegin.o: No such file or directory
/mnt/home/kraj/work/angstrom/build/tmp-angstrom-glibc/sysroots/x86_64-linux/usr/bin/arm-angstrom-linux-gnueabi/arm-angstrom-linux-gnueabi-ld:
error: cannot open crtend.o: No such file or directory
/mnt/home/kraj/work/angstrom/build/tmp-angstrom-glibc/sysroots/x86_64-linux/usr/bin/arm-angstrom-linux-gnueabi/arm-angstrom-linux-gnueabi-ld:
error: cannot open crtn.o: No such file or directory
/mnt/home/kraj/work/angstrom/build/tmp-angstrom-glibc/sysroots/x86_64-linux/usr/bin/arm-angstrom-linux-gnueabi/arm-angstrom-linux-gnueabi-ld:
error: cannot find -lgcc
/mnt/home/kraj/work/angstrom/build/tmp-angstrom-glibc/sysroots/x86_64-linux/usr/bin/arm-angstrom-linux-gnueabi/arm-angstrom-linux-gnueabi-ld:
error: cannot find -lgcc
/mnt/home/kraj/work/angstrom/build/tmp-angstrom-glibc/sysroots/x86_64-linux/usr/bin/arm-angstrom-linux-gnueabi/arm-angstrom-linux-gnueabi-ld:
error: cannot find -lgcc
/mnt/home/kraj/work/angstrom/build/tmp-angstrom-glibc/sysroots/x86_64-linux/usr/bin/arm-angstrom-linux-gnueabi/arm-angstrom-linux-gnueabi-ld:
error: cannot find -lgcc

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta/recipes-devtools/diffstat/diffstat_1.60.bb | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/meta/recipes-devtools/diffstat/diffstat_1.60.bb b/meta/recipes-devtools/diffstat/diffstat_1.60.bb
index 29c32a8..25ba4da 100644
--- a/meta/recipes-devtools/diffstat/diffstat_1.60.bb
+++ b/meta/recipes-devtools/diffstat/diffstat_1.60.bb
@@ -18,6 +18,8 @@ S = "${WORKDIR}/diffstat-${PV}"
 
 inherit autotools gettext ptest
 
+LDFLAGS += "${TOOLCHAIN_OPTIONS}"
+
 do_configure () {
 	if [ ! -e ${S}/acinclude.m4 ]; then
 		mv ${S}/aclocal.m4 ${S}/acinclude.m4
-- 
2.1.4



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

* [PATCH 14/17] liburcu: Fix atomic function parameter types in calls
  2015-08-24 20:03 [PATCH 00/17] systemd upgrade, distribute->setuptools and clang fixes Khem Raj
                   ` (12 preceding siblings ...)
  2015-08-24 20:03 ` [PATCH 13/17] diffstat: Add TOOLCHAIN_OPTIONS to Linker calls Khem Raj
@ 2015-08-24 20:03 ` Khem Raj
  2015-08-24 20:03 ` [PATCH 15/17] busybox: Use CC instead of bare LD to be the Linker Khem Raj
                   ` (2 subsequent siblings)
  16 siblings, 0 replies; 31+ messages in thread
From: Khem Raj @ 2015-08-24 20:03 UTC (permalink / raw)
  To: openembedded-core

__sync_val_compare_and_swap family specifically asks for proper types of
pointer type parameters, gcc does not notice it but clang does and sends
out errors calling it out.

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 ...cify-complete-types-for-atomic-function-c.patch | 158 +++++++++++++++++++++
 meta/recipes-support/liburcu/liburcu_0.8.7.bb      |   1 +
 2 files changed, 159 insertions(+)
 create mode 100644 meta/recipes-support/liburcu/liburcu/0001-uatomic-Specify-complete-types-for-atomic-function-c.patch

diff --git a/meta/recipes-support/liburcu/liburcu/0001-uatomic-Specify-complete-types-for-atomic-function-c.patch b/meta/recipes-support/liburcu/liburcu/0001-uatomic-Specify-complete-types-for-atomic-function-c.patch
new file mode 100644
index 0000000..5ad0bbd
--- /dev/null
+++ b/meta/recipes-support/liburcu/liburcu/0001-uatomic-Specify-complete-types-for-atomic-function-c.patch
@@ -0,0 +1,158 @@
+From 6af790818d074c103c4797f1ce764896f183e028 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 22 Aug 2015 21:35:03 -0700
+Subject: [PATCH] uatomic: Specify complete types for atomic function calls
+
+This was unearthed by clang compiler where it complained about parameter
+mismatch, gcc doesnt notice this
+
+urcu/uatomic/generic.h:190:10: error: address argument to atomic builtin
+must be a pointer to integer or pointer ('void *' invalid)
+                return __sync_add_and_fetch_4(addr, val);
+
+Fixed all instances thusly
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+Upstream-Status: Submitted
+
+ urcu/uatomic/generic.h | 40 ++++++++++++++++++++--------------------
+ 1 file changed, 20 insertions(+), 20 deletions(-)
+
+diff --git a/urcu/uatomic/generic.h b/urcu/uatomic/generic.h
+index 37f59cc..0046ffd 100644
+--- a/urcu/uatomic/generic.h
++++ b/urcu/uatomic/generic.h
+@@ -65,17 +65,17 @@ unsigned long _uatomic_cmpxchg(void *addr, unsigned long old,
+ 	switch (len) {
+ #ifdef UATOMIC_HAS_ATOMIC_BYTE
+ 	case 1:
+-		return __sync_val_compare_and_swap_1(addr, old, _new);
++		return __sync_val_compare_and_swap_1((unsigned char *)addr, old, _new);
+ #endif
+ #ifdef UATOMIC_HAS_ATOMIC_SHORT
+ 	case 2:
+-		return __sync_val_compare_and_swap_2(addr, old, _new);
++		return __sync_val_compare_and_swap_2((unsigned short int *)addr, old, _new);
+ #endif
+ 	case 4:
+-		return __sync_val_compare_and_swap_4(addr, old, _new);
++		return __sync_val_compare_and_swap_4((unsigned int *)addr, old, _new);
+ #if (CAA_BITS_PER_LONG == 64)
+ 	case 8:
+-		return __sync_val_compare_and_swap_8(addr, old, _new);
++		return __sync_val_compare_and_swap_8((unsigned long *)addr, old, _new);
+ #endif
+ 	}
+ 	_uatomic_link_error();
+@@ -100,20 +100,20 @@ void _uatomic_and(void *addr, unsigned long val,
+ 	switch (len) {
+ #ifdef UATOMIC_HAS_ATOMIC_BYTE
+ 	case 1:
+-		__sync_and_and_fetch_1(addr, val);
++		__sync_and_and_fetch_1((unsigned char *)addr, val);
+ 		return;
+ #endif
+ #ifdef UATOMIC_HAS_ATOMIC_SHORT
+ 	case 2:
+-		__sync_and_and_fetch_2(addr, val);
++		__sync_and_and_fetch_2((unsigned short int *)addr, val);
+ 		return;
+ #endif
+ 	case 4:
+-		__sync_and_and_fetch_4(addr, val);
++		__sync_and_and_fetch_4((unsigned int *)addr, val);
+ 		return;
+ #if (CAA_BITS_PER_LONG == 64)
+ 	case 8:
+-		__sync_and_and_fetch_8(addr, val);
++		__sync_and_and_fetch_8((unsigned long *)addr, val);
+ 		return;
+ #endif
+ 	}
+@@ -139,20 +139,20 @@ void _uatomic_or(void *addr, unsigned long val,
+ 	switch (len) {
+ #ifdef UATOMIC_HAS_ATOMIC_BYTE
+ 	case 1:
+-		__sync_or_and_fetch_1(addr, val);
++		__sync_or_and_fetch_1((unsigned char *)addr, val);
+ 		return;
+ #endif
+ #ifdef UATOMIC_HAS_ATOMIC_SHORT
+ 	case 2:
+-		__sync_or_and_fetch_2(addr, val);
++		__sync_or_and_fetch_2((unsigned short int *)addr, val);
+ 		return;
+ #endif
+ 	case 4:
+-		__sync_or_and_fetch_4(addr, val);
++		__sync_or_and_fetch_4((unsigned int *)addr, val);
+ 		return;
+ #if (CAA_BITS_PER_LONG == 64)
+ 	case 8:
+-		__sync_or_and_fetch_8(addr, val);
++		__sync_or_and_fetch_8((unsigned long *)addr, val);
+ 		return;
+ #endif
+ 	}
+@@ -180,17 +180,17 @@ unsigned long _uatomic_add_return(void *addr, unsigned long val,
+ 	switch (len) {
+ #ifdef UATOMIC_HAS_ATOMIC_BYTE
+ 	case 1:
+-		return __sync_add_and_fetch_1(addr, val);
++		return __sync_add_and_fetch_1((unsigned char *)addr, val);
+ #endif
+ #ifdef UATOMIC_HAS_ATOMIC_SHORT
+ 	case 2:
+-		return __sync_add_and_fetch_2(addr, val);
++		return __sync_add_and_fetch_2((unsigned short int *)addr, val);
+ #endif
+ 	case 4:
+-		return __sync_add_and_fetch_4(addr, val);
++		return __sync_add_and_fetch_4((unsigned int *)addr, val);
+ #if (CAA_BITS_PER_LONG == 64)
+ 	case 8:
+-		return __sync_add_and_fetch_8(addr, val);
++		return __sync_add_and_fetch_8((unsigned long *)addr, val);
+ #endif
+ 	}
+ 	_uatomic_link_error();
+@@ -218,7 +218,7 @@ unsigned long _uatomic_exchange(void *addr, unsigned long val, int len)
+ 
+ 		do {
+ 			old = uatomic_read((unsigned char *)addr);
+-		} while (!__sync_bool_compare_and_swap_1(addr, old, val));
++		} while (!__sync_bool_compare_and_swap_1((unsigned char *)addr, old, val));
+ 
+ 		return old;
+ 	}
+@@ -230,7 +230,7 @@ unsigned long _uatomic_exchange(void *addr, unsigned long val, int len)
+ 
+ 		do {
+ 			old = uatomic_read((unsigned short *)addr);
+-		} while (!__sync_bool_compare_and_swap_2(addr, old, val));
++		} while (!__sync_bool_compare_and_swap_2((unsigned short int *)addr, old, val));
+ 
+ 		return old;
+ 	}
+@@ -241,7 +241,7 @@ unsigned long _uatomic_exchange(void *addr, unsigned long val, int len)
+ 
+ 		do {
+ 			old = uatomic_read((unsigned int *)addr);
+-		} while (!__sync_bool_compare_and_swap_4(addr, old, val));
++		} while (!__sync_bool_compare_and_swap_4((unsigned int *)addr, old, val));
+ 
+ 		return old;
+ 	}
+@@ -252,7 +252,7 @@ unsigned long _uatomic_exchange(void *addr, unsigned long val, int len)
+ 
+ 		do {
+ 			old = uatomic_read((unsigned long *)addr);
+-		} while (!__sync_bool_compare_and_swap_8(addr, old, val));
++		} while (!__sync_bool_compare_and_swap_8((unsigned long *)addr, old, val));
+ 
+ 		return old;
+ 	}
+-- 
+2.1.4
+
diff --git a/meta/recipes-support/liburcu/liburcu_0.8.7.bb b/meta/recipes-support/liburcu/liburcu_0.8.7.bb
index 71cb149..a7f4f51 100644
--- a/meta/recipes-support/liburcu/liburcu_0.8.7.bb
+++ b/meta/recipes-support/liburcu/liburcu_0.8.7.bb
@@ -10,6 +10,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=0f060c30a27922ce9c0d557a639b4fa3 \
 SRC_URI = "http://lttng.org/files/urcu/userspace-rcu-${PV}.tar.bz2 \
            file://Revert-Blacklist-ARM-gcc-4.8.0-4.8.1-4.8.2.patch \
            file://aarch64.patch \
+           file://0001-uatomic-Specify-complete-types-for-atomic-function-c.patch \
           "
 
 SRC_URI[md5sum] = "7a6ee17871d31226db3f618e28351d22"
-- 
2.1.4



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

* [PATCH 15/17] busybox: Use CC instead of bare LD to be the Linker
  2015-08-24 20:03 [PATCH 00/17] systemd upgrade, distribute->setuptools and clang fixes Khem Raj
                   ` (13 preceding siblings ...)
  2015-08-24 20:03 ` [PATCH 14/17] liburcu: Fix atomic function parameter types in calls Khem Raj
@ 2015-08-24 20:03 ` Khem Raj
  2015-09-01 21:17   ` Richard Purdie
  2015-08-24 20:03 ` [PATCH 16/17] python-distribute, python-setuptools: Migrate to good old python-setuptools Khem Raj
  2015-08-24 20:03 ` [PATCH 17/17] classes, conf: Remove python-distribute refrences Khem Raj
  16 siblings, 1 reply; 31+ messages in thread
From: Khem Raj @ 2015-08-24 20:03 UTC (permalink / raw)
  To: openembedded-core

This patch was on mailing list, another patch to make sure -r is not
passed directly but via -Wl switch is added.

This was exposed when using clang and gold linker, clang does not have
-r switch to do relocatable objects and problem happens specific to OE
becuase we use LD = CC

now what happens is that busybox assumes that linker will be called
directly, and hence sprinkles linkers options in its kbuild system which
aggregate into LDFLAGS, some of these options are happily ignored by gcc
as well but it passes -r options rightly to linker so it all works,
however when using clang, this falls apart since -r is not known option
for clang so it drops this option and all obects which should be
partially linked becomes ET_EXEC and when they are added to final link
then gold starts to get confused

/mnt/home/kraj/work/angstrom/build/tmp-angstrom-glibc/sysroots/x86_64-linux/usr/bin/arm-angstrom-linux-gnueabi/arm-angstrom-linux-gnueabi-ld:
error: applets/built-in.o: unsupported ELF file type 2
clang-3.7: error: linker command failed with exit code 1 (use -v to see invocation)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 ...-linking-instead-of-LD-and-use-CFLAGS-and.patch | 121 +++++++++++++++++++++
 .../busybox/0002-Passthrough-r-to-linker.patch     |  32 ++++++
 meta/recipes-core/busybox/busybox_1.23.2.bb        |   2 +
 3 files changed, 155 insertions(+)
 create mode 100644 meta/recipes-core/busybox/busybox/0001-Use-CC-when-linking-instead-of-LD-and-use-CFLAGS-and.patch
 create mode 100644 meta/recipes-core/busybox/busybox/0002-Passthrough-r-to-linker.patch

diff --git a/meta/recipes-core/busybox/busybox/0001-Use-CC-when-linking-instead-of-LD-and-use-CFLAGS-and.patch b/meta/recipes-core/busybox/busybox/0001-Use-CC-when-linking-instead-of-LD-and-use-CFLAGS-and.patch
new file mode 100644
index 0000000..f07d7eb
--- /dev/null
+++ b/meta/recipes-core/busybox/busybox/0001-Use-CC-when-linking-instead-of-LD-and-use-CFLAGS-and.patch
@@ -0,0 +1,121 @@
+From a9333eb6a7b8dbda735947cd5bc981ff9352a2c9 Mon Sep 17 00:00:00 2001
+From: Nathan Phillip Brink <ohnobinki@ohnopublishing.net>
+Date: Thu, 10 Mar 2011 00:27:08 -0500
+Subject: [PATCH 1/2] Use $(CC) when linking instead of $(LD) and use $(CFLAGS)
+ and $(EXTRA_CFLAGS) when linking.
+
+This fixes the issue where LDFLAGS escaped with -Wl are ignored during
+compilation. It also simplifies using CFLAGS or EXTRA_CFLAGS (such as
+-m32 on x86_64 or -flto) which apply to both compilation and linking
+situations.
+
+Signed-off-by: Nathan Phillip Brink <ohnobinki@ohnopublishing.net>
+---
+Upstream-Status: Pending
+
+ Makefile               |  7 ++++---
+ scripts/Makefile.build |  8 ++++----
+ scripts/Makefile.lib   | 13 +++----------
+ 3 files changed, 11 insertions(+), 17 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 65b2642..9da02cb 100644
+--- a/Makefile
++++ b/Makefile
+@@ -309,7 +309,8 @@ CHECKFLAGS     := -D__linux__ -Dlinux -D__STDC__ -Dunix -D__unix__ -Wbitwise $(C
+ MODFLAGS	= -DMODULE
+ CFLAGS_MODULE   = $(MODFLAGS)
+ AFLAGS_MODULE   = $(MODFLAGS)
+-LDFLAGS_MODULE  = -r
++LDFLAGS_RELOCATABLE = -r -nostdlib
++LDFLAGS_MODULE  = $(LDFLAGS_RELOCATABLE)
+ CFLAGS_KERNEL	=
+ AFLAGS_KERNEL	=
+ 
+@@ -331,7 +332,7 @@ KERNELVERSION = $(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION)
+ export	VERSION PATCHLEVEL SUBLEVEL KERNELRELEASE KERNELVERSION \
+ 	ARCH CONFIG_SHELL HOSTCC HOSTCFLAGS CROSS_COMPILE AS LD CC \
+ 	CPP AR NM STRIP OBJCOPY OBJDUMP MAKE AWK GENKSYMS PERL UTS_MACHINE \
+-	HOSTCXX HOSTCXXFLAGS LDFLAGS_MODULE CHECK CHECKFLAGS
++	HOSTCXX HOSTCXXFLAGS LDFLAGS_RELOCATABLE LDFLAGS_MODULE CHECK CHECKFLAGS
+ 
+ export CPPFLAGS NOSTDINC_FLAGS LINUXINCLUDE OBJCOPYFLAGS LDFLAGS
+ export CFLAGS CFLAGS_KERNEL CFLAGS_MODULE
+@@ -606,7 +607,7 @@ quiet_cmd_busybox__ ?= LINK    $@
+       cmd_busybox__ ?= $(srctree)/scripts/trylink \
+       "$@" \
+       "$(CC)" \
+-      "$(CFLAGS) $(CFLAGS_busybox)" \
++      "$(CFLAGS) $(CFLAGS_busybox) $(EXTRA_CFLAGS)" \
+       "$(LDFLAGS) $(EXTRA_LDFLAGS)" \
+       "$(core-y)" \
+       "$(libs-y)" \
+diff --git a/scripts/Makefile.build b/scripts/Makefile.build
+index 5eac45f..a003c63 100644
+--- a/scripts/Makefile.build
++++ b/scripts/Makefile.build
+@@ -174,7 +174,7 @@ cmd_modversions =							\
+ 		| $(GENKSYMS) -a $(ARCH)				\
+ 		> $(@D)/.tmp_$(@F:.o=.ver);				\
+ 									\
+-		$(LD) $(LDFLAGS) -r -o $@ $(@D)/.tmp_$(@F) 		\
++               $(CC) $(CFLAGS) $(EXTRA_CFLAGS) $(LDFLAGS) $(LDFLAGS_RELOCATABLE) -o $@ $(@D)/.tmp_$(@F)        \
+ 			-T $(@D)/.tmp_$(@F:.o=.ver);			\
+ 		rm -f $(@D)/.tmp_$(@F) $(@D)/.tmp_$(@F:.o=.ver);	\
+ 	else								\
+@@ -257,7 +257,7 @@ quiet_cmd_link_o_target = LD      $@
+ # If the list of objects to link is empty, just create an empty built-in.o
+ # -nostdlib is added to make "make LD=gcc ..." work (some people use that)
+ cmd_link_o_target = $(if $(strip $(obj-y)),\
+-		$(LD) -nostdlib $(ld_flags) -r -o $@ $(filter $(obj-y), $^),\
++		$(CC) $(CFLAGS) $(EXTRA_CFLAGS) $(ld_flags) $(LDFLAGS_RELOCATABLE) -o $@ $(filter $(obj-y), $^),\
+ 		rm -f $@; $(AR) rcs $@)
+ 
+ $(builtin-target): $(obj-y) FORCE
+@@ -292,10 +292,10 @@ $($(subst $(obj)/,,$(@:.o=-objs)))    \
+ $($(subst $(obj)/,,$(@:.o=-y)))), $^)
+ 
+ quiet_cmd_link_multi-y = LD      $@
+-cmd_link_multi-y = $(LD) $(ld_flags) -r -o $@ $(link_multi_deps)
++cmd_link_multi-y = $(CC) $(CFLAGS) $(EXTRA_CFLAGS) $(ld_flags) $(LDFLAGS_RELOCATABLE) -o $@ $(link_multi_deps)
+ 
+ quiet_cmd_link_multi-m = LD [M]  $@
+-cmd_link_multi-m = $(LD) $(ld_flags) $(LDFLAGS_MODULE) -o $@ $(link_multi_deps)
++cmd_link_multi-m = $(CC) $(CFLAGS) $(EXTRA_CFLAGS) $(ld_flags) $(LDFLAGS_MODULE) -o $@ $(link_multi_deps)
+ 
+ # We would rather have a list of rules like
+ # 	foo.o: $(foo-objs)
+diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib
+index 3e54ea7..879b918 100644
+--- a/scripts/Makefile.lib
++++ b/scripts/Makefile.lib
+@@ -117,12 +117,7 @@ a_flags        = -Wp,-MD,$(depfile) $(NOSTDINC_FLAGS) $(CPPFLAGS) \
+ 
+ cpp_flags      = -Wp,-MD,$(depfile) $(NOSTDINC_FLAGS) $(__cpp_flags)
+ 
+-# Seems to be a wrong thing to do. LDFLAGS contains gcc's flags,
+-# yet ld_flags is fed to ld.
+-#ld_flags       = $(LDFLAGS) $(EXTRA_LDFLAGS)
+-# Remove the -Wl, prefix from linker options normally passed through gcc
+-ld_flags       = $(filter-out -Wl$(comma)%,$(LDFLAGS) $(EXTRA_LDFLAGS))
+-
++ld_flags       = $(LDFLAGS) $(EXTRA_LDFLAGS)
+ 
+ # Finds the multi-part object the current object will be linked into
+ modname-multi = $(sort $(foreach m,$(multi-used),\
+@@ -151,10 +146,8 @@ $(obj)/%:: $(src)/%_shipped
+ # Linking
+ # ---------------------------------------------------------------------------
+ 
+-# TODO: LDFLAGS usually is supposed to contain gcc's flags, not ld's.
+-# but here we feed them to ld!
+-quiet_cmd_ld = LD      $@
+-cmd_ld = $(LD) $(LDFLAGS) $(EXTRA_LDFLAGS) $(LDFLAGS_$(@F)) \
++quiet_cmd_ld = CCLD    $@
++cmd_ld = $(CC) $(CFLAGS) $(EXTRA_CFLAGS) $(ld_flags) $(LDFLAGS_$(@F)) \
+ 	       $(filter-out FORCE,$^) -o $@
+ 
+ # Objcopy
+-- 
+2.1.4
+
diff --git a/meta/recipes-core/busybox/busybox/0002-Passthrough-r-to-linker.patch b/meta/recipes-core/busybox/busybox/0002-Passthrough-r-to-linker.patch
new file mode 100644
index 0000000..de286fb
--- /dev/null
+++ b/meta/recipes-core/busybox/busybox/0002-Passthrough-r-to-linker.patch
@@ -0,0 +1,32 @@
+From df2cc76cdebc4773361477f3db203790f6986e3b Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 22 Aug 2015 23:42:40 -0700
+Subject: [PATCH 2/2] Passthrough -r to linker
+
+clang does not have -r switch and it does not pass it down to linker
+either, LDFLAGS_RELOCATABLE is used when CC is used for LD, so this
+should not cause side effects
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+Upstream-Status: Pending
+
+ Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makefile b/Makefile
+index 9da02cb..10dd4a9 100644
+--- a/Makefile
++++ b/Makefile
+@@ -309,7 +309,7 @@ CHECKFLAGS     := -D__linux__ -Dlinux -D__STDC__ -Dunix -D__unix__ -Wbitwise $(C
+ MODFLAGS	= -DMODULE
+ CFLAGS_MODULE   = $(MODFLAGS)
+ AFLAGS_MODULE   = $(MODFLAGS)
+-LDFLAGS_RELOCATABLE = -r -nostdlib
++LDFLAGS_RELOCATABLE = -Xlinker -r -nostdlib
+ LDFLAGS_MODULE  = $(LDFLAGS_RELOCATABLE)
+ CFLAGS_KERNEL	=
+ AFLAGS_KERNEL	=
+-- 
+2.1.4
+
diff --git a/meta/recipes-core/busybox/busybox_1.23.2.bb b/meta/recipes-core/busybox/busybox_1.23.2.bb
index 8a4bae6..51eaea8 100644
--- a/meta/recipes-core/busybox/busybox_1.23.2.bb
+++ b/meta/recipes-core/busybox/busybox_1.23.2.bb
@@ -32,6 +32,8 @@ SRC_URI = "http://www.busybox.net/downloads/busybox-${PV}.tar.bz2;name=tarball \
            file://busybox-cross-menuconfig.patch \
            file://0001-ifconfig-fix-double-free-fatal-error-in-INET_sprint.patch \
            file://0001-chown-fix-help-text.patch \
+           file://0001-Use-CC-when-linking-instead-of-LD-and-use-CFLAGS-and.patch \
+           file://0002-Passthrough-r-to-linker.patch \
            file://mount-via-label.cfg \
            file://sha1sum.cfg \
            file://sha256sum.cfg \
-- 
2.1.4



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

* [PATCH 16/17] python-distribute, python-setuptools: Migrate to good old python-setuptools
  2015-08-24 20:03 [PATCH 00/17] systemd upgrade, distribute->setuptools and clang fixes Khem Raj
                   ` (14 preceding siblings ...)
  2015-08-24 20:03 ` [PATCH 15/17] busybox: Use CC instead of bare LD to be the Linker Khem Raj
@ 2015-08-24 20:03 ` Khem Raj
  2015-08-25 16:26   ` Burton, Ross
  2015-08-24 20:03 ` [PATCH 17/17] classes, conf: Remove python-distribute refrences Khem Raj
  16 siblings, 1 reply; 31+ messages in thread
From: Khem Raj @ 2015-08-24 20:03 UTC (permalink / raw)
  To: openembedded-core

setuptools the old king is ruling again, distribute fork has been merged
into setuptools starting 0.7x, so lets move to use it as well

Fixes [YOCTO #8201]

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../python/python-distribute_0.6.32.bb             | 63 ----------------------
 .../python/python-setuptools_18.2.bb               | 46 ++++++++++++++++
 ...tuptools_15.2.bb => python3-setuptools_18.2.bb} |  0
 3 files changed, 46 insertions(+), 63 deletions(-)
 delete mode 100644 meta/recipes-devtools/python/python-distribute_0.6.32.bb
 create mode 100644 meta/recipes-devtools/python/python-setuptools_18.2.bb
 rename meta/recipes-devtools/python/{python3-setuptools_15.2.bb => python3-setuptools_18.2.bb} (100%)

diff --git a/meta/recipes-devtools/python/python-distribute_0.6.32.bb b/meta/recipes-devtools/python/python-distribute_0.6.32.bb
deleted file mode 100644
index aa07633..0000000
--- a/meta/recipes-devtools/python/python-distribute_0.6.32.bb
+++ /dev/null
@@ -1,63 +0,0 @@
-SUMMARY = "Download, build, install, upgrade, and uninstall Python packages"
-HOMEPAGE = "http://packages.python.org/distribute"
-SECTION = "devel/python"
-LICENSE = "PSF"
-LIC_FILES_CHKSUM = "file://setup.py;beginline=234;endline=234;md5=26f6b02022b737126d3c88838782dddb"
-
-SRCNAME = "distribute"
-PR = "ml5"
-DEPENDS += "python"
-DEPENDS_class-native += "python-native"
-
-SRC_URI = " \
-  http://pypi.python.org/packages/source/d/distribute/${SRCNAME}-${PV}.tar.gz \
-"
-SRC_URI[md5sum] = "acb7a2da81e3612bfb1608abe4f0e568"
-SRC_URI[sha256sum] = "8970cd1e148b5d1fea9430584aea66c45ea22d80e0933393ec49ebc388f718df"
-
-S = "${WORKDIR}/${SRCNAME}-${PV}"
-
-#  http://python-distribute.org/distribute_setup.py 
-
-# force the selection of python3
-#PYTHON_BASEVERSION = "3.3"
-#PYTHON_MAJMIN = "3.3"
-
-inherit distutils
-
-DISTUTILS_INSTALL_ARGS += "--install-lib=${D}${libdir}/${PYTHON_DIR}/site-packages"
-
-do_install_prepend() {
-    install -d ${D}/${libdir}/${PYTHON_DIR}/site-packages
-}
-
-#
-#  The installer puts the wrong path in the setuptools.pth file.  Correct it.
-#
-do_install_append() {
-    rm ${D}${PYTHON_SITEPACKAGES_DIR}/setuptools.pth
-    echo "./${SRCNAME}-${PV}-py${PYTHON_BASEVERSION}.egg" > ${D}${PYTHON_SITEPACKAGES_DIR}/setuptools.pth
-}
-
-do_install_append_class-nativesdk() {
-	sed -i -e '1s|^#!.*|#!/usr/bin/env python|' ${D}${PYTHON_SITEPACKAGES_DIR}/distribute-${PV}-py${PYTHON_BASEVERSION}.egg/setuptools/tests/test_resources.py
-	sed -i -e '1s|^#!.*|#!/usr/bin/env python|' ${D}${bindir}/easy_install
-	sed -i -e '1s|^#!.*|#!/usr/bin/env python|' ${D}${bindir}/easy_install-${PYTHON_BASEVERSION}
-}
-
-RDEPENDS_${PN} = "\
-  python-distutils \
-  python-compression \
-"
-
-RDEPENDS_${PN}_class-target = "\
-  python-distutils \
-  python-compression \
-  python-netclient \
-  python-email \
-  python-shell \
-"
-
-RPROVIDES_${PN} += "python-setuptools"
-
-BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-devtools/python/python-setuptools_18.2.bb b/meta/recipes-devtools/python/python-setuptools_18.2.bb
new file mode 100644
index 0000000..1af3e05
--- /dev/null
+++ b/meta/recipes-devtools/python/python-setuptools_18.2.bb
@@ -0,0 +1,46 @@
+SUMMARY = "Downloads, builds, installs, upgrades, and uninstalls Python packages"
+HOMEPAGE = "https://pypi.python.org/pypi/setuptools"
+SECTION = "devel/python"
+LICENSE = "PSF|ZPL"
+LIC_FILES_CHKSUM = "file://setup.py;beginline=78;endline=78;md5=8a314270dd7a8dbca741775415f1716e"
+
+SRCNAME = "setuptools"
+
+PROVIDES = "python-distribute"
+
+DEPENDS += "python"
+DEPENDS_class-native += "python-native"
+
+inherit distutils
+
+SRC_URI = "https://pypi.python.org/packages/source/s/setuptools/setuptools-${PV}.tar.gz"
+SRC_URI[md5sum] = "52b4e48939ef311d7204f8fe940764f4"
+SRC_URI[sha256sum] = "0994a58df27ea5dc523782a601357a2198b7493dcc99a30d51827a23585b5b1d"
+
+S = "${WORKDIR}/${SRCNAME}-${PV}"
+
+
+DISTUTILS_INSTALL_ARGS += "--install-lib=${D}${libdir}/${PYTHON_DIR}/site-packages"
+
+do_install_prepend() {
+    install -d ${D}/${libdir}/${PYTHON_DIR}/site-packages
+}
+
+RDEPENDS_${PN} = "\
+  python-stringold \
+  python-email \
+  python-shell \
+  python-distutils \
+  python-compression \
+"
+
+RDEPENDS_${PN}_class-native = "\
+  python-distutils \
+  python-compression \
+"
+
+RREPLACES_${PN} = "python-distribute"
+RPROVIDES_${PN} = "python-distribute"
+RCONFLICTS_${PN} = "python-distribute"
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-devtools/python/python3-setuptools_15.2.bb b/meta/recipes-devtools/python/python3-setuptools_18.2.bb
similarity index 100%
rename from meta/recipes-devtools/python/python3-setuptools_15.2.bb
rename to meta/recipes-devtools/python/python3-setuptools_18.2.bb
-- 
2.1.4



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

* [PATCH 17/17] classes, conf: Remove python-distribute refrences
  2015-08-24 20:03 [PATCH 00/17] systemd upgrade, distribute->setuptools and clang fixes Khem Raj
                   ` (15 preceding siblings ...)
  2015-08-24 20:03 ` [PATCH 16/17] python-distribute, python-setuptools: Migrate to good old python-setuptools Khem Raj
@ 2015-08-24 20:03 ` Khem Raj
  16 siblings, 0 replies; 31+ messages in thread
From: Khem Raj @ 2015-08-24 20:03 UTC (permalink / raw)
  To: openembedded-core

We have removed python-distribute so these references should go as well

Fixes [YOCTO #8201]

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta/classes/setuptools.bbclass            | 2 +-
 meta/conf/distro/include/distro_alias.inc  | 2 --
 meta/conf/distro/include/package_regex.inc | 4 ----
 3 files changed, 1 insertion(+), 7 deletions(-)

diff --git a/meta/classes/setuptools.bbclass b/meta/classes/setuptools.bbclass
index 56343b1..157ef63 100644
--- a/meta/classes/setuptools.bbclass
+++ b/meta/classes/setuptools.bbclass
@@ -1,6 +1,6 @@
 inherit distutils
 
-DEPENDS += "python-distribute-native"
+DEPENDS += "python-setuptools-native"
 
 DISTUTILS_INSTALL_ARGS = "--root=${D} \
     --prefix=${prefix} \
diff --git a/meta/conf/distro/include/distro_alias.inc b/meta/conf/distro/include/distro_alias.inc
index ec8570d..fb5f531 100644
--- a/meta/conf/distro/include/distro_alias.inc
+++ b/meta/conf/distro/include/distro_alias.inc
@@ -385,11 +385,9 @@ DISTRO_PN_ALIAS_pn-psplash = "OpenedHand"
 DISTRO_PN_ALIAS_pn-ptest-runner = "OE-Core"
 DISTRO_PN_ALIAS_pn-puzzles = "Debian=sgt-puzzles Fedora=puzzles"
 DISTRO_PN_ALIAS_pn-python3 = "Fedora=python3 Debian=python3.2"
-DISTRO_PN_ALIAS_pn-python3-distribute = "Debian=python3-setuptools Fedora=python3-setuptools"
 DISTRO_PN_ALIAS_pn-python-ZSI = "OE-Core"
 DISTRO_PN_ALIAS_pn-python-argparse = "Fedora=python-argparse OpenSuSE=python-argparse"
 DISTRO_PN_ALIAS_pn-python-dbus = "Ubuntu=python-dbus Debian=python-dbus Mandriva=python-dbus"
-DISTRO_PN_ALIAS_pn-python-distribute = "Opensuse=python-setuptools Fedora=python-setuptools"
 DISTRO_PN_ALIAS_pn-python-git = "Debian=python-git Fedora=GitPython"
 DISTRO_PN_ALIAS_pn-python-mako = "Fedora=python-mako Opensuse=python-Mako"
 DISTRO_PN_ALIAS_pn-python-pycairo = "Meego=pycairo Fedora=pycairo Ubuntu=pycairo Debian=pycairo"
diff --git a/meta/conf/distro/include/package_regex.inc b/meta/conf/distro/include/package_regex.inc
index 0c29ade..1e85c35 100644
--- a/meta/conf/distro/include/package_regex.inc
+++ b/meta/conf/distro/include/package_regex.inc
@@ -120,10 +120,6 @@ REGEX_pn-qt4-native = "(?P<pver>\d+(\.\d+)+)/"
 # PyPI sites
 REGEX_URI_pn-python-nose = "https://pypi.python.org/pypi/nose/"
 REGEX_pn-python-nose = "/nose/${COMMON_REGEX}"
-# python-distribute 0.7.x is a simple compatibility layer that installs Setuptools 0.7+.
-# so we stick to 0.6.x series
-REGEX_URI_pn-python-distribute = "https://pypi.python.org/pypi/distribute/"
-REGEX_pn-python-distribute = "/distribute/(?P<pver>\d+.6.\d+)"
 REGEX_URI_pn-python-gitdb = "https://pypi.python.org/pypi/gitdb/"
 REGEX_URI_pn-python-async = "https://pypi.python.org/pypi/async/"
 REGEX_URI_pn-python-smmap = "https://pypi.python.org/pypi/smmap/"
-- 
2.1.4



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

* Re: [PATCH 16/17] python-distribute, python-setuptools: Migrate to good old python-setuptools
  2015-08-24 20:03 ` [PATCH 16/17] python-distribute, python-setuptools: Migrate to good old python-setuptools Khem Raj
@ 2015-08-25 16:26   ` Burton, Ross
  2015-08-25 17:55     ` Khem Raj
                       ` (3 more replies)
  0 siblings, 4 replies; 31+ messages in thread
From: Burton, Ross @ 2015-08-25 16:26 UTC (permalink / raw)
  To: Khem Raj; +Cc: OE-core

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

On 24 August 2015 at 21:03, Khem Raj <raj.khem@gmail.com> wrote:

> setuptools the old king is ruling again, distribute fork has been merged
> into setuptools starting 0.7x, so lets move to use it as well
>

This fails dramatically on the autobuilder with the core error being:

ERROR: Nothing PROVIDES 'python-setuptools-native' (but
virtual:nativesdk:/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-arm64/build/meta/recipes-devtools/python/
python-git_1.0.1.bb DEPENDS on or otherwise requires it). Close matches:
  python3-setuptools-native
  python3-setuptools
  python-scons-native

Ross

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

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

* Re: [PATCH 16/17] python-distribute, python-setuptools: Migrate to good old python-setuptools
  2015-08-25 16:26   ` Burton, Ross
@ 2015-08-25 17:55     ` Khem Raj
  2015-08-25 19:06     ` Khem Raj
                       ` (2 subsequent siblings)
  3 siblings, 0 replies; 31+ messages in thread
From: Khem Raj @ 2015-08-25 17:55 UTC (permalink / raw)
  To: Burton, Ross; +Cc: OE-core


[-- Attachment #1.1: Type: text/plain, Size: 941 bytes --]


> On Aug 25, 2015, at 9:26 AM, Burton, Ross <ross.burton@intel.com> wrote:
> 
> On 24 August 2015 at 21:03, Khem Raj <raj.khem@gmail.com <mailto:raj.khem@gmail.com>> wrote:
> setuptools the old king is ruling again, distribute fork has been merged
> into setuptools starting 0.7x, so lets move to use it as well
> 
> This fails dramatically on the autobuilder with the core error being:
> 
> ERROR: Nothing PROVIDES 'python-setuptools-native' (but virtual:nativesdk:/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-arm64/build/meta/recipes-devtools/python/python-git_1.0.1.bb <http://python-git_1.0.1.bb/> DEPENDS on or otherwise requires it). Close matches:
>   python3-setuptools-native
>   python3-setuptools
>   python-scons-native

New recipe has bbclassextend for native so I wonder why it did not find it. I will try to reproduce it. meanwhile you can exclude the two setuptools related commits.

> 
> Ross


[-- Attachment #1.2: Type: text/html, Size: 2138 bytes --]

[-- Attachment #2: Message signed with OpenPGP using GPGMail --]
[-- Type: application/pgp-signature, Size: 211 bytes --]

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

* Re: [PATCH 16/17] python-distribute, python-setuptools: Migrate to good old python-setuptools
  2015-08-25 16:26   ` Burton, Ross
  2015-08-25 17:55     ` Khem Raj
@ 2015-08-25 19:06     ` Khem Raj
  2015-08-25 20:34     ` Khem Raj
  2015-08-26  1:45     ` Khem Raj
  3 siblings, 0 replies; 31+ messages in thread
From: Khem Raj @ 2015-08-25 19:06 UTC (permalink / raw)
  To: Burton, Ross; +Cc: OE-core


[-- Attachment #1.1: Type: text/plain, Size: 862 bytes --]


> On Aug 25, 2015, at 9:26 AM, Burton, Ross <ross.burton@intel.com> wrote:
> 
> On 24 August 2015 at 21:03, Khem Raj <raj.khem@gmail.com <mailto:raj.khem@gmail.com>> wrote:
> setuptools the old king is ruling again, distribute fork has been merged
> into setuptools starting 0.7x, so lets move to use it as well
> 
> This fails dramatically on the autobuilder with the core error being:
> 
> ERROR: Nothing PROVIDES 'python-setuptools-native' (but virtual:nativesdk:/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-arm64/build/meta/recipes-devtools/python/python-git_1.0.1.bb <http://python-git_1.0.1.bb/> DEPENDS on or otherwise requires it). Close matches:
>   python3-setuptools-native
>   python3-setuptools
>   python-scons-native
> 

sdks build shows this probably. Pull out those two setuptools related commits for now.

> Ross


[-- Attachment #1.2: Type: text/html, Size: 2053 bytes --]

[-- Attachment #2: Message signed with OpenPGP using GPGMail --]
[-- Type: application/pgp-signature, Size: 211 bytes --]

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

* Re: [PATCH 16/17] python-distribute, python-setuptools: Migrate to good old python-setuptools
  2015-08-25 16:26   ` Burton, Ross
  2015-08-25 17:55     ` Khem Raj
  2015-08-25 19:06     ` Khem Raj
@ 2015-08-25 20:34     ` Khem Raj
  2015-08-25 20:46       ` Richard Purdie
  2015-08-26  1:45     ` Khem Raj
  3 siblings, 1 reply; 31+ messages in thread
From: Khem Raj @ 2015-08-25 20:34 UTC (permalink / raw)
  To: Burton, Ross; +Cc: OE-core


[-- Attachment #1.1: Type: text/plain, Size: 945 bytes --]


> On Aug 25, 2015, at 9:26 AM, Burton, Ross <ross.burton@intel.com> wrote:
> 
> On 24 August 2015 at 21:03, Khem Raj <raj.khem@gmail.com <mailto:raj.khem@gmail.com>> wrote:
> setuptools the old king is ruling again, distribute fork has been merged
> into setuptools starting 0.7x, so lets move to use it as well
> 
> This fails dramatically on the autobuilder with the core error being:
> 
> ERROR: Nothing PROVIDES 'python-setuptools-native' (but virtual:nativesdk:/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-arm64/build/meta/recipes-devtools/python/python-git_1.0.1.bb <http://python-git_1.0.1.bb/> DEPENDS on or otherwise requires it). Close matches:
>   python3-setuptools-native
>   python3-setuptools
>   python-scons-native
> 

I can not reproduce it. I did bitbake nativesdk-python-git
from scratch and all worked fine. I used qemux86 but I guess its target independent problem. How do you reproduce it.



[-- Attachment #1.2: Type: text/html, Size: 2025 bytes --]

[-- Attachment #2: Message signed with OpenPGP using GPGMail --]
[-- Type: application/pgp-signature, Size: 211 bytes --]

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

* Re: [PATCH 16/17] python-distribute, python-setuptools: Migrate to good old python-setuptools
  2015-08-25 20:34     ` Khem Raj
@ 2015-08-25 20:46       ` Richard Purdie
  2015-08-25 21:35         ` Khem Raj
  0 siblings, 1 reply; 31+ messages in thread
From: Richard Purdie @ 2015-08-25 20:46 UTC (permalink / raw)
  To: Khem Raj; +Cc: OE-core

On Tue, 2015-08-25 at 13:34 -0700, Khem Raj wrote:
> 
> > On Aug 25, 2015, at 9:26 AM, Burton, Ross <ross.burton@intel.com>
> > wrote:
> > 
> > On 24 August 2015 at 21:03, Khem Raj <raj.khem@gmail.com> wrote:
> >         setuptools the old king is ruling again, distribute fork has
> >         been merged
> >         into setuptools starting 0.7x, so lets move to use it as
> >         well
> > 
> > 
> > This fails dramatically on the autobuilder with the core error
> > being:
> > 
> > ERROR: Nothing PROVIDES 'python-setuptools-native' (but
> > virtual:nativesdk:/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-arm64/build/meta/recipes-devtools/python/python-git_1.0.1.bb DEPENDS on or otherwise requires it). Close matches:
> >   python3-setuptools-native
> >   python3-setuptools
> >   python-scons-native
>

> I can not reproduce it. I did bitbake nativesdk-python-git
> from scratch and all worked fine. I used qemux86 but I guess its
> target independent problem. How do you reproduce it.

"bitbake buildtools-tarball" seemed to reproduce issues, as did a
"bitbake world -c fetch" on the autobuilder so I'd try those.

Cheers,

Richard






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

* Re: [PATCH 16/17] python-distribute, python-setuptools: Migrate to good old python-setuptools
  2015-08-25 20:46       ` Richard Purdie
@ 2015-08-25 21:35         ` Khem Raj
  0 siblings, 0 replies; 31+ messages in thread
From: Khem Raj @ 2015-08-25 21:35 UTC (permalink / raw)
  To: Richard Purdie; +Cc: OE-core

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


> On Aug 25, 2015, at 1:46 PM, Richard Purdie <richard.purdie@linuxfoundation.org> wrote:
> 
>> 
>> I can not reproduce it. I did bitbake nativesdk-python-git
>> from scratch and all worked fine. I used qemux86 but I guess its
>> target independent problem. How do you reproduce it.
> 
> "bitbake buildtools-tarball" seemed to reproduce issues, as did a
> "bitbake world -c fetch" on the autobuilder so I'd try those.
> 

both targets worked fine. lib notify issue is already having a fix in flight. Are there any checks on it ignoring a recipe if its license did not comply ? since I see a warning in OE-Core build

WARNING: python-setuptools-native: No generic license file exists for: ZPL in any provider

I have fixed it. and pushed a patch here

https://github.com/kraj/openembedded-core/commit/8551755e9f968d4eee8ad58a4e33cc04e90db0a4

here are detailed logs

ubuntu@khem-dvm-001:~BUILDDIR/ > MACHINE=qemuarm64 bitbake buildtools-tarball
Loading cache: 100% |###########################################################################################################################################################################################################################################| ETA:  00:00:00
Loaded 1306 entries from dependency cache.
NOTE: Resolving any missing task queue dependencies

Build Configuration:
BB_VERSION        = "1.27.1"
BUILD_SYS         = "x86_64-linux"
NATIVELSBSTRING   = "Ubuntu-14.04"
TARGET_SYS        = "aarch64-oe-linux"
MACHINE           = "qemuarm64"
DISTRO            = "nodistro"
DISTRO_VERSION    = "nodistro.0"
TUNE_FEATURES     = "aarch64"
TARGET_FPU        = ""
meta              = "kraj/master:ae43461eec8e0bbdc4699e99eeb58e3a562b6cd3"

NOTE: Preparing RunQueue
NOTE: Executing SetScene Tasks
NOTE: Executing RunQueue Tasks
WARNING: python-setuptools-native: No generic license file exists for: ZPL in any provider
NOTE: Tasks Summary: Attempted 1311 tasks of which 562 didn't need to be rerun and all succeeded.

Summary: There was 1 WARNING message shown.
ubuntu@khem-dvm-001:~BUILDDIR/ >
ubuntu@khem-dvm-001:~BUILDDIR/ >
ubuntu@khem-dvm-001:~BUILDDIR/ >
ubuntu@khem-dvm-001:~BUILDDIR/ > MACHINE=qemuarm64 bitbake world -c fetch
Loading cache: 100% |###########################################################################################################################################################################################################################################| ETA:  00:00:00
Loaded 1306 entries from dependency cache.
Parsing recipes: 100% |#########################################################################################################################################################################################################################################| Time: 00:00:00
Parsing of 885 .bb files complete (883 cached, 2 parsed). 1305 targets, 61 skipped, 0 masked, 0 errors.
NOTE: Resolving any missing task queue dependencies

Build Configuration:
BB_VERSION        = "1.27.1"
BUILD_SYS         = "x86_64-linux"
NATIVELSBSTRING   = "Ubuntu-14.04"
TARGET_SYS        = "aarch64-oe-linux"
MACHINE           = "qemuarm64"
DISTRO            = "nodistro"
DISTRO_VERSION    = "nodistro.0"
TUNE_FEATURES     = "aarch64"
TARGET_FPU        = ""
meta              = "kraj/master:8551755e9f968d4eee8ad58a4e33cc04e90db0a4"

NOTE: Preparing RunQueue
NOTE: Executing SetScene Tasks
NOTE: Executing RunQueue Tasks
WARNING: Failed to fetch URL http://www.apache.org/dist/subversion/subversion-1.8.13.tar.bz2, attempting MIRRORS if available
WARNING: Failed to fetch URL http://www.directfb.org/downloads/Extras/DirectFB-examples-1.7.0.tar.gz, attempting MIRRORS if available
WARNING: Failed to fetch URL http://www.directfb.org/downloads/Core/DirectFB-1.7/DirectFB-1.7.7.tar.gz, attempting MIRRORS if available
WARNING: Failed to fetch URL http://ftp.gnome.org/pub/GNOME/sources/libnotify/0.6/libnotify-0.6.0.tar.xz;name=archive, attempting MIRRORS if available
ERROR: Fetcher failure: Fetch command failed with exit code 8, output:
http://ftp.gnome.org/pub/GNOME/sources/libnotify/0.6/libnotify-0.6.0.tar.xz:
2015-08-25 21:25:26 ERROR 404: Not Found.

ERROR: Function failed: Fetcher failure for URL: 'http://ftp.gnome.org/pub/GNOME/sources/libnotify/0.6/libnotify-0.6.0.tar.xz;name=archive'. Unable to fetch URL from any source.
ERROR: Logfile of failure stored in: /home/ubuntu/work/oe/build/tmp-glibc/work/aarch64-oe-linux/libnotify/0.6.0-r1/temp/log.do_fetch.30991
ERROR: Task 349 (/home/ubuntu/work/oe/meta/recipes-gnome/libnotify/libnotify_0.6.0.bb, do_fetch) failed with exit code '1'
NOTE: Tasks Summary: Attempted 475 tasks of which 133 didn't need to be rerun and 1 failed.
Waiting for 0 running tasks to finish:

Summary: 1 task failed:
  /home/ubuntu/work/oe/meta/recipes-gnome/libnotify/libnotify_0.6.0.bb, do_fetch
Summary: There were 4 WARNING messages shown.
Summary: There were 2 ERROR messages shown, returning a non-zero exit code.

[-- Attachment #2: Message signed with OpenPGP using GPGMail --]
[-- Type: application/pgp-signature, Size: 211 bytes --]

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

* Re: [PATCH 16/17] python-distribute, python-setuptools: Migrate to good old python-setuptools
  2015-08-25 16:26   ` Burton, Ross
                       ` (2 preceding siblings ...)
  2015-08-25 20:34     ` Khem Raj
@ 2015-08-26  1:45     ` Khem Raj
  3 siblings, 0 replies; 31+ messages in thread
From: Khem Raj @ 2015-08-26  1:45 UTC (permalink / raw)
  To: Burton, Ross; +Cc: OE-core


[-- Attachment #1.1: Type: text/plain, Size: 887 bytes --]


> On Aug 25, 2015, at 9:26 AM, Burton, Ross <ross.burton@intel.com> wrote:
> 
> On 24 August 2015 at 21:03, Khem Raj <raj.khem@gmail.com <mailto:raj.khem@gmail.com>> wrote:
> setuptools the old king is ruling again, distribute fork has been merged
> into setuptools starting 0.7x, so lets move to use it as well
> 
> This fails dramatically on the autobuilder with the core error being:
> 
> ERROR: Nothing PROVIDES 'python-setuptools-native' (but virtual:nativesdk:/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-arm64/build/meta/recipes-devtools/python/python-git_1.0.1.bb <http://python-git_1.0.1.bb/> DEPENDS on or otherwise requires it). Close matches:
>   python3-setuptools-native
>   python3-setuptools
>   python-scons-native
> 

I sent a V2 for this

1. Fixes licenses
2. Fixes SRC_URI checksum for python3-setuptools

Hopefully that fixes it.



[-- Attachment #1.2: Type: text/html, Size: 2044 bytes --]

[-- Attachment #2: Message signed with OpenPGP using GPGMail --]
[-- Type: application/pgp-signature, Size: 211 bytes --]

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

* Re: [PATCH 01/17] systemd: Upgrade 219 -> 224
  2015-08-24 20:03 ` [PATCH 01/17] systemd: Upgrade 219 -> 224 Khem Raj
@ 2015-09-01 21:15   ` Richard Purdie
  2015-09-01 23:45     ` Khem Raj
  0 siblings, 1 reply; 31+ messages in thread
From: Richard Purdie @ 2015-09-01 21:15 UTC (permalink / raw)
  To: Khem Raj; +Cc: openembedded-core

On Mon, 2015-08-24 at 13:03 -0700, Khem Raj wrote:
> Drop patches that were straight backports from upstream
> 
> MIT licence was unused and dropped from systemd sources
> for more details see
> https://github.com/systemd/systemd/commit/8f1e0c5f38cdf7e401ab4d2bb93ad816d08e7715
> 
> Drop gtkdoc dependency since libudev API documentation has been converted from gtkdoc into man pages
> Remove packaging gudev as it has moved to separate repository outside
> systemd
> 
> For more details see
> https://github.com/systemd/systemd/commit/2375607039517c88df51ef16ddbb624ec1c10654
> 
> package newly added script for xorg to be usable with systemd --user
> intance
> For more details see
> https://github.com/systemd/systemd/commit/1401ec2d34bcde406ced531a72dc46ebaf332594
> 
> For complete differences between two releases run
> git log --oneline v219..v224
> in systemd git clone

This patch seems to cause the build failures in:

https://autobuilder.yoctoproject.org/main/builders/nightly-qa-systemd/builds/466

(two different sanity test failures)

Cheers,

Richard



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

* Re: [PATCH 15/17] busybox: Use CC instead of bare LD to be the Linker
  2015-08-24 20:03 ` [PATCH 15/17] busybox: Use CC instead of bare LD to be the Linker Khem Raj
@ 2015-09-01 21:17   ` Richard Purdie
  2015-09-01 23:55     ` Khem Raj
  0 siblings, 1 reply; 31+ messages in thread
From: Richard Purdie @ 2015-09-01 21:17 UTC (permalink / raw)
  To: Khem Raj; +Cc: openembedded-core

On Mon, 2015-08-24 at 13:03 -0700, Khem Raj wrote:
> This patch was on mailing list, another patch to make sure -r is not
> passed directly but via -Wl switch is added.
> 
> This was exposed when using clang and gold linker, clang does not have
> -r switch to do relocatable objects and problem happens specific to OE
> becuase we use LD = CC
> 
> now what happens is that busybox assumes that linker will be called
> directly, and hence sprinkles linkers options in its kbuild system which
> aggregate into LDFLAGS, some of these options are happily ignored by gcc
> as well but it passes -r options rightly to linker so it all works,
> however when using clang, this falls apart since -r is not known option
> for clang so it drops this option and all obects which should be
> partially linked becomes ET_EXEC and when they are added to final link
> then gold starts to get confused
> 
> /mnt/home/kraj/work/angstrom/build/tmp-angstrom-glibc/sysroots/x86_64-linux/usr/bin/arm-angstrom-linux-gnueabi/arm-angstrom-linux-gnueabi-ld:
> error: applets/built-in.o: unsupported ELF file type 2
> clang-3.7: error: linker command failed with exit code 1 (use -v to see invocation)

This breaks DISTRO=poky-lsb:

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

(searching for busybox shows many other versions of this too)

Cheers,

Richard



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

* Re: [PATCH 01/17] systemd: Upgrade 219 -> 224
  2015-09-01 21:15   ` Richard Purdie
@ 2015-09-01 23:45     ` Khem Raj
  2015-09-02  7:15       ` Richard Purdie
  0 siblings, 1 reply; 31+ messages in thread
From: Khem Raj @ 2015-09-01 23:45 UTC (permalink / raw)
  To: Richard Purdie; +Cc: openembedded-core

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


> On Sep 1, 2015, at 2:15 PM, Richard Purdie <richard.purdie@linuxfoundation.org> wrote:
> 
> On Mon, 2015-08-24 at 13:03 -0700, Khem Raj wrote:
>> Drop patches that were straight backports from upstream
>> 
>> MIT licence was unused and dropped from systemd sources
>> for more details see
>> https://github.com/systemd/systemd/commit/8f1e0c5f38cdf7e401ab4d2bb93ad816d08e7715
>> 
>> Drop gtkdoc dependency since libudev API documentation has been converted from gtkdoc into man pages
>> Remove packaging gudev as it has moved to separate repository outside
>> systemd
>> 
>> For more details see
>> https://github.com/systemd/systemd/commit/2375607039517c88df51ef16ddbb624ec1c10654
>> 
>> package newly added script for xorg to be usable with systemd --user
>> intance
>> For more details see
>> https://github.com/systemd/systemd/commit/1401ec2d34bcde406ced531a72dc46ebaf332594
>> 
>> For complete differences between two releases run
>> git log --oneline v219..v224
>> in systemd git clone
> 
> This patch seems to cause the build failures in:
> 
> https://autobuilder.yoctoproject.org/main/builders/nightly-qa-systemd/builds/466
> 
> (two different sanity test failures)


thanks for the info. Looking at the two tests.

setting up date using date -s seems to be assuming that Automatic time synchronization is not enabled
that test could be improved for systemd by using systemd utils.

timedatectl set-time "yyyy-MM-dd hh:mm:ss”

and I don’t believe its passing with systemd-219 since locally I executed same commands on my minnow board running 219
and it failed.

Second test failure is a good one when mixing sysvinit scripts with systemd which is what systemctl disable avahi-daemon.service is doing

CHANGES WITH 221:

        * Support for chkconfig (--enable-chkconfig) was removed in favour of
          calling an abstraction /lib/systemd/systemd-sysv-install. This needs
          to be implemented for your distribution. See "SYSV INIT.D SCRIPTS" in
          README for details.

This needs implementing  /lib/systemd/systemd-sysv-install for OE and I will update the patch to fix this one.


> 
> Cheers,
> 
> Richard
> 


[-- Attachment #2: Message signed with OpenPGP using GPGMail --]
[-- Type: application/pgp-signature, Size: 211 bytes --]

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

* Re: [PATCH 15/17] busybox: Use CC instead of bare LD to be the Linker
  2015-09-01 21:17   ` Richard Purdie
@ 2015-09-01 23:55     ` Khem Raj
  2015-09-09  5:55       ` Khem Raj
  0 siblings, 1 reply; 31+ messages in thread
From: Khem Raj @ 2015-09-01 23:55 UTC (permalink / raw)
  To: Richard Purdie; +Cc: openembedded-core

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


> On Sep 1, 2015, at 2:17 PM, Richard Purdie <richard.purdie@linuxfoundation.org> wrote:
> 
>> /mnt/home/kraj/work/angstrom/build/tmp-angstrom-glibc/sysroots/x86_64-linux/usr/bin/arm-angstrom-linux-gnueabi/arm-angstrom-linux-gnueabi-ld:
>> error: applets/built-in.o: unsupported ELF file type 2
>> clang-3.7: error: linker command failed with exit code 1 (use -v to see invocation)
> 
> This breaks DISTRO=poky-lsb:
> 
> http://errors.yoctoproject.org/Errors/Details/15705/
> 
> (searching for busybox shows many other versions of this too)
> 

OK I think we add -fpie to poky-lsb. is that right ?
now instead of calling ld directly we are calling gcc to do linking so we now also get the baggage of CFLAGS since LDFLAG = CFLAGS
which is actually correct but in this case we are trying to do partial linking so -pie is useless at this stage of linking. So what we need is
to ignore -pie ( add -fno-pie) in LDFLAGS when doing partial linking. I will send a reworked patch.

[-- Attachment #2: Message signed with OpenPGP using GPGMail --]
[-- Type: application/pgp-signature, Size: 211 bytes --]

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

* Re: [PATCH 01/17] systemd: Upgrade 219 -> 224
  2015-09-01 23:45     ` Khem Raj
@ 2015-09-02  7:15       ` Richard Purdie
  0 siblings, 0 replies; 31+ messages in thread
From: Richard Purdie @ 2015-09-02  7:15 UTC (permalink / raw)
  To: Khem Raj; +Cc: openembedded-core

On Tue, 2015-09-01 at 16:45 -0700, Khem Raj wrote:
> > On Sep 1, 2015, at 2:15 PM, Richard Purdie <richard.purdie@linuxfoundation.org> wrote:
> > 
> > On Mon, 2015-08-24 at 13:03 -0700, Khem Raj wrote:
> >> Drop patches that were straight backports from upstream
> >> 
> >> MIT licence was unused and dropped from systemd sources
> >> for more details see
> >> https://github.com/systemd/systemd/commit/8f1e0c5f38cdf7e401ab4d2bb93ad816d08e7715
> >> 
> >> Drop gtkdoc dependency since libudev API documentation has been converted from gtkdoc into man pages
> >> Remove packaging gudev as it has moved to separate repository outside
> >> systemd
> >> 
> >> For more details see
> >> https://github.com/systemd/systemd/commit/2375607039517c88df51ef16ddbb624ec1c10654
> >> 
> >> package newly added script for xorg to be usable with systemd --user
> >> intance
> >> For more details see
> >> https://github.com/systemd/systemd/commit/1401ec2d34bcde406ced531a72dc46ebaf332594
> >> 
> >> For complete differences between two releases run
> >> git log --oneline v219..v224
> >> in systemd git clone
> > 
> > This patch seems to cause the build failures in:
> > 
> > https://autobuilder.yoctoproject.org/main/builders/nightly-qa-systemd/builds/466
> > 
> > (two different sanity test failures)
> 
> 
> thanks for the info. Looking at the two tests.
> 
> setting up date using date -s seems to be assuming that Automatic time synchronization is not enabled
> that test could be improved for systemd by using systemd utils.
> 
> timedatectl set-time "yyyy-MM-dd hh:mm:ss”
> 
> and I don’t believe its passing with systemd-219 since locally I executed same commands on my minnow board running 219
> and it failed.

I believe it passes with 219 (master) and is a regression:

https://autobuilder.yoctoproject.org/main/builders/nightly-qa-systemd/builds/471

(green build with master which contains 219).

> Second test failure is a good one when mixing sysvinit scripts with systemd which is what systemctl disable avahi-daemon.service is doing
> 
> CHANGES WITH 221:
> 
>         * Support for chkconfig (--enable-chkconfig) was removed in favour of
>           calling an abstraction /lib/systemd/systemd-sysv-install. This needs
>           to be implemented for your distribution. See "SYSV INIT.D SCRIPTS" in
>           README for details.
> 
> This needs implementing  /lib/systemd/systemd-sysv-install for OE and I will update the patch to fix this one.

Thanks!

Richard



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

* Re: [PATCH 15/17] busybox: Use CC instead of bare LD to be the Linker
  2015-09-01 23:55     ` Khem Raj
@ 2015-09-09  5:55       ` Khem Raj
  0 siblings, 0 replies; 31+ messages in thread
From: Khem Raj @ 2015-09-09  5:55 UTC (permalink / raw)
  To: Richard Purdie; +Cc: openembedded-core

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


> On Sep 1, 2015, at 4:55 PM, Khem Raj <raj.khem@gmail.com> wrote:
> 
> 
>> On Sep 1, 2015, at 2:17 PM, Richard Purdie <richard.purdie@linuxfoundation.org> wrote:
>> 
>>> /mnt/home/kraj/work/angstrom/build/tmp-angstrom-glibc/sysroots/x86_64-linux/usr/bin/arm-angstrom-linux-gnueabi/arm-angstrom-linux-gnueabi-ld:
>>> error: applets/built-in.o: unsupported ELF file type 2
>>> clang-3.7: error: linker command failed with exit code 1 (use -v to see invocation)
>> 
>> This breaks DISTRO=poky-lsb:
>> 
>> http://errors.yoctoproject.org/Errors/Details/15705/
>> 
>> (searching for busybox shows many other versions of this too)
>> 
> 
> OK I think we add -fpie to poky-lsb. is that right ?
> now instead of calling ld directly we are calling gcc to do linking so we now also get the baggage of CFLAGS since LDFLAG = CFLAGS
> which is actually correct but in this case we are trying to do partial linking so -pie is useless at this stage of linking. So what we need is
> to ignore -pie ( add -fno-pie) in LDFLAGS when doing partial linking. I will send a reworked patch.

I have sent out a v2 addressing this issue.

http://lists.openembedded.org/pipermail/openembedded-core/2015-September/110245.html

[-- Attachment #2: Message signed with OpenPGP using GPGMail --]
[-- Type: application/pgp-signature, Size: 211 bytes --]

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

end of thread, other threads:[~2015-09-09  5:55 UTC | newest]

Thread overview: 31+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-08-24 20:03 [PATCH 00/17] systemd upgrade, distribute->setuptools and clang fixes Khem Raj
2015-08-24 20:03 ` [PATCH 01/17] systemd: Upgrade 219 -> 224 Khem Raj
2015-09-01 21:15   ` Richard Purdie
2015-09-01 23:45     ` Khem Raj
2015-09-02  7:15       ` Richard Purdie
2015-08-24 20:03 ` [PATCH 02/17] core-image-minimal: Add 4M extra space when using systemd Khem Raj
2015-08-24 20:03 ` [PATCH 03/17] systemd: Cache/define tool paths for target Khem Raj
2015-08-24 20:03 ` [PATCH 04/17] kernel-arch: Force BFD kernel when using gcc for linking Khem Raj
2015-08-24 20:03 ` [PATCH 05/17] sysvinit: Fix makefile bug found with clang Khem Raj
2015-08-24 20:03 ` [PATCH 06/17] alsa-lib: Lift the limitation to use gcc only cross compiler Khem Raj
2015-08-24 20:03 ` [PATCH 07/17] json-c: Include math_compat.c for NAN/INF values Khem Raj
2015-08-24 20:03 ` [PATCH 08/17] libvorbis: Update libvorbis_1.3.4.bb -> libvorbis_1.3.5.bb Khem Raj
2015-08-24 20:03 ` [PATCH 09/17] psplash: Turn psplash_fb_plot_pixel() into static inline Khem Raj
2015-08-24 20:03 ` [PATCH 10/17] mdadm: Upgrade mdadm_3.3.2.bb -> mdadm_3.3.4.bb Khem Raj
2015-08-24 20:03 ` [PATCH 11/17] bitbake.conf: Define fallback DISTRO_NAME Khem Raj
2015-08-24 20:03 ` [PATCH 12/17] systemd: Remove exporting special CPP Khem Raj
2015-08-24 20:03 ` [PATCH 13/17] diffstat: Add TOOLCHAIN_OPTIONS to Linker calls Khem Raj
2015-08-24 20:03 ` [PATCH 14/17] liburcu: Fix atomic function parameter types in calls Khem Raj
2015-08-24 20:03 ` [PATCH 15/17] busybox: Use CC instead of bare LD to be the Linker Khem Raj
2015-09-01 21:17   ` Richard Purdie
2015-09-01 23:55     ` Khem Raj
2015-09-09  5:55       ` Khem Raj
2015-08-24 20:03 ` [PATCH 16/17] python-distribute, python-setuptools: Migrate to good old python-setuptools Khem Raj
2015-08-25 16:26   ` Burton, Ross
2015-08-25 17:55     ` Khem Raj
2015-08-25 19:06     ` Khem Raj
2015-08-25 20:34     ` Khem Raj
2015-08-25 20:46       ` Richard Purdie
2015-08-25 21:35         ` Khem Raj
2015-08-26  1:45     ` Khem Raj
2015-08-24 20:03 ` [PATCH 17/17] classes, conf: Remove python-distribute refrences Khem Raj

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.