Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 695964 - dev-libs/libffi-3.2.1 should get SLOT=6 for compatibility with older binaries
Summary: dev-libs/libffi-3.2.1 should get SLOT=6 for compatibility with older binaries
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo Toolchain Maintainers
URL:
Whiteboard:
Keywords: EBUILD
Depends on:
Blocks:
 
Reported: 2019-10-01 09:35 UTC by Timo Rothenpieler
Modified: 2019-10-01 19:29 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
libffi-3.2.1-r100.ebuild (libffi-3.2.1-r100.ebuild,2.29 KB, text/plain)
2019-10-01 09:51 UTC, Timo Rothenpieler
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Timo Rothenpieler 2019-10-01 09:35:25 UTC
I'm using Gentoo in a HPC environment. A lot of our users have large collections of self-compiled software in their homedirs.
A lot of that software is using libffi, and the stabilization of version 3.3 came with a soname bump, which in turn broke all that software.
I was also told that at least some binary software in the tree, for example dropbox, depends on the .6 soname.

A slotted version of dev-libs/libffi that provides only the libraries for use by old binaries would be very useful.
Comment 1 Timo Rothenpieler 2019-10-01 09:51:01 UTC
Created attachment 591498 [details]
libffi-3.2.1-r100.ebuild
Comment 2 Timo Rothenpieler 2019-10-01 10:02:06 UTC
(In reply to Timo Rothenpieler from comment #1)
> Created attachment 591498 [details]
> libffi-3.2.1-r100.ebuild

Might still need a dependency along the lines of !<dev-libs/libffi-3.3_rc0:0
Comment 3 Sergei Trofimovich (RETIRED) gentoo-dev 2019-10-01 18:45:16 UTC
That makes sense. The new style of providing binary-only packages is to provide libffi-compat package which installs only libffi.so / libffi.so.6 files.

One minor note:
maintaining software in home directories is out of scope of gentoo's package manager. There are many ways to break those.

Listing here ::gentoo (or overlay) packages that use libffi.so.6 is preferable. Would ease testing for me as well.
Comment 4 Sergei Trofimovich (RETIRED) gentoo-dev 2019-10-01 18:48:03 UTC
Example packages to follow are:
- sys-libs/libtermcap-compat
- dev-libs/openssl-compat
- sys-libs/libudev-compat
Comment 5 Larry the Git Cow gentoo-dev 2019-10-01 19:29:16 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=150f49cdb500318a543afebda095b3127fdc7f95

commit 150f49cdb500318a543afebda095b3127fdc7f95
Author:     Sergei Trofimovich <slyfox@gentoo.org>
AuthorDate: 2019-10-01 19:28:34 +0000
Commit:     Sergei Trofimovich <slyfox@gentoo.org>
CommitDate: 2019-10-01 19:29:09 +0000

    dev-libs/libffi-compat: new package, provides libffi.so.6
    
    There are still a few binary-only packages out there that rely on
    'libffi.so.6' presence. This package provides these libraries.
    No development headers here. Thus this library can co-exist with
    dev-libs/libffi:0/7 package.
    
    Ebuild is based on dev-libs/libffi. We can fast-stabilize it if
    in-tree stable packages do rely on libffi.so.6 (they should not).
    
    The patch is almost entirely by Timo Rothenpieler.
    I renamed a package and made a few minor tweaks.
    
    Fix-by: Timo Rothenpieler
    Reported-by: Timo Rothenpieler
    Closes: https://bugs.gentoo.org/695964
    Package-Manager: Portage-2.3.76, Repoman-2.3.17
    Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>

 dev-libs/libffi-compat/Manifest                    |  1 +
 .../files/libffi-3.1-darwin-x32.patch              | 22 +++++++
 .../files/libffi-3.2.1-complex-ia64.patch          | 41 ++++++++++++
 .../files/libffi-3.2.1-complex_alpha.patch         | 20 ++++++
 .../files/libffi-3.2.1-ia64-small-struct.patch     | 74 ++++++++++++++++++++++
 .../files/libffi-3.2.1-include-path-autogen.patch  | 56 ++++++++++++++++
 .../files/libffi-3.2.1-include-path.patch          | 39 ++++++++++++
 .../files/libffi-3.2.1-musl-emutramp.patch         | 31 +++++++++
 .../files/libffi-3.2.1-o-tmpfile-eacces.patch      | 17 +++++
 .../libffi-compat/libffi-compat-3.2.1-r3.ebuild    | 52 +++++++++++++++
 dev-libs/libffi-compat/metadata.xml                | 42 ++++++++++++
 11 files changed, 395 insertions(+)