diff options
author | chriseth <chris@ethereum.org> | 2018-11-13 23:13:14 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-11-13 23:13:14 +0800 |
commit | 8ed2e02407cd9ad483d1645ffb67df83b339af3d (patch) | |
tree | 4d020d7fa482528b98759b755a8a725e6acda295 /scripts/bytecodecompare/storebytecode.sh | |
parent | c21c7e74fee74c6201f14eaa664784aae79a52a2 (diff) | |
parent | 6ed3765941c4418881a6842f58ea1123a9c54738 (diff) | |
download | dexon-solidity-8ed2e02407cd9ad483d1645ffb67df83b339af3d.tar dexon-solidity-8ed2e02407cd9ad483d1645ffb67df83b339af3d.tar.gz dexon-solidity-8ed2e02407cd9ad483d1645ffb67df83b339af3d.tar.bz2 dexon-solidity-8ed2e02407cd9ad483d1645ffb67df83b339af3d.tar.lz dexon-solidity-8ed2e02407cd9ad483d1645ffb67df83b339af3d.tar.xz dexon-solidity-8ed2e02407cd9ad483d1645ffb67df83b339af3d.tar.zst dexon-solidity-8ed2e02407cd9ad483d1645ffb67df83b339af3d.zip |
Merge pull request #5105 from ethereum/libsolc-api
Remove old libsolc API (compileJSON, compileJSONMulti, compileJSONCallback)
Diffstat (limited to 'scripts/bytecodecompare/storebytecode.sh')
-rwxr-xr-x | scripts/bytecodecompare/storebytecode.sh | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/scripts/bytecodecompare/storebytecode.sh b/scripts/bytecodecompare/storebytecode.sh index 557e3275..ccf6e60e 100755 --- a/scripts/bytecodecompare/storebytecode.sh +++ b/scripts/bytecodecompare/storebytecode.sh @@ -40,14 +40,16 @@ TMPDIR=$(mktemp -d) if [[ "$SOLC_EMSCRIPTEN" = "On" ]] then - cp "$REPO_ROOT/build/libsolc/soljson.js" . - npm install solc + # npm install solc + git clone --depth 1 https://github.com/ethereum/solc-js.git solc-js + ( cd solc-js; npm install ) + cp "$REPO_ROOT/build/libsolc/soljson.js" solc-js/ cat > solc <<EOF #!/usr/bin/env node var process = require('process') var fs = require('fs') -var compiler = require('solc/wrapper.js')(require('./soljson.js')) +var compiler = require('./solc-js/wrapper.js')(require('./solc-js/soljson.js')) for (var optimize of [false, true]) { @@ -57,7 +59,15 @@ for (var optimize of [false, true]) { var inputs = {} inputs[filename] = fs.readFileSync(filename).toString() - var result = compiler.compile({sources: inputs}, optimize) + var input = { + language: 'Solidity', + sources: inputs, + settings: { + optimizer: { enabled: optimize }, + outputSelection: { '*': { '*': ['evm.bytecode.object', 'metadata'] } } + } + } + var result = JSON.parse(compiler.compile(JSON.stringify(input))) if (!('contracts' in result) || Object.keys(result['contracts']).length === 0) { console.log(filename + ': ERROR') @@ -66,7 +76,7 @@ for (var optimize of [false, true]) { for (var contractName in result['contracts']) { - console.log(contractName + ' ' + result['contracts'][contractName].bytecode) + console.log(contractName + ' ' + result['contracts'][contractName].evm.bytecode.object) console.log(contractName + ' ' + result['contracts'][contractName].metadata) } } |