diff options
| author | Dan Goodliffe <dan@randomdan.homeip.net> | 2019-02-03 19:40:41 +0000 | 
|---|---|---|
| committer | Dan Goodliffe <dan@randomdan.homeip.net> | 2019-02-03 19:40:41 +0000 | 
| commit | b7c6cf0e3de4871bbb65742deb444ddeac3c47dc (patch) | |
| tree | 0a41adc9347196f640c0c24dc538a364bab19580 | |
| parent | HTTP headers are case insensitive (diff) | |
| download | icespider-b7c6cf0e3de4871bbb65742deb444ddeac3c47dc.tar.bz2 icespider-b7c6cf0e3de4871bbb65742deb444ddeac3c47dc.tar.xz icespider-b7c6cf0e3de4871bbb65742deb444ddeac3c47dc.zip  | |
Remove boost::filesystem in favour of std::filesystem
| -rw-r--r-- | icespider/compile/Jamfile.jam | 9 | ||||
| -rw-r--r-- | icespider/compile/main.cpp | 2 | ||||
| -rw-r--r-- | icespider/compile/routeCompiler.cpp | 20 | ||||
| -rw-r--r-- | icespider/compile/routeCompiler.h | 8 | ||||
| -rw-r--r-- | icespider/core/Jamfile.jam | 6 | ||||
| -rw-r--r-- | icespider/core/core.cpp | 7 | ||||
| -rw-r--r-- | icespider/core/core.h | 4 | ||||
| -rw-r--r-- | icespider/fileSessions/Jamfile.jam | 6 | ||||
| -rw-r--r-- | icespider/fileSessions/fileSessions.cpp | 20 | ||||
| -rw-r--r-- | icespider/unittests/Jamfile.jam | 9 | ||||
| -rw-r--r-- | icespider/unittests/testApp.cpp | 4 | ||||
| -rw-r--r-- | icespider/unittests/testCompile.cpp | 4 | ||||
| -rw-r--r-- | icespider/unittests/testFileSessions.cpp | 24 | ||||
| -rw-r--r-- | icespider/xslt/Jamfile.jam | 6 | ||||
| -rw-r--r-- | icespider/xslt/xsltStreamSerializer.cpp | 6 | ||||
| -rw-r--r-- | icespider/xslt/xsltStreamSerializer.h | 6 | 
16 files changed, 65 insertions, 76 deletions
diff --git a/icespider/compile/Jamfile.jam b/icespider/compile/Jamfile.jam index 2021abe..f65800e 100644 --- a/icespider/compile/Jamfile.jam +++ b/icespider/compile/Jamfile.jam @@ -2,8 +2,7 @@ lib adhocutil : : : : <include>/usr/include/adhocutil ;  lib slicer : : : : <include>/usr/include/slicer <include>/usr/include/adhocutil ;  lib slicer-json ;  lib boost_program_options ; -lib boost_system ; -lib boost_filesystem ; +lib stdc++fs ;  lib mcpp ;  lib icespider-compile : @@ -18,8 +17,7 @@ lib icespider-compile :  	<library>slicer  	<library>adhocutil  	<library>slicer-json -	<library>boost_system -	<library>boost_filesystem +	<library>stdc++fs  	<library>slice//Slice  	<library>../common//icespider-common  	<implicit-dependency>../common//icespider-common @@ -27,8 +25,7 @@ lib icespider-compile :  	<library>..//pthread  	<library>mcpp  	: : -	<library>boost_system -	<library>boost_filesystem +	<library>stdc++fs  	<library>../common//icespider-common  	; diff --git a/icespider/compile/main.cpp b/icespider/compile/main.cpp index 3d5311f..a6bc226 100644 --- a/icespider/compile/main.cpp +++ b/icespider/compile/main.cpp @@ -8,7 +8,7 @@ main(int c, char ** v)  {  	bool showHelp;  	IceSpider::Compile::RouteCompiler rc; -	boost::filesystem::path input, output; +	std::filesystem::path input, output;  	po::options_description opts("IceSpider compile options");  	opts.add_options()  		("input", po::value(&input), "Input .json file") diff --git a/icespider/compile/routeCompiler.cpp b/icespider/compile/routeCompiler.cpp index 6d8f7e1..b7db3ca 100644 --- a/icespider/compile/routeCompiler.cpp +++ b/icespider/compile/routeCompiler.cpp @@ -5,7 +5,7 @@  #include <Slice/Preprocessor.h>  #include <scopeExit.h>  #include <fprintbf.h> -#include <boost/filesystem/convenience.hpp> +#include <filesystem>  #include <boost/algorithm/string/replace.hpp>  #include <boost/algorithm/string/join.hpp>  #include <Slice/CPlusPlusUtil.h> @@ -16,11 +16,11 @@ namespace IceSpider {  	namespace Compile {  		RouteCompiler::RouteCompiler()  		{ -			searchPath.push_back(boost::filesystem::current_path()); +			searchPath.push_back(std::filesystem::current_path());  		}  		RouteConfigurationPtr -		RouteCompiler::loadConfiguration(const boost::filesystem::path & input) const +		RouteCompiler::loadConfiguration(const std::filesystem::path & input) const  		{  			auto deserializer = Slicer::DeserializerPtr(Slicer::FileDeserializerFactory::createNew(input.extension().string(), input));  			return Slicer::DeserializeAnyWith<RouteConfigurationPtr>(deserializer); @@ -147,11 +147,11 @@ namespace IceSpider {  		}  		void -		RouteCompiler::compile(const boost::filesystem::path & input, const boost::filesystem::path & output) const +		RouteCompiler::compile(const std::filesystem::path & input, const std::filesystem::path & output) const  		{  			auto configuration = loadConfiguration(input);  			auto units = loadUnits(configuration); -			auto outputh = boost::filesystem::change_extension(output, ".h"); +			auto outputh = std::filesystem::path(output).replace_extension(".h");  			applyDefaults(configuration, units);  			AdHoc::ScopeExit uDestroy([&units]() { @@ -172,8 +172,8 @@ namespace IceSpider {  				},  				NULL,  				[&output,&outputh]() { -					boost::filesystem::remove(output); -					boost::filesystem::remove(outputh); +					std::filesystem::remove(output); +					std::filesystem::remove(outputh);  				});  			processConfiguration(out, outh, output.stem().string(), configuration, units);  		} @@ -184,9 +184,9 @@ namespace IceSpider {  			RouteCompiler::Units units;  			AdHoc::ScopeExit uDestroy;  			for (const auto & slice : c->slices) { -				boost::filesystem::path realSlice; +				std::filesystem::path realSlice;  				for (const auto & p : searchPath) { -					if (boost::filesystem::exists(p / slice)) { +					if (std::filesystem::exists(p / slice)) {  						realSlice = p / slice;  						break;  					} @@ -294,7 +294,7 @@ namespace IceSpider {  			fprintf(outputh, "\n// Interface headers.\n");  			for (const auto & s : c->slices) { -				boost::filesystem::path slicePath(s); +				std::filesystem::path slicePath(s);  				slicePath.replace_extension(".h");  				fprintbf(outputh, "#include <%s>\n", slicePath.string());  			} diff --git a/icespider/compile/routeCompiler.h b/icespider/compile/routeCompiler.h index b8bb6b9..7a2b7ba 100644 --- a/icespider/compile/routeCompiler.h +++ b/icespider/compile/routeCompiler.h @@ -1,7 +1,7 @@  #ifndef ICESPIDER_COMPILE_ROURTECOMPILER_H  #define ICESPIDER_COMPILE_ROURTECOMPILER_H -#include <boost/filesystem/path.hpp> +#include <filesystem>  #include <visibility.h>  #include <vector>  #include <routes.h> @@ -16,13 +16,13 @@ namespace IceSpider {  				RouteCompiler(); -				RouteConfigurationPtr loadConfiguration(const boost::filesystem::path &) const; +				RouteConfigurationPtr loadConfiguration(const std::filesystem::path &) const;  				Units loadUnits(RouteConfigurationPtr) const;  				void applyDefaults(RouteConfigurationPtr, const Units & u) const; -				void compile(const boost::filesystem::path & input, const boost::filesystem::path & output) const; +				void compile(const std::filesystem::path & input, const std::filesystem::path & output) const; -				std::vector<boost::filesystem::path> searchPath; +				std::vector<std::filesystem::path> searchPath;  			private:  				typedef std::map<std::string, int> Proxies; diff --git a/icespider/core/Jamfile.jam b/icespider/core/Jamfile.jam index 216127e..2f2f733 100644 --- a/icespider/core/Jamfile.jam +++ b/icespider/core/Jamfile.jam @@ -1,7 +1,6 @@  lib adhocutil : : : : <include>/usr/include/adhocutil ;  lib slicer : : : : <include>/usr/include/slicer ; -lib boost_system ; -lib boost_filesystem ; +lib stdc++fs ;  lib icespider-core :  	[ glob-tree *.c *.cpp *.ice : bin ] @@ -9,8 +8,7 @@ lib icespider-core :  	<library>../common//icespider-common  	<library>adhocutil  	<library>slicer -	<library>boost_system -	<library>boost_filesystem +	<library>stdc++fs  	<implicit-dependency>../common  	: :  	<include>. diff --git a/icespider/core/core.cpp b/icespider/core/core.cpp index c5b5a92..50adcab 100644 --- a/icespider/core/core.cpp +++ b/icespider/core/core.cpp @@ -2,7 +2,8 @@  #include "exceptions.h"  #include <Ice/Initialize.h>  #include <Ice/ObjectAdapter.h> -#include <boost/filesystem/convenience.hpp> +#include <filesystem> +#include <cxxabi.h>  #include <factory.impl.h>  #include <compileTimeFormatter.h> @@ -10,7 +11,7 @@ INSTANTIATEFACTORY(IceSpider::Plugin, Ice::CommunicatorPtr, Ice::PropertiesPtr);  INSTANTIATEPLUGINOF(IceSpider::ErrorHandler);  namespace IceSpider { -	const boost::filesystem::path Core::defaultConfig("config/ice.properties"); +	const std::filesystem::path Core::defaultConfig("config/ice.properties");  	Core::Core(const Ice::StringSeq & args)  	{ @@ -18,7 +19,7 @@ namespace IceSpider {  		id.properties = Ice::createProperties();  		id.properties->parseCommandLineOptions("", args);  		auto config = id.properties->getPropertyWithDefault("IceSpider.Config", defaultConfig.string()); -		if (boost::filesystem::exists(config)) { +		if (std::filesystem::exists(config)) {  			id.properties->load(config);  		}  		communicator = Ice::initialize(id); diff --git a/icespider/core/core.h b/icespider/core/core.h index f6fbd6e..08b649e 100644 --- a/icespider/core/core.h +++ b/icespider/core/core.h @@ -5,7 +5,7 @@  #include <vector>  #include "irouteHandler.h"  #include <Ice/Communicator.h> -#include <boost/filesystem/path.hpp> +#include <filesystem>  #include <plugins.h>  namespace IceSpider { @@ -32,7 +32,7 @@ namespace IceSpider {  			Ice::CommunicatorPtr communicator;  			Ice::ObjectAdapterPtr pluginAdapter; -			static const boost::filesystem::path defaultConfig; +			static const std::filesystem::path defaultConfig;  		private:  			void defaultErrorReport(IHttpRequest * request, const std::exception & ex) const; diff --git a/icespider/fileSessions/Jamfile.jam b/icespider/fileSessions/Jamfile.jam index 1a457cd..8cd6525 100644 --- a/icespider/fileSessions/Jamfile.jam +++ b/icespider/fileSessions/Jamfile.jam @@ -1,12 +1,10 @@  lib adhocutil : : : : <include>/usr/include/adhocutil ; -lib boost_system ; -lib boost_filesystem ; +lib stdc++fs ;  lib icespider-filesessions :  	[ glob *.cpp ]  	: -	<library>boost_system -	<library>boost_filesystem +	<library>stdc++fs  	<library>adhocutil  	<library>../core//icespider-core  	<implicit-dependency>../core//icespider-core diff --git a/icespider/fileSessions/fileSessions.cpp b/icespider/fileSessions/fileSessions.cpp index 7791d3c..e1c3b5c 100644 --- a/icespider/fileSessions/fileSessions.cpp +++ b/icespider/fileSessions/fileSessions.cpp @@ -7,7 +7,7 @@  #include <sys/stat.h>  #include <sys/mman.h>  #include <factory.impl.h> -#include <boost/filesystem/operations.hpp> +#include <filesystem>  #include <boost/uuid/uuid_generators.hpp>  #include <boost/uuid/uuid_io.hpp>  #include <Ice/OutputStream.h> @@ -23,8 +23,8 @@ namespace IceSpider {  				duration(p->getPropertyAsIntWithDefault("IceSpider.FileSessions.Duration", 3600))  			{  				if (!root.empty()) -					if (!boost::filesystem::exists(root)) -						boost::filesystem::create_directories(root); +					if (!std::filesystem::exists(root)) +						std::filesystem::create_directories(root);  			}  			~FileSessions() @@ -59,7 +59,7 @@ namespace IceSpider {  			void destroySession(const ::std::string id, const ::Ice::Current &) override  			{  				try { -					boost::filesystem::remove(root / id); +					std::filesystem::remove(root / id);  				}  				catch (const std::exception & e) {  					throw SessionError(e.what()); @@ -83,7 +83,7 @@ namespace IceSpider {  			SessionPtr load(const std::string & id)  			{  				auto path = root / id; -				if (!boost::filesystem::exists(path)) return NULL; +				if (!std::filesystem::exists(path)) return NULL;  				try {  					AdHoc::FileUtils::MemMap f(path);  					sysassert(flock(f.fh, LOCK_SH), -1); @@ -104,10 +104,10 @@ namespace IceSpider {  			void removeExpired()  			{ -				if (root.empty() || !boost::filesystem::exists(root)) return; -				boost::filesystem::directory_iterator di(root); -				while (di != boost::filesystem::directory_iterator()) { -					auto s = load(di->path().leaf().string()); +				if (root.empty() || !std::filesystem::exists(root)) return; +				std::filesystem::directory_iterator di(root); +				while (di != std::filesystem::directory_iterator()) { +					auto s = load(di->path());  					if (s && isExpired(s)) {  						destroySession(s->id, Ice::Current());  					} @@ -131,7 +131,7 @@ namespace IceSpider {  			}  			Ice::CommunicatorPtr ic; - 			const boost::filesystem::path root; + 			const std::filesystem::path root;  			const Ice::Int duration;  	};  } diff --git a/icespider/unittests/Jamfile.jam b/icespider/unittests/Jamfile.jam index 43e3d82..fc2d275 100644 --- a/icespider/unittests/Jamfile.jam +++ b/icespider/unittests/Jamfile.jam @@ -22,8 +22,7 @@ lib slicer : : : : <include>/usr/include/slicer ;  lib slicer-json : : : : <include>/usr/include/slicer ;  lib slicer-xml : : : : <include>/usr/include/slicer ;  lib boost_utf : : <name>boost_unit_test_framework ; -lib boost_system ; -lib boost_filesystem ; +lib stdc++fs ;  lib dl ;  path-constant me : . ; @@ -109,8 +108,7 @@ run  	<library>../common//icespider-common  	<library>../core//icespider-core  	<implicit-dependency>../core//icespider-core -	<library>boost_system -	<library>boost_filesystem +	<library>stdc++fs  	<library>slicer  	<library>slicer-json  	<library>adhocutil @@ -126,8 +124,7 @@ run  	<library>../fileSessions//icespider-filesessions  	<library>../common//icespider-common  	<library>testCommon -	<library>boost_system -	<library>boost_filesystem +	<library>stdc++fs  	<library>../core//icespider-core  	<implicit-dependency>../core//icespider-core  	; diff --git a/icespider/unittests/testApp.cpp b/icespider/unittests/testApp.cpp index 3bfcd8d..e76e85c 100644 --- a/icespider/unittests/testApp.cpp +++ b/icespider/unittests/testApp.cpp @@ -11,7 +11,7 @@  #include <boost/algorithm/string/split.hpp>  #include <boost/algorithm/string/classification.hpp>  #include <boost/algorithm/string/predicate.hpp> -#include <boost/filesystem/operations.hpp> +#include <filesystem>  #include <definedDirs.h>  #include <slicer/slicer.h>  #include <xml/serializer.h> @@ -25,7 +25,7 @@ using namespace IceSpider;  static void forceEarlyChangeDir() __attribute__((constructor(101)));  void forceEarlyChangeDir()  { -	boost::filesystem::current_path(XSTR(ROOT)); +	std::filesystem::current_path(XSTR(ROOT));  }  BOOST_AUTO_TEST_CASE( testLoadConfiguration ) diff --git a/icespider/unittests/testCompile.cpp b/icespider/unittests/testCompile.cpp index 7b451bf..3677207 100644 --- a/icespider/unittests/testCompile.cpp +++ b/icespider/unittests/testCompile.cpp @@ -14,7 +14,7 @@ using namespace IceSpider;  static void forceEarlyChangeDir() __attribute__((constructor(101)));  void forceEarlyChangeDir()  { -	boost::filesystem::current_path(XSTR(ROOT)); +	std::filesystem::current_path(XSTR(ROOT));  }  class CoreFixture { @@ -23,7 +23,7 @@ class CoreFixture {  			modeDir(binDir.lexically_relative(rootDir / "bin" / "testCompile.test"))  		{  		} -		boost::filesystem::path modeDir; +		std::filesystem::path modeDir;  };  namespace std { diff --git a/icespider/unittests/testFileSessions.cpp b/icespider/unittests/testFileSessions.cpp index 119586e..69e4d01 100644 --- a/icespider/unittests/testFileSessions.cpp +++ b/icespider/unittests/testFileSessions.cpp @@ -20,14 +20,14 @@ class TestCore : public IceSpider::CoreWithDefaultRouter {  			root(communicator->getProperties()->getProperty("IceSpider.FileSessions.Path"))  		{  		} -		const boost::filesystem::path root; +		const std::filesystem::path root;  };  BOOST_AUTO_TEST_CASE( clear )  {  	TestCore tc; -	if (boost::filesystem::exists(tc.root)) { -		boost::filesystem::remove_all(tc.root); +	if (std::filesystem::exists(tc.root)) { +		std::filesystem::remove_all(tc.root);  	}  } @@ -44,11 +44,11 @@ BOOST_AUTO_TEST_CASE( createAndDestroy )  {  	auto prx = this->getProxy<IceSpider::SessionManager>();  	auto s = prx->createSession(); -	BOOST_REQUIRE(boost::filesystem::exists(root / s->id)); +	BOOST_REQUIRE(std::filesystem::exists(root / s->id));  	BOOST_REQUIRE_EQUAL(0, s->duration);  	BOOST_REQUIRE_EQUAL(time(NULL), s->lastUsed);  	prx->destroySession(s->id); -	BOOST_REQUIRE(!boost::filesystem::exists(root / s->id)); +	BOOST_REQUIRE(!std::filesystem::exists(root / s->id));  }  BOOST_AUTO_TEST_CASE( createAndChangeRestore ) @@ -69,32 +69,32 @@ BOOST_AUTO_TEST_CASE( createAndExpire )  {  	auto prx = this->getProxy<IceSpider::SessionManager>();  	auto s = prx->createSession(); -	BOOST_REQUIRE(boost::filesystem::exists(root / s->id)); +	BOOST_REQUIRE(std::filesystem::exists(root / s->id));  	BOOST_REQUIRE_EQUAL(0, s->duration);  	BOOST_REQUIRE_EQUAL(time(NULL), s->lastUsed);  	usleep(1001000); -	BOOST_REQUIRE(boost::filesystem::exists(root / s->id)); +	BOOST_REQUIRE(std::filesystem::exists(root / s->id));  	BOOST_REQUIRE(!prx->getSession(s->id)); -	BOOST_REQUIRE(!boost::filesystem::exists(root / s->id)); +	BOOST_REQUIRE(!std::filesystem::exists(root / s->id));  }  BOOST_AUTO_TEST_CASE( missing )  {  	auto prx = this->getProxy<IceSpider::SessionManager>();  	BOOST_REQUIRE(!prx->getSession("missing")); -	BOOST_REQUIRE(!boost::filesystem::exists(root / "missing")); +	BOOST_REQUIRE(!std::filesystem::exists(root / "missing"));  }  BOOST_AUTO_TEST_CASE( createAndLeave )  {  	auto prx = this->getProxy<IceSpider::SessionManager>();  	auto s = prx->createSession(); -	BOOST_REQUIRE(boost::filesystem::exists(root / s->id)); +	BOOST_REQUIRE(std::filesystem::exists(root / s->id));  }  BOOST_AUTO_TEST_CASE( left )  { -	BOOST_REQUIRE(!boost::filesystem::is_empty(root)); +	BOOST_REQUIRE(!std::filesystem::is_empty(root));  }  BOOST_AUTO_TEST_CASE( expire ) @@ -107,6 +107,6 @@ BOOST_AUTO_TEST_SUITE_END();  BOOST_AUTO_TEST_CASE( empty )  {  	TestCore tc; -	BOOST_REQUIRE(boost::filesystem::is_empty(tc.root)); +	BOOST_REQUIRE(std::filesystem::is_empty(tc.root));  } diff --git a/icespider/xslt/Jamfile.jam b/icespider/xslt/Jamfile.jam index eacdda4..6f11c68 100644 --- a/icespider/xslt/Jamfile.jam +++ b/icespider/xslt/Jamfile.jam @@ -1,7 +1,6 @@  lib adhocutil : : : : <include>/usr/include/adhocutil ;  lib slicer-xml : : : : <include>/usr/include/slicer ; -lib boost_system ; -lib boost_filesystem ; +lib stdc++fs ;  lib xslt ;  lib exslt ; @@ -10,8 +9,7 @@ lib icespider-xslt :  	:  	<library>adhocutil  	<library>slicer-xml -	<library>boost_system -	<library>boost_filesystem +	<library>stdc++fs  	<library>xslt  	<library>exslt  	<library>../..//libxmlpp diff --git a/icespider/xslt/xsltStreamSerializer.cpp b/icespider/xslt/xsltStreamSerializer.cpp index 5214ab3..72dead1 100644 --- a/icespider/xslt/xsltStreamSerializer.cpp +++ b/icespider/xslt/xsltStreamSerializer.cpp @@ -2,7 +2,7 @@  #include <libxslt/xsltInternals.h>  #include <libxml/HTMLtree.h>  #include <factory.impl.h> -#include <boost/filesystem/convenience.hpp> +#include <filesystem>  namespace IceSpider {  	static int xmlstrmclosecallback(void * context) @@ -19,7 +19,7 @@ namespace IceSpider {  	XsltStreamSerializer::IceSpiderFactory::IceSpiderFactory(const char * path) :  		stylesheetPath(path), -		stylesheetWriteTime(0), +		stylesheetWriteTime(std::filesystem::file_time_type::min()),  		stylesheet(nullptr)  	{  	} @@ -32,7 +32,7 @@ namespace IceSpider {  	Slicer::SerializerPtr  	XsltStreamSerializer::IceSpiderFactory::create(std::ostream & strm) const  	{ -		auto newMtime = boost::filesystem::last_write_time(stylesheetPath); +		auto newMtime = std::filesystem::last_write_time(stylesheetPath);  		if (newMtime != stylesheetWriteTime) {  			if (stylesheet) {  				xsltFreeStylesheet(stylesheet); diff --git a/icespider/xslt/xsltStreamSerializer.h b/icespider/xslt/xsltStreamSerializer.h index eb432fb..dae6ac3 100644 --- a/icespider/xslt/xsltStreamSerializer.h +++ b/icespider/xslt/xsltStreamSerializer.h @@ -4,7 +4,7 @@  #include <slicer/xml/serializer.h>  #include <visibility.h>  #include <libxslt/transform.h> -#include <boost/filesystem/path.hpp> +#include <filesystem>  namespace IceSpider {  	class DLL_PUBLIC XsltStreamSerializer : public Slicer::XmlDocumentSerializer { @@ -17,8 +17,8 @@ namespace IceSpider {  					Slicer::SerializerPtr create(std::ostream &) const override;  				private: -					const boost::filesystem::path stylesheetPath; -					mutable std::time_t stylesheetWriteTime; +					const std::filesystem::path stylesheetPath; +					mutable std::filesystem::file_time_type stylesheetWriteTime;  					mutable xsltStylesheet * stylesheet;  			};  | 
