summaryrefslogtreecommitdiff
path: root/sys-process/criu/files
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /sys-process/criu/files
reinit the tree, so we can have metadata
Diffstat (limited to 'sys-process/criu/files')
-rw-r--r--sys-process/criu/files/2.0/criu-2.0-automagic-libbsd.patch17
-rw-r--r--sys-process/criu/files/2.0/criu-2.0-sysroot.patch9
-rw-r--r--sys-process/criu/files/2.2/criu-2.2-flags.patch13
-rw-r--r--sys-process/criu/files/2.2/criu-2.2-makefile.patch77
-rw-r--r--sys-process/criu/files/2.2/criu-2.2-no-git.patch16
-rw-r--r--sys-process/criu/files/2.3/criu-2.3-aarch64.patch22
-rw-r--r--sys-process/criu/files/2.3/criu-2.3-no-git.patch16
-rw-r--r--sys-process/criu/files/2.4/criu-2.4-makefile.patch78
-rw-r--r--sys-process/criu/files/2.5/criu-2.5-automagic-libbsd.patch17
-rw-r--r--sys-process/criu/files/2.9/criu-2.9-makefile.patch78
-rw-r--r--sys-process/criu/files/criu-2.12.1-glibc-2.26.patch49
-rw-r--r--sys-process/criu/files/criu-2.8-automagic-libbsd.patch17
-rw-r--r--sys-process/criu/files/criu-2.8-sysmacros.patch98
13 files changed, 507 insertions, 0 deletions
diff --git a/sys-process/criu/files/2.0/criu-2.0-automagic-libbsd.patch b/sys-process/criu/files/2.0/criu-2.0-automagic-libbsd.patch
new file mode 100644
index 000000000000..3f39ef63f82f
--- /dev/null
+++ b/sys-process/criu/files/2.0/criu-2.0-automagic-libbsd.patch
@@ -0,0 +1,17 @@
+diff --git a/criu/Makefile.config b/criu/Makefile.config
+index aaaca1f..e977bcd 100644
+--- a/criu/Makefile.config
++++ b/criu/Makefile.config
+@@ -4,10 +4,12 @@ include ../scripts/feature-tests.mak
+
+ CONFIG_HEADER := include/config.h
+
++ifeq ($(SETPROCTITLE),yes)
+ ifeq ($(call try-cc,$(FEATURE_TEST_LIBBSD_DEV),-lbsd),y)
+ LIBS += -lbsd
+ DEFINES += -DCONFIG_HAS_LIBBSD
+ endif
++endif
+
+ ifeq ($(call pkg-config-check,libselinux),y)
+ LIBS += -lselinux
diff --git a/sys-process/criu/files/2.0/criu-2.0-sysroot.patch b/sys-process/criu/files/2.0/criu-2.0-sysroot.patch
new file mode 100644
index 000000000000..4dcb0fb2c95a
--- /dev/null
+++ b/sys-process/criu/files/2.0/criu-2.0-sysroot.patch
@@ -0,0 +1,9 @@
+Using host headers when cross compiling is not a great idea.
+
+Index: criu-2.0/criu/Makefile
+===================================================================
+--- criu-2.0.orig/criu/Makefile
++++ criu-2.0/criu/Makefile
+@@ -51,1 +51,1 @@ ccflags-y += -iquote $(SRC_DIR)/criu/pi
+-ccflags-y += -I/usr/include/libnl3
++ccflags-y += -I${SYSROOT}/usr/include/libnl3
diff --git a/sys-process/criu/files/2.2/criu-2.2-flags.patch b/sys-process/criu/files/2.2/criu-2.2-flags.patch
new file mode 100644
index 000000000000..97a806ba3414
--- /dev/null
+++ b/sys-process/criu/files/2.2/criu-2.2-flags.patch
@@ -0,0 +1,13 @@
+diff --git a/Makefile b/Makefile
+index 037d38f..7c85403 100644
+--- a/Makefile
++++ b/Makefile
+@@ -97,8 +97,6 @@ endif
+ ifeq ($(DEBUG),1)
+ DEFINES += -DCR_DEBUG
+ CFLAGS += -O0 -ggdb3
+-else
+- CFLAGS += -O2 -g
+ endif
+
+ ifeq ($(GMON),1)
diff --git a/sys-process/criu/files/2.2/criu-2.2-makefile.patch b/sys-process/criu/files/2.2/criu-2.2-makefile.patch
new file mode 100644
index 000000000000..e4e856d8ba72
--- /dev/null
+++ b/sys-process/criu/files/2.2/criu-2.2-makefile.patch
@@ -0,0 +1,77 @@
+diff --git a/Makefile.install b/Makefile.install
+index b3f5551..2349107 100644
+--- a/Makefile.install
++++ b/Makefile.install
+@@ -6,23 +6,10 @@ BINDIR ?= $(PREFIX)/bin
+ SBINDIR ?= $(PREFIX)/sbin
+ MANDIR ?= $(PREFIX)/share/man
+ SYSTEMDUNITDIR ?= $(PREFIX)/lib/systemd/system/
+-LOGROTATEDIR ?= $(PREFIX)/etc/logrotate.d/
++LOGROTATEDIR ?= $(SYSCONFDIR)/etc/logrotate.d/
+ LIBDIR ?= $(PREFIX)/lib
+ INCLUDEDIR ?= $(PREFIX)/include/criu
+
+-#
+-# For recent Debian/Ubuntu with multiarch support.
+-DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null)
+-ifneq "$(DEB_HOST_MULTIARCH)" ""
+- LIBDIR ?= $(PREFIX)/lib/$(DEB_HOST_MULTIARCH)
+-else
+- #
+- # For most other systems
+- ifeq "$(shell uname -m)" "x86_64"
+- LIBDIR ?= $(PREFIX)/lib64
+- endif
+-endif
+-
+ export BINDIR SBINDIR MANDIR SYSTEMDUNITDIR LOGROTATEDIR
+ export INCLUDEDIR LIBDIR DESTDIR PREFIX
+
+diff --git a/lib/Makefile b/lib/Makefile
+index f1c0821..3bef265 100644
+--- a/lib/Makefile
++++ b/lib/Makefile
+@@ -25,8 +25,12 @@ lib-c: c/$(CRIU_SO)
+ #
+ # Python bindings.
+ lib-py:
++ifeq ($(PYCRIU),yes)
+ $(call msg-gen, $@)
+ $(Q) $(MAKE) -C py all
++else
++ $(Q) echo "no py criu"
++endif
+ .PHONY: lib-py
+
+ all: lib-c lib-py
+@@ -43,7 +47,7 @@ clean:
+ $(Q) $(RM) -r build usr
+ .PHONY: clean
+
+-install: lib-c lib-py ../crit/crit c/criu.pc.in
++install: lib-c ../crit/crit c/criu.pc.in
+ $(E) " INSTALL " $(CRIU_SO)
+ $(Q) mkdir -p $(DESTDIR)$(LIBDIR)
+ $(Q) install -m 755 c/$(CRIU_SO) $(DESTDIR)$(LIBDIR)/$(CRIU_SO).$(CRIU_SO_VERSION_MAJOR).$(CRIU_SO_VERSION_MINOR)
+@@ -55,8 +59,6 @@ install: lib-c lib-py ../crit/crit c/criu.pc.in
+ $(Q) mkdir -p $(DESTDIR)$(LIBDIR)/pkgconfig
+ $(Q) sed -e 's,@version@,$(CRIU_VERSION),' -e 's,@libdir@,$(LIBDIR),' -e 's,@includedir@,$(dir $(INCLUDEDIR)),' c/criu.pc.in > c/criu.pc
+ $(Q) install -m 644 c/criu.pc $(DESTDIR)$(LIBDIR)/pkgconfig
+- $(E) " INSTALL " crit
+- $(Q) python ../scripts/crit-setup.py install --root=$(DESTDIR) --prefix=$(PREFIX) --record $(CRIT_SETUP_FILES)
+ .PHONY: install
+
+ uninstall:
+diff --git a/scripts/nmk/scripts/build.mk b/scripts/nmk/scripts/build.mk
+index bd40944..3cfbffa 100644
+--- a/scripts/nmk/scripts/build.mk
++++ b/scripts/nmk/scripts/build.mk
+@@ -87,7 +87,7 @@ builtin-name := $(strip $(builtin-name))
+
+ #
+ # Link flags.
+-ld_flags := $(strip $(LDFLAGS) $(ldflags-y))
++ld_flags := $(strip $(RAW_LDFLAGS) $(ldflags-y))
+
+ #
+ # $(obj) related rules.
diff --git a/sys-process/criu/files/2.2/criu-2.2-no-git.patch b/sys-process/criu/files/2.2/criu-2.2-no-git.patch
new file mode 100644
index 000000000000..0622225c2905
--- /dev/null
+++ b/sys-process/criu/files/2.2/criu-2.2-no-git.patch
@@ -0,0 +1,16 @@
+diff --git a/Makefile b/Makefile
+index 7c85403..20992ed 100644
+--- a/Makefile
++++ b/Makefile
+@@ -179,9 +179,9 @@ test: zdtm
+ # Generating tar requires tag matched CRIU_VERSION.
+ # If not found then simply use GIT's describe with
+ # "v" prefix stripped.
+-head-name := $(shell git tag -l v$(CRIU_VERSION))
++head-name := $(shell if [ -d ".git" ]; then git tag -l v$(CRIU_VERSION); fi)
+ ifeq ($(head-name),)
+- head-name := $(shell git describe)
++ head-name := $(shell if [ -d ".git" ]; then git describe; fi)
+ endif
+ tar-name := $(shell echo $(head-name) | sed -e 's/^v//g')
+ criu-$(tar-name).tar.bz2:
diff --git a/sys-process/criu/files/2.3/criu-2.3-aarch64.patch b/sys-process/criu/files/2.3/criu-2.3-aarch64.patch
new file mode 100644
index 000000000000..e857b6a1aa2b
--- /dev/null
+++ b/sys-process/criu/files/2.3/criu-2.3-aarch64.patch
@@ -0,0 +1,22 @@
+diff --git a/Makefile b/Makefile
+index 0e2636b..ef8f78b 100644
+--- a/Makefile
++++ b/Makefile
+@@ -25,7 +25,7 @@ export SRC_DIR
+
+ #
+ # Architecture specific options.
+-ifneq ($(filter-out x86 arm arm64 ppc64,$(ARCH)),)
++ifneq ($(filter-out x86 arm aarch64 ppc64,$(ARCH)),)
+ $(error "The architecture $(ARCH) isn't supported")
+ endif
+
+@@ -39,7 +39,7 @@ ifeq ($(ARCH),arm)
+ SRCARCH := arm
+ endif
+
+-ifeq ($(ARCH),arm64)
++ifeq ($(ARCH),aarch64)
+ ARCH := aarch64
+ SRCARCH := aarch64
+ VDSO := y
diff --git a/sys-process/criu/files/2.3/criu-2.3-no-git.patch b/sys-process/criu/files/2.3/criu-2.3-no-git.patch
new file mode 100644
index 000000000000..86360cdf1a55
--- /dev/null
+++ b/sys-process/criu/files/2.3/criu-2.3-no-git.patch
@@ -0,0 +1,16 @@
+diff --git a/Makefile b/Makefile
+index 97f63eb..0e2636b 100644
+--- a/Makefile
++++ b/Makefile
+@@ -245,9 +245,9 @@ test: zdtm
+ # Generating tar requires tag matched CRIU_VERSION.
+ # If not found then simply use GIT's describe with
+ # "v" prefix stripped.
+-head-name := $(shell git tag -l v$(CRIU_VERSION))
++head-name := $(shell if [ -d ".git" ]; then git tag -l v$(CRIU_VERSION); fi)
+ ifeq ($(head-name),)
+- head-name := $(shell git describe 2>/dev/null)
++ head-name := $(shell if [ -d ".git" ]; then git describe 2>/dev/null; fi)
+ endif
+ # If no git tag could describe current commit,
+ # use pre-defined CRIU_VERSION with GITID (if any).
diff --git a/sys-process/criu/files/2.4/criu-2.4-makefile.patch b/sys-process/criu/files/2.4/criu-2.4-makefile.patch
new file mode 100644
index 000000000000..8a0fb6d940fc
--- /dev/null
+++ b/sys-process/criu/files/2.4/criu-2.4-makefile.patch
@@ -0,0 +1,78 @@
+diff --git a/Makefile.install b/Makefile.install
+index e3dd551..495ad39 100644
+--- a/Makefile.install
++++ b/Makefile.install
+@@ -6,24 +6,11 @@ BINDIR ?= $(PREFIX)/bin
+ SBINDIR ?= $(PREFIX)/sbin
+ MANDIR ?= $(PREFIX)/share/man
+ SYSTEMDUNITDIR ?= $(PREFIX)/lib/systemd/system/
+-LOGROTATEDIR ?= $(PREFIX)/etc/logrotate.d/
++LOGROTATEDIR ?= $(SYSCONFDIR)/etc/logrotate.d/
+ LIBDIR ?= $(PREFIX)/lib
+ INCLUDEDIR ?= $(PREFIX)/include/criu
+ LIBEXECDIR ?= $(PREFIX)/libexec
+
+-#
+-# For recent Debian/Ubuntu with multiarch support.
+-DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null)
+-ifneq "$(DEB_HOST_MULTIARCH)" ""
+- LIBDIR ?= $(PREFIX)/lib/$(DEB_HOST_MULTIARCH)
+-else
+- #
+- # For most other systems
+- ifeq "$(shell uname -m)" "x86_64"
+- LIBDIR ?= $(PREFIX)/lib64
+- endif
+-endif
+-
+ export BINDIR SBINDIR MANDIR SYSTEMDUNITDIR LOGROTATEDIR
+ export INCLUDEDIR LIBDIR DESTDIR PREFIX LIBEXECDIR
+
+diff --git a/lib/Makefile b/lib/Makefile
+index f1c0821..3bef265 100644
+--- a/lib/Makefile
++++ b/lib/Makefile
+@@ -25,8 +25,12 @@ lib-c: c/$(CRIU_SO)
+ #
+ # Python bindings.
+ lib-py:
++ifeq ($(PYCRIU),yes)
+ $(call msg-gen, $@)
+ $(Q) $(MAKE) -C py all
++else
++ $(Q) echo "no py criu"
++endif
+ .PHONY: lib-py
+
+ all: lib-c lib-py
+@@ -43,7 +47,7 @@ clean:
+ $(Q) $(RM) -r build usr
+ .PHONY: clean
+
+-install: lib-c lib-py ../crit/crit c/criu.pc.in
++install: lib-c ../crit/crit c/criu.pc.in
+ $(E) " INSTALL " $(CRIU_SO)
+ $(Q) mkdir -p $(DESTDIR)$(LIBDIR)
+ $(Q) install -m 755 c/$(CRIU_SO) $(DESTDIR)$(LIBDIR)/$(CRIU_SO).$(CRIU_SO_VERSION_MAJOR).$(CRIU_SO_VERSION_MINOR)
+@@ -55,8 +59,6 @@ install: lib-c lib-py ../crit/crit c/criu.pc.in
+ $(Q) mkdir -p $(DESTDIR)$(LIBDIR)/pkgconfig
+ $(Q) sed -e 's,@version@,$(CRIU_VERSION),' -e 's,@libdir@,$(LIBDIR),' -e 's,@includedir@,$(dir $(INCLUDEDIR)),' c/criu.pc.in > c/criu.pc
+ $(Q) install -m 644 c/criu.pc $(DESTDIR)$(LIBDIR)/pkgconfig
+- $(E) " INSTALL " crit
+- $(Q) python ../scripts/crit-setup.py install --root=$(DESTDIR) --prefix=$(PREFIX) --record $(CRIT_SETUP_FILES)
+ .PHONY: install
+
+ uninstall:
+diff --git a/scripts/nmk/scripts/build.mk b/scripts/nmk/scripts/build.mk
+index bd40944..3cfbffa 100644
+--- a/scripts/nmk/scripts/build.mk
++++ b/scripts/nmk/scripts/build.mk
+@@ -87,7 +87,7 @@ builtin-name := $(strip $(builtin-name))
+
+ #
+ # Link flags.
+-ld_flags := $(strip $(LDFLAGS) $(ldflags-y))
++ld_flags := $(strip $(RAW_LDFLAGS) $(ldflags-y))
+
+ #
+ # $(obj) related rules.
diff --git a/sys-process/criu/files/2.5/criu-2.5-automagic-libbsd.patch b/sys-process/criu/files/2.5/criu-2.5-automagic-libbsd.patch
new file mode 100644
index 000000000000..de6509a745c2
--- /dev/null
+++ b/sys-process/criu/files/2.5/criu-2.5-automagic-libbsd.patch
@@ -0,0 +1,17 @@
+diff --git a/criu/Makefile.config b/criu/Makefile.config
+index f531b3b..23a3b23 100644
+--- a/criu/Makefile.config
++++ b/criu/Makefile.config
+@@ -2,10 +2,12 @@ include $(__nmk_dir)/utils.mk
+ include $(__nmk_dir)msg.mk
+ include $(SRC_DIR)/scripts/feature-tests.mak
+
++ifeq ($(SETPROCTITLE),yes)
+ ifeq ($(call try-cc,$(FEATURE_TEST_LIBBSD_DEV),-lbsd),true)
+ LIBS += -lbsd
+ FEATURE_DEFINES += -DCONFIG_HAS_LIBBSD
+ endif
++endif
+
+ ifeq ($(call pkg-config-check,libselinux),y)
+ LIBS += -lselinux
diff --git a/sys-process/criu/files/2.9/criu-2.9-makefile.patch b/sys-process/criu/files/2.9/criu-2.9-makefile.patch
new file mode 100644
index 000000000000..7ec91eebaa33
--- /dev/null
+++ b/sys-process/criu/files/2.9/criu-2.9-makefile.patch
@@ -0,0 +1,78 @@
+diff --git a/Makefile.install b/Makefile.install
+index dbc22e1..23fd1ae 100644
+--- a/Makefile.install
++++ b/Makefile.install
+@@ -6,24 +6,11 @@ BINDIR ?= $(PREFIX)/bin
+ SBINDIR ?= $(PREFIX)/sbin
+ MANDIR ?= $(PREFIX)/share/man
+ SYSTEMDUNITDIR ?= $(PREFIX)/lib/systemd/system/
+-LOGROTATEDIR ?= $(PREFIX)/etc/logrotate.d/
++LOGROTATEDIR ?= $(SYSCONFDIR)/etc/logrotate.d/
+ LIBDIR ?= $(PREFIX)/lib
+ INCLUDEDIR ?= $(PREFIX)/include/criu
+ LIBEXECDIR ?= $(PREFIX)/libexec
+
+-#
+-# For recent Debian/Ubuntu with multiarch support.
+-DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null)
+-ifneq "$(DEB_HOST_MULTIARCH)" ""
+- LIBDIR ?= $(PREFIX)/lib/$(DEB_HOST_MULTIARCH)
+-else
+- #
+- # For most other systems
+- ifeq "$(shell uname -m)" "x86_64"
+- LIBDIR ?= $(PREFIX)/lib64
+- endif
+-endif
+-
+ export BINDIR SBINDIR MANDIR SYSTEMDUNITDIR LOGROTATEDIR
+ export INCLUDEDIR LIBDIR DESTDIR PREFIX LIBEXECDIR
+
+diff --git a/lib/Makefile b/lib/Makefile
+index 616f089..aab3189 100644
+--- a/lib/Makefile
++++ b/lib/Makefile
+@@ -25,8 +25,12 @@ lib-c: c/$(CRIU_SO)
+ #
+ # Python bindings.
+ lib-py:
++ifeq ($(PYCRIU),yes)
+ $(call msg-gen, $@)
+ $(Q) $(MAKE) -C py all
++else
++ $(Q) echo "no py criu"
++endif
+ .PHONY: lib-py
+
+ all: lib-c lib-py
+@@ -43,7 +47,7 @@ clean:
+ $(Q) $(RM) -r build usr
+ .PHONY: clean
+
+-install: lib-c lib-py ../crit/crit c/criu.pc.in
++install: lib-c ../crit/crit c/criu.pc.in
+ $(E) " INSTALL " $(CRIU_SO)
+ $(Q) mkdir -p $(DESTDIR)$(LIBDIR)
+ $(Q) install -m 755 c/$(CRIU_SO) $(DESTDIR)$(LIBDIR)/$(CRIU_SO).$(CRIU_SO_VERSION_MAJOR).$(CRIU_SO_VERSION_MINOR)
+@@ -55,8 +59,6 @@ install: lib-c lib-py ../crit/crit c/criu.pc.in
+ $(Q) mkdir -p $(DESTDIR)$(LIBDIR)/pkgconfig
+ $(Q) sed -e 's,@version@,$(CRIU_VERSION),' -e 's,@libdir@,$(LIBDIR),' -e 's,@includedir@,$(dir $(INCLUDEDIR)),' c/criu.pc.in > c/criu.pc
+ $(Q) install -m 644 c/criu.pc $(DESTDIR)$(LIBDIR)/pkgconfig
+- $(E) " INSTALL " crit
+- $(Q) $(PYTHON_BIN) ../scripts/crit-setup.py install --root=$(DESTDIR) --prefix=$(PREFIX) --record $(CRIT_SETUP_FILES)
+ .PHONY: install
+
+ uninstall:
+diff --git a/scripts/nmk/scripts/build.mk b/scripts/nmk/scripts/build.mk
+index 1860d58..e169b0c 100644
+--- a/scripts/nmk/scripts/build.mk
++++ b/scripts/nmk/scripts/build.mk
+@@ -87,7 +87,7 @@ builtin-name := $(strip $(builtin-name))
+
+ #
+ # Link flags.
+-ld_flags := $(strip $(LDFLAGS) $(ldflags-y))
++ld_flags := $(strip $(RAW_LDFLAGS) $(ldflags-y))
+
+ #
+ # $(obj) related rules.
diff --git a/sys-process/criu/files/criu-2.12.1-glibc-2.26.patch b/sys-process/criu/files/criu-2.12.1-glibc-2.26.patch
new file mode 100644
index 000000000000..d378cc88cff9
--- /dev/null
+++ b/sys-process/criu/files/criu-2.12.1-glibc-2.26.patch
@@ -0,0 +1,49 @@
+From d77d8cc402e597bb38edfb4e81db89fd7d96d0b6 Mon Sep 17 00:00:00 2001
+From: Adrian Reber <areber@redhat.com>
+Date: Thu, 29 Jun 2017 14:19:32 +0000
+Subject: [PATCH] fix building with newer glibc
+
+Newer glibc releases have removed SIGUNUSED from bits/signum.h which
+breaks building criu on those systems:
+
+https://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=8082d91e1c449e0cb137468b731004a5e605c8c6
+
+SIGSYS returns the same value as SIGUNUSED and testing has shown
+that criu still successfully completes zdtm with this patch.
+
+Signed-off-by: Adrian Reber <areber@redhat.com>
+Reviewed-by: Dmitry Safonov <dsafonov@virtuozzo.com>
+Signed-off-by: Andrei Vagin <avagin@virtuozzo.com>
+---
+ criu/cr-restore.c | 1 -
+ test/zdtm/static/pthread01.c | 2 +-
+ 2 files changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/criu/cr-restore.c b/criu/cr-restore.c
+index e8fb4adf..6ba50f18 100644
+--- a/criu/cr-restore.c
++++ b/criu/cr-restore.c
+@@ -880,7 +880,6 @@ static void zombie_prepare_signals(void)
+ (1 << SIGPOLL) |\
+ (1 << SIGIO) |\
+ (1 << SIGSYS) |\
+- (1 << SIGUNUSED)|\
+ (1 << SIGSTKFLT)|\
+ (1 << SIGPWR) \
+ )
+diff --git a/test/zdtm/static/pthread01.c b/test/zdtm/static/pthread01.c
+index 52f849c0..2520fcfe 100644
+--- a/test/zdtm/static/pthread01.c
++++ b/test/zdtm/static/pthread01.c
+@@ -43,7 +43,7 @@ static char *decode_signal(const sigset_t *s, char *buf)
+ COLLECT(SIGTERM); COLLECT(SIGSTKFLT); COLLECT(SIGCHLD); COLLECT(SIGCONT); COLLECT(SIGSTOP);
+ COLLECT(SIGTSTP); COLLECT(SIGTTIN); COLLECT(SIGTTOU); COLLECT(SIGURG); COLLECT(SIGXCPU);
+ COLLECT(SIGXFSZ); COLLECT(SIGVTALRM); COLLECT(SIGPROF); COLLECT(SIGWINCH); COLLECT(SIGIO);
+- COLLECT(SIGPOLL); COLLECT(SIGPWR); COLLECT(SIGSYS); COLLECT(SIGUNUSED);
++ COLLECT(SIGPOLL); COLLECT(SIGPWR); COLLECT(SIGSYS);
+ #undef COLLECT
+
+ return buf;
+--
+2.14.1
+
diff --git a/sys-process/criu/files/criu-2.8-automagic-libbsd.patch b/sys-process/criu/files/criu-2.8-automagic-libbsd.patch
new file mode 100644
index 000000000000..54781ea5f841
--- /dev/null
+++ b/sys-process/criu/files/criu-2.8-automagic-libbsd.patch
@@ -0,0 +1,17 @@
+diff --git a/Makefile.config b/Makefile.config
+index e0d49d2..d1b2b9d 100644
+--- a/Makefile.config
++++ b/Makefile.config
+@@ -2,10 +2,12 @@ include $(__nmk_dir)utils.mk
+ include $(__nmk_dir)msg.mk
+ include $(SRC_DIR)/scripts/feature-tests.mak
+
++ifeq ($(SETPROCTITLE),yes)
+ ifeq ($(call try-cc,$(FEATURE_TEST_LIBBSD_DEV),-lbsd),true)
+ LIBS_FEATURES += -lbsd
+ FEATURE_DEFINES += -DCONFIG_HAS_LIBBSD
+ endif
++endif
+
+ ifeq ($(call pkg-config-check,libselinux),y)
+ LIBS_FEATURES += -lselinux
diff --git a/sys-process/criu/files/criu-2.8-sysmacros.patch b/sys-process/criu/files/criu-2.8-sysmacros.patch
new file mode 100644
index 000000000000..68bba802f4e0
--- /dev/null
+++ b/sys-process/criu/files/criu-2.8-sysmacros.patch
@@ -0,0 +1,98 @@
+https://bugs.gentoo.org/580454
+https://github.com/xemul/criu/pull/257
+
+From 6913c0004eaa4fd11bf3efc8c37fb05108cf18ee Mon Sep 17 00:00:00 2001
+From: Yixun Lan <dlan@gentoo.org>
+Date: Wed, 7 Dec 2016 00:24:42 -0500
+Subject: [PATCH] include sys/sysmacros.h for minor/major/makedev funcs
+
+Since glibc is moving away from implicitly including sys/sysmacros.h
+all the time via sys/types.h, include the header directly in more
+places. This seems to cover most makedev/major/minor usage.
+
+Signed-off-by: Yixun Lan <dlan@gentoo.org>
+Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+---
+ criu/file-lock.c | 1 +
+ criu/include/util.h | 1 +
+ criu/kerndat.c | 1 +
+ criu/proc_parse.c | 1 +
+ test/zdtm/lib/fs.h | 1 +
+ test/zdtm/static/console.c | 1 +
+ 6 files changed, 6 insertions(+)
+
+diff --git a/criu/file-lock.c b/criu/file-lock.c
+index 1ab1e5886965..11d8a194937a 100644
+--- a/criu/file-lock.c
++++ b/criu/file-lock.c
+@@ -5,6 +5,7 @@
+ #include <string.h>
+ #include <sys/types.h>
+ #include <sys/stat.h>
++#include <sys/sysmacros.h>
+
+ #include "cr_options.h"
+ #include "imgset.h"
+diff --git a/criu/include/util.h b/criu/include/util.h
+index 8eaee33391c5..1aa40e863acb 100644
+--- a/criu/include/util.h
++++ b/criu/include/util.h
+@@ -10,6 +10,7 @@
+ #include <string.h>
+ #include <sys/types.h>
+ #include <sys/statfs.h>
++#include <sys/sysmacros.h>
+ #include <dirent.h>
+
+ #include "int.h"
+diff --git a/criu/kerndat.c b/criu/kerndat.c
+index f9675bd7ec1d..aeef1b7f6640 100644
+--- a/criu/kerndat.c
++++ b/criu/kerndat.c
+@@ -7,6 +7,7 @@
+ #include <sys/mman.h>
+ #include <errno.h>
+ #include <sys/syscall.h>
++#include <sys/sysmacros.h>
+
+ #include "int.h"
+ #include "log.h"
+diff --git a/criu/proc_parse.c b/criu/proc_parse.c
+index 3f84cdaad99a..a86d31769ded 100644
+--- a/criu/proc_parse.c
++++ b/criu/proc_parse.c
+@@ -9,6 +9,7 @@
+ #include <string.h>
+ #include <ctype.h>
+ #include <linux/fs.h>
++#include <sys/sysmacros.h>
+
+ #include "types.h"
+ #include "common/list.h"
+diff --git a/test/zdtm/lib/fs.h b/test/zdtm/lib/fs.h
+index 972c49b4a068..972b15abad0c 100644
+--- a/test/zdtm/lib/fs.h
++++ b/test/zdtm/lib/fs.h
+@@ -6,6 +6,7 @@
+ #endif
+
+ #include <sys/types.h>
++#include <sys/sysmacros.h>
+
+ #include <limits.h>
+
+diff --git a/test/zdtm/static/console.c b/test/zdtm/static/console.c
+index a86b14639729..41246aea0298 100644
+--- a/test/zdtm/static/console.c
++++ b/test/zdtm/static/console.c
+@@ -8,6 +8,7 @@
+
+ #include <sys/stat.h>
+ #include <sys/types.h>
++#include <sys/sysmacros.h>
+
+ #include "zdtmtst.h"
+
+--
+2.11.0.rc2
+