File lxc.spec of Package lxc
#
# spec file for package lxc
#
# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
Name: lxc
Version: 0.7.5
Release: 0
Url: http://lxc.sourceforge.net/
Summary: Linux containers implementation
License: LGPL-2.1+
Group: System/Management
Source: http://lxc.sourceforge.net/download/lxc/%{name}-%{version}.tar.gz
Source1: README.SUSE
Source2: lxc-createconfig.in
# PATCH-FIX-UPSTREAM update openSUSE template to use 12.1 and various fixes
Patch0: lxc-opensuse-12.1.patch
# PATCH-FIX-UPSTREAM lxc-checkconfig-kernel-3.patch bnc#720845 fcrozat@suse.com -- correctly detect kernel 3.x
Patch1: lxc-checkconfig-kernel-3.patch
Patch2: Accurately-detect-whether-a-system-supports-clone_children.patch
# PATCH-FIX-UPSTREAM lxc-snapshot-btrfs-lvm.patch fcrozat@suse.com -- backport support for btrfs and lvm based snapshots (git)
Patch3: lxc-snapshot-btrfs-lvm.patch
# PATCH-FIX-UPSTREAM lxc-opensuse-tmpfs.patch fcrozat@suse.com -- fix shutdown in openSUSE container
Patch4: lxc-opensuse-tmpfs.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: docbook-utils
BuildRequires: libcap-devel
BuildRequires: pkg-config
%if 0%{?suse_version} >= 1130
BuildRequires: linux-glibc-devel
%else
BuildRequires: linux-kernel-headers
%endif
Requires: /sbin/setcap
Requires: rsync
# needed to create openSUSE containers using template
Recommends: build
%description
It provides commands to create and manage containers. It contains a
full featured container with the isolation/virtualization of the pids,
the ipc, the utsname, the mount points, /proc, /sys, the network and it
takes into account the control groups. It is very light, flexible, and
provides a set of tools around the container like the monitoring with
asynchronous events notification, or the freeze of the container. This
package is useful to create Virtual Private Server, or to run isolated
applications like bash or sshd.
%package devel
Summary: Development library for lxc
License: LGPL-2.1
Group: Development/Libraries/C and C++
Requires: %name = %version
Requires: glibc-devel
%description devel
Lxc header files and library needed for development of containers.
%prep
%setup
%patch0 -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
%build
%configure --disable-examples
%__make %{?_smp_mflags}
%__cp %{SOURCE1} .
%__rm -rf .doc
%__mkdir_p .doc/examples
%__cp doc/examples/*.conf .doc/examples
%install
%makeinstall
install -d -m 755 %{buildroot}/var/lib/lxc
find %buildroot -type f -name '*.la' -delete
./config.status --file=%{buildroot}%{_bindir}/lxc-createconfig:%{S:2}
chmod a+x %{buildroot}%{_bindir}/lxc-createconfig
%clean
%__rm -rf %buildroot
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%files
%defattr(-,root,root)
%doc AUTHORS MAINTAINERS COPYING README doc/FAQ.txt
%doc README.SUSE
%doc .doc/examples
%{_libdir}/lib%{name}.so.*
%{_libdir}/%name
%dir /var/lib/lxc
%{_bindir}/%{name}-*
%{_mandir}/man[^3]/*
%files devel
%defattr(-,root,root)
%{_includedir}/%name
%{_libdir}/lib%{name}.so
%{_datadir}/pkgconfig/%{name}.pc
%changelog