Revision: 39699
          
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=39699
Author:   blendix
Date:     2011-08-25 17:12:53 +0000 (Thu, 25 Aug 2011)
Log Message:
-----------
Cycles: updated openimageio libs that might solve problem running on windows XP.

Modified Paths:
--------------
    trunk/lib/windows/openimageio/bin/OpenImageIO.dll
    trunk/lib/windows/openimageio/bin/OpenImageIO_d.dll
    trunk/lib/windows/openimageio/build.patch
    trunk/lib/windows/openimageio/lib/OpenImageIO.lib
    trunk/lib/windows/openimageio/lib/OpenImageIO_d.lib

Modified: trunk/lib/windows/openimageio/bin/OpenImageIO.dll
===================================================================
(Binary files differ)

Modified: trunk/lib/windows/openimageio/bin/OpenImageIO_d.dll
===================================================================
(Binary files differ)

Modified: trunk/lib/windows/openimageio/build.patch
===================================================================
--- trunk/lib/windows/openimageio/build.patch   2011-08-25 17:01:33 UTC (rev 
39698)
+++ trunk/lib/windows/openimageio/build.patch   2011-08-25 17:12:53 UTC (rev 
39699)
@@ -1,5 +1,5 @@
 diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index f322e83..e6ec7e8 100644
+index f322e83..fdc1f70 100644
 --- a/src/CMakeLists.txt
 +++ b/src/CMakeLists.txt
 @@ -116,20 +116,30 @@ if (MSVC)
@@ -41,6 +41,74 @@
  
  # Add IO plugin directories
  if (NOT EMBEDPLUGINS)
+@@ -167,41 +177,41 @@ add_subdirectory (doc)
+ # Testing
+ 
+ # List all the individual testsuite tests here:
+-oiio_add_tests (ico gpsread sgi 
+-                texture-fill texture-gray texture-grid
+-                texture-missing texture-pointsample texture-res
+-                texture-skinny texture-fat
+-                imagecache-files texture-field3d)
++#oiio_add_tests (ico gpsread sgi 
++#                texture-fill texture-gray texture-grid
++#                texture-missing texture-pointsample texture-res
++#                texture-skinny texture-fat
++#                imagecache-files texture-field3d)
+ 
+ # List testsuites which need special external reference images from the web
+ # here:
+-oiio_add_tests (bmp
+-    IMAGEDIR bmpsuite
+-    URL http://entropymine.com/jason/bmpsuite/bmpsuite.zip)
++#oiio_add_tests (bmp
++#    IMAGEDIR bmpsuite
++#    URL http://entropymine.com/jason/bmpsuite/bmpsuite.zip)
+ 
+-oiio_add_tests (tiff-suite tiff-depths
+-    IMAGEDIR libtiffpic
+-    URL http://www.remotesensing.org/libtiff/images.html)
++#oiio_add_tests (tiff-suite tiff-depths
++#    IMAGEDIR libtiffpic
++#    URL http://www.remotesensing.org/libtiff/images.html)
+ 
+-oiio_add_tests (openexr-suite openexr-multires openexr-chroma
+-    IMAGEDIR openexr-images-1.5.0
+-    URL http://www.openexr.com/downloads.html)
++#oiio_add_tests (openexr-suite openexr-multires openexr-chroma
++#    IMAGEDIR openexr-images-1.5.0
++#    URL http://www.openexr.com/downloads.html)
+ 
+-oiio_add_tests (jpeg2000
+-    IMAGEDIR j2kp4files_v1_5
+-    URL http://www.crc.ricoh.com/~gormish/jpeg2000conformance/)
++#oiio_add_tests (jpeg2000
++#    IMAGEDIR j2kp4files_v1_5
++#    URL http://www.crc.ricoh.com/~gormish/jpeg2000conformance/)
+ 
+-oiio_add_tests (targa-tgautils
+-    IMAGEDIR TGAUTILS
+-    URL http://tgautils.inequation.org/)
++#oiio_add_tests (targa-tgautils
++#    IMAGEDIR TGAUTILS
++#    URL http://tgautils.inequation.org/)
+ 
+-oiio_add_tests (fits
+-    IMAGEDIR fits-images
+-    URL http://www.cv.nrao.edu/fits/data/tests/)
++#oiio_add_tests (fits
++#    IMAGEDIR fits-images
++#    URL http://www.cv.nrao.edu/fits/data/tests/)
+ 
+-oiio_add_tests (webp
+-    IMAGEDIR webp-images
+-    URL http://code.google.com/speed/webp/gallery.html)
++#oiio_add_tests (webp
++#    IMAGEDIR webp-images
++#    URL http://code.google.com/speed/webp/gallery.html)
+ 
+ #########################################################################
+ # Packaging
 @@ -234,7 +244,7 @@ if (WIN32)
      set(CPACK_PACKAGE_EXECUTABLES "iv" "iv - Image Viewer")
  #    set(CPACK_CREATE_DESCTOP_LINKS "iv" "iv - Image Viewer")
@@ -63,6 +131,52 @@
                                 "1.43" "1.43.0" "1.42" "1.42.0" 
                                 "1.41" "1.41.0" "1.40" "1.40.0"
                                 "1.39" "1.39.0" "1.38" "1.38.0"
+diff --git a/src/include/thread.h b/src/include/thread.h
+index 2303c3e..4ced852 100644
+--- a/src/include/thread.h
++++ b/src/include/thread.h
+@@ -245,7 +245,19 @@ private:
+ 
+ 
+ 
+-/// Atomic version of:  r = *at, *at += x, return r
++inline LONGLONG _InterlockedCompareExchange64(LONGLONG volatile* Destination, 
LONGLONG Exchange, LONGLONG Comperand)
++{
++      __asm {
++              mov esi, [Destination]
++              mov ebx, dword ptr [Exchange]
++              mov ecx, dword ptr [Exchange + 4]
++              mov eax, dword ptr [Comperand]
++              mov edx, dword ptr [Comperand + 4]
++              lock cmpxchg8b [esi]
++      }
++}
++
++// Atomic version of:  r = *at, *at += x, return r
+ /// For each of several architectures.
+ inline int
+ atomic_exchange_and_add (volatile int *at, int x)
+@@ -281,7 +293,10 @@ atomic_exchange_and_add (volatile long long *at, long 
long x)
+     return OSAtomicAdd64Barrier (x, at) - x;
+ #elif defined(_WIN32)
+     // Windows
+-    return InterlockedExchangeAdd64 ((volatile LONGLONG *)at, x);
++      LONGLONG Old;
++      do Old = *at;
++      while (_InterlockedCompareExchange64(at, Old + x, Old) != Old);
++      return Old;
+ #else
+     error ("No atomics on this platform.")
+ #endif
+@@ -325,7 +340,7 @@ atomic_compare_and_exchange (volatile long long *at, long 
long compareval, long
+ #elif defined(__APPLE__)
+     return OSAtomicCompareAndSwap64Barrier (compareval, newval, at);
+ #elif defined(_WIN32)
+-    return (InterlockedCompareExchange64 ((volatile LONGLONG *)at, newval, 
compareval) == compareval);
++    return (_InterlockedCompareExchange64 ((volatile LONGLONG *)at, newval, 
compareval) == compareval);
+ #else
+     error ("No atomics on this platform.")
+ #endif
 diff --git a/src/libOpenImageIO/CMakeLists.txt 
b/src/libOpenImageIO/CMakeLists.txt
 index 8c162bc..d49c37a 100644
 --- a/src/libOpenImageIO/CMakeLists.txt
@@ -76,4 +190,3 @@
  endif ()
  
  add_executable (imagebufalgo_test imagebufalgo_test.cpp)
-

Modified: trunk/lib/windows/openimageio/lib/OpenImageIO.lib
===================================================================
(Binary files differ)

Modified: trunk/lib/windows/openimageio/lib/OpenImageIO_d.lib
===================================================================
(Binary files differ)

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to