Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 921515 - app-office/libreoffice-bin-7.5.6.2 stable: unslotted dev-cpp/libcmis dependency
Summary: app-office/libreoffice-bin-7.5.6.2 stable: unslotted dev-cpp/libcmis dependency
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Andreas K. Hüttel
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-01-06 20:13 UTC by CaptainBlood
Modified: 2024-01-07 09:19 UTC (History)
1 user (show)

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


Attachments
build log (useful?) (dev-cpp:libcmis-0.6.2:20240107-024610.log.gz,14.72 KB, application/gzip)
2024-01-07 02:55 UTC, CaptainBlood
Details
emerge --info (unrequested) (emerge.info,7.42 KB, text/plain)
2024-01-07 03:01 UTC, CaptainBlood
Details

Note You need to log in before you can comment on or make changes to this bug.
Description CaptainBlood 2024-01-06 20:13:31 UTC
>=dev-cpp/libcmis-0.5.2-r2 in ebuild causes reslotting from :0.5 to :0
which is wrong here.

Reproducible: Always
Comment 1 Greg Kubaryk 2024-01-06 21:49:41 UTC
Please elaborate, then reopen if necessary. In the future, please provide information with the initial bug report instead of making us ask for it, this is getting a bit repetitive.
Comment 2 Robert Spillner 2024-01-07 00:29:13 UTC
There is a dependency for >=dev-cpp/libcmis-0.5.2-r2 in the ebuild.

The library is used by /usr/lib64/libreoffice/program/libucpcmis1lo.so:

> ldd /usr/lib64/libreoffice/program/libucpcmis1lo.so:
       ...
       libcmis-0.5.so.5 => /usr/lib64/libcmis-0.5.so.5 (0x00007f83ca7bc000)
       ...

Now libcmis-0.6.2 has been stabilized and is naturally emerged as a successor to libcmis-0.5.2 since it fullfils the dependency in the libreoffice-bin ebuild. Yet it does not resolve the linked library of the file above. So portage will (rightfully) preserve the old so-files from libcmis:0.5. But that means this is an incorrect dependency in the libreoffice-bin ebuild.

So you need to make a slotted dependency in the libreoffice-bin ebuild for the 0.5 slot. Of course, it would even be better to recompile libreoffice-bin to have it link to libcmis-0.6 if there are no important API changes, so we needn't install both slots together.
Comment 3 CaptainBlood 2024-01-07 02:42:16 UTC
reserved-rebuild

 * IMPORTANT: 4 config files in '/etc/portage' need updating.
 * See the CONFIGURATION FILES and CONFIGURATION FILES UPDATE TOOLS
 * sections of the emerge man page to learn how to update config files.

These are the packages that would be merged, in reverse order:

Calculating dependencies  ..... done!
Dependency resolution took 12.96 s (backtrack: 0/20).

Nothing to merge; quitting.
localhost ~ # emerge -1 -K -uDNUv world

 * IMPORTANT: 4 config files in '/etc/portage' need updating.
 * See the CONFIGURATION FILES and CONFIGURATION FILES UPDATE TOOLS
 * sections of the emerge man page to learn how to update config files.

These are the packages that would be merged, in reverse order:

Calculating dependencies  ....... done!
Dependency resolution took 15.10 s (backtrack: 0/20).

[nomerge       ] app-office/libreoffice-bin-7.5.6.2::gentoo  USE="-gnome -java -kde" CPU_FLAGS_X86="sse2" PYTHON_SINGLE_TARGET="python3_11" 
[nomerge       ]  dev-cpp/libcmis-0.6.2:0/0.6::gentoo [0.5.2-r2:0.5::gentoo] USE="-man -test -tools" 
[blocks b      ]   dev-cpp/libcmis:0.5 ("dev-cpp/libcmis:0.5" is soft blocking dev-cpp/libcmis-0.6.2)
[uninstall     ]    dev-cpp/libcmis-0.5.2-r2:0.5::gentoo  USE="-man -test -tools" 
[binary  NS    ]  dev-cpp/libcmis-0.6.2:0/0.6::gentoo [0.5.2-r2:0.5::gentoo] USE="-man -test -tools" 0 KiB

Total: 1 package (1 in new slot, 1 binary, 1 uninstall), Size of downloads: 0 KiB
Conflict: 1 block (all satisfied)

>>> Emerging binary (1 of 1) dev-cpp/libcmis-0.6.2::gentoo
 * libcmis-0.6.2-1.gpkg.tar MD5 SHA1 size ;-) ...                        [ ok ]
>>> Extracting info
>>> Extracting dev-cpp/libcmis-0.6.2

>>> Installing (1 of 1) dev-cpp/libcmis-0.6.2::gentoo
 * checking 45 files for package collisions
>>> Merging dev-cpp/libcmis-0.6.2 to /
--- /usr/
--- /usr/share/
--- /usr/share/doc/
>>> /usr/share/doc/libcmis-0.6.2/
>>> /usr/share/doc/libcmis-0.6.2/AUTHORS.lzma
>>> /usr/share/doc/libcmis-0.6.2/README.md.lzma
>>> /usr/share/doc/libcmis-0.6.2/NEWS.lzma
--- /usr/include/
>>> /usr/include/libcmis-0.6/
>>> /usr/include/libcmis-0.6/libcmis/
>>> /usr/include/libcmis-0.6/libcmis/libcmis-api.h
>>> /usr/include/libcmis-0.6/libcmis/repository.hxx
>>> /usr/include/libcmis-0.6/libcmis/session.hxx
>>> /usr/include/libcmis-0.6/libcmis/object-type.hxx
>>> /usr/include/libcmis-0.6/libcmis/allowable-actions.hxx
>>> /usr/include/libcmis-0.6/libcmis/property-type.hxx
>>> /usr/include/libcmis-0.6/libcmis/document.hxx
>>> /usr/include/libcmis-0.6/libcmis/object.hxx
>>> /usr/include/libcmis-0.6/libcmis/xmlserializable.hxx
>>> /usr/include/libcmis-0.6/libcmis/folder.hxx
>>> /usr/include/libcmis-0.6/libcmis/session-factory.hxx
>>> /usr/include/libcmis-0.6/libcmis/xml-utils.hxx
>>> /usr/include/libcmis-0.6/libcmis/oauth2-data.hxx
>>> /usr/include/libcmis-0.6/libcmis/property.hxx
>>> /usr/include/libcmis-0.6/libcmis/libcmis.hxx
>>> /usr/include/libcmis-0.6/libcmis/rendition.hxx
>>> /usr/include/libcmis-0.6/libcmis/exception.hxx
>>> /usr/include/libcmis-c-0.6/
>>> /usr/include/libcmis-c-0.6/libcmis-c/
>>> /usr/include/libcmis-c-0.6/libcmis-c/libcmis-c.h
>>> /usr/include/libcmis-c-0.6/libcmis-c/folder.h
>>> /usr/include/libcmis-c-0.6/libcmis-c/vectors.h
>>> /usr/include/libcmis-c-0.6/libcmis-c/error.h
>>> /usr/include/libcmis-c-0.6/libcmis-c/rendition.h
>>> /usr/include/libcmis-c-0.6/libcmis-c/oauth2-data.h
>>> /usr/include/libcmis-c-0.6/libcmis-c/property.h
>>> /usr/include/libcmis-c-0.6/libcmis-c/property-type.h
>>> /usr/include/libcmis-c-0.6/libcmis-c/types.h
>>> /usr/include/libcmis-c-0.6/libcmis-c/session.h
>>> /usr/include/libcmis-c-0.6/libcmis-c/libcmis-c-api.h
>>> /usr/include/libcmis-c-0.6/libcmis-c/session-factory.h
>>> /usr/include/libcmis-c-0.6/libcmis-c/object.h
>>> /usr/include/libcmis-c-0.6/libcmis-c/repository.h
>>> /usr/include/libcmis-c-0.6/libcmis-c/document.h
>>> /usr/include/libcmis-c-0.6/libcmis-c/allowable-actions.h
>>> /usr/include/libcmis-c-0.6/libcmis-c/object-type.h
--- /usr/lib64/
>>> /usr/lib64/libcmis-0.6.so.6.1.1
--- /usr/lib64/pkgconfig/
>>> /usr/lib64/pkgconfig/libcmis-0.6.pc
>>> /usr/lib64/pkgconfig/libcmis-c-0.6.pc
>>> /usr/lib64/libcmis-0.6.so -> libcmis-0.6.so.6.1.1
>>> /usr/lib64/libcmis-c-0.6.so.6.0.0
>>> /usr/lib64/libcmis-0.6.so.6 -> libcmis-0.6.so.6.1.1
>>> /usr/lib64/libcmis-c-0.6.so.6 -> libcmis-c-0.6.so.6.0.0
>>> /usr/lib64/libcmis-c-0.6.so -> libcmis-c-0.6.so.6.0.0
>>> dev-cpp/libcmis-0.6.2 merged.
>>> Regenerating /etc/ld.so.cache...

>>> Completed (1 of 1) dev-cpp/libcmis-0.6.2::gentoo

>>> Uninstalling dev-cpp/libcmis-0.5.2-r2::gentoo

 dev-cpp/libcmis
    selected: 0.5.2-r2 
   protected: none 
     omitted: 0.6.2 

All selected packages: =dev-cpp/libcmis-0.5.2-r2

>>> 'Selected' packages are slated for removal.
>>> 'Protected' and 'omitted' packages will not be removed.

>>> Unmerging dev-cpp/libcmis-0.5.2-r2...
>>> needed   sym /usr/lib64/libcmis-0.5.so.5
>>> needed   obj /usr/lib64/libcmis-0.5.so.5.0.0
<<<          obj /usr/share/doc/libcmis-0.5.2-r2/README.md.lzma
<<<          obj /usr/share/doc/libcmis-0.5.2-r2/NEWS.lzma
<<<          obj /usr/share/doc/libcmis-0.5.2-r2/AUTHORS.lzma
<<<          obj /usr/lib64/pkgconfig/libcmis-c-0.5.pc
<<<          obj /usr/lib64/pkgconfig/libcmis-0.5.pc
<<<          obj /usr/lib64/libcmis-c-0.5.so.5.0.0
<<<          sym /usr/lib64/libcmis-c-0.5.so.5
<<<          sym /usr/lib64/libcmis-c-0.5.so
<<<          sym /usr/lib64/libcmis-0.5.so
<<<          obj /usr/include/libcmis-c-0.5/libcmis-c/vectors.h
<<<          obj /usr/include/libcmis-c-0.5/libcmis-c/types.h
<<<          obj /usr/include/libcmis-c-0.5/libcmis-c/session.h
<<<          obj /usr/include/libcmis-c-0.5/libcmis-c/session-factory.h
<<<          obj /usr/include/libcmis-c-0.5/libcmis-c/repository.h
<<<          obj /usr/include/libcmis-c-0.5/libcmis-c/rendition.h
<<<          obj /usr/include/libcmis-c-0.5/libcmis-c/property.h
<<<          obj /usr/include/libcmis-c-0.5/libcmis-c/property-type.h
<<<          obj /usr/include/libcmis-c-0.5/libcmis-c/object.h
<<<          obj /usr/include/libcmis-c-0.5/libcmis-c/object-type.h
<<<          obj /usr/include/libcmis-c-0.5/libcmis-c/oauth2-data.h
<<<          obj /usr/include/libcmis-c-0.5/libcmis-c/libcmis-c.h
<<<          obj /usr/include/libcmis-c-0.5/libcmis-c/libcmis-c-api.h
<<<          obj /usr/include/libcmis-c-0.5/libcmis-c/folder.h
<<<          obj /usr/include/libcmis-c-0.5/libcmis-c/error.h
<<<          obj /usr/include/libcmis-c-0.5/libcmis-c/document.h
<<<          obj /usr/include/libcmis-c-0.5/libcmis-c/allowable-actions.h
<<<          obj /usr/include/libcmis-0.5/libcmis/xmlserializable.hxx
<<<          obj /usr/include/libcmis-0.5/libcmis/xml-utils.hxx
<<<          obj /usr/include/libcmis-0.5/libcmis/session.hxx
<<<          obj /usr/include/libcmis-0.5/libcmis/session-factory.hxx
<<<          obj /usr/include/libcmis-0.5/libcmis/repository.hxx
<<<          obj /usr/include/libcmis-0.5/libcmis/rendition.hxx
<<<          obj /usr/include/libcmis-0.5/libcmis/property.hxx
<<<          obj /usr/include/libcmis-0.5/libcmis/property-type.hxx
<<<          obj /usr/include/libcmis-0.5/libcmis/object.hxx
<<<          obj /usr/include/libcmis-0.5/libcmis/object-type.hxx
<<<          obj /usr/include/libcmis-0.5/libcmis/oauth2-data.hxx
<<<          obj /usr/include/libcmis-0.5/libcmis/libcmis.hxx
<<<          obj /usr/include/libcmis-0.5/libcmis/libcmis-api.h
<<<          obj /usr/include/libcmis-0.5/libcmis/folder.hxx
<<<          obj /usr/include/libcmis-0.5/libcmis/exception.hxx
<<<          obj /usr/include/libcmis-0.5/libcmis/document.hxx
<<<          obj /usr/include/libcmis-0.5/libcmis/allowable-actions.hxx
<<<          dir /usr/share/doc/libcmis-0.5.2-r2
--- !empty   dir /usr/share/doc
--- !empty   dir /usr/share
--- !empty   dir /usr/lib64/pkgconfig
--- !empty   dir /usr/lib64
<<<          dir /usr/include/libcmis-c-0.5/libcmis-c
<<<          dir /usr/include/libcmis-c-0.5
<<<          dir /usr/include/libcmis-0.5/libcmis
<<<          dir /usr/include/libcmis-0.5
--- !empty   dir /usr/include
--- !empty   dir /usr
>>> Regenerating /etc/ld.so.cache...

>>> Completed (1 of 1) dev-cpp/libcmis-0.5.2-r2::gentoo

 * GNU info directory index is up-to-date.

!!! existing preserved libs:
>>> package: dev-cpp/libcmis-0.5.2-r2
 *  - /usr/lib64/libcmis-0.5.so.5
 *  - /usr/lib64/libcmis-0.5.so.5.0.0
 *      used by /usr/lib64/libreoffice/program/libucpcmis1lo.so (app-office/libreoffice-bin-7.5.6.2)
Use emerge @preserved-rebuild to rebuild packages using these libraries

 * IMPORTANT: 41 config files in '/etc' need updating.
 * See the CONFIGURATION FILES and CONFIGURATION FILES UPDATE TOOLS
 * sections of the emerge man page to learn how to update config files.
 * After world updates, it is important to remove obsolete packages with
 * emerge --depclean. Refer to `man emerge` for more information.
Comment 4 CaptainBlood 2024-01-07 02:55:26 UTC
Created attachment 881581 [details]
build log (useful?)
Comment 5 CaptainBlood 2024-01-07 03:01:46 UTC
Created attachment 881584 [details]
emerge --info (unrequested)
Comment 6 Eli Schwartz 2024-01-07 08:50:43 UTC
I wonder why libcmis' slot even changed? It seems to install libcmis-0.6.pc and /usr/include/libcmis-0.6 etc. which implies that slotting as :0.5 / :0.6 would work as expected, and it avoids the issue of needing to recompile libreoffice(-bin), which I'd tend to assume was the original motivation for using a slot.
Comment 7 Larry the Git Cow gentoo-dev 2024-01-07 09:19:24 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=79e5d9c6673d924ab9f6ad3964d6c533d5217ad3

commit 79e5d9c6673d924ab9f6ad3964d6c533d5217ad3
Author:     Andreas Sturmlechner <asturm@gentoo.org>
AuthorDate: 2024-01-07 09:17:27 +0000
Commit:     Andreas Sturmlechner <asturm@gentoo.org>
CommitDate: 2024-01-07 09:19:10 +0000

    app-office/libreoffice-bin: Pin to dev-cpp/libcmis:0.5
    
    Closes: https://bugs.gentoo.org/921515
    Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>

 .../libreoffice-bin-7.5.6.2-r1.ebuild              | 262 +++++++++++++++++++++
 1 file changed, 262 insertions(+)

Additionally, it has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0bde4cedefa81d7d8b5f764c9cffce8782ba3894

commit 0bde4cedefa81d7d8b5f764c9cffce8782ba3894
Author:     Andreas Sturmlechner <asturm@gentoo.org>
AuthorDate: 2024-01-07 09:18:28 +0000
Commit:     Andreas Sturmlechner <asturm@gentoo.org>
CommitDate: 2024-01-07 09:19:11 +0000

    app-office/libreoffice-bin: Drop 7.5.6.2-r0
    
    Bug: https://bugs.gentoo.org/921515
    Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>

 .../libreoffice-bin/libreoffice-bin-7.5.6.2.ebuild | 262 ---------------------
 1 file changed, 262 deletions(-)