[libcxx] r225273 - [libcxx] Set _LIBCPP_ELAST for mingw.

Dan Albert danalbert at google.com
Tue Jan 6 09:34:51 PST 2015


Author: danalbert
Date: Tue Jan  6 11:34:51 2015
New Revision: 225273

URL: http://llvm.org/viewvc/llvm-project?rev=225273&view=rev
Log:
[libcxx] Set _LIBCPP_ELAST for mingw.

Reviewers: K-ballo, mclow.lists, EricWF

Reviewed By: EricWF

Subscribers: jfb, jroelofs, majnemer, cfe-commits

Differential Revision: http://reviews.llvm.org/D6558

Added:
    libcxx/trunk/src/config_elast.h
Modified:
    libcxx/trunk/include/__config
    libcxx/trunk/src/ios.cpp
    libcxx/trunk/src/system_error.cpp

Modified: libcxx/trunk/include/__config
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/__config?rev=225273&r1=225272&r2=225273&view=diff
==============================================================================
--- libcxx/trunk/include/__config (original)
+++ libcxx/trunk/include/__config Tue Jan  6 11:34:51 2015
@@ -21,7 +21,6 @@
 
 #if !_WIN32
 #include <unistd.h>
-#include <errno.h>  // for ELAST on FreeBSD
 #endif
 
 #define _LIBCPP_VERSION 1101
@@ -643,21 +642,6 @@ template <unsigned> struct __static_asse
 #define _LIBCPP_WCTYPE_IS_MASK
 #endif
 
-#if defined(ELAST)
-#define _LIBCPP_ELAST ELAST
-#elif defined(__linux__)
-#define _LIBCPP_ELAST 4095
-#elif defined(_NEWLIB_VERSION)
-#define _LIBCPP_ELAST __ELASTERROR
-#elif defined(__APPLE__)
-// Not _LIBCPP_ELAST needed on Apple
-#elif defined(__sun__)
-#define _LIBCPP_ELAST ESTALE
-#else
-// Warn here so that the person doing the libcxx port has an easier time:
-#warning This platform's ELAST hasn't been ported yet
-#endif
-
 #ifndef _LIBCPP_TRIVIAL_PAIR_COPY_CTOR
 #  define _LIBCPP_TRIVIAL_PAIR_COPY_CTOR 1
 #endif

Added: libcxx/trunk/src/config_elast.h
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/src/config_elast.h?rev=225273&view=auto
==============================================================================
--- libcxx/trunk/src/config_elast.h (added)
+++ libcxx/trunk/src/config_elast.h Tue Jan  6 11:34:51 2015
@@ -0,0 +1,36 @@
+//===----------------------- config_elast.h -------------------------------===//
+//
+//                     The LLVM Compiler Infrastructure
+//
+// This file is dual licensed under the MIT and the University of Illinois Open
+// Source Licenses. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+#ifndef _LIBCPP_CONFIG_ELAST
+#define _LIBCPP_CONFIG_ELAST
+
+#if defined(_WIN32)
+#include <stdlib.h>
+#else
+#include <errno.h>
+#endif
+
+#if defined(ELAST)
+#define _LIBCPP_ELAST ELAST
+#elif defined(_NEWLIB_VERSION)
+#define _LIBCPP_ELAST __ELASTERROR
+#elif defined(__linux__)
+#define _LIBCPP_ELAST 4095
+#elif defined(__APPLE__)
+// No _LIBCPP_ELAST needed on Apple
+#elif defined(__sun__)
+#define _LIBCPP_ELAST ESTALE
+#elif defined(_WIN32)
+#define _LIBCPP_ELAST _sys_nerr
+#else
+// Warn here so that the person doing the libcxx port has an easier time:
+#warning This platform's ELAST hasn't been ported yet
+#endif
+
+#endif // _LIBCPP_CONFIG_ELAST

Modified: libcxx/trunk/src/ios.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/src/ios.cpp?rev=225273&r1=225272&r2=225273&view=diff
==============================================================================
--- libcxx/trunk/src/ios.cpp (original)
+++ libcxx/trunk/src/ios.cpp Tue Jan  6 11:34:51 2015
@@ -8,16 +8,20 @@
 //===----------------------------------------------------------------------===//
 
 #include "__config"
+
 #include "ios"
-#include "streambuf"
-#include "istream"
-#include "string"
+
+#include <stdlib.h>
+
 #include "__locale"
 #include "algorithm"
+#include "config_elast.h"
+#include "istream"
+#include "limits"
 #include "memory"
 #include "new"
-#include "limits"
-#include <stdlib.h>
+#include "streambuf"
+#include "string"
 
 _LIBCPP_BEGIN_NAMESPACE_STD
 

Modified: libcxx/trunk/src/system_error.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/src/system_error.cpp?rev=225273&r1=225272&r2=225273&view=diff
==============================================================================
--- libcxx/trunk/src/system_error.cpp (original)
+++ libcxx/trunk/src/system_error.cpp Tue Jan  6 11:34:51 2015
@@ -7,11 +7,14 @@
 //
 //===----------------------------------------------------------------------===//
 
-#define _LIBCPP_BUILDING_SYSTEM_ERROR
 #include "__config"
+
+#define _LIBCPP_BUILDING_SYSTEM_ERROR
 #include "system_error"
-#include "string"
+
+#include "config_elast.h"
 #include "cstring"
+#include "string"
 
 _LIBCPP_BEGIN_NAMESPACE_STD
 





More information about the cfe-commits mailing list