From b0e4555db37006f1a72c4dd793aef6d69f70f4df Mon Sep 17 00:00:00 2001 From: Alex Beregszaszi Date: Fri, 30 Jun 2017 11:26:30 +0100 Subject: [PATCH 1/2] Read version from CMakeLists in test_emscripten --- scripts/test_emscripten.sh | 15 +-------------- 1 file changed, 1 insertion(+), 14 deletions(-) diff --git a/scripts/test_emscripten.sh b/scripts/test_emscripten.sh index 3bb16aa47..aa93ed947 100755 --- a/scripts/test_emscripten.sh +++ b/scripts/test_emscripten.sh @@ -45,20 +45,7 @@ rm -f soljson.js cp ../solc/soljson.js soljson.js # Update version (needed for some tests) -echo "Creating version.c" -rm -f version version.c -cat < version.c -#include -#include "../include/solidity/BuildInfo.h" -int main(int argc, char **argv) { - printf(ETH_PROJECT_VERSION); - return 0; -} -EOF -echo "Compiling version.c" -gcc -o version version.c -echo "Running version" -VERSION=`./version` +VERSION=$(grep -oP "PROJECT_VERSION \"?\K[0-9.]+(?=\")"? $(dirname "$0")/../CMakeLists.txt) echo "Updating package.json to version $VERSION" npm version $VERSION From f13feed7f26aba22396ec1728a51a96fd9bd65e3 Mon Sep 17 00:00:00 2001 From: Alex Beregszaszi Date: Fri, 30 Jun 2017 11:30:57 +0100 Subject: [PATCH 2/2] Add script to retrieve version --- scripts/create_source_tarball.sh | 2 +- scripts/docker_deploy.sh | 2 +- scripts/get_version.sh | 31 +++++++++++++++++++++++++++++++ scripts/release_ppa.sh | 8 ++++---- scripts/test_emscripten.sh | 2 +- 5 files changed, 38 insertions(+), 7 deletions(-) create mode 100755 scripts/get_version.sh diff --git a/scripts/create_source_tarball.sh b/scripts/create_source_tarball.sh index 9ca72c31c..7339e1068 100755 --- a/scripts/create_source_tarball.sh +++ b/scripts/create_source_tarball.sh @@ -6,7 +6,7 @@ set -e REPO_ROOT="$(dirname "$0")"/.. ( cd "$REPO_ROOT" - version=$(grep -oP "PROJECT_VERSION \"?\K[0-9.]+(?=\")"? CMakeLists.txt) + version=$(scripts/get_version.sh) commithash=$(git rev-parse --short=8 HEAD) commitdate=$(git show --format=%ci HEAD | head -n 1 | cut - -b1-10 | sed -e 's/-0?/./' | sed -e 's/-0?/./') diff --git a/scripts/docker_deploy.sh b/scripts/docker_deploy.sh index 0abde8407..007057256 100755 --- a/scripts/docker_deploy.sh +++ b/scripts/docker_deploy.sh @@ -3,7 +3,7 @@ set -e docker login -u="$DOCKER_USERNAME" -p="$DOCKER_PASSWORD"; -version=$(grep -oP "PROJECT_VERSION \"?\K[0-9.]+(?=\")"? $(dirname "$0")/../CMakeLists.txt) +version=$($(dirname "$0")/get_version.sh) if [ "$TRAVIS_BRANCH" = "develop" ] then docker tag ethereum/solc:build ethereum/solc:nightly; diff --git a/scripts/get_version.sh b/scripts/get_version.sh new file mode 100755 index 000000000..3df2b4c40 --- /dev/null +++ b/scripts/get_version.sh @@ -0,0 +1,31 @@ +#!/usr/bin/env bash + +#------------------------------------------------------------------------------ +# Bash script to execute the Solidity tests. +# +# The documentation for solidity is hosted at: +# +# https://solidity.readthedocs.org +# +# ------------------------------------------------------------------------------ +# This file is part of solidity. +# +# solidity is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# solidity is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with solidity. If not, see +# +# (c) 2017 solidity contributors. +#------------------------------------------------------------------------------ + +set -e + +grep -oP "PROJECT_VERSION \"?\K[0-9.]+(?=\")"? $(dirname "$0")/../CMakeLists.txt diff --git a/scripts/release_ppa.sh b/scripts/release_ppa.sh index 5e01347b5..7c9abecb0 100755 --- a/scripts/release_ppa.sh +++ b/scripts/release_ppa.sh @@ -55,10 +55,10 @@ wget -O ./solc/deps/downloads/jsoncpp-1.7.7.tar.gz https://github.com/open-sourc # Determine version cd solc -version=`grep -oP "PROJECT_VERSION \"?\K[0-9.]+(?=\")"? CMakeLists.txt` -commithash=`git rev-parse --short=8 HEAD` -committimestamp=`git show --format=%ci HEAD | head -n 1` -commitdate=`git show --format=%ci HEAD | head -n 1 | cut - -b1-10 | sed -e 's/-0?/./' | sed -e 's/-0?/./'` +version=$($(dirname "$0")/get_version.sh) +commithash=$(git rev-parse --short=8 HEAD) +committimestamp=$(git show --format=%ci HEAD | head -n 1) +commitdate=$(git show --format=%ci HEAD | head -n 1 | cut - -b1-10 | sed -e 's/-0?/./' | sed -e 's/-0?/./') echo "$commithash" > commit_hash.txt if [ $branch = develop ] diff --git a/scripts/test_emscripten.sh b/scripts/test_emscripten.sh index aa93ed947..a2dbe61cf 100755 --- a/scripts/test_emscripten.sh +++ b/scripts/test_emscripten.sh @@ -45,7 +45,7 @@ rm -f soljson.js cp ../solc/soljson.js soljson.js # Update version (needed for some tests) -VERSION=$(grep -oP "PROJECT_VERSION \"?\K[0-9.]+(?=\")"? $(dirname "$0")/../CMakeLists.txt) +VERSION=$(../../scripts/get_version.sh) echo "Updating package.json to version $VERSION" npm version $VERSION