[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [47475] trunk/lib/linux64/oiio: Update OIIO library for linux 64bit

Sergey Sharybin sergey.vfx at gmail.com
Tue Jun 5 21:17:15 CEST 2012


Revision: 47475
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=47475
Author:   nazgul
Date:     2012-06-05 19:17:14 +0000 (Tue, 05 Jun 2012)
Log Message:
-----------
Update OIIO library for linux 64bit

Modified Paths:
--------------
    trunk/lib/linux64/oiio/CHANGES
    trunk/lib/linux64/oiio/ReadMe.txt
    trunk/lib/linux64/oiio/include/OpenImageIO/dassert.h
    trunk/lib/linux64/oiio/include/OpenImageIO/filesystem.h
    trunk/lib/linux64/oiio/include/OpenImageIO/fmath.h
    trunk/lib/linux64/oiio/include/OpenImageIO/strutil.h
    trunk/lib/linux64/oiio/include/OpenImageIO/typedesc.h
    trunk/lib/linux64/oiio/include/OpenImageIO/ustring.h
    trunk/lib/linux64/oiio/include/OpenImageIO/version.h
    trunk/lib/linux64/oiio/lib/libOpenImageIO.a

Modified: trunk/lib/linux64/oiio/CHANGES
===================================================================
--- trunk/lib/linux64/oiio/CHANGES	2012-06-05 19:16:25 UTC (rev 47474)
+++ trunk/lib/linux64/oiio/CHANGES	2012-06-05 19:17:14 UTC (rev 47475)
@@ -1,6 +1,80 @@
 Changes:
 
+Release 1.0.5 (3 Jun 2012)
+--------------------------
+* Various fixes for FreeBSD/kFreeBSD systems.
+* Various fixes to compile with Clang 3.1 without warnings.
+* Fixed some DPX and Cineon bugs related to channel names.
+* Fixed some mangled text in the PDF documentation.
+* Developer goodie: TypeDesc::equivalent() tests two TypeDesc's for
+  equality, but allows 'triples' with differing vector semantics to match.
 
+
+Release 1.0.4 (2 May 2012)
+--------------------------
+* DPX fixes for 12 bit DPX and packing methods.
+* Cineon fixes: remove buggy 32 and 64 bit output, which wasn't needed;
+  fix for 10 bit -> 16 bit promotion.
+* bmp fix: wasn't setting oiio:BitsPerSample correctly.
+* oiiotool fixes: improved argument help and add man page generation;
+  print data format info correctly for non-byte bit depths; better
+  inference of output tile size and data format from the inputs (when
+  not explicitly requested); --resize n% was broken; print data format
+  info correctly for non-byte bit depths.
+* iinfo fixes: make --stats print correctly; print data format info 
+  correctly for non-byte bit depths.
+* Fix roundoff error when converting from float buffers to int image files.
+* More precise filter normalization in ImageBufAlgo::resize (and therefore
+  oiiotool --resize).
+
+
+Release 1.0.3 (16 Apr 2012)
+---------------------------
+* Fix reading bugs in DPX and Cineon.
+* iconvert handles the int32 and uint32 cases.
+* Bug fix in to_native_rectangle, which could lead to errors in certain
+  data format conversions.
+* Various Windows build fixes, including fixes for Windows 7.
+* Compilation fixes on FreeBSD.
+
+
+Release 1.0.2 (19 Mar 2012)
+----------------------------
+* Fixed TARGA reader bug where for 16-bpp, 4-channel images, we weren't
+  reading the alpha properly.
+* Fix ill-formed default output names for maketx (and in the process,
+  add Filesystem::replace_extension utility).
+* Threading performance improvement in the texture system as a result of
+  wrapping various internal "iequals" calls to pass a static locale
+  rather than relying on their default behavior that would use a mutex
+  underneath to access a global locale.
+
+
+Release 1.0.1 (13 Mar 2012, compared to 1.0.0)
+----------------------------------------------
+Fixes, minor enhancements, and performance improvements:
+ * Improvements in anisotropic texture filtering quality.
+ * oiiotool --hash prints the SHA-1 hash of each input image.
+ * oiiotool: properly print error message and exit when an input file
+   cannot be opened.
+ * Changed the default behavior of idiff and "oiiotool --diff" to print
+   the pixel difference report only for failures (not for successful
+   matches), unless in verbose (-v) mode.
+Developer goodies:
+ * dassert.h: New ASSERTMSG and DASSERTMSG allow even more flexible
+   assertion messages with full printf argument generality.
+ * Windows compilation fixes.
+ * Major testsuite overhaul: All tests are copied and run in the
+   build/ARCH/testsuite directory, no longer leaving any clutter in the
+   "source" testsuite area.  The testing scripts have been cleaned up
+   and greatly simplified.  An individual test can be run using "make
+   test TEST=name" (also works with regular expressions).  The usual
+   "make test" will exclude tests that are expected to be broken (such
+   as tests for portions of the system that were not built because their
+   required libraries were not found), but "make testall" will run all
+   tests including nominally "broken" ones.
+
+
 Release 1.0 (25 Feb 2012, compared to 0.10.5)
 ---------------------------------------------
 

Modified: trunk/lib/linux64/oiio/ReadMe.txt
===================================================================
--- trunk/lib/linux64/oiio/ReadMe.txt	2012-06-05 19:16:25 UTC (rev 47474)
+++ trunk/lib/linux64/oiio/ReadMe.txt	2012-06-05 19:17:14 UTC (rev 47475)
@@ -1,2 +1,2 @@
-This folder contains static libraries and header files for OpenImageIO 1.0 needed for Cycles.
+This folder contains static libraries and header files for OpenImageIO 1.0.5 needed for Cycles.
 Compiled in release builder environment with libc version 2.7.
\ No newline at end of file

Modified: trunk/lib/linux64/oiio/include/OpenImageIO/dassert.h
===================================================================
--- trunk/lib/linux64/oiio/include/OpenImageIO/dassert.h	2012-06-05 19:16:25 UTC (rev 47474)
+++ trunk/lib/linux64/oiio/include/OpenImageIO/dassert.h	2012-06-05 19:17:14 UTC (rev 47475)
@@ -70,6 +70,7 @@
 /// ASSERT(condition) checks if the condition is met, and if not, prints
 /// an error message indicating the module and line where the error
 /// occurred and then aborts.
+
 #ifndef ASSERT
 # define ASSERT(x)                                              \
     ((x) ? ((void)0)                                            \
@@ -77,7 +78,16 @@
                      __FILE__, __LINE__, #x), abort()))
 #endif
 
+/// ASSERTMSG(condition,msg,...) is like ASSERT, but lets you add
+/// formatted output (a la printf) to the failure message.
+#ifndef ASSERTMSG
+# define ASSERTMSG(x,msg,...)                                       \
+    ((x) ? ((void)0)                                                \
+         : (fprintf (stderr, "%s:%u: Failed assertion '" #x "': " msg "\n",  \
+                     __FILE__, __LINE__, __VA_ARGS__), abort()))
+#endif
 
+
 /// DASSERT(condition) is just like ASSERT, except that it only is
 /// functional in DEBUG mode, but does nothing when in a non-DEBUG
 /// (optimized, shipping) build.
@@ -87,5 +97,14 @@
 # define DASSERT(x) ((void)0) /* DASSERT does nothing when not debugging */
 #endif
 
+/// DASSERTMSG(condition,msg,...) is just like ASSERTMSG, except that it
+/// only is functional in DEBUG mode, but does nothing when in a
+/// non-DEBUG (optimized, shipping) build.
+#ifdef DEBUG
+# define DASSERTMSG ASSERTMSG
+#else
+# define DASSERTMSG(...) ((void)0) /* does nothing when not debugging */
+#endif
 
+
 #endif // OPENIMAGEIO_DASSERT_H

Modified: trunk/lib/linux64/oiio/include/OpenImageIO/filesystem.h
===================================================================
--- trunk/lib/linux64/oiio/include/OpenImageIO/filesystem.h	2012-06-05 19:16:25 UTC (rev 47474)
+++ trunk/lib/linux64/oiio/include/OpenImageIO/filesystem.h	2012-06-05 19:17:14 UTC (rev 47475)
@@ -72,6 +72,11 @@
 /// filename or filepath.  DEPRECATED.
 DLLPUBLIC std::string file_extension (const std::string &filepath);
 
+/// Replace the file extension of a filename or filepath. Does not
+/// alter filepath, just returns a new string
+DLLPUBLIC std::string replace_extension (const std::string &filepath, 
+                                         const std::string &new_extension);
+
 /// Turn a searchpath (multiple directory paths separated by ':' or ';')
 /// into a vector<string> containing each individual directory.  If
 /// validonly is true, only existing and readable directories will end

Modified: trunk/lib/linux64/oiio/include/OpenImageIO/fmath.h
===================================================================
--- trunk/lib/linux64/oiio/include/OpenImageIO/fmath.h	2012-06-05 19:16:25 UTC (rev 47474)
+++ trunk/lib/linux64/oiio/include/OpenImageIO/fmath.h	2012-06-05 19:17:14 UTC (rev 47475)
@@ -967,6 +967,18 @@
 
 
 
+// Functions missing from FreeBSD
+#if (defined(__FreeBSD__) && (__FreeBSD_version < 803000))
+
+inline float
+log2f (float val) {
+    return logf (val)/static_cast<float>(M_LN2);
+}
+
+#endif
+
+
+
 /// Simple conversion of a (presumably non-negative) float into a
 /// rational.  This does not attempt to find the simplest fraction
 /// that approximates the float, for example 52.83 will simply

Modified: trunk/lib/linux64/oiio/include/OpenImageIO/strutil.h
===================================================================
--- trunk/lib/linux64/oiio/include/OpenImageIO/strutil.h	2012-06-05 19:16:25 UTC (rev 47474)
+++ trunk/lib/linux64/oiio/include/OpenImageIO/strutil.h	2012-06-05 19:17:14 UTC (rev 47475)
@@ -119,12 +119,12 @@
 /// and collapse them into the 'real' characters.
 std::string DLLPUBLIC unescape_chars (const std::string &escaped);
 
-// Word-wrap string 'src' to no more than columns width, splitting at
-// space characters.  It assumes that 'prefix' characters are already
-// printed, and furthermore, if it should need to wrap, it prefixes that
-// number of spaces in front of subsequent lines.  By illustration, 
-// wordwrap("0 1 2 3 4 5 6 7 8", 4, 10) should return:
-// "0 1 2\n    3 4 5\n    6 7 8"
+/// Word-wrap string 'src' to no more than columns width, splitting at
+/// space characters.  It assumes that 'prefix' characters are already
+/// printed, and furthermore, if it should need to wrap, it prefixes that
+/// number of spaces in front of subsequent lines.  By illustration, 
+/// wordwrap("0 1 2 3 4 5 6 7 8", 4, 10) should return:
+/// "0 1 2\n    3 4 5\n    6 7 8"
 std::string DLLPUBLIC wordwrap (std::string src, int columns=80, int prefix=0);
 
 /// Hash a string without pre-known length.  We use the Jenkins
@@ -149,6 +149,36 @@
 
 
 
+/// Case-insensitive comparison of strings.  For speed, this always uses
+/// a static locale that doesn't require a mutex.
+bool DLLPUBLIC iequals (const std::string &a, const std::string &b);
+bool DLLPUBLIC iequals (const char *a, const char *b);
+
+/// Does 'a' start with the string 'b', with a case-insensitive comparison?
+/// For speed, this always uses a static locale that doesn't require a mutex.
+bool DLLPUBLIC istarts_with (const std::string &a, const std::string &b);
+bool DLLPUBLIC istarts_with (const char *a, const char *b);
+
+/// Does 'a' end with the string 'b', with a case-insensitive comparison?
+/// For speed, this always uses a static locale that doesn't require a mutex.
+bool DLLPUBLIC iends_with (const std::string &a, const std::string &b);
+bool DLLPUBLIC iends_with (const char *a, const char *b);
+
+/// Does 'a' end with the string 'b', with a case-insensitive comparison?
+/// For speed, this always uses a static locale that doesn't require a mutex.
+bool DLLPUBLIC iends_with (const std::string &a, const std::string &b);

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list