From c27e4bdc35bc7cedd1ee07e98a52c230241120d1 Mon Sep 17 00:00:00 2001 From: TheCharlatan Date: Wed, 24 May 2023 15:55:53 +0200 Subject: [PATCH] move-only: Move settings to the common library The background of this commit is an ongoing effort to decouple the libbitcoinkernel library from code that is not strictly required by it. The settings code belongs into the common library and namespace, since the kernel library should not depend on it. See doc/design/libraries.md for more information on this rationale. Changing the namespace of the moved functions is scripted in the following commit. --- src/Makefile.am | 4 ++-- src/addrdb.cpp | 2 +- src/common/args.cpp | 2 +- src/common/args.h | 2 +- src/common/config.cpp | 2 +- src/{util => common}/settings.cpp | 7 +++++-- src/{util => common}/settings.h | 7 ++++--- src/interfaces/chain.h | 2 +- src/interfaces/node.h | 2 +- src/qt/test/optiontests.h | 2 +- src/test/fuzz/string.cpp | 2 +- src/test/getarg_tests.cpp | 2 +- src/test/settings_tests.cpp | 2 +- 13 files changed, 21 insertions(+), 17 deletions(-) rename src/{util => common}/settings.cpp (99%) rename src/{util => common}/settings.h (97%) diff --git a/src/Makefile.am b/src/Makefile.am index 77c36da6588..b4ff556eb6d 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -143,6 +143,7 @@ BITCOIN_CORE_H = \ compat/compat.h \ compat/cpuid.h \ compat/endian.h \ + common/settings.h \ common/system.h \ compressor.h \ consensus/consensus.h \ @@ -309,7 +310,6 @@ BITCOIN_CORE_H = \ util/readwritefile.h \ util/result.h \ util/serfloat.h \ - util/settings.h \ util/sock.h \ util/spanparsing.h \ util/string.h \ @@ -663,6 +663,7 @@ libbitcoin_common_a_SOURCES = \ common/init.cpp \ common/interfaces.cpp \ common/run_command.cpp \ + common/settings.cpp \ common/system.cpp \ compressor.cpp \ core_read.cpp \ @@ -733,7 +734,6 @@ libbitcoin_util_a_SOURCES = \ util/moneystr.cpp \ util/rbf.cpp \ util/readwritefile.cpp \ - util/settings.cpp \ util/thread.cpp \ util/threadinterrupt.cpp \ util/threadnames.cpp \ diff --git a/src/addrdb.cpp b/src/addrdb.cpp index 23f9600ea51..e86fc231a58 100644 --- a/src/addrdb.cpp +++ b/src/addrdb.cpp @@ -9,6 +9,7 @@ #include #include #include +#include #include #include #include @@ -21,7 +22,6 @@ #include #include #include -#include #include namespace { diff --git a/src/common/args.cpp b/src/common/args.cpp index c9af2d7f5e1..289410ecbe8 100644 --- a/src/common/args.cpp +++ b/src/common/args.cpp @@ -6,6 +6,7 @@ #include #include +#include #include #include #include @@ -14,7 +15,6 @@ #include #include #include -#include #include #ifdef WIN32 diff --git a/src/common/args.h b/src/common/args.h index 7569297a74c..c4debb9c82c 100644 --- a/src/common/args.h +++ b/src/common/args.h @@ -5,11 +5,11 @@ #ifndef BITCOIN_COMMON_ARGS_H #define BITCOIN_COMMON_ARGS_H +#include #include #include #include #include -#include #include #include diff --git a/src/common/config.cpp b/src/common/config.cpp index e25b4fe2dfe..d156f8e5142 100644 --- a/src/common/config.cpp +++ b/src/common/config.cpp @@ -4,13 +4,13 @@ #include +#include #include #include #include #include #include #include -#include #include #include diff --git a/src/util/settings.cpp b/src/common/settings.cpp similarity index 99% rename from src/util/settings.cpp rename to src/common/settings.cpp index db3d60046ed..7d08355b339 100644 --- a/src/util/settings.cpp +++ b/src/common/settings.cpp @@ -2,15 +2,18 @@ // Distributed under the MIT software license, see the accompanying // file COPYING or http://www.opensource.org/licenses/mit-license.php. -#include -#include +#include #include #include +#include +#include #include +#include #include #include +#include #include namespace util { diff --git a/src/util/settings.h b/src/common/settings.h similarity index 97% rename from src/util/settings.h rename to src/common/settings.h index bb1fe585e13..4cec85ea1eb 100644 --- a/src/util/settings.h +++ b/src/common/settings.h @@ -2,11 +2,12 @@ // Distributed under the MIT software license, see the accompanying // file COPYING or http://www.opensource.org/licenses/mit-license.php. -#ifndef BITCOIN_UTIL_SETTINGS_H -#define BITCOIN_UTIL_SETTINGS_H +#ifndef BITCOIN_COMMON_SETTINGS_H +#define BITCOIN_COMMON_SETTINGS_H #include +#include #include #include #include @@ -111,4 +112,4 @@ auto FindKey(Map&& map, Key&& key) -> decltype(&map.at(key)) } // namespace util -#endif // BITCOIN_UTIL_SETTINGS_H +#endif // BITCOIN_COMMON_SETTINGS_H diff --git a/src/interfaces/chain.h b/src/interfaces/chain.h index 40bf0b680c2..81b444fd335 100644 --- a/src/interfaces/chain.h +++ b/src/interfaces/chain.h @@ -6,8 +6,8 @@ #define BITCOIN_INTERFACES_CHAIN_H #include +#include #include // For CTransactionRef -#include // For util::SettingsValue #include #include diff --git a/src/interfaces/node.h b/src/interfaces/node.h index 7e87d5a5237..432fa24ee72 100644 --- a/src/interfaces/node.h +++ b/src/interfaces/node.h @@ -5,13 +5,13 @@ #ifndef BITCOIN_INTERFACES_NODE_H #define BITCOIN_INTERFACES_NODE_H +#include #include // For CAmount #include // For NodeId #include // For banmap_t #include // For Network #include // For ConnectionDirection #include // For SecureString -#include // For util::SettingsValue #include #include diff --git a/src/qt/test/optiontests.h b/src/qt/test/optiontests.h index 0c458c97a63..f8c0f75c343 100644 --- a/src/qt/test/optiontests.h +++ b/src/qt/test/optiontests.h @@ -5,9 +5,9 @@ #ifndef BITCOIN_QT_TEST_OPTIONTESTS_H #define BITCOIN_QT_TEST_OPTIONTESTS_H +#include #include #include -#include #include diff --git a/src/test/fuzz/string.cpp b/src/test/fuzz/string.cpp index 75c78ce1bd5..52cf546e107 100644 --- a/src/test/fuzz/string.cpp +++ b/src/test/fuzz/string.cpp @@ -5,6 +5,7 @@ #include #include #include +#include #include #include #include @@ -22,7 +23,6 @@ #include #include #include -#include #include #include #include diff --git a/src/test/getarg_tests.cpp b/src/test/getarg_tests.cpp index 715b6885f54..775d12508a2 100644 --- a/src/test/getarg_tests.cpp +++ b/src/test/getarg_tests.cpp @@ -3,10 +3,10 @@ // file COPYING or http://www.opensource.org/licenses/mit-license.php. #include +#include #include #include #include -#include #include #include diff --git a/src/test/settings_tests.cpp b/src/test/settings_tests.cpp index fff84d24f06..2b5f103fc64 100644 --- a/src/test/settings_tests.cpp +++ b/src/test/settings_tests.cpp @@ -2,7 +2,7 @@ // Distributed under the MIT software license, see the accompanying // file COPYING or http://www.opensource.org/licenses/mit-license.php. -#include +#include #include #include