[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [29065] trunk/lib/windows/gcc/openexr: OpenEXR library updated for MinGW
Sergey Sharybin
g.ulairi at gmail.com
Sat May 29 20:33:32 CEST 2010
Revision: 29065
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=29065
Author: nazgul
Date: 2010-05-29 20:33:32 +0200 (Sat, 29 May 2010)
Log Message:
-----------
OpenEXR library updated for MinGW
Modified Paths:
--------------
trunk/lib/windows/gcc/openexr/README.txt
trunk/lib/windows/gcc/openexr/include/OpenEXR/Iex.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/IexBaseExc.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/IexErrnoExc.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/IexMathExc.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/IexThrowErrnoExc.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImathBox.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImathBoxAlgo.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImathColor.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImathColorAlgo.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImathEuler.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImathExc.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImathFrustum.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImathFun.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImathGL.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImathGLU.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImathHalfLimits.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImathInterval.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImathLimits.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImathLine.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImathLineAlgo.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImathMath.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImathMatrix.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImathMatrixAlgo.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImathPlane.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImathPlatform.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImathQuat.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImathRandom.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImathRoots.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImathShear.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImathSphere.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImathVec.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImathVecAlgo.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImfAttribute.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImfBoxAttribute.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImfCRgbaFile.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImfChannelList.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImfChromaticities.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImfCompression.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImfConvert.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImfEnvmap.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImfFrameBuffer.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImfHeader.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImfIO.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImfInputFile.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImfInt64.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImfLut.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImfMatrixAttribute.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImfOutputFile.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImfRgba.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImfRgbaFile.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImfStandardAttributes.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImfTiledInputFile.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImfTiledOutputFile.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImfTiledRgbaFile.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImfTimeCode.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImfVecAttribute.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImfXdr.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/half.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/halfFunction.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/halfLimits.h
trunk/lib/windows/gcc/openexr/lib/libHalf.a
trunk/lib/windows/gcc/openexr/lib/libIex.a
trunk/lib/windows/gcc/openexr/lib/libIlmImf.a
Added Paths:
-----------
trunk/lib/windows/gcc/openexr/ilmbase.patch
trunk/lib/windows/gcc/openexr/include/OpenEXR/IlmBaseConfig.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/IlmThread.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/IlmThreadMutex.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/IlmThreadPool.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/IlmThreadSemaphore.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImathInt64.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImfB44Compressor.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImfFramesPerSecond.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImfRational.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImfRationalAttribute.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/ImfThreading.h
trunk/lib/windows/gcc/openexr/include/OpenEXR/OpenEXRConfig.h
trunk/lib/windows/gcc/openexr/lib/libIlmThread.a
trunk/lib/windows/gcc/openexr/lib/libImath.a
trunk/lib/windows/gcc/openexr/openexr.patch
Modified: trunk/lib/windows/gcc/openexr/README.txt
===================================================================
--- trunk/lib/windows/gcc/openexr/README.txt 2010-05-29 18:28:01 UTC (rev 29064)
+++ trunk/lib/windows/gcc/openexr/README.txt 2010-05-29 18:33:32 UTC (rev 29065)
@@ -1,5 +1,14 @@
-Compiled from OpenEXR-1.2.2.tar.gz with gcc using the configure options:
+Compiled from ilmbase-1.0.1 and openexr-1.6.1.tar.gz under MSys
-configure --prefix=/home/cwant/blender/openexr/openexr-inst \
- CXXFLAGS="-mno-cygwin -DPLATFORM_WINDOWS=1" \
- CPPFLAGS=-I/home/cwant/blender/lib-windows/zlib/include
+Configuration line for ilmbase:
+./configure --prefix=/home/nazgul/openexr-inst LDFLAGS= -mwindows
+
+Configuration line for openexr:
+./configure --prefix=/home/nazgul/openexr-inst \
+ CPPFLAGS= "-I/n/src/packages/blender/lib/windows/zlib/include \
+ -I/home/nazgul/openexr-inst/include/ \
+ -I/home/nazgul/openexr-inst/include/OpenEXR" \
+ LDFLAGS= "-mwindows -L/n/src/packages/blender/lib/windows/zlib/lib \
+ -L/home/nazgul/openexr-inst/lib"
+
+Changes, made to the source code, could be found in ilmbase.patch and openexr.patch
\ No newline at end of file
Added: trunk/lib/windows/gcc/openexr/ilmbase.patch
===================================================================
--- trunk/lib/windows/gcc/openexr/ilmbase.patch (rev 0)
+++ trunk/lib/windows/gcc/openexr/ilmbase.patch 2010-05-29 18:33:32 UTC (rev 29065)
@@ -0,0 +1,137 @@
+diff --git a/config.h b/config.h
+new file mode 100644
+index 0000000..e69de29
+diff --git a/IlmThread/IlmThread.h b/IlmThread/IlmThread.h
+index e5ca595..a7f814b 100644
+--- a/IlmThread/IlmThread.h
++++ b/IlmThread/IlmThread.h
+@@ -92,15 +92,15 @@
+
+ #include "IlmBaseConfig.h"
+
+-#if defined _WIN32 || defined _WIN64
++#if HAVE_PTHREAD
++ #include <pthread.h>
++#elif defined _WIN32 || defined _WIN64
+ #ifdef NOMINMAX
+ #undef NOMINMAX
+ #endif
+ #define NOMINMAX
+ #include <windows.h>
+ #include <process.h>
+-#elif HAVE_PTHREAD
+- #include <pthread.h>
+ #endif
+
+ #if defined(OPENEXR_DLL) && !defined(ZENO_STATIC)
+@@ -135,10 +135,10 @@ class ILMTHREAD_EXPORT Thread
+
+ private:
+
+- #if defined _WIN32 || defined _WIN64
+- HANDLE _thread;
+- #elif HAVE_PTHREAD
++ #if HAVE_PTHREAD
+ pthread_t _thread;
++ #elif defined _WIN32 || defined _WIN64
++ HANDLE _thread;
+ #endif
+
+ void operator = (const Thread& t); // not implemented
+diff --git a/IlmThread/IlmThreadMutex.h b/IlmThread/IlmThreadMutex.h
+index 354282b..8ee22b3 100644
+--- a/IlmThread/IlmThreadMutex.h
++++ b/IlmThread/IlmThreadMutex.h
+@@ -68,14 +68,14 @@
+
+ #include "IlmBaseConfig.h"
+
+-#if defined _WIN32 || defined _WIN64
++#if HAVE_PTHREAD
++ #include <pthread.h>
++#elif defined _WIN32 || defined _WIN64
+ #ifdef NOMINMAX
+ #undef NOMINMAX
+ #endif
+ #define NOMINMAX
+ #include <windows.h>
+-#elif HAVE_PTHREAD
+- #include <pthread.h>
+ #endif
+
+ namespace IlmThread {
+@@ -95,10 +95,10 @@ class Mutex
+ void lock () const;
+ void unlock () const;
+
+- #if defined _WIN32 || defined _WIN64
+- mutable CRITICAL_SECTION _mutex;
+- #elif HAVE_PTHREAD
++ #if HAVE_PTHREAD
+ mutable pthread_mutex_t _mutex;
++ #elif defined _WIN32 || defined _WIN64
++ mutable CRITICAL_SECTION _mutex;
+ #endif
+
+ void operator = (const Mutex& M); // not implemented
+diff --git a/IlmThread/IlmThreadSemaphore.h b/IlmThread/IlmThreadSemaphore.h
+index a9ba60a..45afcaf 100644
+--- a/IlmThread/IlmThreadSemaphore.h
++++ b/IlmThread/IlmThreadSemaphore.h
+@@ -44,16 +44,16 @@
+
+ #include "IlmBaseConfig.h"
+
+-#if defined _WIN32 || defined _WIN64
++#if HAVE_PTHREAD && !HAVE_POSIX_SEMAPHORES
++ #include <pthread.h>
++#elif HAVE_PTHREAD && HAVE_POSIX_SEMAPHORES
++ #include <semaphore.h>
++#elif defined _WIN32 || defined _WIN64
+ #ifdef NOMINMAX
+ #undef NOMINMAX
+ #endif
+ #define NOMINMAX
+ #include <windows.h>
+-#elif HAVE_PTHREAD && !HAVE_POSIX_SEMAPHORES
+- #include <pthread.h>
+-#elif HAVE_PTHREAD && HAVE_POSIX_SEMAPHORES
+- #include <semaphore.h>
+ #endif
+
+ namespace IlmThread {
+@@ -73,11 +73,7 @@ class Semaphore
+
+ private:
+
+- #if defined _WIN32 || defined _WIN64
+-
+- mutable HANDLE _semaphore;
+-
+- #elif HAVE_PTHREAD && !HAVE_POSIX_SEMAPHORES
++ #if HAVE_PTHREAD && !HAVE_POSIX_SEMAPHORES
+
+ //
+ // If the platform has Posix threads but no semapohores,
+@@ -98,6 +94,10 @@ class Semaphore
+
+ mutable sem_t _semaphore;
+
++ #elif defined _WIN32 || defined _WIN64
++
++ mutable HANDLE _semaphore;
++
+ #endif
+
+ void operator = (const Semaphore& s); // not implemented
+diff --git a/config/IlmBaseConfig.h b/config/IlmBaseConfig.h
+index 3ab0479..98d4e55 100644
+--- a/config/IlmBaseConfig.h
++++ b/config/IlmBaseConfig.h
+@@ -12,5 +12,5 @@
+ // own semaphore implementation.
+ //
+
+-#define HAVE_POSIX_SEMAPHORES 1
++/* #undef HAVE_POSIX_SEMAPHORES */
+
Modified: trunk/lib/windows/gcc/openexr/include/OpenEXR/Iex.h
===================================================================
--- trunk/lib/windows/gcc/openexr/include/OpenEXR/Iex.h 2010-05-29 18:28:01 UTC (rev 29064)
+++ trunk/lib/windows/gcc/openexr/include/OpenEXR/Iex.h 2010-05-29 18:33:32 UTC (rev 29065)
@@ -45,10 +45,10 @@
//--------------------------------
-#include <IexMacros.h>
-#include <IexBaseExc.h>
-#include <IexMathExc.h>
-#include <IexThrowErrnoExc.h>
+#include "IexMacros.h"
+#include "IexBaseExc.h"
+#include "IexMathExc.h"
+#include "IexThrowErrnoExc.h"
// Note that we do not include file IexErrnoExc.h here. That file
// defines over 150 classes and significantly slows down compilation.
Modified: trunk/lib/windows/gcc/openexr/include/OpenEXR/IexBaseExc.h
===================================================================
--- trunk/lib/windows/gcc/openexr/include/OpenEXR/IexBaseExc.h 2010-05-29 18:28:01 UTC (rev 29064)
+++ trunk/lib/windows/gcc/openexr/include/OpenEXR/IexBaseExc.h 2010-05-29 18:33:32 UTC (rev 29065)
@@ -51,7 +51,7 @@
namespace Iex {
-#if defined PLATFORM_WINDOWS && _MSC_VER
+#if (defined _WIN32 || defined _WIN64) && defined _MSC_VER
// Tell MS VC++ to suppress exception specification warnings
#pragma warning(disable:4290)
#endif
@@ -257,7 +257,7 @@
return _stackTrace;
}
-#if defined PLATFORM_WINDOWS && _MSC_VER
+#if (defined _WIN32 || defined _WIN64) && defined _MSC_VER
#pragma warning(default:4290)
#endif
Modified: trunk/lib/windows/gcc/openexr/include/OpenEXR/IexErrnoExc.h
===================================================================
--- trunk/lib/windows/gcc/openexr/include/OpenEXR/IexErrnoExc.h 2010-05-29 18:28:01 UTC (rev 29064)
+++ trunk/lib/windows/gcc/openexr/include/OpenEXR/IexErrnoExc.h 2010-05-29 18:33:32 UTC (rev 29065)
@@ -43,7 +43,7 @@
//
//----------------------------------------------------------------
-#include <IexBaseExc.h>
+#include "IexBaseExc.h"
namespace Iex {
Modified: trunk/lib/windows/gcc/openexr/include/OpenEXR/IexMathExc.h
===================================================================
--- trunk/lib/windows/gcc/openexr/include/OpenEXR/IexMathExc.h 2010-05-29 18:28:01 UTC (rev 29064)
+++ trunk/lib/windows/gcc/openexr/include/OpenEXR/IexMathExc.h 2010-05-29 18:33:32 UTC (rev 29065)
@@ -37,7 +37,7 @@
#ifndef INCLUDED_IEXMATHEXC_H
#define INCLUDED_IEXMATHEXC_H
-#include <IexBaseExc.h>
+#include "IexBaseExc.h"
namespace Iex {
Modified: trunk/lib/windows/gcc/openexr/include/OpenEXR/IexThrowErrnoExc.h
===================================================================
--- trunk/lib/windows/gcc/openexr/include/OpenEXR/IexThrowErrnoExc.h 2010-05-29 18:28:01 UTC (rev 29064)
+++ trunk/lib/windows/gcc/openexr/include/OpenEXR/IexThrowErrnoExc.h 2010-05-29 18:33:32 UTC (rev 29065)
@@ -43,7 +43,7 @@
//
//----------------------------------------------------------
-#include <IexBaseExc.h>
+#include "IexBaseExc.h"
namespace Iex {
Added: trunk/lib/windows/gcc/openexr/include/OpenEXR/IlmBaseConfig.h
===================================================================
--- trunk/lib/windows/gcc/openexr/include/OpenEXR/IlmBaseConfig.h (rev 0)
+++ trunk/lib/windows/gcc/openexr/include/OpenEXR/IlmBaseConfig.h 2010-05-29 18:33:32 UTC (rev 29065)
@@ -0,0 +1,16 @@
+/* config/IlmBaseConfig.h. Generated by configure. */
+//
+// Define and set to 1 if the target system has POSIX thread support
+// and you want IlmBase to use it for multithreaded file I/O.
+//
+
+#define HAVE_PTHREAD 1
+
+//
+// Define and set to 1 if the target system supports POSIX semaphores
+// and you want OpenEXR to use them; otherwise, OpenEXR will use its
+// own semaphore implementation.
+//
+
+/* #undef HAVE_POSIX_SEMAPHORES */
+
Added: trunk/lib/windows/gcc/openexr/include/OpenEXR/IlmThread.h
===================================================================
--- trunk/lib/windows/gcc/openexr/include/OpenEXR/IlmThread.h (rev 0)
+++ trunk/lib/windows/gcc/openexr/include/OpenEXR/IlmThread.h 2010-05-29 18:33:32 UTC (rev 29065)
@@ -0,0 +1,151 @@
+///////////////////////////////////////////////////////////////////////////
+//
+// Copyright (c) 2005, Industrial Light & Magic, a division of Lucas
+// Digital Ltd. LLC
+//
+// All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Industrial Light & Magic nor the names of
+// its contributors may be used to endorse or promote products derived
+// from this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list