notbugAs an Amazon Associate I earn from qualifying purchases.
Want a good read? Try FreeBSD Mastery: Jails (IT Mastery Book 15)
FreshPorts needs to find a new hosting provide willing to take a 2U chassis and host it free of charge. This is part of the FreshPorts project. Preferably in the Austin area. This is not a primary server, but it used for development.
Port details
Imath C++/Python lib of 2D/3D vector, matrix, math ops for computer graphics
3.1.5_1 math on this many watch lists=5 search for ports that depend on this port Find issues related to this port Report an issue related to this port View this port on Repology. pkg-fallout Version of this port present on the latest quarterly branch.
Maintainer: search for ports maintained by this maintainer
Port Added: 2021-04-12 00:36:08
Last Update: 2022-07-12 19:20:13
Commit Hash: d443494
People watching this port, also watch:: mkfontscale, font-misc-meltho, libraw, libinotify, libunwind
Also Listed In: devel graphics
SVNWeb : git : Homepage
pkg-plist: as obtained via: make generate-plist
Expand this list (99 items)
Collapse this list.
  1. @ldconfig
  2. /usr/local/share/licenses/Imath-3.1.5_1/
  3. /usr/local/share/licenses/Imath-3.1.5_1/LICENSE
  4. /usr/local/share/licenses/Imath-3.1.5_1/BSD3CLAUSE
  5. include/Imath/ImathBox.h
  6. include/Imath/ImathBoxAlgo.h
  7. include/Imath/ImathColor.h
  8. include/Imath/ImathColorAlgo.h
  9. include/Imath/ImathConfig.h
  10. include/Imath/ImathEuler.h
  11. include/Imath/ImathExport.h
  12. include/Imath/ImathForward.h
  13. include/Imath/ImathFrame.h
  14. include/Imath/ImathFrustum.h
  15. include/Imath/ImathFrustumTest.h
  16. include/Imath/ImathFun.h
  17. include/Imath/ImathGL.h
  18. include/Imath/ImathGLU.h
  19. include/Imath/ImathInt64.h
  20. include/Imath/ImathInterval.h
  21. include/Imath/ImathLine.h
  22. include/Imath/ImathLineAlgo.h
  23. include/Imath/ImathMath.h
  24. include/Imath/ImathMatrix.h
  25. include/Imath/ImathMatrixAlgo.h
  26. include/Imath/ImathNamespace.h
  27. include/Imath/ImathPlane.h
  28. include/Imath/ImathPlatform.h
  29. include/Imath/ImathQuat.h
  30. include/Imath/ImathRandom.h
  31. include/Imath/ImathRoots.h
  32. include/Imath/ImathShear.h
  33. include/Imath/ImathSphere.h
  34. include/Imath/ImathTypeTraits.h
  35. include/Imath/ImathVec.h
  36. include/Imath/ImathVecAlgo.h
  37. include/Imath/half.h
  38. include/Imath/halfFunction.h
  39. include/Imath/halfLimits.h
  40. lib/cmake/Imath/ImathConfig.cmake
  41. lib/cmake/Imath/ImathConfigVersion.cmake
  42. lib/cmake/Imath/ImathTargets-release.cmake
  43. lib/cmake/Imath/ImathTargets.cmake
  44. lib/
  45. lib/
  46. lib/
  47. lib/
  48. libdata/pkgconfig/Imath.pc
  49. @comment include/Imath/PyImath.h
  50. @comment include/Imath/PyImathAPI.h
  51. @comment include/Imath/PyImathAutovectorize.h
  52. @comment include/Imath/PyImathBasicTypes.h
  53. @comment include/Imath/PyImathBox.h
  54. @comment include/Imath/PyImathBoxArrayImpl.h
  55. @comment include/Imath/PyImathBufferProtocol.h
  56. @comment include/Imath/PyImathColor.h
  57. @comment include/Imath/PyImathColor3ArrayImpl.h
  58. @comment include/Imath/PyImathColor4Array2DImpl.h
  59. @comment include/Imath/PyImathColor4ArrayImpl.h
  60. @comment include/Imath/PyImathDecorators.h
  61. @comment include/Imath/PyImathEuler.h
  62. @comment include/Imath/PyImathExport.h
  63. @comment include/Imath/PyImathFixedArray.h
  64. @comment include/Imath/PyImathFixedArray2D.h
  65. @comment include/Imath/PyImathFixedArrayTraits.h
  66. @comment include/Imath/PyImathFixedMatrix.h
  67. @comment include/Imath/PyImathFixedVArray.h
  68. @comment include/Imath/PyImathFrustum.h
  69. @comment include/Imath/PyImathFun.h
  70. @comment include/Imath/PyImathLine.h
  71. @comment include/Imath/PyImathMathExc.h
  72. @comment include/Imath/PyImathMatrix.h
  73. @comment include/Imath/PyImathOperators.h
  74. @comment include/Imath/PyImathPlane.h
  75. @comment include/Imath/PyImathQuat.h
  76. @comment include/Imath/PyImathQuatOperators.h
  77. @comment include/Imath/PyImathRandom.h
  78. @comment include/Imath/PyImathShear.h
  79. @comment include/Imath/PyImathStringArray.h
  80. @comment include/Imath/PyImathStringArrayRegister.h
  81. @comment include/Imath/PyImathStringTable.h
  82. @comment include/Imath/PyImathTask.h
  83. @comment include/Imath/PyImathUtil.h
  84. @comment include/Imath/PyImathVec.h
  85. @comment include/Imath/PyImathVec2Impl.h
  86. @comment include/Imath/PyImathVec3ArrayImpl.h
  87. @comment include/Imath/PyImathVec3Impl.h
  88. @comment include/Imath/PyImathVec4ArrayImpl.h
  89. @comment include/Imath/PyImathVec4Impl.h
  90. @comment include/Imath/PyImathVecOperators.h
  91. @comment lib/
  92. @comment lib/
  93. @comment lib/
  94. @comment %%PYTHON_SITELIBDIR%%/
  95. @comment %%PYTHON_SITELIBDIR%%/
  96. @comment libdata/pkgconfig/PyImath.pc
  97. @owner
  98. @group
  99. @mode
Collapse this list.
Dependency lines:
  • Imath>0:math/Imath
To install the port:
cd /usr/ports/math/Imath/ && make install clean
To add the package, run one of these commands:
  • pkg install math/Imath
  • pkg install Imath
NOTE: If this package has multiple flavors (see below), then use one of them instead of the name specified above.
Flavors: there is no flavor information for this port.
Packages (timestamps in pop-ups are UTC):

NOTE: FreshPorts displays only information on required and default dependencies. Optional dependencies are not covered.
Build dependencies:
  1. cmake : devel/cmake
  2. ninja : devel/ninja
  3. pkgconf>=1.3.0_1 : devel/pkgconf
This port is required by:
for Libraries
  1. cad/PrusaSlicer
  2. devel/kio-extras
  3. editors/calligra
  4. games/pink-pony
  5. graphics/ImageMagick7
  6. graphics/ImageMagick7-nox11
  7. graphics/alembic
Expand this list (45 items / 38 hidden - sorry, this count includes any deleted ports)
  1. Collapse this list).
  2. graphics/ampasCTL
  3. graphics/appleseed
  4. graphics/blender
  5. graphics/blender-lts29
  6. graphics/cimg
  7. graphics/darktable
  8. graphics/darktable40
  9. graphics/exrtools
  10. graphics/gegl
  11. graphics/gimp-app
  12. graphics/gmic
  13. graphics/hugin
  14. graphics/kf5-kimageformats
  15. graphics/krita
  16. graphics/luminance-qt5
  17. graphics/opencolorio
  18. graphics/opencolorio-tools
  19. graphics/openexr
  20. graphics/openimageio
  21. graphics/openimageio-ociov1
  22. graphics/openshadinglanguage
  23. graphics/pixie
  24. graphics/py-opencolorio
  25. graphics/py-openimageio
  26. graphics/py-openshadinglanguage
  27. graphics/simpleviewer
  28. graphics/synfig
  29. graphics/synfigstudio
  30. graphics/vigra
  31. graphics/vips
  32. graphics/yafaray
  33. math/curv
  34. misc/openvdb
  35. science/opensph
  36. Collapse this list.

Deleted ports which required this port:

Expand this list of 4 deleted ports
  1. devel/synfig*
  2. graphics/blender-lts28*
  3. graphics/darktable38*
  4. graphics/jpeg-xl*
  5. Collapse this list of deleted ports.
* - deleted ports are only shown under the This port is required by section. It was harder to do for the Required section. Perhaps later...

Configuration Options:
Options name:


FreshPorts was unable to extract/find any pkg message
Master Sites:
Expand this list (1 items)
Collapse this list.
Collapse this list.
Port Moves
  • port moved here from graphics/ilmbase on 2021-04-11
    REASON: Ilmbase was split out into Imath and OpenEXR

Number of commits found: 14

Commit History - (may be incomplete: see SVNWeb link above for full details)
12 Jul 2022 19:20:13
 files touched by this commit commit hash:d443494a71b73dc543cc0eddec69a01d6280ce02  3.1.5_1
Matthias Andree (mandree) search for other commits by this committer
math/Imath: ensure PYTHON build with /usr/bin/python[3] links

When /usr/bin/python[3] symlinks are present (which is nonstandard), the
FindPython logic inside cmake will grab it over $PREFIX/bin/python[3],
but still identify (by default) /usr/local/lib/... as the sitelib path,
but goof up when calculating the relative path in case of /usr/bin vs
/usr/local/bin mismatch.

Fix: Provide ${PYTHON_CMD} through the cmake Python_EXECUTABLE
variable to avoid any ambiguities and pin the right executable.

I believe it should be safe to NOT bump PORTREVISION,
but I will fetch far and err on the safe side and bump it, because that
is easier than researching all possible paths how and where
Python paths might find their way into the resulting package.

The detailed report by Seneca helped identify and solve this issue, so:
Thanks to:	Seneca Cunningham <>

PR:		263341
Reported by:	D'Arcy J.M. Cain <>
Reported by:	Seneca Cunningham <>
MFH:		2022Q3
30 Mar 2022 20:47:31
 files touched by this commit commit hash:dfc2eea6431ac3eec344b5ad84d54ee84a3adfcc  3.1.5
Matthias Andree (mandree) search for other commits by this committer
math/Imath: bugfix/docfix update to v3.1.5

- [#244] Fix 32-bit x86 build failure with 16c instructions
- [#241] Move numeric_limits specializations into half.h
- [#236] Change references to "master" branch to "main"

Full Changelog:

MFH skipped, we are just two days before 2022Q2.
27 Jan 2022 01:52:22
 files touched by this commit commit hash:7981412b9959044d16e9501fb1554c383d86d891  3.1.4
Matthias Andree (mandree) search for other commits by this committer
math/Imath: update to 3.1.4 (bug/doc fixes)


MFH:	2022Q1
03 Sep 2021 14:33:49
 files touched by this commit commit hash:bd4b70bb8df6a7648b85ae1f8b31817e69ee1305  3.1.3
Matthias Andree (mandree) search for other commits by this committer
math/Imath: update to Version 3.1.3

MFH:		2021Q3
03 Aug 2021 18:19:13
 files touched by this commit commit hash:1a25d81709eda9e3e7ba087b80f072602455299b  3.1.2
Matthias Andree (mandree) search for other commits by this committer
math/Imath: v3.1.2 update improves *intrin.h use

Upstream change: Improve handling of #include <*intrin.h>
22 Jul 2021 09:21:15
 files touched by this commit commit hash:ee38e2fa7a0e04a1e69647dd2c44e27e24fdab53  3.1.1
Matthias Andree (mandree) search for other commits by this committer
math/Imath: update to v3.1.1, waiving local patch

files/patch-eabc884d079d26afcead5128f7b093978d239ada.diff is no longer
needed - it is the sole change from v3.1.0 and I had previously cherry-
picked it from the upstream Git repo.
17 Jul 2021 09:17:58
 files touched by this commit commit hash:f82a33af02bc85af38e635092f72ebf9cc363c2e  3.1.0
Matthias Andree (mandree) search for other commits by this committer
math/Imath: Update to v3.1.0


This will require some minor changes to ports that depend on it.
03 Jul 2021 05:01:44
 files touched by this commit commit hash:0c024593d3727ce476352e0d529e6eb4e6ebbc6c  3.0.5
Matthias Andree (mandree) search for other commits by this committer
math/Imath: update to v3.0.5

02 Jun 2021 18:20:15
 files touched by this commit commit hash:c61d92a8368ebb54ae8a4da698c05f549d4b0ebd  3.0.4
Matthias Andree (mandree) search for other commits by this committer
math/Imath: update to v3.0.4

Release note:
"Patch release that corrects a problem with the release version number
of v3.0.2."
22 May 2021 07:45:52
 files touched by this commit commit hash:0aafc89d155c434dc9c32436442ccd9e002674e6  3.0.3
Matthias Andree (mandree) search for other commits by this committer
graphics/openexr: math/Imath: update to v3.0.3

Only upstream change is an install-fix that had previously been
cherry-picked by the FreeBSD port already.

Besides the version no., no impact on Imath or OpenEXR code, so
no PORTREVISION bumps of our users this time.
18 May 2021 17:11:12
 files touched by this commit commit hash:5ff95b962e88c8cdfd37855f9fc9d20229227d45  3.0.2
Matthias Andree (mandree) search for other commits by this committer
math/Imath: update to 3.0.2

removes patches cherry-picked from post-3.0.1 upstream

08 May 2021 09:52:43
 files touched by this commit commit hash:bce7a5281d73fdb32cea90cd144056d78cea8bc2  3.0.1_1
Matthias Andree (mandree) search for other commits by this committer
math/Imath: relax user to C++11, regression fix

Cherry-pick an upstream fix to relax users to C++11, only the
Imath code itself requires C++14.

Cherry-pick an upstream fix for a regression in succf()/predf().

While here, run tests in parallel and clean up for portclippy.
12 Apr 2021 21:10:46
 files touched by this commit commit hash:0c8a1a6d2bfc516b19dbd5c2f2c8a774cb118ba7  3.0.1
Matthias Andree (mandree) search for other commits by this committer
math/Imath: fix build with PYTHON option

- substitute Python version into pkg-plist
- depend on NumPy

Reported by:	olgeni@
12 Apr 2021 00:33:18
 files touched by this commit commit hash:05044ea01992c28028cc87f374560aad1b6c595d  3.0.1
Matthias Andree (mandree) search for other commits by this committer
math/Imath: new port (replaces graphics/ilmbase)

Patch series to update OpenEXR and ports that depend on ilmbase/OpenEXR
coming up.

Imath is a basic, light-weight, and efficient C++ representation of 2D and 3D
vectors and matrices and other simple but useful mathematical objects,
functions, and data types common in computer graphics applications, including
the "half" 16-bit floating-point type.

Imath also includes optional python bindings for all types and functions,
including optimized implementations of vector and matrix arrays.

Imath was originally developed at Industrial Light & Magic in the early 2000's
and was originally distributed as open source as a part of the OpenEXR project.

Imath continues to be maintained as a sub-project of OpenEXR, which is now a
project of the Academy Software Foundation. See the OpenEXR project's for more information about how the project operates.


Number of commits found: 14