Problem with cmake 2.8 and FindOpenSSl.cmake module shipped with kde
Alexander Neundorf
neundorf at kde.org
Mon Dec 21 21:46:36 CET 2009
On Monday 21 December 2009, ctrlaltca wrote:
> Hi, I'm a developer of KVIrc, a project that uses kde as an optional
> component.
> A fedora packager reported us a problem compiling kvirc with cmake 2.8
> (https://svn.kvirc.de/kvirc/ticket/655); after a lot of investigation,
> we found out that the problem was cmake being fooled in using both kde's
> and cmake's bundled FindOpenSSL.cmake modules.
> -- full explanation follows --
> In out CMakeLists.txt, we call these FIND_PACKAGE:
>
> FIND_PACKAGE(Qt4)
> FIND_PACKAGE(KDE4)
> FIND_PACKAGE(OpenSSL)
>
> FindQt4 will check openssl's presence using cmake's bundled module,
> while the others will use kde's module (kde's CMakeLists.txt enforces
> the use of its internal modules).
> Since kde's FindOpenSSL.cmake is based on cmake2.6 version and its
> internals are changed in cmake 2.8, the mixed usage of the two modules
> won't work (OPENSSL_LIBRARIES will be empty).
>
> Our workaround has been placing FIND_PACKAGE(KDE4) before everything
> else, forcing the use of kde's cmake modules everywhere.
> -- end of full explanation --
>
> An easy way to avoid such problems will be not to include in kde a
> custom copy of FindOpenSSL.cmake since cmake already bundles a copy of
> this module.
> Is this solution practicable?
In principle, yes.
KDE requires cmake 2.6.2, which also has a FindOpenSSL.cmake. Attached you can
find the diff between the KDE version and the one from cmake 2.6.2, so as
long as we require 2.6.2 we need it AFAICT.
Also attached you can find the diff between KDEs current version and the one
from cmake 2.8.0, which ash even more changes.
Somebody should try to get them in sync again (full compatibility for the
cmake version has to be kept, and all features of the KDE version have to be
kept), and then, once our and CMake's version are the same again (i.e. not
before cmake 2.8.1), we can remove our version as soon as we depend on at
least this version of cmake.
So, this is nothing we can do quickly.
Alex
-------------- next part --------------
A non-text attachment was scrubbed...
Name: FindOpenSSL.cmake.patch
Type: text/x-diff
Size: 3310 bytes
Desc: not available
Url : http://mail.kde.org/pipermail/kde-buildsystem/attachments/20091221/3a7dce0c/attachment.bin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: FindOpenSSL.cmake-2.8.0.patch
Type: text/x-diff
Size: 5400 bytes
Desc: not available
Url : http://mail.kde.org/pipermail/kde-buildsystem/attachments/20091221/3a7dce0c/attachment-0001.bin
More information about the Kde-buildsystem
mailing list