[oe-commits] leimaohui : crash: add new recipe

git at git.openembedded.org git at git.openembedded.org
Thu Jan 15 15:38:09 UTC 2015


Module: meta-openembedded.git
Branch: master
Commit: 8c17bb27c5b1ca72fc28457ff8b056c8fbdcc6f7
URL:    http://git.openembedded.org/?p=meta-openembedded.git&a=commit;h=8c17bb27c5b1ca72fc28457ff8b056c8fbdcc6f7

Author: leimaohui <leimaohui at cn.fujitsu.com>
Date:   Mon Jan 12 11:52:35 2015 +0800

crash: add new recipe

crash core analysis suite

Signed-off-by: Lei Maohui <leimaohui at cn.fujitsu.com>
Signed-off-by: Martin Jansa <Martin.Jansa at gmail.com>

---

 .../0001-cross_add_configure_option.patch          | 34 +++++++++++++
 .../7001force_define_architecture.patch            | 13 +++++
 .../crash/crash-7.0.9/7003cross_ranlib.patch       | 10 ++++
 .../crash/crash-7.0.9/config-site.crash-7.0.9      |  1 +
 meta-oe/recipes-kernel/crash/crash_7.0.9.bb        | 59 ++++++++++++++++++++++
 5 files changed, 117 insertions(+)

diff --git a/meta-oe/recipes-kernel/crash/crash-7.0.9/0001-cross_add_configure_option.patch b/meta-oe/recipes-kernel/crash/crash-7.0.9/0001-cross_add_configure_option.patch
new file mode 100644
index 0000000..229647f
--- /dev/null
+++ b/meta-oe/recipes-kernel/crash/crash-7.0.9/0001-cross_add_configure_option.patch
@@ -0,0 +1,34 @@
+From cbaaa42933bb27b1bcff4c7d71d54c913201ee88 Mon Sep 17 00:00:00 2001
+From: Lei Maohui <leimaohui at cn.fujitsu.com>
+Date: Fri, 9 Jan 2015 11:51:18 +0900
+Subject: [PATCH] cross_add_configure_option
+
+---
+ Makefile | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 9c44633..39bebd0 100644
+--- a/Makefile
++++ b/Makefile
+@@ -229,7 +229,7 @@ gdb_merge: force
+ 	@echo "../../${PROGRAM} ../../${PROGRAM}lib.a" > ${GDB}/gdb/mergeobj
+ 	@rm -f ${PROGRAM}
+ 	@if [ ! -f ${GDB}/config.status ]; then \
+-	  (cd ${GDB}; ./configure ${GDB_CONF_FLAGS} --with-separate-debug-dir=/usr/lib/debug \
++	  (cd ${GDB}; ./configure --host=${GDB_TARGET} --build=${GDB_HOST} --with-separate-debug-dir=/usr/lib/debug \
+ 	    --with-bugurl="" --with-expat=no --with-python=no; \
+ 	  make --no-print-directory CRASH_TARGET=${TARGET}; echo ${TARGET} > crash.target) \
+ 	else make --no-print-directory rebuild; fi
+@@ -277,7 +277,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}
+ 
+ clean: make_configure
+ 	@./configure ${CONF_TARGET_FLAG} -q -b
+-- 
+1.8.4.2
+
diff --git a/meta-oe/recipes-kernel/crash/crash-7.0.9/7001force_define_architecture.patch b/meta-oe/recipes-kernel/crash/crash-7.0.9/7001force_define_architecture.patch
new file mode 100644
index 0000000..0d44c7f
--- /dev/null
+++ b/meta-oe/recipes-kernel/crash/crash-7.0.9/7001force_define_architecture.patch
@@ -0,0 +1,13 @@
+diff -uprN crash-5.1.8.org/configure.c crash-5.1.8/configure.c
+--- crash-5.1.8.org/configure.c	2011-09-17 04:01:12.000000000 +0900
++++ crash-5.1.8/configure.c	2012-09-13 13:28:45.393344108 +0900
+@@ -391,6 +391,9 @@ get_current_configuration(struct support
+ 			arch_mismatch(sp);
+ 	}
+ 
++	/** Force define archtecture */
++	target_data.target = FORCE_DEFINE_ARCH;
++
+         if ((fp = fopen("Makefile", "r")) == NULL) {
+ 		perror("Makefile");
+ 		goto get_release;
diff --git a/meta-oe/recipes-kernel/crash/crash-7.0.9/7003cross_ranlib.patch b/meta-oe/recipes-kernel/crash/crash-7.0.9/7003cross_ranlib.patch
new file mode 100644
index 0000000..d567fa0
--- /dev/null
+++ b/meta-oe/recipes-kernel/crash/crash-7.0.9/7003cross_ranlib.patch
@@ -0,0 +1,10 @@
+--- crash-5.1.8/Makefile.orig	2011-12-27 11:21:58.220652105 +0900
++++ crash-5.1.8/Makefile	2011-12-27 11:22:29.563651593 +0900
+@@ -285,6 +285,7 @@
+ 
+ library: make_build_data ${OBJECT_FILES}
+ 	ar -rs ${PROGRAM}lib.a ${OBJECT_FILES}
++	${RANLIB} ${PROGRAM}lib.a 
+ 
+ gdb: force
+ 	rm -f ${GDB_OFILES}
diff --git a/meta-oe/recipes-kernel/crash/crash-7.0.9/config-site.crash-7.0.9 b/meta-oe/recipes-kernel/crash/crash-7.0.9/config-site.crash-7.0.9
new file mode 100644
index 0000000..d6fc22f
--- /dev/null
+++ b/meta-oe/recipes-kernel/crash/crash-7.0.9/config-site.crash-7.0.9
@@ -0,0 +1 @@
+bash_cv_have_mbstate_t=yes
diff --git a/meta-oe/recipes-kernel/crash/crash_7.0.9.bb b/meta-oe/recipes-kernel/crash/crash_7.0.9.bb
new file mode 100644
index 0000000..8d62481
--- /dev/null
+++ b/meta-oe/recipes-kernel/crash/crash_7.0.9.bb
@@ -0,0 +1,59 @@
+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"
+
+inherit gettext
+
+DEPENDS = "zlib readline"
+
+SRC_URI = "https://github.com/crash-utility/${BPN}/archive/${PV}.tar.gz \
+           file://7001force_define_architecture.patch \ 
+           file://7003cross_ranlib.patch \
+           file://0001-cross_add_configure_option.patch \
+           "
+
+SRC_URI[md5sum] = "d70ad2ed0f6d210ed11e88b8e977f5fd"
+SRC_URI[sha256sum] = "c6034c6eb6b52691c60d0b72dbdec58fac4c1b3ed1cd0697c209dc48d13a577e"
+
+LICENSE = "GPLv3"
+LIC_FILES_CHKSUM = "file://COPYING3;md5=d32239bcb673463ab874e80d47fae504"
+
+EXTRA_OEMAKE = 'RPMPKG="${PV}" \
+                GDB_TARGET="${TARGET_SYS}" \
+                GDB_HOST="${BUILD_SYS}" \
+                '
+do_configure() {
+    :
+}
+
+do_compile_prepend() {
+   case ${TARGET_ARCH} in
+                arm*)     ARCH=ARM ;;
+                i*86*)    ARCH=X86 ;;
+                powerpc*) ARCH=PPC ;;
+                x86_64*)  ARCH=X86_64 ;;
+        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
+    sed -i 's/&gt;/>/g' ${S}/Makefile
+}
+do_compile() {
+    oe_runmake ${EXTRA_OEMAKE}
+}
+
+do_install () {
+    install -d ${D}${bindir}
+    install -d ${D}/${mandir}/man8
+    install -d ${D}${includedir}/crash
+
+    oe_runmake DESTDIR=${D} install
+    install -m 0644 ${S}/crash.8 ${D}/${mandir}/man8/
+    install -m 0644 ${S}/defs.h ${D}${includedir}/crash
+}   
+RDEPENDS_${PN} += "liblzma"



More information about the Openembedded-commits mailing list