From 0f9702d491a7c5965f36309e962e89660249431c Mon Sep 17 00:00:00 2001 From: chriseth Date: Tue, 28 Jul 2020 16:31:47 +0200 Subject: [PATCH] Solidity 0.7.0 --- .circleci/config.yml | 19 +++++++++++++++++++ solidity.rb | 6 +++--- solidity@6.rb | 37 +++++++++++++++++++++++++++++++++++++ 3 files changed, 59 insertions(+), 3 deletions(-) create mode 100644 solidity@6.rb diff --git a/.circleci/config.yml b/.circleci/config.yml index 745b4c76..d881c3f5 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -28,6 +28,25 @@ jobs: name: Cleanup command: brew uninstall boost cmake ccache solidity + - run: + name: Install Solidity 0.6 + command: | + brew update + #brew tap ethereum/ethereum # Acutally we should use the rule from the pull request + brew install https://raw.githubusercontent.com/ethereum/homebrew-ethereum/${CIRCLE_SHA1}/solidity@6.rb + + - run: + name: Test Formula + command: brew test solidity@6 + + - run: + name: Test Solidity + command: solc --version + + - run: + name: Cleanup + command: brew uninstall boost cmake ccache solidity@6 + - run: name: Install Solidity 0.5 command: | diff --git a/solidity.rb b/solidity.rb index aa3bec4f..45377fc2 100644 --- a/solidity.rb +++ b/solidity.rb @@ -16,9 +16,9 @@ class Solidity < Formula desc "The Solidity Contract-Oriented Programming Language" homepage "http://solidity.readthedocs.org" - url "https://github.com/ethereum/solidity/releases/download/v0.6.12/solidity_0.6.12.tar.gz" - version "0.6.12" - sha256 "214bd37867d59c0f2f22dbaf10fd8eea2a58c9055c853c5016d26ad7091d5776" + url "https://github.com/ethereum/solidity/releases/download/v0.7.0/solidity_0.7.0.tar.gz" + version "0.7.0" + sha256 "86e782a88eaaf4aa98f4e1e915f46b5bc5f596ea86c784fb911dc6e4c04309bf" depends_on "cmake" => :build depends_on "boost" => "c++11" diff --git a/solidity@6.rb b/solidity@6.rb new file mode 100644 index 00000000..aa3bec4f --- /dev/null +++ b/solidity@6.rb @@ -0,0 +1,37 @@ +#------------------------------------------------------------------------------ +# solidity.rb +# +# Homebrew formula for solidity. Homebrew (http://brew.sh/) is +# the de-facto standard package manager for OS X, and this Ruby script +# contains the metadata used to map command-line user settings used +# with the 'brew' command onto build options. +# +# Our documentation for the solidity Homebrew setup is at: +# +# http://solidity.readthedocs.io/en/latest/installing-solidity.html +# +# (c) 2014-2017 solidity contributors. +#------------------------------------------------------------------------------ + +class Solidity < Formula + desc "The Solidity Contract-Oriented Programming Language" + homepage "http://solidity.readthedocs.org" + url "https://github.com/ethereum/solidity/releases/download/v0.6.12/solidity_0.6.12.tar.gz" + version "0.6.12" + sha256 "214bd37867d59c0f2f22dbaf10fd8eea2a58c9055c853c5016d26ad7091d5776" + + depends_on "cmake" => :build + depends_on "boost" => "c++11" + # Note: due to a homebrew limitation, ccache will always be detected and cannot be turned off. + depends_on "ccache" => :build + depends_on "z3" + + def install + system "cmake", ".", *std_cmake_args, "-DTESTS=OFF" + system "make", "install" + end + + test do + system "#{bin}/solc", "--version" + end +end