summaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-kernel/crash/crash_8.0.0.bb
diff options
context:
space:
mode:
Diffstat (limited to 'meta-oe/recipes-kernel/crash/crash_8.0.0.bb')
-rw-r--r--meta-oe/recipes-kernel/crash/crash_8.0.0.bb112
1 files changed, 112 insertions, 0 deletions
diff --git a/meta-oe/recipes-kernel/crash/crash_8.0.0.bb b/meta-oe/recipes-kernel/crash/crash_8.0.0.bb
new file mode 100644
index 0000000000..4ea5b67de1
--- /dev/null
+++ b/meta-oe/recipes-kernel/crash/crash_8.0.0.bb
@@ -0,0 +1,112 @@
1SUMMARY = "Kernel analysis utility for live systems, netdump, diskdump, kdump, LKCD or mcore dumpfiles"
2DESCRIPTION = "The core analysis suite is a self-contained tool that can be used to\
3investigate either live systems, kernel core dumps created from the\
4netdump, diskdump and kdump packages from Red Hat Linux, the mcore kernel patch\
5offered by Mission Critical Linux, or the LKCD kernel patch."
6
7HOMEPAGE = "http://people.redhat.com/anderson"
8SECTION = "devel"
9
10LICENSE = "GPL-3.0-only"
11LIC_FILES_CHKSUM = "file://COPYING3;md5=d32239bcb673463ab874e80d47fae504"
12
13DEPENDS = "zlib readline coreutils-native ncurses-native"
14
15S = "${WORKDIR}/git"
16SRC_URI = "git://github.com/crash-utility/${BPN}.git;branch=master;protocol=https \
17 ${GNU_MIRROR}/gdb/gdb-10.2.tar.gz;name=gdb;subdir=git \
18 file://7001force_define_architecture.patch \
19 file://7003cross_ranlib.patch \
20 file://0001-cross_add_configure_option.patch \
21 file://donnot-extract-gdb-during-do-compile.patch \
22 file://gdb_build_jobs_and_not_write_crash_target.patch \
23 "
24SRCREV = "ec568e2ea515b66343d3488d5d4b9a625d55b7ae"
25
26SRC_URI[gdb.sha256sum] = "b33ad58d687487a821ec8d878daab0f716be60d0936f2e3ac5cf08419ce70350"
27
28UPSTREAM_CHECK_URI = "https://github.com/crash-utility/crash/releases"
29
30inherit gettext
31
32BBCLASSEXTEND = "native cross"
33TARGET_CC_ARCH:append = " ${SELECTED_OPTIMIZATION}"
34
35# crash 7.1.3 and before don't support mips64/riscv64
36COMPATIBLE_HOST:riscv64 = "null"
37COMPATIBLE_HOST:riscv32 = "null"
38COMPATIBLE_HOST:mipsarchn64 = "null"
39COMPATIBLE_HOST:mipsarchn32 = "null"
40
41
42EXTRA_OEMAKE = 'RPMPKG="${PV}" \
43 GDB_TARGET="${TARGET_SYS}" \
44 GDB_HOST="${BUILD_SYS}" \
45 GDB_MAKE_JOBS="${PARALLEL_MAKE}" \
46 LDFLAGS="${LDFLAGS}" \
47 '
48
49EXTRA_OEMAKE:class-cross = 'RPMPKG="${PV}" \
50 GDB_TARGET="${BUILD_SYS} --target=${TARGET_SYS}" \
51 GDB_HOST="${BUILD_SYS}" \
52 GDB_MAKE_JOBS="${PARALLEL_MAKE}" \
53 '
54
55EXTRA_OEMAKE:append:class-native = " LDFLAGS='${BUILD_LDFLAGS}'"
56EXTRA_OEMAKE:append:class-cross = " LDFLAGS='${BUILD_LDFLAGS}'"
57
58do_configure() {
59 :
60}
61
62do_compile:prepend() {
63 case ${TARGET_ARCH} in
64 aarch64*) ARCH=ARM64 ;;
65 arm*) ARCH=ARM ;;
66 i*86*) ARCH=X86 ;;
67 x86_64*) ARCH=X86_64 ;;
68 powerpc64*) ARCH=PPC64 ;;
69 powerpc*) ARCH=PPC ;;
70 mips*) ARCH=MIPS ;;
71 esac
72
73 sed -i s/FORCE_DEFINE_ARCH/"${ARCH}"/g ${S}/configure.c
74 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
75 sed -i 's/>/>/g' ${S}/Makefile
76}
77
78do_compile() {
79 oe_runmake ${EXTRA_OEMAKE} RECIPE_SYSROOT=${RECIPE_SYSROOT}
80}
81
82do_install:prepend () {
83 install -d ${D}${bindir}
84 install -d ${D}/${mandir}/man8
85 install -d ${D}${includedir}/crash
86
87 install -m 0644 ${S}/crash.8 ${D}/${mandir}/man8/
88 install -m 0644 ${S}/defs.h ${D}${includedir}/crash
89}
90
91do_install:class-target () {
92 oe_runmake DESTDIR=${D} install
93}
94
95do_install:class-native () {
96 oe_runmake DESTDIR=${D}${STAGING_DIR_NATIVE} install
97}
98
99do_install:class-cross () {
100 install -m 0755 ${S}/crash ${D}/${bindir}
101}
102
103RDEPENDS:${PN} += "liblzma"
104RDEPENDS:${PN}:class-native = ""
105RDEPENDS:${PN}:class-cross = ""
106
107# Causes gcc to get stuck and eat all available memory in qemuarm builds
108# 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 -
109ARM_INSTRUCTION_SET = "arm"
110
111# http://errors.yoctoproject.org/Errors/Details/186964/
112COMPATIBLE_HOST:libc-musl = 'null'