blob: 30b131cd30a630c489b5b4e5417822c003728c4c [file] [log] [blame]
# criu only builds on certain architectures
config BR2_PACKAGE_CRIU_ARCH_SUPPORTS
bool
default y if BR2_ARM_CPU_ARMV6
default y if BR2_ARM_CPU_ARMV7A
default y if BR2_ARM_CPU_ARMV7M
default y if BR2_ARM_CPU_ARMV8A && !BR2_aarch64_be
default y if BR2_aarch64
default y if BR2_x86_64
default y if BR2_powerpc64le # Only support powerpc64 with LE
# CRIU has "some" support for s390 but it is not included due to
# BE/LE endian issues.
depends on BR2_USE_MMU # libcap
depends on BR2_PACKAGE_HOST_PROTOBUF_ARCH_SUPPORTS # protobuf-c
depends on BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS
depends on BR2_PACKAGE_LIBBSD_ARCH_SUPPORTS
config BR2_PACKAGE_CRIU
bool "criu"
depends on BR2_PACKAGE_CRIU_ARCH_SUPPORTS
depends on BR2_HOST_GCC_AT_LEAST_7 # protobuf-c
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_8 # -march=armv7-a+fp
depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_18 # rseq.h
depends on !BR2_TOOLCHAIN_USES_UCLIBC # no aio.h
depends on !BR2_STATIC_LIBS # protobuf, libbsd
depends on BR2_INSTALL_LIBSTDCPP # protobuf
depends on BR2_TOOLCHAIN_HAS_THREADS # protobuf, libnl
depends on BR2_USE_WCHAR # libbsd
select BR2_PACKAGE_HOST_PYTHON3
select BR2_PACKAGE_HOST_PYTHON3_SSL
select BR2_PACKAGE_PROTOBUF
select BR2_PACKAGE_PROTOBUF_C
select BR2_PACKAGE_LIBAIO
select BR2_PACKAGE_LIBBSD
select BR2_PACKAGE_LIBCAP
select BR2_PACKAGE_LIBNET
select BR2_PACKAGE_LIBNL
select BR2_PACKAGE_PYTHON3
help
Checkpoint/Restore In Userspace (CRIU), is a software
tool for the Linux operating system to make it possible
to freeze a running application and checkpoint it to
persistent storage as a collection of files.
https://criu.org/Main_Page
comment "criu needs a glibc or musl toolchain w/ threads, host gcc >= 7, gcc >= 8, headers >= 4.18, C++, dynamic library, wchar"
depends on BR2_PACKAGE_CRIU_ARCH_SUPPORTS
depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_8 || !BR2_TOOLCHAIN_HAS_THREADS \
|| !BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_18 \
|| BR2_TOOLCHAIN_USES_UCLIBC || !BR2_INSTALL_LIBSTDCPP \
|| BR2_STATIC_LIBS || !BR2_USE_WCHAR \
|| BR2_HOST_GCC_AT_LEAST_7