summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRemko Tronçon <git@el-tramo.be>2012-08-17 21:18:17 (GMT)
committerRemko Tronçon <git@el-tramo.be>2012-08-17 21:33:59 (GMT)
commit6856199274e9c5e581220fccf520b8f011519d17 (patch)
tree1929a1ea8f1d3b877fc8c928e9c3d23d9716ad82
parent4397df6b409ca84f63838fa635fc2abe8af80b71 (diff)
downloadswift-6856199274e9c5e581220fccf520b8f011519d17.zip
swift-6856199274e9c5e581220fccf520b8f011519d17.tar.bz2
Update to boost.filesystem v3.
Source should still compile against v2.
-rw-r--r--3rdParty/Boost/SConscript22
-rw-r--r--Swiften/FileTransfer/FileTransferManagerImpl.cpp5
-rw-r--r--Swiftob/LuaCommands.cpp7
-rw-r--r--Swiftob/Storage.cpp2
4 files changed, 24 insertions, 12 deletions
diff --git a/3rdParty/Boost/SConscript b/3rdParty/Boost/SConscript
index 714b90b..f0d438b 100644
--- a/3rdParty/Boost/SConscript
+++ b/3rdParty/Boost/SConscript
@@ -19,7 +19,7 @@ elif env.get("BOOST_BUNDLED", False) :
# Common
################################################################################
- cppdefines = ["BOOST_ALL_NO_LIB", "BOOST_SYSTEM_NO_DEPRECATED", ("BOOST_FILESYSTEM_VERSION", "2")]
+ cppdefines = ["BOOST_ALL_NO_LIB", "BOOST_SYSTEM_NO_DEPRECATED"]
#if env["PLATFORM"] == "darwin" :
# cppdefines += ["BOOST_ASIO_DISABLE_KQUEUE"]
if env["PLATFORM"] == "win32" :
@@ -65,9 +65,16 @@ elif env.get("BOOST_BUNDLED", False) :
"src/libs/signals/src/signal_base.cpp",
"src/libs/signals/src/slot.cpp",
"src/libs/signals/src/trackable.cpp",
- "src/libs/filesystem/v2/src/v2_operations.cpp",
- "src/libs/filesystem/v2/src/v2_path.cpp",
- "src/libs/filesystem/v2/src/v2_portability.cpp",
+ "src/libs/filesystem/v3/src/codecvt_error_category.cpp",
+ "src/libs/filesystem/v3/src/operations.cpp",
+ "src/libs/filesystem/v3/src/path.cpp",
+ "src/libs/filesystem/v3/src/path_traits.cpp",
+ "src/libs/filesystem/v3/src/portability.cpp",
+ "src/libs/filesystem/v3/src/unique_path.cpp",
+ "src/libs/filesystem/v3/src/windows_file_codecvt.cpp",
+# "src/libs/filesystem/v2/src/v2_operations.cpp",
+# "src/libs/filesystem/v2/src/v2_path.cpp",
+# "src/libs/filesystem/v2/src/v2_portability.cpp",
"src/libs/filesystem/v3/src/filesystem_utf8_codecvt_facet.cpp",
"src/libs/regex/src/c_regex_traits.cpp",
"src/libs/regex/src/cpp_regex_traits.cpp",
@@ -122,13 +129,6 @@ elif env.get("BOOST_BUNDLED", False) :
bcp_env.Append(CPPPATH = ["src/tools/bcp"])
bcp_env.Replace(CPPDEFINES = [flag for flag in bcp_env["CPPDEFINES"] if flag[0] != "BOOST_FILESYSTEM_VERSION"])
bcp_env.Program("bcp", [
- "src/libs/filesystem/v3/src/codecvt_error_category.cpp",
- "src/libs/filesystem/v3/src/operations.cpp",
- "src/libs/filesystem/v3/src/path.cpp",
- "src/libs/filesystem/v3/src/path_traits.cpp",
- "src/libs/filesystem/v3/src/portability.cpp",
- "src/libs/filesystem/v3/src/unique_path.cpp",
- "src/libs/filesystem/v3/src/windows_file_codecvt.cpp",
"src/tools/bcp/add_path.cpp",
"src/tools/bcp/add_dependent_lib.cpp",
"src/tools/bcp/bcp_imp.cpp",
diff --git a/Swiften/FileTransfer/FileTransferManagerImpl.cpp b/Swiften/FileTransfer/FileTransferManagerImpl.cpp
index 853738c..7fd8b07 100644
--- a/Swiften/FileTransfer/FileTransferManagerImpl.cpp
+++ b/Swiften/FileTransfer/FileTransferManagerImpl.cpp
@@ -103,7 +103,12 @@ boost::optional<JID> FileTransferManagerImpl::highestPriorityJIDSupportingFileTr
}
OutgoingFileTransfer::ref FileTransferManagerImpl::createOutgoingFileTransfer(const JID& to, const boost::filesystem::path& filepath, const std::string& description, boost::shared_ptr<ReadBytestream> bytestream) {
+#if BOOST_FILESYSTEM_VERSION == 2 // TODO: Delete this when boost 1.44 becomes a minimum requirement, and we no longer need v2
std::string filename = filepath.filename();
+#else
+ std::string filename = filepath.filename().string();
+#endif
+
boost::uintmax_t sizeInBytes = boost::filesystem::file_size(filepath);
boost::posix_time::ptime lastModified = boost::posix_time::from_time_t(boost::filesystem::last_write_time(filepath));
return createOutgoingFileTransfer(to, filename, description, sizeInBytes, lastModified, bytestream);
diff --git a/Swiftob/LuaCommands.cpp b/Swiftob/LuaCommands.cpp
index 27c44eb..89f5159 100644
--- a/Swiftob/LuaCommands.cpp
+++ b/Swiftob/LuaCommands.cpp
@@ -14,6 +14,7 @@
#include <Swiften/Base/foreach.h>
#include <Swiften/Client/Client.h>
#include <Swiften/Network/TimerFactory.h>
+#include <boost/filesystem/operations.hpp>
#include <Swiftob/Commands.h>
@@ -405,7 +406,11 @@ void LuaCommands::loadScript(boost::filesystem::path filePath) {
luaL_openlibs(lua);
lua_pushlightuserdata(lua, this);
lua_setfield(lua, LUA_REGISTRYINDEX, LUA_COMMANDS);
- std::string filename(filePath.filename());
+#if BOOST_FILESYSTEM_VERSION == 2 // TODO: Delete this when boost 1.44 becomes a minimum requirement, and we no longer need v2
+ std::string filename = filePath.filename();
+#else
+ std::string filename = filePath.filename().string();
+#endif
filename += ".storage";
boost::filesystem::path storagePath(boost::filesystem::path(path_) / filename);
Storage* storage = new Storage(storagePath);
diff --git a/Swiftob/Storage.cpp b/Swiftob/Storage.cpp
index 47d0619..141be9f 100644
--- a/Swiftob/Storage.cpp
+++ b/Swiftob/Storage.cpp
@@ -6,6 +6,8 @@
#include <Swiftob/Storage.h>
+#include <boost/filesystem/operations.hpp>
+
#include <Swiften/Base/String.h>
#include <Swiften/Base/ByteArray.h>
#include <Swiften/Base/foreach.h>