7008450 CVE-2009-1720 CVE-2009-1721 upgrade openexr
authorStefan Teleman <stefan.teleman@oracle.com>
Wed, 23 Mar 2011 14:35:32 -0700
changeset 147 5af6875cbf70
parent 146 8e22ba234817
child 148 33ca3897ae25
7008450 CVE-2009-1720 CVE-2009-1721 upgrade openexr 7027802 Ilmbase and OpenEXR should move to Userland
components/ilmbase/Makefile
components/ilmbase/SUNWilmbase.p5m
components/ilmbase/Solaris/libilmbase.3lib
components/ilmbase/ilmbase.license
components/ilmbase/ilmbase.p5m
components/ilmbase/patches/000-ltmain.patch
components/ilmbase/patches/001-configure.patch
components/openexr/Makefile
components/openexr/SUNWopenexr.p5m
components/openexr/Solaris/exrenvmap.1
components/openexr/Solaris/exrheader.1
components/openexr/Solaris/exrmakepreview.1
components/openexr/Solaris/exrmaketiled.1
components/openexr/Solaris/exrstdattr.1
components/openexr/Solaris/libopenexr.3lib
components/openexr/openexr.license
components/openexr/openexr.p5m
components/openexr/patches/000-ltmain.patch
components/openexr/patches/001-makePreview.patch
components/openexr/patches/002-configure.patch
components/openexr/patches/003-openexr-1.6.1-CVE-2009-1720.patch
components/openexr/patches/004-openexr-1.6.1-CVE-2009-1721.patch
components/openexr/patches/005-OpenEXR.pc.in.patch
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/ilmbase/Makefile	Wed Mar 23 14:35:32 2011 -0700
@@ -0,0 +1,85 @@
+#
+# CDDL HEADER START
+#
+# The contents of this file are subject to the terms of the
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
+#
+# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+# or http://www.opensolaris.org/os/licensing.
+# See the License for the specific language governing permissions
+# and limitations under the License.
+#
+# When distributing Covered Code, include this CDDL HEADER in each
+# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+# If applicable, add the following below this CDDL HEADER, with the
+# fields enclosed by brackets "[]" replaced with your own identifying
+# information: Portions Copyright [yyyy] [name of copyright owner]
+#
+# CDDL HEADER END
+#
+# Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+#
+include ../../make-rules/shared-macros.mk
+
+COMPONENT_NAME=         ilmbase
+COMPONENT_VERSION=      1.0.1
+COMPONENT_SRC=          $(COMPONENT_NAME)-$(COMPONENT_VERSION)
+COMPONENT_PROJECT_URL=  http://www.openexr.com/
+COMPONENT_ARCHIVE=      $(COMPONENT_SRC).tar.gz
+COMPONENT_ARCHIVE_HASH= sha1:143adc547be83c6df75831ae957eef4b2706c9c0
+COMPONENT_ARCHIVE_URL=  http://download.savannah.nongnu.org/releases/openexr/$(COMPONENT_ARCHIVE)
+
+include ../../make-rules/prep.mk
+include ../../make-rules/configure.mk
+include ../../make-rules/ips.mk
+
+PKG_CONFIG_PATH_32 = /usr/lib/pkgconfig
+PKG_CONFIG_PATH_64 = /usr/lib/$(MACH64)/pkgconfig
+
+PATCH_LEVEL = 0
+
+# Prevent RPATH/RUNPATH, even in ./configure. If conftest
+# can't find something in the default search RUNPATH, we'd
+# like to know why.
+CFLAGS += -Xc -xnorunpath
+CFLAGS += $(studio_C99_ENABLE) $(CPP_POSIX) $(CPP_LARGEFILES)
+CPPFLAGS += $(CPP_POSIX) $(CPP_LARGEFILES)
+CXXFLAGS += $(CC_BITS) -mt -library=Crun -library=Cstd -compat=5
+CXXFLAGS += -D_XPG5 -D_XOPEN_SOURCE=500 -D__EXTENSIONS__=1
+CXXFLAGS += $(CPP_POSIX) $(CPP_LARGEFILES)
+LDFLAGS += -lpthread -lc -lm
+LD_OPTIONS += -z ignore
+
+CONFIGURE_ENV += CXX="$(CCC)"
+CONFIGURE_ENV += CFLAGS="$(CFLAGS)"
+CONFIGURE_ENV += CXXFLAGS="$(CXXFLAGS)"
+CONFIGURE_ENV += CPPFLAGS="$(CPPFLAGS)"
+CONFIGURE_ENV += CXXLINK="$(CCC) $(CXXFLAGS) $(LDFLAGS)"
+CONFIGURE_ENV += CXXCPP="$(CCC) $(CPPFLAGS) $(CXXFLAGS) -E"
+CONFIGURE_ENV += LDFLAGS="$(LDFLAGS)"
+CONFIGURE_ENV += PKG_CONFIG_PATH="$(PKG_CONFIG_PATH_$(BITS))"
+
+CONFIGURE_OPTIONS  +=           --disable-static
+CONFIGURE_OPTIONS  +=           --enable-threading
+CONFIGURE_OPTIONS  +=           --enable-posix-sem
+CONFIGURE_OPTIONS  +=           --with-pic
+
+PKG_PROTO_DIRS +=	$(COMPONENT_SRC)
+
+build: $(BUILD_32_and_64)
+
+include ../../make-rules/shared-targets.mk
+
+install: $(INSTALL_32_and_64)
+	$(MKDIR) $(PROTOUSRSHAREMAN3DIR) ; \
+	$(INSTALL) -m 0644 Solaris/libilmbase.3lib $(PROTOUSRSHAREMAN3DIR)/
+
+test: $(BUILD_32_and_64)
+	@cd $(BUILD_DIR_32); $(GMAKE) check
+	@cd $(BUILD_DIR_64); $(GMAKE) check
+
+BUILD_PKG_DEPENDENCIES = $(BUILD_TOOLS)
+
+include ../../make-rules/depend.mk
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/ilmbase/SUNWilmbase.p5m	Wed Mar 23 14:35:32 2011 -0700
@@ -0,0 +1,27 @@
+#
+# CDDL HEADER START
+#
+# The contents of this file are subject to the terms of the
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
+#
+# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+# or http://www.opensolaris.org/os/licensing.
+# See the License for the specific language governing permissions
+# and limitations under the License.
+#
+# When distributing Covered Code, include this CDDL HEADER in each
+# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+# If applicable, add the following below this CDDL HEADER, with the
+# fields enclosed by brackets "[]" replaced with your own identifying
+# information: Portions Copyright [yyyy] [name of copyright owner]
+#
+# CDDL HEADER END
+#
+# Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+#
+
+set name=pkg.fmri value=pkg:/[email protected],5.11-0.133
+set name=pkg.renamed value=true
+set name=org.opensolaris.consolidation value=$(CONSOLIDATION)
+depend fmri=library/[email protected] type=require
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/ilmbase/Solaris/libilmbase.3lib	Wed Mar 23 14:35:32 2011 -0700
@@ -0,0 +1,113 @@
+'\" t
+.\"
+.\" CDDL HEADER START
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\" CDDL HEADER END
+.\"
+.\" Copyright (c) 2010, 2011, Oracle and/or its affiliates. All rights reserved.
+.\"
+.\"
+.TH libilmbase 3LIB "Mar 21 2011" "SunOS 5.11" "Interface Libraries" 
+.SH NAME
+libilmbase \- user-level ILM base libraries
+.SH SYNOPSIS
+.LP
+.nf
+cc [ \fIflag\fR\&.\&.\&.\ ] \fIfile\fR\&.\&.\&. -\fBI/usr/include/OpenEXR -\fBlImath -\fBlIex 
+-\fBlHalf -\fBlIlmThread -\fBlz \fR [ \fIlibrary\fR\&.\&.\&. ]
+.fi
+.SH DESCRIPTION
+.sp
+.LP
+The Industrial Light & Magic (ILM) base package consists
+of the following four libraries:
+
+Half is a class that encapsulates our 16-bit floating-point format.
+
+IlmThread is a thread abstraction library for use with OpenEXR
+and other software packages.  It currently supports pthreads and
+Windows threads.
+
+Imath implements 2D and 3D vectors, 3x3 and 4x4 matrices, quaternions
+and other useful 2D and 3D math functions.
+
+Iex is an exception-handling library.
+
+See /usr/share/doc/openexr for a full description and for some code that demonstrates how to use them.  The doc directory contains some high-level documentation and history about the OpenEXR image file format.
+.SH FILES
+.sp
+.ne 2
+.mk
+\fB\fB/usr/lib/libIex\&.so\fR\fR
+.in +40n
+.rt
+shared object
+.in -40n
+.sp
+.ne 2
+.mk
+\fB\fB/usr/lib/libHalf\&.so\fR\fR
+.in +40n
+.rt
+shared object
+.in -40n
+.sp
+.ne 2
+.mk
+\fB\fB/usr/lib/libIlmThread\&.so\fR\fR
+.in +40n
+.rt
+shared object
+.in -40n
+.sp
+.ne 2
+.mk
+\fB\fB/usr/lib/libIImath\&.so\fR\fR
+.in +40n
+.rt
+shared object
+.in -40n
+.SH ATTRIBUTES
+See
+.BR attributes (5)
+for descriptions of the following attributes:
+.sp
+.TS
+box;
+cbp-1 | cbp-1
+l | l .
+ATTRIBUTE TYPE	ATTRIBUTE VALUE
+=
+Availability	library/ilmbase
+=
+Interface Stability	Uncommitted
+.TE 
+.PP
+.SH "SEE ALSO"
+.PP
+\fBintro\fR(3), \fBlibz\fR(3LIB), \fBlibopenexr\fR(3LIB)
+.PP
+\fIhttp://www\&.openexr\&.com\fR
+.SH LICENSE
+.sp
+.LP
+The ilmbase source code distribution is free software.  See the file
+named COPYING (included in this distribution) for details.
+.LP
+.SH NOTES
+Source for ilmbase is available on http://opensolaris.org.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/ilmbase/ilmbase.license	Wed Mar 23 14:35:32 2011 -0700
@@ -0,0 +1,35 @@
+Copyright (c) 2006, Industrial Light & Magic, a division of Lucasfilm
+Entertainment Company Ltd.  Portions contributed and copyright held by
+others as indicated.  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
+      any other contributors to this software 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, SPECIAL,
+EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/ilmbase/ilmbase.p5m	Wed Mar 23 14:35:32 2011 -0700
@@ -0,0 +1,119 @@
+#
+# CDDL HEADER START
+#
+# The contents of this file are subject to the terms of the
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
+#
+# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+# or http://www.opensolaris.org/os/licensing.
+# See the License for the specific language governing permissions
+# and limitations under the License.
+#
+# When distributing Covered Code, include this CDDL HEADER in each
+# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+# If applicable, add the following below this CDDL HEADER, with the
+# fields enclosed by brackets "[]" replaced with your own identifying
+# information: Portions Copyright [yyyy] [name of copyright owner]
+#
+# CDDL HEADER END
+#
+# Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+#
+set name=pkg.fmri value=pkg:/library/ilmbase@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
+set name=pkg.summary value="Ilmbase libraries used to read and write OpenEXR images"
+set name=pkg.description value="Base libraries to support the OpenEXR IlmImf library"
+set name=info.classification value="org.opensolaris.category.2008:System/Libraries"
+set name=info.upstream_url value="http://www.openexr.com/"
+set name=info.source_url value=$(COMPONENT_ARCHIVE_URL)
+set name=org.opensolaris.consolidation value=$(CONSOLIDATION)
+#
+dir path=usr
+dir path=usr/include
+dir path=usr/include/OpenEXR
+dir path=usr/lib
+dir path=usr/lib/pkgconfig
+dir path=usr/lib/$(MACH64)
+dir path=usr/lib/$(MACH64)/pkgconfig
+dir path=usr/share
+dir path=usr/share/man
+dir path=usr/share/man/man3
+#
+file path=usr/include/OpenEXR/half.h
+file path=usr/include/OpenEXR/halfFunction.h
+file path=usr/include/OpenEXR/halfLimits.h
+file path=usr/include/OpenEXR/IexBaseExc.h
+file path=usr/include/OpenEXR/IexMathExc.h
+file path=usr/include/OpenEXR/IexThrowErrnoExc.h
+file path=usr/include/OpenEXR/IexErrnoExc.h
+file path=usr/include/OpenEXR/IexMacros.h
+file path=usr/include/OpenEXR/Iex.h
+file path=usr/include/OpenEXR/ImathColorAlgo.h
+file path=usr/include/OpenEXR/ImathMatrixAlgo.h
+file path=usr/include/OpenEXR/ImathVec.h
+file path=usr/include/OpenEXR/ImathShear.h
+file path=usr/include/OpenEXR/ImathFun.h
+file path=usr/include/OpenEXR/ImathBox.h
+file path=usr/include/OpenEXR/ImathBoxAlgo.h
+file path=usr/include/OpenEXR/ImathEuler.h
+file path=usr/include/OpenEXR/ImathExc.h
+file path=usr/include/OpenEXR/ImathLimits.h
+file path=usr/include/OpenEXR/ImathLine.h
+file path=usr/include/OpenEXR/ImathLineAlgo.h
+file path=usr/include/OpenEXR/ImathMatrix.h
+file path=usr/include/OpenEXR/ImathPlane.h
+file path=usr/include/OpenEXR/ImathSphere.h
+file path=usr/include/OpenEXR/ImathVecAlgo.h
+file path=usr/include/OpenEXR/ImathQuat.h
+file path=usr/include/OpenEXR/ImathFrustum.h
+file path=usr/include/OpenEXR/ImathMath.h
+file path=usr/include/OpenEXR/ImathGL.h
+file path=usr/include/OpenEXR/ImathColor.h
+file path=usr/include/OpenEXR/ImathRandom.h
+file path=usr/include/OpenEXR/ImathRoots.h
+file path=usr/include/OpenEXR/ImathHalfLimits.h
+file path=usr/include/OpenEXR/ImathInterval.h
+file path=usr/include/OpenEXR/ImathGLU.h
+file path=usr/include/OpenEXR/ImathFrame.h
+file path=usr/include/OpenEXR/ImathPlatform.h
+file path=usr/include/OpenEXR/ImathInt64.h
+file path=usr/include/OpenEXR/IlmThreadPool.h
+file path=usr/include/OpenEXR/IlmThread.h
+file path=usr/include/OpenEXR/IlmThreadSemaphore.h
+file path=usr/include/OpenEXR/IlmThreadMutex.h
+file path=usr/include/OpenEXR/IlmBaseConfig.h
+file path=usr/lib/libHalf.so.6.0.0
+file path=usr/lib/libIex.so.6.0.0
+file path=usr/lib/libImath.so.6.0.0
+file path=usr/lib/libIlmThread.so.6.0.0
+file path=usr/lib/pkgconfig/IlmBase.pc
+file path=usr/lib/$(MACH64)/libHalf.so.6.0.0
+file path=usr/lib/$(MACH64)/libIex.so.6.0.0
+file path=usr/lib/$(MACH64)/libImath.so.6.0.0
+file path=usr/lib/$(MACH64)/libIlmThread.so.6.0.0
+file path=usr/lib/$(MACH64)/pkgconfig/IlmBase.pc
+file path=usr/share/man/man3/libilmbase.3lib
+#
+link path=usr/lib/libHalf.so.6 target=libHalf.so.6.0.0
+link path=usr/lib/libHalf.so target=libHalf.so.6.0.0
+link path=usr/lib/libIex.so.6 target=libIex.so.6.0.0
+link path=usr/lib/libIex.so target=libIex.so.6.0.0
+link path=usr/lib/libImath.so.6 target=libImath.so.6.0.0
+link path=usr/lib/libImath.so target=libImath.so.6.0.0
+link path=usr/lib/libIlmThread.so.6 target=libIlmThread.so.6.0.0
+link path=usr/lib/libIlmThread.so target=libIlmThread.so.6.0.0
+link path=usr/lib/$(MACH64)/libHalf.so.6 target=libHalf.so.6.0.0
+link path=usr/lib/$(MACH64)/libHalf.so target=libHalf.so.6.0.0
+link path=usr/lib/$(MACH64)/libIex.so.6 target=libIex.so.6.0.0
+link path=usr/lib/$(MACH64)/libIex.so target=libIex.so.6.0.0
+link path=usr/lib/$(MACH64)/libImath.so.6 target=libImath.so.6.0.0
+link path=usr/lib/$(MACH64)/libImath.so target=libImath.so.6.0.0
+link path=usr/lib/$(MACH64)/libIlmThread.so.6 target=libIlmThread.so.6.0.0
+link path=usr/lib/$(MACH64)/libIlmThread.so target=libIlmThread.so.6.0.0
+#
+license ilmbase.license license="BSD"
+#
+legacy pkg=SUNWilmbase \
+    desc="Ilmbase libraries to read and write OpenEXR images" \
+    name="Libraries to support high dynamic-range image (HDR) format"
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/ilmbase/patches/000-ltmain.patch	Wed Mar 23 14:35:32 2011 -0700
@@ -0,0 +1,42 @@
+*** ilmbase-1.0.1/ltmain.sh.org	Thu Jun 26 19:20:21 2008
+--- ltmain.sh	Thu Jun 26 19:18:49 2008
+***************
+*** 1553,1561 ****
+  	esac
+          compile_command="$compile_command $arg"
+          finalize_command="$finalize_command $arg"
+!         if test "$with_gcc" = "yes" ; then
+            compiler_flags="$compiler_flags $arg"
+!         fi
+          continue
+          ;;
+  
+--- 1553,1562 ----
+  	esac
+          compile_command="$compile_command $arg"
+          finalize_command="$finalize_command $arg"
+!         # comment out this to support 64bit for CC
+!         #if test "$with_gcc" = "yes" ; then
+            compiler_flags="$compiler_flags $arg"
+!         #fi
+          continue
+          ;;
+  
+***************
+*** 4015,4021 ****
+  	save_ifs="$IFS"; IFS='~'
+  	for cmd in $cmds; do
+  	  IFS="$save_ifs"
+! 	  eval cmd=\"$cmd\"
+  	  $show "$cmd"
+  	  $run eval "$cmd" || exit $?
+  	done
+--- 4016,4023 ----
+  	save_ifs="$IFS"; IFS='~'
+  	for cmd in $cmds; do
+  	  IFS="$save_ifs"
+!           # Append the command to remove runpath for CC.
+! 	  eval cmd=\"$cmd -norunpath\"
+  	  $show "$cmd"
+  	  $run eval "$cmd" || exit $?
+  	done
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/ilmbase/patches/001-configure.patch	Wed Mar 23 14:35:32 2011 -0700
@@ -0,0 +1,150 @@
+--- configure	2007-10-09 14:28:30.000000000 -0700
++++ configure	2011-03-15 10:44:19.669826790 -0700
+@@ -2474,13 +2474,13 @@
+   if test "$GXX" = yes; then
+     CXXFLAGS="-g -O2"
+   else
+-    CXXFLAGS="-g"
++    CXXFLAGS="${CXXFLAGS}"
+   fi
+ else
+   if test "$GXX" = yes; then
+     CXXFLAGS="-O2"
+   else
+-    CXXFLAGS=
++    CXXFLAGS="${CXXFLAGS}"
+   fi
+ fi
+ for ac_declaration in \
+@@ -3304,13 +3304,13 @@
+   if test "$GCC" = yes; then
+     CFLAGS="-g -O2"
+   else
+-    CFLAGS="-g"
++    CFLAGS="${CFLAGS}"
+   fi
+ else
+   if test "$GCC" = yes; then
+     CFLAGS="-O2"
+   else
+-    CFLAGS=
++    CFLAGS="${CFLAGS}"
+   fi
+ fi
+ echo "$as_me:$LINENO: checking for $CC option to accept ANSI C" >&5
+@@ -4416,7 +4416,7 @@
+   echo $ECHO_N "(cached) $ECHO_C" >&6
+ else
+       # Double quotes because CPP needs to be expanded
+-    for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
++    for CPP in "$CPP" "$CC $CPPFLAGS $CFLAGS -E"
+     do
+       ac_preproc_ok=false
+ for ac_c_preproc_warn_flag in '' yes
+@@ -5040,7 +5040,7 @@
+   echo $ECHO_N "(cached) $ECHO_C" >&6
+ else
+       # Double quotes because CXXCPP needs to be expanded
+-    for CXXCPP in "$CXX -E" "/lib/cpp"
++    for CXXCPP in "$CXXCPP" "$CXX $CPPFLAGS $CXXFLAGS -E"
+     do
+       ac_preproc_ok=false
+ for ac_cxx_preproc_warn_flag in '' yes
+@@ -7533,17 +7533,17 @@
+       ;;
+ 
+     solaris*)
+-      no_undefined_flag=' -z text'
++      no_undefined_flag=' -z text -z defs -z ignore'
+       if test "$GCC" = yes; then
+ 	archive_cmds='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+ 	archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
+ 	  $CC -shared ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$rm $lib.exp'
+       else
+-	archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
++	archive_cmds='$CC $CFLAGS $LDFLAGS -G ${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ 	archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
+-  	$LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
++  	$CC $CFLAGS $LDFLAGS -G ${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
+       fi
+-      hardcode_libdir_flag_spec='-R$libdir'
++      hardcode_libdir_flag_spec=''
+       hardcode_shlibpath_var=no
+       case $host_os in
+       solaris2.[0-5] | solaris2.[0-5].*) ;;
+@@ -10747,11 +10747,11 @@
+       CC)
+ 	# Sun C++ 4.2, 5.x and Centerline C++
+ 	no_undefined_flag_CXX=' -zdefs'
+-	archive_cmds_CXX='$CC -G${allow_undefined_flag} -nolib -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
++	archive_cmds_CXX='$CC $CFLAGS $LDFLAGS -G ${allow_undefined_flag} -nolib -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+ 	archive_expsym_cmds_CXX='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
+-	$CC -G${allow_undefined_flag} -nolib ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp'
++	$CC $CFLAGS $LDFLAGS -G ${allow_undefined_flag} -nolib ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp'
+ 
+-	hardcode_libdir_flag_spec_CXX='-R$libdir'
++	hardcode_libdir_flag_spec_CXX=''
+ 	hardcode_shlibpath_var_CXX=no
+ 	case $host_os in
+ 	  solaris2.[0-5] | solaris2.[0-5].*) ;;
+@@ -10773,13 +10773,13 @@
+ 	# explicitly linking system object files so we need to strip them
+ 	# from the output so that they don't get included in the library
+ 	# dependencies.
+-	output_verbose_link_cmd='templist=`$CC -G $CFLAGS -v conftest.$objext 2>&1 | grep "\-[LR]"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
++	output_verbose_link_cmd='templist=`$CC $CFLAGS $LDFLAGS -G -v conftest.$objext 2>&1 | grep "\-[LR]"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
+ 
+ 	# Archives containing C++ object files must be created using
+ 	# "CC -xar", where "CC" is the Sun C++ compiler.  This is
+ 	# necessary to make sure instantiated templates are included
+ 	# in the archive.
+-	old_archive_cmds_CXX='$CC -xar -o $oldlib $oldobjs'
++	old_archive_cmds_CXX='$CC $CFLAGS -xar -o $oldlib $oldobjs'
+ 	;;
+       gcx)
+ 	# Green Hills C++ Compiler
+@@ -16858,7 +16858,7 @@
+       ;;
+ 
+     solaris*)
+-      no_undefined_flag_GCJ=' -z text'
++      no_undefined_flag_GCJ=' -z text-z defs -z ignore'
+       if test "$GCC" = yes; then
+ 	archive_cmds_GCJ='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+ 	archive_expsym_cmds_GCJ='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
+@@ -19531,7 +19531,7 @@
+ # which indicates that we try without any flags at all, and "pthread-config"
+ # which is a program returning the flags for the Pth emulation library.
+ 
+-acx_pthread_flags="pthreads none -Kthread -kthread lthread -pthread -pthreads -mthreads pthread --thread-safe -mt pthread-config"
++acx_pthread_flags="-mt"
+ 
+ # The ordering *is* (sometimes) important.  Some notes on the
+ # individual items follow:
+@@ -19847,7 +19847,7 @@
+ 	LIBS="$PTHREAD_LIBS $LIBS"
+ 	CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
+ 	CXXFLAGS="$CXXFLAGS $PTHREAD_CFLAGS"
+-	CC="$PTHREAD_CC"
++	CC="$CC"
+ 
+ 
+ # Check whether --enable-posix-sem or --disable-posix-sem was given.
+@@ -20974,7 +20974,7 @@
+ echo "$as_me:$LINENO: checking for gcc optimization flags" >&5
+ echo $ECHO_N "checking for gcc optimization flags... $ECHO_C" >&6
+ old_cflags=$CFLAGS
+-CFLAGS="$CFLAGS -pipe"
++CFLAGS="$CFLAGS"
+ cat >conftest.$ac_ext <<_ACEOF
+ /* confdefs.h.  */
+ _ACEOF
+@@ -21012,7 +21012,7 @@
+   ac_status=$?
+   echo "$as_me:$LINENO: \$? = $ac_status" >&5
+   (exit $ac_status); }; }; then
+-   EXTRA_OPT_CFLAGS="-pipe"
++   EXTRA_OPT_CFLAGS=""
+ else
+   echo "$as_me: failed program was:" >&5
+ sed 's/^/| /' conftest.$ac_ext >&5
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/openexr/Makefile	Wed Mar 23 14:35:32 2011 -0700
@@ -0,0 +1,92 @@
+#
+# CDDL HEADER START
+#
+# The contents of this file are subject to the terms of the
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
+#
+# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+# or http://www.opensolaris.org/os/licensing.
+# See the License for the specific language governing permissions
+# and limitations under the License.
+#
+# When distributing Covered Code, include this CDDL HEADER in each
+# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+# If applicable, add the following below this CDDL HEADER, with the
+# fields enclosed by brackets "[]" replaced with your own identifying
+# information: Portions Copyright [yyyy] [name of copyright owner]
+#
+# CDDL HEADER END
+#
+# Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+#
+include ../../make-rules/shared-macros.mk
+
+COMPONENT_NAME=         openexr
+COMPONENT_VERSION=      1.6.1
+COMPONENT_SRC=          $(COMPONENT_NAME)-$(COMPONENT_VERSION)
+COMPONENT_PROJECT_URL=  http://www.openexr.com/
+COMPONENT_ARCHIVE=      $(COMPONENT_SRC).tar.gz
+COMPONENT_ARCHIVE_HASH= sha1:b3650e6542f0e09daadb2d467425530bc8eec333
+COMPONENT_ARCHIVE_URL=  http://download.savannah.nongnu.org/releases/openexr/$(COMPONENT_ARCHIVE)
+
+include ../../make-rules/prep.mk
+include ../../make-rules/configure.mk
+include ../../make-rules/ips.mk
+
+PKG_CONFIG_PATH_32 = /usr/lib/pkgconfig
+PKG_CONFIG_PATH_64 = /usr/lib/$(MACH64)/pkgconfig
+
+PATCH_LEVEL = 0
+
+# Prevent RPATH/RUNPATH, even in ./configure. If conftest
+# can't find something in the default search RUNPATH, we'd
+# like to know why.
+CFLAGS += -Xc -xnorunpath
+CFLAGS += $(studio_C99_ENABLE) $(CPP_POSIX) $(CPP_LARGEFILES)
+CPPFLAGS += $(CPP_POSIX) $(CPP_LARGEFILES)
+CXXFLAGS += $(CC_BITS) -mt -library=Crun -library=Cstd -compat=5
+CXXFLAGS += -D_XPG5 -D_XOPEN_SOURCE=500 -D__EXTENSIONS__=1
+CXXFLAGS += $(CPP_POSIX) $(CPP_LARGEFILES)
+LDFLAGS += -lpthread -lc -lm
+LD_OPTIONS += -z ignore
+
+CONFIGURE_ENV += CXX="$(CCC)"
+CONFIGURE_ENV += CFLAGS="$(CFLAGS)"
+CONFIGURE_ENV += CXXFLAGS="$(CXXFLAGS)"
+CONFIGURE_ENV += CPPFLAGS="$(CPPFLAGS)"
+CONFIGURE_ENV += CXXLINK="$(CCC) $(CXXFLAGS) $(LDFLAGS)"
+CONFIGURE_ENV += CXXCPP="$(CCC) $(CPPFLAGS) $(CXXFLAGS) -E"
+CONFIGURE_ENV += LDFLAGS="$(LDFLAGS)"
+CONFIGURE_ENV += PKG_CONFIG_PATH="$(PKG_CONFIG_PATH_$(BITS))"
+
+CONFIGURE_OPTIONS  +=           --disable-static
+CONFIGURE_OPTIONS  +=           --enable-threading
+CONFIGURE_OPTIONS  +=           --enable-posix-sem
+CONFIGURE_OPTIONS  +=           --with-pic
+
+PKG_PROTO_DIRS +=	$(COMPONENT_SRC)
+
+build: $(BUILD_32_and_64)
+
+MAN1LIST = exrenvmap.1 exrheader.1 exrmakepreview.1 \
+	   exrmaketiled.1 exrstdattr.1
+
+include ../../make-rules/shared-targets.mk
+
+install: $(INSTALL_32_and_64)
+	$(MKDIR) $(PROTOUSRSHAREMAN1DIR) ; \
+	    list1='$(MAN1LIST)'; for f in $$list1; do \
+	    $(INSTALL) -m 0644 Solaris/$$f $(PROTOUSRSHAREMAN1DIR)/ ; \
+	    done
+	$(MKDIR) $(PROTOUSRSHAREMAN3DIR) ; \
+	$(INSTALL) -m 0644 Solaris/libopenexr.3lib $(PROTOUSRSHAREMAN3DIR)/
+
+test: $(BUILD_32_and_64)
+	@cd $(BUILD_DIR_32); $(GMAKE) check
+	@cd $(BUILD_DIR_64); $(GMAKE) check
+
+BUILD_PKG_DEPENDENCIES = $(BUILD_TOOLS)
+
+include ../../make-rules/depend.mk
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/openexr/SUNWopenexr.p5m	Wed Mar 23 14:35:32 2011 -0700
@@ -0,0 +1,27 @@
+#
+# CDDL HEADER START
+#
+# The contents of this file are subject to the terms of the
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
+#
+# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+# or http://www.opensolaris.org/os/licensing.
+# See the License for the specific language governing permissions
+# and limitations under the License.
+#
+# When distributing Covered Code, include this CDDL HEADER in each
+# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+# If applicable, add the following below this CDDL HEADER, with the
+# fields enclosed by brackets "[]" replaced with your own identifying
+# information: Portions Copyright [yyyy] [name of copyright owner]
+#
+# CDDL HEADER END
+#
+# Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+#
+
+set name=pkg.fmri value=pkg:/[email protected],5.11-0.133
+set name=pkg.renamed value=true
+set name=org.opensolaris.consolidation value=$(CONSOLIDATION)
+depend fmri=library/[email protected] type=require
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/openexr/Solaris/exrenvmap.1	Wed Mar 23 14:35:32 2011 -0700
@@ -0,0 +1,66 @@
+'\" t
+.\"
+.\" CDDL HEADER START
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\" CDDL HEADER END
+.\"
+.\" Copyright (c) 2010, 2011, Oracle and/or its affiliates. All rights reserved.
+.\"
+.\"
+.TH exrenvmap 1 "Mar 21 2011" "SunOS 5.11" "User commands" 
+.SH NAME
+'\" te
+exrenvmap \- makes OpenEXR environment maps
+.SH SYNOPSIS
+.LP
+.nf
+exrenvmap [options] infile outfile 
+.fi
+.in -40n
+.SH ATTRIBUTES
+See
+.BR attributes (5)
+for descriptions of the following attributes:
+.sp
+.TS
+box;
+cbp-1 | cbp-1
+l | l .
+ATTRIBUTE TYPE	ATTRIBUTE VALUE
+=
+Availability	library/openexr
+=
+Interface Stability	Uncommitted
+.TE 
+.PP
+.SH "SEE ALSO"
+.PP
+\fBexrheader\fR(1), 
+\fBexrmakepreview\fR(1), 
+\fBexrmaketiled\fR(1), 
+\fBexrstdattr\fR(1)
+.PP
+\fIhttp://www\&.openexr\&.com\fR
+.SH LICENSE
+.sp
+.LP
+The OpenEXR source code distribution is free software.  See the file
+named COPYING (included in this distribution) for details.
+.LP
+.SH NOTES
+Source for openexr is available on http://opensolaris.org.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/openexr/Solaris/exrheader.1	Wed Mar 23 14:35:32 2011 -0700
@@ -0,0 +1,65 @@
+'\" t
+.\"
+.\" CDDL HEADER START
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\" CDDL HEADER END
+.\"
+.\" Copyright (c) 2010, 2011, Oracle and/or its affiliates. All rights reserved.
+.\"
+.\"
+.TH exrheader 1 "Mar 21 2011" "SunOS 5.11" "User commands" 
+.SH NAME
+exrheader \- print out OpenEXR image file header
+.SH SYNOPSIS
+.LP
+.nf
+exrheader imagefile [imagefile ...]
+.fi
+.in -40n
+.SH ATTRIBUTES
+See
+.BR attributes (5)
+for descriptions of the following attributes:
+.sp
+.TS
+box;
+cbp-1 | cbp-1
+l | l .
+ATTRIBUTE TYPE	ATTRIBUTE VALUE
+=
+Availability	library/openexr
+=
+Interface Stability	Uncommitted
+.TE 
+.PP
+.SH "SEE ALSO"
+.PP
+\fBexrenvmap\fR(1), 
+\fBexrmakepreview\fR(1), 
+\fBexrmaketiled\fR(1), 
+\fBexrstdattr\fR(1)
+.PP
+\fIhttp://www\&.openexr\&.com\fR
+.SH LICENSE
+.sp
+.LP
+The OpenEXR source code distribution is free software.  See the file
+named COPYING (included in this distribution) for details.
+.LP
+.SH NOTES
+Source for openexr is available on http://opensolaris.org.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/openexr/Solaris/exrmakepreview.1	Wed Mar 23 14:35:32 2011 -0700
@@ -0,0 +1,65 @@
+'\" t
+.\"
+.\" CDDL HEADER START
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\" CDDL HEADER END
+.\"
+.\" Copyright (c) 2010, 2011, Oracle and/or its affiliates. All rights reserved.
+.\"
+.\"
+.TH exrmakepreview 1 "Mar 21 2011" "SunOS 5.11" "User commands" 
+.SH NAME
+exrmakepreview \- generates a preview image
+.SH SYNOPSIS
+.LP
+.nf
+exrmakepreview [options] infile outfile 
+.fi
+.in -40n
+.SH ATTRIBUTES
+See
+.BR attributes (5)
+for descriptions of the following attributes:
+.sp
+.TS
+box;
+cbp-1 | cbp-1
+l | l .
+ATTRIBUTE TYPE	ATTRIBUTE VALUE
+=
+Availability	library/openexr
+=
+Interface Stability	Uncommitted
+.TE 
+.PP
+.SH "SEE ALSO"
+.PP
+\fBexrenvmap\fR(1), 
+\fBexrheader\fR(1), 
+\fBexrmaketiled\fR(1), 
+\fBexrstdattr\fR(1) 
+.PP
+\fIhttp://www\&.openexr\&.com\fR
+.SH LICENSE
+.sp
+.LP
+The OpenEXR source code distribution is free software.  See the file
+named COPYING (included in this distribution) for details.
+.LP
+.SH NOTES
+Source for openexr is available on http://opensolaris.org.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/openexr/Solaris/exrmaketiled.1	Wed Mar 23 14:35:32 2011 -0700
@@ -0,0 +1,65 @@
+'\" t
+.\"
+.\" CDDL HEADER START
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\" CDDL HEADER END
+.\"
+.\" Copyright (c) 2010, 2011, Oracle and/or its affiliates. All rights reserved.
+.\"
+.\"
+.TH exrmaketiled 1 "Mar 21 2011" "SunOS 5.11" "User commands" 
+.SH NAME
+exrmaketiled \- produces a tiled version of the input image 
+.SH SYNOPSIS
+.LP
+.nf
+exrmaketiled [options] infile outfile
+.fi
+.in -40n
+.SH ATTRIBUTES
+See
+.BR attributes (5)
+for descriptions of the following attributes:
+.sp
+.TS
+box;
+cbp-1 | cbp-1
+l | l .
+ATTRIBUTE TYPE	ATTRIBUTE VALUE
+=
+Availability	library/openexr
+=
+Interface Stability	Uncommitted
+.TE 
+.PP
+.SH "SEE ALSO"
+.PP
+\fBexrenvmap\fR(1), 
+\fBexrheader\fR(1),
+\fBexrmakepreview\fR(1),
+\fBexrstdattr\fR(1)
+.PP
+\fIhttp://www\&.openexr\&.com\fR
+.SH LICENSE
+.sp
+.LP
+The OpenEXR source code distribution is free software.  See the file
+named COPYING (included in this distribution) for details.
+.LP
+.SH NOTES
+Source for openexr is available on http://opensolaris.org.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/openexr/Solaris/exrstdattr.1	Wed Mar 23 14:35:32 2011 -0700
@@ -0,0 +1,65 @@
+'\" t
+.\"
+.\" CDDL HEADER START
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\" CDDL HEADER END
+.\"
+.\" Copyright (c) 2010, 2011, Oracle and/or its affiliates. All rights reserved.
+.\"
+.\"
+.TH exrstdattr 1 "Mar 21 2011" "SunOS 5.11" "User commands" 
+.SH NAME
+exrstdattr \- set the most standard attributes in an OpenEXR image file's header
+.SH SYNOPSIS
+.LP
+.nf
+exrstdattr [options] infile outfile
+.fi
+.in -40n
+.SH ATTRIBUTES
+See
+.BR attributes (5)
+for descriptions of the following attributes:
+.sp
+.TS
+box;
+cbp-1 | cbp-1
+l | l .
+ATTRIBUTE TYPE	ATTRIBUTE VALUE
+=
+Availability	library/openexr
+=
+Interface Stability	Uncommitted
+.TE 
+.PP
+.SH "SEE ALSO"
+.PP
+\fBexrenvmap\fR(1),
+\fBexrheader\fR(1),
+\fBexrmakepreview\fR(1),
+\fBexrmaketiled\fR(1)
+.PP
+\fIhttp://www\&.openexr\&.com\fR
+.SH LICENSE
+.sp
+.LP
+The OpenEXR source code distribution is free software.  See the file
+named COPYING (included in this distribution) for details.
+.LP
+.SH NOTES
+Source for openexr is available on http://opensolaris.org.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/openexr/Solaris/libopenexr.3lib	Wed Mar 23 14:35:32 2011 -0700
@@ -0,0 +1,82 @@
+'\" t
+.\"
+.\" CDDL HEADER START
+.\"
+.\" The contents of this file are subject to the terms of the
+.\" Common Development and Distribution License (the "License").
+.\" You may not use this file except in compliance with the License.
+.\"
+.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+.\" or http://www.opensolaris.org/os/licensing.
+.\" See the License for the specific language governing permissions
+.\" and limitations under the License.
+.\"
+.\" When distributing Covered Code, include this CDDL HEADER in each
+.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+.\" If applicable, add the following below this CDDL HEADER, with the
+.\" fields enclosed by brackets "[]" replaced with your own identifying
+.\" information: Portions Copyright [yyyy] [name of copyright owner]
+.\"
+.\" CDDL HEADER END
+.\"
+.\" Copyright (c) 2010, 2011 Oracle and/or its affiliates. All rights reserved.
+.\"
+.\"
+.TH libopenexr 3LIB "Mar 21 2011" "SunOS 5.11" "Interface Libraries" 
+.SH NAME
+libopenexr \- user-level OpenEXR library
+.SH SYNOPSIS
+.LP
+.nf
+cc [ \fIflag\fR\&.\&.\&.\ ] \fIfile\fR\&.\&.\&. -\fBI/usr/include/OpenEXR -\fBlIlmImf 
+-\fBlImath -\fBlIex -\fBlHalf -\fBlIlmThread -\fBlz \fR [ \fIlibrary\fR\&.\&.\&. ]
+.fi
+.SH DESCRIPTION
+.sp
+.LP
+
+The IlmImf library is used to read and write Industrial Light & Magic (ILM) 
+OpenEXR images. The IlmImf library depends on the ilmbase libraries.
+
+See /usr/share/doc/openexr for a full description and for some code that 
+demonstrates how to use the IlmImf library to read and write OpenEXR files.  
+The doc directory contains some high-level documentation and history about 
+the OpenEXR image file format.
+.SH FILES
+.sp
+.ne 2
+.mk
+\fB\fB/usr/lib/libIlmImf\&.so\fR\fR
+.in +40n
+.rt
+shared object
+.in -40n
+.SH ATTRIBUTES
+See
+.BR attributes (5)
+for descriptions of the following attributes:
+.sp
+.TS
+box;
+cbp-1 | cbp-1
+l | l .
+ATTRIBUTE TYPE	ATTRIBUTE VALUE
+=
+Availability	library/openexr
+=
+Interface Stability	Uncommitted
+.TE 
+.PP
+.SH "SEE ALSO"
+.PP
+\fBintro\fR(3), \fBlibz\fR(3LIB), \fBlibilmbase\fR(3LIB)
+.PP
+\fIhttp://www\&.openexr\&.com\fR
+.SH LICENSE
+.sp
+.LP
+The OpenEXR source code distribution is free software.  See the file
+named COPYING (included in this distribution) for details.
+.LP
+.SH NOTES
+Source for openexr is available on http://opensolaris.org.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/openexr/openexr.license	Wed Mar 23 14:35:32 2011 -0700
@@ -0,0 +1,34 @@
+Copyright (c) 2006, Industrial Light & Magic, a division of Lucasfilm
+Entertainment Company Ltd.  Portions contributed and copyright held by
+others as indicated.  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
+      any other contributors to this software 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, SPECIAL,
+EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/openexr/openexr.p5m	Wed Mar 23 14:35:32 2011 -0700
@@ -0,0 +1,144 @@
+#
+# CDDL HEADER START
+#
+# The contents of this file are subject to the terms of the
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
+#
+# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+# or http://www.opensolaris.org/os/licensing.
+# See the License for the specific language governing permissions
+# and limitations under the License.
+#
+# When distributing Covered Code, include this CDDL HEADER in each
+# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+# If applicable, add the following below this CDDL HEADER, with the
+# fields enclosed by brackets "[]" replaced with your own identifying
+# information: Portions Copyright [yyyy] [name of copyright owner]
+#
+# CDDL HEADER END
+#
+# Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+#
+set name=pkg.fmri value=pkg:/library/openexr@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
+set name=pkg.summary value="OpenEXR header files and libraries used to read and write OpenEXR images"
+set name=pkg.description value="Libraries support for high dynamic-range image (HDR) format"
+set name=info.classification value="org.opensolaris.category.2008:System/Libraries"
+set name=info.upstream_url value="http://www.openexr.com/"
+set name=info.source_url value=$(COMPONENT_ARCHIVE_URL)
+set name=org.opensolaris.consolidation value=$(CONSOLIDATION)
+#
+dir path=usr
+dir path=usr/include
+dir path=usr/include/OpenEXR
+dir path=usr/lib
+dir path=usr/lib/pkgconfig
+dir path=usr/lib/$(MACH64)
+dir path=usr/lib/$(MACH64)/pkgconfig
+dir path=usr/share
+dir path=usr/share/man
+dir path=usr/share/man/man1
+dir path=usr/share/man/man3
+#
+file path=usr/bin/exrheader
+file path=usr/bin/exrmaketiled
+file path=usr/bin/exrstdattr
+file path=usr/bin/exrmakepreview
+file path=usr/bin/exrenvmap
+file path=usr/include/OpenEXR/ImfAttribute.h
+file path=usr/include/OpenEXR/ImfBoxAttribute.h
+file path=usr/include/OpenEXR/ImfCRgbaFile.h
+file path=usr/include/OpenEXR/ImfChannelList.h
+file path=usr/include/OpenEXR/ImfChannelListAttribute.h
+file path=usr/include/OpenEXR/ImfCompressionAttribute.h
+file path=usr/include/OpenEXR/ImfDoubleAttribute.h
+file path=usr/include/OpenEXR/ImfFloatAttribute.h
+file path=usr/include/OpenEXR/ImfFrameBuffer.h
+file path=usr/include/OpenEXR/ImfHeader.h
+file path=usr/include/OpenEXR/ImfIO.h
+file path=usr/include/OpenEXR/ImfInputFile.h
+file path=usr/include/OpenEXR/ImfIntAttribute.h
+file path=usr/include/OpenEXR/ImfLineOrderAttribute.h
+file path=usr/include/OpenEXR/ImfMatrixAttribute.h
+file path=usr/include/OpenEXR/ImfOpaqueAttribute.h
+file path=usr/include/OpenEXR/ImfOutputFile.h
+file path=usr/include/OpenEXR/ImfRgbaFile.h
+file path=usr/include/OpenEXR/ImfStringAttribute.h
+file path=usr/include/OpenEXR/ImfVecAttribute.h
+file path=usr/include/OpenEXR/ImfHuf.h
+file path=usr/include/OpenEXR/ImfWav.h
+file path=usr/include/OpenEXR/ImfLut.h
+file path=usr/include/OpenEXR/ImfArray.h
+file path=usr/include/OpenEXR/ImfCompression.h
+file path=usr/include/OpenEXR/ImfLineOrder.h
+file path=usr/include/OpenEXR/ImfName.h
+file path=usr/include/OpenEXR/ImfPixelType.h
+file path=usr/include/OpenEXR/ImfVersion.h
+file path=usr/include/OpenEXR/ImfXdr.h
+file path=usr/include/OpenEXR/ImfConvert.h
+file path=usr/include/OpenEXR/ImfPreviewImage.h
+file path=usr/include/OpenEXR/ImfPreviewImageAttribute.h
+file path=usr/include/OpenEXR/ImfChromaticities.h
+file path=usr/include/OpenEXR/ImfChromaticitiesAttribute.h
+file path=usr/include/OpenEXR/ImfKeyCode.h
+file path=usr/include/OpenEXR/ImfKeyCodeAttribute.h
+file path=usr/include/OpenEXR/ImfTimeCode.h
+file path=usr/include/OpenEXR/ImfTimeCodeAttribute.h
+file path=usr/include/OpenEXR/ImfRational.h
+file path=usr/include/OpenEXR/ImfRationalAttribute.h
+file path=usr/include/OpenEXR/ImfFramesPerSecond.h
+file path=usr/include/OpenEXR/ImfStandardAttributes.h
+file path=usr/include/OpenEXR/ImfEnvmap.h
+file path=usr/include/OpenEXR/ImfEnvmapAttribute.h
+file path=usr/include/OpenEXR/ImfInt64.h
+file path=usr/include/OpenEXR/ImfRgba.h
+file path=usr/include/OpenEXR/ImfTileDescription.h
+file path=usr/include/OpenEXR/ImfTileDescriptionAttribute.h
+file path=usr/include/OpenEXR/ImfTiledInputFile.h
+file path=usr/include/OpenEXR/ImfTiledOutputFile.h
+file path=usr/include/OpenEXR/ImfTiledRgbaFile.h
+file path=usr/include/OpenEXR/ImfRgbaYca.h
+file path=usr/include/OpenEXR/ImfTestFile.h
+file path=usr/include/OpenEXR/ImfThreading.h
+file path=usr/include/OpenEXR/ImfB44Compressor.h
+file path=usr/include/OpenEXR/OpenEXRConfig.h
+file path=usr/lib/libIlmImf.so.6.0.0
+file path=usr/lib/pkgconfig/OpenEXR.pc
+file path=usr/lib/$(MACH64)/libIlmImf.so.6.0.0
+file path=usr/lib/$(MACH64)/pkgconfig/OpenEXR.pc
+file path=usr/share/doc/OpenEXR-$(COMPONENT_VERSION)/examples/main.cpp
+file path=usr/share/doc/OpenEXR-$(COMPONENT_VERSION)/examples/drawImage.cpp
+file path=usr/share/doc/OpenEXR-$(COMPONENT_VERSION)/examples/rgbaInterfaceExamples.cpp
+file path=usr/share/doc/OpenEXR-$(COMPONENT_VERSION)/examples/rgbaInterfaceTiledExamples.cpp
+file path=usr/share/doc/OpenEXR-$(COMPONENT_VERSION)/examples/generalInterfaceExamples.cpp
+file path=usr/share/doc/OpenEXR-$(COMPONENT_VERSION)/examples/lowLevelIoExamples.cpp
+file path=usr/share/doc/OpenEXR-$(COMPONENT_VERSION)/examples/previewImageExamples.cpp
+file path=usr/share/doc/OpenEXR-$(COMPONENT_VERSION)/examples/generalInterfaceTiledExamples.cpp
+file path=usr/share/doc/OpenEXR-$(COMPONENT_VERSION)/examples/generalInterfaceTiledExamples.h
+file path=usr/share/doc/OpenEXR-$(COMPONENT_VERSION)/examples/drawImage.h
+file path=usr/share/doc/OpenEXR-$(COMPONENT_VERSION)/examples/rgbaInterfaceExamples.h
+file path=usr/share/doc/OpenEXR-$(COMPONENT_VERSION)/examples/generalInterfaceExamples.h
+file path=usr/share/doc/OpenEXR-$(COMPONENT_VERSION)/examples/rgbaInterfaceTiledExamples.h
+file path=usr/share/doc/OpenEXR-$(COMPONENT_VERSION)/examples/lowLevelIoExamples.h
+file path=usr/share/doc/OpenEXR-$(COMPONENT_VERSION)/examples/previewImageExamples.h
+file path=usr/share/doc/OpenEXR-$(COMPONENT_VERSION)/ReadingAndWritingImageFiles.pdf
+file path=usr/share/doc/OpenEXR-$(COMPONENT_VERSION)/TechnicalIntroduction.pdf
+file path=usr/share/doc/OpenEXR-$(COMPONENT_VERSION)/OpenEXRFileLayout.pdf
+file path=usr/share/man/man1/exrenvmap.1
+file path=usr/share/man/man1/exrheader.1
+file path=usr/share/man/man1/exrmakepreview.1
+file path=usr/share/man/man1/exrmaketiled.1
+file path=usr/share/man/man1/exrstdattr.1
+file path=usr/share/man/man3/libopenexr.3lib
+#
+link path=usr/lib/libIlmImf.so.6 target=libIlmImf.so.6.0.0
+link path=usr/lib/libIlmImf.so target=libIlmImf.so.6.0.0
+link path=usr/lib/$(MACH64)/libIlmImf.so.6 target=libIlmImf.so.6.0.0
+link path=usr/lib/$(MACH64)/libIlmImf.so target=libIlmImf.so.6.0.0
+#
+license openexr.license license="BSD"
+#
+legacy pkg=SUNWopenexr \
+    desc="The IlmImf library and header files to read and write OpenEXR images" \
+    name="Libraries to support high dynamic-range image (HDR) format"
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/openexr/patches/000-ltmain.patch	Wed Mar 23 14:35:32 2011 -0700
@@ -0,0 +1,76 @@
+*** ltmain.sh	Fri Jun 27 18:23:52 2008
+--- ltmain.sh	Fri Jun 27 18:12:07 2008
+***************
+*** 1382,1388 ****
+        # but this is not reliable with gcc because gcc may use -mfoo to
+        # select a different linker, different libraries, etc, while
+        # -Wl,-mfoo simply passes -mfoo to the linker.
+!       -m*)
+  	# Unknown arguments in both finalize_command and compile_command need
+  	# to be aesthetically quoted because they are evaled later.
+  	arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
+--- 1382,1388 ----
+        # but this is not reliable with gcc because gcc may use -mfoo to
+        # select a different linker, different libraries, etc, while
+        # -Wl,-mfoo simply passes -mfoo to the linker.
+!       -m*|-xarch=*)
+  	# Unknown arguments in both finalize_command and compile_command need
+  	# to be aesthetically quoted because they are evaled later.
+  	arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
+***************
+*** 1393,1401 ****
+  	esac
+          compile_command="$compile_command $arg"
+          finalize_command="$finalize_command $arg"
+!         if test "$with_gcc" = "yes" ; then
+            compiler_flags="$compiler_flags $arg"
+!         fi
+          continue
+          ;;
+  
+--- 1393,1402 ----
+  	esac
+          compile_command="$compile_command $arg"
+          finalize_command="$finalize_command $arg"
+!         # comment out this to support 64bit for CC
+!         #if test "$with_gcc" = "yes" ; then
+            compiler_flags="$compiler_flags $arg"
+!         #fi
+          continue
+          ;;
+  
+***************
+*** 3890,3896 ****
+  	save_ifs="$IFS"; IFS='~'
+  	for cmd in $cmds; do
+  	  IFS="$save_ifs"
+! 	  eval cmd=\"$cmd\"
+  	  $show "$cmd"
+  	  $run eval "$cmd" || exit $?
+  	done
+--- 3891,3898 ----
+  	save_ifs="$IFS"; IFS='~'
+  	for cmd in $cmds; do
+  	  IFS="$save_ifs"
+! 	  # Append the cmd to remove runpath for CC"
+! 	  eval cmd=\"$cmd -norunpath\"
+  	  $show "$cmd"
+  	  $run eval "$cmd" || exit $?
+  	done
+***************
+*** 4512,4518 ****
+  	$echo "$modename: \`$output' will be relinked during installation" 1>&2
+        else
+  	if test "$fast_install" != no; then
+! 	  link_command="$finalize_var$compile_command$finalize_rpath"
+  	  if test "$fast_install" = yes; then
+  	    relink_command=`$echo "X$compile_var$compile_command$compile_rpath" | $Xsed -e 's%@OUTPUT@%\$progdir/\$file%g'`
+  	  else
+--- 4514,4520 ----
+  	$echo "$modename: \`$output' will be relinked during installation" 1>&2
+        else
+  	if test "$fast_install" != no; then
+! 	  link_command="$finalize_var$compile_command -norunpath"
+  	  if test "$fast_install" = yes; then
+  	    relink_command=`$echo "X$compile_var$compile_command$compile_rpath" | $Xsed -e 's%@OUTPUT@%\$progdir/\$file%g'`
+  	  else
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/openexr/patches/001-makePreview.patch	Wed Mar 23 14:35:32 2011 -0700
@@ -0,0 +1,36 @@
+*** exrmakepreview/makePreview.cpp	2009-08-31 10:52:16.587024739 -0700
+--- exrmakepreview/makePreview.cpp	2009-08-31 10:52:18.578018655 -0700
+***************
+*** 78,84 ****
+      // at 0.0, 0.0, and 5.0 respectively.
+      //
+  
+!     float x = max (0.f, h * m);
+  
+      if (x > 1)
+  	x = 1 + knee (x - 1, 0.184874f);
+--- 78,84 ----
+      // at 0.0, 0.0, and 5.0 respectively.
+      //
+  
+!     float x = max (0.f, (float)(h * m));
+  
+      if (x > 1)
+  	x = 1 + knee (x - 1, 0.184874f);
+***************
+*** 132,138 ****
+  	    preview.r = gamma (pixel.r, m);
+  	    preview.g = gamma (pixel.g, m);
+  	    preview.b = gamma (pixel.b, m);
+! 	    preview.a = int (clamp (pixel.a * 255.f, 0.f, 255.f) + .5f);
+  	}
+      }
+  }
+--- 132,138 ----
+  	    preview.r = gamma (pixel.r, m);
+  	    preview.g = gamma (pixel.g, m);
+  	    preview.b = gamma (pixel.b, m);
+! 	    preview.a = int (clamp ((double)(pixel.a * 255.f), (double)0.f, (double)255.f) + .5f);
+  	}
+      }
+  }
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/openexr/patches/002-configure.patch	Wed Mar 23 14:35:32 2011 -0700
@@ -0,0 +1,134 @@
+--- configure	2007-10-09 14:32:10.000000000 -0700
++++ configure	2011-03-15 10:58:07.380292878 -0700
+@@ -2489,13 +2489,13 @@
+   if test "$GXX" = yes; then
+     CXXFLAGS="-g -O2"
+   else
+-    CXXFLAGS="-g"
++    CXXFLAGS="$CXXFLAGS"
+   fi
+ else
+   if test "$GXX" = yes; then
+     CXXFLAGS="-O2"
+   else
+-    CXXFLAGS=
++    CXXFLAGS="$CXXFLAGS"
+   fi
+ fi
+ for ac_declaration in \
+@@ -3319,13 +3319,13 @@
+   if test "$GCC" = yes; then
+     CFLAGS="-g -O2"
+   else
+-    CFLAGS="-g"
++    CFLAGS="$CFLAGS"
+   fi
+ else
+   if test "$GCC" = yes; then
+     CFLAGS="-O2"
+   else
+-    CFLAGS=
++    CFLAGS="$CFLAGS"
+   fi
+ fi
+ echo "$as_me:$LINENO: checking for $CC option to accept ANSI C" >&5
+@@ -4431,7 +4431,7 @@
+   echo $ECHO_N "(cached) $ECHO_C" >&6
+ else
+       # Double quotes because CPP needs to be expanded
+-    for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
++    for CPP in "$CPP" "$CC $CPPFLAGS $CFLAGS -E"
+     do
+       ac_preproc_ok=false
+ for ac_c_preproc_warn_flag in '' yes
+@@ -5055,7 +5055,7 @@
+   echo $ECHO_N "(cached) $ECHO_C" >&6
+ else
+       # Double quotes because CXXCPP needs to be expanded
+-    for CXXCPP in "$CXX -E" "/lib/cpp"
++    for CXXCPP in "$CXXCPP" "$CXX $CPPFLAGS $CXXFLAGS -E " "$CXX -E"
+     do
+       ac_preproc_ok=false
+ for ac_cxx_preproc_warn_flag in '' yes
+@@ -7548,17 +7548,17 @@
+       ;;
+ 
+     solaris*)
+-      no_undefined_flag=' -z text'
++      no_undefined_flag=' -z text -z defs -z ignore'
+       if test "$GCC" = yes; then
+ 	archive_cmds='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+ 	archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
+ 	  $CC -shared ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$rm $lib.exp'
+       else
+-	archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
++	archive_cmds='$CC $CFLAGS $LDFLAGS  -G ${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
+ 	archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
+-  	$LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
++  	$CC $CFLAGS $LDFLAGS -G ${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
+       fi
+-      hardcode_libdir_flag_spec='-R$libdir'
++      hardcode_libdir_flag_spec=''
+       hardcode_shlibpath_var=no
+       case $host_os in
+       solaris2.[0-5] | solaris2.[0-5].*) ;;
+@@ -10761,12 +10761,12 @@
+     case $cc_basename in
+       CC)
+ 	# Sun C++ 4.2, 5.x and Centerline C++
+-	no_undefined_flag_CXX=' -zdefs'
+-	archive_cmds_CXX='$CC -G${allow_undefined_flag} -nolib -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
++	no_undefined_flag_CXX=' -z text -z defs -z ignore'
++	archive_cmds_CXX='$CC $CFLAGS $LDFLAGS -G ${allow_undefined_flag} -nolib -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+ 	archive_expsym_cmds_CXX='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
+-	$CC -G${allow_undefined_flag} -nolib ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp'
++	$CC $CFLAGS $LDFLAGS -G ${allow_undefined_flag} -nolib ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp'
+ 
+-	hardcode_libdir_flag_spec_CXX='-R$libdir'
++	hardcode_libdir_flag_spec_CXX=''
+ 	hardcode_shlibpath_var_CXX=no
+ 	case $host_os in
+ 	  solaris2.[0-5] | solaris2.[0-5].*) ;;
+@@ -10788,13 +10788,13 @@
+ 	# explicitly linking system object files so we need to strip them
+ 	# from the output so that they don't get included in the library
+ 	# dependencies.
+-	output_verbose_link_cmd='templist=`$CC -G $CFLAGS -v conftest.$objext 2>&1 | grep "\-[LR]"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
++	output_verbose_link_cmd='templist=`$CC $CFLAGS $LDFLAGS -G -v conftest.$objext 2>&1 | grep "\-[LR]"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
+ 
+ 	# Archives containing C++ object files must be created using
+ 	# "CC -xar", where "CC" is the Sun C++ compiler.  This is
+ 	# necessary to make sure instantiated templates are included
+ 	# in the archive.
+-	old_archive_cmds_CXX='$CC -xar -o $oldlib $oldobjs'
++	old_archive_cmds_CXX='$CC $CFLAGS -xar -o $oldlib $oldobjs'
+ 	;;
+       gcx)
+ 	# Green Hills C++ Compiler
+@@ -14482,7 +14482,7 @@
+       ;;
+ 
+     solaris*)
+-      no_undefined_flag_F77=' -z text'
++      no_undefined_flag_F77=' -z text -z defs -z ignore'
+       if test "$GCC" = yes; then
+ 	archive_cmds_F77='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+ 	archive_expsym_cmds_F77='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
+@@ -21418,7 +21418,7 @@
+ echo "$as_me:$LINENO: checking for gcc optimization flags" >&5
+ echo $ECHO_N "checking for gcc optimization flags... $ECHO_C" >&6
+ old_cflags=$CFLAGS
+-CFLAGS="$CFLAGS -pipe"
++CFLAGS="$CFLAGS"
+ cat >conftest.$ac_ext <<_ACEOF
+ /* confdefs.h.  */
+ _ACEOF
+@@ -21456,7 +21456,7 @@
+   ac_status=$?
+   echo "$as_me:$LINENO: \$? = $ac_status" >&5
+   (exit $ac_status); }; }; then
+-   EXTRA_OPT_CFLAGS="-pipe"
++   EXTRA_OPT_CFLAGS=""
+ else
+   echo "$as_me: failed program was:" >&5
+ sed 's/^/| /' conftest.$ac_ext >&5
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/openexr/patches/003-openexr-1.6.1-CVE-2009-1720.patch	Wed Mar 23 14:35:32 2011 -0700
@@ -0,0 +1,101 @@
+--- IlmImf/ImfPxr24Compressor.cpp	2006-08-08 17:22:39.000000000 -0700
++++ IlmImf/ImfPxr24Compressor.cpp	2011-02-15 10:02:21.249206726 -0800
+@@ -73,6 +73,7 @@
+ #include <zlib.h>
+ #include <assert.h>
+ #include <algorithm>
++#include <climits>
+ 
+ using namespace std;
+ using namespace Imath;
+@@ -187,6 +188,9 @@
+ {
+     int maxInBytes = maxScanLineSize * numScanLines;
+ 
++    if (static_cast<unsigned int>(maxScanLineSize) > static_cast<unsigned int>(INT_MAX) / static_cast<unsigned int>(numScanLines))
++	throw Iex::InputExc ("Error: maxScanLineSize * numScanLines overflow!");
++
+     _tmpBuffer = new unsigned char [maxInBytes];
+     _outBuffer = new char [int (ceil (maxInBytes * 1.01)) + 100];
+ 
+--- IlmImf/ImfRleCompressor.cpp	2006-10-13 20:06:39.000000000 -0700
++++ IlmImf/ImfRleCompressor.cpp	2011-02-15 10:04:37.515213450 -0800
+@@ -42,6 +42,7 @@
+ 
+ #include <ImfRleCompressor.h>
+ #include "Iex.h"
++#include <climits>
+ 
+ namespace Imf {
+ namespace {
+@@ -164,6 +165,9 @@
+     _tmpBuffer (0),
+     _outBuffer (0)
+ {
++    if (static_cast<unsigned int>(maxScanLineSize) > static_cast<unsigned int>(INT_MAX / 3))
++	throw Iex::InputExc ("Error: maxScanLineSize * 3 overflow!");
++
+     _tmpBuffer = new char [maxScanLineSize];
+     _outBuffer = new char [maxScanLineSize * 3 / 2];
+ }
+--- IlmImf/ImfZipCompressor.cpp	2006-10-13 20:07:17.000000000 -0700
++++ IlmImf/ImfZipCompressor.cpp	2011-02-15 10:06:55.097529328 -0800
+@@ -43,6 +43,7 @@
+ #include <ImfZipCompressor.h>
+ #include "Iex.h"
+ #include <zlib.h>
++#include <climits>
+ 
+ namespace Imf {
+ 
+@@ -58,6 +59,9 @@
+     _tmpBuffer (0),
+     _outBuffer (0)
+ {
++    if (static_cast<unsigned int>(maxScanLineSize) > static_cast<unsigned int>(INT_MAX) / static_cast<unsigned int>(numScanLines))
++	throw Iex::InputExc ("Error: maxScanLineSize * numScanLines overflow!");
++
+     _tmpBuffer =
+ 	new char [maxScanLineSize * numScanLines];
+ 
+--- IlmImf/ImfPreviewImage.cpp	2006-06-05 22:58:16.000000000 -0700
++++ IlmImf/ImfPreviewImage.cpp	2011-02-15 10:10:00.946063574 -0800
+@@ -41,6 +41,7 @@
+ 
+ #include <ImfPreviewImage.h>
+ #include "Iex.h"
++#include <climits>
+ 
+ namespace Imf {
+ 
+@@ -51,6 +52,10 @@
+ {
+     _width = width;
+     _height = height;
++
++    if ((_height && (_width > (UINT_MAX / _height))) || ((_width * _height) > (UINT_MAX / sizeof(PreviewRgba))))
++	throw Iex::ArgExc ("Error: Invalid height and/or width!");
++
+     _pixels = new PreviewRgba [_width * _height];
+ 
+     if (pixels)
+--- IlmImf/ImfPizCompressor.cpp	2007-09-20 21:17:46.000000000 -0700
++++ IlmImf/ImfPizCompressor.cpp	2011-02-15 10:10:24.179648473 -0800
+@@ -53,6 +53,7 @@
+ #include <ImfAutoArray.h>
+ #include <string.h>
+ #include <assert.h>
++#include <climits>
+ 
+ namespace Imf {
+ 
+@@ -181,6 +182,9 @@
+     _channels (hdr.channels()),
+     _channelData (0)
+ {
++    if (static_cast<unsigned int>(maxScanLineSize) > static_cast<unsigned int>(INT_MAX - 65536 - 8192) / static_cast<unsigned int>(numScanLines))
++	throw InputExc ("Error: maxScanLineSize * numScanLines overflow!");
++
+     _tmpBuffer = new unsigned short [maxScanLineSize * numScanLines / 2];
+     _outBuffer = new char [maxScanLineSize * numScanLines + 65536 + 8192];
+ 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/openexr/patches/004-openexr-1.6.1-CVE-2009-1721.patch	Wed Mar 23 14:35:32 2011 -0700
@@ -0,0 +1,13 @@
+--- IlmImf/ImfAutoArray.h	2007-04-23 18:26:56.000000000 -0700
++++ IlmImf/ImfAutoArray.h	2011-02-15 09:55:03.919979903 -0800
+@@ -57,7 +57,9 @@
+     {
+       public:
+ 
+-	 AutoArray (): _data (new T [size]) {}
++	AutoArray (): _data (new T [size])
++	{ (void) memset(_data, '\0', size * sizeof(T)); }
++
+ 	~AutoArray () {delete [] _data;}
+ 
+ 	operator T * ()			{return _data;}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/openexr/patches/005-OpenEXR.pc.in.patch	Wed Mar 23 14:35:32 2011 -0700
@@ -0,0 +1,10 @@
+--- OpenEXR.pc.in	2007-03-30 10:14:05.000000000 -0700
++++ OpenEXR.pc.in	2011-03-21 16:01:21.006971380 -0700
+@@ -7,5 +7,5 @@
+ Name: OpenEXR
+ Description: OpenEXR image library
+ Version: @OPENEXR_VERSION@
+-Libs: -L${libdir} @ILMBASE_LDFLAGS@ -lIlmImf -lz @ILMBASE_LIBS@
+-Cflags: @ILMBASE_CXXFLAGS@ -I${OpenEXR_includedir}
++Libs: -L${libdir} -lIlmImf -lz @ILMBASE_LIBS@
++Cflags: -I${OpenEXR_includedir}