Download raw body.
UPDATE: OpenImageIO 3.1.9.0
Here is an update to OpenImageIO 3.1.9.0.
ChangeLog
https://github.com/AcademySoftwareFoundation/OpenImageIO/releases/tag/v3.1.6.1
Index: Makefile
===================================================================
RCS file: /cvs/ports/graphics/openimageio/Makefile,v
retrieving revision 1.83
diff -u -p -u -p -r1.83 Makefile
--- Makefile 7 Sep 2025 16:33:46 -0000 1.83
+++ Makefile 10 Jan 2026 01:03:13 -0000
@@ -5,12 +5,11 @@ COMMENT = library for reading and writi
GH_ACCOUNT = AcademySoftwareFoundation
GH_PROJECT = OpenImageIO
-GH_TAGNAME = v3.0.8.1
+GH_TAGNAME = v3.1.9.0
PKGNAME = ${DISTNAME:L}
-REVISION = 1
-SHARED_LIBS += OpenImageIO 18.0
-SHARED_LIBS += OpenImageIO_Util 11.1
+SHARED_LIBS += OpenImageIO 19.0
+SHARED_LIBS += OpenImageIO_Util 12.0
CATEGORIES = graphics devel
@@ -23,7 +22,7 @@ WANTLIB += ${COMPILER_LIBCXX} GL GLU Iex
WANTLIB += OpenColorIO OpenEXR-3_4 OpenEXRCore-3_4 Qt6Core Qt6Gui
WANTLIB += Qt6OpenGL Qt6OpenGLWidgets Qt6Widgets avcodec avformat
WANTLIB += avutil bz2 c freetype gif heif jpeg jxl jxl_threads
-WANTLIB += m openjp2 png pugixml raw_r sharpyuv swscale tbb tiff
+WANTLIB += m openjp2 openjph png pugixml raw_r sharpyuv swscale tbb tiff
WANTLIB += webp webpdemux z
MODULES = devel/cmake \
@@ -32,7 +31,7 @@ MODULES = devel/cmake \
COMPILER = base-clang ports-gcc
-BUILD_DEPENDS = devel/fmt>=10.2.1 \
+BUILD_DEPENDS = devel/fmt \
devel/py-pybind11 \
devel/robin-map \
textproc/txt2man
@@ -44,10 +43,11 @@ LIB_DEPENDS = archivers/bzip2 \
graphics/jpeg \
graphics/libjxl \
graphics/libraw \
- graphics/libwebp>=1.5.0 \
+ graphics/libwebp \
graphics/opencolorio \
graphics/openexr \
graphics/openjp2 \
+ graphics/openjph \
graphics/png \
graphics/tiff \
math/imath \
Index: distinfo
===================================================================
RCS file: /cvs/ports/graphics/openimageio/distinfo,v
retrieving revision 1.25
diff -u -p -u -p -r1.25 distinfo
--- distinfo 21 Jul 2025 15:01:38 -0000 1.25
+++ distinfo 10 Jan 2026 01:03:13 -0000
@@ -1,2 +1,2 @@
-SHA256 (OpenImageIO-3.0.8.1.tar.gz) = G5sNJ+gCJDwapJC5UVgNEOi+ZFRZ+AgL+g7W8hPhCCo=
-SIZE (OpenImageIO-3.0.8.1.tar.gz) = 53129890
+SHA256 (OpenImageIO-3.1.9.0.tar.gz) = J4hicpjRDalGVG5+V8bWItke1E0RAYBYPf6CEMcYiYM=
+SIZE (OpenImageIO-3.1.9.0.tar.gz) = 53610865
Index: patches/patch-src_ffmpeg_imageio_ffmpeginput_cpp
===================================================================
RCS file: patches/patch-src_ffmpeg_imageio_ffmpeginput_cpp
diff -N patches/patch-src_ffmpeg_imageio_ffmpeginput_cpp
--- patches/patch-src_ffmpeg_imageio_ffmpeginput_cpp 21 Oct 2025 12:55:09 -0000 1.4
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,15 +0,0 @@
-Index: src/ffmpeg.imageio/ffmpeginput.cpp
---- src/ffmpeg.imageio/ffmpeginput.cpp.orig
-+++ src/ffmpeg.imageio/ffmpeginput.cpp
-@@ -581,7 +581,11 @@ bool
- FFmpegInput::close(void)
- {
- if (m_codec_context)
-+#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(61, 3, 100)
- avcodec_close(m_codec_context);
-+#else
-+ avcodec_free_context(&m_codec_context);
-+#endif
- if (m_format_context) {
- avformat_close_input(&m_format_context);
- av_free(m_format_context); // will free m_codec and m_codec_context
Index: patches/patch-src_heif_imageio_heifinput_cpp
===================================================================
RCS file: patches/patch-src_heif_imageio_heifinput_cpp
diff -N patches/patch-src_heif_imageio_heifinput_cpp
--- patches/patch-src_heif_imageio_heifinput_cpp 7 Jan 2026 10:05:13 -0000 1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,20 +0,0 @@
-Fix build with libheif 1.21
-https://github.com/AcademySoftwareFoundation/OpenImageIO/pull/4851
-
-Index: src/heif.imageio/heifinput.cpp
---- src/heif.imageio/heifinput.cpp.orig
-+++ src/heif.imageio/heifinput.cpp
-@@ -390,8 +390,13 @@ HeifInput::read_native_scanline(int subimage, int mipl
- #else
- int ystride = 0;
- #endif
-+#if LIBHEIF_NUMERIC_VERSION >= MAKE_LIBHEIF_VERSION(1, 20, 2, 0)
-+ const uint8_t* hdata = m_himage.get_plane2(heif_channel_interleaved,
-+ &ystride);
-+#else
- const uint8_t* hdata = m_himage.get_plane(heif_channel_interleaved,
- &ystride);
-+#endif
- if (!hdata) {
- errorfmt("Unknown read error");
- return false;
Index: patches/patch-src_heif_imageio_heifoutput_cpp
===================================================================
RCS file: patches/patch-src_heif_imageio_heifoutput_cpp
diff -N patches/patch-src_heif_imageio_heifoutput_cpp
--- patches/patch-src_heif_imageio_heifoutput_cpp 7 Jan 2026 10:05:13 -0000 1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,18 +0,0 @@
-Fix build with libheif 1.21
-https://github.com/AcademySoftwareFoundation/OpenImageIO/pull/4851
-
-Index: src/heif.imageio/heifoutput.cpp
---- src/heif.imageio/heifoutput.cpp.orig
-+++ src/heif.imageio/heifoutput.cpp
-@@ -155,7 +155,11 @@ HeifOutput::write_scanline(int y, int /*z*/, TypeDesc
- #else
- int hystride = 0;
- #endif
-+#if LIBHEIF_NUMERIC_VERSION >= MAKE_LIBHEIF_VERSION(1, 20, 2, 0)
-+ uint8_t* hdata = m_himage.get_plane2(heif_channel_interleaved, &hystride);
-+#else
- uint8_t* hdata = m_himage.get_plane(heif_channel_interleaved, &hystride);
-+#endif
- hdata += hystride * (y - m_spec.y);
- memcpy(hdata, data, hystride);
- return true;
Index: patches/patch-src_include_OpenImageIO_typedesc_h
===================================================================
RCS file: patches/patch-src_include_OpenImageIO_typedesc_h
diff -N patches/patch-src_include_OpenImageIO_typedesc_h
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-src_include_OpenImageIO_typedesc_h 10 Jan 2026 01:03:13 -0000
@@ -0,0 +1,15 @@
+fix(build): Fix building on OpenBSD
+342da8ee6ea9f914b61e5dc5f3242f0ced501fb7
+
+Index: src/include/OpenImageIO/typedesc.h
+--- src/include/OpenImageIO/typedesc.h.orig
++++ src/include/OpenImageIO/typedesc.h
+@@ -409,7 +409,7 @@ template<> struct BaseTypeFromC<uint64_t> { static con
+ template<> struct BaseTypeFromC<const uint64_t> { static constexpr TypeDesc::BASETYPE value = TypeDesc::UINT64; };
+ template<> struct BaseTypeFromC<int64_t> { static constexpr TypeDesc::BASETYPE value = TypeDesc::INT64; };
+ template<> struct BaseTypeFromC<const int64_t> { static constexpr TypeDesc::BASETYPE value = TypeDesc::INT64; };
+-#if defined(__GNUC__) && (ULONG_MAX == 0xffffffffffffffff) && !(defined(__APPLE__) && defined(__MACH__)) || defined(__NetBSD__)
++#if defined(__GNUC__) && (ULONG_MAX == 0xffffffffffffffff) && !(defined(__APPLE__) && defined(__MACH__)) && !defined(__OpenBSD__) || defined(__NetBSD__)
+ // Some platforms consider int64_t and long long to be different types, even
+ // though they are actually the same size.
+ static_assert(!std::is_same_v<unsigned long long, uint64_t>);
Index: pkg/PLIST
===================================================================
RCS file: /cvs/ports/graphics/openimageio/pkg/PLIST,v
retrieving revision 1.24
diff -u -p -u -p -r1.24 PLIST
--- pkg/PLIST 29 May 2025 23:46:46 -0000 1.24
+++ pkg/PLIST 10 Jan 2026 01:03:13 -0000
@@ -21,6 +21,7 @@ include/OpenImageIO/detail/
include/OpenImageIO/detail/farmhash.h
include/OpenImageIO/detail/fmt/
include/OpenImageIO/detail/fmt.h
+include/OpenImageIO/detail/fmt/base.h
include/OpenImageIO/detail/fmt/chrono.h
include/OpenImageIO/detail/fmt/core.h
include/OpenImageIO/detail/fmt/format-inl.h
@@ -37,6 +38,7 @@ include/OpenImageIO/fstream_mingw.h
include/OpenImageIO/function_view.h
include/OpenImageIO/half.h
include/OpenImageIO/hash.h
+include/OpenImageIO/image_span.h
include/OpenImageIO/image_view.h
include/OpenImageIO/imagebuf.h
include/OpenImageIO/imagebufalgo.h
@@ -45,6 +47,7 @@ include/OpenImageIO/imagebufalgo_util.h
include/OpenImageIO/imagecache.h
include/OpenImageIO/imageio.h
include/OpenImageIO/memory.h
+include/OpenImageIO/nsversions.h
include/OpenImageIO/oiioversion.h
include/OpenImageIO/optparser.h
include/OpenImageIO/parallel.h
@@ -82,6 +85,8 @@ lib/pkgconfig/OpenImageIO.pc
lib/python${MODPY_VERSION}/site-packages/OpenImageIO/
@so lib/python${MODPY_VERSION}/site-packages/OpenImageIO/OpenImageIO.${MODPY_PYC_MAGIC_TAG}so
lib/python${MODPY_VERSION}/site-packages/OpenImageIO/__init__.py
+lib/python${MODPY_VERSION}/site-packages/OpenImageIO/__init__.pyi
+lib/python${MODPY_VERSION}/site-packages/OpenImageIO/py.typed
@man man/man1/iconvert.1
@man man/man1/idiff.1
@man man/man1/igrep.1
UPDATE: OpenImageIO 3.1.9.0