1 # Buildsheet autogenerated by ravenadm tool -- Do not edit.
6 KEYWORDS= graphics devel
8 SDESC[std]= High dynamic-range (HDR) image file format
9 HOMEPAGE= https://www.openexr.com/
13 SITES[main]= GITHUB/AcademySoftwareFoundation:openexr:v3.2.4
14 DISTFILE[1]= generated:main
22 OPTIONS_AVAILABLE= none
23 OPTIONS_STANDARD= none
25 BUILD_DEPENDS= Imath:dev:std
27 BUILDRUN_DEPENDS= Imath:primary:std
28 libdeflate:primary:std
29 EXRUN[tools]= openexr:primary:std
30 EXRUN[dev]= Imath:dev:std
33 USES= cpe cmake pkgconfig zlib c++:primary
35 LICENSE= BSD3CLAUSE:primary
36 LICENSE_FILE= BSD3CLAUSE:{{WRKSRC}}/LICENSE.md
39 FPC_EQUIVALENT= graphics/openexr
45 CMAKE_ARGS= -DCMAKE_INSTALL_PREFIX={{PREFIX}}
46 -DOPENEXR_IS_SUBPROJECT=1
47 -DBUILD_SHARED_LIBS:BOOL=ON
48 VAR_OPSYS[sunos]= CFLAGS=-D__EXTENSIONS__
51 # ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/*-3_2.so
52 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/exr*
54 ${MKDIR} ${STAGEDIR}${STD_EXAMPLESDIR}
55 ${MV} ${STAGEDIR}${STD_DOCDIR}/examples/* ${STAGEDIR}${STD_EXAMPLESDIR}/
56 ${RM} -r ${STAGEDIR}${STD_DOCDIR}
58 [FILE:1302:descriptions/desc.primary]
59 OpenEXR is a high dynamic-range (HDR) image file format developed by
60 Industrial Light & Magic for use in computer imaging applications.
62 OpenEXR is used by ILM on all motion pictures currently in production.
63 The first movies to employ OpenEXR were Harry Potter and the Sorcerers
64 Stone, Men in Black II, Gangs of New York, and Signs. Since then, OpenEXR
65 has become ILM's main image file format.
67 OpenEXR's features include:
68 * Higher dynamic range and color precision than existing 8- and 10-bit
70 * Support for 16-bit floating-point, 32-bit floating-point, and 32-bit
71 integer pixels. The 16-bit floating-point format, called "half", is
72 compatible with the half data type in NVIDIA's Cg graphics language and
73 is supported natively on their new GeForce FX and Quadro FX 3D graphics
75 * Multiple lossless image compression algorithms. Some of the included
76 codecs can achieve 2:1 lossless compression ratios on images with film
78 * Extensibility. New compression codecs and image types can easily be added
79 by extending the C++ classes included in the OpenEXR software
80 distribution. New image attributes (strings, vectors, integers, etc.) can
81 be added to OpenEXR image headers without affecting backward compatibility
82 with existing OpenEXR applications.
85 [FILE:37:descriptions/desc.tools]
86 This package contains OpenEXR tools.
90 81e6518f2c4656fdeaf18a018f135e96a96e7f66dbe1c1f05860dd94772176cc 18856440 AcademySoftwareFoundation-openexr-3.2.4.tar.gz
93 [FILE:397:manifests/plist.primary]
95 libIex-%%MAJOR%%.so.%%SOMAJOR%%
96 libIex-%%MAJOR%%.so.%%SOVERSION%%
97 libIlmThread-%%MAJOR%%.so.%%SOMAJOR%%
98 libIlmThread-%%MAJOR%%.so.%%SOVERSION%%
99 libOpenEXR-%%MAJOR%%.so.%%SOMAJOR%%
100 libOpenEXR-%%MAJOR%%.so.%%SOVERSION%%
101 libOpenEXRCore-%%MAJOR%%.so.%%SOMAJOR%%
102 libOpenEXRCore-%%MAJOR%%.so.%%SOVERSION%%
103 libOpenEXRUtil-%%MAJOR%%.so.%%SOMAJOR%%
104 libOpenEXRUtil-%%MAJOR%%.so.%%SOVERSION%%
107 [FILE:3086:manifests/plist.dev]
135 ImfChannelListAttribute.h
138 ImfChromaticitiesAttribute.h
139 ImfCompositeDeepScanLine.h
141 ImfCompressionAttribute.h
147 ImfDeepImageChannel.h
151 ImfDeepImageStateAttribute.h
152 ImfDeepScanLineInputFile.h
153 ImfDeepScanLineInputPart.h
154 ImfDeepScanLineOutputFile.h
155 ImfDeepScanLineOutputPart.h
156 ImfDeepTiledInputFile.h
157 ImfDeepTiledInputPart.h
158 ImfDeepTiledOutputFile.h
159 ImfDeepTiledOutputPart.h
165 ImfFlatImageChannel.h
169 ImfFloatVectorAttribute.h
173 ImfGenericInputFile.h
174 ImfGenericOutputFile.h
178 ImfIDManifestAttribute.h
182 ImfImageChannelRenaming.h
191 ImfKeyCodeAttribute.h
193 ImfLineOrderAttribute.h
197 ImfMultiPartInputFile.h
198 ImfMultiPartOutputFile.h
209 ImfPreviewImageAttribute.h
211 ImfRationalAttribute.h
215 ImfSampleCountChannel.h
216 ImfStandardAttributes.h
219 ImfStringVectorAttribute.h
223 ImfTileDescriptionAttribute.h
230 ImfTimeCodeAttribute.h
242 openexr_compression.h
255 libIlmThread-%%MAJOR%%.so
257 libOpenEXR-%%MAJOR%%.so
259 libOpenEXRCore-%%MAJOR%%.so
261 libOpenEXRUtil-%%MAJOR%%.so
265 OpenEXRConfigVersion.cmake
266 OpenEXRTargets-%%CMAKE_BUILD_TYPE%%.cmake
268 lib/pkgconfig/OpenEXR.pc
271 [FILE:129:manifests/plist.tools]
285 [FILE:538:manifests/plist.examples]
286 share/examples/openexr/
289 deepTiledExamples.cpp
293 generalInterfaceExamples.cpp
294 generalInterfaceExamples.h
295 generalInterfaceTiledExamples.cpp
296 generalInterfaceTiledExamples.h
297 lowLevelIoExamples.cpp
300 multipartExamples.cpp
303 previewImageExamples.cpp
304 previewImageExamples.h
305 rgbaInterfaceExamples.cpp
306 rgbaInterfaceExamples.h
307 rgbaInterfaceTiledExamples.cpp
308 rgbaInterfaceTiledExamples.h
311 [FILE:523:patches/patch-cmake_OpenEXRSetup.cmake]
312 --- cmake/OpenEXRSetup.cmake.orig 2024-03-07 00:38:54 UTC
313 +++ cmake/OpenEXRSetup.cmake
314 @@ -78,9 +78,6 @@ set(OPENEXR_OUTPUT_SUBDIR OpenEXR CACHE
315 # but is pretty harmless to set globally
316 set(CMAKE_INCLUDE_CURRENT_DIR ON)
318 -# Suffix for debug configuration libraries
319 -# (if you should choose to install those)
320 -set(CMAKE_DEBUG_POSTFIX "_d" CACHE STRING "Suffix for debug builds")
322 if(NOT OPENEXR_IS_SUBPROJECT)
323 # Usual cmake option to build shared libraries or not, only overridden if OpenEXR is a top level project,
326 [FILE:411:patches/patch-src_lib_OpenEXRCore_internal__posix__file__impl.h]
327 --- src/lib/OpenEXRCore/internal_posix_file_impl.h.orig 2024-03-07 00:38:54 UTC
328 +++ src/lib/OpenEXRCore/internal_posix_file_impl.h
337 #if defined __USE_UNIX98 || defined __USE_XOPEN2K8 || \
338 (defined(_XOPEN_VERSION) && _XOPEN_VERSION >= 400)
339 # define CAN_USE_PREAD 1
342 [FILE:845:patches/patch-src_lib_OpenEXRCore_internal__xdr.h]
343 --- src/lib/OpenEXRCore/internal_xdr.h.orig 2024-03-07 00:38:54 UTC
344 +++ src/lib/OpenEXRCore/internal_xdr.h
346 # include <sys/endian.h>
347 # define EXR_HOST_IS_NOT_LITTLE_ENDIAN (__BYTE_ORDER != __LITTLE_ENDIAN)
349 +#elif defined(__sun)
351 +# include <sys/byteorder.h>
352 +# define EXR_HOST_IS_NOT_LITTLE_ENDIAN 1
353 +# define LE_IN8(x) *((uint8_t *)(x))
354 +# define LE_IN16(x) (((uint16_t)LE_IN8((uint8_t *)(x) + 1) << 8) | LE_IN8(x))
355 +# define LE_IN32(x) (((uint32_t)LE_IN16((uint8_t *)(x) + 2) << 16) | LE_IN16(x))
356 +# define LE_IN64(x) (((uint64_t)LE_IN32((uint8_t *)(x) + 4) << 32) | LE_IN32(x))
357 +# define htole16(x) LE_16(x)
358 +# define le16toh(x) LE_IN16(x)
359 +# define htole32(x) LE_32(x)
360 +# define le32toh(x) LE_IN32(x)
361 +# define htole64(x) LE_64(x)
362 +# define le64toh(x) LE_IN64(x)
369 [FILE:522:patches/patch-src_lib_OpenEXR_ImfSystemSpecific.h]
370 --- src/lib/OpenEXR/ImfSystemSpecific.h.orig 2024-03-07 00:38:54 UTC
371 +++ src/lib/OpenEXR/ImfSystemSpecific.h
372 @@ -47,6 +47,8 @@ EXRAllocAligned (size_t size, size_t ali
373 #elif defined(__INTEL_COMPILER) || defined(__ICL) || defined(__ICC) || \
375 return _mm_malloc (size, alignment);
376 +#elif defined(__sun)
377 + return memalign(alignment, size);
378 #elif defined(_POSIX_C_SOURCE) && (_POSIX_C_SOURCE >= 200112L)
380 // With fortify_source on, just doing the (void) cast trick