From e952f851b43e7b2b3eff0a473ee68951127205cf Mon Sep 17 00:00:00 2001 From: evoskuil Date: Fri, 2 Jan 2026 14:17:02 -0500 Subject: [PATCH 1/3] Remove zmq, protocol, and blockchain server .props dependencies. --- builds/msvc/vs2022/bs/bs.props | 19 ---------- .../vs2022/libbitcoin-blockchain.import.props | 35 ------------------ .../vs2022/libbitcoin-blockchain.import.xml | 17 --------- .../vs2022/libbitcoin-consensus.import.props | 36 ------------------- .../vs2022/libbitcoin-consensus.import.xml | 17 --------- .../vs2022/libbitcoin-protocol.import.props | 36 ------------------- .../vs2022/libbitcoin-protocol.import.xml | 17 --------- .../libbitcoin-server-test.props | 19 ---------- .../libbitcoin-server/libbitcoin-server.props | 19 ---------- 9 files changed, 215 deletions(-) delete mode 100644 builds/msvc/vs2022/libbitcoin-blockchain.import.props delete mode 100644 builds/msvc/vs2022/libbitcoin-blockchain.import.xml delete mode 100644 builds/msvc/vs2022/libbitcoin-consensus.import.props delete mode 100644 builds/msvc/vs2022/libbitcoin-consensus.import.xml delete mode 100644 builds/msvc/vs2022/libbitcoin-protocol.import.props delete mode 100644 builds/msvc/vs2022/libbitcoin-protocol.import.xml diff --git a/builds/msvc/vs2022/bs/bs.props b/builds/msvc/vs2022/bs/bs.props index 31e3f540..5d4d73c3 100644 --- a/builds/msvc/vs2022/bs/bs.props +++ b/builds/msvc/vs2022/bs/bs.props @@ -20,12 +20,9 @@ - - - @@ -34,54 +31,38 @@ - dynamic dynamic dynamic - dynamic dynamic - dynamic dynamic dynamic - dynamic dynamic - ltcg ltcg ltcg - ltcg ltcg - ltcg ltcg ltcg - ltcg ltcg - static static static - static static - static static static - static static - - - - diff --git a/builds/msvc/vs2022/libbitcoin-blockchain.import.props b/builds/msvc/vs2022/libbitcoin-blockchain.import.props deleted file mode 100644 index ab50a6e4..00000000 --- a/builds/msvc/vs2022/libbitcoin-blockchain.import.props +++ /dev/null @@ -1,35 +0,0 @@ - - - - - <_PropertySheetDisplayName>Libbitcoin Blockchain Import Settings - - - - - - - - - - - - - $(ProjectDir)..\..\..\..\..\libbitcoin-blockchain\include\;%(AdditionalIncludeDirectories) - BCB_STATIC;%(PreprocessorDefinitions) - - - libbitcoin-blockchain.lib;%(AdditionalDependencies) - - - - $(ProjectDir)..\..\..\..\..\libbitcoin-blockchain\bin\$(PlatformName)\Debug\$(PlatformToolset)\$(Linkage-libbitcoin-blockchain)\; - $(ProjectDir)..\..\..\..\..\libbitcoin-blockchain\obj\libbitcoin-blockchain\$(PlatformName)\Debug\$(PlatformToolset)\$(Linkage-libbitcoin-blockchain)\;%(AdditionalLibraryDirectories) - - - $(ProjectDir)..\..\..\..\..\libbitcoin-blockchain\bin\$(PlatformName)\Release\$(PlatformToolset)\$(Linkage-libbitcoin-blockchain)\; - $(ProjectDir)..\..\..\..\..\libbitcoin-blockchain\obj\libbitcoin-blockchain\$(PlatformName)\Release\$(PlatformToolset)\$(Linkage-libbitcoin-blockchain)\;%(AdditionalLibraryDirectories) - - - - \ No newline at end of file diff --git a/builds/msvc/vs2022/libbitcoin-blockchain.import.xml b/builds/msvc/vs2022/libbitcoin-blockchain.import.xml deleted file mode 100644 index 5c29172c..00000000 --- a/builds/msvc/vs2022/libbitcoin-blockchain.import.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/builds/msvc/vs2022/libbitcoin-consensus.import.props b/builds/msvc/vs2022/libbitcoin-consensus.import.props deleted file mode 100644 index f0f10e65..00000000 --- a/builds/msvc/vs2022/libbitcoin-consensus.import.props +++ /dev/null @@ -1,36 +0,0 @@ - - - - - <_PropertySheetDisplayName>Libbitcoin Consensus Import Settings - - - - - - - - - - - - - $(ProjectDir)..\..\..\..\..\libbitcoin-consensus\include\;%(AdditionalIncludeDirectories) - _WIN32_WINNT=0x0600;%(PreprocessorDefinitions) - BCK_STATIC;%(PreprocessorDefinitions) - - - libbitcoin-consensus.lib;%(AdditionalDependencies) - - - - $(ProjectDir)..\..\..\..\..\libbitcoin-consensus\bin\$(PlatformName)\Debug\$(PlatformToolset)\$(Linkage-libbitcoin-consensus)\; - $(ProjectDir)..\..\..\..\..\libbitcoin-consensus\obj\libbitcoin-consensus\$(PlatformName)\Debug\$(PlatformToolset)\$(Linkage-libbitcoin-consensus)\;%(AdditionalLibraryDirectories) - - - $(ProjectDir)..\..\..\..\..\libbitcoin-consensus\bin\$(PlatformName)\Release\$(PlatformToolset)\$(Linkage-libbitcoin-consensus)\; - $(ProjectDir)..\..\..\..\..\libbitcoin-consensus\obj\libbitcoin-consensus\$(PlatformName)\Release\$(PlatformToolset)\$(Linkage-libbitcoin-consensus)\;%(AdditionalLibraryDirectories) - - - - \ No newline at end of file diff --git a/builds/msvc/vs2022/libbitcoin-consensus.import.xml b/builds/msvc/vs2022/libbitcoin-consensus.import.xml deleted file mode 100644 index 2c4a76f7..00000000 --- a/builds/msvc/vs2022/libbitcoin-consensus.import.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/builds/msvc/vs2022/libbitcoin-protocol.import.props b/builds/msvc/vs2022/libbitcoin-protocol.import.props deleted file mode 100644 index 7fbe6c20..00000000 --- a/builds/msvc/vs2022/libbitcoin-protocol.import.props +++ /dev/null @@ -1,36 +0,0 @@ - - - - - <_PropertySheetDisplayName>Libbitcoin Protocol Import Settings - - - - - - - - - - - - - $(ProjectDir)..\..\..\..\..\libbitcoin-protocol\include\;%(AdditionalIncludeDirectories) - BCP_STATIC;%(PreprocessorDefinitions) - - - libbitcoin-protocol.lib;%(AdditionalDependencies) - Iphlpapi.lib;%(AdditionalDependencies) - - - - $(ProjectDir)..\..\..\..\..\libbitcoin-protocol\bin\$(PlatformName)\Debug\$(PlatformToolset)\$(Linkage-libbitcoin-protocol)\; - $(ProjectDir)..\..\..\..\..\libbitcoin-protocol\obj\libbitcoin-protocol\$(PlatformName)\Debug\$(PlatformToolset)\$(Linkage-libbitcoin-protocol)\;%(AdditionalLibraryDirectories) - - - $(ProjectDir)..\..\..\..\..\libbitcoin-protocol\bin\$(PlatformName)\Release\$(PlatformToolset)\$(Linkage-libbitcoin-protocol)\; - $(ProjectDir)..\..\..\..\..\libbitcoin-protocol\obj\libbitcoin-protocol\$(PlatformName)\Release\$(PlatformToolset)\$(Linkage-libbitcoin-protocol)\;%(AdditionalLibraryDirectories) - - - - \ No newline at end of file diff --git a/builds/msvc/vs2022/libbitcoin-protocol.import.xml b/builds/msvc/vs2022/libbitcoin-protocol.import.xml deleted file mode 100644 index cb516ac3..00000000 --- a/builds/msvc/vs2022/libbitcoin-protocol.import.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/builds/msvc/vs2022/libbitcoin-server-test/libbitcoin-server-test.props b/builds/msvc/vs2022/libbitcoin-server-test/libbitcoin-server-test.props index 35b507d4..accd225f 100644 --- a/builds/msvc/vs2022/libbitcoin-server-test/libbitcoin-server-test.props +++ b/builds/msvc/vs2022/libbitcoin-server-test/libbitcoin-server-test.props @@ -22,12 +22,9 @@ - - - @@ -36,54 +33,38 @@ - dynamic dynamic dynamic - dynamic dynamic - dynamic dynamic dynamic - dynamic dynamic - ltcg ltcg ltcg - ltcg ltcg - ltcg ltcg ltcg - ltcg ltcg - static static static - static static - static static static - static static - - - - diff --git a/builds/msvc/vs2022/libbitcoin-server/libbitcoin-server.props b/builds/msvc/vs2022/libbitcoin-server/libbitcoin-server.props index 1462cd4f..6727044f 100644 --- a/builds/msvc/vs2022/libbitcoin-server/libbitcoin-server.props +++ b/builds/msvc/vs2022/libbitcoin-server/libbitcoin-server.props @@ -28,12 +28,9 @@ - - - @@ -41,51 +38,35 @@ - dynamic dynamic dynamic - dynamic dynamic - dynamic dynamic dynamic - dynamic - ltcg ltcg ltcg - ltcg ltcg - ltcg ltcg ltcg - ltcg - static static static - static static - static static static - static - - - - From c17db36426e869b1f15b773bc1b9718732e83db7 Mon Sep 17 00:00:00 2001 From: evoskuil Date: Fri, 2 Jan 2026 14:18:17 -0500 Subject: [PATCH 2/3] Regenerate artifacts. --- Makefile.am | 173 ++++++++++++++++++ builds/cmake/CMakeLists.txt | 15 -- .../libbitcoin-server.vcxproj | 2 +- .../libbitcoin-server.vcxproj.filters | 2 +- libbitcoin-server.pc.in | 12 ++ 5 files changed, 187 insertions(+), 17 deletions(-) diff --git a/Makefile.am b/Makefile.am index bf644b31..02f64100 100644 --- a/Makefile.am +++ b/Makefile.am @@ -31,3 +31,176 @@ doc_DATA = \ # src/libbitcoin-server.la => ${libdir} #------------------------------------------------------------------------------ +lib_LTLIBRARIES = src/libbitcoin-server.la +src_libbitcoin_server_la_CPPFLAGS = -I${srcdir}/include -DSYSCONFDIR=\"${sysconfdir}\" ${bitcoin_node_BUILD_CPPFLAGS} +src_libbitcoin_server_la_LIBADD = ${bitcoin_node_LIBS} +src_libbitcoin_server_la_SOURCES = \ + src/configuration.cpp \ + src/error.cpp \ + src/parser.cpp \ + src/server_node.cpp \ + src/settings.cpp \ + src/parsers/bitcoind_query.cpp \ + src/parsers/bitcoind_target.cpp \ + src/parsers/explore_query.cpp \ + src/parsers/explore_target.cpp \ + src/protocols/protocol_bitcoind_rest.cpp \ + src/protocols/protocol_bitcoind_rpc.cpp \ + src/protocols/protocol_electrum.cpp \ + src/protocols/protocol_electrum_version.cpp \ + src/protocols/protocol_explore.cpp \ + src/protocols/protocol_html.cpp \ + src/protocols/protocol_http.cpp \ + src/protocols/protocol_stratum_v1.cpp + +# local: test/libbitcoin-server-test +#------------------------------------------------------------------------------ +if WITH_TESTS + +TESTS = libbitcoin-server-test_runner.sh + +check_PROGRAMS = test/libbitcoin-server-test +test_libbitcoin_server_test_CPPFLAGS = -I${srcdir}/include ${bitcoin_node_BUILD_CPPFLAGS} +test_libbitcoin_server_test_LDADD = src/libbitcoin-server.la ${boost_unit_test_framework_LIBS} ${bitcoin_node_LIBS} +test_libbitcoin_server_test_SOURCES = \ + test/error.cpp \ + test/main.cpp \ + test/test.cpp \ + test/test.hpp + +endif WITH_TESTS + +# console/bs => ${bindir} +#------------------------------------------------------------------------------ +if WITH_CONSOLE + +bin_PROGRAMS = console/bs +console_bs_CPPFLAGS = -I${srcdir}/include ${bitcoin_node_BUILD_CPPFLAGS} +console_bs_LDADD = src/libbitcoin-server.la ${bitcoin_node_LIBS} +console_bs_SOURCES = \ + console/executor.cpp \ + console/executor.hpp \ + console/executor_commands.cpp \ + console/executor_dumps.cpp \ + console/executor_events.cpp \ + console/executor_logging.cpp \ + console/executor_options.cpp \ + console/executor_runner.cpp \ + console/executor_scans.cpp \ + console/executor_store.cpp \ + console/executor_test_reader.cpp \ + console/executor_test_writer.cpp \ + console/localize.hpp \ + console/main.cpp \ + console/stack_trace.cpp \ + console/stack_trace.hpp \ + console/embedded/embedded.hpp \ + console/embedded/explore_css.cpp \ + console/embedded/explore_ecma.cpp \ + console/embedded/explore_font.cpp \ + console/embedded/explore_html.cpp \ + console/embedded/explore_icon.cpp \ + console/embedded/web_css.cpp \ + console/embedded/web_ecma.cpp \ + console/embedded/web_font.cpp \ + console/embedded/web_html.cpp \ + console/embedded/web_icon.cpp + +endif WITH_CONSOLE + +# files => ${includedir}/bitcoin +#------------------------------------------------------------------------------ +include_bitcoindir = ${includedir}/bitcoin +include_bitcoin_HEADERS = \ + include/bitcoin/server.hpp + +include_bitcoin_serverdir = ${includedir}/bitcoin/server +include_bitcoin_server_HEADERS = \ + include/bitcoin/server/configuration.hpp \ + include/bitcoin/server/define.hpp \ + include/bitcoin/server/error.hpp \ + include/bitcoin/server/parser.hpp \ + include/bitcoin/server/server_node.hpp \ + include/bitcoin/server/settings.hpp \ + include/bitcoin/server/version.hpp + +include_bitcoin_server_channelsdir = ${includedir}/bitcoin/server/channels +include_bitcoin_server_channels_HEADERS = \ + include/bitcoin/server/channels/channel_electrum.hpp \ + include/bitcoin/server/channels/channel_http.hpp \ + include/bitcoin/server/channels/channel_stratum_v1.hpp \ + include/bitcoin/server/channels/channel_stratum_v2.hpp \ + include/bitcoin/server/channels/channel_ws.hpp \ + include/bitcoin/server/channels/channels.hpp + +include_bitcoin_server_interfacesdir = ${includedir}/bitcoin/server/interfaces +include_bitcoin_server_interfaces_HEADERS = \ + include/bitcoin/server/interfaces/bitcoind_rest.hpp \ + include/bitcoin/server/interfaces/bitcoind_rpc.hpp \ + include/bitcoin/server/interfaces/electrum.hpp \ + include/bitcoin/server/interfaces/explore.hpp \ + include/bitcoin/server/interfaces/interfaces.hpp \ + include/bitcoin/server/interfaces/stratum_v1.hpp \ + include/bitcoin/server/interfaces/stratum_v2.hpp \ + include/bitcoin/server/interfaces/types.hpp + +include_bitcoin_server_parsersdir = ${includedir}/bitcoin/server/parsers +include_bitcoin_server_parsers_HEADERS = \ + include/bitcoin/server/parsers/bitcoind_query.hpp \ + include/bitcoin/server/parsers/bitcoind_target.hpp \ + include/bitcoin/server/parsers/electrum_version.hpp \ + include/bitcoin/server/parsers/explore_query.hpp \ + include/bitcoin/server/parsers/explore_target.hpp \ + include/bitcoin/server/parsers/parsers.hpp + +include_bitcoin_server_protocolsdir = ${includedir}/bitcoin/server/protocols +include_bitcoin_server_protocols_HEADERS = \ + include/bitcoin/server/protocols/protocol.hpp \ + include/bitcoin/server/protocols/protocol_bitcoind_rest.hpp \ + include/bitcoin/server/protocols/protocol_bitcoind_rpc.hpp \ + include/bitcoin/server/protocols/protocol_electrum.hpp \ + include/bitcoin/server/protocols/protocol_electrum_version.hpp \ + include/bitcoin/server/protocols/protocol_explore.hpp \ + include/bitcoin/server/protocols/protocol_html.hpp \ + include/bitcoin/server/protocols/protocol_http.hpp \ + include/bitcoin/server/protocols/protocol_rpc.hpp \ + include/bitcoin/server/protocols/protocol_stratum_v1.hpp \ + include/bitcoin/server/protocols/protocol_stratum_v2.hpp \ + include/bitcoin/server/protocols/protocol_web.hpp \ + include/bitcoin/server/protocols/protocols.hpp + +include_bitcoin_server_sessionsdir = ${includedir}/bitcoin/server/sessions +include_bitcoin_server_sessions_HEADERS = \ + include/bitcoin/server/sessions/session_handshake.hpp \ + include/bitcoin/server/sessions/session_server.hpp \ + include/bitcoin/server/sessions/sessions.hpp + +# files => ${bash_completiondir} +#------------------------------------------------------------------------------ +if BASH_COMPLETIONDIR + +dist_bash_completion_DATA = \ + data/bs + +endif BASH_COMPLETIONDIR + +# files => ${sysconfdir}/libbitcoin +#------------------------------------------------------------------------------ +if WITH_CONSOLE + +sysconf_libbitcoindir = ${sysconfdir}/libbitcoin +sysconf_libbitcoin_DATA = \ + data/bs.cfg + +endif WITH_CONSOLE + + +# Custom make targets. +#============================================================================== +# make target: console +#------------------------------------------------------------------------------ +target_console = \ + console/bs + +console: ${target_console} + diff --git a/builds/cmake/CMakeLists.txt b/builds/cmake/CMakeLists.txt index 8d367ead..cd9022bd 100644 --- a/builds/cmake/CMakeLists.txt +++ b/builds/cmake/CMakeLists.txt @@ -171,33 +171,27 @@ find_package( Bitcoin-Node 4.0.0 REQUIRED ) # Define project common includes for build. #------------------------------------------------------------------------------ if (BUILD_SHARED_LIBS) - set( bitcoin_protocol_FOR_BUILD_INCLUDE_DIRS ${bitcoin_protocol_INCLUDE_DIRS} CACHE STRING "Placeholder" ) set( bitcoin_node_FOR_BUILD_INCLUDE_DIRS ${bitcoin_node_INCLUDE_DIRS} CACHE STRING "Placeholder" ) else() - set( bitcoin_protocol_FOR_BUILD_INCLUDE_DIRS ${bitcoin_protocol_STATIC_INCLUDE_DIRS} CACHE STRING "Placeholder" ) set( bitcoin_node_FOR_BUILD_INCLUDE_DIRS ${bitcoin_node_STATIC_INCLUDE_DIRS} CACHE STRING "Placeholder" ) endif() # Define project common includes directories #------------------------------------------------------------------------------ include_directories( SYSTEM - ${bitcoin_protocol_FOR_BUILD_INCLUDE_DIRS} ${bitcoin_node_FOR_BUILD_INCLUDE_DIRS} ) # Define project common library directories for build. #------------------------------------------------------------------------------ if (BUILD_SHARED_LIBS) - set( bitcoin_protocol_FOR_BUILD_LIBRARY_DIRS ${bitcoin_protocol_LIBRARY_DIRS} CACHE STRING "Placeholder" ) set( bitcoin_node_FOR_BUILD_LIBRARY_DIRS ${bitcoin_node_LIBRARY_DIRS} CACHE STRING "Placeholder" ) else() - set( bitcoin_protocol_FOR_BUILD_LIBRARY_DIRS ${bitcoin_protocol_STATIC_LIBRARY_DIRS} CACHE STRING "Placeholder" ) set( bitcoin_node_FOR_BUILD_LIBRARY_DIRS ${bitcoin_node_STATIC_LIBRARY_DIRS} CACHE STRING "Placeholder" ) endif() # Define project common library directories #------------------------------------------------------------------------------ link_directories( - ${bitcoin_protocol_FOR_BUILD_LIBRARY_DIRS} ${bitcoin_node_FOR_BUILD_LIBRARY_DIRS} ) # Define project common linker flags. @@ -224,17 +218,14 @@ endif() # Define common library usage for build. #------------------------------------------------------------------------------ if (BUILD_SHARED_LIBS) - set( bitcoin_protocol_FOR_BUILD_LIBRARIES ${bitcoin_protocol_LIBRARIES} CACHE STRING "Placeholder" ) set( bitcoin_node_FOR_BUILD_LIBRARIES ${bitcoin_node_LIBRARIES} CACHE STRING "Placeholder" ) else() - set( bitcoin_protocol_FOR_BUILD_LIBRARIES ${bitcoin_protocol_STATIC_LIBRARIES} CACHE STRING "Placeholder" ) set( bitcoin_node_FOR_BUILD_LIBRARIES ${bitcoin_node_STATIC_LIBRARIES} CACHE STRING "Placeholder" ) endif() # Define project common libraries. #------------------------------------------------------------------------------ link_libraries( - ${bitcoin_protocol_FOR_BUILD_LIBRARIES} ${bitcoin_node_FOR_BUILD_LIBRARIES} ) add_definitions( @@ -264,10 +255,8 @@ add_library( ${CANONICAL_LIB_NAME} # ${CANONICAL_LIB_NAME} project specific include directory normalization for build. #------------------------------------------------------------------------------ if (BUILD_SHARED_LIBS) - set( bitcoin_protocol_FOR_BUILD_INCLUDE_DIRS ${bitcoin_protocol_INCLUDE_DIRS} CACHE STRING "Placeholder" ) set( bitcoin_node_FOR_BUILD_INCLUDE_DIRS ${bitcoin_node_INCLUDE_DIRS} CACHE STRING "Placeholder" ) else() - set( bitcoin_protocol_FOR_BUILD_INCLUDE_DIRS ${bitcoin_protocol_STATIC_INCLUDE_DIRS} CACHE STRING "Placeholder" ) set( bitcoin_node_FOR_BUILD_INCLUDE_DIRS ${bitcoin_node_STATIC_INCLUDE_DIRS} CACHE STRING "Placeholder" ) endif() @@ -275,7 +264,6 @@ endif() #------------------------------------------------------------------------------ target_include_directories( ${CANONICAL_LIB_NAME} PRIVATE "../../include" - ${bitcoin_protocol_FOR_BUILD_INCLUDE_DIRS} ${bitcoin_node_FOR_BUILD_INCLUDE_DIRS} ) target_include_directories( ${CANONICAL_LIB_NAME} PUBLIC @@ -284,17 +272,14 @@ target_include_directories( ${CANONICAL_LIB_NAME} PUBLIC # ${CANONICAL_LIB_NAME} project specific libraries noramalization for build. #------------------------------------------------------------------------------ if (BUILD_SHARED_LIBS) - set( bitcoin_protocol_FOR_BUILD_LIBRARIES ${bitcoin_protocol_LIBRARIES} CACHE STRING "Placeholder" ) set( bitcoin_node_FOR_BUILD_LIBRARIES ${bitcoin_node_LIBRARIES} CACHE STRING "Placeholder" ) else() - set( bitcoin_protocol_FOR_BUILD_LIBRARIES ${bitcoin_protocol_STATIC_LIBRARIES} CACHE STRING "Placeholder" ) set( bitcoin_node_FOR_BUILD_LIBRARIES ${bitcoin_node_STATIC_LIBRARIES} CACHE STRING "Placeholder" ) endif() # ${CANONICAL_LIB_NAME} project specific libraries/linker flags. #------------------------------------------------------------------------------ target_link_libraries( ${CANONICAL_LIB_NAME} - ${bitcoin_protocol_FOR_BUILD_LIBRARIES} ${bitcoin_node_FOR_BUILD_LIBRARIES} ) # Define libbitcoin-server-test project. diff --git a/builds/msvc/vs2022/libbitcoin-server/libbitcoin-server.vcxproj b/builds/msvc/vs2022/libbitcoin-server/libbitcoin-server.vcxproj index c89cadeb..14cdb559 100644 --- a/builds/msvc/vs2022/libbitcoin-server/libbitcoin-server.vcxproj +++ b/builds/msvc/vs2022/libbitcoin-server/libbitcoin-server.vcxproj @@ -218,4 +218,4 @@ - \ No newline at end of file + diff --git a/builds/msvc/vs2022/libbitcoin-server/libbitcoin-server.vcxproj.filters b/builds/msvc/vs2022/libbitcoin-server/libbitcoin-server.vcxproj.filters index aba46af3..d6253b8b 100644 --- a/builds/msvc/vs2022/libbitcoin-server/libbitcoin-server.vcxproj.filters +++ b/builds/msvc/vs2022/libbitcoin-server/libbitcoin-server.vcxproj.filters @@ -245,4 +245,4 @@ resource - \ No newline at end of file + diff --git a/libbitcoin-server.pc.in b/libbitcoin-server.pc.in index fd7d8448..d1e04f17 100644 --- a/libbitcoin-server.pc.in +++ b/libbitcoin-server.pc.in @@ -23,3 +23,15 @@ Version: @PACKAGE_VERSION@ # Variables #============================================================================== +# Dependencies that publish package configuration. +#------------------------------------------------------------------------------ +Requires: libbitcoin-node >= 4.0.0 + +# Include directory and any other required compiler flags. +#------------------------------------------------------------------------------ +Cflags: -I${includedir} + +# Lib directory, lib and any required that do not publish pkg-config. +#------------------------------------------------------------------------------ +Libs: -L${libdir} -lbitcoin-server + From 497b4daea7decce6cebb35321765d7a9c574bedd Mon Sep 17 00:00:00 2001 From: evoskuil Date: Fri, 2 Jan 2026 14:51:47 -0500 Subject: [PATCH 3/3] Resolve inheritance ambiguities. --- include/bitcoin/server/protocols/protocol_html.hpp | 4 ++-- include/bitcoin/server/protocols/protocol_http.hpp | 4 ++-- include/bitcoin/server/protocols/protocol_rpc.hpp | 4 ++-- include/bitcoin/server/sessions/session_server.hpp | 5 ++--- 4 files changed, 8 insertions(+), 9 deletions(-) diff --git a/include/bitcoin/server/protocols/protocol_html.hpp b/include/bitcoin/server/protocols/protocol_html.hpp index 04ab96b3..215b284b 100644 --- a/include/bitcoin/server/protocols/protocol_html.hpp +++ b/include/bitcoin/server/protocols/protocol_html.hpp @@ -32,7 +32,7 @@ namespace server { /// derives from protocol_http (as required). So any html server is able to /// operate as a websocket server. class BCS_API protocol_html - : public protocol_http, + : public server::protocol_http, public network::protocol_ws, protected network::tracker { @@ -44,7 +44,7 @@ class BCS_API protocol_html inline protocol_html(const auto& session, const network::channel::ptr& channel, const options_t& options) NOEXCEPT - : protocol_http(session, channel), + : server::protocol_http(session, channel), network::protocol_ws(session, channel, options), options_(options), network::tracker(session->log) diff --git a/include/bitcoin/server/protocols/protocol_http.hpp b/include/bitcoin/server/protocols/protocol_http.hpp index 043a621b..422016d7 100644 --- a/include/bitcoin/server/protocols/protocol_http.hpp +++ b/include/bitcoin/server/protocols/protocol_http.hpp @@ -30,13 +30,13 @@ namespace server { /// Abstract base for HTTP protocols, thread safe. class BCS_API protocol_http : public server::protocol, - protected network::tracker + protected network::tracker { protected: inline protocol_http(const auto& session, const network::channel::ptr& channel) NOEXCEPT : server::protocol(session, channel), - network::tracker(session->log) + network::tracker(session->log) { } diff --git a/include/bitcoin/server/protocols/protocol_rpc.hpp b/include/bitcoin/server/protocols/protocol_rpc.hpp index 7e757532..dc640923 100644 --- a/include/bitcoin/server/protocols/protocol_rpc.hpp +++ b/include/bitcoin/server/protocols/protocol_rpc.hpp @@ -32,7 +32,7 @@ template class BCS_API protocol_rpc : public server::protocol, public network::protocol_rpc, - protected network::tracker> + protected network::tracker> { public: using channel_t = Channel; @@ -43,7 +43,7 @@ class BCS_API protocol_rpc const network::channel::ptr& channel, const options_t& options) NOEXCEPT : server::protocol(session, channel), network::protocol_rpc(session, channel, options), - network::tracker>(session->log) + network::tracker>(session->log) { } }; diff --git a/include/bitcoin/server/sessions/session_server.hpp b/include/bitcoin/server/sessions/session_server.hpp index 77eff3df..88ed23c1 100644 --- a/include/bitcoin/server/sessions/session_server.hpp +++ b/include/bitcoin/server/sessions/session_server.hpp @@ -59,9 +59,8 @@ class session_server /// Construct an instance (network should be started). inline session_server(server_node& node, uint64_t identifier, const configuration& config, const options_t& options) NOEXCEPT - : node::session(node), - ////network::session_server((network::net&)node, identifier, options), - network::session_server(node, identifier, options), + : node::session((node::full_node&)node), + network::session_server((network::net&)node, identifier, options), config_(config), options_(options), network::tracker>(node) {