# 4/7/2021

### Attending:

* Cary Phillips
* Christina Tempelaar-Lietz
* Joseph Goldstone
* Kimball Thurston
* Larry Gritz
* Nick Porcino
* Peter Hillman
* Stela Espindola

### Discussion:

Cmake targets provide wrong include dirs and libraries #136

* CMake:

  * Kimball: Can we simplify further? I tried to replicate behavior of autoconf.

  * It's already been simplfied, but if anyone can point to any
    features that can be removed, please do.

  * Should we backport the CMake setup from 2.5 to 2.4? Nick: It
    should be possible.

  * Required version of cmake? Imath PR
    [#138](https://github.com/AcademySoftwareFoundation/Imath/pull/138)
    suggests setting the minimum at 3.10 instead of 3.12.
  
  * Kimball: python bindings require 3.12, so technically we could
    require 3.12 only if compiling the python bindings.

  * Larry: It’s too complicated to sort out all the scenarios, easier
    to just pick a more modern version and require that.
  
  * Nick: CMP077 improves handling of non-cached variabes and is
    necessary to make Vstudio and Xcode liveable. 3.12 is the last bad
    version. 3.13 is the first version that enables CMP077.
  
  * Larry: 3.13 is the first with -B -S

  * Nick: submoduling is becoming more common. 

  * Larry: we shouldn’t downgrade and then find a problem and change our minds.

  * Larry: it’s a nothing-burger to install cmake, it shouldn't be a
    problem to require anyone a more modern version.
  
  * Kimball: How to suggest to people to use the standard FindPackage?
    Nvidia has a crazy FindOpenEXR for Optix.

* VFX reference platform:

  * USD is using a new feature of TBB that requires VP 2019.

  * Everybody’s got to compile USD these days.

  * Can we forget about 2017 and 2018? Seems so.


* Iex:

  * Kimball: can we combine all of OpenEXR into a single library?
  
  * Cary: I would consider retiring Iex completely, just have it throw std::exceptions.
  
  * Larry: Those kind of changes require a lot of work by downstream
    projects. Better to be cautious. Changes like that should be at a
    4.0 break.

* Imath PR [#136](https://github.com/AcademySoftwareFoundation/Imath/pull/136)

  * Nick: The variables that he refers to refer to interface
    libraries, but we don’t have transitive inclusions.

  * Peter: He’s looking for the compile flags, but looking for them in
    the wrong place.

* New WIP C Core:

  * KDT: I have most of the C library side of things ready to go. It’s
    getting close. Merge to master?

  * Cary: It’s purely additional, doesn't modify existing code, so it
    should be fine. But best to make an initial release as a beta.
  
* C version of half

  * Kimball: I couldn't help myself. A guy came up with much smaller
    version of the half to float conversion. It produces bitwise
    identical results to current version, but with a much smaller
    lookup table, combined with some shift operations.

  * Nick: have you tried it on godbolt?

  * Peter: You can always construct a test that is slower, if your
    test access the lookup table sequentially to avoid cache
    thrashing.  But on average it may be faster.

  * Go ahead and submit, we can play with it.

* Kimball: time to start doing the fp16 extensions.

* Metadata

  * Joseph: The best way to determine which of the camera metadata the
    in PR
    [#880](https://github.com/AcademySoftwareFoundation/openexr/pull/880)
    is to talk to users of it and find out what they want. Usually not
    an option because the users aren't available to us, or won’t
    talk. Proposal is in, a metadata spreadsheet comparing SMPTE
    standard and the current reference standard. ASC definitely wants
    to pick this up. We were trying to do everything the ACES
    container was trying to do, but we should drop that. We can drop
    the problematic ones, only bringin the good ones.

