Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r69443 - trunk/libs/filesystem/v3/src
From: kbelco_at_[hidden]
Date: 2011-03-01 12:14:43


Author: noel_belcourt
Date: 2011-03-01 12:14:41 EST (Tue, 01 Mar 2011)
New Revision: 69443
URL: http://svn.boost.org/trac/boost/changeset/69443

Log:
Filesystem v3 patch for PGI large file supported.

Patch contributed by Bill Bohnhoff @ Sandia.

Text files modified:
   trunk/libs/filesystem/v3/src/operations.cpp | 8 ++++++++
   1 files changed, 8 insertions(+), 0 deletions(-)

Modified: trunk/libs/filesystem/v3/src/operations.cpp
==============================================================================
--- trunk/libs/filesystem/v3/src/operations.cpp (original)
+++ trunk/libs/filesystem/v3/src/operations.cpp 2011-03-01 12:14:41 EST (Tue, 01 Mar 2011)
@@ -34,6 +34,7 @@
       !defined(_STATVFS_ACPP_PROBLEMS_FIXED))
 #define _FILE_OFFSET_BITS 64 // at worst, these defines may have no effect,
 #endif
+#if !defined(__PGI)
 #define __USE_FILE_OFFSET64 // but that is harmless on Windows and on POSIX
       // 64-bit systems or on 32-bit systems which don't have files larger
       // than can be represented by a traditional POSIX/UNIX off_t type.
@@ -44,6 +45,9 @@
       // ensure that they are available to all included headers.
       // That is required at least on Solaris, and possibly on other
       // systems as well.
+#else
+#define _FILE_OFFSET_BITS 64
+#endif
 
 #include <boost/filesystem/v3/operations.hpp>
 #include <boost/scoped_array.hpp>
@@ -1694,6 +1698,10 @@
     return ok;
   }
 
+#if defined(__PGI) && defined(__USE_FILE_OFFSET64)
+#define dirent dirent64
+#endif
+
   error_code dir_itr_first(void *& handle, void *& buffer,
     const char* dir, string& target,
     fs::file_status &, fs::file_status &)


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk