Summary: | FindKdcraw.cmake is outdated and causes digiKam to fail building | ||
---|---|---|---|
Product: | [Applications] digikam | Reporter: | S. Burmeister <sven.burmeister> |
Component: | Portability-Cmake | Assignee: | Digikam Developers <digikam-bugs-null> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | aacid, adaptee, caulier.gilles, cfeck, dilfridge, lukas.schneiderbauer, mpyne, nucleo, pino, rdieter |
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | Other | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | 4.0.0 | |
Sentry Crash Report: |
Description
S. Burmeister
2012-12-19 14:21:05 UTC
I know this is a digikam issue but since they did not feel like changing anything for a year and not even now that they were asked, it seems more useful to ping kdelibs people to pull the change instead of relying on digikam folks to push it. See also bug 307213. I can't reproduce this, builds fine for me (the same cannot be said of libkipi issue bug #307213) Mind posting what errors/problems you encounter? You have to explicitely switch off building private/local libs and use current git, i.e. the digikam-software-collection. [ 241s] -- Found automoc4: /usr/bin/automoc4 [ 241s] -- Local kdegraphics libraries will be compiled... NO [ 241s] -- Handbooks will be compiled..................... YES [ 241s] -- Extract translations files..................... NO [ 241s] -- Translations will be compiled.................. YES [ 242s] -- Check Kdcraw library in local sub-folder... [ 242s] -- Check Kdcraw library using pkg-config... [ 242s] -- WARNING: you are using the obsolete 'PKGCONFIG' macro, use FindPkgConfig [ 242s] -- Found libkdcraw release >= 0.2.0 [ 242s] -- Found libkdcraw: /usr/lib/libkdcraw.so [ 242s] CMake Warning at extra/kipi-plugins/CMakeLists.txt:145 (MESSAGE): [ 242s] libkdcraw: Version information not found, your version is probably too old. [ 244s] -- ---------------------------------------------------------------------------------- [ 244s] -- kipi-plugins 3.0.0-rc dependencies results <http://www.digikam.org> [ 244s] -- [ 244s] -- libjpeg library found.................... YES [ 244s] -- libtiff library found.................... YES [ 244s] -- libpng library found..................... YES [ 244s] -- libkipi library found.................... YES [ 244s] -- libkexiv2 library found.................. YES [ 244s] -- libkdcraw library found.................. NO [ 244s] -- [ 244s] CMake Error at extra/kipi-plugins/CMakeLists.txt:88 (MESSAGE): [ 244s] kipi-plugins needs libkdcraw. You need to install the libkdcraw (version >= 2.2.0) library development package. [ 244s] Call Stack (most recent call first): [ 244s] extra/kipi-plugins/CMakeLists.txt:239 (PRINT_LIBRARY_STATUS) And, counter-example, http://kojipkgs.fedoraproject.org//packages/digikam/3.0.0/0.11.beta3.fc19/data/logs/i686/build.log building digikam-3.0.0-beta3 against kde-4.9.90, -- Check Kdcraw library in local sub-folder... -- Check Kdcraw library using pkg-config... -- WARNING: you are using the obsolete 'PKGCONFIG' macro, use FindPkgConfig -- Found libkdcraw release >= 0.2.0 -- Found libkdcraw: /usr/lib/libkdcraw.so CMake Warning at extra/kipi-plugins/CMakeLists.txt:140 (MESSAGE): libkdcraw: Version information not found, your version is probably too old. ... -- libkdcraw library found.................. YES ... and build continues to completion for me. Is that beta3 or today's git checkout? beta3 The offending commit was done after that. https://projects.kde.org/projects/extragear/graphics/digikam/repository/revisions/bd02b4969e00b0daa937712c8f14ab52b70320e4/diff OK, looks like the "fix" for bug #311310 indeed causes this regressed behavior Sound like this entry have been fixed with bug #311310 Please confirm. Fix have been applied to next digiKam 3.0.0-RC Gilles Caulier Nope. That bug(In reply to comment #10) > Sound like this entry have been fixed with bug #311310 > > Please confirm. Fix have been applied to next digiKam 3.0.0-RC No. That bug lists a "fix" from the 18. whereas this bug still fails with a git checkout from the 20. In fact bug #311310 causes the regression. This bug is fixed if digikam compiles with KDE SC 4.10 and without compiling local graphics libs. FYI Pino Toscano has updated the module in kdelibs KDE/4.10 branch and master (commits b0586b0e10c7e3bd9dcf3abc17c3974106a5bf1b and f89f934b2d895631725a086376cb555e8707a0be) I guess this can be resolved? (In reply to comment #13) > I guess this can be resolved? You can consider that, until the next time Gilles will make changes to the (uninstalled) version of FindKdcraw.cmake shipped in the libkdcraw sources, and make digikam rely on such changes. Really: the proper way to fix this Find*.cmake madness is just to have libkdcraw and the other libraries (libkipi, libkexiv2, libmediawiki, libkgeomap, libkface, libksane, libvkontakte) ship and install a *Config.cmake (e.g. KdcrawConfig.cmake) providing the own installation path, include dirs, full library/ies path, version, etc. An installed *Config.cmake file has always priority on a Find*.cmake, so having the libraries above mentioned switching to those would mean a) no more need to carry Find*.cmake around b) proper providing of own data, with no need to edit anything out of the library itself Gilles, there are various examples in KDE's code about providing such cmake configuration files instead of Find*.cmake, and you can always ask for help in the build system mailing list: kde-buildsystem@kde.org. Please fix this libraries mess, thanks. Not to pile on, but the corresponding libkipi bug to this one (bug 307213) has example code to generate and install a *Config.cmake file which could probably be easily adapted. I just checked and I forgot to actually include the corresponding .cmake.in file in my patch but I'll fix that up now for posterity. Marking fixed per comment #13 comment #14, no point in leaving this to linger... |