Move filesystem out of experimental namespace

This fix is needed for gcc8. Also fix out of tree build
warning looking for sdbusplus instead of sdbusplus-project.

Change-Id: I2a476ddc9e26154fed23d3992016a6e1056f7a12
Signed-off-by: James Feist <james.feist@linux.intel.com>
diff --git a/include/Utils.hpp b/include/Utils.hpp
index 933d5f6..006c2bc 100644
--- a/include/Utils.hpp
+++ b/include/Utils.hpp
@@ -1,8 +1,8 @@
 #pragma once
 #include "VariantVisitors.hpp"
+#include "filesystem.hpp"
 
 #include <boost/container/flat_map.hpp>
-#include <experimental/filesystem>
 #include <iostream>
 #include <regex>
 #include <sdbusplus/asio/connection.hpp>
@@ -30,9 +30,9 @@
     std::pair<std::string,
               boost::container::flat_map<std::string, BasicVariantType>>;
 
-bool findFiles(const std::experimental::filesystem::path dirPath,
+bool findFiles(const std::filesystem::path dirPath,
                const std::string& matchString,
-               std::vector<std::experimental::filesystem::path>& foundPaths,
+               std::vector<std::filesystem::path>& foundPaths,
                unsigned int symlinkDepth = 1);
 bool isPowerOn(void);
 void setupPowerMatch(const std::shared_ptr<sdbusplus::asio::connection>& conn);
diff --git a/include/filesystem.hpp b/include/filesystem.hpp
new file mode 100644
index 0000000..ead619e
--- /dev/null
+++ b/include/filesystem.hpp
@@ -0,0 +1,14 @@
+// this file splices filesystem in depending on the implementation
+
+#if __has_include(<filesystem>)
+#include <filesystem.hpp>
+#elif __has_include(<experimental/filesystem>)
+#include <experimental/filesystem>
+namespace std
+{
+// splice experimental::filesystem into std
+namespace filesystem = std::experimental::filesystem;
+} // namespace std
+#else
+#error filesystem not available
+#endif
\ No newline at end of file