graphics/openexr*: update to 3.4.16 bugfix release
"v3.4.16 fixes a bug which created unreadable DWAB files in certain
circumstances. There is also a fix to prevent 'undefined behavior'
warnings with the BytesAttribute"
Changelog: https://github.com/AcademySoftwareFoundation/openexr/releases/tag/v3.4.16
PR: 299085
Pull request: https://github.com/freebsd/freebsd-ports/pull/631
MFH: 2026Q4
graphics/openexr*: security fix update to v3.4.15
"v3.4.15 fixes two memory issues when parsing IDManifests. Corrupt
or maliciously formed OpenEXR images could trigger excessive memory
allocation, but only in code which decodes the idmanifest attribute.
Other code is unaffected, even when handling files with idmanifest
attributes [...] CVEs have been requested for these issues."
<https://github.com/AcademySoftwareFoundation/openexr/releases/tag/v3.4.15>
CVEs are not yet communicated.
Changelog: https://github.com/AcademySoftwareFoundation/openexr/blob/v3.4.15/CHANGES.md#version-3415-august-21-2026
Pull request: https://github.com/freebsd/freebsd-ports/pull/594
MFH: 2026Q3
PR: 297717
graphics/openexr*: Security update to v3.4.5 and i386 fix
"Patch release that fixes an incorrect size check in
istream_nonparallel_read that could lead to a buffer overflow on invalid
input data."
Also fix i386 self-tests by adding -msse2: i386 builds require SSE2, but
the upstream cmake stuff does not enable this, so use CFLAGS_i386.
To prevent people seeing SIGILL crashes down late at run-time,
check if the CPU is sse2-capable by querying the clang compiler from
the pre-install script (pkg-plist's @preexec). Suggested by diizzy@.
Other than that we could use the cpuid or the lscpu port instead, but
let's for now assume everything that wants to run OpenEXR also has a
working cc that is clang and has -march=native and gives us CPU details).
(GCC also gives us this but will use a different output format.)
While here, make failed tests verbose through ctest's environment so we
can see what's up from the build log already. (We need to go through
this indirection because our cmake.mk's :testing feature wants to go
through the test target instead of calling ctest directly.)
Changelog: https://github.com/AcademySoftwareFoundation/openexr/releases/tag/v3.4.5
Security: 716d25a6-0fdc-11f1-bfdf-ff9355aecb00
MFH: 2026Q1
graphics/openexr: fix build on Sandy Bridge CPUs
OpenEXR attempts to use F16C intrinsics when AVX available and
at least one of these is true: F16C available, GCC used, or clang used.
Intel Sandy Bridge processors do have AVX extensions,
but no F16C instruction set extension, so compilers (clang 19, 20, gcc 14)
complain:
work/openexr-3.4.4/src/lib/OpenEXRCore/unpack.c:37:18:
error: always_inline function '_mm256_cvtph_ps' requires target feature 'f16c',
but would be inlined into function 'half_to_float_buffer'
that is compiled without support for 'f16c'
37 | out, _mm256_cvtph_ps (_mm_loadu_si128 ((const __m128i*) in)));
| ^
Not bumping PORTREVISION because this is not a supported configuration.
https://github.com/AcademySoftwareFoundation/openexr/issues/2231
Reported by: "UnitedMarsupials"
MFH: 2025Q4
graphics/openexr: use official WITH_DEBUG=yes fix
We've developed an officially accepted solution with upstream and
upstream reporter of the issue that prompted the change that broke our
DEBUG builds, so let's switch to the official change to minimize
differences from upstream.
https://github.com/AcademySoftwareFoundation/openexr/issues/1981
https://github.com/AcademySoftwareFoundation/openexr/pull/2166/commits/efa3b861ab0ab515ec7923ce02500acf667eabb0
PR: 290615
Note I am not updating to v3.4.2 because it does not contain changes
for FreeBSD - it contains a fix for Windows, and the other Imath change
is unnecessary for us because our ports system handles the requisite.
graphics/openexr*: update to v3.4.0
Adds lossless compression with High Throughput JPEG-2000 (HTJ2K)
encoding, which adds an OpenJPH dependency.
The OneAPI TBB option isn't provided because it massively increases
self-test time on FreeBSD 14.3-amd64 and I don't see how production
use would be different. This is with an AMD Ryzen processor.
ChangeLog: https://github.com/AcademySoftwareFoundation/openexr/releases/tag/v3.4.0
math/Imath: update to v3.2.0 bugfix release
ChangeLog: https://github.com/AcademySoftwareFoundation/Imath/releases/tag/v3.2.0
Note this changes the .so versioning again, so I'll again need to
do additional cleanups because people don't just depend on Imath.
This is unneeded extra work except in the situation of OpenEXR
which is co-developed with Imath by the upstream maintainer,
Academy Software Foundation (ASWF).
I have no intentions of MFH'ing this due to the .so versioning change.
graphics/openexr*: update to v3.3.5 bugfix release
Changelog: https://github.com/AcademySoftwareFoundation/openexr/releases/tag/v3.3.5
MFH: 2025Q3 (after a few days)
graphics/openexr-website-docs: unbreak and update to 3.3.2
And while here, decouple our PORTVERSION from the openexr version so we
don't break builds.
v3.3.2 seems to have a regression and causes a warning around Latest
News inserts on one site, so add -DSPHINX_OPTS= to override the default
of -W which means "treat warnings as errors", as of 3.3.2, I see one
warning.
graphics/openexr: Update to v3.3.2
We can now remove our patch to build the exrmetrics manpage.
ChangeLog: https://github.com/AcademySoftwareFoundation/openexr/releases/tag/v3.3.2
graphics/openexr*: upgrade to 3.3.1
ChangeLog: https://github.com/AcademySoftwareFoundation/openexr/releases/tag/v3.3.1
Also add a local docs/CMakeLists.txt patch to add an exrmetrics man
page, omission reported upstream to
https://github.com/AcademySoftwareFoundation/openexr/issues/1881
graphics/openexr*: upgrade to 3.3.0
This changes the ABI (but not the API) and .so file name,
so we will need to bump all PORTREVISIONs of users, and we'll also fix
graphics/ctl and multimedia/olive.
This is not going to be MFHd to 2024Q4 due to API change, and therefore
has also waited for 2024Q4 to branch before we committed this to main,
so as to avoid 2024Q4 breakage.
ChangeLog: https://github.com/AcademySoftwareFoundation/openexr/releases/tag/v3.3.0
PR: 281859
graphics/openexr: Only build test suite when requested
In order to avoid ctest performance regressions, we also required
commit cbee39bcd1a2472b8f3e24754f5bb3a3429b79a0 from PR 278533.
PR: 278500
graphics/openexr-website-docs: fix build with v3.2.4 changes
- share the distfiles directory and the NO_WRKSUBDIR
- update patch for updated upstream CMakeLists.txt infrastructure
graphics/openexr: update to bugfix release v3.2.4
ChangeLog: https://github.com/AcademySoftwareFoundation/openexr/blob/main/CHANGES.md#version-324-march-26-2024
ChangeLog: https://github.com/AcademySoftwareFoundation/openexr/blob/main/CHANGES.md#version-323-march-6-2024
Switch from auto-generated tarballs to those that use sigstore,
verify that -- see
https://github.com/AcademySoftwareFoundation/openexr/blob/main/SECURITY.md#signed-releases
and shuffle variables accordingly, including DISTFILES, EXTRACT_ONLY and NO_WRKSUBDIR updates.
graphics/openexr: fix post-extract to move testimages into place
...and avoid downloading in the configure phase.
Reported by: Tatsuki Makino
While here, revert TESTING_UNSAFE, which does not reproduce,
neither under WITH_TESTING=yes in make.conf in poudriere after "make
distclean".
Bump PORTREVISION.
graphics/openexr: update to v3.2.1
ChangeLog: https://github.com/AcademySoftwareFoundation/openexr/blob/v3.2.1/CHANGES.md#version-321-september-27-2023
with one additional patch to change deflate_LIBRARIES to
deflate_LINK_LIBRARIES in the cmake stuff in order to unbreak
the build.
Reported upstream: https://github.com/AcademySoftwareFoundation/openexr/issues/1571
Upstream intended to release v3.2.2 on short notice, but the efforts
appear to have stalled, so ship 3.2.1 with our local fix.
graphics/openexr: update to 3.2.0
- Also install manual pages (generated through help2man)
- The website (formerly known "DOCS" build) requires the "convert(1)"
tool, which is part of ImageMagick, which itself depends on OpenEXR.
To break the loop, split out the offline website build to a new
package, graphics/openexr-website-docs