diff --git a/libraries/plugins/CMakeLists.txt b/libraries/plugins/CMakeLists.txt index d2a5be16..96240173 100644 --- a/libraries/plugins/CMakeLists.txt +++ b/libraries/plugins/CMakeLists.txt @@ -12,3 +12,5 @@ add_subdirectory( debug_witness ) add_subdirectory( snapshot ) add_subdirectory( peerplays_sidechain ) add_subdirectory( es_objects ) + +add_subdirectory( libbitcoin ) diff --git a/libraries/plugins/libbitcoin/CMakeLists.txt b/libraries/plugins/libbitcoin/CMakeLists.txt new file mode 100644 index 00000000..e2353f49 --- /dev/null +++ b/libraries/plugins/libbitcoin/CMakeLists.txt @@ -0,0 +1,26 @@ +include(ExternalProject) + +set(LIBBITCOIN_DIR ${CMAKE_CURRENT_SOURCE_DIR}/libbitcoin-system) +set(LIBBITCOIN_BIN ${CMAKE_CURRENT_BINARY_DIR}/libbitcoin) +set(LIBBITCOIN_STATIC_LIB ${LIBBITCOIN_BIN}/lib/libbitcoin.a) +set(LIBBITCOIN_INCLUDES ${LIBBITCOIN_BIN}/include) + +file(MAKE_DIRECTORY ${LIBBITCOIN_INCLUDES}) + +ExternalProject_Add( + libbitcoin + PREFIX ${LIBBITCOIN_BIN} + SOURCE_DIR ${LIBBITCOIN_DIR} + DOWNLOAD_COMMAND cd ${LIBBITCOIN_DIR} && ${LIBBITCOIN_DIR}/autogen.sh + CONFIGURE_COMMAND ${LIBBITCOIN_DIR}/configure --srcdir=${LIBBITCOIN_DIR} --prefix=${LIBBITCOIN_BIN} --enable-static=yes --disable-shared --with-examples=no + BUILD_COMMAND make + INSTALL_COMMAND make install + BUILD_BYPRODUCTS ${LIBBITCOIN_STATIC_LIB} +) + +add_library(bitcoin STATIC IMPORTED GLOBAL) + +add_dependencies(bitcoin libbitcoin) + +set_target_properties(bitcoin PROPERTIES IMPORTED_LOCATION ${LIBBITCOIN_STATIC_LIB}) +set_target_properties(bitcoin PROPERTIES INTERFACE_INCLUDE_DIRECTORIES ${LIBBITCOIN_INCLUDES})