blob: d7428ea2c494eb1549351691cf178660cc56542f [file] [log] [blame]
Brad Bishop1a4b7ee2018-12-16 17:11:34 -08001SUMMARY = "LiSt Open Files tool"
2DESCRIPTION = "Lsof is a Unix-specific diagnostic tool. \
3Its name stands for LiSt Open Files, and it does just that."
4HOMEPAGE = "http://people.freebsd.org/~abe/"
5SECTION = "devel"
Andrew Geissler5199d832021-09-24 16:47:35 -05006LICENSE = "Spencer-94"
Brad Bishop1a4b7ee2018-12-16 17:11:34 -08007LIC_FILES_CHKSUM = "file://00README;beginline=645;endline=679;md5=964df275d26429ba3b39dbb9f205172a"
8
9# Upstream lsof releases are hosted on an ftp server which times out download
10# attempts from hosts for which it can not perform a DNS reverse-lookup (See:
11# https://people.freebsd.org/~abe/ ). http://www.mirrorservice.org seems to be
12# the most commonly used alternative.
13
14SRC_URI = "http://www.mirrorservice.org/sites/lsof.itap.purdue.edu/pub/tools/unix/lsof/lsof_${PV}.tar.bz2 \
15 file://lsof-remove-host-information.patch \
16 "
17
18SRC_URI[md5sum] = "148ed410cb52e08c2adc0c60f480f11f"
19SRC_URI[sha256sum] = "c9da946a525fbf82ff80090b6d1879c38df090556f3fe0e6d782cb44172450a3"
20
Andrew Geissler5199d832021-09-24 16:47:35 -050021UPSTREAM_CHECK_URI = "https://github.com/lsof-org/lsof/releases/"
22UPSTREAM_CHECK_REGEX = "lsof_(?P<pver>.*)\.linux\.tar"
23
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080024LOCALSRC = "file://${WORKDIR}/lsof_${PV}/lsof_${PV}_src.tar"
25
26S = "${WORKDIR}/lsof_${PV}_src"
27
28python do_unpack () {
29 if not bb.data.inherits_class('externalsrc', d) or not d.getVar('EXTERNALSRC'):
30 # temporarily change S for unpack of lsof_${PV}
31 s = d.getVar('S', False)
32 d.setVar('S', '${WORKDIR}/lsof_${PV}')
33 bb.build.exec_func('base_do_unpack', d)
34 # temporarily change SRC_URI for unpack of lsof_${PV}_src
35 src_uri = d.getVar('SRC_URI', False)
36 d.setVar('SRC_URI', '${LOCALSRC}')
37 d.setVar('S', s)
38 bb.build.exec_func('base_do_unpack', d)
39 d.setVar('SRC_URI', src_uri)
40}
41
42export LSOF_INCLUDE = "${STAGING_INCDIR}"
43
44do_configure () {
45 export LSOF_AR="${AR} cr"
46 export LSOF_RANLIB="${RANLIB}"
47 if [ "x${GLIBCVERSION}" != "x" ]; then
48 LINUX_CLIB=`echo ${GLIBCVERSION} |sed -e 's,\.,,g'`
49 LINUX_CLIB="-DGLIBCV=${LINUX_CLIB}"
50 export LINUX_CLIB
51 fi
52 yes | ./Configure linux
53}
54
55export I = "${STAGING_INCDIR}"
56export L = "${STAGING_INCDIR}"
57
58do_compile () {
59 oe_runmake 'CC=${CC}' 'CFGL=${LDFLAGS} -L./lib -llsof' 'DEBUG=' 'INCL=${CFLAGS}'
60}
61
62do_install () {
63 install -d ${D}${sbindir} ${D}${mandir}/man8
64 install -m 0755 lsof ${D}${sbindir}/lsof
65 install -m 0644 lsof.8 ${D}${mandir}/man8/lsof.8
66}