[libcxx] r272827 - Add an Android version check for GNU strerror_r.
Dan Albert via cfe-commits
cfe-commits at lists.llvm.org
Wed Jun 15 13:20:33 PDT 2016
Author: danalbert
Date: Wed Jun 15 15:20:32 2016
New Revision: 272827
URL: http://llvm.org/viewvc/llvm-project?rev=272827&view=rev
Log:
Add an Android version check for GNU strerror_r.
Summary:
Android didn't gain GNU's strerror_r until Marshmallow. If we're
building libc++ against something older (we build the NDK library
against the oldest release we support, currently Gingerbread), fall
back to the POSIX version.
Reviewers: mclow.lists, EricWF
Subscribers: tberghammer, danalbert, srhines, cfe-commits
Differential Revision: http://reviews.llvm.org/D21402
Modified:
libcxx/trunk/src/system_error.cpp
Modified: libcxx/trunk/src/system_error.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/src/system_error.cpp?rev=272827&r1=272826&r2=272827&view=diff
==============================================================================
--- libcxx/trunk/src/system_error.cpp (original)
+++ libcxx/trunk/src/system_error.cpp Wed Jun 15 15:20:32 2016
@@ -21,6 +21,10 @@
#include "string"
#include "string.h"
+#if defined(__ANDROID__)
+#include <android/api-level.h>
+#endif
+
_LIBCPP_BEGIN_NAMESPACE_STD
// class error_category
@@ -58,7 +62,8 @@ constexpr size_t strerror_buff_size = 10
string do_strerror_r(int ev);
-#if defined(__linux__) && !defined(_LIBCPP_HAS_MUSL_LIBC)
+#if defined(__linux__) && !defined(_LIBCPP_HAS_MUSL_LIBC) \
+ && (!defined(__ANDROID__) || __ANDROID_API__ >= 23)
// GNU Extended version
string do_strerror_r(int ev) {
char buffer[strerror_buff_size];
More information about the cfe-commits
mailing list