]>
Commit | Line | Data |
---|---|---|
1 | # | |
2 | # lxc: linux Container library | |
3 | # | |
4 | # (C) Copyright IBM Corp. 2007, 2008 | |
5 | # | |
6 | # Authors: | |
7 | # Daniel Lezcano <daniel.lezcano at free.fr> | |
8 | # | |
9 | # This library is free software; you can redistribute it and/or | |
10 | # modify it under the terms of the GNU Lesser General Public | |
11 | # License as published by the Free Software Foundation; either | |
12 | # version 2.1 of the License, or (at your option) any later version. | |
13 | # | |
14 | # This library is distributed in the hope that it will be useful, | |
15 | # but WITHOUT ANY WARRANTY; without even the implied warranty of | |
16 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
17 | # Lesser General Public License for more details. | |
18 | # | |
19 | # You should have received a copy of the GNU Lesser General Public | |
20 | # License along with this library; if not, write to the Free Software | |
21 | # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA | |
22 | ||
23 | %global with_python %{?_with_python: 1} %{?!_with_python: 0} | |
24 | %global with_lua %{?_with_lua: 1} %{?!_with_lua: 0} | |
25 | ||
26 | # RPM needs alpha/beta/rc in Release: not Version: to ensure smooth | |
27 | # package upgrades from alpha->beta->rc->release. For more info see: | |
28 | # http://fedoraproject.org/wiki/Packaging%3aNamingGuidelines#NonNumericRelease | |
29 | %if "x@LXC_VERSION_BETA@" != "x" | |
30 | %global beta_rel @LXC_VERSION_BETA@ | |
31 | %global beta_dot .%{beta_rel} | |
32 | %else | |
33 | %global norm_rel 1 | |
34 | %endif | |
35 | ||
36 | Name: @PACKAGE@ | |
37 | Version: @LXC_VERSION_BASE@ | |
38 | Release: %{?beta_rel:0.1.%{beta_rel}}%{?!beta_rel:%{norm_rel}}%{?dist} | |
39 | URL: http://linuxcontainers.org | |
40 | Source: http://linuxcontainers.org/downloads/%{name}-%{version}%{?beta_dot}.tar.gz | |
41 | Summary: Linux Containers userspace tools | |
42 | Group: Applications/System | |
43 | License: LGPLv2+ | |
44 | BuildRoot: %{_tmppath}/%{name}-%{version}-build | |
45 | Requires: openssl rsync | |
46 | BuildRequires: libcap libcap-devel docbook2X | |
47 | ||
48 | %if %{with_python} | |
49 | Requires: python3 | |
50 | BuildRequires: python3-devel | |
51 | %endif | |
52 | ||
53 | %description | |
54 | Containers are insulated areas inside a system, which have their own namespace | |
55 | for filesystem, network, PID, IPC, CPU and memory allocation and which can be | |
56 | created using the Control Group and Namespace features included in the Linux | |
57 | kernel. | |
58 | ||
59 | This package provides the lxc-* tools, which can be used to start a single | |
60 | daemon in a container, or to boot an entire "containerized" system, and to | |
61 | manage and debug your containers. | |
62 | ||
63 | %package libs | |
64 | Summary: Shared library files for %{name} | |
65 | Group: System Environment/Libraries | |
66 | %description libs | |
67 | The %{name}-libs package contains libraries for running %{name} applications. | |
68 | ||
69 | %package devel | |
70 | Summary: Development library for %{name} | |
71 | Group: Development/Libraries | |
72 | Requires: %{name} = %{version}-%{release}, pkgconfig | |
73 | %description devel | |
74 | The %{name}-devel package contains header files and library needed for | |
75 | development of the Linux containers. | |
76 | ||
77 | %if %{with_lua} | |
78 | %package lua | |
79 | Summary: Lua bindings for %{name} | |
80 | Group: System Environment/Libraries | |
81 | Requires: lua-filesystem | |
82 | BuildRequires: lua-devel | |
83 | %description lua | |
84 | The %{name}-lua package contains %{name} bindings for lua. | |
85 | %endif | |
86 | ||
87 | %prep | |
88 | %setup -q -n %{name}-%{version}%{?beta_dot} | |
89 | %build | |
90 | PATH=$PATH:/usr/sbin:/sbin %configure $args \ | |
91 | %if %{with_lua} | |
92 | --enable-lua \ | |
93 | %endif | |
94 | %if %{with_python} | |
95 | --enable-python \ | |
96 | %endif | |
97 | --disable-rpath | |
98 | make %{?_smp_mflags} | |
99 | ||
100 | %install | |
101 | rm -rf %{buildroot} | |
102 | make install DESTDIR=%{buildroot} | |
103 | find %{buildroot} -type f -name '*.la' -exec rm -f {} ';' | |
104 | ||
105 | # Install some of our systemd stuff... | |
106 | install -d -m 755 %{buildroot}/lib/systemd/system | |
107 | install -c -m 644 src/lxc/lxc.service %{buildroot}/lib/systemd/system | |
108 | install -c -m 755 src/lxc/lxc-devsetup %{buildroot}/%{_libexecdir}/%{name} | |
109 | ||
110 | %clean | |
111 | rm -rf %{buildroot} | |
112 | ||
113 | %post | |
114 | %post libs -p /sbin/ldconfig | |
115 | %postun libs -p /sbin/ldconfig | |
116 | ||
117 | %files | |
118 | %defattr(-,root,root) | |
119 | %{_bindir}/* | |
120 | %attr(4111,root,root) %{_bindir}/lxc-attach | |
121 | %attr(4111,root,root) %{_bindir}/lxc-create | |
122 | %attr(4111,root,root) %{_bindir}/lxc-clone | |
123 | %attr(4111,root,root) %{_bindir}/lxc-start | |
124 | %attr(4111,root,root) %{_bindir}/lxc-netstat | |
125 | %attr(4111,root,root) %{_bindir}/lxc-unshare | |
126 | %attr(4111,root,root) %{_bindir}/lxc-execute | |
127 | %attr(4111,root,root) %{_bindir}/lxc-checkpoint | |
128 | %attr(4111,root,root) %{_bindir}/lxc-restart | |
129 | %{_mandir}/man1/lxc* | |
130 | %{_mandir}/man5/lxc* | |
131 | %{_mandir}/man7/lxc* | |
132 | %{_mandir}/ja/man1/lxc* | |
133 | %{_mandir}/ja/man5/lxc* | |
134 | %{_mandir}/ja/man7/lxc* | |
135 | %{_datadir}/doc/* | |
136 | %{_datadir}/lxc/* | |
137 | %config(noreplace) %{_sysconfdir}/lxc/* | |
138 | ||
139 | /lib/systemd/system/* | |
140 | ||
141 | %files libs | |
142 | %defattr(-,root,root) | |
143 | %{_libdir}/*.so.* | |
144 | %{_libdir}/%{name} | |
145 | %if %{with_python} | |
146 | %{_libdir}/python* | |
147 | %endif | |
148 | %{_localstatedir}/* | |
149 | %attr(4555,root,root) %{_libexecdir}/%{name}/lxc-init | |
150 | %attr(555,root,root) %{_libexecdir}/%{name}/lxc-devsetup | |
151 | ||
152 | %if %{with_lua} | |
153 | %files lua | |
154 | %defattr(-,root,root) | |
155 | %{_datadir}/lua | |
156 | %{_libdir}/lua | |
157 | %endif | |
158 | ||
159 | %files devel | |
160 | %defattr(-,root,root) | |
161 | %{_includedir}/%{name}/* | |
162 | %{_libdir}/*.so | |
163 | %{_libdir}/pkgconfig/* | |
164 | ||
165 | %changelog | |
166 | * Tue Oct 22 2013 Dwight Engen <dwight.engen@oracle.com> - 1.0.0-0.1.alpha2 | |
167 | - fix some rpmlint warnings/errors | |
168 | - split lua bits into seperate package | |
169 | ||
170 | * Mon Sep 10 2012 Dwight Engen <dwight.engen@oracle.com> - 0.8.0 | |
171 | - fix lxc-init moved to libexec | |
172 | - .pc moved to _libdir | |
173 | - package template files /usr/share/lxc/templates | |
174 | ||
175 | * Thu Sep 8 2011 Greg Kurz <gkurz@fr.ibm.com> - 0.7.5.1 | |
176 | - fix installed files for rpmbuild | |
177 | - introduce lxc-libs package | |
178 | ||
179 | * Fri Jul 23 2010 Daniel Lezcano <dlezcano@fr.ibm.com> - 0.7.2 | |
180 | - set attribute for installed files | |
181 | - fix libraries installation | |
182 | ||
183 | * Tue Mar 24 2009 Daniel Lezcano <daniel.lezcano@free.fr> - 0.6.1 | |
184 | - Removed capability setting, let the user to do that through "lxc-setcap" | |
185 | ||
186 | * Mon Feb 16 2009 Daniel Lezcano <daniel.lezcano@free.fr> - 0.6.0 | |
187 | - Added more capabilities to the executables | |
188 | ||
189 | * Sun Jan 25 2009 Daniel Lezcano <daniel.lezcano@free.fr> - 0.6.0 | |
190 | - Reduced spec file | |
191 | ||
192 | * Sun Aug 3 2008 Daniel Lezcano <dlezcano@fr.ibm.com> - 0.1.0 | |
193 | - Initial RPM release. | |
194 | ||
195 | # Local variables: | |
196 | # mode: shell-script | |
197 | # sh-shell: rpm | |
198 | # end: |