solidity compiling under msvc && boosts cmake file fixed

This commit is contained in:
debris 2014-12-07 11:29:38 +01:00
parent 2d8eaf8482
commit c7cf8c6db4
3 changed files with 21 additions and 6 deletions

View File

@ -6,6 +6,7 @@ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DSTATICLIB")
aux_source_directory(. SRC_LIST) aux_source_directory(. SRC_LIST)
include_directories(${Boost_INCLUDE_DIRS}) include_directories(${Boost_INCLUDE_DIRS})
include_directories(${JSONCPP_INCLUDE_DIRS})
include_directories(..) include_directories(..)
set(EXECUTABLE solidity) set(EXECUTABLE solidity)
@ -17,11 +18,9 @@ else()
add_library(${EXECUTABLE} SHARED ${SRC_LIST} ${HEADERS}) add_library(${EXECUTABLE} SHARED ${SRC_LIST} ${HEADERS})
endif() endif()
target_link_libraries(${EXECUTABLE} evmcore devcore) target_link_libraries(${EXECUTABLE} evmcore)
# TODO: Temporary until PR 532 https://github.com/ethereum/cpp-ethereum/pull/532 target_link_libraries(${EXECUTABLE} devcore)
# gets accepted. Then we can simply add jsoncpp as a dependency and not the target_link_libraries(${EXECUTABLE} ${JSONCPP_LIBRARIES})
# whole of JSONRPC as we are doing right here
target_link_libraries(${EXECUTABLE} ${JSONRPC_LS})
install( TARGETS ${EXECUTABLE} ARCHIVE DESTINATION lib LIBRARY DESTINATION lib ) install( TARGETS ${EXECUTABLE} ARCHIVE DESTINATION lib LIBRARY DESTINATION lib )
install( FILES ${HEADERS} DESTINATION include/${EXECUTABLE} ) install( FILES ${HEADERS} DESTINATION include/${EXECUTABLE} )

View File

@ -84,6 +84,22 @@ public:
/// scanning the source code - this is useful for printing exception information. /// scanning the source code - this is useful for printing exception information.
static bytes staticCompile(std::string const& _sourceCode, bool _optimize = false); static bytes staticCompile(std::string const& _sourceCode, bool _optimize = false);
/// Compile under msvc results in error CC2280
CompilerStack& operator=(const CompilerStack& _other)
{
m_scanner = _other.m_scanner;
m_globalContext = _other.m_globalContext;
m_contractASTNode = _other.m_contractASTNode;
m_parseSuccessful = _other.m_parseSuccessful;
m_interface.reset(_other.m_interface.get());
m_userDocumentation.reset(_other.m_userDocumentation.get());
m_devDocumentation.reset(_other.m_devDocumentation.get());
m_compiler = _other.m_compiler;
m_interfaceHandler = _other.m_interfaceHandler;
m_bytecode = m_bytecode;
return *this;
}
private: private:
std::shared_ptr<Scanner> m_scanner; std::shared_ptr<Scanner> m_scanner;
std::shared_ptr<GlobalContext> m_globalContext; std::shared_ptr<GlobalContext> m_globalContext;

View File

@ -28,7 +28,7 @@
#include <string> #include <string>
#include <memory> #include <memory>
#include <jsonrpc/json/json.h> #include <jsoncpp/json/json.h>
namespace dev namespace dev
{ {