|
|
|
cmake_policy(SET CMP0015 NEW)
|
|
|
|
|
|
|
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DSTATICLIB")
|
|
|
|
|
|
|
|
aux_source_directory(. SRC_LIST)
|
|
|
|
|
|
|
|
set(EXECUTABLE ethereum)
|
|
|
|
|
|
|
|
# set(CMAKE_INSTALL_PREFIX ../lib)
|
|
|
|
if(ETH_STATIC)
|
|
|
|
add_library(${EXECUTABLE} STATIC ${SRC_LIST})
|
|
|
|
else()
|
|
|
|
add_library(${EXECUTABLE} SHARED ${SRC_LIST})
|
|
|
|
endif()
|
|
|
|
|
|
|
|
file(GLOB HEADERS "*.h")
|
|
|
|
|
|
|
|
include_directories(..)
|
|
|
|
|
|
|
|
target_link_libraries(${EXECUTABLE} evm)
|
|
|
|
target_link_libraries(${EXECUTABLE} lll)
|
|
|
|
target_link_libraries(${EXECUTABLE} whisper)
|
|
|
|
target_link_libraries(${EXECUTABLE} p2p)
|
|
|
|
target_link_libraries(${EXECUTABLE} devcrypto)
|
|
|
|
target_link_libraries(${EXECUTABLE} ethcore)
|
|
|
|
target_link_libraries(${EXECUTABLE} secp256k1)
|
|
|
|
if(MINIUPNPC_LS)
|
|
|
|
target_link_libraries(${EXECUTABLE} ${MINIUPNPC_LS})
|
|
|
|
endif()
|
|
|
|
target_link_libraries(${EXECUTABLE} ${LEVELDB_LS})
|
|
|
|
target_link_libraries(${EXECUTABLE} ${CRYPTOPP_LS})
|
|
|
|
target_link_libraries(${EXECUTABLE} gmp)
|
|
|
|
|
|
|
|
if("${TARGET_PLATFORM}" STREQUAL "w64")
|
|
|
|
target_link_libraries(${EXECUTABLE} boost_system-mt-s)
|
|
|
|
target_link_libraries(${EXECUTABLE} boost_regex-mt-s)
|
|
|
|
target_link_libraries(${EXECUTABLE} boost_filesystem-mt-s)
|
|
|
|
target_link_libraries(${EXECUTABLE} boost_thread_win32-mt-s)
|
|
|
|
target_link_libraries(${EXECUTABLE} iphlpapi)
|
|
|
|
target_link_libraries(${EXECUTABLE} ws2_32)
|
|
|
|
target_link_libraries(${EXECUTABLE} mswsock)
|
|
|
|
target_link_libraries(${EXECUTABLE} shlwapi)
|
|
|
|
elseif (APPLE)
|
|
|
|
# Latest mavericks boost libraries only come with -mt
|
|
|
|
target_link_libraries(${EXECUTABLE} boost_system-mt)
|
|
|
|
target_link_libraries(${EXECUTABLE} boost_regex-mt)
|
|
|
|
target_link_libraries(${EXECUTABLE} boost_filesystem-mt)
|
|
|
|
target_link_libraries(${EXECUTABLE} boost_thread-mt)
|
|
|
|
find_package(Threads REQUIRED)
|
|
|
|
target_link_libraries(${EXECUTABLE} ${CMAKE_THREAD_LIBS_INIT})
|
|
|
|
elseif (UNIX)
|
|
|
|
target_link_libraries(${EXECUTABLE} ${Boost_SYSTEM_LIBRARY})
|
|
|
|
target_link_libraries(${EXECUTABLE} ${Boost_REGEX_LIBRARY})
|
|
|
|
target_link_libraries(${EXECUTABLE} ${Boost_FILESYSTEM_LIBRARY})
|
|
|
|
target_link_libraries(${EXECUTABLE} ${Boost_THREAD_LIBRARY})
|
|
|
|
target_link_libraries(${EXECUTABLE} ${Boost_DATE_TIME_LIBRARY})
|
|
|
|
target_link_libraries(${EXECUTABLE} ${CMAKE_THREAD_LIBS_INIT})
|
|
|
|
else ()
|
|
|
|
target_link_libraries(${EXECUTABLE} boost_system)
|
|
|
|
target_link_libraries(${EXECUTABLE} boost_regex)
|
|
|
|
target_link_libraries(${EXECUTABLE} boost_filesystem)
|
|
|
|
target_link_libraries(${EXECUTABLE} boost_thread)
|
|
|
|
find_package(Threads REQUIRED)
|
|
|
|
target_link_libraries(${EXECUTABLE} ${CMAKE_THREAD_LIBS_INIT})
|
|
|
|
endif ()
|
|
|
|
|
|
|
|
install( TARGETS ${EXECUTABLE} ARCHIVE DESTINATION lib LIBRARY DESTINATION lib )
|
|
|
|
install( FILES ${HEADERS} DESTINATION include/${EXECUTABLE} )
|
|
|
|
|