1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- ################################################################################
- #
- # CRIU
- #
- ################################################################################
- CRIU_VERSION = 3.19
- CRIU_SITE = $(call github,checkpoint-restore,criu,v$(CRIU_VERSION))
- CRIU_LICENSE = GPL-2.0, LGPL-2.1 (for lib/), MIT (for images/)
- CRIU_LICENSE_FILES = COPYING images/LICENSE
- CRIU_DEPENDENCIES =\
- host-pkgconf \
- host-protobuf-c \
- host-python3 \
- host-python-pip \
- libaio \
- libbsd \
- libcap \
- libnet \
- libnl \
- protobuf \
- protobuf-c \
- python3
- CRIU_MAKE_ENV =\
- $(TARGET_MAKE_ENV) \
- $(TARGET_CONFIGURE_OPTS) \
- CROSS_COMPILE=$(TARGET_CROSS) \
- WERROR=0
- # Remap to match the used in criu.
- ifeq ($(BR2_NORMALIZED_ARCH),"x86_64")
- CRIU_MAKE_ENV += ARCH=x86
- else ifeq ($(BR2_NORMALIZED_ARCH),"powerpc")
- CRIU_MAKE_ENV += ARCH=ppc64
- else ifeq ($(BR2_NORMALIZED_ARCH),"arm64")
- CRIU_MAKE_ENV += ARCH=aarch64
- else
- CRIU_MAKE_ENV += ARCH=$(BR2_NORMALIZED_ARCH)
- endif
- ifeq ($(BR2_ARM_CPU_ARMV6),y)
- CRIU_MAKE_ENV += SUBARCH=armv6
- else ifeq ($(BR2_ARM_CPU_ARMV7A),y)
- CRIU_MAKE_ENV += SUBARCH=armv7
- else ifeq ($(BR2_ARM_CPU_ARMV7M),y)
- CRIU_MAKE_ENV += SUBARCH=armv7
- else ifeq ($(BR2_ARM_CPU_ARMV8A),y)
- CRIU_MAKE_ENV += SUBARCH=armv8
- endif
- # Criu needs Kernel Checkpoint/restore support which is not enabled
- # by default.
- define CRIU_LINUX_CONFIG_FIXUPS
- $(call KCONFIG_ENABLE_OPT,CONFIG_CHECKPOINT_RESTORE)
- endef
- define CRIU_BUILD_CMDS
- rm -rf $(@D)/images/google/protobuf/descriptor.proto
- cp -a $(STAGING_DIR)/usr/include/google/protobuf/descriptor.proto \
- $(@D)/images/google/protobuf/descriptor.proto
- $(CRIU_MAKE_ENV) $(MAKE) -C $(@D) \
- PREFIX=/usr
- endef
- define CRIU_INSTALL_TARGET_CMDS
- $(CRIU_MAKE_ENV) $(MAKE) -C $(@D) \
- PREFIX=/usr \
- DESTDIR=$(TARGET_DIR) \
- install-criu \
- install-lib \
- install-compel
- endef
- $(eval $(generic-package))
|