You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We are patching criu with the patches in the `patches/` folder.
32
+
We are patching criu with the patches in the `patch/` folder.
33
33
From time to time we will need to update the CRIU version in our CMakeLists.txt.
34
34
35
35
To make sure that everything works, you can clone criu in `/tmp/criu` via
@@ -42,25 +42,47 @@ Then ask the user which version they want to try to update criu-static to.
42
42
43
43
Once you have done that change the git commit to the version that the user wants to test.
44
44
45
-
Now apply the patches in `patches` one by one making sure that criu builds.
45
+
Now apply the patches in `patch` one by one making sure that criu builds.
46
46
47
47
To build criu, however you have to first obtain all the dependencies, but not any dependency. You want
48
48
the same dependencies that criu-static uses. criu-static patches criu to use CFLAGS and LDFLAGS
49
-
and other env variables instead of pkg-cinfig, you can inspect what it does by checking `CMakeLists.txt`
50
-
That `CMakeLists.txt` will output the env vars you have to use, it will become something like (paths might be wrong, double check, this was in a devcontainer!)
49
+
and other env variables instead of pkg-config, you can inspect what it does by checking `CMakeLists.txt`.
50
+
51
+
First build the dependencies by running `cmake --preset static-release` (this will fail at the CRIU step
52
+
if the version hasn't been updated yet, but all dependencies will be built).
53
+
54
+
The `CMakeLists.txt` configure step outputs the env vars you need. Look for these lines in the cmake output:
55
+
56
+
```
57
+
-- criu CFLAGS ...
58
+
-- criu LDFLAGS ...
59
+
-- criu PATH ...
60
+
```
61
+
62
+
Use those exact values. The full set of env vars that cmake passes to the CRIU make command is
63
+
(see the `ExternalProject_Add(criu ...)` section in `CMakeLists.txt`):
0 commit comments