[SystemZ][ZOS] Provide PATH_MAX macro for libcxx
Defining PATH_MAX to _XOPEN_PATH_MAX which is the closest macro available on z/OS.
Note that this value is 1024 which is 4 times smaller from same macro on Linux.
Reviewed By: #libc, ldionne, hubert.reinterpretcast
Differential Revision: https://reviews.llvm.org/D92110
GitOrigin-RevId: 92bb81aac1f16e2e9633d101b8b3f83d9c91dd48
diff --git a/src/filesystem/operations.cpp b/src/filesystem/operations.cpp
index 7db2d1f..50a895d 100644
--- a/src/filesystem/operations.cpp
+++ b/src/filesystem/operations.cpp
@@ -634,7 +634,11 @@
return err.report(capture_errno());
return {hold.get()};
#else
- char buff[PATH_MAX + 1];
+ #if defined(__MVS__) && !defined(PATH_MAX)
+ char buff[ _XOPEN_PATH_MAX + 1 ];
+ #else
+ char buff[PATH_MAX + 1];
+ #endif
char* ret;
if ((ret = ::realpath(p.c_str(), buff)) == nullptr)
return err.report(capture_errno());