-
Notifications
You must be signed in to change notification settings - Fork 77
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
PATCH to fix ilmbase 2.3.0 compatibility in lib/IlmCtlSimd/CtlSimdInst.cpp #71
Comments
This is the patch, inline for a quick glance:
|
Release notes: <https://github.com/openexr/openexr/releases/tag/v2.3.0> Adjust LIB_DEPENDS of all ports that require ilmbase or openexr to chase the new lower-case spelling of the name, and to omit the version from the library name to ease future maintenance. Bump PORTREVISION of all ports that depend on ilmbase or openexr directly, so that they all get rebuilt on upgrades. Add patches to graphics/ampasCTL to keep it alive, with (a) ilmbase now that its Iex::BaseExc class is no longer derived from std::string, details were given upstream through ampas/CTL#71 and (b) to unwind semicolon/;-lists in cmake that stem from openexr/ ilmbase pkg-config variables. (Note ampasCTL is unmaintained as FreeBSD port, and upstream, and I cannot run-time test it.) Poudriere build tests on 11.2-RELEASE-p1 amd64 of ALL ports depending directly or indirectly on ilmbase and/or openexr have passed without regressions. Thus invoking due diligence, I believe I have done the equivalent of an -exp run, and do not require approval for the dependency chases to third-party ports. git-svn-id: svn+ssh://svn.freebsd.org/ports/head@480374 35697150-7ecd-e111-bb59-0022644237b5
Release notes: <https://github.com/openexr/openexr/releases/tag/v2.3.0> Adjust LIB_DEPENDS of all ports that require ilmbase or openexr to chase the new lower-case spelling of the name, and to omit the version from the library name to ease future maintenance. Bump PORTREVISION of all ports that depend on ilmbase or openexr directly, so that they all get rebuilt on upgrades. Add patches to graphics/ampasCTL to keep it alive, with (a) ilmbase now that its Iex::BaseExc class is no longer derived from std::string, details were given upstream through ampas/CTL#71 and (b) to unwind semicolon/;-lists in cmake that stem from openexr/ ilmbase pkg-config variables. (Note ampasCTL is unmaintained as FreeBSD port, and upstream, and I cannot run-time test it.) Poudriere build tests on 11.2-RELEASE-p1 amd64 of ALL ports depending directly or indirectly on ilmbase and/or openexr have passed without regressions. Thus invoking due diligence, I believe I have done the equivalent of an -exp run, and do not require approval for the dependency chases to third-party ports.
Release notes: <https://github.com/openexr/openexr/releases/tag/v2.3.0> Adjust LIB_DEPENDS of all ports that require ilmbase or openexr to chase the new lower-case spelling of the name, and to omit the version from the library name to ease future maintenance. Bump PORTREVISION of all ports that depend on ilmbase or openexr directly, so that they all get rebuilt on upgrades. Add patches to graphics/ampasCTL to keep it alive, with (a) ilmbase now that its Iex::BaseExc class is no longer derived from std::string, details were given upstream through ampas/CTL#71 and (b) to unwind semicolon/;-lists in cmake that stem from openexr/ ilmbase pkg-config variables. (Note ampasCTL is unmaintained as FreeBSD port, and upstream, and I cannot run-time test it.) Poudriere build tests on 11.2-RELEASE-p1 amd64 of ALL ports depending directly or indirectly on ilmbase and/or openexr have passed without regressions. Thus invoking due diligence, I believe I have done the equivalent of an -exp run, and do not require approval for the dependency chases to third-party ports. git-svn-id: svn+ssh://svn.freebsd.org/ports/head@480374 35697150-7ecd-e111-bb59-0022644237b5
Release notes: <https://github.com/openexr/openexr/releases/tag/v2.3.0> Adjust LIB_DEPENDS of all ports that require ilmbase or openexr to chase the new lower-case spelling of the name, and to omit the version from the library name to ease future maintenance. Bump PORTREVISION of all ports that depend on ilmbase or openexr directly, so that they all get rebuilt on upgrades. Add patches to graphics/ampasCTL to keep it alive, with (a) ilmbase now that its Iex::BaseExc class is no longer derived from std::string, details were given upstream through ampas/CTL#71 and (b) to unwind semicolon/;-lists in cmake that stem from openexr/ ilmbase pkg-config variables. (Note ampasCTL is unmaintained as FreeBSD port, and upstream, and I cannot run-time test it.) Poudriere build tests on 11.2-RELEASE-p1 amd64 of ALL ports depending directly or indirectly on ilmbase and/or openexr have passed without regressions. Thus invoking due diligence, I believe I have done the equivalent of an -exp run, and do not require approval for the dependency chases to third-party ports. git-svn-id: svn+ssh://svn.freebsd.org/ports/head@480374 35697150-7ecd-e111-bb59-0022644237b5
Thanks for the patch, I had the same issue when trying to update IlmBase / OpenEXR to 2.3.0 (needed to compile with C++17 enabled). Is it planned to update CTL ? |
@remia, given that the latest commit has been made more than four years ago, personally I don't currently believe in CTL upgrades, and I am neither member of the development team nor speaking on their behalf, just guessing from observation. I posted the patch where it is more likely to be found. |
fixed by 80d175b |
ilmbase and OpenEXR 2.3.0 change
Iex::BaseExc
to no longer derive fromstd::string
, mentioned in the release notes here: https://github.com/openexr/openexr/releases/tag/v2.3.0This causes a compilation error on
lib/IlmCtlSimd/CtlSimdInst.cpp
when it propagates a caught exception, because there is no longer an implicit conversion fromIex::BaseExc
tostd::string
available.It appears as though the fix were to use
e.what()
instead ofe
, which is what the attached patch does.patch-lib_IlmCtlSimd_CtlSimdInst.cpp.txt
The text was updated successfully, but these errors were encountered: