Commit Graph

48 Commits

Author SHA1 Message Date
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 be2a264915 build: set GO15VENDOREXPERIMENT in env.sh
This should fix the 'make' build with Go 1.5.
2016-11-16 10:54:05 +01:00
Felix Lange 6663d0264e build: master is unstable 2016-11-15 14:11:27 +01:00
Felix Lange 8e704d9718 travis.yml: upload to the real PPA 2016-11-15 11:13:07 +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 dfd2c60509
travis, build: fix mobile build issues on travis 2016-11-15 09:49:00 +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 b8bd9a71c8 all: update license information 2016-11-09 02:51:34 +01: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 cd791bd855 core, trie: replace state caches with trie journal 2016-09-28 11:27:28 +03: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
Felix Lange 1f58b2d084 Merge pull request #2962 from fjl/release-move
contracts/release: move package release to contracts/
2016-08-31 15:32:13 +02:00
Daniel A. Nagy 7b884e0075 contracts/chequebook/contract: fix possible reentrancy bug in chequebook.sol 2016-08-30 18:16:49 +02:00
Felix Lange 1d7d1a3499 contracts/release: move package release to contracts/
This change also deletes generator.go, moving the only interesting line
in it into release.go. The binding has been regenerated with abigen from
develop and solc v0.3.6.
2016-08-29 19:25:05 +02:00
Nick Johnson 6976e602f6 contracts/ens: Add ENS contract binding 2016-08-29 17:30:17 +01: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
Felix Lange c89f4352d0 build: add CI scripts for windows 2016-05-08 01:23:07 +02:00
Felix Lange 728ad6f47d build: tweak update-license.go 2016-04-15 09:46:54 +02:00
Gustav Simonsson ec6a548ee3 all: Add GPU mining, disabled by default 2015-10-07 13:19:30 +02:00
Felix Lange 565d9f2306 core, trie: new trie 2015-09-22 22:53:49 +02:00
Felix Lange cfd84a6ad9 build: avoid -X separator warning with Go >= 1.5 2015-08-27 13:26:13 +02:00
Taylor Gerring cc87551edc Codecov integration 2015-08-18 22:46:48 +02:00
Felix Lange bfbcfbe4a9 all: fix license headers one more time
I forgot to update one instance of "go-ethereum" in commit 3f047be5a.
2015-07-23 18:35:11 +02:00
Felix Lange 3f047be5aa all: update license headers to distiguish GPL/LGPL
All code outside of cmd/ is licensed as LGPL. The headers
now reflect this by calling the whole work "the go-ethereum library".
2015-07-22 18:51:45 +02:00
Felix Lange f4acdea402 crypto: fix license of curve.go
crypto/curve.go is not our code and has its own license. This commit
excludes it in update-license.go and removes our GPL header.
2015-07-22 18:50:31 +02:00
Felix Lange bdae4fd573 all: add some godoc synopsis comments 2015-07-07 14:12:45 +02:00
Felix Lange 7bb77c02da build: change license regexp for // comments 2015-07-07 14:12:44 +02:00
Felix Lange 3ff5cfd028 build: new update-license.go
This version is less clever. All names are listed in a single file,
AUTHORS. All source files have the same header. This is an improvement
over the previous version, which attempted to list copyright holders in
each source file.
2015-07-07 14:01:33 +02:00
Taylor Gerring 8d3faf69d0 Build error fixes 2015-06-18 22:38:17 +02:00
Felix Lange aa03e53ca8 Use Makefile for Travis tests 2015-04-29 02:13:37 +02:00
Felix Lange 71c28cfb0c Makefile: set main.gitCommit when building 2015-04-29 02:13:36 +02:00
Felix Lange 12df8565cf build: run build commands from the fake workspace root
This ensures that compiler error messages contain the correct path.
2015-04-29 01:28:35 +02:00
Felix Lange 48f23746f0 Makefile: for non-gophers
Many people need or want to build go-ethereum from the git repository,
mostly to stay up to date with recent changes. We cannot expect that
people without Go experience grok the Go workspace concept.

With the Makefile, building from github requires only
three steps (provided that a Go toolchain is installed):

    - git clone https://github.com/ethereum/go-ethereum
    - ... install C libraries (libgmp, etc.) ...
    - make
2015-04-19 00:42:34 +02:00