TSC Meeting Notes 2021-02-25

Attending:

  • Cary Phillips

  • Christina Tempelaar-Lietz

  • Joseph Goldstone

  • Kimball Thurston

  • Larry Gritz

  • Nick Porcino

  • Peter Hillman

Discussion:

  • Larry: sorting out issues with identifying dependencies when you have more than one version of a library installed on a system. Our CI doesn't test this case. If OpenEXR is installed in /usr/include but you want to use another one, it's not getting the -I's in the right order.

  • Interop constructors:

    • Larry: I have a custom vector class that is already partially aware of Imath classes that's leading to compilation problems. Can probably get right of the old conversion constructs.

    • Nick: I just finished stripping out the last Eigen.

    • Larry: would like to test with MaterialX. They’re so far down their road that we probably can’t convince them to use Imath. But interop would be nice.

  • CLA's:

    • Christina: Epic is still in progress.

    • Kimball: Weta approval meeting is happening soon.

    • Joseph: No word from ARRI.

  • Symbol visibility:

    • Kimball: GitHub did something weird in rebasing/merging #868.

    • Linux is fine, Windows is fine, but macOS is not because it uses a different kind of multi-level symbol management. Not just clang, it’s specific to macOS.

    • Nick: Let's discuss with George ElKoura about what they did for USD.

    • Kimball: We should make the change in Imath. It's the Vec2,3,4 and Matrix classes that are the real issue.

  • Nick: still tripped up on the Windows install directory problem. If you specify an install directory, Imath libraries don’t go to the right place, they try to go to C:\Program FIles (x86)\Imath which is a cmake-ism for default installations, as opposed to a generally accepted best practice, in my opinion.

  • Nick: will look at the multiple python bindings.

  • Include path:

    • The modern "correct" thing to do is to #include <subdir/header.h> but most use of OpenEXR has never done this.

    • But at least the OpenEXR headers have Imf/Imath prefix strings, so it hasn't been a problem to install them in one directory.

    • Proposed fix: include -I for both include and include/OpenEXR.