diff options
Diffstat (limited to 'testing/llvm/llvm-uclibc-errno-fsckery.patch')
-rw-r--r-- | testing/llvm/llvm-uclibc-errno-fsckery.patch | 86 |
1 files changed, 86 insertions, 0 deletions
diff --git a/testing/llvm/llvm-uclibc-errno-fsckery.patch b/testing/llvm/llvm-uclibc-errno-fsckery.patch new file mode 100644 index 000000000..a7335f268 --- /dev/null +++ b/testing/llvm/llvm-uclibc-errno-fsckery.patch @@ -0,0 +1,86 @@ +--- llvm-2.8/lib/Support/CommandLine.cpp ++++ llvm-2.8.mod/lib/Support/CommandLine.cpp +@@ -31,7 +31,10 @@ + #include "llvm/ADT/StringMap.h" + #include "llvm/ADT/Twine.h" + #include "llvm/Config/config.h" +-#include <cerrno> ++ ++#include <asm-generic/errno-base.h> ++extern __thread int errno; ++ + #include <cstdlib> + using namespace llvm; + using namespace cl; +--- llvm-2.8/lib/Support/raw_ostream.cpp ++++ llvm-2.8.mod/lib/Support/raw_ostream.cpp +@@ -22,7 +22,10 @@ + #include "llvm/System/Signals.h" + #include "llvm/ADT/STLExtras.h" + #include <cctype> +-#include <cerrno> ++ ++#include <asm-generic/errno-base.h> ++extern __thread int errno; ++ + #include <sys/stat.h> + #include <sys/types.h> + +--- llvm-2.8/lib/System/Errno.cpp ++++ llvm-2.8.mod/lib/System/Errno.cpp +@@ -14,13 +14,11 @@ + #include "llvm/System/Errno.h" + #include "llvm/Config/config.h" // Get autoconf configuration settings + ++extern __thread int errno; ++ + #if HAVE_STRING_H + #include <string.h> + +-#if HAVE_ERRNO_H +-#include <errno.h> +-#endif +- + //===----------------------------------------------------------------------===// + //=== WARNING: Implementation here must contain only TRULY operating system + //=== independent code. +@@ -29,11 +27,9 @@ + namespace llvm { + namespace sys { + +-#if HAVE_ERRNO_H + std::string StrError() { + return StrError(errno); + } +-#endif // HAVE_ERRNO_H + + std::string StrError(int errnum) { + const int MaxErrStrLen = 2000; +--- llvm-2.8/lib/System/Unix/Unix.h ++++ llvm-2.8.mod/lib/System/Unix/Unix.h +@@ -24,7 +24,10 @@ + #include <cstdlib> + #include <cstdio> + #include <cstring> +-#include <cerrno> ++ ++#include <asm-generic/errno-base.h> ++extern __thread int errno; ++ + #include <string> + #include <algorithm> + +--- llvm-2.8/utils/TableGen/TGLexer.cpp ++++ llvm-2.8.mod/utils/TableGen/TGLexer.cpp +@@ -19,7 +19,10 @@ + #include <cstdio> + #include <cstdlib> + #include <cstring> +-#include <cerrno> ++ ++#include <asm-generic/errno-base.h> ++extern __thread int errno; ++ + using namespace llvm; + + TGLexer::TGLexer(SourceMgr &SM) : SrcMgr(SM) { |