diff options
-rw-r--r-- | sys-process/lsof/Manifest | 1 | ||||
-rw-r--r-- | sys-process/lsof/lsof-4.90.ebuild | 109 |
2 files changed, 110 insertions, 0 deletions
diff --git a/sys-process/lsof/Manifest b/sys-process/lsof/Manifest index 502c444cf639..3b37d7d54865 100644 --- a/sys-process/lsof/Manifest +++ b/sys-process/lsof/Manifest @@ -1,3 +1,4 @@ DIST lsof_4.87.tar.bz2 773664 BLAKE2B 39ccc2ed9545c0e37ce21fae0330394110807f181bc2c35be3ca1e72062df8359163edec4a47f9f9edfeb2e87af27a40fe16d12436a10e521d595877d02786ed SHA512 5e811225dd65366e3ef49628d567864fadda1dbda2d66a5e473123e73c468f5a3a577ae4e1b701a55ac49c2a759dab5c413663121c260a2804fca10ece902766 DIST lsof_4.88.tar.bz2 778563 BLAKE2B 376f4474a1a113b76fd40a542a2b2e797f1b181286935f66f10f37474a07f30b55feac4700789a923774be09f9ceded312e94e866e1156f7dee188adc5eb3fdd SHA512 acf3901ac08bac5acaa123af835de03fcf86c1cb851a2cba5bb6d08c53dff62570e4129c18ffa241ae84a83d5e6fc5207fb12e43b5ff5a21a0c1967ca117848b DIST lsof_4.89.tar.bz2 784560 BLAKE2B 375ad53fd5c26a79559295fc8bcb6c495c00bf546019001b498f064dbd111f3581d60a577c199ce2cbd49dac0c061cdaea99de56d6bf069dceb0dd8b2f836942 SHA512 cafb0209143c7863e5cebe7efc33a2520d36f9e26222350e4edfa18debbcfb5c81f42f71469e5913fb21f49a7562bbe761b72dfc8f297dadf75ac619cdcb318c +DIST lsof_4.90.tar.bz2 791758 BLAKE2B 250025eb553ee4574cadadcc57fa52bd97d8ce4432e25e9e028d3eec4033be54d5cbab5f02e0a04365033b5d179ca50efa591efe4ac28077f63513edee131084 SHA512 8c1481ab72867488d800ad68c9de5c936f034f044c90eeed220fb5683f68ba8efa3dd0efe1e23b4d4968750255b475150ad08ae8627dd9aa0a5025498418351a diff --git a/sys-process/lsof/lsof-4.90.ebuild b/sys-process/lsof/lsof-4.90.ebuild new file mode 100644 index 000000000000..f22dd0eaae84 --- /dev/null +++ b/sys-process/lsof/lsof-4.90.ebuild @@ -0,0 +1,109 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit flag-o-matic toolchain-funcs + +MY_P="${P/-/_}" +DESCRIPTION="Lists open files for running Unix processes" +HOMEPAGE="ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/" +SRC_URI="ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/${MY_P}.tar.bz2 + ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/OLD/${MY_P}.tar.bz2 + http://www.mirrorservice.org/sites/lsof.itap.purdue.edu/pub/tools/unix/lsof/${MY_P}.tar.bz2" + +LICENSE="lsof" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x64-solaris ~x86-solaris" +IUSE="examples ipv6 rpc selinux static" + +RDEPEND="rpc? ( net-libs/libtirpc ) + selinux? ( sys-libs/libselinux )" +DEPEND="${RDEPEND} + rpc? ( virtual/pkgconfig )" + +S="${WORKDIR}/${MY_P}/${MY_P}_src" + +PATCHES=( + "${FILESDIR}"/${PN}-4.85-cross.patch #432120 +) + +src_unpack() { + unpack ${A} + cd ${MY_P} || die + unpack ./${MY_P}_src.tar +} + +src_prepare() { + default + # fix POSIX compliance with `echo` + sed -i \ + -e 's:echo -n:printf:' \ + AFSConfig Configure Customize Inventory tests/CkTestDB || die + # Convert `test -r header.h` into a compile test. + # Make sure we convert `test ... -a ...` into two `test` commands + # so we can then convert both over into a compile test. #601432 + sed -i -E \ + -e '/if test .* -a /s: -a : \&\& test :g' \ + -e '/test -r/s:test -r \$\{LSOF_INCLUDE\}/([[:alnum:]/._]*):echo "#include <\1>" | ${LSOF_CC} ${LSOF_CFGF} -E - >/dev/null 2>\&1:g' \ + -e 's:grep (.*) \$\{LSOF_INCLUDE\}/([[:alnum:]/._]*):echo "#include <\2>" | ${LSOF_CC} ${LSOF_CFGF} -E -P -dD - 2>/dev/null | grep \1:' \ + Configure || die +} + +target() { + case ${CHOST} in + *-darwin*) echo darwin ;; + *-freebsd*) echo freebsd ;; + *-solaris*) echo solaris ;; + *-aix*) echo aixgcc ;; + *) echo linux ;; + esac +} + +src_configure() { + use static && append-ldflags -static + + append-cppflags $(use rpc && $(tc-getPKG_CONFIG) libtirpc --cflags || echo "-DHASNOTRPC -DHASNORPC_H") + append-cppflags $(usex ipv6 -{D,U}HASIPv6) + [[ ${CHOST} == *-solaris2.11 ]] && append-cppflags -DHAS_PAD_MUTEX + + export LSOF_CFGL="${CFLAGS} ${LDFLAGS} \ + $(use rpc && $(tc-getPKG_CONFIG) libtirpc --libs)" + + # Set LSOF_INCLUDE to a dummy location so the script doesn't poke + # around in it and mix /usr/include paths with cross-compile/etc. + touch .neverInv + LINUX_HASSELINUX=$(usex selinux y n) \ + LSOF_INCLUDE=${T} \ + LSOF_CC=$(tc-getCC) \ + LSOF_AR="$(tc-getAR) rc" \ + LSOF_RANLIB=$(tc-getRANLIB) \ + LSOF_CFGF="${CFLAGS} ${CPPFLAGS}" \ + ./Configure -n $(target) || die +} + +src_compile() { + emake DEBUG="" all +} + +src_install() { + dobin lsof + + if use examples ; then + insinto /usr/share/lsof/scripts + doins scripts/* + fi + + doman lsof.8 + dodoc 00* +} + +pkg_postinst() { + if [[ ${CHOST} == *-solaris* ]] ; then + einfo "Note: to use lsof on Solaris you need read permissions on" + einfo "/dev/kmem, i.e. you need to be root, or to be in the group sys" + elif [[ ${CHOST} == *-aix* ]] ; then + einfo "Note: to use lsof on AIX you need read permissions on /dev/mem and" + einfo "/dev/kmem, i.e. you need to be root, or to be in the group system" + fi +} |