Mon, 28 Jan 2013 17:37:18 +0100
Correct socket error reporting improvement with IPv6 portable code,
after helpful recommendation by Saúl Ibarra Corretgé on OSips devlist.
1 ##
2 ## lsof.spec -- OpenPKG RPM Package Specification
3 ## Copyright (c) 2000-2012 OpenPKG Foundation e.V. <http://openpkg.net/>
4 ##
5 ## Permission to use, copy, modify, and distribute this software for
6 ## any purpose with or without fee is hereby granted, provided that
7 ## the above copyright notice and this permission notice appear in all
8 ## copies.
9 ##
10 ## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
11 ## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
12 ## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
13 ## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
14 ## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
15 ## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
16 ## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
17 ## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
18 ## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
19 ## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
20 ## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
21 ## SUCH DAMAGE.
22 ##
24 # package information
25 Name: lsof
26 Summary: List Open Files
27 URL: ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/
28 Vendor: Victor A. Abell
29 Packager: OpenPKG Foundation e.V.
30 Distribution: OpenPKG Community
31 Class: BASE
32 Group: Debugging
33 License: BSD
34 Version: 4.86
35 Release: 20120800
37 # list of sources
38 Source0: ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/lsof_%{version}.tar.gz
39 Patch0: lsof.patch
41 # build information
42 BuildPreReq: OpenPKG, openpkg >= 20100101, gcc, make
43 PreReq: OpenPKG, openpkg >= 20100101
45 %description
46 List Open Files (lsof) shows all currently open file descriptors of
47 processes.
49 %track
50 prog lsof = {
51 version = %{version}
52 url = ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/
53 regex = lsof_(__VER__)\.tar\.gz
54 }
56 %prep
57 %setup -q -n lsof_%{version}
58 %{l_tar} xf lsof_%{version}_src.tar
59 cd lsof_%{version}_src
60 %patch -p0
62 %build
63 cd lsof_%{version}_src
64 export PATH="/bin:/usr/bin:$PATH"
65 export LSOF_CC="%{l_cc}"
66 export LSOF_MAKE="%{l_make} %{l_mflags -O}"
67 case "%{l_platform -t}" in
68 *-freebsd* ) platform="freebsd"; LSOF_CC="/usr/bin/cc"; LSOF_MAKE="/usr/bin/make" ;;
69 *-linux* ) platform="linux" ;;
70 *-sunos* ) platform="solaris" ;;
71 *-netbsd* ) platform="netbsd" ;;
72 *-hpux* ) platform="hpuxgcc" ;;
73 *-aix* ) platform="aixgcc" ;;
74 * ) echo "Platform %{l_platform -t} not supported" 1>&2; exit 1 ;;
75 esac
76 ./Configure -n $platform
77 eval $LSOF_MAKE
79 %install
80 %{l_shtool} mkdir -f -p -m 755 $RPM_BUILD_ROOT%{l_prefix}/bin
81 %{l_shtool} mkdir -f -p -m 755 $RPM_BUILD_ROOT%{l_prefix}/man/man8
82 ( cd lsof_%{version}_src
83 %{l_shtool} install -c lsof $RPM_BUILD_ROOT%{l_prefix}/bin/
84 %{l_shtool} install -c lsof.8 $RPM_BUILD_ROOT%{l_prefix}/man/man8/
85 ) || exit $?
86 strip $RPM_BUILD_ROOT%{l_prefix}/bin/lsof >/dev/null 2>&1 || true
87 setgid=""
88 case "%{l_platform -t}" in
89 *-freebsd* ) setgid="kmem" ;;
90 *-linux* ) setgid="kmem" ;;
91 *-sunos* ) setgid="sys" ;;
92 *-netbsd* ) setgid="kmem" ;;
93 *-hpux* ) setgid="sys" ;;
94 *-aix* ) setgid="sys" ;;
95 esac
96 %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT \
97 %{l_files_std} \
98 "%attr(2755,%{l_musr},$setgid) %{l_prefix}/bin/lsof"
100 %files -f files
102 %clean