# Buildsheet autogenerated by ravenadm tool -- Do not edit. NAMEBASE= openexr VERSION= 3.1.1 KEYWORDS= graphics devel VARIANTS= standard SDESC[standard]= High dynamic-range (HDR) image file format HOMEPAGE= https://www.openexr.com/ CONTACT= nobody DOWNLOAD_GROUPS= main SITES[main]= GITHUB/AcademySoftwareFoundation:openexr:v3.1.1 DISTFILE[1]= generated:main DF_INDEX= 1 SPKGS[standard]= complete primary examples OPTIONS_AVAILABLE= none OPTIONS_STANDARD= none BUILDRUN_DEPENDS= Imath:single:standard USES= cpe cmake pkgconfig zlib c++:primary LICENSE= BSD3CLAUSE:primary LICENSE_FILE= BSD3CLAUSE:{{WRKSRC}}/LICENSE.md LICENSE_SCHEME= solo FPC_EQUIVALENT= graphics/openexr SOVERSION= 3_1 PLIST_SUB= MAJOR=3_1 CMAKE_ARGS= -DCMAKE_INSTALL_PREFIX={{PREFIX}} -DOPENEXR_IS_SUBPROJECT=1 VAR_OPSYS[sunos]= CFLAGS=-D__EXTENSIONS__ post-install: # ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/*-3_1.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:125:distinfo] 045254e201c0f87d1d1a4b2b5815c4ae54845af2e6ec0ab88e979b5fdb30a86e 25588029 AcademySoftwareFoundation-openexr-3.1.1.tar.gz [FILE:3044:manifests/plist.primary] bin/ exr2aces exrenvmap exrheader exrinfo exrmakepreview exrmaketiled exrmultipart exrmultiview exrstdattr 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 IlmThreadSemaphore.h ImfAcesFile.h ImfArray.h ImfAttribute.h ImfBoxAttribute.h ImfCRgbaFile.h ImfChannelList.h ImfChannelListAttribute.h ImfCheckFile.h ImfChromaticities.h ImfChromaticitiesAttribute.h ImfCompositeDeepScanLine.h ImfCompression.h ImfCompressionAttribute.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 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 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_conf.h openexr_context.h openexr_debug.h openexr_decode.h openexr_encode.h openexr_errors.h openexr_part.h openexr_std_attr.h lib/ libIex-%%MAJOR%%.a libIlmThread-%%MAJOR%%.a libOpenEXR-%%MAJOR%%.a libOpenEXRCore-%%MAJOR%%.a libOpenEXRUtil-%%MAJOR%%.a lib/cmake/OpenEXR/ OpenEXRConfig.cmake OpenEXRConfigVersion.cmake OpenEXRTargets-%%CMAKE_BUILD_TYPE%%.cmake OpenEXRTargets.cmake lib/pkgconfig/OpenEXR.pc [FILE:416:manifests/plist.examples] share/examples/openexr/ drawImage.cpp drawImage.h generalInterfaceExamples.cpp generalInterfaceExamples.h generalInterfaceTiledExamples.cpp generalInterfaceTiledExamples.h lowLevelIoExamples.cpp lowLevelIoExamples.h main.cpp namespaceAlias.h previewImageExamples.cpp previewImageExamples.h rgbaInterfaceExamples.cpp rgbaInterfaceExamples.h rgbaInterfaceTiledExamples.cpp rgbaInterfaceTiledExamples.h [FILE:522:patches/patch-cmake_OpenEXRSetup.cmake] --- cmake/OpenEXRSetup.cmake.orig 2021-07-31 19:57:32 UTC +++ cmake/OpenEXRSetup.cmake @@ -67,9 +67,6 @@ set(OPENEXR_OUTPUT_SUBDIR OpenEXR CACHE # but is pretty harmless to set globally set(CMAKE_INCLUDE_CURRENT_DIR ON) -# Suffix for debug configuration libraries -# (if you should choose to install those) -set(CMAKE_DEBUG_POSTFIX "_d" CACHE STRING "Suffix for debug builds") if(NOT OPENEXR_IS_SUBPROJECT) # Usual cmake option to build shared libraries or not, only overriden if OpenEXR is a top level project, [FILE:411:patches/patch-src_lib_OpenEXRCore_internal__posix__file__impl.h] --- src/lib/OpenEXRCore/internal_posix_file_impl.h.orig 2021-07-31 19:57:32 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:839:patches/patch-src_lib_OpenEXRCore_internal__xdr.h] --- src/lib/OpenEXRCore/internal_xdr.h.orig 2021-07-31 19:57:32 UTC +++ src/lib/OpenEXRCore/internal_xdr.h @@ -64,6 +64,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:554:patches/patch-src_lib_OpenEXR_ImfSystemSpecific.h] --- src/lib/OpenEXR/ImfSystemSpecific.h.orig 2021-07-31 19:57:32 UTC +++ src/lib/OpenEXR/ImfSystemSpecific.h @@ -45,6 +45,8 @@ EXRAllocAligned (size_t size, size_t ali return _aligned_malloc (size, alignment); #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