mirror of
https://github.com/opencontainers/runc.git
synced 2026-07-11 06:03:57 +08:00
cc3c5c1655
go-criu v8.3.0 switches to protobuf-go-lite, which helps to remove
google.golang.org/protobuf dependency from here, reducing the runc
binary size from ~16M to ~14M.
The only missing piece is proto.String, proto.Bool, proto.Int32 etc.
helpers that return a pointer to a given variable. Those are replaced
by a generic mkPtr, which in turn is to be replaced by the new builtin
once Go < 1.26 is no longer supported.
Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
(cherry picked from commit f66ace4cfa)
Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
43 lines
827 B
Makefile
43 lines
827 B
Makefile
SHELL = /bin/bash
|
|
GO ?= go
|
|
CC ?= gcc
|
|
|
|
all: build
|
|
|
|
lint:
|
|
golangci-lint run ./...
|
|
|
|
build: rpc/rpc.pb.go stats/stats.pb.go
|
|
$(GO) build -v ./...
|
|
# Build crit binary
|
|
$(MAKE) -C crit bin/crit
|
|
|
|
test: build
|
|
$(MAKE) -C test
|
|
|
|
coverage:
|
|
$(MAKE) -C test coverage
|
|
|
|
rpc/rpc.proto:
|
|
curl -sSL https://raw.githubusercontent.com/checkpoint-restore/criu/master/images/rpc.proto -o $@
|
|
|
|
rpc/rpc.pb.go: rpc/rpc.proto
|
|
protoc --go-lite_out=. --go-lite_opt=M$^=rpc/ $^
|
|
|
|
stats/stats.proto:
|
|
curl -sSL https://raw.githubusercontent.com/checkpoint-restore/criu/master/images/stats.proto -o $@
|
|
|
|
stats/stats.pb.go: stats/stats.proto
|
|
protoc --go-lite_out=. --go-lite_opt=M$^=stats/ $^
|
|
|
|
vendor:
|
|
$(GO) mod tidy
|
|
$(GO) mod vendor
|
|
$(GO) mod verify
|
|
|
|
clean:
|
|
$(MAKE) -C crit/ clean
|
|
$(MAKE) -C test/ clean
|
|
|
|
.PHONY: build test lint vendor coverage clean
|