]> git.pld-linux.org Git - packages/lxc.git/blob - lxc.spec
add apparmor bcond
[packages/lxc.git] / lxc.spec
1 #
2 # Conditional build:
3 %bcond_without  seccomp # SecComp syscall filter
4 %bcond_without  apparmor        # apparmor
5 %bcond_without  lua     # Lua binding
6 %bcond_without  python  # Python binding
7
8 Summary:        Linux Container Tools
9 Summary(pl.UTF-8):      Narzędzia do kontenerów linuksowych (LXC)
10 Name:           lxc
11 Version:        0.9.0
12 Release:        5
13 License:        LGPL v2.1+
14 Group:          Applications/System
15 Source0:        http://lxc.sourceforge.net/download/lxc/%{name}-%{version}.tar.gz
16 # Source0-md5:  8552a4479090616f4bc04d8473765fc9
17 Patch0:         %{name}-devpts.patch
18 Patch1:         %{name}-pld.patch
19 Patch2:         am-1.14.patch
20 Patch3:         checkconfig-module.patch
21 Patch4:         checkconfig-vserver-config.patch
22 Patch5:         fedora-template.patch
23 URL:            http://lxc.sourceforge.net/
24 BuildRequires:  autoconf >= 2.50
25 BuildRequires:  automake
26 BuildRequires:  docbook-dtd30-sgml
27 BuildRequires:  docbook-utils
28 BuildRequires:  docbook2X
29 %{?with_apparmor:BuildRequires: libapparmor-devel}
30 BuildRequires:  libcap-devel
31 %{?with_seccomp:BuildRequires:  libseccomp-devel}
32 %{?with_lua:BuildRequires:      lua51-devel >= 5.1}
33 BuildRequires:  pkgconfig
34 %{?with_python:BuildRequires:   python3-devel >= 3.2}
35 BuildRequires:  rpmbuild(macros) >= 1.612
36 BuildRequires:  sed >= 4.0
37 Requires:       rc-scripts >= 0.4.6
38 Suggests:       net-tools
39 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
40
41 %define         configpath      /var/lib/lxc
42
43 %description
44 Tools to create and manage containers. It contains a full featured
45 container with the isolation / virtualization of the pids, the ipc,
46 the utsname, the mount points, /proc, /sys, the network and it takes
47 into account the control groups. It is very light, flexible, and
48 provides a set of tools around the container like the monitoring with
49 asynchronous events notification, or the freeze of the container. This
50 package is useful to create Virtual Private Server, or to run isolated
51 applications like bash or sshd.
52
53 %description -l pl.UTF-8
54 Narzędzia do tworzenia i zarządzania kontenerami. System ten obejmuje
55 w pełni funkcjonalne kontenery z ilozacją/wirtualizacją pidów, ipc,
56 utsname, punktów montowania, /proc, /sys, sieci oraz uwzględniające
57 grupy kontrolne. Jest bardzo lekki, elastyczny i udostępnia narzędzia
58 do czynności związanych z kontenerami, takich jak monitorowanie z
59 asynchronicznym powiadamianiem o zdarzeniach czy zamrażanie. Ten
60 pakiet jest przydatny do tworzenia wirtualnych serwerów prywatnych
61 oraz uruchamiania izolowanych aplikacji, takich jak bash czy sshd.
62
63 %package devel
64 Summary:        Header files for lxc library
65 Summary(pl.UTF-8):      Pliki nagłówkowe biblioteki lxc
66 Group:          Development/Libraries
67 Requires:       %{name} = %{version}-%{release}
68
69 %description devel
70 Header files for lxc library.
71
72 %description devel -l pl.UTF-8
73 Pliki nagłówkowe biblioteki lxc.
74
75 %package -n lua-lxc
76 Summary:        Lua binding for LXC
77 Summary(pl.UTF-8):      Wiązanie Lua do LXC
78 Group:          Libraries
79 Requires:       %{name} = %{version}-%{release}
80 Requires:       lua51-libs >= 5.1
81
82 %description -n lua-lxc
83 Lua binding for LXC.
84
85 %description -n lua-lxc -l pl.UTF-8
86 Wiązanie Lua do LXC.
87
88 %package -n python3-lxc
89 Summary:        Python (3.x) binding for LXC
90 Summary(pl.UTF-8):      Wiązanie Pythona (3.x) do LXC
91 Group:          Libraries
92 Requires:       %{name} = %{version}-%{release}
93 Requires:       python3-libs >= 3.2
94
95 %description -n python3-lxc
96 Python (3.x) binding for LXC.
97
98 %description -n python3-lxc -l pl.UTF-8
99 Wiązanie Pythona (3.x) do LXC.
100
101 %prep
102 %setup -q
103 %patch0 -p1
104 %patch1 -p1
105 %patch2 -p1
106 %patch3 -p1
107 %patch4 -p1
108 %patch5 -p1
109
110 %build
111 %{__aclocal} -I config
112 %{__autoconf}
113 %{__autoheader}
114 %{__automake}
115 %configure \
116         db2xman=docbook2X2man \
117         --disable-rpath \
118         --enable-doc \
119         %{__enable_disable apparmor} \
120         %{__enable_disable lua} \
121         %{__enable_disable python} \
122         %{__enable_disable seccomp} \
123         --with-config-path=%{configpath} \
124         --with-distro=pld
125
126 %{__make}
127 %{__make} -C doc
128
129 %install
130 rm -rf $RPM_BUILD_ROOT
131 install -d $RPM_BUILD_ROOT{%{configpath},/var/cache/lxc}
132 %{__make} install \
133         DESTDIR=$RPM_BUILD_ROOT \
134         pcdatadir=%{_pkgconfigdir}
135
136 %{__make} -C doc install \
137         DESTDIR=$RPM_BUILD_ROOT
138
139 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}
140
141 %if %{with python}
142 %py3_comp $RPM_BUILD_ROOT%{py3_sitedir}/lxc
143 %py3_ocomp $RPM_BUILD_ROOT%{py3_sitedir}/lxc
144 %endif
145 %if %{with lua}
146 %{__sed} -i -e '1s,#!/usr/bin/env lua,#!/usr/bin/lua51,' $RPM_BUILD_ROOT%{_bindir}/lxc-top
147 %endif
148
149 %clean
150 rm -rf $RPM_BUILD_ROOT
151
152 %post   -p /sbin/ldconfig
153 %postun -p /sbin/ldconfig
154
155 %files
156 %defattr(644,root,root,755)
157 %doc AUTHORS ChangeLog CONTRIBUTING MAINTAINERS README TODO doc/FAQ.txt doc/examples/*.conf
158 %attr(755,root,root) %{_bindir}/lxc-attach
159 %attr(755,root,root) %{_bindir}/lxc-cgroup
160 %attr(755,root,root) %{_bindir}/lxc-checkconfig
161 %attr(755,root,root) %{_bindir}/lxc-checkpoint
162 %attr(755,root,root) %{_bindir}/lxc-clone
163 %attr(755,root,root) %{_bindir}/lxc-console
164 %attr(755,root,root) %{_bindir}/lxc-create
165 %attr(755,root,root) %{_bindir}/lxc-destroy
166 %attr(755,root,root) %{_bindir}/lxc-execute
167 %attr(755,root,root) %{_bindir}/lxc-freeze
168 %attr(755,root,root) %{_bindir}/lxc-info
169 %attr(755,root,root) %{_bindir}/lxc-kill
170 %attr(755,root,root) %{_bindir}/lxc-monitor
171 %attr(755,root,root) %{_bindir}/lxc-netstat
172 %attr(755,root,root) %{_bindir}/lxc-ps
173 %attr(755,root,root) %{_bindir}/lxc-restart
174 %attr(755,root,root) %{_bindir}/lxc-shutdown
175 %attr(755,root,root) %{_bindir}/lxc-start
176 %attr(755,root,root) %{_bindir}/lxc-stop
177 %attr(755,root,root) %{_bindir}/lxc-unfreeze
178 %attr(755,root,root) %{_bindir}/lxc-unshare
179 %attr(755,root,root) %{_bindir}/lxc-version
180 %attr(755,root,root) %{_bindir}/lxc-wait
181 %attr(755,root,root) %{_libdir}/liblxc.so.*.*.*
182 %attr(755,root,root) %ghost %{_libdir}/liblxc.so.0
183 %dir %{_libdir}/lxc
184 %dir %{_libdir}/lxc/rootfs
185 %{_libdir}/lxc/rootfs/README
186 %attr(755,root,root) %{_libdir}/lxc/lxc-init
187 %dir %{_sysconfdir}/lxc
188 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lxc/default.conf
189 %dir %{_datadir}/lxc
190 %{_datadir}/%{name}/lxc.functions
191 %dir %{_datadir}/%{name}/hooks
192 %dir %{_datadir}/%{name}/templates
193 %attr(755,root,root) %{_datadir}/%{name}/hooks/mount*
194 %attr(755,root,root) %{_datadir}/%{name}/templates/lxc-*
195 %{_mandir}/man1/lxc-attach.1*
196 %{_mandir}/man1/lxc-cgroup.1*
197 %{_mandir}/man1/lxc-checkconfig.1*
198 %{_mandir}/man1/lxc-checkpoint.1*
199 %{_mandir}/man1/lxc-clone.1*
200 %{_mandir}/man1/lxc-console.1*
201 %{_mandir}/man1/lxc-create.1*
202 %{_mandir}/man1/lxc-destroy.1*
203 %{_mandir}/man1/lxc-execute.1*
204 %{_mandir}/man1/lxc-freeze.1*
205 %{_mandir}/man1/lxc-info.1*
206 %{_mandir}/man1/lxc-kill.1*
207 %{_mandir}/man1/lxc-monitor.1*
208 %{_mandir}/man1/lxc-netstat.1*
209 %{_mandir}/man1/lxc-ps.1*
210 %{_mandir}/man1/lxc-restart.1*
211 %{_mandir}/man1/lxc-shutdown.1*
212 %{_mandir}/man1/lxc-start.1*
213 %{_mandir}/man1/lxc-stop.1*
214 %{_mandir}/man1/lxc-unfreeze.1*
215 %{_mandir}/man1/lxc-unshare.1*
216 %{_mandir}/man1/lxc-version.1*
217 %{_mandir}/man1/lxc-wait.1*
218 %{_mandir}/man5/lxc.conf.5*
219 %{_mandir}/man7/lxc.7*
220 %if %{without python}
221 # legacy version
222 %attr(755,root,root) %{_bindir}/lxc-ls
223 %{_mandir}/man1/lxc-ls.1*
224 %endif
225
226 %dir %{configpath}
227 %dir /var/cache/lxc
228
229 %files devel
230 %defattr(644,root,root,755)
231 %attr(755,root,root) %{_libdir}/liblxc.so
232 %{_includedir}/lxc
233 %{_pkgconfigdir}/lxc.pc
234
235 %if %{with lua}
236 %files -n lua-lxc
237 %defattr(644,root,root,755)
238 %attr(755,root,root) %{_bindir}/lxc-top
239 %dir %{_libdir}/lua/5.1/lxc
240 %attr(755,root,root) %{_libdir}/lua/5.1/lxc/core.so
241 %{_datadir}/lua/5.1/lxc.lua
242 %{_mandir}/man1/lxc-top.1*
243 %endif
244
245 %if %{with python}
246 %files -n python3-lxc
247 %defattr(644,root,root,755)
248 %attr(755,root,root) %{_bindir}/lxc-device
249 %attr(755,root,root) %{_bindir}/lxc-ls
250 %attr(755,root,root) %{_bindir}/lxc-start-ephemeral
251 %{py3_sitedir}/lxc
252 %attr(755,root,root) %{py3_sitedir}/_lxc.cpython-*.so
253 %{py3_sitedir}/_lxc-0.1-py*.egg-info
254 %{_mandir}/man1/lxc-device.1*
255 %{_mandir}/man1/lxc-ls.1*
256 %{_mandir}/man1/lxc-start-ephemeral.1*
257 %endif
This page took 0.146867 seconds and 4 git commands to generate.