aboutsummaryrefslogtreecommitdiffstats
path: root/scripts/bytecodecompare/storebytecode.sh
diff options
context:
space:
mode:
authorchriseth <chris@ethereum.org>2018-11-13 23:13:14 +0800
committerGitHub <noreply@github.com>2018-11-13 23:13:14 +0800
commit8ed2e02407cd9ad483d1645ffb67df83b339af3d (patch)
tree4d020d7fa482528b98759b755a8a725e6acda295 /scripts/bytecodecompare/storebytecode.sh
parentc21c7e74fee74c6201f14eaa664784aae79a52a2 (diff)
parent6ed3765941c4418881a6842f58ea1123a9c54738 (diff)
downloaddexon-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-xscripts/bytecodecompare/storebytecode.sh20
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)
}
}