summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBruce Ashfield <bruce.ashfield@gmail.com>2025-04-03 02:03:56 +0000
committerBruce Ashfield <bruce.ashfield@gmail.com>2025-04-03 17:56:53 +0000
commit33136f6c205b927db17a2db9fedfcb2e1339ae97 (patch)
tree14905db0024df857a95ffd5ce52674747bf42373
parent3971471c0506cd9c2c367217d52e13b398166902 (diff)
downloadmeta-virtualization-33136f6c205b927db17a2db9fedfcb2e1339ae97.tar.gz
criu: update to v4.1
Along with the new commits we adjust the following: - refreshed patches - pytoml fixes for crit plugin - debug prefix map for cuda Bumping criu to version v4.1, which comprises the following commits: b6059ff19 criu: Version 4.1 (CRISC-V) bc1415317 criu: fix log_keep_err signal deadlock 0f6470944 namespace: skip cleaning up the uid/gid map in error cases 6826ac58c ci: run tests on a nftables only system 700a8c4b5 ci: do not run tests requiring iptables if it is missing f22330ff0 test: print out logs if tests fail 29ccb5b62 test: others/rpc do not use nftables locking backend 95729ec32 docs: mark make commands with same format as elsewhere 2cd9d5ded docs: update INSTALL.md with a section about building CRIU 867c77303 make: allow setting the default network locking backend 720bf67e0 zdtm/vdso02: unmap vvar_vclock mappings 62a4a5874 vdso: correct data types for ELF hash table sizes b8553d19e test/zdtm: check that PAC keys are C/R-ed 8ae5db37b arm64: C/R PAC keys c5d46d86a restorer: Add a lock around cgroupd communication. 7748b3fe7 pstree: print clone flags in error message d85550157 vdso: Fixes in DT_GNU_HASH handling ed6374b48 lsm: use the user provided lsm label d35808f5e ci: update to latest actions for codeql CI job c298b51a6 scripts/uninstall_module: import signal module 38b9807cd coredump: enable coredump generation on arm da90b33a4 coredump: enable coredump generation on aarch64 030fa4aff criu: fix internal representation of cgroups hierarchical structure b7fa7d304 kerndat: run iptables with -n to not resolve service names 528c94c48 ci: install gawk for Fedora based tests d66bc3499 Makefile: move codespell options to .codespellrc 8a06ca27c vdso: switch from DT_HASH to DT_GNU_HASH (aarch64) 6710cfce1 zdtm/netns_sub_sysctl: add ipv4/ping_group_range sysctl check 4ca74b9af net/sysctl: c/r ipv4/ping_group_range value 9c40781c2 net/sysctl: put common multiplier outside the brackets d226bd4f6 ci: handle results from latest codespell e2dffcbc8 lib: do not set protobuf has_* field too early 82b03429b cuda: disable CUDA plugin for pre-dump 7f0d107fe seize: use separate checkpoint_devices function 02056bf41 cuda: prevent task lockup on timeout error f83931542 net: remember the name of the lock chain (nftables) 54795f174 criu: use libuuid for criu_run_id generation 815ef6884 ci: two check-commits.yml changes 061f4266e test/zdtm: add a new test to check non-periodic timers 09dc2e958 timer: Refine itimer_armed logic and improve timer value handling aad66a4f7 test: fix cmdlinenv00 on aarch64 2b7492480 files-reg: fix buffer overflow on aarch64 6fdac5081 seize: Adjust the position of the log message 97398068b net: redirect nftables stdout and stderr to CRIU's log file 6dce80c53 util: added cleanup_file attribute. 260c08418 zdtm: Check CapAmb is restored correctly after C/R 6f8efad30 cr: Task CapAmb support 94b9b3c5d freeze_processes: implement kludges for cgroup v1 82f4ecda6 freeze_processes: fix logic 99e1fbd8a criu/seize.c: clang-format it a8754905c test: run scm06 in the ns and uns flavors 15c81c126 test/java: increate the ghost file limit dc6cef0b4 cuda: Fix return value from CHECKPOINT_DEVICES hook so that dump's fail properly 8ee2eba47 vdso: handle vvar_vclock vma-s ed560a349 pidfd: add missing include 40b7f04b7 compel/arch/riscv64: properly implement compel_task_size() 399d7bdcb compel: fix gitignore and remove autogenerated code 21e5f4cfd test: add get-state to mocked cuda-checkpoint tool 28c2cb3fd cuda: enable checkpoint support for paused tasks 498bcf280 zdtm: Check many processes with common dead pidfd 7125bfc69 pidfd: one process creates a helper and opens all fds to it b1cac7a8e cuda: fix check for GPU device availability 36a53fe23 ci: test interrupt-only mode with frozen cgroup 4196268ee seize: enable support for frozen containers ff9dbef90 seize: fix error handling for check_freezer_cgroup 622b43392 criu: Initialize util before service worker starts 9052ef93c uffd: Disable image deduplication after fork 2be958d22 include: don't use GCC's __builtin_ffs on riscv64 da6b1807e ci: add workflow for riscv64 bb29067de zdtm: add riscv64 support 6d970ed04 criu: add riscv64 support to parasite and restorer 1d028ef44 images: add riscv64 core image 95359a62a compel: add riscv64 support d8f93e7ba include: add common header files for riscv64 c49eb18f9 pidfd: block SIGCHLD during tmp process creation 5ca440069 zdtm: add inventory test plugins 5335b35f7 images/inventory: add field for enabled plugins b524dab32 pycriu: fix lint errors 88aa7e2c1 make/lint: use 'ruff check <path>' f29e655df zdtm: Check pidfd for thread is valid after C/R 7a64004dc zdtm: Check fd from pidfd_getfd is C/Red correctly 2e6f34845 zdtm: Check dead pidfd is restored correctly 3f30ec0ed zdtm: Check pidfd can kill descendant processes 2899d4600 zdtm: Check pidfd can send signal after C/R 3096df9ea zdtm: Check pidfd fdinfo entry is consistent 1ce408ffa criu: Support C/R of pidfds 3322d1e94 images: Add protobuf definition for pidfd 4f8f6f288 Makefile.config: set CR_PLUGIN_DEFAULT variable f1d465448 amdgpu: remove exec permissions on source files c2b48ff42 criu: Version 4.0 (CRIUDA) a8cbe76d4 util: dump fsfd log messages 096c1f7a4 plugins/amdgpu - Increase maximum parameter length 60ee5ebd9 plugins/amdgpu: Zero ib_info on initialization 691899889 plugin/cuda: disable CUDA plugin if /dev/nvidiactl isn't present e1331a4b6 fault: allow to check dont_use_freeze_cgroup 651df375b criu: Allow disabling freeze cgroups 59f49c627 codespell: fix typos edb6fbb82 scripts/uninstall_module: fix package discovery b1b3c14b1 cuda: unlock on timeout error dbfa45024 ci: run aarch64 tests native via actuated 8beac656f coredump: fail on unsupported architectures early d44fc0de5 test: only run macvlan tests if macvlan devices can be created 01c65732b test: better test for SELinux tools 615ccf98c crit: do not crash on aarch64 doing 'crit x ./ rss' 21ea718f9 plugins/amdgpu: fix printf format specifiers 3e2ed1879 plugins/amdgpu: use C99-standard types d68205e91 ci: enable cross compile testing for amdgpu-plugin 2ee584441 plugins/amdgpu: fix cross-compilation 9a19cf34d scripts/ci: run tests with the mocked cuda-checkpoint tool de31abb97 criu/plugin: don't call plugin device hooks for non-alive tasks dea630591 test/zdtm: allow to run tests with the mocked cuda-checkpoint tool 67fe44e98 support user set remote mmap vma address 551cd9244 timer: fix printf specifiers for __suseconds64_t a045c874c ci: run tests with amdgpu and cuda plugins 2453ed69a zdtm: add option to run tests with criu plugins ad66c27a1 cuda: fix launch cuda-checkpoint fde0b7ac6 cuda: don't leak fds to cuda-checkpoint 4dde52a30 ci/podman: show mounts 9a85fb638 ci/podman: show criu logs in case of error 8437663cc delete redundant include header files c42b58f4f plugin: enable multiple plugins for the same hook 85050be66 seize: fix pause-devices plugin hook 21108b40d test/zdtm: mount a new tmpfs to the zdtm root /dev fcbadfbdb plugins: set executable bit on .so files 5783706d5 docs: update amdgpu-plugin man page 089345f77 Adjust to glibc __rseq_size semantic change b9081ca56 zdtm: make cgroup testcases run non-parallel 4f45572fd util: use close_range when it's supported 42b177da6 scripts/build: drop centos 7 targets 181583819 vdso: proxify the __vdso_clock_gettime64 function ac22aaf57 apparmor: get_suspend_policy must return NULL in error cases 71999d888 cgroupd: unblock SIGTERM to make stop_cgroupd actually work daed6c353 irmap: duplicate string in irmap_scan_path_add b169e3b63 plugins/cuda: fix crosscompilation ca971b7f8 compel: fix build on Amazon Linux 2 due to missing PTRACE_ARCH_PRCTL bf417dd05 criu/plugin: Add NVIDIA CUDA plugin 5f486d5ae criu/plugin: Introduce new plugin hooks PAUSE_DEVICES and CHECKPOINT_DEVICES to be used during pstree collection 1012e542e criu: Restore rseq_cs state slightly earlier in the restore sequence and run the plugin finalizer later in the dump sequence 7ac453706 readme: update link to FAQ page 4f15fe8c5 make: improve check for externally managed Python fdf546dbd ci: upgrade to Fedora 40 Vagrant images (38 is EOL) f17164926 test/dump-crash: check code path when dump crashes a252a240c zdtm: Distinguish between fail and crash of dump 6feb57a84 ci: remove CentOS Stream 8 test (EOL) 1da29f27f zdtm: add support for LD_PRELOAD tests e7276cf63 pagemap-cache: handle short reads cc88b1e1f net: Fix TOCTOU race condition in unix_conf_op 457bc6a8f criu: use proper format-specified to accommodate time_t 64-bit change 95f66d13d criu: move sigact dump/restore code into sigact.c 9c8a6927a ci: update check for SELinux b3c3422cd test/make: remove unused target 30aa8dbe4 mount: fix unbounded write 708f872a6 sk-tcp: Add test cases for TCP_CORK and TCP_NODELAY socket options 9ba9aff77 sk-tcp: Move TCP socket options from SkOptsEntry to TcpOptsEntry 1cb75c0b1 sk-tcp: Move TCP socket options from TcpStreamEntry to TcpOptsEntry 13854a988 criu: fix a fatal failure if nft doesn't work df178c7e5 sk-tcp: cleanup dump_tcp_conn_state error handling 4607b5356 mem: optimize debug logging of enqueued pages f4290868b ci/vdso01: fix typo e68a06cfd ci: update actions/checkout to v4 5aaf45021 ci: update base OS to ubuntu 22.04 1c2a3d7fa check: verify ino and dev of overlayfs files in /proc/pid/maps e07ffa04b Makefile.config: fix/improve feature warnings. af4058871 timer: fix wrapping allignment in function declaration 0fc83a79b ci: silence CircleCI warning about deprecated image 52623cca1 criu: move timers dump/restore code into separate file 231ba0cd2 zdtm/sched_policy00: use reset-on-fork flag 75fed59ef Add support for reset-on-fork scheduling flag 8f0e200e6 mem: fix some VMAs being incorrectly mapped wtih PROT_WRITE a2b018a18 ci: try to fix broken docker test a48aa33ea restorer: shstk: implement shadow stack restore 7dd583002 restore: add infrastructure to enable shadow stack f47899c9e criu: kerndat: add kdat_has_shstk() 2ebd1a4f0 criu: shstk: prepare shadow stack parameters for restorer blob 4b6dda7ec criu: shstk: premap and prepopulate shadow stack VMAs 17eda3ce5 criu: shstk: add VMA_AREA_SHSTK flag 0aba3dcfa compel: shstk: prepare shadow stack signal frame 63a45e1c8 compel: infect: prepare parasite_service() for addition of CET support 6e491a19a compel: shstk: save CET state when CPU supports it 17f4dd095 compel: always pass user_fpregs_struct_t to compel_get_task_regs() 0b8c51eaa compiler: add ALIGN_DOWN macro f590c2b63 zdtm/static: check that cgroup layout of threads is preserved a0a6ec3dc cgroup: Add support for restoring a thread in a correct v1 cgroup 835afb1b8 criu-ns: fix lint error e0b74f558 make: replace flake8 with ruff 7fd4a15e6 pb2dict: fix flake8 error e0f91e66e kerndat: check support for PAGE_IS_SOFT_DIRTY a808f09be amdgpu_plugin: fix lint errors bd17bd43e sk-inet: fix codding style in restore_ip_opts 895a16c13 zdtm: Added tests for IP_TTL restore 71102e7f7 sk-inet: Added IP_TTL socket option 0d5923c95 amdgpu_plugin: Refactor code used to implement Checkpoint 733ef9631 amdgpu_plugin: Refactor code in preparation to support C&R for DRM devices b689a6710 plugin/amdgpu: Also don't print 'plugin failed' in criu 59599dacd plugin/amdgpu: Don't print error for "No such process" during resume 92e8f9293 net: return bool with iptable_has_criu_jump_target a62f82730 criu-log: remove unused declaration d2511707f zdtm: socket-tcp-nft-nfconntrack: add a hook to the chain in nft case afc0efcf7 pagemap-cache: add an ability to run tests without PAGEMAP_SCAN cb64d73ad page-cache: use the PAGEMAP_SCAN ioctl when it is available 20628bc8a kerndat: check the PAGEMAP_SCAN ioctl 842289c7e net: add error messages for restore of nftables d94251df7 test/nfconntrack: use nft or iptables-legacy 0ab2f9e97 net: fix network unlock with iptables-nft d9c427d70 irmap: hardcode some more interesting paths b419f3dfd make: fix compilation on alpine 7b689b7a4 gitignore: remove historical left-over files 2d1f4ec71 ci: disable non-root in user namespace test in container fe8f5130c ci: fix centos-stream 9 ci errors 6679d60ff ci: do not use 'tail' for skip-file-rwx-check test f86f1b849 tty: skip ioctl(TIOCSLCKTRMIOS) if possible 8a51639e3 Makefile: Use common warnings settings for loongarch64 37d62fa47 docker-test: downgrade docker to v24.0.7 1004625fa docker-test: fix condition for max tries 088390ea8 ci: switch to permissive selinux mode during test 900909d95 test: check for btrfs in the current directory fc94b2d15 ci: fix rawhide netlink error 9f9737c80 comple: correct the syscall number of bind on ARM64 f8b14286b criu: Version 3.19 (Bronze Peacock) Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
-rw-r--r--recipes-containers/criu/criu_git.bb10
-rw-r--r--recipes-containers/criu/files/0001-crit-explicity-set-PEP517_SOURCE_PATH.patch32
-rw-r--r--recipes-containers/criu/files/0001-criu-Skip-documentation-install.patch15
-rw-r--r--recipes-containers/criu/files/0001-plugins-cuda-pass-DEBUG_PREFIX_MAP.patch31
-rw-r--r--recipes-containers/criu/files/0003-crit-pycriu-build-and-install-wheels.patch62
-rw-r--r--recipes-containers/criu/files/0005-pycriu-skip-dependency-check-during-build.patch26
6 files changed, 110 insertions, 66 deletions
diff --git a/recipes-containers/criu/criu_git.bb b/recipes-containers/criu/criu_git.bb
index 811eb7e3..8a7b5ad3 100644
--- a/recipes-containers/criu/criu_git.bb
+++ b/recipes-containers/criu/criu_git.bb
@@ -13,15 +13,17 @@ EXCLUDE_FROM_WORLD = "1"
13 13
14LIC_FILES_CHKSUM = "file://COPYING;md5=412de458544c1cb6a2b512cd399286e2" 14LIC_FILES_CHKSUM = "file://COPYING;md5=412de458544c1cb6a2b512cd399286e2"
15 15
16SRCREV = "f8b14286b092853a4485813e1efd564109df9123" 16SRCREV = "b6059ff193a9b0dff98e997134d662c3ccfd1600"
17PV = "3.19.0+git" 17PV = "4.1+git"
18 18
19SRC_URI = "git://github.com/checkpoint-restore/criu.git;branch=master;protocol=https \ 19SRC_URI = "git://github.com/checkpoint-restore/criu.git;branch=master;protocol=https \
20 file://0001-criu-Skip-documentation-install.patch \ 20 file://0001-criu-Skip-documentation-install.patch \
21 file://0002-criu-Change-libraries-install-directory.patch \ 21 file://0002-criu-Change-libraries-install-directory.patch \
22 file://0003-crit-pycriu-build-and-install-wheels.patch \ 22 file://0003-crit-pycriu-build-and-install-wheels.patch \
23 file://0004-pycriu-attr-pycriu.version.__version__.patch \ 23 file://0004-pycriu-attr-pycriu.version.__version__.patch \
24 file://0005-pycriu-skip-dependency-check-during-build.patch \ 24 file://0005-pycriu-skip-dependency-check-during-build.patch \
25 file://0001-crit-explicity-set-PEP517_SOURCE_PATH.patch \
26 file://0001-plugins-cuda-pass-DEBUG_PREFIX_MAP.patch \
25 " 27 "
26 28
27COMPATIBLE_HOST = "(x86_64|arm|aarch64).*-linux" 29COMPATIBLE_HOST = "(x86_64|arm|aarch64).*-linux"
@@ -75,6 +77,7 @@ do_compile:prepend() {
75} 77}
76 78
77do_compile () { 79do_compile () {
80 export DEBUG_PREFIX_MAP="${DEBUG_PREFIX_MAP}"
78 oe_runmake FULL_PYTHON=${PYTHON} PYTHON=nativepython3 81 oe_runmake FULL_PYTHON=${PYTHON} PYTHON=nativepython3
79} 82}
80 83
@@ -83,6 +86,7 @@ do_install () {
83 export PEP517_WHEEL_PATH="${PEP517_WHEEL_PATH}" 86 export PEP517_WHEEL_PATH="${PEP517_WHEEL_PATH}"
84 export USRBINPATH="${USRBINPATH}" 87 export USRBINPATH="${USRBINPATH}"
85 export PEP517_INSTALL_PYTHON="${PEP517_INSTALL_PYTHON}" 88 export PEP517_INSTALL_PYTHON="${PEP517_INSTALL_PYTHON}"
89
86 oe_runmake PREFIX=${exec_prefix} LIBDIR=${libdir} DESTDIR="${D}" PLUGINDIR="${localstatedir}/lib" FULL_PYTHON=${PYTHON} PYTHON=nativepython3 install 90 oe_runmake PREFIX=${exec_prefix} LIBDIR=${libdir} DESTDIR="${D}" PLUGINDIR="${localstatedir}/lib" FULL_PYTHON=${PYTHON} PYTHON=nativepython3 install
87 91
88 # python3's distutils has a feature of rewriting the interpeter on setup installed 92 # python3's distutils has a feature of rewriting the interpeter on setup installed
diff --git a/recipes-containers/criu/files/0001-crit-explicity-set-PEP517_SOURCE_PATH.patch b/recipes-containers/criu/files/0001-crit-explicity-set-PEP517_SOURCE_PATH.patch
new file mode 100644
index 00000000..ee37bc81
--- /dev/null
+++ b/recipes-containers/criu/files/0001-crit-explicity-set-PEP517_SOURCE_PATH.patch
@@ -0,0 +1,32 @@
1From 0af358f8ae5e671d78e3de32a2d26bb3cf2c23f8 Mon Sep 17 00:00:00 2001
2From: Bruce Ashfield <bruce.ashfield@gmail.com>
3Date: Thu, 3 Apr 2025 17:08:01 +0000
4Subject: [PATCH] crit: explicity set PEP517_SOURCE_PATH
5
6Similarly to the ./lib build, we need to explicitly set
7this to avoid pyproject.toml errors during the build (the
8project file cannot be found)
9
10Upstream-Status: Inappropriate [oe specific]
11
12Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
13---
14 crit/Makefile | 3 +++
15 1 file changed, 3 insertions(+)
16
17diff --git a/crit/Makefile b/crit/Makefile
18index 90f0ee635..329c7e85c 100644
19--- a/crit/Makefile
20+++ b/crit/Makefile
21@@ -1,5 +1,8 @@
22 VERSION_FILE := $(if $(obj),$(addprefix $(obj)/,crit/version.py),crit/version.py)
23
24+PEP517_SOURCE_PATH := ./crit
25+PEP517_BUILD_OPTS :=
26+
27 all-y += ${VERSION_FILE}
28 cleanup-y += ${VERSION_FILE}
29
30--
312.43.0
32
diff --git a/recipes-containers/criu/files/0001-criu-Skip-documentation-install.patch b/recipes-containers/criu/files/0001-criu-Skip-documentation-install.patch
index dd33b1bd..39cbd1ef 100644
--- a/recipes-containers/criu/files/0001-criu-Skip-documentation-install.patch
+++ b/recipes-containers/criu/files/0001-criu-Skip-documentation-install.patch
@@ -12,12 +12,12 @@ Signed-off-by: Jianchuan Wang <jianchuan.wang@windriver.com>
12 Makefile.install | 2 +- 12 Makefile.install | 2 +-
13 1 file changed, 1 insertion(+), 1 deletion(-) 13 1 file changed, 1 insertion(+), 1 deletion(-)
14 14
15diff --git a/Makefile.install b/Makefile.install 15Index: git/Makefile.install
16index aafb95469..1b02b70af 100644 16===================================================================
17--- a/Makefile.install 17--- git.orig/Makefile.install
18+++ b/Makefile.install 18+++ git/Makefile.install
19@@ -30,7 +30,7 @@ export PREFIX BINDIR SBINDIR MANDIR RUNDIR 19@@ -53,7 +53,7 @@
20 export LIBDIR INCLUDEDIR LIBEXECDIR PLUGINDIR 20 export SKIP_PIP_INSTALL PIPFLAGS
21 21
22 install-man: 22 install-man:
23- $(Q) $(MAKE) -C Documentation install 23- $(Q) $(MAKE) -C Documentation install
@@ -25,6 +25,3 @@ index aafb95469..1b02b70af 100644
25 .PHONY: install-man 25 .PHONY: install-man
26 26
27 install-lib: lib 27 install-lib: lib
28--
292.25.1
30
diff --git a/recipes-containers/criu/files/0001-plugins-cuda-pass-DEBUG_PREFIX_MAP.patch b/recipes-containers/criu/files/0001-plugins-cuda-pass-DEBUG_PREFIX_MAP.patch
new file mode 100644
index 00000000..0ccd6989
--- /dev/null
+++ b/recipes-containers/criu/files/0001-plugins-cuda-pass-DEBUG_PREFIX_MAP.patch
@@ -0,0 +1,31 @@
1From 816cad363c3c17636d8c6424578c3c70f0e87624 Mon Sep 17 00:00:00 2001
2From: Bruce Ashfield <bruce.ashfield@gmail.com>
3Date: Thu, 3 Apr 2025 17:48:44 +0000
4Subject: [PATCH] plugins/cuda: pass DEBUG_PREFIX_MAP
5
6If we don't explicitly pass the debug prefix map to the build
7QA errors result in the debug package (host path).
8
9Upstream-Status: Inappropriate [OE-Specific]
10
11Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
12---
13 plugins/cuda/Makefile | 2 +-
14 1 file changed, 1 insertion(+), 1 deletion(-)
15
16diff --git a/plugins/cuda/Makefile b/plugins/cuda/Makefile
17index cc3d98ac9..aac9027a7 100644
18--- a/plugins/cuda/Makefile
19+++ b/plugins/cuda/Makefile
20@@ -19,7 +19,7 @@ all: $(DEPS_CUDA)
21
22 cuda_plugin.so: cuda_plugin.c
23 $(call msg-gen, $@)
24- $(Q) $(CC) $(PLUGIN_CFLAGS) $(shell $(COMPEL) includes) $^ -o $@ $(PLUGIN_INCLUDE) $(PLUGIN_LDFLAGS)
25+ $(Q) $(CC) $(PLUGIN_CFLAGS) $(DEBUG_PREFIX_MAP) $(shell $(COMPEL) includes) $^ -o $@ $(PLUGIN_INCLUDE) $(PLUGIN_LDFLAGS)
26
27 clean:
28 $(call msg-clean, $@)
29--
302.43.0
31
diff --git a/recipes-containers/criu/files/0003-crit-pycriu-build-and-install-wheels.patch b/recipes-containers/criu/files/0003-crit-pycriu-build-and-install-wheels.patch
index 0796bb24..c9c4b9b9 100644
--- a/recipes-containers/criu/files/0003-crit-pycriu-build-and-install-wheels.patch
+++ b/recipes-containers/criu/files/0003-crit-pycriu-build-and-install-wheels.patch
@@ -15,38 +15,26 @@ Signed-off-by: Tim Orling <tim.orling@konsulko.com>
15 lib/Makefile | 11 +++++++++-- 15 lib/Makefile | 11 +++++++++--
16 2 files changed, 15 insertions(+), 4 deletions(-) 16 2 files changed, 15 insertions(+), 4 deletions(-)
17 17
18diff --git a/crit/Makefile b/crit/Makefile 18Index: git/crit/Makefile
19index 9a856db6d..9b36f4be1 100644 19===================================================================
20--- a/crit/Makefile 20--- git.orig/crit/Makefile
21+++ b/crit/Makefile 21+++ git/crit/Makefile
22@@ -1,5 +1,7 @@ 22@@ -8,8 +8,10 @@
23 PYTHON_EXTERNALLY_MANAGED := $(shell $(PYTHON) -c 'import os, sysconfig; print(int(os.path.isfile(os.path.join(sysconfig.get_path("stdlib"), "EXTERNALLY-MANAGED"))))')
24 PIP_BREAK_SYSTEM_PACKAGES := 0
25+PEP517_SOURCE_PATH := ./crit
26+PEP517_BUILD_OPTS :=
27
28 VERSION_FILE := $(if $(obj),$(addprefix $(obj)/,crit/version.py),crit/version.py)
29 23
30@@ -16,11 +18,13 @@ ifeq ($(PIP_BREAK_SYSTEM_PACKAGES),0) 24 install: ${VERSION_FILE}
31 $(E) " Consider using PIP_BREAK_SYSTEM_PACKAGES=1 make install" 25 ifeq ($(SKIP_PIP_INSTALL),0)
32 else
33 $(E) " INSTALL " crit
34- $(Q) $(PYTHON) -m pip install --upgrade --ignore-installed --prefix=$(DESTDIR)$(PREFIX) ./crit
35+ $(Q) $(PYTHON) -m build --no-isolation --wheel --outdir $(PEP517_WHEEL_PATH) $(PEP517_SOURCE_PATH) $(PEP517_BUILD_OPTS)
36 endif
37 else
38+ $(E) " BUILD " crit 26+ $(E) " BUILD " crit
39+ $(Q) $(PYTHON) -m build --no-isolation --wheel --outdir $(PEP517_WHEEL_PATH) $(PEP517_SOURCE_PATH) $(PEP517_BUILD_OPTS) 27+ $(Q) $(PYTHON) -m build --no-isolation --wheel --outdir $(PEP517_WHEEL_PATH) $(PEP517_SOURCE_PATH) $(PEP517_BUILD_OPTS)
40 $(E) " INSTALL " crit 28 $(E) " INSTALL " crit
41- $(Q) $(PYTHON) -m pip install --upgrade --ignore-installed --prefix=$(DESTDIR)$(PREFIX) ./crit 29- $(Q) $(PYTHON) -m pip install $(PIPFLAGS) --prefix=$(DESTDIR)$(PREFIX) ./crit
42+ $(Q) $(PYTHON) -m installer $(INSTALL_WHEEL_COMPILE_BYTECODE) --interpreter "$(USRBINPATH)/env $(PEP517_INSTALL_PYTHON)" --destdir=$(DESTDIR) $(PEP517_WHEEL_PATH)/crit-*.whl 30+ $(Q) $(PYTHON) -m installer $(INSTALL_WHEEL_COMPILE_BYTECODE) --interpreter "$(USRBINPATH)/env $(PEP517_INSTALL_PYTHON)" --destdir=$(DESTDIR) $(PEP517_WHEEL_PATH)/crit-*.whl
31 else
32 $(E) " SKIP INSTALL crit"
43 endif 33 endif
44 .PHONY: install 34Index: git/lib/Makefile
45 35===================================================================
46diff --git a/lib/Makefile b/lib/Makefile 36--- git.orig/lib/Makefile
47index ae371e78e..b5f147482 100644 37+++ git/lib/Makefile
48--- a/lib/Makefile
49+++ b/lib/Makefile
50@@ -1,6 +1,9 @@ 38@@ -1,6 +1,9 @@
51 CRIU_SO := libcriu.so 39 CRIU_SO := libcriu.so
52 CRIU_A := libcriu.a 40 CRIU_A := libcriu.a
@@ -57,21 +45,15 @@ index ae371e78e..b5f147482 100644
57 45
58 all-y += lib-c lib-a lib-py 46 all-y += lib-c lib-a lib-py
59 47
60@@ -63,11 +66,15 @@ ifeq ($(PIP_BREAK_SYSTEM_PACKAGES),0) 48@@ -55,8 +58,10 @@
61 $(E) " Consider using PIP_BREAK_SYSTEM_PACKAGES=1 make install" 49 $(Q) sed -e 's,@version@,$(CRIU_VERSION),' -e 's,@libdir@,$(LIBDIR),' -e 's,@includedir@,$(dir $(INCLUDEDIR)/criu/),' lib/c/criu.pc.in > lib/c/criu.pc
62 else 50 $(Q) install -m 644 lib/c/criu.pc $(DESTDIR)$(LIBDIR)/pkgconfig
63 $(E) " INSTALL " pycriu 51 ifeq ($(SKIP_PIP_INSTALL),0)
64- $(Q) $(PYTHON) -m pip install --upgrade --ignore-installed --prefix=$(DESTDIR)$(PREFIX) ./lib
65+ $(Q) $(PYTHON) -m build --no-isolation --wheel --outdir $(PEP517_WHEEL_PATH) $(PEP517_SOURCE_PATH) $(PEP517_BUILD_OPTS)
66 endif
67 else
68+ $(E) " BUILD " pycriu 52+ $(E) " BUILD " pycriu
69+ $(Q) $(PYTHON) -m build --no-isolation --wheel --outdir $(PEP517_WHEEL_PATH) $(PEP517_SOURCE_PATH) $(PEP517_BUILD_OPTS) 53+ $(Q) $(PYTHON) -m build --no-isolation --wheel --outdir $(PEP517_WHEEL_PATH) $(PEP517_SOURCE_PATH) $(PEP517_BUILD_OPTS)
70 $(E) " INSTALL " pycriu 54 $(E) " INSTALL " pycriu
71- $(Q) $(PYTHON) -m pip install --upgrade --ignore-installed --prefix=$(DESTDIR)$(PREFIX) ./lib 55- $(Q) $(PYTHON) -m pip install $(PIPFLAGS) --prefix=$(DESTDIR)$(PREFIX) ./lib
72+ #nativepython3 -m installer ${INSTALL_WHEEL_COMPILE_BYTECODE} --interpreter "${USRBINPATH}/env ${PEP517_INSTALL_PYTHON}" --destdir=${D} ${PEP517_WHEEL_PATH}/*.whl 56+ $(Q) $(PYTHON) -m build --no-isolation --wheel --outdir $(PEP517_WHEEL_PATH) $(PEP517_SOURCE_PATH) $(PEP517_BUILD_OPTS)
73+ 57 else
74+ $(Q) $(PYTHON) -m installer $(INSTALL_WHEEL_COMPILE_BYTECODE) --interpreter "$(USRBINPATH)/env $(PEP517_INSTALL_PYTHON)" --destdir=$(DESTDIR) $(PEP517_WHEEL_PATH)/pycriu-*.whl 58 $(E) " SKIP INSTALL pycriu"
75 endif 59 endif
76 .PHONY: install
77
diff --git a/recipes-containers/criu/files/0005-pycriu-skip-dependency-check-during-build.patch b/recipes-containers/criu/files/0005-pycriu-skip-dependency-check-during-build.patch
index 88872911..77c6c3e6 100644
--- a/recipes-containers/criu/files/0005-pycriu-skip-dependency-check-during-build.patch
+++ b/recipes-containers/criu/files/0005-pycriu-skip-dependency-check-during-build.patch
@@ -12,21 +12,19 @@ Signed-off-by: Tim Orling <tim.orling@konsulko.com>
12 lib/Makefile | 4 ++-- 12 lib/Makefile | 4 ++--
13 1 file changed, 2 insertions(+), 2 deletions(-) 13 1 file changed, 2 insertions(+), 2 deletions(-)
14 14
15diff --git a/lib/Makefile b/lib/Makefile 15Index: git/lib/Makefile
16index b5f147482..e3faa7a06 100644 16===================================================================
17--- a/lib/Makefile 17--- git.orig/lib/Makefile
18+++ b/lib/Makefile 18+++ git/lib/Makefile
19@@ -66,11 +66,11 @@ ifeq ($(PIP_BREAK_SYSTEM_PACKAGES),0) 19@@ -59,9 +59,9 @@
20 $(E) " Consider using PIP_BREAK_SYSTEM_PACKAGES=1 make install" 20 $(Q) install -m 644 lib/c/criu.pc $(DESTDIR)$(LIBDIR)/pkgconfig
21 else 21 ifeq ($(SKIP_PIP_INSTALL),0)
22 $(E) " INSTALL " pycriu
23- $(Q) $(PYTHON) -m build --no-isolation --wheel --outdir $(PEP517_WHEEL_PATH) $(PEP517_SOURCE_PATH) $(PEP517_BUILD_OPTS)
24+ $(Q) $(PYTHON) -m build --no-isolation --wheel --skip-dependency-check --outdir $(PEP517_WHEEL_PATH) $(PEP517_SOURCE_PATH) $(PEP517_BUILD_OPTS)
25 endif
26 else
27 $(E) " BUILD " pycriu 22 $(E) " BUILD " pycriu
28- $(Q) $(PYTHON) -m build --no-isolation --wheel --outdir $(PEP517_WHEEL_PATH) $(PEP517_SOURCE_PATH) $(PEP517_BUILD_OPTS) 23- $(Q) $(PYTHON) -m build --no-isolation --wheel --outdir $(PEP517_WHEEL_PATH) $(PEP517_SOURCE_PATH) $(PEP517_BUILD_OPTS)
29+ $(Q) $(PYTHON) -m build --no-isolation --wheel --skip-dependency-check --outdir $(PEP517_WHEEL_PATH) $(PEP517_SOURCE_PATH) $(PEP517_BUILD_OPTS) 24+ $(Q) $(PYTHON) -m build --no-isolation --wheel --skip-dependency-check --outdir $(PEP517_WHEEL_PATH) $(PEP517_SOURCE_PATH) $(PEP517_BUILD_OPTS)
30 $(E) " INSTALL " pycriu 25 $(E) " INSTALL " pycriu
31 #nativepython3 -m installer ${INSTALL_WHEEL_COMPILE_BYTECODE} --interpreter "${USRBINPATH}/env ${PEP517_INSTALL_PYTHON}" --destdir=${D} ${PEP517_WHEEL_PATH}/*.whl 26- $(Q) $(PYTHON) -m build --no-isolation --wheel --outdir $(PEP517_WHEEL_PATH) $(PEP517_SOURCE_PATH) $(PEP517_BUILD_OPTS)
32 27+ $(Q) $(PYTHON) -m build --no-isolation --wheel --skip-dependency-check --outdir $(PEP517_WHEEL_PATH) $(PEP517_SOURCE_PATH) $(PEP517_BUILD_OPTS)
28 else
29 $(E) " SKIP INSTALL pycriu"
30 endif