mirror of
https://github.com/ipfs/kubo.git
synced 2026-02-21 18:37:45 +08:00
* plumb through go-datastore context changes * update go-libp2p to v0.16.0 * use LIBP2P_TCP_REUSEPORT instead of IPFS_REUSEPORT * use relay config * making deprecation notice match the go-ipfs-config key * docs(config): circuit relay v2 * docs(config): fix links and headers * feat(config): Internal.Libp2pForceReachability This switches to config that supports setting and reading Internal.Libp2pForceReachability OptionalString flag * use configuration option for static relays * chore: go-ipfs-config v0.18.0 https://github.com/ipfs/go-ipfs-config/releases/tag/v0.18.0 * feat: circuit v1 migration prompt when Swarm.EnableRelayHop is set (#8559) * exit when Swarm.EnableRelayHop is set * docs: Experimental.ShardingEnabled migration This ensures existing users of global sharding experiment get notified that the flag no longer works + that autosharding happens automatically. For people who NEED to keep the old behavior (eg. have no time to migrate today) there is a note about restoring it with `UnixFSShardingSizeThreshold`. * chore: add dag-jose code to the cid command output * add support for setting automatic unixfs sharding threshold from the config * test: have tests use low cutoff for sharding to mimic old behavior * test: change error message to match the current error * test: Add automatic sharding/unsharding tests (#8547) * test: refactored naming in the sharding sharness tests to make more sense * ci: set interop test executor to convenience image for Go1.16 + Node * ci: use interop master Co-authored-by: Marcin Rataj <lidel@lidel.org> Co-authored-by: Marten Seemann <martenseemann@gmail.com> Co-authored-by: Marcin Rataj <lidel@lidel.org> Co-authored-by: Gus Eggert <gus@gus.dev> Co-authored-by: Lucas Molas <schomatis@gmail.com>
144 lines
3.7 KiB
Makefile
144 lines
3.7 KiB
Makefile
TGT_BIN :=
|
|
CLEAN :=
|
|
COVERAGE :=
|
|
DISTCLEAN :=
|
|
TEST :=
|
|
TEST_SHORT :=
|
|
GOCC ?= go
|
|
PROTOC ?= protoc
|
|
|
|
all: help # all has to be first defined target
|
|
.PHONY: all
|
|
|
|
include mk/git.mk # has to be before tarball.mk
|
|
include mk/tarball.mk
|
|
include mk/util.mk
|
|
include mk/golang.mk
|
|
|
|
# -------------------- #
|
|
# extra properties #
|
|
# -------------------- #
|
|
|
|
ifeq ($(TEST_NO_FUSE),1)
|
|
GOTAGS += nofuse
|
|
endif
|
|
export LIBP2P_TCP_REUSEPORT=false
|
|
|
|
# -------------------- #
|
|
# sub-files #
|
|
# -------------------- #
|
|
dir := bin
|
|
include $(dir)/Rules.mk
|
|
|
|
# tests need access to rules from plugin
|
|
dir := plugin
|
|
include $(dir)/Rules.mk
|
|
|
|
dir := test
|
|
include $(dir)/Rules.mk
|
|
|
|
dir := cmd/ipfs
|
|
include $(dir)/Rules.mk
|
|
|
|
# include this file only if coverage target is executed
|
|
# it is quite expensive
|
|
ifneq ($(filter coverage% clean distclean test/unit/gotest.junit.xml,$(MAKECMDGOALS)),)
|
|
# has to be after cmd/ipfs due to PATH
|
|
dir := coverage
|
|
include $(dir)/Rules.mk
|
|
endif
|
|
|
|
# -------------------- #
|
|
# universal rules #
|
|
# -------------------- #
|
|
|
|
%.pb.go: %.proto bin/protoc-gen-gogofaster
|
|
$(PROTOC) --gogofaster_out=. --proto_path=.:$(GOPATH)/src:$(dir $@) $<
|
|
|
|
# -------------------- #
|
|
# core targets #
|
|
# -------------------- #
|
|
|
|
build: $(TGT_BIN)
|
|
.PHONY: build
|
|
|
|
clean:
|
|
rm -rf $(CLEAN)
|
|
.PHONY: clean
|
|
|
|
coverage: $(COVERAGE)
|
|
.PHONY: coverage
|
|
|
|
distclean: clean
|
|
rm -rf $(DISTCLEAN)
|
|
git clean -ffxd
|
|
.PHONY: distclean
|
|
|
|
test: $(TEST)
|
|
.PHONY: test
|
|
|
|
test_short: $(TEST_SHORT)
|
|
.PHONY: test_short
|
|
|
|
deps:
|
|
.PHONY: deps
|
|
|
|
nofuse: GOTAGS += nofuse
|
|
nofuse: build
|
|
.PHONY: nofuse
|
|
|
|
install: cmd/ipfs-install
|
|
.PHONY: install
|
|
|
|
install_unsupported: install
|
|
@echo "/=======================================================================\\"
|
|
@echo '| |'
|
|
@echo '| `make install_unsupported` is deprecated, use `make install` instead. |'
|
|
@echo '| |'
|
|
@echo "\\=======================================================================/"
|
|
.PHONY: install_unsupported
|
|
|
|
uninstall:
|
|
$(GOCC) clean -i ./cmd/ipfs
|
|
.PHONY: uninstall
|
|
|
|
supported:
|
|
@echo "Currently supported platforms:"
|
|
@for p in ${SUPPORTED_PLATFORMS}; do echo $$p; done
|
|
.PHONY: supported
|
|
|
|
help:
|
|
@echo 'DEPENDENCY TARGETS:'
|
|
@echo ''
|
|
@echo ' deps - Download dependencies using bundled gx'
|
|
@echo ' test_sharness_deps - Download and build dependencies for sharness'
|
|
@echo ''
|
|
@echo 'BUILD TARGETS:'
|
|
@echo ''
|
|
@echo ' all - print this help message'
|
|
@echo ' build - Build binary at ./cmd/ipfs/ipfs'
|
|
@echo ' nofuse - Build binary with no fuse support'
|
|
@echo ' install - Build binary and install into $$GOPATH/bin'
|
|
# @echo ' dist_install - TODO: c.f. ./cmd/ipfs/dist/README.md'
|
|
@echo ''
|
|
@echo 'CLEANING TARGETS:'
|
|
@echo ''
|
|
@echo ' clean - Remove files generated by build'
|
|
@echo ' distclean - Remove files that are no part of a repository'
|
|
@echo ' uninstall - Remove binary from $$GOPATH/bin'
|
|
@echo ''
|
|
@echo 'TESTING TARGETS:'
|
|
@echo ''
|
|
@echo ' test - Run all tests'
|
|
@echo ' test_short - Run short go tests and short sharness tests'
|
|
@echo ' test_go_short - Run short go tests'
|
|
@echo ' test_go_test - Run all go tests'
|
|
@echo ' test_go_expensive - Run all go tests and compile on all platforms'
|
|
@echo ' test_go_race - Run go tests with the race detector enabled'
|
|
@echo ' test_go_lint - Run the `golangci-lint` vetting tool'
|
|
@echo ' test_sharness_short - Run short sharness tests'
|
|
@echo ' test_sharness_expensive - Run all sharness tests'
|
|
@echo ' coverage - Collects coverage info from unit tests and sharness'
|
|
@echo
|
|
.PHONY: help
|