feat(sys-process/criu): add features for criu

- add the necessary Kernel configurations
- add the sys-process/criu package (removing linux-info eclass to
  workaround not having a /usr/src/linux directory)
- add build dependencies to the hard-host-depends package
- accept the unstable nature of criu in accept_keywords
This commit is contained in:
Brandon Philips 2013-06-08 18:59:58 -07:00
parent 5a84a6a841
commit 1dad3615d5
11 changed files with 183 additions and 2 deletions

View File

@ -161,6 +161,7 @@ RDEPEND="${RDEPEND}
sys-process/lsof
sys-process/procps
app-emulation/docker
sys-process/criu
app-misc/ca-certificates
virtual/udev
"

View File

@ -104,6 +104,9 @@ RDEPEND="${RDEPEND}
sys-libs/libnih
sys-power/iasl
virtual/udev
dev-libs/protobuf-c
app-text/asciidoc
app-text/xmlto
"
# Host dependencies that create usernames/groups we need to pull over to target.

View File

@ -156,7 +156,7 @@ CONFIG_CFS_BANDWIDTH=y
CONFIG_RT_GROUP_SCHED=y
CONFIG_BLK_CGROUP=y
# CONFIG_DEBUG_BLK_CGROUP is not set
# CONFIG_CHECKPOINT_RESTORE is not set
CONFIG_CHECKPOINT_RESTORE=y
CONFIG_NAMESPACES=y
CONFIG_UTS_NS=y
CONFIG_IPC_NS=y
@ -562,7 +562,7 @@ CONFIG_NET=y
# Networking options
#
CONFIG_PACKET=y
# CONFIG_PACKET_DIAG is not set
CONFIG_PACKET_DIAG=y
CONFIG_UNIX=y
CONFIG_UNIX_DIAG=y
CONFIG_XFRM=y

View File

@ -97,3 +97,7 @@
=sys-apps/util-linux-2.23 ~amd64
=sys-apps/portage-2.1.12.1 ~amd64
# CRIU dependencies
=dev-libs/protobuf-c-0.15 ~amd64
=sys-process/criu-0.5 ~amd64

View File

@ -0,0 +1,21 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-kernel/vanilla-sources/vanilla-sources-3.7.5.ebuild,v 1.1 2013/01/28 13:18:54 ago Exp $
EAPI=4
CROS_WORKON_COMMIT="da3093ad9f44ba53c3f254b4392f3c742dee41d3"
CROS_WORKON_TREE="0ff44b050e7f57e7d3743a44af2c9211da30bdb4"
CROS_WORKON_REPO="git://github.com"
CROS_WORKON_PROJECT="coreos/linux"
inherit cros-workon cros-kernel2
DEPEND="
sys-devel/bc
"
DESCRIPTION="CoreOS kernel"
HOMEPAGE="http://www.kernel.org"
SRC_URI="${KERNEL_URI}"
KEYWORDS="amd64 arm x86"
IUSE="deblob"

View File

@ -0,0 +1,10 @@
# ChangeLog for sys-process/criu
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
# $Header: /var/cvsroot/gentoo-x86/sys-process/criu/ChangeLog,v 1.1 2013/05/03 07:51:26 radhermit Exp $
*criu-0.5 (03 May 2013)
03 May 2013; Tim Harder <radhermit@gentoo.org>
+files/crtools-0.4-flags.patch, +criu-0.5.ebuild, +metadata.xml:
Upstream rename and version bump of sys-process/crtools.

View File

@ -0,0 +1,19 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
AUX crtools-0.4-flags.patch 1824 SHA256 02812881204783dd50654f60d76c91c6e2e70686c9fabb2ddf6069acbe01c6a9 SHA512 6db4c556b0c72a5d8563986260c60feab617fdbffe113bb5e4698968aae47c10c44a8cd9bb1d1385c22d7c2c569859004d6ac8c98b7f54b7c34fb9605772361c WHIRLPOOL b94e23cc7ae23ffc5ccaf487ec6be70a6a8e228b92f5f23fead4160061aad40074a8bc924388ce153bffb8a916762b6fe5e488d2c5d7d7db5cfe0142e0a727fb
DIST criu-0.5.tar.bz2 262342 SHA256 23d4717a151be0233fdf7e66ad5bf4f4f01f48abec93c5f3189b984b8a3377a5 SHA512 1d3d3ea0116153511a6c0c0198dc7994beb4ae6af5d2bca4ccf05532b1426bff7e96c75ca773e66a63f987de73357bc5cfe8bd645dd0acbf134f2bd66d0abe68 WHIRLPOOL eb91aa4ad24bfbc9603f9b9078f2b9a82ef228d5a6d66d558ebf9adae245f10b93071eb7ad9e4f39beaefccfc6f5cc3d8a765e8e69ee21821a62148ffa03e7a7
EBUILD criu-0.5.ebuild 1067 SHA256 4fda103875dc554539044f9bc95b80df4bcdc4cfbc508223e78803b934ed8900 SHA512 0c333913403e8706ed23562dc27ccbe65992693bf6e086d9007eccb9d5deeb656531284d39d9182e3a810226a9377150a7157d07a9ce880aedc8c7298b2a662a WHIRLPOOL b850b332288a47ae3361747df4d9bd6e5d79dd9b18cb8c65c4700aec8069d88caf12c93bbf38b0448f1437f35077110473037f37dba3955fa5502994518b2199
MISC ChangeLog 409 SHA256 19e9a2575243c10dc6ad55c90aad9f83b2e1dd49035cc0cbb72d162de6e6f107 SHA512 6a204fc39f66186afecb929c8fec3bc2287547ced779658957746fd3dc95497be073eca7413b522f5e9894eda1dab5d696b78a65e5410645d96176c0c9f8a0b9 WHIRLPOOL b5fd693210be7b7bef77298aa96612345700450c79a8d3c1f326ab1d9cb9f93cd8e67b56a01d25716c59fd2c9dee196248d0c217ff2a5b37330068aafc918473
MISC metadata.xml 236 SHA256 5285fd5ca6bc85e0392ff64ec8e54d0018ebd761d3977869c00c93dee45ea09d SHA512 a1abf9a60fb1a2078d0475df655f8abd4b2f877f8d232028232fafca2eb7e7ae6ec2c835c4fe0ef27b3b5655d746d1fe53bbcb353703819448ddec84acdd4215 WHIRLPOOL fdbf5fcd34aa17330575f013aef4c87a8b039b62b6de3337a4004a6a0217238ceca43fa15425c30ddb7a5a632de7eb138ed541dfb161614cba817527297781e2
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.19 (GNU/Linux)
iQEcBAEBCAAGBQJRg2yDAAoJEEqz6FtPBkyjjo0H/R+1LRwv1qH9va/Xez8i3Gia
x7CoZOYMXgXWxvrW5rEtp0DiycgTah6eVXVLwQFulzEtmOY/6yeTI5u/v0ldnGqt
YdfCywZ8DpN45tqG4NhrQr9vjOK/O46aNnxARKhjgj5X1d2M8pyESWQY1m4abPpi
xL3PXMGQrXel3kkR1uqKdi89H2zn4lsnGEbH5ClmUCG/x9oSJROXcial24ucEUFO
M5QjOxi2DzhtowJren5agBSxnSyNp4jY8QU8viITFQpBFopvmN0lJ4tJjvIhg5DK
gBNSkwOcZre1pv3MEf0ai/yHrWz8nO4YPq5AtLArKfMqQnOTgwxgEww0yW+73YE=
=jQg7
-----END PGP SIGNATURE-----

View File

@ -0,0 +1,47 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-process/criu/criu-0.5.ebuild,v 1.1 2013/05/03 07:51:26 radhermit Exp $
EAPI=5
inherit eutils toolchain-funcs
DESCRIPTION="utility to checkpoint/restore a process tree"
HOMEPAGE="http://criu.org/"
SRC_URI="http://download.openvz.org/criu/${P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
RDEPEND="dev-libs/protobuf-c"
DEPEND="${RDEPEND}
app-text/asciidoc
app-text/xmlto"
CONFIG_CHECK="~CHECKPOINT_RESTORE ~FHANDLE ~EVENTFD ~EPOLL ~INOTIFY_USER
~UNIX_DIAG ~INET_DIAG ~PACKET_DIAG"
RESTRICT="test"
src_prepare() {
epatch "${FILESDIR}"/crtools-0.4-flags.patch
}
src_compile() {
unset ARCH
emake CC="$(tc-getCC)" V=1 WERROR=0 all docs
}
src_test() {
# root privileges are required to dump all necessary info
if [[ ${EUID} -eq 0 ]] ; then
emake -j1 CC="$(tc-getCC)" V=1 WERROR=0 test
fi
}
src_install() {
dobin ${PN}
dodoc CREDITS README
newman Documentation/crtools.1 ${PN}.1
}

View File

@ -0,0 +1,68 @@
--- crtools-0.4/Makefile
+++ crtools-0.4/Makefile
@@ -90,13 +90,6 @@
WARNINGS += -Werror
endif
-ifeq ($(DEBUG),1)
- DEFINES += -DCR_DEBUG
- CFLAGS += -O0 -ggdb3
-else
- CFLAGS += -O2
-endif
-
CFLAGS += $(WARNINGS) $(DEFINES)
SYSCALL-LIB := arch/$(ARCH)/syscalls.built-in.o
ARCH-LIB := arch/$(ARCH)/crtools.built-in.o
@@ -148,7 +141,7 @@
$(PROGRAM): $(SYSCALL-LIB) $(ARCH-LIB) pie/util-net.o protobuf/built-in.o built-in.o
$(E) " LINK " $@
- $(Q) $(CC) $(CFLAGS) $^ $(LIBS) -o $@
+ $(Q) $(CC) $(CFLAGS) $(LDFLAGS) $^ $(LIBS) -o $@
zdtm: all
$(Q) $(MAKE) -C test/zdtm all
--- crtools-0.4/test/zdtm/lib/Makefile
+++ crtools-0.4/test/zdtm/lib/Makefile
@@ -1,6 +1,6 @@
include ../Makefile.inc
-CFLAGS = -g -O2 -Wall -Werror -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=0
+CFLAGS = -Wall -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=0
LIB = libzdtmtst.a
--- crtools-0.4/test/zdtm/live/static/Makefile
+++ crtools-0.4/test/zdtm/live/static/Makefile
@@ -3,7 +3,7 @@
LIBDIR = ../../lib
LIB = $(LIBDIR)/libzdtmtst.a
override CPPFLAGS += -I$(LIBDIR)
-CFLAGS = -g -O2 -Wall -Werror -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=0
+CFLAGS = -Wall -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=0
TST_NOFILE = \
busyloop00 \
--- crtools-0.4/test/zdtm/live/streaming/Makefile
+++ crtools-0.4/test/zdtm/live/streaming/Makefile
@@ -3,7 +3,7 @@
LIBDIR = ../../lib
LIB = $(LIBDIR)/libzdtmtst.a
override CPPFLAGS += -I$(LIBDIR)
-CFLAGS = -g -O2 -Wall -Werror -fno-strict-aliasing
+CFLAGS = -Wall -fno-strict-aliasing
TST_NOFILE = \
pipe_loop00 \
--- crtools-0.4/test/zdtm/live/transition/Makefile
+++ crtools-0.4/test/zdtm/live/transition/Makefile
@@ -3,7 +3,7 @@
LIBDIR = ../../lib
LIB = $(LIBDIR)/libzdtmtst.a
override CPPFLAGS += -I$(LIBDIR)
-CFLAGS = -g -O2 -Wall -Werror
+CFLAGS = -Wall
TST_NOFILE = \
file_read \

View File

@ -0,0 +1,8 @@
<?xml version = '1.0' encoding = 'UTF-8'?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer>
<email>radhermit@gentoo.org</email>
<name>Tim Harder</name>
</maintainer>
</pkgmetadata>