- update to version 1.3: * Docker and LXC support, lots of bug fixes - cleanup spec file, fix rpmlint warnings - Update to version 1.3-rc2: * external bind mounts and tasks-to-cgroups bindings * many bugfixes in memory restore and mounpoints dump - Update to version 1.3-rc1: New features: * AArch64 * Multiple mount namespaces * FPU state restore control Restore old FPU state on newer CPUs Ability to ignore FPU restoration * Support stopped multi-threaded tasks * CRIU now can execv() other binary right after restore is complete * Inode-revese mapping can be enforced to allow live-migration with FS copying * Gold linker can now be used to compile CRIU * "Berserker" test to check CRIU scalability * Punch pages from mem images on restore (optimizes live-migration) Optimizations: * Batched deduplication of memory images * Packed rlimits into core image * Packed timers into core image Fixes: * Bad checks for kcmp() ret codes resulted in errors in file sharing detection * Multiple mmap-s of same files with different flags blocked the restore * Integer overflow in huge mapping restore caused restoration failure * Devpts's newinstance option was lost during dump OBS-URL: https://build.opensuse.org/request/show/247175 OBS-URL: https://build.opensuse.org/package/show/devel:tools/criu?expand=0&rev=13
121 lines
3.3 KiB
RPMSpec
121 lines
3.3 KiB
RPMSpec
#
|
|
# spec file for package criu
|
|
#
|
|
# Copyright (c) 2014 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/
|
|
#
|
|
|
|
|
|
%define package_version 1.3
|
|
Name: criu
|
|
Version: 1.3
|
|
Release: 0
|
|
Summary: Checkpoint/Restore In Userspace Tools
|
|
License: GPL-2.0
|
|
Group: System/Console
|
|
Url: http://criu.org/
|
|
Source0: http://download.openvz.org/criu/criu-%{package_version}.tar.bz2
|
|
BuildRequires: asciidoc
|
|
BuildRequires: pkg-config
|
|
BuildRequires: protobuf-c
|
|
BuildRequires: xmlto
|
|
BuildRequires: pkgconfig(systemd)
|
|
Requires: logrotate
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
|
ExclusiveArch: x86_64 aarch64
|
|
|
|
%description
|
|
Checkpoint/Restore In Userspace, or CRIU, is a software tool for Linux
|
|
operating system. Using this tool, you can freeze a running application
|
|
(or part of it) and checkpoint it to a hard drive as a collection of
|
|
files. You can then use the files to restore and run the application from
|
|
the point it was frozen at.
|
|
|
|
%package -n libcriu1
|
|
Summary: Library for CRIU
|
|
License: LGPL-2.1
|
|
Group: System/Libraries
|
|
|
|
%description -n libcriu1
|
|
This package contains the library for CRIU, Checkpoint/Restore In
|
|
Userspace Tools.
|
|
|
|
%package devel
|
|
Summary: Include Files and Libraries mandatory for Development
|
|
License: LGPL-2.1+
|
|
Group: Development/Libraries/C and C++
|
|
Requires: glibc-devel
|
|
Requires: libcriu1 = %{version}
|
|
|
|
%description devel
|
|
This package contains all necessary include files and libraries needed
|
|
to develop applications with CRIU library.
|
|
|
|
%prep
|
|
%setup -q -n %{name}-%{package_version}
|
|
|
|
%build
|
|
export CFLAGS="%{optflags}"
|
|
make V=1 %{?_smp_mflags} PREFIX=%{_prefix} LOGROTATEDIR=%{_sysconfdir}/logrotate.d/
|
|
|
|
%install
|
|
mkdir -p %{buildroot}%{_sysconfdir}/logrotate.d
|
|
make V=1 %{?_smp_mflags} PREFIX=%{_prefix} LOGROTATEDIR=%{_sysconfdir}/logrotate.d/ \
|
|
DESTDIR=%{buildroot} install
|
|
# make rpmlint happy
|
|
mv %{buildroot}%{_sysconfdir}/logrotate.d/criu-service \
|
|
%{buildroot}%{_sysconfdir}/logrotate.d/criu
|
|
# for compatiblity
|
|
ln -s criu %{buildroot}%{_sbindir}/crtools
|
|
ln -s criu.8 %{buildroot}%{_mandir}/man8/crtools.8
|
|
|
|
%pre
|
|
%service_add_pre criu.service criu.socket
|
|
exit 0
|
|
|
|
%preun
|
|
%service_del_preun criu.service criu.socket
|
|
exit 0
|
|
|
|
%post
|
|
%service_add_post criu.service criu.socket
|
|
exit 0
|
|
|
|
%postun
|
|
%service_del_postun criu.service criu.socket
|
|
exit 0
|
|
|
|
%post -n libcriu1 -p /sbin/ldconfig
|
|
|
|
%postun -n libcriu1 -p /sbin/ldconfig
|
|
|
|
%files
|
|
%defattr(-,root,root)
|
|
%doc README COPYING
|
|
%{_sbindir}/*
|
|
%{_mandir}/man*/*
|
|
%{_unitdir}/criu.*
|
|
%config %{_sysconfdir}/logrotate.d/*
|
|
|
|
%files -n libcriu1
|
|
%defattr(-,root,root)
|
|
%{_libdir}/libcriu.so.*
|
|
|
|
%files devel
|
|
%defattr(-,root,root)
|
|
%{_includedir}/criu
|
|
%{_libdir}/libcriu.so
|
|
%{_libdir}/pkgconfig/*.pc
|
|
|
|
%changelog
|