Compare commits

...

4 Commits

Author SHA1 Message Date
Saul Wold
e5c3513ca8 qemu: fix relocatable patch for M4
Since M4 used 0.15 and the relocatable_sdk was made for 1.2, it needs
to be moved and rebased

Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-09-15 22:20:09 -07:00
Saul Wold
ae631a5ed0 xserver-xorg: Modify RREPLACES for RCONFLICTS
Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-09-15 18:29:25 -07:00
Richard Purdie
2611db5d9c bitbake.conf: Assign SRCPV so that it will be tracked correcting in the sstate checksum
Currently, SRCPV is just listed as having a value of ${@bb.fetch2.get_srcrev(d)}
which isn't helpful. This can mean that if PV changes, two recipes can have the
same sstate checksum despite having different PV values since the PV value itself
isn't tracked anywhere.

Adding this line means that the real PV value is expanded and recorded in the sstate
checksum, meaning the sstate packages no longer overlap. This is critical in ensuring
consistent builds for revipes using SRCPV.

(From OE-Core rev: a9fffadec4fb60547257cb3d7496b6e39ed07be8)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-14 18:39:18 -07:00
Laurentiu Palcu
aeb336516b nativesdk-qemu: fix SDK relocation issue
User mode emulation binaries are linked using a local linker script. The
nativesdk ones were not used and the resulting binaries did not have the
interp section resized. Hence, those binaries could not be relocated.

[YOCTO #3083]

(From OE-Core rev: da014e900adfe96f01290c5a8f5fb08e295ca204)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-14 18:38:18 -07:00
5 changed files with 43 additions and 2 deletions

View File

@@ -588,6 +588,7 @@ SRCDATE = "${DATE}"
SRCREV ??= "INVALID"
AUTOREV = "${@bb.fetch2.get_autorev(d)}"
SRCPV = "${@bb.fetch2.get_srcrev(d)}"
SRCPV[vardepvalue] = "${SRCPV}"
SRC_URI = ""

View File

@@ -0,0 +1,34 @@
Upstream-Status: Inappropriate [SDK specific]
In order to be able to change the dynamic loader path when relocating
binaries, the interp section has to be made big enough to accomodate
the new path (4096 is the maximum path length in Linux).
Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Index: qemu-1.2.0/i386.ld
===================================================================
--- qemu-1.2.0.orig/i386.ld
+++ qemu-1.2.0/i386.ld
@@ -8,7 +8,7 @@ SECTIONS
{
/* Read-only sections, merged into text segment: */
. = 0x60000000 + SIZEOF_HEADERS;
- .interp : { *(.interp) }
+ .interp : { *(.interp); . = 0x1000; }
.hash : { *(.hash) }
.dynsym : { *(.dynsym) }
.dynstr : { *(.dynstr) }
Index: qemu-1.2.0/x86_64.ld
===================================================================
--- qemu-1.2.0.orig/x86_64.ld
+++ qemu-1.2.0/x86_64.ld
@@ -6,7 +6,7 @@ SECTIONS
{
/* Read-only sections, merged into text segment: */
. = 0x60000000 + SIZEOF_HEADERS;
- .interp : { *(.interp) }
+ .interp : { *(.interp); . = 0x1000; }
.hash : { *(.hash) }
.dynsym : { *(.dynsym) }
.dynstr : { *(.dynstr) }

View File

@@ -29,6 +29,12 @@ SRC_URI[sha256sum] = "7705b14d9b8e4df4a0b1790980e618084261e8daef0672a1aa7a830a0f
S = "${WORKDIR}/qemu-${PV}"
PR = "r1"
SRC_URI_append_virtclass-nativesdk = "\
file://relocatable_sdk.patch \
"
do_configure_prepend_virtclass-nativesdk() {
if [ "${@base_contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}" = "" ] ; then
# Undo the -lX11 added by linker-flags.patch

View File

@@ -8,4 +8,4 @@ SRC_URI += "file://crosscompile.patch \
SRC_URI[md5sum] = "8796fff441e5435ee36a72579008af24"
SRC_URI[sha256sum] = "fa415decf02027ca278b06254ccfbcceba2a83c2741405257ebf749da4a73cf2"
PR = "r6"
PR = "r7"

View File

@@ -66,7 +66,7 @@ PACKAGES =+ "${PN}-security-policy \
RRECOMMENDS_${PN} += "${PN}-security-policy xkeyboard-config rgb xserver-xf86-config"
RDEPENDS_${PN}-xvfb += "xkeyboard-config"
RREPLACES_${PN}-module-exa = "${PN}"
RCONFLICTS_${PN}-module-exa = "${PN} (<${PV})"
FILES_${PN} = "${bindir} ${libdir}/X11/Options ${libdir}/X11/Cards ${libdir}/X11/getconfig ${libdir}/X11/etc ${libdir}/modules/*.so ${libdir}/xorg/modules/*.so /etc/X11 ${libdir}/xorg/protocol.txt ${datadir}/X11/xorg.conf.d"
FILES_${PN}-dev += "${libdir}/xorg/modules/*.la ${libdir}/xorg/modules/*/*.la"