Skip to content
This repository was archived by the owner on Jun 20, 2019. It is now read-only.

Comments

Update to DMD v2.081.2#715

Merged
ibuclaw merged 1 commit intoD-Programming-GDC:masterfrom
ibuclaw:syncstable
Aug 19, 2018
Merged

Update to DMD v2.081.2#715
ibuclaw merged 1 commit intoD-Programming-GDC:masterfrom
ibuclaw:syncstable

Conversation

@ibuclaw
Copy link
Member

@ibuclaw ibuclaw commented Aug 19, 2018

@belka-ew - These are the fixes to merge into the other release branches.

After this, I'm syncing master with dmd/master as per #704.

@belka-ew
Copy link
Contributor

belka-ew commented Aug 19, 2018

👍

@jpf91 requested to update DRUNTIME_SOVERSION and PHOBOS_SOVERSION in libphobos/configure.ac and libphobos/configure, otherwise shared libraries are named libgphobos.so.76.0.2 and libgdruntime.so.76.0.2.

@ibuclaw
Copy link
Member Author

ibuclaw commented Aug 19, 2018

Ah, right, done.

Copy link
Contributor

@belka-ew belka-ew left a comment

Choose a reason for hiding this comment

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

Still strange: libgphobos.so.81.0.2 and libgdruntime.so.81.0.2. DMD's Phobos is versioned as libphobos2.so.0.81.2. But it least it is clear what version it is.

@jpf91
Copy link
Contributor

jpf91 commented Aug 19, 2018

Thanks to both of you.

@belka-ew libgphobos.so.81.0.2 follows the libtool scheme: https://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html and the SONAME is libgphobos.so.81.

In the DMD case, the SONAME is libphobos.so.0.81 instead, so essentially we name the library libphobos.so and DMD names the library libphobos.so.0. The rest of the versioning is then similar, both use 81 as major/ABI version. I don't know if there is any special meaning to using the second vs third version component, we set 2 as the third component, dmd as the second. I guess the difference is in the Programs using the previous version may use the new version as drop-in replacement, but programs using the new version may use APIs not present in the previous one case? But I don't know how this actually works in detail...

@ibuclaw
Copy link
Member Author

ibuclaw commented Aug 19, 2018

I guess the difference is in the Programs using the previous version may use the new version as drop-in replacement, but programs using the new version may use APIs not present in the previous one case? But I don't know how this actually works in detail...

Sounds like you'll be relying on the assumption that no ABI breaking changes have occurred between versions.

@ibuclaw ibuclaw merged commit 322a828 into D-Programming-GDC:master Aug 19, 2018
@ibuclaw ibuclaw deleted the syncstable branch August 19, 2018 22:22
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants