summaryrefslogtreecommitdiff
path: root/thirdparty
diff options
context:
space:
mode:
authorRémi Verschelde <rverschelde@gmail.com>2017-05-27 11:57:54 +0200
committerRémi Verschelde <rverschelde@gmail.com>2017-05-27 13:13:31 +0200
commit37f5e1dcd94611dd5b670f013abf0323e8b47def (patch)
tree2a16bc8a0e0e63de8af38f20af90f68844d6da6a /thirdparty
parentb93fce1c18a58e752c07a634ed11aa8ec199601d (diff)
Fix MinGW-w64 build of TinyEXR for old toolchains
MinGW-w64 is at version 2.0.1 on our current Travis CI toolchain, and seems not to like fopen_s.
Diffstat (limited to 'thirdparty')
-rw-r--r--thirdparty/tinyexr/tinyexr.h40
1 files changed, 33 insertions, 7 deletions
diff --git a/thirdparty/tinyexr/tinyexr.h b/thirdparty/tinyexr/tinyexr.h
index 44cc287da7..c82768be9a 100644
--- a/thirdparty/tinyexr/tinyexr.h
+++ b/thirdparty/tinyexr/tinyexr.h
@@ -85,6 +85,11 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include <stddef.h> // for size_t
#include <stdint.h> // guess stdint.h is available(C99)
+// -- GODOT change for old MinGW on Travis CI --
+#if defined(__MINGW32__)
+#include <_mingw.h> // for __MINGW64_VERSION_MAJOR
+#endif
+
#ifdef __cplusplus
extern "C" {
#endif
@@ -4514,7 +4519,10 @@ void *tdefl_write_image_to_png_file_in_memory(const void *pImage, int w, int h,
#include <stdio.h>
#include <sys/stat.h>
-#if defined(_MSC_VER) || defined(__MINGW64__)
+// -- GODOT change for old MinGW on Travis CI --
+//#if defined(_MSC_VER) || defined(__MINGW64__)
+#if defined(_MSC_VER) || (defined(__MINGW32__) && __MINGW64_VERSION_MAJOR >= 3)
+// -- GODOT end --
static FILE *mz_fopen(const char *pFilename, const char *pMode) {
FILE *pFile = NULL;
fopen_s(&pFile, pFilename, pMode);
@@ -10822,7 +10830,10 @@ int LoadEXRImageFromFile(EXRImage *exr_image, const EXRHeader *exr_header,
return TINYEXR_ERROR_INVALID_ARGUMENT;
}
-#ifdef _WIN32
+// -- GODOT change for old MinGW on Travis CI --
+//#ifdef _WIN32
+#if defined(_MSC_VER) || (defined(__MINGW32__) && __MINGW64_VERSION_MAJOR >= 3)
+// -- GODOT end --
FILE *fp = NULL;
fopen_s(&fp, filename, "rb");
#else
@@ -11411,7 +11422,10 @@ int SaveEXRImageToFile(const EXRImage *exr_image, const EXRHeader *exr_header,
}
#endif
-#ifdef _WIN32
+// -- GODOT change for old MinGW on Travis CI --
+//#ifdef _WIN32
+#if defined(_MSC_VER) || (defined(__MINGW32__) && __MINGW64_VERSION_MAJOR >= 3)
+// -- GODOT end --
FILE *fp = NULL;
fopen_s(&fp, filename, "wb");
#else
@@ -11892,7 +11906,10 @@ int ParseEXRHeaderFromFile(EXRHeader *exr_header, const EXRVersion *exr_version,
return TINYEXR_ERROR_INVALID_ARGUMENT;
}
-#ifdef _WIN32
+// -- GODOT change for old MinGW on Travis CI --
+//#ifdef _WIN32
+#if defined(_MSC_VER) || (defined(__MINGW32__) && __MINGW64_VERSION_MAJOR >= 3)
+// -- GODOT end --
FILE *fp = NULL;
fopen_s(&fp, filename, "rb");
#else
@@ -12016,7 +12033,10 @@ int ParseEXRMultipartHeaderFromFile(EXRHeader ***exr_headers, int *num_headers,
return TINYEXR_ERROR_INVALID_ARGUMENT;
}
-#ifdef _WIN32
+// -- GODOT change for old MinGW on Travis CI --
+//#ifdef _WIN32
+#if defined(_MSC_VER) || (defined(__MINGW32__) && __MINGW64_VERSION_MAJOR >= 3)
+// -- GODOT end --
FILE *fp = NULL;
fopen_s(&fp, filename, "rb");
#else
@@ -12116,7 +12136,10 @@ int ParseEXRVersionFromFile(EXRVersion *version, const char *filename) {
return TINYEXR_ERROR_INVALID_ARGUMENT;
}
-#ifdef _WIN32
+// -- GODOT change for old MinGW on Travis CI --
+//#ifdef _WIN32
+#if defined(_MSC_VER) || (defined(__MINGW32__) && __MINGW64_VERSION_MAJOR >= 3)
+// -- GODOT end --
FILE *fp = NULL;
fopen_s(&fp, filename, "rb");
#else
@@ -12254,7 +12277,10 @@ int LoadEXRMultipartImageFromFile(EXRImage *exr_images,
return TINYEXR_ERROR_INVALID_ARGUMENT;
}
-#ifdef _WIN32
+// -- GODOT change for old MinGW on Travis CI --
+//#ifdef _WIN32
+#if defined(_MSC_VER) || (defined(__MINGW32__) && __MINGW64_VERSION_MAJOR >= 3)
+// -- GODOT end --
FILE *fp = NULL;
fopen_s(&fp, filename, "rb");
#else