diff options
author | Tor Lillqvist <tml@iki.fi> | 2013-05-09 18:26:16 +0300 |
---|---|---|
committer | Tor Lillqvist <tml@iki.fi> | 2013-05-09 19:18:02 +0300 |
commit | b71f9cdab150109edc8269a523b87f471b2baaf4 (patch) | |
tree | 462309be9b5c9219bb6b3378810c9be57e97f58e /clucene/patches | |
parent | 39f8b887202fcf3037a80960e6a8e70af756aa64 (diff) |
Make clucene build against libc++ (at least the one in Xcode 4.6)
(Note that we don't build successfully against libc++ currently; this
is just a fix for the first issue that I came across when trying.)
Change-Id: If8b594177434e96a8b51c372b26a72236b9b5f5e
Diffstat (limited to 'clucene/patches')
-rw-r--r-- | clucene/patches/clucene-libcpp.patch | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/clucene/patches/clucene-libcpp.patch b/clucene/patches/clucene-libcpp.patch new file mode 100644 index 000000000000..35235212c795 --- /dev/null +++ b/clucene/patches/clucene-libcpp.patch @@ -0,0 +1,42 @@ +--- src/shared/CLucene/LuceneThreads.h ++++ src/shared/CLucene/LuceneThreads.h +@@ -7,6 +7,7 @@ + #ifndef _LuceneThreads_h + #define _LuceneThreads_h + ++#include "CLucene/config/_threads.h" + + CL_NS_DEF(util) + class CLuceneThreadIdCompare; +--- src/core/CLucene/util/VoidMap.h ++++ src/core/CLucene/util/VoidMap.h +@@ -11,8 +11,13 @@ + #include "CLucene/LuceneThreads.h" + + #if defined(_CL_HAVE_TR1_UNORDERED_MAP) && defined(_CL_HAVE_TR1_UNORDERED_SET) ++#ifdef _LIBCPP_VERSION ++ #include <unordered_map> ++ #include <unordered_set> ++#else + #include <tr1/unordered_map> + #include <tr1/unordered_set> ++#endif + #elif defined(_CL_HAVE_HASH_MAP) && defined(_CL_HAVE_HASH_SET) + //hashing is all or nothing! + #include <hash_map> +--- src/shared/CLucene/config/repl_tchar.h ++++ src/shared/CLucene/config/repl_tchar.h +@@ -36,8 +36,13 @@ + #define _tcsncpy wcsncpy //copy a specified amount of one string to another string. + #define _tcscat wcscat //copy a string onto the end of the other string + #define _tcsncat wcsncat ++#if defined(_LIBCPP_VERSION) && defined(__APPLE__) ++ #define _tcschr ::wcschr //find location of one character ++ #define _tcsstr ::wcsstr //find location of a string ++#else + #define _tcschr wcschr //find location of one character + #define _tcsstr wcsstr //find location of a string ++#endif + #define _tcslen wcslen //get length of a string + #define _tcscmp wcscmp //case sensitive compare two strings + #define _tcsncmp wcsncmp //case sensitive compare two strings |