+++ /dev/null
-From: "Matteo F. Vescovi" <mfv.debian@gmail.com>
-Date: Fri, 21 Dec 2012 16:31:29 +0100
-Subject: Fix_IlmBase_issue
-
-This first patch hides the private symbols
-even on kFreeBSD and Hurd, besides Linux.
----
- src/CMakeLists.txt | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index adb380c..71f9a3e 100644
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -130,7 +130,7 @@ if (CMAKE_COMPILER_IS_CLANG OR CMAKE_COMPILER_IS_GNUCC)
- # Turn default symbol visibility to hidden
- set (VISIBILITY_COMMAND "-fvisibility=hidden -fvisibility-inlines-hidden")
- add_definitions (${VISIBILITY_COMMAND})
-- if (${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
-+ if (CMAKE_SYSTEM_NAME MATCHES "Linux|kFreeBSD" OR CMAKE_SYSTEM_NAME STREQUAL "GNU")
- # Linux: also hide all the symbols of dependent libraries to
- # prevent clashes if an app using OIIO is linked against
- # other verions of our dependencies.
+++ /dev/null
-From: "Matteo F. Vescovi" <mfv.debian@gmail.com>
-Date: Fri, 21 Dec 2012 16:34:56 +0100
-Subject: Fix_multiarch_paths
-
-This second patch adds multiarch paths to the
-standard ones for ilm and openexr libraries.
----
- src/cmake/modules/FindIlmBase.cmake | 2 ++
- src/cmake/modules/FindOpenEXR.cmake | 2 ++
- 2 files changed, 4 insertions(+)
-
-diff --git a/src/cmake/modules/FindIlmBase.cmake b/src/cmake/modules/FindIlmBase.cmake
-index 9e2fe5b..041b470 100644
---- a/src/cmake/modules/FindIlmBase.cmake
-+++ b/src/cmake/modules/FindIlmBase.cmake
-@@ -118,7 +118,9 @@ set (IlmBase_generic_include_paths
- /opt/local/include)
- set (IlmBase_generic_library_paths
- /usr/lib
-+ /usr/lib/${CMAKE_LIBRARY_ARCHITECTURE}
- /usr/local/lib
-+ /usr/local/lib/${CMAKE_LIBRARY_ARCHITECTURE}
- /sw/lib
- /opt/local/lib)
-
-diff --git a/src/cmake/modules/FindOpenEXR.cmake b/src/cmake/modules/FindOpenEXR.cmake
-index bd37e8a..955c025 100644
---- a/src/cmake/modules/FindOpenEXR.cmake
-+++ b/src/cmake/modules/FindOpenEXR.cmake
-@@ -114,7 +114,9 @@ set (OpenEXR_generic_include_paths
- /opt/local/include)
- set (OpenEXR_generic_library_paths
- /usr/lib
-+ /usr/lib/${CMAKE_LIBRARY_ARCHITECTURE}
- /usr/local/lib
-+ /usr/local/lib/${CMAKE_LIBRARY_ARCHITECTURE}
- /sw/lib
- /opt/local/lib)
-
+++ /dev/null
---- OpenImageIO-oiio-bcdad81/src/field3d.imageio/CMakeLists.txt~ 2013-11-01 18:03:46.000000000 +0100
-+++ OpenImageIO-oiio-bcdad81/src/field3d.imageio/CMakeLists.txt 2013-11-05 21:12:41.033996632 +0100
-@@ -1,5 +1,5 @@
- if (USE_FIELD3D)
-- if (FIELD3D_FOUND and HDF5_FOUND)
-+ if (FIELD3D_FOUND AND HDF5_FOUND)
- include_directories (${FIELD3D_INCLUDES})
- add_oiio_plugin (field3dinput.cpp field3doutput.cpp
- LINK_LIBRARIES ${FIELD3D_LIBRARY}
-
-From 77fd2276e12791dc17cb20526cd371d66140e416 Mon Sep 17 00:00:00 2001
-From: Larry Gritz <lg@larrygritz.com>
-Date: Tue, 5 Nov 2013 16:05:43 -0800
-Subject: [PATCH] Make cleaner threads.h compile for the NOTHREADS case
-
----
- src/include/thread.h | 27 ++++++++++++++++++++++-----
- 1 file changed, 22 insertions(+), 5 deletions(-)
-
-diff --git a/src/include/thread.h b/src/include/thread.h
-index e389ebb..ecf3e66 100644
---- a/src/include/thread.h
-+++ b/src/include/thread.h
-@@ -128,6 +128,7 @@ class null_mutex {
- void unlock () { }
- void lock_shared () { }
- void unlock_shared () { }
-+ bool try_lock () { return true; }
- };
-
- /// Null lock that can be substituted for a real one to test how much
-@@ -219,7 +220,9 @@ class thread_specific_ptr {
- inline int
- atomic_exchange_and_add (volatile int *at, int x)
- {
--#ifdef USE_GCC_ATOMICS
-+#ifdef NOTHREADS
-+ int r = *at; *at += x; return r;
-+#elif defined(USE_GCC_ATOMICS)
- return __sync_fetch_and_add ((int *)at, x);
- #elif USE_TBB
- atomic<int> *a = (atomic<int> *)at;
-@@ -237,7 +240,9 @@ class thread_specific_ptr {
- inline long long
- atomic_exchange_and_add (volatile long long *at, long long x)
- {
--#ifdef USE_GCC_ATOMICS
-+#ifdef NOTHREADS
-+ long long r = *at; *at += x; return r;
-+#elif defined(USE_GCC_ATOMICS)
- return __sync_fetch_and_add (at, x);
- #elif USE_TBB
- atomic<long long> *a = (atomic<long long> *)at;
-@@ -261,11 +266,17 @@ class thread_specific_ptr {
- /// *at = newval; return true;
- /// } else {
- /// return false;
--///
-+/// }
- inline bool
- atomic_compare_and_exchange (volatile int *at, int compareval, int newval)
- {
--#ifdef USE_GCC_ATOMICS
-+#ifdef NOTHREADS
-+ if (*at == compareval) {
-+ *at = newval; return true;
-+ } else {
-+ return false;
-+ }
-+#elif defined(USE_GCC_ATOMICS)
- return __sync_bool_compare_and_swap (at, compareval, newval);
- #elif USE_TBB
- atomic<int> *a = (atomic<int> *)at;
-@@ -282,7 +293,13 @@ class thread_specific_ptr {
- inline bool
- atomic_compare_and_exchange (volatile long long *at, long long compareval, long long newval)
- {
--#ifdef USE_GCC_ATOMICS
-+#ifdef NOTHREADS
-+ if (*at == compareval) {
-+ *at = newval; return true;
-+ } else {
-+ return false;
-+ }
-+#elif defined(USE_GCC_ATOMICS)
- return __sync_bool_compare_and_swap (at, compareval, newval);
- #elif USE_TBB
- atomic<long long> *a = (atomic<long long> *)at;
---
-1.8.4
-
--- OpenImageIO-oiio-7d98ca6/src/dds.imageio/CMakeLists.txt.orig 2011-11-05 08:35:00.000000000 +0100
+++ OpenImageIO-oiio-7d98ca6/src/dds.imageio/CMakeLists.txt 2011-11-18 21:22:02.993174921 +0100
-@@ -1 +1 @@
--add_oiio_plugin (ddsinput.cpp ddsoutput.cpp squish/alpha.cpp squish/clusterfit.cpp squish/colourblock.cpp squish/colourfit.cpp squish/colourset.cpp squish/maths.cpp squish/rangefit.cpp squish/singlecolourfit.cpp squish/squish.cpp)
+@@ -1,4 +1,1 @@
+-add_oiio_plugin (ddsinput.cpp ddsoutput.cpp squish/alpha.cpp squish/clusterfit.cpp
+- squish/colourblock.cpp squish/colourfit.cpp squish/colourset.cpp
+- squish/maths.cpp squish/rangefit.cpp squish/singlecolourfit.cpp
+- squish/squish.cpp)
+add_oiio_plugin (ddsinput.cpp ddsoutput.cpp LINK_LIBRARIES squish)
--- OpenImageIO-oiio-7d98ca6/src/dds.imageio/ddsinput.cpp.orig 2011-11-05 08:35:00.000000000 +0100
+++ OpenImageIO-oiio-7d98ca6/src/dds.imageio/ddsinput.cpp 2011-11-18 21:30:04.823191054 +0100
case dpx::kUndefined:
tmpstr = "Undefined";
break;
---- OpenImageIO-oiio-bcdad81/src/libOpenImageIO/imagebufalgo.cpp~ 2013-11-01 18:03:46.000000000 +0100
-+++ OpenImageIO-oiio-bcdad81/src/libOpenImageIO/imagebufalgo.cpp 2015-02-18 17:15:01.274966027 +0100
-@@ -1063,9 +1063,9 @@
- if (error)
- continue; // ignore errors
- // now, draw to our target surface
-- for (int j = 0; j < slot->bitmap.rows; ++j) {
-+ for (unsigned int j = 0; j < slot->bitmap.rows; ++j) {
- int ry = y + j - slot->bitmap_top;
-- for (int i = 0; i < slot->bitmap.width; ++i) {
-+ for (unsigned int i = 0; i < slot->bitmap.width; ++i) {
- int rx = x + i + slot->bitmap_left;
- float b = slot->bitmap.buffer[slot->bitmap.pitch*j+i] / 255.0f;
- R.getpixel (rx, ry, pixelcolor);
+
+--- /home/users/baggins/devel/PLD/rpm/BUILD/OpenImageIO-oiio-4070df8/src/libtexture/texturesys.cpp~ 2015-12-19 07:44:03.000000000 +0100
++++ /home/users/baggins/devel/PLD/rpm/BUILD/OpenImageIO-oiio-4070df8/src/libtexture/texturesys.cpp 2015-12-26 10:38:06.735886871 +0100
+@@ -2038,7 +2038,7 @@
+ int pixelsize = tile->pixelsize();
+ int offset = pixelsize * (tile_t * spec.tile_width + tile_s);
+ offset += (firstchannel - id.chbegin()) * channelsize;
+- DASSERT ((size_t)offset < spec.tile_width*spec.tile_height*spec.tile_depth*pixelsize);
++ DASSERT ((size_t)offset < (size_t)spec.tile_width*spec.tile_height*spec.tile_depth*pixelsize);
+ if (pixeltype == TypeDesc::UINT8)
+ texel_simd[j][i] = uchar2float4 ((const unsigned char *)(tile->bytedata() + offset));
+ else if (pixeltype == TypeDesc::UINT16)
Summary: Library for reading and writing images
Summary(pl.UTF-8): Biblioteka do odczytu i zapisu obrazów
Name: OpenImageIO
-Version: 1.2.3
-Release: 23
+Version: 1.6.8
+Release: 1
License: BSD
Group: Libraries
Source0: https://github.com/OpenImageIO/oiio/tarball/Release-%{version}/%{name}-%{version}.tar.gz
-# Source0-md5: 20066ae0e9026717242f64f107f7ee8e
+# Source0-md5: 1f614ff6129c60bfcadbb4cefe86325d
Patch0: %{name}-link.patch
-
-Patch2: %{name}-build.patch
Patch3: %{name}-system-squish.patch
Patch4: %{name}-system-ptex.patch
Patch5: %{name}-system-dpx.patch
Patch7: %{name}-werror.patch
Patch8: 0002-Fix_IlmBase_issue.patch
Patch9: 0003-Fix_multiarch_paths.patch
+Patch10: system-pugixml.patch
+Patch11: fix-types.patch
URL: https://sites.google.com/site/openimageio/home
BuildRequires: Field3D-devel
%{?with_ocio:BuildRequires: OpenColorIO-devel}
Wiązanie Pythona do biblioteki OpenImageIO.
%prep
-%setup -q -n %{name}-oiio-bcdad81
+%setup -q -n %{name}-oiio-4070df8
%patch0 -p1
-
-%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
%patch6 -p1
%patch7 -p1
-%patch8 -p1
-%patch9 -p1
+%patch10 -p1
+%patch11 -p1
%{__rm} -r src/dds.imageio/squish src/ptex.imageio/ptex
# when using system pugixml, don't use hacked headers
-%{__rm} src/include/pugi*.hpp
+%{__rm} src/include/OpenImageIO/pugi*.{c,h}pp
%build
install -d build
cd build
-%cmake ../src \
+CXXFLAGS="%{rpmcxxflags} -std=c++11" \
+%cmake ../ \
%ifarch i386 i486
-DNOTHREADS=1 \
%endif
--- /dev/null
+--- OpenImageIO-oiio-4070df8/src/include/OpenImageIO/SHA1.h.orig 2015-12-26 10:27:30.663439300 +0100
++++ OpenImageIO-oiio-4070df8/src/include/OpenImageIO/SHA1.h 2015-12-26 10:32:29.409487767 +0100
+@@ -103,6 +103,8 @@
+ #include <stdlib.h>
+ #endif
+
++#include <cinttypes>
++
+ // You can define the endian mode in your files without modifying the SHA-1
+ // source files. Just #define SHA1_LITTLE_ENDIAN or #define SHA1_BIG_ENDIAN
+ // in your files, before including the SHA1.h header file. If you don't
+@@ -156,7 +158,7 @@
+ #ifdef _MSC_VER // Compiling with Microsoft compiler
+ #define UINT_8 unsigned __int8
+ #else // !_MSC_VER
+-#define UINT_8 unsigned char
++#define UINT_8 uint8_t
+ #endif // _MSC_VER
+ #endif
+
+@@ -164,11 +166,7 @@
+ #ifdef _MSC_VER // Compiling with Microsoft compiler
+ #define UINT_32 unsigned __int32
+ #else // !_MSC_VER
+-#if (ULONG_MAX == 0xFFFFFFFF)
+-#define UINT_32 unsigned long
+-#else
+-#define UINT_32 unsigned int
+-#endif
++#define UINT_32 uint32_t
+ #endif // _MSC_VER
+ #endif // UINT_32
+
+@@ -176,7 +174,7 @@
+ #ifdef _MSC_VER // Compiling with Microsoft compiler
+ #define INT_64 __int64
+ #else // !_MSC_VER
+-#define INT_64 long long
++#define INT_64 int64_t
+ #endif // _MSC_VER
+ #endif // INT_64
+
+@@ -184,7 +182,7 @@
+ #ifdef _MSC_VER // Compiling with Microsoft compiler
+ #define UINT_64 unsigned __int64
+ #else // !_MSC_VER
+-#define UINT_64 unsigned long long
++#define UINT_64 uint64_t
+ #endif // _MSC_VER
+ #endif // UINT_64
+
--- /dev/null
+--- OpenImageIO-oiio-4070df8/src/libOpenImageIO/formatspec.cpp~ 2015-12-19 07:44:03.000000000 +0100
++++ OpenImageIO-oiio-4070df8/src/libOpenImageIO/formatspec.cpp 2015-12-26 10:06:44.635447040 +0100
+@@ -42,7 +42,7 @@
+ #include "OpenImageIO/fmath.h"
+ #include "OpenImageIO/imageio.h"
+ #include "imageio_pvt.h"
+-#include "OpenImageIO/pugixml.hpp"
++#include <pugixml.hpp>
+
+
+ OIIO_NAMESPACE_BEGIN
+--- OpenImageIO-oiio-4070df8/src/libOpenImageIO/xmp.cpp~ 2015-12-19 07:44:03.000000000 +0100
++++ OpenImageIO-oiio-4070df8/src/libOpenImageIO/xmp.cpp 2015-12-26 10:07:06.745648169 +0100
+@@ -37,7 +37,7 @@
+ #include "OpenImageIO/strutil.h"
+ #include "OpenImageIO/fmath.h"
+ #include "OpenImageIO/imageio.h"
+-#include "OpenImageIO/pugixml.hpp"
++#include <pugixml.hpp>
+
+ #define DEBUG_XMP_READ 0
+ #define DEBUG_XMP_WRITE 0