diff options
author | Felix Lange <fjl@twurst.com> | 2016-06-15 06:36:31 +0800 |
---|---|---|
committer | Felix Lange <fjl@twurst.com> | 2016-08-17 23:39:04 +0800 |
commit | 1a9e66915b415cb1ca2bc2680f8fb4ff1883787c (patch) | |
tree | 849620e85ab94fccf1e49a9a2ea9602d700ea7c1 /eth | |
parent | 84d11c19fd246e245906ca7e498a67f6e0c55e1e (diff) | |
download | dexon-1a9e66915b415cb1ca2bc2680f8fb4ff1883787c.tar.gz dexon-1a9e66915b415cb1ca2bc2680f8fb4ff1883787c.tar.zst dexon-1a9e66915b415cb1ca2bc2680f8fb4ff1883787c.zip |
common/compiler: simplify solc wrapper
Support for legacy version 0.9.x is gone. The compiler version is no
longer cached. Compilation results (and the version) are read directly
from stdout using the --combined-json flag. As a workaround for
ethereum/solidity#651, source code is written to a temporary file before
compilation.
Integration of solc in package ethapi and cmd/abigen is now much simpler
because the compiler wrapper is no longer passed around as a pointer.
Fixes #2806, accidentally
Diffstat (limited to 'eth')
-rw-r--r-- | eth/backend.go | 4 | ||||
-rw-r--r-- | eth/bind.go | 2 |
2 files changed, 2 insertions, 4 deletions
diff --git a/eth/backend.go b/eth/backend.go index 22388ddb5..e1d123a02 100644 --- a/eth/backend.go +++ b/eth/backend.go @@ -31,7 +31,6 @@ import ( "github.com/ethereum/ethash" "github.com/ethereum/go-ethereum/accounts" "github.com/ethereum/go-ethereum/common" - "github.com/ethereum/go-ethereum/common/compiler" "github.com/ethereum/go-ethereum/common/httpclient" "github.com/ethereum/go-ethereum/common/registrar/ethreg" "github.com/ethereum/go-ethereum/core" @@ -130,7 +129,6 @@ type Ethereum struct { autodagquit chan bool etherbase common.Address solcPath string - solc *compiler.Solidity NatSpec bool PowTest bool @@ -291,7 +289,7 @@ func CreatePoW(config *Config) (*ethash.Ethash, error) { // APIs returns the collection of RPC services the ethereum package offers. // NOTE, some of these services probably need to be moved to somewhere else. func (s *Ethereum) APIs() []rpc.API { - return append(ethapi.GetAPIs(s.apiBackend, &s.solcPath, &s.solc), []rpc.API{ + return append(ethapi.GetAPIs(s.apiBackend, s.solcPath), []rpc.API{ { Namespace: "eth", Version: "1.0", diff --git a/eth/bind.go b/eth/bind.go index c1366464f..bf7a7fb53 100644 --- a/eth/bind.go +++ b/eth/bind.go @@ -44,7 +44,7 @@ type ContractBackend struct { // Etheruem object. func NewContractBackend(eth *Ethereum) *ContractBackend { return &ContractBackend{ - eapi: ethapi.NewPublicEthereumAPI(eth.apiBackend, nil, nil), + eapi: ethapi.NewPublicEthereumAPI(eth.apiBackend), bcapi: ethapi.NewPublicBlockChainAPI(eth.apiBackend), txapi: ethapi.NewPublicTransactionPoolAPI(eth.apiBackend), } |