2
0
mirror of https://github.com/checkpoint-restore/criu synced 2025-08-22 01:51:51 +00:00

Keep images/google/protobuf directory

Commit 68f92b551 removed images/google/protobuf directory, so it is
re-created each time during the build process.

This resulted in a weird behavior change. Previously, one could do
something like this:

	git clone $CRURL criu
	(cd criu && sudo make install-criu)
	rm -rf criu

This worked fine, including running rm -rf as a non-root user, since no
new directories were created under criu -- all directories were still
owned by the original user.

Since commit 68f92b551 the same sequence fails:

	rm: cannot remove '/home/runner/criu/images/google/protobuf/descriptor.pb-c.c': Permission denied
	rm: cannot remove '/home/runner/criu/images/google/protobuf/descriptor.pb-c.d': Permission denied
	rm: cannot remove '/home/runner/criu/images/google/protobuf/descriptor.pb-c.h': Permission denied

A workaround is to keep empty images/google/protobuf directory,
which is what this commit does.

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
This commit is contained in:
Kir Kolyshkin 2025-07-22 22:44:50 -07:00 committed by Andrei Vagin
parent 3b242c9ac4
commit e9521d8e41
3 changed files with 4 additions and 5 deletions

2
.gitignore vendored
View File

@ -20,8 +20,6 @@ compel/compel
compel/compel-host-bin compel/compel-host-bin
images/*.c images/*.c
images/*.h images/*.h
images/google/protobuf/*.c
images/google/protobuf/*.h
.gitid .gitid
criu/criu criu/criu
criu/unittest/unittest criu/unittest/unittest

View File

@ -92,8 +92,7 @@ makefile-deps := Makefile $(obj)/Makefile
# #
# Generate descriptor.pb-c.c and descriptor.pb-c.h to compile opts.proto. # Generate descriptor.pb-c.c and descriptor.pb-c.h to compile opts.proto.
PROTOBUF_DIR := images/google DESCRIPTOR_DIR := images/google/protobuf
DESCRIPTOR_DIR := $(PROTOBUF_DIR)/protobuf
GOOGLE_INCLUDE=$(shell pkg-config protobuf --variable=includedir)/google/protobuf GOOGLE_INCLUDE=$(shell pkg-config protobuf --variable=includedir)/google/protobuf
$(DESCRIPTOR_DIR)/descriptor.pb-c.c: $(GOOGLE_INCLUDE)/descriptor.proto $(DESCRIPTOR_DIR)/descriptor.pb-c.c: $(GOOGLE_INCLUDE)/descriptor.proto
$(Q) echo "Generating descriptor.pb-c.c" $(Q) echo "Generating descriptor.pb-c.c"
@ -102,7 +101,7 @@ $(DESCRIPTOR_DIR)/descriptor.pb-c.c: $(GOOGLE_INCLUDE)/descriptor.proto
cleanup-y += $(DESCRIPTOR_DIR)/descriptor.pb-c.d cleanup-y += $(DESCRIPTOR_DIR)/descriptor.pb-c.d
submrproper: submrproper:
$(Q) rm -rf $(PROTOBUF_DIR) $(Q) rm -f $(DESCRIPTOR_DIR)/*
.PHONY: submrproper .PHONY: submrproper
mrproper: submrproper mrproper: submrproper

2
images/google/protobuf/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
*.c
*.h