# Buildsheet autogenerated by ravenadm tool -- Do not edit. NAMEBASE= openexr VERSION= 3.4.4 EPOCH= 1 KEYWORDS= graphics devel VARIANTS= std SDESC[std]= High dynamic-range (HDR) image file format HOMEPAGE= https://www.openexr.com/ CONTACT= nobody DOWNLOAD_GROUPS= main SITES[main]= GITHUB/AcademySoftwareFoundation:openexr:v3.4.4 DISTFILE[1]= generated:main DF_INDEX= 1 SPKGS[std]= set primary dev tools examples OPTIONS_AVAILABLE= none OPTIONS_STANDARD= none BUILD_DEPENDS= Imath:dev:std libdeflate:dev:std openjph:dev:std BUILDRUN_DEPENDS= Imath:primary:std libdeflate:primary:std openjph:primary:std EXRUN[tools]= openexr:primary:std EXRUN[dev]= Imath:dev:std libdeflate:dev:std openjph:dev:std USES= cpe cmake pkgconfig zlib c++:primary LICENSE= BSD3CLAUSE:primary LICENSE_FILE= BSD3CLAUSE:{{WRKSRC}}/LICENSE.md LICENSE_SCHEME= solo FPC_EQUIVALENT= graphics/openexr PLIST_SUB= MAJOR=3_4 SOVERSION=33.3.4.4 SOMAJOR=33 CMAKE_ARGS= -DCMAKE_INSTALL_PREFIX={{PREFIX}} -DOPENEXR_IS_SUBPROJECT=1 -DBUILD_SHARED_LIBS:BOOL=ON VAR_OPSYS[sunos]= CFLAGS=-D__EXTENSIONS__ post-install: # ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/*-3_4.so ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/exr* # relocate examples ${MKDIR} ${STAGEDIR}${STD_EXAMPLESDIR} ${MV} ${STAGEDIR}${STD_DOCDIR}/examples/* ${STAGEDIR}${STD_EXAMPLESDIR}/ ${RM} -r ${STAGEDIR}${STD_DOCDIR} [FILE:1302:descriptions/desc.primary] OpenEXR is a high dynamic-range (HDR) image file format developed by Industrial Light & Magic for use in computer imaging applications. OpenEXR is used by ILM on all motion pictures currently in production. The first movies to employ OpenEXR were Harry Potter and the Sorcerers Stone, Men in Black II, Gangs of New York, and Signs. Since then, OpenEXR has become ILM's main image file format. OpenEXR's features include: * Higher dynamic range and color precision than existing 8- and 10-bit image file formats. * Support for 16-bit floating-point, 32-bit floating-point, and 32-bit integer pixels. The 16-bit floating-point format, called "half", is compatible with the half data type in NVIDIA's Cg graphics language and is supported natively on their new GeForce FX and Quadro FX 3D graphics solutions. * Multiple lossless image compression algorithms. Some of the included codecs can achieve 2:1 lossless compression ratios on images with film grain. * Extensibility. New compression codecs and image types can easily be added by extending the C++ classes included in the OpenEXR software distribution. New image attributes (strings, vectors, integers, etc.) can be added to OpenEXR image headers without affecting backward compatibility with existing OpenEXR applications. [FILE:37:descriptions/desc.tools] This package contains OpenEXR tools. [FILE:125:distinfo] 7c663c3c41da9354b5af277bc2fd1d2360788050b4e0751a32bcd50e8abaef8f 25475204 AcademySoftwareFoundation-openexr-3.4.4.tar.gz [FILE:397:manifests/plist.primary] lib/ libIex-%%MAJOR%%.so.%%SOMAJOR%% libIex-%%MAJOR%%.so.%%SOVERSION%% libIlmThread-%%MAJOR%%.so.%%SOMAJOR%% libIlmThread-%%MAJOR%%.so.%%SOVERSION%% libOpenEXR-%%MAJOR%%.so.%%SOMAJOR%% libOpenEXR-%%MAJOR%%.so.%%SOVERSION%% libOpenEXRCore-%%MAJOR%%.so.%%SOMAJOR%% libOpenEXRCore-%%MAJOR%%.so.%%SOVERSION%% libOpenEXRUtil-%%MAJOR%%.so.%%SOMAJOR%% libOpenEXRUtil-%%MAJOR%%.so.%%SOVERSION%% [FILE:3183:manifests/plist.dev] include/OpenEXR/ Iex.h IexBaseExc.h IexConfig.h IexErrnoExc.h IexExport.h IexForward.h IexMacros.h IexMathExc.h IexMathFloatExc.h IexMathIeeeExc.h IexNamespace.h IexThrowErrnoExc.h IlmThread.h IlmThreadConfig.h IlmThreadExport.h IlmThreadForward.h IlmThreadMutex.h IlmThreadNamespace.h IlmThreadPool.h IlmThreadProcessGroup.h IlmThreadSemaphore.h ImfAcesFile.h ImfArray.h ImfAttribute.h ImfBoxAttribute.h ImfBytesAttribute.h ImfCRgbaFile.h ImfChannelList.h ImfChannelListAttribute.h ImfCheckFile.h ImfChromaticities.h ImfChromaticitiesAttribute.h ImfCompositeDeepScanLine.h ImfCompression.h ImfCompressionAttribute.h ImfCompressor.h ImfContext.h ImfContextInit.h ImfConvert.h ImfDeepCompositing.h ImfDeepFrameBuffer.h ImfDeepImage.h ImfDeepImageChannel.h ImfDeepImageIO.h ImfDeepImageLevel.h ImfDeepImageState.h ImfDeepImageStateAttribute.h ImfDeepScanLineInputFile.h ImfDeepScanLineInputPart.h ImfDeepScanLineOutputFile.h ImfDeepScanLineOutputPart.h ImfDeepTiledInputFile.h ImfDeepTiledInputPart.h ImfDeepTiledOutputFile.h ImfDeepTiledOutputPart.h ImfDoubleAttribute.h ImfEnvmap.h ImfEnvmapAttribute.h ImfExport.h ImfFlatImage.h ImfFlatImageChannel.h ImfFlatImageIO.h ImfFlatImageLevel.h ImfFloatAttribute.h ImfFloatVectorAttribute.h ImfForward.h ImfFrameBuffer.h ImfFramesPerSecond.h ImfGenericInputFile.h ImfGenericOutputFile.h ImfHTCompressor.h ImfHeader.h ImfHuf.h ImfIDManifest.h ImfIDManifestAttribute.h ImfIO.h ImfImage.h ImfImageChannel.h ImfImageChannelRenaming.h ImfImageDataWindow.h ImfImageIO.h ImfImageLevel.h ImfInputFile.h ImfInputPart.h ImfInt64.h ImfIntAttribute.h ImfKeyCode.h ImfKeyCodeAttribute.h ImfLineOrder.h ImfLineOrderAttribute.h ImfLut.h ImfMatrixAttribute.h ImfMisc.h ImfMultiPartInputFile.h ImfMultiPartOutputFile.h ImfMultiView.h ImfName.h ImfNamespace.h ImfOpaqueAttribute.h ImfOutputFile.h ImfOutputPart.h ImfPartHelper.h ImfPartType.h ImfPixelType.h ImfPreviewImage.h ImfPreviewImageAttribute.h ImfRational.h ImfRationalAttribute.h ImfRgba.h ImfRgbaFile.h ImfRgbaYca.h ImfSampleCountChannel.h ImfStandardAttributes.h ImfStdIO.h ImfStringAttribute.h ImfStringVectorAttribute.h ImfTestFile.h ImfThreading.h ImfTileDescription.h ImfTileDescriptionAttribute.h ImfTiledInputFile.h ImfTiledInputPart.h ImfTiledOutputFile.h ImfTiledOutputPart.h ImfTiledRgbaFile.h ImfTimeCode.h ImfTimeCodeAttribute.h ImfUtilExport.h ImfVecAttribute.h ImfVersion.h ImfWav.h ImfXdr.h OpenEXRConfig.h openexr.h openexr_attr.h openexr_base.h openexr_chunkio.h openexr_coding.h openexr_compression.h openexr_config.h openexr_context.h openexr_debug.h openexr_decode.h openexr_encode.h openexr_errors.h openexr_part.h openexr_std_attr.h openexr_version.h lib/ libIex-%%MAJOR%%.so libIex.so libIlmThread-%%MAJOR%%.so libIlmThread.so libOpenEXR-%%MAJOR%%.so libOpenEXR.so libOpenEXRCore-%%MAJOR%%.so libOpenEXRCore.so libOpenEXRUtil-%%MAJOR%%.so libOpenEXRUtil.so lib/cmake/OpenEXR/ OpenEXRConfig.cmake OpenEXRConfigVersion.cmake OpenEXRTargets-%%CMAKE_BUILD_TYPE%%.cmake OpenEXRTargets.cmake lib/pkgconfig/OpenEXR.pc [FILE:141:manifests/plist.tools] bin/ exr2aces exrenvmap exrheader exrinfo exrmakepreview exrmaketiled exrmanifest exrmetrics exrmultipart exrmultiview exrstdattr [FILE:538:manifests/plist.examples] share/examples/openexr/ deepExamples.cpp deepExamples.h deepTiledExamples.cpp deepTiledExamples.h drawImage.cpp drawImage.h generalInterfaceExamples.cpp generalInterfaceExamples.h generalInterfaceTiledExamples.cpp generalInterfaceTiledExamples.h lowLevelIoExamples.cpp lowLevelIoExamples.h main.cpp multipartExamples.cpp multipartExamples.h namespaceAlias.h previewImageExamples.cpp previewImageExamples.h rgbaInterfaceExamples.cpp rgbaInterfaceExamples.h rgbaInterfaceTiledExamples.cpp rgbaInterfaceTiledExamples.h [FILE:403:patches/patch-cmake_OpenEXRSetup.cmake] --- cmake/OpenEXRSetup.cmake.orig 2025-11-17 01:18:11 UTC +++ cmake/OpenEXRSetup.cmake @@ -101,7 +101,7 @@ set(CMAKE_INCLUDE_CURRENT_DIR ON) # (if you should choose to install those) # Don't override if the user has set it and don't save it in the cache if (NOT DEFINED CMAKE_DEBUG_POSTFIX) - set(CMAKE_DEBUG_POSTFIX "_d") +# set(CMAKE_DEBUG_POSTFIX "_d") endif() if(NOT OPENEXR_IS_SUBPROJECT) [FILE:411:patches/patch-src_lib_OpenEXRCore_internal__posix__file__impl.h] --- src/lib/OpenEXRCore/internal_posix_file_impl.h.orig 2025-11-17 01:18:11 UTC +++ src/lib/OpenEXRCore/internal_posix_file_impl.h @@ -21,6 +21,10 @@ #include #include +#ifndef O_CLOEXEC +#define O_CLOEXEC 0 +#endif + #if defined __USE_UNIX98 || defined __USE_XOPEN2K8 || \ (defined(_XOPEN_VERSION) && _XOPEN_VERSION >= 400) # define CAN_USE_PREAD 1 [FILE:845:patches/patch-src_lib_OpenEXRCore_internal__xdr.h] --- src/lib/OpenEXRCore/internal_xdr.h.orig 2025-11-17 01:18:11 UTC +++ src/lib/OpenEXRCore/internal_xdr.h @@ -69,6 +69,21 @@ # include # define EXR_HOST_IS_NOT_LITTLE_ENDIAN (__BYTE_ORDER != __LITTLE_ENDIAN) +#elif defined(__sun) + +# include +# define EXR_HOST_IS_NOT_LITTLE_ENDIAN 1 +# define LE_IN8(x) *((uint8_t *)(x)) +# define LE_IN16(x) (((uint16_t)LE_IN8((uint8_t *)(x) + 1) << 8) | LE_IN8(x)) +# define LE_IN32(x) (((uint32_t)LE_IN16((uint8_t *)(x) + 2) << 16) | LE_IN16(x)) +# define LE_IN64(x) (((uint64_t)LE_IN32((uint8_t *)(x) + 4) << 32) | LE_IN32(x)) +# define htole16(x) LE_16(x) +# define le16toh(x) LE_IN16(x) +# define htole32(x) LE_32(x) +# define le32toh(x) LE_IN32(x) +# define htole64(x) LE_64(x) +# define le64toh(x) LE_IN64(x) + #else # include [FILE:522:patches/patch-src_lib_OpenEXR_ImfSystemSpecific.h] --- src/lib/OpenEXR/ImfSystemSpecific.h.orig 2025-11-17 01:18:11 UTC +++ src/lib/OpenEXR/ImfSystemSpecific.h @@ -47,6 +47,8 @@ EXRAllocAligned (size_t size, size_t ali #elif defined(__INTEL_COMPILER) || defined(__ICL) || defined(__ICC) || \ defined(__ECC) return _mm_malloc (size, alignment); +#elif defined(__sun) + return memalign(alignment, size); #elif defined(_POSIX_C_SOURCE) && (_POSIX_C_SOURCE >= 200112L) void* ptr = 0; // With fortify_source on, just doing the (void) cast trick