kumquat-buildroot/package/criu/Config.in
Marcus Folkesson 3e4b479f39 package/criu: new package
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.

Signed-off-by: Marcus Folkesson <marcus.folkesson@gmail.com>
[yann.morin.1998@free.fr:
  - BR2_ARM_CPU_ARMV8M does not exist
  - BR2_BR2_powerpc64le misspelled
  - move all arch dependencies to BR2_PACKAGE_CRIU_ARCH_SUPPORTS
  - comment hidden with arch dependencies
  - select host-python3, don't depend on it
  - extend legal-info: LPLG-2.1 for lib/, MIT for images/
  - PREFIX is also used at compile time for PLUGINDIR
  - copy .proto file, rather than symlinking
  - wrap long lines
]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2023-11-01 18:27:13 +01:00

54 lines
1.9 KiB
Plaintext

# 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
default y if BR2_aarch64
default y if BR2_i386
default y if BR2_mips
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_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, gcc >= 8, headers >= 4.18, 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_STATIC_LIBS || !BR2_USE_WCHAR