Following up #4225:
- Move clog into an external repository
- Update devtools Makefile.
- Add .clog.yaml file required by clog's latest version.
Closes: #4222
1. `make tools` will not updated `clog` when `clog/main.go` was changed,
except `${GOBIN}/clog` or `tools-stamp` was deleted. `gosum` has the
same problem.
2. $(GOBIN)/gosum was just like magic number.
Amend targets naming convention as per [1]:
- Switch from underscore '_' separated naming scheme to dash '-'
separated naming scheme.
- Replace test with check.
Simulations now live in their own Make module.
[1] https://www.gnu.org/prep/standards/html_node/Standard-Targets.html
{,scripts/}Makefile:
- Remove gometalinter, install golangci-lint.
- Remove distinction between tools and devtools.
Just tools is enough.
- test_lint -> lint
Migrating away from underscore separated names.
- Remove unnecessary targets.
- Drop tendermint/lint. Incompatbile with golangci-lint
and no longer necessary anyway.
- Fix misleading message in go-mod-cache.
- New ci-target to avoid download tools twice.
- Run tests with -mod=readonly.
Port tools/gometalinter.json to .golangci.yml
Update CircleCI config accordingly.
Closes: #3896