You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We rely on CGO to build support for Ledger devices. On the other hand, CGO breaks build determinism.
When CGO is disabled, byte-to-byte reproducible builds can be achieved, see #4262.
As A user of gaiacli I Can compile gaiacli without calling C code nor linking against external static/shared libraries.
Acceptance Criteria
Given a local clone of github.com/cosmos/cosmos-sdk GivenCGO_ENABLED=0 is set in the environment When I run make install Then the build terminates successfully Thengaiacli keys add --ledger successfully adds a ledger reference to the keybase.
This change set introduces support for building gaia with gitian
on the following GOOS/GOARCH pairs:
- darwin/386
- darwin/amd64
- linux/386
- linux/amd64
- linux/arm
- linux/arm64
- windows/386
- windows/amd64
cmd/gaia/contrib/gitian-descriptors/ contains gitian descriptor files.
cmd/gaia/contrib/gitian-keys/ contains:
- a keys.txt file that is meant to list core developers and gitian
builders PGP keys.
- README.me to provide instructions on how to import the keys
into one's personal GPG keyring.
The gosum utility is removed, so is the go.sum hashsum bit from
gaiacli/gaiad version string. It was meant to be a provisional
mitigation to the lack of a reproducible build process.
GOBIN is removed from all Makefiles. When GOBIN is set, go
refuses to cross-compiles binaries for foreign architectures.
export GOBIN=$GOPATH/bin is unnecessary anyway as by
default go install places built binaries in $GOPATH/bin.
Developers are required to update their enviornment files and
replace $GOBIN with $GOPATH/bin in PATH.
circleci configuration file is amended accordingly.
Closes: #4027Closes: #4280
We rely on CGO to build support for Ledger devices. On the other hand, CGO breaks build determinism.
When CGO is disabled, byte-to-byte reproducible builds can be achieved, see #4262.
As A user of gaiacli
I Can compile
gaiacli
without calling C code nor linking against external static/shared libraries.Acceptance Criteria
Given a local clone of
github.com/cosmos/cosmos-sdk
Given
CGO_ENABLED=0
is set in the environmentWhen I run
make install
Then the build terminates successfully
Then
gaiacli keys add --ledger
successfully adds a ledger reference to the keybase.References
@jaekwon @zmanian
The text was updated successfully, but these errors were encountered: