Skip to content
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

Cherry-pick PRs and release notes for v3.0.2 #143

Merged
merged 11 commits into from
May 16, 2021

Conversation

cary-ilm
Copy link
Member

No description provided.

cary-ilm and others added 8 commits May 12, 2021 17:29
* Expose IMATH_LIB_VERSION_STRING, for easier diagnostics

Expose the IMATH_LIB_VERSION as a cpp define, along with
IMATH_VERSION, to aid in confirming what SOCURRENT.SOAGE.SOVERSION the
library is built with.

Signed-off-by: Cary Phillips <[email protected]>

* Add comment explaining IMATH_LIB_VERSION

Signed-off-by: Cary Phillips <[email protected]>
)

We were setting

    target_compile_features(${objlib} PUBLIC cxx_std_${IMATH_CXX_STANDARD})

The PUBLIC forced downstream projects that consume the
ImathConfig*.cmake exports to use C++ standard at least as recent as
what Imath used to build (which defaults to 14).

But this is unnecessary. There's nothing in Imath's headers that
requires anything beyond C++11. So this patch uses a more fine-grained
setting of target properties to express this more correctly. Now it
will be fine for a C++11 project to consume Imath (via its exported
configs) even if that Imath happened to be built with C++14.

This change is exactly the same as
AcademySoftwareFoundation/openexr#995

Signed-off-by: Larry Gritz <[email protected]>
And add more thorough test.

Signed-off-by: Cary Phillips <[email protected]>
* Clean up setting of Imath version

* Set the version via the project() statement in top-level
  CMakeLists.txt, so all version-related settings are close together
  in an obvious place. Deprecate config/version.cmake and move logic
  to top level
* New option IMATH_VERSION_EXTRA to hold "dev" for the master branch
* Simplfy logic for SOVERSION.SOAGE.SOREVISION (no more SOCURRENT)

Signed-off-by: Cary Phillips <[email protected]>

* find_package uses CMAKE_PROJECT_VERSION instead of IMATH_VERSION

And removed EXACT since IMATH_VERSION includes IMATH_VERISON_EXTRA.

Signed-off-by: Cary Phillips <[email protected]>

* Bump SOVERSION to 28

Signed-off-by: Cary Phillips <[email protected]>
Signed-off-by: Cary Phillips <[email protected]>
Signed-off-by: Cary Phillips <[email protected]>
@linux-foundation-easycla
Copy link

linux-foundation-easycla bot commented May 13, 2021

CLA Signed

The committers are authorized under a signed CLA.

CMakeLists.txt Outdated
set(IMATH_SOVERSION 28)
set(IMATH_SOAGE 0)
set(IMATH_SOREVISION 1)
set(IMATH_LIB_VERSION "${IMATH_SOVERSION}.${IMATH_SOAGE}.${IMATH_SOREVISION}")
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

same note about AGE/REVISION, I approved the other PR to resolve that

@@ -46,6 +46,9 @@
(uint32_t(IMATH_VERSION_MINOR) << 16) | \
(uint32_t(IMATH_VERSION_PATCH) << 8))

// IMATH_LIB_VERSION is the library API version: SOCURRENT.SOAGE.SOREVISION
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

same

@cary-ilm cary-ilm merged commit f2bcae6 into AcademySoftwareFoundation:RB-3.0 May 16, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants