[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