diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2012-02-18 20:12:22 +0400 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2012-02-18 20:12:22 +0400 |
commit | 746e712f7a319f8db44fd29f91c88227bfc31cc6 (patch) | |
tree | f5a7af55b14d4a556a13f1f59c0e0837fa6fbde4 /extern/libmv/patches/mingw.patch | |
parent | 62d09c9103f07c86c484d2a044a8884c337a92a3 (diff) | |
parent | e6b708b36bb77ff2287439f20fc79097c275c822 (diff) |
Merging r44140 through r44226 from trunk into soc-2011-tomato
Diffstat (limited to 'extern/libmv/patches/mingw.patch')
-rw-r--r-- | extern/libmv/patches/mingw.patch | 171 |
1 files changed, 0 insertions, 171 deletions
diff --git a/extern/libmv/patches/mingw.patch b/extern/libmv/patches/mingw.patch deleted file mode 100644 index 029e7d7f979..00000000000 --- a/extern/libmv/patches/mingw.patch +++ /dev/null @@ -1,171 +0,0 @@ -diff --git a/src/libmv/multiview/euclidean_resection.cc b/src/libmv/multiview/euclidean_resection.cc -index 6d918a1..9286251 100644 ---- a/src/libmv/multiview/euclidean_resection.cc -+++ b/src/libmv/multiview/euclidean_resection.cc -@@ -32,6 +32,8 @@ - namespace libmv { - namespace euclidean_resection { - -+typedef unsigned int uint; -+ - bool EuclideanResection(const Mat2X &x_camera, - const Mat3X &X_world, - Mat3 *R, Vec3 *t, -diff --git a/src/libmv/numeric/numeric.h b/src/libmv/numeric/numeric.h -index f39d126..21e0f06 100644 ---- a/src/libmv/numeric/numeric.h -+++ b/src/libmv/numeric/numeric.h -@@ -40,7 +40,7 @@ - } - #endif //_WIN32 || __APPLE__ - --#if _WIN32 -+#if (defined(WIN32) || defined(WIN64)) && !defined(__MINGW32__) - inline long lround(double d) { - return (long)(d>0 ? d+0.5 : ceil(d-0.5)); - } -diff --git a/src/third_party/glog/src/config.h b/src/third_party/glog/src/config.h -index ed8d56e..06ed686 100644 ---- a/src/third_party/glog/src/config.h -+++ b/src/third_party/glog/src/config.h -@@ -4,6 +4,8 @@ - /* Namespace for Google classes */ - #ifdef __APPLE__ - #include "config_mac.h" -+#elif __MINGW32__ -+ #include "windows/config.h" - #elif __GNUC__ - #include "config_linux.h" - #elif _MSC_VER -diff --git a/src/third_party/glog/src/utilities.h b/src/third_party/glog/src/utilities.h -index ee54f94..c4ae256 100644 ---- a/src/third_party/glog/src/utilities.h -+++ b/src/third_party/glog/src/utilities.h -@@ -101,7 +101,9 @@ - // correctly when GetStackTrace() is called with max_depth == 0. - // Some code may do that. - --#if defined(HAVE_LIB_UNWIND) -+#if __MINGW32__ -+# undef STACKTRACE_H -+#elif defined(HAVE_LIB_UNWIND) - # define STACKTRACE_H "stacktrace_libunwind-inl.h" - #elif !defined(NO_FRAME_POINTER) - # if defined(__i386__) && __GNUC__ >= 2 -diff --git a/src/third_party/glog/src/windows/glog/logging.h b/src/third_party/glog/src/windows/glog/logging.h -index 7a6df74..4257375 100755 ---- a/src/third_party/glog/src/windows/glog/logging.h -+++ b/src/third_party/glog/src/windows/glog/logging.h -@@ -59,7 +59,7 @@ - - // Annoying stuff for windows -- makes sure clients can import these functions - #ifndef GOOGLE_GLOG_DLL_DECL --# if defined(_WIN32) && !defined(__CYGWIN__) -+# if defined(_WIN32) && !defined(__CYGWIN__) && !defined(__MINGW32__) - # define GOOGLE_GLOG_DLL_DECL __declspec(dllimport) - # else - # define GOOGLE_GLOG_DLL_DECL -@@ -86,6 +86,15 @@ - #include <gflags/gflags.h> - #endif - -+#ifdef __MINGW32__ -+# include <stdlib.h> -+# include <unistd.h> -+# include <stdint.h> // the normal place uint16_t is defined -+# include <sys/types.h> // the normal place u_int16_t is defined -+# include <inttypes.h> // a third place for uint16_t or u_int16_t -+# define _exit(x) exit(x) -+#endif -+ - namespace google { - - #if 0 // the C99 format -@@ -98,11 +107,16 @@ typedef int32_t int32; - typedef u_int32_t uint32; - typedef int64_t int64; - typedef u_int64_t uint64; --#elif 1 // the windows (vc7) format -+#elif defined(_MSC_VER) - typedef __int32 int32; - typedef unsigned __int32 uint32; - typedef __int64 int64; - typedef unsigned __int64 uint64; -+#elif defined(__MINGW32__) -+typedef int32_t int32; -+typedef uint32_t uint32; -+typedef int64_t int64; -+typedef uint64_t uint64; - #else - #error Do not know how to define a 32-bit integer quantity on your system - #endif -diff --git a/src/third_party/glog/src/windows/port.h b/src/third_party/glog/src/windows/port.h -index d093bf5..d507812 100755 ---- a/src/third_party/glog/src/windows/port.h -+++ b/src/third_party/glog/src/windows/port.h -@@ -59,14 +59,16 @@ - * used by both C and C++ code, so we put all the C++ together. - */ - --/* 4244: otherwise we get problems when substracting two size_t's to an int -- * 4251: it's complaining about a private struct I've chosen not to dllexport -- * 4355: we use this in a constructor, but we do it safely -- * 4715: for some reason VC++ stopped realizing you can't return after abort() -- * 4800: we know we're casting ints/char*'s to bools, and we're ok with that -- * 4996: Yes, we're ok using "unsafe" functions like fopen() and strerror() -- */ --#pragma warning(disable:4244 4251 4355 4715 4800 4996) -+#if _MSC_VER -+ /* 4244: otherwise we get problems when substracting two size_t's to an int -+ * 4251: it's complaining about a private struct I've chosen not to dllexport -+ * 4355: we use this in a constructor, but we do it safely -+ * 4715: for some reason VC++ stopped realizing you can't return after abort() -+ * 4800: we know we're casting ints/char*'s to bools, and we're ok with that -+ * 4996: Yes, we're ok using "unsafe" functions like fopen() and strerror() -+ */ -+# pragma warning(disable:4244 4251 4355 4715 4800 4996) -+#endif - - /* file I/O */ - #define PATH_MAX 1024 -@@ -108,7 +110,9 @@ extern int snprintf(char *str, size_t size, - extern int safe_vsnprintf(char *str, size_t size, - const char *format, va_list ap); - #define vsnprintf(str, size, format, ap) safe_vsnprintf(str, size, format, ap) -+#if !defined(__MINGW32__) - #define va_copy(dst, src) (dst) = (src) -+#endif - - /* Windows doesn't support specifying the number of buckets as a - * hash_map constructor arg, so we leave this blank. -@@ -130,13 +134,30 @@ enum { PTHREAD_ONCE_INIT = 0 }; // important that this be 0! for SpinLock - #define pthread_equal(pthread_t_1, pthread_t_2) ((pthread_t_1)==(pthread_t_2)) - - inline struct tm* localtime_r(const time_t* timep, struct tm* result) { -+#if __MINGW32__ -+ struct tm *local_result; -+ local_result = localtime (timep); -+ -+ if (local_result == NULL || result == NULL) -+ return NULL; -+ -+ memcpy (result, local_result, sizeof (result)); -+ -+ return result; -+#else - localtime_s(result, timep); - return result; -+#endif - } - - inline char* strerror_r(int errnum, char* buf, size_t buflen) { -+#if __MINGW32__ -+ strncpy(buf, "Not implemented yet", buflen); -+ return buf; -+#else - strerror_s(buf, buflen, errnum); - return buf; -+#endif - } - - #ifndef __cplusplus |