summaryrefslogtreecommitdiffstats
path: root/meta/recipes-core
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2016-01-10 21:00:02 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2016-01-24 09:40:31 +0000
commit29deaf0a402e8236c3749067387ce4117937ac13 (patch)
tree0b0bc765317090c4357223b8cb36ba9b53904877 /meta/recipes-core
parent2d028b382c234c23cb54f3eb33e70b3c248d9128 (diff)
downloadpoky-29deaf0a402e8236c3749067387ce4117937ac13.tar.gz
musl: Create ld.so as a relative symlink
We have rootfs intercepts which fail on musl because ld.so on musl is an absolute symlink to /usr/lib/libc.so and then it fails to load when run with qemu user mode. Fixes rootfs failures like WARNING: The postinstall intercept hook 'update_pixbuf_cache' failed (exit code: 255)! See log for details! WARNING: The postinstalls for the following packages will be postponed for first boot: libgdk-pixbuf-2.0-loader-jpeg li bgdk-pixbuf-2.0-loader-png libgdk-pixbuf-2.0-loader-gif libgdk-pixbuf-2.0-loader-xpm WARNING: [log_check] core-image-sato: found a warning message in the logfile (keyword 'WARNING:'): [log_check] WARNING: The postinstall intercept hook 'update_pixbuf_cache' failed (exit code: 255)! See log for details! WARNING: [log_check] core-image-sato: found a warning message in the logfile (keyword 'WARNING:'): [log_check] WARNING: The postinstalls for the following packages will be postponed for first boot: libgdk-pixbuf-2.0-lo ader-jpeg libgdk-pixbuf-2.0-loader-png libgdk-pixbuf-2.0-loader-gif libgdk-pixbuf-2.0-loader-xpm (From OE-Core rev: d48ea3354eff8244e1734fa571bb52c810431b3f) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-core')
-rw-r--r--meta/recipes-core/musl/files/0001-Make-dynamic-linker-a-relative-symlink-to-libc.patch34
-rw-r--r--meta/recipes-core/musl/musl_git.bb3
2 files changed, 36 insertions, 1 deletions
diff --git a/meta/recipes-core/musl/files/0001-Make-dynamic-linker-a-relative-symlink-to-libc.patch b/meta/recipes-core/musl/files/0001-Make-dynamic-linker-a-relative-symlink-to-libc.patch
new file mode 100644
index 0000000000..5490b1cba6
--- /dev/null
+++ b/meta/recipes-core/musl/files/0001-Make-dynamic-linker-a-relative-symlink-to-libc.patch
@@ -0,0 +1,34 @@
1From 94c0b97b62125d8bbc92dce0694e387d5b2ad181 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Sun, 10 Jan 2016 12:14:02 -0800
4Subject: [PATCH] Make dynamic linker a relative symlink to libc
5
6absolute symlink into $(libdir) fails to load in a cross build
7environment, especially when executing qemu in usermode to run target
8applications, which cross build systems often do, since not everything
9can be computed during cross builds, qemu in usermode often comes to aid
10in such situations to feed into cross builds.
11
12Signed-off-by: Khem Raj <raj.khem@gmail.com>
13---
14Upstream-Status: Pending
15
16 Makefile | 2 +-
17 1 file changed, 1 insertion(+), 1 deletion(-)
18
19diff --git a/Makefile b/Makefile
20index b2226fa..0d71f7f 100644
21--- a/Makefile
22+++ b/Makefile
23@@ -189,7 +189,7 @@ $(DESTDIR)$(includedir)/%: include/%
24 $(INSTALL) -D -m 644 $< $@
25
26 $(DESTDIR)$(LDSO_PATHNAME): $(DESTDIR)$(libdir)/libc.so
27- $(INSTALL) -D -l $(libdir)/libc.so $@ || true
28+ $(INSTALL) -D -l ..$(libdir)/libc.so $@ || true
29
30 install-libs: $(ALL_LIBS:lib/%=$(DESTDIR)$(libdir)/%) $(if $(SHARED_LIBS),$(DESTDIR)$(LDSO_PATHNAME),)
31
32--
332.7.0
34
diff --git a/meta/recipes-core/musl/musl_git.bb b/meta/recipes-core/musl/musl_git.bb
index 5b94d1fe28..8970307cba 100644
--- a/meta/recipes-core/musl/musl_git.bb
+++ b/meta/recipes-core/musl/musl_git.bb
@@ -10,6 +10,7 @@ PV = "1.1.12+git${SRCPV}"
10# mirror is at git://github.com/kraj/musl.git 10# mirror is at git://github.com/kraj/musl.git
11 11
12SRC_URI = "git://git.musl-libc.org/musl \ 12SRC_URI = "git://git.musl-libc.org/musl \
13 file://0001-Make-dynamic-linker-a-relative-symlink-to-libc.patch \
13 " 14 "
14 15
15S = "${WORKDIR}/git" 16S = "${WORKDIR}/git"
@@ -49,7 +50,7 @@ do_install() {
49 oe_runmake install DESTDIR='${D}' 50 oe_runmake install DESTDIR='${D}'
50 51
51 install -d ${D}${bindir} 52 install -d ${D}${bindir}
52 ln -s ${libdir}/libc.so ${D}${bindir}/ldd 53 ln -s ../../${libdir}/libc.so ${D}${bindir}/ldd
53} 54}
54 55
55RDEPENDS_${PN}-dev = "linux-libc-headers-dev" 56RDEPENDS_${PN}-dev = "linux-libc-headers-dev"