New "kuriikwsfiltereng_private" library added in !1401 has no version or soversion, isn't really very private
!1401 (merged) added a new shared library called libkuriikwsfiltereng_private
. However, it was not given a VERSION or SOVERSION, so on install on Linux, you just get a file /usr/lib64/libkuriikwsfiltereng_private.so
(whereas you'd expect something like /usr/lib64/libkuriikwsfiltereng_private.so.6
). Unversioned .so
s are usually development libraries, so in Fedora, this got packaged in the kf6-kio-devel
package (which is the logical place for unversioned .so
files); the kf6-kio-widgets
package got a dependency on the library (as it should), which means installing kf6-kio-widgets
pulls in a bunch of development packages.
At the very least, I think, the library should have a set_target_properties
block in CMakeLists.txt
like every other library kio provides, like the one for e.g. KF6KIOGui:
set_target_properties(KF6KIOGui PROPERTIES
VERSION ${KIO_VERSION}
SOVERSION ${KIO_SOVERSION}
EXPORT_NAME KIOGui
)
I don't know if the EXPORT_NAME
is necessary here, but I think the other two things should be set.
I am not really an expert Library Guy or C(++) coder, but this seems kinda fishy to me in other ways too. Just sticking "private" in the name of a library that is, in all other respects, a system shared library isn't...usually...how we do private libraries, is it? Shouldn't it be stuck off in the plugins dir like e.g. the filewidgets library, or something?