]> git.pld-linux.org Git - packages/libcap.git/blob - libcap.spec
up to 2.69 (fixes CVE-2023-2602 CVE-2023-2603)
[packages/libcap.git] / libcap.spec
1 #
2 # Conditional build:
3 %bcond_with     golang  # Go components (nothing useful yet?)
4
5 %ifnarch %{ix86} %{x8664} %{arm} aarch64 mips64 mips64le ppc64le
6 %undefine       with_golang
7 %endif
8 Summary:        POSIX.1e capability suite
9 Summary(pl.UTF-8):      Wsparcie dla standardu "capability" POSIX.1e
10 Summary(pt_BR.UTF-8):   Biblioteca para leitura e configuração de capabilities.
11 Name:           libcap
12 Version:        2.66
13 Release:        1
14 Epoch:          1
15 License:        GPL v2 or BSD
16 Group:          Applications/System
17 Source0:        https://www.kernel.org/pub/linux/libs/security/linux-privs/libcap2/%{name}-%{version}.tar.xz
18 # Source0-md5:  00afd6e13bc94b2543b1a70770bdb41f
19 URL:            https://sites.google.com/site/fullycapable/
20 BuildRequires:  attr-devel
21 %{?with_golang:BuildRequires:   golang}
22 BuildRequires:  pam-devel
23 BuildRequires:  tar >= 1:1.22
24 BuildRequires:  xz
25 Requires:       %{name}-libs = %{epoch}:%{version}-%{release}
26 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
27
28 %define         _sbindir                /sbin
29
30 %description
31 The POSIX.1e capability library for Linux. This package contains the
32 getcap and setcap binaries and manual pages.
33
34 %description -l pl.UTF-8
35 Biblioteka, programy oraz strony manuala zawierające implementację
36 "capability" standardu POSIX.1e.
37
38 %description -l pt_BR.UTF-8
39 Biblioteca para leitura e configuração de capabilities.
40
41 %package libs
42 Summary:        libcap library
43 Summary(pl.UTF-8):      Biblioteka libcap
44 Group:          Libraries
45 Conflicts:      libcap < 1:2.16-2
46
47 %description libs
48 libcap library.
49
50 %description libs -l pl.UTF-8
51 Biblioteka libcap.
52
53 %package devel
54 Summary:        Header files and development documentation for libcap
55 Summary(pl.UTF-8):      Pliki nagłówkowe i dokumentacja do libcap
56 Summary(pt_BR.UTF-8):   Arquivos de desenvolvimento para capabilities
57 Group:          Development/Libraries
58 Requires:       %{name}-libs = %{epoch}:%{version}-%{release}
59
60 %description devel
61 Header files and development documentation for libcap.
62
63 %description devel -l pl.UTF-8
64 Pliki nagłówkowe i dokumentacja do libcap.
65
66 %description devel -l pt_BR.UTF-8
67 Arquivos de desenvolvimento para capabilities.
68
69 %package static
70 Summary:        Static libcap library
71 Summary(pl.UTF-8):      Statyczna biblioteka libcap
72 Group:          Development/Libraries
73 Requires:       %{name}-devel = %{epoch}:%{version}-%{release}
74
75 %description static
76 Static libcap library.
77
78 %description static -l pl.UTF-8
79 Statyczna biblioteka libcap.
80
81 %package -n pam-pam_cap
82 Summary:        Capability module for PAM
83 Summary(pl.UTF-8):      Moduł PAM capability
84 Group:          Libraries
85 Requires:       %{name}-libs = %{epoch}:%{version}-%{release}
86 Requires:       pam
87
88 %description -n pam-pam_cap
89 PAM capability module enforces inheritable capability sets.
90
91 %description -n pam-pam_cap -l pl.UTF-8
92 Moduł PAM capability wymuszający dziedziczone zbiory uprawnień.
93
94 %prep
95 %setup -q
96
97 %build
98 LDFLAGS="%{rpmldflags}" \
99 %{__make} -j1 \
100         CC="%{__cc}" \
101         COPTS="%{rpmcflags} %{rpmcppflags}" \
102         BUILD_CC="%{__cc}" \
103         BUILD_COPTS="%{rpmcflags} %{rpmcppflags}" \
104         DEBUG= \
105         %{!?with_golang:GOLANG=0}
106
107 %install
108 rm -rf $RPM_BUILD_ROOT
109
110 %{__make} -j1 install \
111         FAKEROOT=$RPM_BUILD_ROOT \
112         %{!?with_golang:GOLANG=0} \
113         PKGCONFIGDIR=%{_pkgconfigdir} \
114         RAISE_SETFCAP=no \
115         lib=%{_lib}
116
117 install -d $RPM_BUILD_ROOT/%{_lib}/security
118 install -p pam_cap/pam_cap.so $RPM_BUILD_ROOT/%{_lib}/security
119 install -d $RPM_BUILD_ROOT/etc/security
120 cp -a pam_cap/capability.conf $RPM_BUILD_ROOT/etc/security
121
122 install -d $RPM_BUILD_ROOT%{_libdir}
123 for libname in libcap libpsx ; do
124         ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/${libname}.so.*.*) \
125                 $RPM_BUILD_ROOT%{_libdir}/${libname}.so
126         %{__rm} $RPM_BUILD_ROOT/%{_lib}/${libname}.so
127         %{__mv} $RPM_BUILD_ROOT/%{_lib}/${libname}.a $RPM_BUILD_ROOT%{_libdir}
128 done
129 chmod a+x $RPM_BUILD_ROOT/%{_lib}/*.so*
130
131 %clean
132 rm -rf $RPM_BUILD_ROOT
133
134 %post   libs -p /sbin/ldconfig
135 %postun libs -p /sbin/ldconfig
136
137 %files
138 %defattr(644,root,root,755)
139 %doc CHANGELOG License README
140 %attr(755,root,root) %{_sbindir}/capsh
141 %attr(755,root,root) %{_sbindir}/getcap
142 %attr(755,root,root) %{_sbindir}/getpcaps
143 # TODO: cap_setfcap=i
144 %attr(755,root,root) %{_sbindir}/setcap
145 %{_mandir}/man1/capsh.1*
146 %{_mandir}/man8/captree.8*
147 %{_mandir}/man8/getcap.8*
148 %{_mandir}/man8/getpcaps.8*
149 %{_mandir}/man8/setcap.8*
150
151 %files libs
152 %defattr(644,root,root,755)
153 %attr(755,root,root) /%{_lib}/libcap.so.*.*
154 %attr(755,root,root) %ghost /%{_lib}/libcap.so.2
155 %attr(755,root,root) /%{_lib}/libpsx.so.*.*
156 %attr(755,root,root) %ghost /%{_lib}/libpsx.so.2
157
158 %files devel
159 %defattr(644,root,root,755)
160 %attr(755,root,root) %{_libdir}/libcap.so
161 %attr(755,root,root) %{_libdir}/libpsx.so
162 %{_includedir}/sys/capability.h
163 %{_includedir}/sys/psx_syscall.h
164 %{_pkgconfigdir}/libcap.pc
165 %{_pkgconfigdir}/libpsx.pc
166 %{_mandir}/man3/libcap*.3*
167 %{_mandir}/man3/libpsx*.3*
168 %{_mandir}/man3/cap_*.3*
169 %{_mandir}/man3/capgetp.3*
170 %{_mandir}/man3/capsetp.3*
171 %{_mandir}/man3/psx_*.3*
172
173 %files static
174 %defattr(644,root,root,755)
175 %{_libdir}/libcap.a
176 %{_libdir}/libpsx.a
177
178 %files -n pam-pam_cap
179 %defattr(644,root,root,755)
180 %doc pam_cap/License
181 %attr(755,root,root) /%{_lib}/security/pam_cap.so
182 %config(noreplace) %verify(not md5 mtime size) /etc/security/capability.conf
183
184 # TODO: golang - where?
185 # installs under
186 #%{_datadir}/gocode/src/kernel.org/pub/linux/libs/security/libcap
187 # or should we use
188 #%{_libdir}/golang/src/libcap
This page took 0.089494 seconds and 3 git commands to generate.