[oe-commits] [meta-openembedded] 16/35: crash: add cross package

git at git.openembedded.org git at git.openembedded.org
Tue Apr 19 10:15:30 UTC 2016


martin_jansa pushed a commit to branch master-next
in repository meta-openembedded.

commit e17fde1b1ea9594f046ce71460ace60109979574
Author: Goran Cengic <cengic at gmail.com>
AuthorDate: Wed Apr 13 21:15:35 2016 +0200

    crash: add cross package
    
    This patch adds the cross package for the crash recipe. I've built and
    tested crash-cross for ARM on x86_64 host only.
    
    The way to pass GDB_CONF_FLAGS and --target to GDB build without
    removing -m32 from CFLAGS is awkward but that is what I could come up
    with, without changing the patch files included with the recipe or
    breaking target and native builds. Anyone got any ideas on how to
    better do this?
    
    Thanks,
    
         Goran
    
    Signed-off-by: Goran Cengic <cengic at gmail.com>
    Signed-off-by: Martin Jansa <Martin.Jansa at gmail.com>
---
 meta-oe/recipes-kernel/crash/crash_7.1.3.bb | 23 +++++++++++++++++++++--
 1 file changed, 21 insertions(+), 2 deletions(-)

diff --git a/meta-oe/recipes-kernel/crash/crash_7.1.3.bb b/meta-oe/recipes-kernel/crash/crash_7.1.3.bb
index d057300..b787f02 100644
--- a/meta-oe/recipes-kernel/crash/crash_7.1.3.bb
+++ b/meta-oe/recipes-kernel/crash/crash_7.1.3.bb
@@ -32,7 +32,7 @@ SRC_URI[gdb.sha256sum] = "8070389a5dcc104eb0be483d582729f98ed4d761ad19cedd3f17b5
 
 inherit gettext
 
-BBCLASSEXTEND = "native"
+BBCLASSEXTEND = "native cross"
 
 # crash 7.1.3 and before don't support mips64
 COMPATIBLE_HOST = "^(?!mips64).*"
@@ -42,7 +42,21 @@ EXTRA_OEMAKE = 'RPMPKG="${PV}" \
                 GDB_HOST="${BUILD_SYS}" \
                 GDB_MAKE_JOBS="${PARALLEL_MAKE}" \
                 '
+
+EXTRA_OEMAKE_class-cross = 'RPMPKG="${PV}" \
+                            GDB_TARGET="${BUILD_SYS} \
+                                        \${GDB_CONF_FLAGS} \
+                                        --target=${TARGET_SYS}" \
+                            GDB_HOST="${BUILD_SYS}" \
+                            GDB_MAKE_JOBS="${PARALLEL_MAKE}" \
+                            '
+
 EXTRA_OEMAKE_append_class-native = " LDFLAGS='${BUILD_LDFLAGS}'"
+EXTRA_OEMAKE_append_class-cross = " LDFLAGS='${BUILD_LDFLAGS}'"
+
+REMOVE_M32 = "sed -i -e 's/#define TARGET_CFLAGS_ARM_ON_X86_64.*/#define TARGET_CFLAGS_ARM_ON_X86_64\t\"TARGET_CFLAGS=-D_FILE_OFFSET_BITS=64\"/g' ${S}/configure.c"
+
+REMOVE_M32_class-cross = ""
 
 do_configure() {
     :
@@ -60,7 +74,7 @@ do_compile_prepend() {
     esac
 
     sed -i s/FORCE_DEFINE_ARCH/"${ARCH}"/g ${S}/configure.c
-    sed -i -e 's/#define TARGET_CFLAGS_ARM_ON_X86_64.*/#define TARGET_CFLAGS_ARM_ON_X86_64\t\"TARGET_CFLAGS=-D_FILE_OFFSET_BITS=64\"/g' ${S}/configure.c
+    ${REMOVE_M32}
     sed -i 's/&gt;/>/g' ${S}/Makefile
 }
 
@@ -85,8 +99,13 @@ do_install_class-native () {
     oe_runmake DESTDIR=${D}${STAGING_DIR_NATIVE} install
 }
 
+do_install_class-cross () {
+    install -m 0755 ${S}/crash ${D}/${bindir}
+}
+
 RDEPENDS_${PN} += "liblzma"
 RDEPENDS_${PN}_class-native = ""
+RDEPENDS_${PN}_class-cross = ""
 
 # Causes gcc to get stuck and eat all available memory in qemuarm builds
 # jenkins  15161  100 12.5 10389596 10321284 ?   R    11:40  28:17 /home/jenkins/oe/world/shr-core/tmp-glibc/sysroots/x86_64-linux/usr/libexec/arm-oe-linux-gnueabi/gcc/arm-oe-linux-gnueabi/4.9.2/cc1 -quiet -I . -I . -I ./common -I ./config -I ./../include/opcode -I ./../opcodes/.. -I ./../readline/.. -I ../bfd -I ./../bfd -I ./../include -I ../libdecnumber -I ./../libdecnumber -I ./gnulib/import -I build-gnulib/import -isysroot /home/jenkins/oe/world/shr-core/tmp-glibc/sysroots/qemuarm - [...]

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Openembedded-commits mailing list