From fc6963cefd3404d2d8793b9054f63fe14fd4a354 Mon Sep 17 00:00:00 2001 From: "dengke.du@windriver.com" Date: Wed, 12 Apr 2017 01:42:26 -0400 Subject: crash: 7.1.5 -> 7.1.8 1. Upgrade crash to fix build failure with glibc 2.25. 2. Add the "id" to HOSTTOOLS in meta-oe/layer.conf Signed-off-by: Dengke Du Signed-off-by: Martin Jansa --- ...ompilation-error-if-glibc-2.25-or-later-h.patch | 112 ++++++++++++++++++++ .../crash/0001-cross_add_configure_option.patch | 13 +-- ...uild-error-unknown-type-name-gdb_fpregset.patch | 36 +++++++ ...sh-detect-the-sysroot-s-glibc-header-file.patch | 33 ++++++ meta-oe/recipes-kernel/crash/crash_7.1.5.bb | 115 -------------------- meta-oe/recipes-kernel/crash/crash_7.1.8.bb | 116 +++++++++++++++++++++ 6 files changed, 304 insertions(+), 121 deletions(-) create mode 100644 meta-oe/recipes-kernel/crash/crash/0001-Fix-for-a-compilation-error-if-glibc-2.25-or-later-h.patch create mode 100644 meta-oe/recipes-kernel/crash/crash/0002-crash-fix-build-error-unknown-type-name-gdb_fpregset.patch create mode 100644 meta-oe/recipes-kernel/crash/crash/0003-crash-detect-the-sysroot-s-glibc-header-file.patch delete mode 100644 meta-oe/recipes-kernel/crash/crash_7.1.5.bb create mode 100644 meta-oe/recipes-kernel/crash/crash_7.1.8.bb (limited to 'meta-oe/recipes-kernel') diff --git a/meta-oe/recipes-kernel/crash/crash/0001-Fix-for-a-compilation-error-if-glibc-2.25-or-later-h.patch b/meta-oe/recipes-kernel/crash/crash/0001-Fix-for-a-compilation-error-if-glibc-2.25-or-later-h.patch new file mode 100644 index 0000000000..9434815d8f --- /dev/null +++ b/meta-oe/recipes-kernel/crash/crash/0001-Fix-for-a-compilation-error-if-glibc-2.25-or-later-h.patch @@ -0,0 +1,112 @@ +From b8c8fbe0a2481e97fc57dd596346827a692a5768 Mon Sep 17 00:00:00 2001 +From: Dave Anderson +Date: Tue, 28 Mar 2017 15:44:40 -0400 +Subject: [PATCH 1/3] Fix for a compilation error if glibc-2.25 or later has + been installed on the host build machine. Without the patch, the build fails + with the error message "amd64-linux-nat.c:496:1: error: conflicting types for + 'ps_get_thread_area'". (anderson@redhat.com) + +Upstream-Status: Backport + +Signed-off-by: Dengke Du +--- + Makefile | 6 +++++ + configure.c | 2 +- + gdb-7.6-proc_service.h.patch | 55 ++++++++++++++++++++++++++++++++++++++++++++ + 3 files changed, 62 insertions(+), 1 deletion(-) + create mode 100644 gdb-7.6-proc_service.h.patch + +diff --git a/Makefile b/Makefile +index 202ef8b..b6b7e80 100644 +--- a/Makefile ++++ b/Makefile +@@ -264,6 +264,12 @@ gdb_patch: + if [ "${ARCH}" = "x86_64" ] && [ "${TARGET}" = "PPC64" ] && [ -f ${GDB}-ppc64le-support.patch ]; then \ + patch -d ${GDB} -p1 -F0 < ${GDB}-ppc64le-support.patch ; \ + fi ++ if [ -f /usr/include/proc_service.h ]; then \ ++ grep 'extern ps_err_e ps_get_thread_area (struct' /usr/include/proc_service.h; \ ++ if [ $$? -eq 0 ]; then \ ++ patch -p0 < ${GDB}-proc_service.h.patch; \ ++ fi; \ ++ fi + + library: make_build_data ${OBJECT_FILES} + ar -rs ${PROGRAM}lib.a ${OBJECT_FILES} +diff --git a/configure.c b/configure.c +index d63cdd7..776defe 100644 +--- a/configure.c ++++ b/configure.c +@@ -240,7 +240,7 @@ struct supported_gdb_version { + "7.6", + "GDB_FILES=${GDB_7.6_FILES}", + "GDB_OFILES=${GDB_7.6_OFILES}", +- "GDB_PATCH_FILES=gdb-7.6.patch gdb-7.6-ppc64le-support.patch", ++ "GDB_PATCH_FILES=gdb-7.6.patch gdb-7.6-ppc64le-support.patch gdb-7.6-proc_service.h.patch", + "GDB_FLAGS=-DGDB_7_6", + "GPLv3" + }, +diff --git a/gdb-7.6-proc_service.h.patch b/gdb-7.6-proc_service.h.patch +new file mode 100644 +index 0000000..49d18bb +--- /dev/null ++++ b/gdb-7.6-proc_service.h.patch +@@ -0,0 +1,55 @@ ++--- gdb-7.6/gdb/gdb_proc_service.h.orig +++++ gdb-7.6/gdb/gdb_proc_service.h ++@@ -115,7 +115,7 @@ extern pid_t ps_getpid (struct ps_procha ++ /* Fetch the special per-thread address associated with the given LWP. ++ This call is only used on a few platforms (most use a normal register). ++ The meaning of the `int' parameter is machine-dependent. */ ++-extern ps_err_e ps_get_thread_area (const struct ps_prochandle *, +++extern ps_err_e ps_get_thread_area (struct ps_prochandle *, ++ lwpid_t, int, psaddr_t *); ++ ++ ++--- gdb-7.6/gdb/amd64-linux-nat.c.orig +++++ gdb-7.6/gdb/amd64-linux-nat.c ++@@ -493,7 +493,7 @@ amd64_linux_new_fork (struct lwp_info *p ++ a request for a thread's local storage address. */ ++ ++ ps_err_e ++-ps_get_thread_area (const struct ps_prochandle *ph, +++ps_get_thread_area (struct ps_prochandle *ph, ++ lwpid_t lwpid, int idx, void **base) ++ { ++ if (gdbarch_bfd_arch_info (target_gdbarch ())->bits_per_word == 32) ++--- gdb-7.6/gdb/aarch64-linux-nat.c.orig +++++ gdb-7.6/gdb/aarch64-linux-nat.c ++@@ -750,7 +750,7 @@ aarch64_linux_new_fork (struct lwp_info ++ storage (or its descriptor). */ ++ ++ ps_err_e ++-ps_get_thread_area (const struct ps_prochandle *ph, +++ps_get_thread_area (struct ps_prochandle *ph, ++ lwpid_t lwpid, int idx, void **base) ++ { ++ struct iovec iovec; ++--- gdb-7.6/gdb/arm-linux-nat.c.orig +++++ gdb-7.6/gdb/arm-linux-nat.c ++@@ -613,7 +613,7 @@ supply_fpregset (struct regcache *regcac ++ /* Fetch the thread-local storage pointer for libthread_db. */ ++ ++ ps_err_e ++-ps_get_thread_area (const struct ps_prochandle *ph, +++ps_get_thread_area (struct ps_prochandle *ph, ++ lwpid_t lwpid, int idx, void **base) ++ { ++ if (ptrace (PTRACE_GET_THREAD_AREA, lwpid, NULL, base) != 0) ++--- gdb-7.6/gdb/i386-linux-nat.c.orig +++++ gdb-7.6/gdb/i386-linux-nat.c ++@@ -849,7 +849,7 @@ i386_linux_new_fork (struct lwp_info *pa ++ storage (or its descriptor). */ ++ ++ ps_err_e ++-ps_get_thread_area (const struct ps_prochandle *ph, +++ps_get_thread_area (struct ps_prochandle *ph, ++ lwpid_t lwpid, int idx, void **base) ++ { ++ /* NOTE: cagney/2003-08-26: The definition of this buffer is found +-- +2.8.1 + diff --git a/meta-oe/recipes-kernel/crash/crash/0001-cross_add_configure_option.patch b/meta-oe/recipes-kernel/crash/crash/0001-cross_add_configure_option.patch index 39732a9eda..26a34e5c16 100644 --- a/meta-oe/recipes-kernel/crash/crash/0001-cross_add_configure_option.patch +++ b/meta-oe/recipes-kernel/crash/crash/0001-cross_add_configure_option.patch @@ -1,14 +1,15 @@ -From cbaaa42933bb27b1bcff4c7d71d54c913201ee88 Mon Sep 17 00:00:00 2001 +From 73269df4d8196abe81112acaa2613155b308a8b8 Mon Sep 17 00:00:00 2001 From: Lei Maohui Date: Fri, 9 Jan 2015 11:51:18 +0900 -Subject: [PATCH] cross_add_configure_option +Subject: [PATCH 1/9] cross_add_configure_option +%% original patch: 0001-cross_add_configure_option.patch --- Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile -index 9c44633..39bebd0 100644 +index a2baec1..f1972c8 100644 --- a/Makefile +++ b/Makefile @@ -232,7 +232,7 @@ gdb_merge: force @@ -20,15 +21,15 @@ index 9c44633..39bebd0 100644 --with-bugurl="" --with-expat=no --with-python=no --disable-sim; \ make --no-print-directory CRASH_TARGET=${TARGET}; echo ${TARGET} > crash.target) \ else make --no-print-directory rebuild; fi -@@ -277,7 +277,7 @@ force: +@@ -283,7 +283,7 @@ force: make_configure: force @rm -f configure - @${CC} ${CONF_FLAGS} -o configure configure.c ${WARNING_ERROR} ${WARNING_OPTIONS} -+ @cc ${CONF_FLAGS} -o configure configure.c ${WARNING_ERROR} ${WARNING_OPTIONS} ++ @${BUILD_CC} ${CONF_FLAGS} -o configure configure.c ${WARNING_ERROR} ${WARNING_OPTIONS} clean: make_configure @./configure ${CONF_TARGET_FLAG} -q -b -- -1.8.4.2 +2.8.1 diff --git a/meta-oe/recipes-kernel/crash/crash/0002-crash-fix-build-error-unknown-type-name-gdb_fpregset.patch b/meta-oe/recipes-kernel/crash/crash/0002-crash-fix-build-error-unknown-type-name-gdb_fpregset.patch new file mode 100644 index 0000000000..8355fe44ea --- /dev/null +++ b/meta-oe/recipes-kernel/crash/crash/0002-crash-fix-build-error-unknown-type-name-gdb_fpregset.patch @@ -0,0 +1,36 @@ +From 52fc1a7c17768fd52c3577d21dad84e8babb94b5 Mon Sep 17 00:00:00 2001 +From: Dengke Du +Date: Thu, 6 Apr 2017 23:01:14 -0400 +Subject: [PATCH 2/3] crash: fix build error unknown type name 'gdb_fpregset_t' + +Upstream-Status: Pending + +Signed-off-by: Dengke Du +--- + gdb-7.6/gdb/gdb_proc_service.h | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +diff --git a/gdb-7.6/gdb/gdb_proc_service.h b/gdb-7.6/gdb/gdb_proc_service.h +index 8bc6088..99c6496 100644 +--- a/gdb-7.6/gdb/gdb_proc_service.h ++++ b/gdb-7.6/gdb/gdb_proc_service.h +@@ -20,6 +20,7 @@ + #define GDB_PROC_SERVICE_H + + #include ++#include "gregset.h" + + #ifdef HAVE_PROC_SERVICE_H + #include +@@ -53,8 +54,6 @@ + #include + #endif + +-#include "gregset.h" +- + /* Functions in this interface return one of these status codes. */ + typedef enum + { +-- +2.8.1 + diff --git a/meta-oe/recipes-kernel/crash/crash/0003-crash-detect-the-sysroot-s-glibc-header-file.patch b/meta-oe/recipes-kernel/crash/crash/0003-crash-detect-the-sysroot-s-glibc-header-file.patch new file mode 100644 index 0000000000..1f4bd01da4 --- /dev/null +++ b/meta-oe/recipes-kernel/crash/crash/0003-crash-detect-the-sysroot-s-glibc-header-file.patch @@ -0,0 +1,33 @@ +From c7950ef5228adc52a500b4fc67d7e48c3c09c1df Mon Sep 17 00:00:00 2001 +From: Dengke Du +Date: Thu, 6 Apr 2017 23:02:44 -0400 +Subject: [PATCH 3/3] crash: detect the sysroot's glibc header file + +This is cross compile, so let the Makefile detect the sysroot's glibc +header file, not the host's glibc header file. + +Upstream-Status: Pending + +Signed-off-by: Dengke Du +--- + Makefile | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/Makefile b/Makefile +index b6b7e80..94f21a5 100644 +--- a/Makefile ++++ b/Makefile +@@ -264,8 +264,8 @@ gdb_patch: + if [ "${ARCH}" = "x86_64" ] && [ "${TARGET}" = "PPC64" ] && [ -f ${GDB}-ppc64le-support.patch ]; then \ + patch -d ${GDB} -p1 -F0 < ${GDB}-ppc64le-support.patch ; \ + fi +- if [ -f /usr/include/proc_service.h ]; then \ +- grep 'extern ps_err_e ps_get_thread_area (struct' /usr/include/proc_service.h; \ ++ if [ -f ${RECIPE_SYSROOT}/usr/include/proc_service.h ]; then \ ++ grep 'extern ps_err_e ps_get_thread_area (struct' ${RECIPE_SYSROOT}/usr/include/proc_service.h; \ + if [ $$? -eq 0 ]; then \ + patch -p0 < ${GDB}-proc_service.h.patch; \ + fi; \ +-- +2.8.1 + diff --git a/meta-oe/recipes-kernel/crash/crash_7.1.5.bb b/meta-oe/recipes-kernel/crash/crash_7.1.5.bb deleted file mode 100644 index fbd89c316d..0000000000 --- a/meta-oe/recipes-kernel/crash/crash_7.1.5.bb +++ /dev/null @@ -1,115 +0,0 @@ -SUMMARY = "Kernel analysis utility for live systems, netdump, diskdump, kdump, LKCD or mcore dumpfiles" -DESCRIPTION = "The core analysis suite is a self-contained tool that can be used to\ -investigate either live systems, kernel core dumps created from the\ -netdump, diskdump and kdump packages from Red Hat Linux, the mcore kernel patch\ -offered by Mission Critical Linux, or the LKCD kernel patch." - -HOMEPAGE = "http://people.redhat.com/anderson" -SECTION = "devel" - -LICENSE = "GPLv3" -LIC_FILES_CHKSUM = "file://COPYING3;md5=d32239bcb673463ab874e80d47fae504" - -DEPENDS = "zlib readline" - -SRC_URI = "https://github.com/crash-utility/${BPN}/archive/${PV}.tar.gz;downloadfilename=${BP}.tar.gz \ - http://ftp.gnu.org/gnu/gdb/gdb-7.6.tar.gz;name=gdb;subdir=${BP} \ - file://7001force_define_architecture.patch \ - file://7003cross_ranlib.patch \ - file://0001-cross_add_configure_option.patch \ - file://sim-ppc-drop-LIBS-from-psim-dependency.patch \ - file://sim-common-sim-arange-fix-extern-inline-handling.patch \ - file://donnot-extract-gdb-during-do-compile.patch \ - file://gdb_build_jobs_and_not_write_crash_target.patch \ - file://remove-unrecognized-gcc-option-m32-for-mips.patch \ - " - -SRC_URI[md5sum] = "7bd06eaec6827d4fac636b2b592d3056" -SRC_URI[sha256sum] = "c3954412c8557614a0d50092c007aa96b4e3e6e97453dfbb60241ab680caf7b2" - -SRC_URI[gdb.md5sum] = "a9836707337e5f7bf76a009a8904f470" -SRC_URI[gdb.sha256sum] = "8070389a5dcc104eb0be483d582729f98ed4d761ad19cedd3f17b5d2502faa36" - -inherit gettext - -BBCLASSEXTEND = "native cross" - -# crash 7.1.3 and before don't support mips64 -COMPATIBLE_HOST = "^(?!mips64).*" - -EXTRA_OEMAKE = 'RPMPKG="${PV}" \ - GDB_TARGET="${TARGET_SYS}" \ - GDB_HOST="${BUILD_SYS}" \ - GDB_MAKE_JOBS="${PARALLEL_MAKE}" \ - LDFLAGS="${LDFLAGS}" \ - ' - -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() { - : -} - -do_compile_prepend() { - case ${TARGET_ARCH} in - aarch64*) ARCH=ARM64 ;; - arm*) ARCH=ARM ;; - i*86*) ARCH=X86 ;; - x86_64*) ARCH=X86_64 ;; - powerpc64*) ARCH=PPC64 ;; - powerpc*) ARCH=PPC ;; - mips*) ARCH=MIPS ;; - esac - - sed -i s/FORCE_DEFINE_ARCH/"${ARCH}"/g ${S}/configure.c - ${REMOVE_M32} - sed -i 's/>/>/g' ${S}/Makefile -} - -do_compile() { - oe_runmake ${EXTRA_OEMAKE} -} - -do_install_prepend () { - install -d ${D}${bindir} - install -d ${D}/${mandir}/man8 - install -d ${D}${includedir}/crash - - install -m 0644 ${S}/crash.8 ${D}/${mandir}/man8/ - install -m 0644 ${S}/defs.h ${D}${includedir}/crash -} - -do_install_class-target () { - oe_runmake DESTDIR=${D} install -} - -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 -MMD eval.d -MF .deps/eval.Tpo -MP -MT eval.o -D LOCALEDIR="/usr/local/share/locale" -D CRASH_MERGE -D HAVE_CONFIG_H -D TUI=1 eval.c -quiet -dumpbase eval.c -march=armv5te -mthumb -mthumb-interwork -mtls-dialect=gnu -auxbase-strip eval.o -g -O2 -Wall -Wpointer-arith -Wformat-nonliteral -Wno-pointer-sign -Wno-unused -Wunused-value -Wunused-function -Wno-switch -Wno-char-subscripts -Wmissing-prototypes -Wdeclaration-after-statement -Wempty-body -feliminate-unused-debug-types -o - -ARM_INSTRUCTION_SET = "arm" - -PNBLACKLIST[crash] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/130678/ - the recipe will be removed on 2017-09-01 unless the issue is fixed" diff --git a/meta-oe/recipes-kernel/crash/crash_7.1.8.bb b/meta-oe/recipes-kernel/crash/crash_7.1.8.bb new file mode 100644 index 0000000000..012ef1a9a7 --- /dev/null +++ b/meta-oe/recipes-kernel/crash/crash_7.1.8.bb @@ -0,0 +1,116 @@ +SUMMARY = "Kernel analysis utility for live systems, netdump, diskdump, kdump, LKCD or mcore dumpfiles" +DESCRIPTION = "The core analysis suite is a self-contained tool that can be used to\ +investigate either live systems, kernel core dumps created from the\ +netdump, diskdump and kdump packages from Red Hat Linux, the mcore kernel patch\ +offered by Mission Critical Linux, or the LKCD kernel patch." + +HOMEPAGE = "http://people.redhat.com/anderson" +SECTION = "devel" + +LICENSE = "GPLv3" +LIC_FILES_CHKSUM = "file://COPYING3;md5=d32239bcb673463ab874e80d47fae504" + +DEPENDS = "zlib readline" + +SRC_URI = "https://github.com/crash-utility/${BPN}/archive/${PV}.tar.gz;downloadfilename=${BP}.tar.gz \ + http://ftp.gnu.org/gnu/gdb/gdb-7.6.tar.gz;name=gdb;subdir=${BP} \ + file://7001force_define_architecture.patch \ + file://7003cross_ranlib.patch \ + file://0001-cross_add_configure_option.patch \ + file://sim-ppc-drop-LIBS-from-psim-dependency.patch \ + file://sim-common-sim-arange-fix-extern-inline-handling.patch \ + file://donnot-extract-gdb-during-do-compile.patch \ + file://gdb_build_jobs_and_not_write_crash_target.patch \ + file://remove-unrecognized-gcc-option-m32-for-mips.patch \ + file://0001-Fix-for-a-compilation-error-if-glibc-2.25-or-later-h.patch \ + file://0002-crash-fix-build-error-unknown-type-name-gdb_fpregset.patch \ + file://0003-crash-detect-the-sysroot-s-glibc-header-file.patch \ + " + +SRC_URI[md5sum] = "31787074f267a3536eebff008a0652ec" +SRC_URI[sha256sum] = "9965dee9199d7e39764fbee7f21c7c45b1f7b6d17c8e92ad62f468f062876478" + +SRC_URI[gdb.md5sum] = "a9836707337e5f7bf76a009a8904f470" +SRC_URI[gdb.sha256sum] = "8070389a5dcc104eb0be483d582729f98ed4d761ad19cedd3f17b5d2502faa36" + +inherit gettext + +BBCLASSEXTEND = "native cross" + +# crash 7.1.3 and before don't support mips64 +COMPATIBLE_HOST = "^(?!mips64).*" + +EXTRA_OEMAKE = 'RPMPKG="${PV}" \ + GDB_TARGET="${TARGET_SYS}" \ + GDB_HOST="${BUILD_SYS}" \ + GDB_MAKE_JOBS="${PARALLEL_MAKE}" \ + LDFLAGS="${LDFLAGS}" \ + ' + +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() { + : +} + +do_compile_prepend() { + case ${TARGET_ARCH} in + aarch64*) ARCH=ARM64 ;; + arm*) ARCH=ARM ;; + i*86*) ARCH=X86 ;; + x86_64*) ARCH=X86_64 ;; + powerpc64*) ARCH=PPC64 ;; + powerpc*) ARCH=PPC ;; + mips*) ARCH=MIPS ;; + esac + + sed -i s/FORCE_DEFINE_ARCH/"${ARCH}"/g ${S}/configure.c + ${REMOVE_M32} + sed -i 's/>/>/g' ${S}/Makefile +} + +do_compile() { + oe_runmake ${EXTRA_OEMAKE} RECIPE_SYSROOT=${RECIPE_SYSROOT} +} + +do_install_prepend () { + install -d ${D}${bindir} + install -d ${D}/${mandir}/man8 + install -d ${D}${includedir}/crash + + install -m 0644 ${S}/crash.8 ${D}/${mandir}/man8/ + install -m 0644 ${S}/defs.h ${D}${includedir}/crash +} + +do_install_class-target () { + oe_runmake DESTDIR=${D} install +} + +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 -MMD eval.d -MF .deps/eval.Tpo -MP -MT eval.o -D LOCALEDIR="/usr/local/share/locale" -D CRASH_MERGE -D HAVE_CONFIG_H -D TUI=1 eval.c -quiet -dumpbase eval.c -march=armv5te -mthumb -mthumb-interwork -mtls-dialect=gnu -auxbase-strip eval.o -g -O2 -Wall -Wpointer-arith -Wformat-nonliteral -Wno-pointer-sign -Wno-unused -Wunused-value -Wunused-function -Wno-switch -Wno-char-subscripts -Wmissing-prototypes -Wdeclaration-after-statement -Wempty-body -feliminate-unused-debug-types -o - +ARM_INSTRUCTION_SET = "arm" -- cgit 1.2.3-korg