forked from ethereum/solidity
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request ethereum#2947 from ethereum/develop
Merge develop into release for 0.4.17.
- Loading branch information
Showing
146 changed files
with
4,725 additions
and
2,211 deletions.
There are no files selected for viewing
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,10 +1,50 @@ | ||
version: 2 | ||
jobs: | ||
build: | ||
branches: | ||
ignore: | ||
- /.*/ | ||
docker: | ||
- image: trzeci/emscripten:sdk-tag-1.37.18-64bit | ||
- image: trzeci/emscripten:sdk-tag-1.37.21-64bit | ||
steps: | ||
- checkout | ||
- run: | ||
name: Install external tests deps | ||
command: | | ||
apt-get -qq update | ||
apt-get -qy install netcat curl | ||
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.4/install.sh | NVM_DIR=/usr/local/nvm bash | ||
- run: | ||
name: Test external tests deps | ||
command: | | ||
export NVM_DIR="/usr/local/nvm" | ||
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm | ||
nvm --version | ||
nvm install 6 | ||
node --version | ||
npm --version | ||
- run: | ||
name: Init submodules | ||
command: | | ||
git submodule update --init | ||
- restore_cache: | ||
name: Restore Boost build | ||
key: &boost-cache-key emscripten-boost-{{ checksum "scripts/travis-emscripten/install_deps.sh" }}{{ checksum "scripts/travis-emscripten/build_emscripten.sh" }} | ||
- run: | ||
name: Bootstrap Boost | ||
command: | | ||
scripts/travis-emscripten/install_deps.sh | ||
- run: | ||
name: Build | ||
command: | | ||
scripts/travis-emscripten/build_emscripten.sh | ||
- save_cache: | ||
name: Save Boost build | ||
key: *boost-cache-key | ||
paths: | ||
- boost_1_57_0 | ||
- run: | ||
name: Test | ||
command: | | ||
. /usr/local/nvm/nvm.sh | ||
scripts/test_emscripten.sh | ||
- store_artifacts: | ||
path: build/solc/soljson.js | ||
destination: soljson.js |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
# Setup ccache. | ||
# | ||
# The ccache is auto-enabled if the tool is found. | ||
# To disable set -DCCACHE=OFF option. | ||
if(NOT DEFINED CMAKE_CXX_COMPILER_LAUNCHER) | ||
find_program(CCACHE ccache DOC "ccache tool path; set to OFF to disable") | ||
if(CCACHE) | ||
set(CMAKE_CXX_COMPILER_LAUNCHER ${CCACHE}) | ||
if(COMMAND cotire) | ||
# Change ccache config to meet cotire requirements. | ||
set(ENV{CCACHE_SLOPPINESS} pch_defines,time_macros) | ||
endif() | ||
message(STATUS "[ccache] Enabled: ${CCACHE}") | ||
endif() | ||
endif() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,51 @@ | ||
include(ExternalProject) | ||
|
||
if (${CMAKE_SYSTEM_NAME} STREQUAL "Emscripten") | ||
set(JSONCPP_CMAKE_COMMAND emcmake cmake) | ||
else() | ||
set(JSONCPP_CMAKE_COMMAND ${CMAKE_COMMAND}) | ||
endif() | ||
|
||
# Disable implicit fallthrough warning in jsoncpp for gcc >= 7 until the upstream handles it properly | ||
if (("${CMAKE_CXX_COMPILER_ID}" MATCHES "GNU") AND CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 7.0) | ||
set(JSONCCP_EXTRA_FLAGS -Wno-implicit-fallthrough) | ||
else() | ||
set(JSONCCP_EXTRA_FLAGS "") | ||
endif() | ||
|
||
set(prefix "${CMAKE_BINARY_DIR}/deps") | ||
set(JSONCPP_LIBRARY "${prefix}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}jsoncpp${CMAKE_STATIC_LIBRARY_SUFFIX}") | ||
set(JSONCPP_INCLUDE_DIR "${prefix}/include") | ||
|
||
set(byproducts "") | ||
if(CMAKE_VERSION VERSION_GREATER 3.1) | ||
set(byproducts BUILD_BYPRODUCTS "${JSONCPP_LIBRARY}") | ||
endif() | ||
|
||
ExternalProject_Add(jsoncpp-project | ||
PREFIX "${prefix}" | ||
DOWNLOAD_DIR "${CMAKE_SOURCE_DIR}/deps/downloads" | ||
DOWNLOAD_NAME jsoncpp-1.7.7.tar.gz | ||
URL https://github.com/open-source-parsers/jsoncpp/archive/1.7.7.tar.gz | ||
URL_HASH SHA256=087640ebcf7fbcfe8e2717a0b9528fff89c52fcf69fa2a18cc2b538008098f97 | ||
CMAKE_COMMAND ${JSONCPP_CMAKE_COMMAND} | ||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=<INSTALL_DIR> | ||
-DCMAKE_C_COMPILER=${CMAKE_C_COMPILER} | ||
-DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER} | ||
# Build static lib but suitable to be included in a shared lib. | ||
-DCMAKE_POSITION_INDEPENDENT_CODE=${BUILD_SHARED_LIBS} | ||
-DJSONCPP_WITH_TESTS=OFF | ||
-DJSONCPP_WITH_PKGCONFIG_SUPPORT=OFF | ||
-DCMAKE_CXX_FLAGS=${JSONCCP_EXTRA_FLAGS} | ||
# Overwrite build and install commands to force Release build on MSVC. | ||
BUILD_COMMAND cmake --build <BINARY_DIR> --config Release | ||
INSTALL_COMMAND cmake --build <BINARY_DIR> --config Release --target install | ||
${byproducts} | ||
) | ||
|
||
# Create jsoncpp imported library | ||
add_library(jsoncpp STATIC IMPORTED) | ||
file(MAKE_DIRECTORY ${JSONCPP_INCLUDE_DIR}) # Must exist. | ||
set_property(TARGET jsoncpp PROPERTY IMPORTED_LOCATION ${JSONCPP_LIBRARY}) | ||
set_property(TARGET jsoncpp PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${JSONCPP_INCLUDE_DIR}) | ||
add_dependencies(jsoncpp jsoncpp-project) |
Submodule deps
deleted from
e5c831
Oops, something went wrong.