diff --git a/contrib/devtools/check-deps.sh b/contrib/devtools/check-deps.sh index 0ae817254d78..6b512deff514 100755 --- a/contrib/devtools/check-deps.sh +++ b/contrib/devtools/check-deps.sh @@ -47,6 +47,10 @@ declare -A SUPPRESS # https://github.com/bitcoin/bitcoin/issues/10102 SUPPRESS["common.cpp.o interface_ui.cpp.o _Z11InitWarningRK13bilingual_str"]=1 SUPPRESS["common.cpp.o interface_ui.cpp.o _Z9InitErrorRK13bilingual_str"]=1 +# CBlockHeader::GetHash() applies the CPUNET hash domain separator based on +# the selected application chain. +SUPPRESS["block.cpp.o args.cpp.o _ZNK11ArgsManager18GetChainTypeStringB5cxx11Ev"]=1 +SUPPRESS["block.cpp.o chaintype.cpp.o _Z17ChainTypeToStringB5cxx119ChainType"]=1 usage() { echo "Usage: $(basename "${BASH_SOURCE[0]}") [BUILD_DIR]" diff --git a/src/bitcoin-util.cpp b/src/bitcoin-util.cpp index 90144cf8c807..e2edd6a8107e 100644 --- a/src/bitcoin-util.cpp +++ b/src/bitcoin-util.cpp @@ -134,16 +134,16 @@ static int Grind(const std::vector& args, std::string& strPrint) uint16_t n_tasks = std::max(1u, std::thread::hardware_concurrency()); if(gArgs.IsArgSet("-ntasks")) { const auto ntasks_str = *gArgs.GetArg("-ntasks"); - try { - n_tasks = std::stoi(ntasks_str); - if (n_tasks <= 0 || n_tasks > std::thread::hardware_concurrency()) { - strPrint = strprintf("Argument to -ntasks must be a positive number less than or equal to the number of cores %u, found %s\n", std::thread::hardware_concurrency(), ntasks_str); - return EXIT_FAILURE; - } - } catch (const std::exception&) { + const auto parsed_n_tasks = ToIntegral(ntasks_str); + if (!parsed_n_tasks) { strPrint = strprintf("Argument to -ntasks should be a number, found %s\n", ntasks_str); return EXIT_FAILURE; } + n_tasks = *parsed_n_tasks; + if (n_tasks <= 0 || n_tasks > std::thread::hardware_concurrency()) { + strPrint = strprintf("Argument to -ntasks must be a positive number less than or equal to the number of cores %u, found %s\n", std::thread::hardware_concurrency(), ntasks_str); + return EXIT_FAILURE; + } } threads.reserve(n_tasks); for (int i = 0; i < n_tasks; ++i) { diff --git a/src/chainparamsbase.cpp b/src/chainparamsbase.cpp index 125768d6d30e..83412146fef4 100644 --- a/src/chainparamsbase.cpp +++ b/src/chainparamsbase.cpp @@ -13,15 +13,15 @@ void SetupChainParamsBaseOptions(ArgsManager& argsman) { - argsman.AddArg("-chain=", "Use the chain (default: main). Allowed values: main, test, signet, regtest, cpunet", ArgsManager::ALLOW_ANY, OptionsCategory::CHAINPARAMS); + argsman.AddArg("-chain=", "Use the chain . This build supports only regtest and cpunet.", ArgsManager::ALLOW_ANY, OptionsCategory::CHAINPARAMS); argsman.AddArg("-regtest", "Enter regression test mode, which uses a special chain in which blocks can be solved instantly. " "This is intended for regression testing tools and app development. Equivalent to -chain=regtest.", ArgsManager::ALLOW_ANY | ArgsManager::DEBUG_ONLY, OptionsCategory::CHAINPARAMS); argsman.AddArg("-testactivationheight=name@height.", "Set the activation height of 'name' (segwit, bip34, dersig, cltv, csv). (regtest-only)", ArgsManager::ALLOW_ANY | ArgsManager::DEBUG_ONLY, OptionsCategory::DEBUG_TEST); - argsman.AddArg("-testnet", "Use the testnet3 chain. Equivalent to -chain=test. Support for testnet3 is deprecated and will be removed in an upcoming release. Consider moving to testnet4 now by using -testnet4.", ArgsManager::ALLOW_ANY, OptionsCategory::CHAINPARAMS); - argsman.AddArg("-testnet4", "Use the testnet4 chain. Equivalent to -chain=testnet4.", ArgsManager::ALLOW_ANY, OptionsCategory::CHAINPARAMS); + argsman.AddArg("-testnet", "Unsupported in this build.", ArgsManager::ALLOW_ANY, OptionsCategory::CHAINPARAMS); + argsman.AddArg("-testnet4", "Unsupported in this build.", ArgsManager::ALLOW_ANY, OptionsCategory::CHAINPARAMS); argsman.AddArg("-cpunet", "Use the CPU-mined test chain. Equivalent to -chain=cpunet.", ArgsManager::ALLOW_ANY, OptionsCategory::CHAINPARAMS); argsman.AddArg("-vbparams=deployment:start:end[:min_activation_height]", "Use given start/end times and min_activation_height for specified version bits deployment (regtest-only)", ArgsManager::ALLOW_ANY | ArgsManager::DEBUG_ONLY, OptionsCategory::CHAINPARAMS); - argsman.AddArg("-signet", "Use the signet chain. Equivalent to -chain=signet. Note that the network is defined by the -signetchallenge parameter", ArgsManager::ALLOW_ANY, OptionsCategory::CHAINPARAMS); + argsman.AddArg("-signet", "Unsupported in this build.", ArgsManager::ALLOW_ANY, OptionsCategory::CHAINPARAMS); argsman.AddArg("-signetchallenge", "Blocks must satisfy the given script to be considered valid (only for signet networks; defaults to the global default signet test network challenge)", ArgsManager::ALLOW_ANY | ArgsManager::DISALLOW_NEGATION, OptionsCategory::CHAINPARAMS); argsman.AddArg("-signetseednode", "Specify a seed node for the signet network, in the hostname[:port] format, e.g. sig.net:1234 (may be used multiple times to specify multiple seed nodes; defaults to the global default signet test network seed node(s))", ArgsManager::ALLOW_ANY | ArgsManager::DISALLOW_NEGATION, OptionsCategory::CHAINPARAMS); } diff --git a/src/chainparamsbase.h b/src/chainparamsbase.h index 0700b9ae2e71..ab417dd1d58c 100644 --- a/src/chainparamsbase.h +++ b/src/chainparamsbase.h @@ -25,7 +25,7 @@ class CBaseChainParams uint16_t OnionServiceTargetPort() const { return m_onion_service_target_port; } CBaseChainParams() = delete; CBaseChainParams(const std::string& data_dir, uint16_t rpc_port, uint16_t onion_service_target_port) - : m_rpc_port(rpc_port), strDataDir(data_dir), m_onion_service_target_port(onion_service_target_port) {} + : m_rpc_port(rpc_port), m_onion_service_target_port(onion_service_target_port), strDataDir(data_dir) {} private: const uint16_t m_rpc_port; diff --git a/src/kernel/CMakeLists.txt b/src/kernel/CMakeLists.txt index 244f0098fdf9..7960fb12f958 100644 --- a/src/kernel/CMakeLists.txt +++ b/src/kernel/CMakeLists.txt @@ -107,6 +107,7 @@ target_link_libraries(bitcoinkernel $ Boost::headers ) +target_compile_definitions(bitcoinkernel PRIVATE BITCOIN_KERNEL) target_include_directories(bitcoinkernel PRIVATE $) diff --git a/src/kernel/chainparams.cpp b/src/kernel/chainparams.cpp index fdea3ad8a4b8..d84fd77cb157 100644 --- a/src/kernel/chainparams.cpp +++ b/src/kernel/chainparams.cpp @@ -16,7 +16,6 @@ #include #include