From: Randy MacLeod <Randy.MacLeod@windriver.com>
To: <openembedded-core@lists.openembedded.org>
Subject: [PATCH v2] systemd: work-around ppc gold linker error
Date: Wed, 21 Jun 2017 22:14:57 -0400 [thread overview]
Message-ID: <1498097697-12564-1-git-send-email-Randy.MacLeod@windriver.com> (raw)
If you enable systemd and build for qemuppc, then the
compile of systemd fails due to a gold linker failure:
.../powerpc-oe-linux-ld.gold:
error: invalid STB_LOCAL symbol in external symbols
error: linker defined: multiple definition of '00000001.plt_call.memcpy+8000'
command line: previous definition here
A git bisect confirms that the commit:
0b0f545 binutils-2.28: Update to latest on release branch
is the problem. This is only known to affect powerpc machines.
Work-around this for powerpc by getting configure to use
the bfd linker rather than the gold linker.
This unblocks powerpc use until the linker bug can be resolved.
Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
---
.../systemd/systemd/systemd-drop-gold-use-bfd.patch | 19 +++++++++++++++++++
meta/recipes-core/systemd/systemd_232.bb | 2 ++
2 files changed, 21 insertions(+)
create mode 100644 meta/recipes-core/systemd/systemd/systemd-drop-gold-use-bfd.patch
diff --git a/meta/recipes-core/systemd/systemd/systemd-drop-gold-use-bfd.patch b/meta/recipes-core/systemd/systemd/systemd-drop-gold-use-bfd.patch
new file mode 100644
index 0000000..e0eb0bd
--- /dev/null
+++ b/meta/recipes-core/systemd/systemd/systemd-drop-gold-use-bfd.patch
@@ -0,0 +1,19 @@
+Upstream-Status: Inappropriate [other]
+
+The patch is not appropriate for upstream since it's a temporary
+work-around for only ppc arches. Once the binutils defect in the
+gold linker is resolved, this patch can be dropped.
+
+Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
+
+--- a/configure.ac
++++ b/configure.ac
+@@ -260,7 +260,7 @@
+ -Wl,-z,relro \
+ -Wl,-z,now \
+ -pie \
+- -Wl,-fuse-ld=gold])
++ -Wl,-fuse-ld=bfd])
+ AC_SUBST([OUR_LDFLAGS], "$with_ldflags $sanitizer_ldflags")
+
+ AC_CHECK_SIZEOF(pid_t)
diff --git a/meta/recipes-core/systemd/systemd_232.bb b/meta/recipes-core/systemd/systemd_232.bb
index 1007360..1e8dffe 100644
--- a/meta/recipes-core/systemd/systemd_232.bb
+++ b/meta/recipes-core/systemd/systemd_232.bb
@@ -41,6 +41,8 @@ SRC_URI_append_libc-uclibc = "\
"
SRC_URI_append_qemuall = " file://0001-core-device.c-Change-the-default-device-timeout-to-2.patch"
+SRC_URI_append_powerpc = " file://systemd-drop-gold-use-bfd.patch"
+
PACKAGECONFIG ??= "xz \
${@bb.utils.filter('DISTRO_FEATURES', 'efi pam selinux ldconfig', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'xkbcommon', '', d)} \
--
2.7.4
next reply other threads:[~2017-06-22 2:23 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-06-22 2:14 Randy MacLeod [this message]
2017-06-22 4:34 ` [PATCH v2] systemd: work-around ppc gold linker error Randy MacLeod
2017-06-22 22:22 ` Khem Raj
2017-06-23 0:30 ` Randy MacLeod
2017-06-26 21:21 ` Randy MacLeod
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1498097697-12564-1-git-send-email-Randy.MacLeod@windriver.com \
--to=randy.macleod@windriver.com \
--cc=openembedded-core@lists.openembedded.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.