1*4882a593SmuzhiyunSUMMARY = "VMcore extraction tool"
2*4882a593SmuzhiyunDESCRIPTION = "\
3*4882a593Smuzhiyun    This program is used to extract a subset of the memory available either \
4*4882a593Smuzhiyun    via /dev/mem or /proc/vmcore (for crashdumps). It is used to get memory \
5*4882a593Smuzhiyun    images without extra uneeded information (zero pages, userspace programs, \
6*4882a593Smuzhiyun    etc). \
7*4882a593Smuzhiyun"
8*4882a593SmuzhiyunHOMEPAGE = "https://github.com/makedumpfile/makedumpfile"
9*4882a593Smuzhiyun
10*4882a593SmuzhiyunLIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
11*4882a593SmuzhiyunLICENSE = "GPL-2.0-only"
12*4882a593Smuzhiyun
13*4882a593SmuzhiyunSRCBRANCH ?= "master"
14*4882a593SmuzhiyunSRCREV = "74bbdd14ec861552ace1ca63953eb2ef73e1f965"
15*4882a593Smuzhiyun
16*4882a593SmuzhiyunDEPENDS = "bzip2 zlib elfutils xz"
17*4882a593SmuzhiyunRDEPENDS:${PN}-tools = "perl ${PN}"
18*4882a593Smuzhiyun
19*4882a593Smuzhiyun# mips would not compile.
20*4882a593SmuzhiyunCOMPATIBLE_HOST = "(x86_64|i.86|powerpc|arm|aarch64).*-linux"
21*4882a593Smuzhiyun
22*4882a593SmuzhiyunPACKAGES =+ "${PN}-tools"
23*4882a593SmuzhiyunFILES:${PN}-tools = "${bindir}/*.pl"
24*4882a593Smuzhiyun
25*4882a593SmuzhiyunSRC_URI = "\
26*4882a593Smuzhiyun    git://github.com/makedumpfile/makedumpfile;branch=${SRCBRANCH};protocol=https \
27*4882a593Smuzhiyun    file://0001-makedumpfile-replace-hardcode-CFLAGS.patch \
28*4882a593Smuzhiyun"
29*4882a593Smuzhiyun
30*4882a593SmuzhiyunS = "${WORKDIR}/git"
31*4882a593Smuzhiyun
32*4882a593SmuzhiyunUPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+(\.\d+)+)"
33*4882a593Smuzhiyun
34*4882a593SmuzhiyunSECTION = "base"
35*4882a593Smuzhiyun
36*4882a593Smuzhiyun# If we do not specify TARGET, makedumpfile will build for the host but use the
37*4882a593Smuzhiyun# target gcc.
38*4882a593Smuzhiyun#
39*4882a593Smuzhiyun
40*4882a593SmuzhiyunMAKEDUMPFILE_TARGET ?= "${TARGET_ARCH}"
41*4882a593SmuzhiyunMAKEDUMPFILE_TARGET:powerpc = "ppc"
42*4882a593Smuzhiyun
43*4882a593SmuzhiyunEXTRA_OEMAKE = "\
44*4882a593Smuzhiyun    LINKTYPE=static \
45*4882a593Smuzhiyun    TARGET=${MAKEDUMPFILE_TARGET} \
46*4882a593Smuzhiyun    ${PACKAGECONFIG_CONFARGS} \
47*4882a593Smuzhiyun"
48*4882a593Smuzhiyun
49*4882a593SmuzhiyunPACKAGECONFIG ??= ""
50*4882a593SmuzhiyunPACKAGECONFIG[lzo] = "USELZO=on,USELZO=off,lzo"
51*4882a593SmuzhiyunPACKAGECONFIG[snappy] = "USESNAPPY=on,USESNAPPY=off,snappy"
52*4882a593SmuzhiyunPACKAGECONFIG[zstd] = "USEZSTD=on,USEZSTD=off,zstd"
53*4882a593Smuzhiyun
54*4882a593Smuzhiyundo_install () {
55*4882a593Smuzhiyun    mkdir -p ${D}/usr/bin
56*4882a593Smuzhiyun    install -m 755 ${S}/makedumpfile ${D}/usr/bin
57*4882a593Smuzhiyun    install -m 755 ${S}/makedumpfile-R.pl ${D}/usr/bin
58*4882a593Smuzhiyun
59*4882a593Smuzhiyun    mkdir -p ${D}/etc/
60*4882a593Smuzhiyun    install -m 644 ${S}/makedumpfile.conf ${D}/etc/makedumpfile.conf.sample
61*4882a593Smuzhiyun}
62