On 2016.10.24 05:43, Ralf Habacker wrote:
Am 23.10.2016 um 10:46 schrieb Thomas Baumgart:
> I took a glimpse and this seems to make sense. Would then in
KMyMoney 4.8
> something like
>
> find_package(LibAlkimiaQt4)
> if (not found)
> find_package(LibAlkimia REQUIRED)
> endif()
>
> be possible to further automate for both scenarios? In case it is
found, we
> need to make sure the version check only applies to the Qt5 version
if found
> by that second find_packages() statement above, or am I missing
something?
In principle yes. While looking at this it comes to my mind if there
would be a better postfix.
Normally KF5 applications/libraries are packaged with a '5' prefix,
e.g
umbrello5
https://software.opensuse.org/search?utf8=%E2%9C%93&q=umbrello&search_devel=false&search_unsupported=false&baseproject=ALL)
or
krita5
(https://software.opensuse.org/search?utf8=%E2%9C%93&q=krita&search_devel=false&search_unsupported=false&baseproject=ALL)
So what about to install/package the qt5 based alkimia as alkimia5 and
let the Qt4 based using the current name alikima.
Because there is currently no libalkimia5 package available at least
in
opensuse (https://software.opensuse.org/package/libalkimia) there
would
be a good chance to have no more conflicts.
The libalkimia package at opensuse currently creates the following
rpm's
libalkimia<library-version>
libalkimia-devel
which would be for the Qt4 version the same
libalkimia<library-version>
libalkimia-devel
and for the Qt5 version
libalkimia5<library-version>
libalkimia5-devel
which results into
If(QT4_FOUND)
find_package(LibAlkimia)
else()
find_package(LibAlkimia5 REQUIRED)
endif()
Ralf
Not only must the package name not conflict, but they must not both
install the same files. I know all the .so files would be different,
but right now, things like the pkgconfig, cmake, and header files are
identically named. If you change the qt5 version, it will be important
to make sufficient announcement so any packager as well as any
application which uses the library knows to update. I do agree it is a
good idea, but it is just a bit difficult since there has already been
a release of a qt5 version with the old name.
Jack