Commit Graph

192 Commits

Author SHA1 Message Date
Péter Szilágyi b7e0dec6bd
travis, build: switch to NDK 19b, fix gomobile builds (#19171)
* travis, build: switch to NDK 19b, fix gomobile builds

* travis, build: move NDK into its final bundle location

* travis: disable Android build on PRs once again
2019-02-26 16:56:12 +02:00
Péter Szilágyi c0b9c763bb
build: explicitly force .xz compression (old debuild picks gzip) (#19118) 2019-02-18 12:12:26 +02:00
Felix Lange a8ddf7ad83 build: avoid dput and upload with sftp directly (#19067) 2019-02-14 17:10:09 +02:00
Felix Lange edf976ee8e
.travis.yml: fix upload destination (#19043) 2019-02-12 13:02:40 +01:00
Felix Lange 3de19c8b31 build: use SFTP for launchpad uploads (#19037)
* build: use sftp for launchpad uploads

* .travis.yml: configure sftp export

* build: update CI docs
2019-02-12 11:55:25 +02:00
Felix Lange e9daed189e
build: tweak debian source package build/upload options (#18962)
dput --passive should make repo pushes from Travis work again.
dput --no-upload-log works around an issue I had while uploading locally.

debuild -d says that debuild shouldn't check for build dependencies when
creating the source package. This option is needed to make builds work
in environments where the installed Go version doesn't match the
declared dependency in the source package.
2019-01-29 13:20:21 +01:00
Felix Lange 72a076840b
travis, build: speed up CI runs (#17854)
* travis: exclude non-test jobs for PRs

We don't usually look at these builders and not starting them
removes ~15min of build time.

* build: don't run vet before tests

Recent versions of Go run vet during 'go test' and we have
a dedicated lint job.

* build: use -timeout 5m for tests

Tests sometimes hang on Travis. CI runs are aborted after 10min with no
output. Adding the timeout means we get to see the stack trace for
timeouts.
2018-10-08 16:37:06 +02:00
HarryWu 4d8c7248bd build: fix typo (#17773) 2018-09-28 20:05:46 +02:00
Anton Evangelatov f44046a1c6 build: do not require `ethereum-swarm` deb when installing `ethereum` (#17425) 2018-08-17 11:33:39 +03:00
Anton Evangelatov 46d4721519 build: explicitly name all packages to be cross-compiled (#17288) 2018-07-31 16:34:54 +03:00
Anton Evangelatov a5d5609e38 build: rename swarm deb package to ethereum-swarm; change swarm deb version from 1.8.x to 0.3.x (#16988)
* build: add support for different package and binary names

* build: bump up copyright date

* build: change default PackageName to empty string

* build, internal, swarm: enhance build/release process

* build: hack ethereum-swarm as a "depends" in deb package

* build/ci: remove redundant variables

* build, cmd, mobile, params, swarm: remove VERSION file; rename Version to VersionMeta;

* internal: remove VERSION() method which reads VERSION file

* build: fix VersionFilePath to Version

* Makefile: remove clean_go_build_cache.sh until it works

* Makefile: revert removal of clean_go_build_cache.sh
2018-07-30 11:56:40 +03:00
Péter Szilágyi 93c0f1715d
Merge pull request #17245 from karalabe/azure-deps-fixups
internal, vendor: update Azure blobstore API
2018-07-26 19:59:46 +03:00
Péter Szilágyi 0598707129
build: deprecated ubuntu artful, enable ubuntu cosmic 2018-07-26 13:14:36 +03:00
Péter Szilágyi 6b232ce325
internal, vendor: update Azure blobstore API 2018-07-25 18:04:43 +03:00
Felix Yan 65cebb7730
build: Fix a typo in ci.go 2018-07-15 14:13:11 +08:00
Elad 1836366ac1 all: library changes for swarm-network-rewrite (#16898)
This commit adds all changes needed for the merge of swarm-network-rewrite.
The changes:

- build: increase linter timeout
- contracts/ens: export ensNode
- log: add Output method and enable fractional seconds in format
- metrics: relax test timeout
- p2p: reduced some log levels, updates to simulation packages
- rpc: increased maxClientSubscriptionBuffer to 20000
2018-06-14 11:21:17 +02:00
ligi eab6e5a317 build: specify the key to use when invoking gpg:sign-and-deploy-file (#16696) 2018-05-09 01:13:53 +02:00
ligi 58c4e033f4
build: Add ldflags -s -w when building aar
Smaller size on mobile is always good.
Might also solve our maven central upload problem
2018-05-02 11:21:24 +02:00
thomasmodeneis ba1030b6b8 build: enable goimports and varcheck linters (#16446) 2018-04-18 00:53:50 +02:00
ligi 30deb6067f build: add -e and -X flags to get more information on #16433 (#16443) 2018-04-10 14:32:48 +03:00
Felix Lange b1917ac9a3 build: add GOBIN to PATH for gomobile (#16344)
* build: add GOBIN to PATH for gomobile

* build: install gobind alongside gomobile
2018-03-20 02:00:45 +09:00
Péter Szilágyi 1203c6a237
crypto/bn256: full switchover to cloudflare's code (#16301)
* crypto/bn256: full switchover to cloudflare's code

* crypto/bn256: only use cloudflare for optimized architectures

* crypto/bn256: upstream fallback for non-optimized code

* .travis, build: drop support for Go 1.8 (need type aliases)

* crypto/bn256/cloudflare: enable curve mul lattice optimization
2018-03-20 01:13:54 +09:00
Péter Szilágyi 17b0e226d3
travis, build, consensus: drop support for Go 1.7 2018-02-27 18:25:56 +02:00
Péter Szilágyi 969474f60a
build: deprecate zesty, add bionic PPA 2018-02-11 19:07:11 +02:00
Péter Szilágyi 3e0113fff4 build: set CC through a command-line flag (#15784)
This avoids setting CC for the go run invocation, which fails on go1.10.
2018-01-02 11:40:56 +01:00
Péter Szilágyi 2fe07c203e build: fix version comparison for go1.10 and beyond (#15781) 2018-01-02 11:28:07 +01:00
Zach 3da1bf8ca1 all: use gometalinter.v2, fix new gosimple issues (#15650) 2017-12-12 19:05:47 +01:00
ferhat elmas 43dd8e62fc build: enable gosimple linter (#15593) 2017-12-01 13:04:06 +01:00
Zach 73067fd24f buld: enable goconst linter (#15566) 2017-11-30 11:22:26 +01:00
Zach 6bb61ee9ef build: improve ci.go synopsis (#15565) 2017-11-28 10:45:48 +01:00
Zoe Nolan cc3ca63dbf
build: fix typo in comment 2017-11-21 19:23:42 +00:00
ferhat elmas 86f6568f66 build: enable unconvert linter (#15456)
* build: enable unconvert linter

 - fixes #15453
 - update code base for failing cases

* cmd/puppeth: replace syscall.Stdin with os.Stdin.Fd() for unconvert linter
2017-11-10 19:06:45 +02:00
Péter Szilágyi d1eb4006e2
build: enable gofmt and misspell linters 2017-11-09 19:48:12 +02:00
Dan Melton d7f2462e8f build: add Travis job to lint Go code #15372 (#15416)
* build: [finishes #15372] implements generalized linter and travis job

* .travis, build: minor polishes, disable deadcode
2017-11-09 12:46:03 +02:00
Péter Szilágyi ba2201981a
build: start shipping Ubuntu Artful Aardvark binaries 2017-10-20 12:49:32 +03:00
Felix Lange f59a49d591 internal/build: add GoTool and document why it uses GOROOT 2017-08-07 16:08:50 +02:00
Péter Szilágyi 524ca544b2
build: drop yakkety builds (launchpad end of life) 2017-08-07 11:12:44 +03:00
Addy Yeow cf611c50b9 build: fix devel golang detection on debian/ubuntu (#14711) 2017-06-27 09:11:41 +02:00
Vlad 99127ff2e7 build: wnode added to the build configuration 2017-05-03 15:36:02 +02:00
Péter Szilágyi 15f32a8d57
build: disable misspell, upstream bug prevents builds 2017-04-14 12:24:01 +03:00
Péter Szilágyi a0cd77e833 build: create deb source for Ubuntu Zesty (#14316) 2017-04-12 02:07:00 +02:00
Péter Szilágyi 706a1e552c cmd/puppeth: your Ethereum private network manager (#13854) 2017-04-11 01:25:53 +02:00
Péter Szilágyi c76ad94492 .travis, build: autodelete old unstable archives (#13867)
This commit adds a build step to travis to auto-delete unstable archives older than
14 days (our regular release schedule) from Azure via ci.go purge.

The commit also pulls in the latest Azure storage code, also switching over from
the old import path (github.com/Azure/azure-sdk-for-go) to the new split one
(github.com/Azure/azure-storage-go).
2017-04-06 12:53:33 +02:00
Felix Lange 1cf2ee4597 build: work around cgo linker issue on macOS 10.12.4 (#13849)
Fixes #3792 by stripping debug symbols.
2017-03-29 12:20:57 +02:00
Felix Lange df1fbe3c06 build: always run go vet
This ensures 'make test' finds all errors that remote CI would find.
Go 1.7 vet reports a false positive in package log, add a workaround.
2017-03-24 10:28:46 +01:00
Felix Lange e7911ad9ea build: unify vendor skipping logic
This fixes a recent bug where 'make geth' built everything instead of
just geth.
2017-03-23 15:50:05 +01:00
Zahoor Mohamed 11e7a712f4 swarm/api: support mounting manifests via FUSE (#3690) 2017-03-23 14:56:06 +01:00
Felix Lange c6e6f1fec2 build: remove support for the GO_OPENCL environment variable
We don't use the opencl build tag anymore.
2017-03-22 16:00:21 +01:00
Felix Lange da7af44060 build: require Go >= 1.7
We have decided to bump the requirement to Go 1.7 because it enables
subtests and allows dropping backwards-compatibility code. This is in
line with Go's support policy. Go 1.6 and earlier no longer receive
security updates.
2017-03-22 16:00:16 +01:00
Péter Szilágyi 288700c4d8 build: add bootnode to Ubuntu PPAs too (#3766) 2017-03-09 11:02:43 +01:00
Péter Szilágyi 2b284e7366
build: fix xgo argument order when building from make 2017-03-03 12:18:44 +02:00
Péter Szilágyi 725c2646a0 Merge pull request #3735 from karalabe/bundle-bootnode
build: bundle the bootnode too into alltools
2017-03-02 16:05:23 +02:00
Péter Szilágyi 090699c0f6
build: bundle the bootnode too into alltools 2017-03-02 15:23:15 +02:00
Péter Szilágyi f972691eea
travis: support building mips32 and mips64 too 2017-03-02 11:43:06 +02:00
Péter Szilágyi e0fb4d1da9
build: work around CGO linker bug on pre-1.8 Go 2017-02-13 14:00:04 +02:00
Shintaro Kaneko 658bcbcbdc build: Fix tiny typo 2017-01-30 01:09:00 +09:00
Péter Szilágyi 7814a8e131 travis: Install Android NDK explicitly, removed from gomobile (#3593)
The Android NDK was recently removed from gomobile, leading to our Android
builds failing. Starting from https://go-review.googlesource.com/#/c/35173/ ,
gomobile requires a locally installed NDK. This PR ensures that travis installs
that too before running the build steps.
2017-01-20 10:33:58 +01:00
Péter Szilágyi 54fcab20e3
appveyor, build: fix review requests 2017-01-13 12:04:55 +02:00
Péter Szilágyi a2bc90d1d7
build: spellcheck individual packages (Windows path limits) 2017-01-13 11:22:24 +02:00
Péter Szilágyi e4181a7f1b
travis, appveyor, build: add source spell checking 2017-01-13 11:14:13 +02:00
Felix Lange 35a7dcb162 all: gofmt -w -s 2017-01-06 15:52:03 +01:00
Péter Szilágyi 9b135a9c20
build: finally settle on empty iOS ObjC package prefixes 2017-01-05 14:32:30 +02:00
Péter Szilágyi 49c6f1053c Merge pull request #3421 from ethersphere/s/swarm-cmd
cmd/swarm: one command  with subcommands
2016-12-14 12:26:20 +02:00
Péter Szilágyi 8941665896
build: Ubuntu wily was officially deprecated, drop support 2016-12-14 11:45:14 +02:00
zelig d7c398b638 build: add swarm command to binary packages, update README 2016-12-13 12:54:13 +01:00
bas-vk 4f9ccdd70f build: safe update of PATH on Windows (#3419)
NSIS has a default MAX_STR_LEN of 1024. If $ENV{PATH} is longer
the returned string is truncated to an empty string. Its then not
possible to distinguis between the variable not set or too long.
As a result the variable is set with the location where geth and/or
dev tools are installed. This may override any previous set values.
2016-12-11 00:01:57 +01:00
Péter Szilágyi 0fe35b907a mobile: iOS naming and API fixes for generators and Swift (#3408)
* build: modify the iOS namespace to iGeth (gomobile limitation)
* mobile: assign names to return types for ObjC wrapper
* mobile: use more expanded names for iOS/Swift API
2016-12-08 13:09:26 +01:00
Péter Szilágyi f81660b6db
build: use single CocoaPods package, pre-release dev builds 2016-11-28 13:09:43 +02:00
Viktor Trón e4bf004560 build/ci: add swarm related executables (bzzd, bzzup, bzzhash) to binary packages (#3354) 2016-11-28 11:25:19 +01:00
Péter Szilágyi 0f1cbfd3da
Makefile, build: do proper mobile builds, not cross builds 2016-11-25 12:51:10 +02:00
Péter Szilágyi e05d35e6e0 Merge pull request #3317 from fjl/build-unstable-simplify
build, internal/build: simplify unstable build checks
2016-11-23 12:24:28 +02:00
Péter Szilágyi 2b4c236773
build: remove hash metadata from cocoapod version 2016-11-23 10:49:25 +02:00
Péter Szilágyi a0e42aa4e2 build: mobile CI fixes (#3322)
* build: use metatags on cocoapods, not prerelease tags
* build: fix Maven and CocoaPods author email addresses
2016-11-22 17:35:49 +01:00
Felix Lange 8ed72a8470 build: simplify unstable build check
ci.go decides whether a build is unstable by looking at the branch and
tag. This causes issues when a GitHub release is created on the master
branch because the build is considered unstable (the CI environment
reports the branch as "master").

Fix this by looking at the tag only. Any tagged build is stable.
2016-11-18 19:55:19 +01:00
Péter Szilágyi f3228592f5 travis: dash of black magic to summon the cache daemon (#3288) 2016-11-17 16:15:17 +01:00
Felix Lange 6663d0264e build: master is unstable 2016-11-15 14:11:27 +01:00
Péter Szilágyi 2cb9738649
travis, build: further maven and gpg refinements 2016-11-15 10:25:51 +02:00
Péter Szilágyi 4c16c82500
travis, build: cocoapods build fixes and travis caches 2016-11-14 18:00:14 +02:00
Péter Szilágyi 322502b441
build: iOS XCode framework build and upload 2016-11-14 17:56:58 +02:00
Péter Szilágyi b7dfd333c5
.travis, build: Build step to push .aar to Maven Central 2016-11-14 17:56:58 +02:00
Felix Lange 8b1df1a259 build: fix remote path for archive uploads (#3243)
archiveUpload did not handle absolute paths correctly. Fix it by using
the basename and ensure that uploads can be tested using -n.
2016-11-08 23:46:46 +01:00
Péter Szilágyi 9bc97a5785 build: NSIS based Windows installer (#3240)
This commit adds support for creating Windows installers to ci.go
2016-11-08 22:55:39 +01:00
Péter Szilágyi 328f0dd631
build: fix missing .exe executable names on cross builds 2016-11-07 12:18:28 +02:00
Péter Szilágyi afe41de6b3 travis: build to all supported linux architectures (#3235) 2016-11-04 12:48:20 +01:00
Felix Lange ed2bc7fbe9 build, internal/build: misc improvements (#3229)
* travis.yml: don't create darwin/386 builds

* build: remove godep remains

* internal/build: improve archives

- enable compression for zip files
- don't write half-complete archives

* build: add -unstable to archive names
2016-11-03 14:44:16 +02:00
Péter Szilágyi 2f9f2cbb19
travis, build: enable 386 builds too for linux and osx 2016-11-03 10:32:58 +02:00
Péter Szilágyi 3b62c145f8
travis, build: implement uploading archives to azure 2016-11-03 10:32:53 +02:00
Péter Szilágyi 289b30715d Godeps, vendor: convert dependency management to trash (#3198)
This commit converts the dependency management from Godeps to the vendor
folder, also switching the tool from godep to trash. Since the upstream tool
lacks a few features proposed via a few PRs, until those PRs are merged in
(if), use github.com/karalabe/trash.

You can update dependencies via trash --update.

All dependencies have been updated to their latest version.

Parts of the build system are reworked to drop old notions of Godeps and
invocation of the go vet command so that it doesn't run against the vendor
folder, as that will just blow up during vetting.

The conversion drops OpenCL (and hence GPU mining support) from ethash and our
codebase. The short reasoning is that there's noone to maintain and having
opencl libs in our deps messes up builds as go install ./... tries to build
them, failing with unsatisfied link errors for the C OpenCL deps.

golang.org/x/net/context is not vendored in. We expect it to be fetched by the
user (i.e. using go get). To keep ci.go builds reproducible the package is
"vendored" in build/_vendor.
2016-10-28 19:05:01 +02:00
Felix Lange 4f7627972e build: improve debian packaging
This commit tweaks the debian packaging tool:

* All build environment metadata can now be overriden on the command
  line. This allows testing the CI build behaviour locally.
* -unstable packages now actually contain the binaries (oops)
* packages use Go 1.7 to build
* archiving is skipped for PR builds
2016-10-02 13:08:56 +02:00
Felix Lange b0a6b979a3 build: limit test concurrency
TravisCI and AppVeyor run the tests in very slow VMs.
Some of our tests can't cope with that. Running less tests
in parallel should make them somewhat less flakey.
2016-09-26 13:41:18 +02:00
Péter Szilágyi 8c23f20c68 Makefile, build: move cross compilation into ci.go 2016-08-08 13:45:44 +03:00
Felix Lange 6c33ba14a4 build: add ci.go, use it everywhere
The new build script, ci.go, replaces some of the older shell scripts.
ci.go can compile go-ethereum, run the tests, create release archives
and debian source packages.
2016-06-22 13:42:39 +02:00