[Kde-pim] [Digikam-devel] Akonadi Contact library: Targets not properly exported

Scarlett Clark scarlett.gately.clark at gmail.com
Fri Apr 8 13:41:37 UTC 2016


On Fri, Apr 8, 2016 at 5:38 AM, Gilles Caulier <caulier.gilles at gmail.com>
wrote:

> Hi Scarlet,
>
> -#include <Akonadi/Contact/ContactSearchJob>
> +#include <KF5/akonadi/contact/contactsearchjob.h>
>
> This patch sound like a wrong way to handle frameworks header. After all i
> never use #include <KF5/...> syntax, and there is no reason to do it.
>
> Using the .h file instead the camelcase version is not a problem, but both
> cases must work well in client application.
>
> Gilles Caulier
>

As I stated above I don't care HOW it is fixed. But someone NEEDS to fix
it. My patch above makes Digikam build. Period. I can certainly remove it,
but then you are back to a permanent build failure.
I am not a C++ programmer, my knowledge is minimal. I hate red jobs, so I
took time out of my vacation and fought with this for many days, as no one
else did.
Please fix it properly, anyone.
Thanks,
Scarlett

>
> 2016-04-07 3:01 GMT+02:00 Scarlett Clark <scarlett.gately.clark at gmail.com
> >:
>
> > It has to do with /path/to/include/KF5/path/to/camelcase , the key is
> > actually the KF5 folder.
> > If I patch  include/KF5/Path/To/Camelcase file it works, however the
> camel
> > case file does not find its own header.
> >
> >
> /srv/jenkins/install/ubuntu/x86_64/g++/kf5-qt5/kde/kdepimlibs/inst/usr/include/KF5/Akonadi/Contact/ContactSearchJob:1:46:
> fatal error: akonadi/contact/contactsearchjob.h: No such file or
> directory*22:47:37* compilation terminated.
> >
> > I can only assume the KF5 folder is involved again. So I tried to add KF5
> > to the ecm_generate_headers(PREFIX) but that has the effect of lower case
> > kf5 which also does not work, obviously.
> >
> > So I turned back to Digikam and patched:
> >
> > -#include <Akonadi/Contact/ContactSearchJob>
> > +#include <KF5/akonadi/contact/contactsearchjob.h>
> >
> > And finally we have a successful build.
> >
> >
> >
> https://build.kde.org/job/digikam%20master%20kf5-qt5/PLATFORM=Linux,compiler=gcc/68/console
> >
> > I do notice KDE_INSTALL_INCLUDEDIR_KF5 in kdepimlibs is likely what puts
> > in this KF5 folder?
> >
> > I do not know who is responsible here, but someone needs to fix something
> > :) I have exhausted my current C++ skills to get this far lol.
> >
> > I have added digikam to the conversation.
> > Cheers,
> > Scarlett
> >
> >
> > On Thu, Mar 31, 2016 at 11:48 PM, Ben Cooksley <bcooksley at kde.org>
> wrote:
> >
> >> On Thu, Mar 31, 2016 at 11:44 PM, Christophe Giboudeaux
> >> <cgiboudeaux at gmx.com> wrote:
> >> > On mercredi 30 mars 2016 20:19:29 CEST Ben Cooksley wrote:
> >> >> On Tue, Mar 29, 2016 at 10:46 PM, Sandro Knauß <sknauss at kde.org>
> >> wrote:
> >> >>
> >> >> Those are the header generation and installation routines - which do
> >> >> indeed look.
> >> >> What is missing in this case is the include path specification for
> the
> >> >> KF5::AkonadiContact target which CMake provides.
> >> >>
> >> >
> >> > The exported target is correct.
> >> > From KF5AkonadiContactTargets.cmake :
> >> >
> >> > set_target_properties(KF5::AkonadiContact PROPERTIES
> >> > INTERFACE_INCLUDE_DIRECTORIES
> >> >  "${_IMPORT_PREFIX}/include/KF5/Akonadi/Contact;
> >> >   ${_IMPORT_PREFIX}/include/KF5;
> >> >   ${_IMPORT_PREFIX}/include/KF5/akonadi/contact;
> >> >   ${_IMPORT_PREFIX}/include/KF5"
> >> >   INTERFACE_LINK_LIBRARIES
> "KF5::AkonadiCore;KF5::Contacts;Qt5::Widgets"
> >> > )
> >>
> >> Hmm, indeed that does look correct.
> >> I wonder why Digikam would fail to compile then:
> >>
> >> 19:24:09
> >>
> /home/jenkins/sources/digikam/kf5-qt5/utilities/kdesupport/akonadi/akonadiiface.cpp:47:44:
> >> fatal error: Akonadi/Contact/ContactSearchJob: No such file or
> >> directory
> >>
> >> Any ideas? (I assume Digikam is trying using to use AkonadiContact
> >> correctly)
> >>
> >> Cheers,
> >> Ben
> >>
> >> >
> >> > _______________________________________________
> >> > Kde-buildsystem mailing list
> >> > Kde-buildsystem at kde.org
> >> > https://mail.kde.org/mailman/listinfo/kde-buildsystem
> >> >
> >> _______________________________________________
> >> KDE PIM mailing list kde-pim at kde.org
> >> https://mail.kde.org/mailman/listinfo/kde-pim
> >> KDE PIM home page at http://pim.kde.org/
> >>
> >
> >
> > _______________________________________________
> > Digikam-devel mailing list
> > Digikam-devel at kde.org
> > https://mail.kde.org/mailman/listinfo/digikam-devel
> >
> >
> _______________________________________________
> KDE PIM mailing list kde-pim at kde.org
> https://mail.kde.org/mailman/listinfo/kde-pim
> KDE PIM home page at http://pim.kde.org/
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-buildsystem/attachments/20160408/16999dd5/attachment-0001.html>


More information about the Kde-buildsystem mailing list