Opened 9 months ago

Closed 9 months ago

#68328 closed defect (fixed)

openexr: dylib names change with each release, requiring rebuilds of all dependents

Reported by: mascguy (Christopher Nielsen) Owned by: mascguy (Christopher Nielsen)
Priority: Normal Milestone:
Component: ports Version: 2.8.1
Keywords: Cc: MarcusCalhoun-Lopez (Marcus Calhoun-Lopez), JGoldstone (Joseph Goldstone)
Port: openexr

Description

While this is something we can live with, it would be preferable for ABI-compatible releases to not change the dylib name each time.

Issue filed with upstream, per the following:

Issue 1573 - macOS: OpenEXR dylib names: changed with each release, breaking dependent binaries

Change History (6)

comment:1 Changed 9 months ago by mascguy (Christopher Nielsen)

Summary: openexr: dylib names changes with each release, requiring rebuilds of all dependentsopenexr: dylib names change with each release, requiring rebuilds of all dependents

comment:2 Changed 9 months ago by jmroot (Joshua Root)

Are you sure the releases are ABI compatible? The install_name appears to be correctly using the soversion, not the full version of the software:

% otool -D /opt/local/lib/libOpenEXR.dylib
/opt/local/lib/libOpenEXR.dylib:
/opt/local/lib/libOpenEXR-3_1.30.dylib

And they appear to have a good understanding of library versioning based on e.g. this commit.

comment:3 in reply to:  2 Changed 9 months ago by mascguy (Christopher Nielsen)

Replying to jmroot:

Are you sure the releases are ABI compatible?

That was one of the question posed in the upstream issue. So if the answer is no, then no worries.

But let's see where the discussion goes. (And @JGoldstone is CCed on this ticket, for visibility.)

comment:4 Changed 9 months ago by JGoldstone (Joseph Goldstone)

Thanks for keeping me Cc:'d, and of course I saw the discussion over on the OpenEXR list. You saw the email from Nick and from Larry; I would make the analogy to Python, with a yearly release that has (typically) some ABI changes and is reflected in the second digit, and considerably more frequent, ABI-preserving changes in the third digit. For us to change the first digit, which Larry mentions as being 'more major than major' — that would be the equivalent of the Python 2 -> Python 3 transition. Or close. I don't think we've permanently foresworn the idea, as they seem to have, but like them we can't envision anything that would be sufficiently earth-shaking.

But I'm bothering to add a comment here mostly to thank you, to express my extreme gratitude that MacPorts is tracking OpenEXR (and other ASWF projects, I believe) closely again.

comment:5 in reply to:  4 Changed 9 months ago by mascguy (Christopher Nielsen)

Replying to JGoldstone:

But I'm bothering to add a comment here mostly to thank you, to express my extreme gratitude that MacPorts is tracking OpenEXR (and other ASWF projects, I believe) closely again.

Our pleasure, and please thank the team for their continuing help and partnership!

comment:6 Changed 9 months ago by mascguy (Christopher Nielsen)

Resolution: fixed
Status: assignedclosed
Note: See TracTickets for help on using tickets.