Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
Please login to access the resource
openSUSE:Leap:15.0:Staging:FactoryCandidates
netgen
0001-Include-filesystem-from-experimental-for-G...
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File 0001-Include-filesystem-from-experimental-for-GCC-7.patch of Package netgen
From b74697b6151f78b3952c8378f98ecbff3b6f9f73 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stefan=20Br=C3=BCns?= <stefan.bruens@rwth-aachen.de> Date: Wed, 13 Jul 2022 15:58:16 +0200 Subject: [PATCH] Include filesystem from experimental for GCC 7 --- libsrc/core/archive.hpp | 16 +++++++++++----- libsrc/core/utils.cpp | 6 ++---- libsrc/core/utils.hpp | 13 +++++++------ libsrc/general/mystring.hpp | 5 +++++ libsrc/meshing/meshclass.hpp | 7 ++++++- 5 files changed, 31 insertions(+), 16 deletions(-) diff --git a/libsrc/core/archive.hpp b/libsrc/core/archive.hpp index 4271e725..a4dee54b 100644 --- a/libsrc/core/archive.hpp +++ b/libsrc/core/archive.hpp @@ -5,7 +5,13 @@ #include <array> // for array #include <complex> // for complex #include <cstring> // for size_t, strlen -#include <filesystem> // for path +#if defined(__GNUC__) && (__GNUC__ < 8) +#include <experimental/filesystem> +namespace filesystem = std::experimental::filesystem; +#else +#include <filesystem> // for filesystem::path +namespace filesystem = std::filesystem; +#endif #include <fstream> // for ifstream, ofstream #include <functional> // for function #include <map> // for map @@ -741,7 +747,7 @@ namespace ngcore BinaryOutArchive(std::shared_ptr<std::ostream>&& astream) : Archive(true), stream(std::move(astream)) { } - BinaryOutArchive(const std::filesystem::path& filename) + BinaryOutArchive(const filesystem::path& filename) : BinaryOutArchive(std::make_shared<std::ofstream>(filename)) {} ~BinaryOutArchive () override { FlushBuffer(); } @@ -829,7 +835,7 @@ namespace ngcore BinaryInArchive (std::shared_ptr<std::istream>&& astream) : Archive(false), stream(std::move(astream)) { } - BinaryInArchive (const std::filesystem::path& filename) + BinaryInArchive (const filesystem::path& filename) : BinaryInArchive(std::make_shared<std::ifstream>(filename)) { ; } using Archive::operator&; @@ -904,7 +910,7 @@ namespace ngcore TextOutArchive (std::shared_ptr<std::ostream>&& astream) : Archive(true), stream(std::move(astream)) { } - TextOutArchive (const std::filesystem::path& filename) : + TextOutArchive (const filesystem::path& filename) : TextOutArchive(std::make_shared<std::ofstream>(filename)) { } using Archive::operator&; @@ -959,7 +965,7 @@ namespace ngcore TextInArchive (std::shared_ptr<std::istream>&& astream) : Archive(false), stream(std::move(astream)) { } - TextInArchive (const std::filesystem::path& filename) + TextInArchive (const filesystem::path& filename) : TextInArchive(std::make_shared<std::ifstream>(filename)) {} using Archive::operator&; diff --git a/libsrc/core/utils.cpp b/libsrc/core/utils.cpp index 62d4d136..184342ae 100644 --- a/libsrc/core/utils.cpp +++ b/libsrc/core/utils.cpp @@ -7,8 +7,6 @@ #include <cxxabi.h> #endif #include <array> -#include <filesystem> -#include <iostream> #include <regex> #include "ngstream.hpp" @@ -112,10 +110,10 @@ namespace ngcore #endif } - NGCORE_API std::filesystem::path GetTempFilename() + NGCORE_API filesystem::path GetTempFilename() { static int counter = 0; - auto path = std::filesystem::temp_directory_path(); + auto path = filesystem::temp_directory_path(); path += ".temp_netgen_file_"+ToString(counter++)+"_"+ToString(GetTimeCounter()); return path; } diff --git a/libsrc/core/utils.hpp b/libsrc/core/utils.hpp index d072be47..32f4c9f6 100644 --- a/libsrc/core/utils.hpp +++ b/libsrc/core/utils.hpp @@ -3,7 +3,13 @@ #include <atomic> #include <chrono> +#if defined(__GNUC__) && (__GNUC__ < 8) +#include <experimental/filesystem> +namespace filesystem = std::experimental::filesystem; +#else #include <filesystem> +namespace filesystem = std::filesystem; +#endif #include <map> #include <ostream> #include <sstream> @@ -96,11 +102,6 @@ namespace ngcore return res; } - inline std::string ToLower( const std::filesystem::path & p ) - { - return ToLower(p.string()); - } - template<typename T1, typename T2> std::ostream& operator << (std::ostream& ost, const std::map<T1,T2>& map) { @@ -221,7 +222,7 @@ namespace ngcore NGCORE_API int GetCompiledSIMDSize(); NGCORE_API bool IsRangeCheckEnabled(); - NGCORE_API std::filesystem::path GetTempFilename(); + NGCORE_API filesystem::path GetTempFilename(); } // namespace ngcore diff --git a/libsrc/general/mystring.hpp b/libsrc/general/mystring.hpp index ee364d77..5eb39df9 100644 --- a/libsrc/general/mystring.hpp +++ b/libsrc/general/mystring.hpp @@ -19,7 +19,12 @@ #ifndef MYSTRING__H #define MYSTRING__H +#if defined(__GNUC__) && (__GNUC__ < 8) +#include <experimental/filesystem> +namespace filesystem = std::experimental::filesystem; +#else #include <filesystem> +#endif namespace netgen { diff --git a/libsrc/meshing/meshclass.hpp b/libsrc/meshing/meshclass.hpp index 0d063963..5f278107 100644 --- a/libsrc/meshing/meshclass.hpp +++ b/libsrc/meshing/meshclass.hpp @@ -11,7 +11,12 @@ The mesh class */ -#include<filesystem> +#if defined(__GNUC__) && (__GNUC__ < 8) +#include <experimental/filesystem> +namespace filesystem = std::experimental::filesystem; +#else +#include <filesystem> +#endif namespace netgen { -- 2.37.0
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor