aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorfanquake <fanquake@gmail.com>2021-08-28 15:33:19 +0800
committerfanquake <fanquake@gmail.com>2021-08-28 15:33:34 +0800
commit6ebb9d0e463488ada16285cd617ef863a677d45a (patch)
treeb65dc55e26c68967e407dc68b558d52b2bc7bdd1
parent55a8a5b2df00447d766c65a1fa2a05b4c6c28237 (diff)
parentd9b18c12903e3ed3b06e1452852159e5b713ff28 (diff)
Merge bitcoin/bitcoin#22808: [0.21] 0.21.2rc2 backports
d9b18c12903e3ed3b06e1452852159e5b713ff28 Fix build with Boost 1.77.0 (Rafael Sadowski) 2d7f2606c193dd14307243816d40180867a0d913 ci: Run fuzzer task for the master branch only (Hennadii Stepanov) Pull request description: Backported: 1) #22730 1) #22713 ACKs for top commit: fanquake: ACK d9b18c12903e3ed3b06e1452852159e5b713ff28 - Checked the backports and tested building this branch with system Boost 1.76.0 and depends Boost 1.77.0. Tree-SHA512: dc3e0a2b3c1e3e80f6570e329a08ebc5103c233c30562f660432891c90bacb4d88d5373e32b9ac34fd143be46b8e63900ce9f52786b04bc799a4d17ba9fd8499
-rw-r--r--.cirrus.yml1
-rw-r--r--src/fs.cpp4
-rw-r--r--src/wallet/test/db_tests.cpp4
-rw-r--r--src/wallet/test/init_test_fixture.cpp4
4 files changed, 13 insertions, 0 deletions
diff --git a/.cirrus.yml b/.cirrus.yml
index 5223c0bea6..4fad68831a 100644
--- a/.cirrus.yml
+++ b/.cirrus.yml
@@ -107,6 +107,7 @@ task:
task:
name: 'x86_64 Linux [GOAL: install] [focal] [no depends, only system libs, sanitizers: fuzzer,address,undefined]'
+ only_if: $CIRRUS_BRANCH == $CIRRUS_DEFAULT_BRANCH || $CIRRUS_BASE_BRANCH == $CIRRUS_DEFAULT_BRANCH
<< : *GLOBAL_TASK_TEMPLATE
container:
image: ubuntu:focal
diff --git a/src/fs.cpp b/src/fs.cpp
index eef9c81de9..3aba47976c 100644
--- a/src/fs.cpp
+++ b/src/fs.cpp
@@ -236,7 +236,11 @@ void ofstream::close()
}
#else // __GLIBCXX__
+#if BOOST_VERSION >= 107700
+static_assert(sizeof(*BOOST_FILESYSTEM_C_STR(fs::path())) == sizeof(wchar_t),
+#else
static_assert(sizeof(*fs::path().BOOST_FILESYSTEM_C_STR) == sizeof(wchar_t),
+#endif // BOOST_VERSION >= 107700
"Warning: This build is using boost::filesystem ofstream and ifstream "
"implementations which will fail to open paths containing multibyte "
"characters. You should delete this static_assert to ignore this warning, "
diff --git a/src/wallet/test/db_tests.cpp b/src/wallet/test/db_tests.cpp
index 8f0083cd2e..82cc645d6c 100644
--- a/src/wallet/test/db_tests.cpp
+++ b/src/wallet/test/db_tests.cpp
@@ -18,7 +18,11 @@ BOOST_AUTO_TEST_CASE(getwalletenv_file)
std::string test_name = "test_name.dat";
const fs::path datadir = GetDataDir();
fs::path file_path = datadir / test_name;
+#if BOOST_VERSION >= 107700
+ std::ofstream f(BOOST_FILESYSTEM_C_STR(file_path));
+#else
std::ofstream f(file_path.BOOST_FILESYSTEM_C_STR);
+#endif // BOOST_VERSION >= 107700
f.close();
std::string filename;
diff --git a/src/wallet/test/init_test_fixture.cpp b/src/wallet/test/init_test_fixture.cpp
index c80310045a..24a0063dd3 100644
--- a/src/wallet/test/init_test_fixture.cpp
+++ b/src/wallet/test/init_test_fixture.cpp
@@ -31,7 +31,11 @@ InitWalletDirTestingSetup::InitWalletDirTestingSetup(const std::string& chainNam
fs::create_directories(m_walletdir_path_cases["default"]);
fs::create_directories(m_walletdir_path_cases["custom"]);
fs::create_directories(m_walletdir_path_cases["relative"]);
+#if BOOST_VERSION >= 107700
+ std::ofstream f(BOOST_FILESYSTEM_C_STR(m_walletdir_path_cases["file"]));
+#else
std::ofstream f(m_walletdir_path_cases["file"].BOOST_FILESYSTEM_C_STR);
+#endif // BOOST_VERSION >= 107700
f.close();
}