From 6b4e564b7c8f2a47cafa743e786d8873f2c04078 Mon Sep 17 00:00:00 2001 From: chriseth <c@ethdev.com> Date: Mon, 14 Sep 2015 18:36:39 +0200 Subject: [PATCH] Changes required to compile on emscripten target. --- CMakeLists.txt | 4 +++- solc/CMakeLists.txt | 10 ++++++++-- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 69cbe0cc7..c65383ec9 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -29,6 +29,8 @@ print_config() add_subdirectory(libsolidity) add_subdirectory(solc) -add_subdirectory(test) +if (NOT EMSCRIPTEN) + add_subdirectory(test) +endif() # TODO installation and packaging rules diff --git a/solc/CMakeLists.txt b/solc/CMakeLists.txt index 2d23dab10..40ab0e210 100644 --- a/solc/CMakeLists.txt +++ b/solc/CMakeLists.txt @@ -17,5 +17,11 @@ else() eth_install_executable(${EXECUTABLE}) endif() -add_library(soljson jsonCompiler.cpp ${HEADERS}) -target_link_libraries(soljson solidity) +if (EMSCRIPTEN) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -s EXPORTED_FUNCTIONS='[\"_compileJSON\",\"_version\"]'") + add_executable(soljson jsonCompiler.cpp ${HEADERS}) + eth_use(soljson REQUIRED Solidity) +else() + add_library(soljson jsonCompiler.cpp ${HEADERS}) + target_link_libraries(soljson solidity) +endif()