Skip to content

Make filesystem optional #199

Description

@svalat

Some distros on HPC centers still use gcc-7.x which has filesystem as an experimental feature for c++17. MALT needs to provide a replacement for a few functions in this case and MALT webview will also run on Redhat8 and Suse/leap:15.6

/mnt/sources/src/reader/webview-2-cpp/main_webview.cpp: In function 'bool genStaticWebsite(const MALTReader::WebProfile&, const string&, bool, const string&)':
/mnt/sources/src/reader/webview-2-cpp/main_webview.cpp:249:7: error: 'std::filesystem' has not been declared
  std::filesystem::remove(path + "/index.html");
       ^~~~~~~~~~
/mnt/sources/src/reader/webview-2-cpp/main_webview.cpp:250:7: error: 'std::filesystem' has not been declared
  std::filesystem::remove(path + "/favicon.ico");
       ^~~~~~~~~~
/mnt/sources/src/reader/webview-2-cpp/main_webview.cpp:251:7: error: 'std::filesystem' has not been declared
  std::filesystem::remove_all(path + "/data");
       ^~~~~~~~~~
/mnt/sources/src/reader/webview-2-cpp/main_webview.cpp:254:11: error: 'std::filesystem' has not been declared
  if (std::filesystem::exists(path + "/data") == false) {
           ^~~~~~~~~~
/mnt/sources/src/reader/webview-2-cpp/main_webview.cpp:255:28: error: 'std::filesystem' has not been declared
   const bool status = std::filesystem::create_directories(path + "/data");
                            ^~~~~~~~~~
/mnt/sources/src/reader/webview-2-cpp/main_webview.cpp:256:8: error: in argument to unary !
   if (!status) {
        ^~~~~~
/mnt/sources/src/reader/webview-2-cpp/main_webview.cpp:263:33: error: 'std::filesystem' has not been declared
  std::string profileName = std::filesystem::path(profile.getFileName()).filename();
                                 ^~~~~~~~~~
/mnt/sources/src/reader/webview-2-cpp/main_webview.cpp:288:7: error: 'std::filesystem' has not been declared
  std::filesystem::copy_file(get_webview_www_static_path(onlySummary) + "/index.html", path + "/index.html");
       ^~~~~~~~~~
/mnt/sources/src/reader/webview-2-cpp/main_webview.cpp:289:7: error: 'std::filesystem' has not been declared
  std::filesystem::copy_file(get_webview_www_static_path(onlySummary) + "/favicon.ico", path + "/favicon.ico");
       ^~~~~~~~~~
/mnt/sources/src/reader/webview-2-cpp/main_webview.cpp:298:8: error: 'std::filesystem' has not been declared
   std::filesystem::copy_file(profile.getFileName(), path + "/data/" + profileName);

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions