In this commit, we remove the dep section as we no longer use it, and instead use go modues.
4.7 KiB
Makefile
To build, verify, and install lnd
from source, use the following
commands:
make
make check
make install
Developers
This document specifies all commands available from lnd
's Makefile
.
The commands included handle:
- Installation of all go-related dependencies.
- Compilation and installation of
lnd
andlncli
. - Compilation and installation of
btcd
andbtcctl
. - Running unit and integration suites.
- Testing, debugging, and flake hunting.
- Formatting and linting.
Commands
all
btcd
build
check
clean
default
dep
flake-unit
flakehunter
fmt
install
itest
lint
list
rpc
scratch
travis
unit
unit-cover
unit-race
all
Compiles, tests, and installs lnd
and lncli
. Equivalent to
scratch
check
install
.
btcd
Ensures that github.com/Masterminds/glide
is installed, and
that the github.com/btcsuite/btcd
repository is checked out
locally. Lastly, installs the version of
github.com/btcsuite/btcd
specified in Gopkg.toml
build
Compiles the current source and vendor trees, creating ./lnd
and
./lncli
.
check
Installs the version of github.com/btcsuite/btcd
specified
in Gopkg.toml
, then runs the unit tests followed by the integration
tests.
clean
Removes compiled versions of both ./lnd
and ./lncli
, and removes the
vendor
tree.
default
Alias for scratch
.
flake-unit
Runs the unit test endlessly until a failure is detected.
Arguments:
pkg=<package>
case=<testcase>
timeout=<timeout>
Related: unit
flakehunter
Runs the itegration test suite endlessly until a failure is detected.
Arguments:
icase=<itestcase>
timeout=<timeout>
Related: itest
fmt
Runs go fmt
on the entire project.
install
Copies the compiled lnd
and lncli
binaries into $GOPATH/bin
.
itest
Installs the version of github.com/btcsuite/btcd
specified in
Gopkg.toml
, builds the ./lnd
and ./lncli
binaries, then runs the
integration test suite.
Arguments:
icase=<itestcase>
timeout=<timeout>
lint
Ensures that gopkg.in/alecthomas/gometalinter.v1
is
installed, then lints the project.
list
Lists all known make targets.
rpc
Compiles the lnrpc
proto files.
scratch
Compiles all dependencies and builds the ./lnd
and ./lncli
binaries.
Equivalent to lint
dep
btcd
unit-race
.
travis
Note: This must be run with either RACE=true
or RACE=false
.
RACE=true
runslint
scratch
btcd
unit-race
.RACE=false
runslint
scratch
itest
unit-cover
. Afterwards,github.com/mattn/goveralls
is installed, and the coverage stats are uploaded to coveralls.io.
unit
Runs the unit test suite. By default, this will run all known unit tests.
Arguments:
pkg=<package>
case=<testcase>
timeout=<timeout>
log="stdlog[ <log-level>]"
prints logs to stdout<log-level>
can beinfo
(default),debug
,trace
,warn
,error
,critical
, oroff
unit-cover
Runs the unit test suite with test coverage, compiling the statisitics in
profile.cov
.
Arguments:
pkg=<package>
case=<testcase>
timeout=<timeout>
log="stdlog[ <log-level>]"
prints logs to stdout<log-level>
can beinfo
(default),debug
,trace
,warn
,error
,critical
, oroff
Related: unit
unit-race
Runs the unit test suite with go's race detector.
Arguments:
pkg=<package>
case=<testcase>
timeout=<timeout>
log="stdlog[ <log-level>]"
prints logs to stdout<log-level>
can beinfo
(default),debug
,trace
,warn
,error
,critical
, oroff
Related: unit