On Monday, May 04, 2015 12:23:32 Kevin Funk wrote: > Heya, > > I'm wondering why, for instance, ktexteditor_version.h is installed to > $PREFIX/include/KF5 instead of $PREFIX/include/KF5/KTextEditor. > > This currently leads to confusing behavior when trying to include this > header if two versions of KTextEditor are installed in different locations. > > Suppose the two KTE installs: > 1) /usr/include/KF5/ktexteditor_version.h > 2) /home/kfunk/devel/install/kf5/include/KF5/ktexteditor_version.h > > Now when including this header in one of my source files (1) is picked up > although CMake found KTextEditor from (2). And this is because the CMake > config files always append /usr/include/KF5 in > INTERFACE_INCLUDE_DIRECTORIES for all frameworks.
More specific: Frameworks which have been installed into /usr pull in /usr/include/KF5, of course. > The compiler invocation looks like this: > /usr/lib/ccache/c++ ... -isystem /usr/include/KF5/ThreadWeaver -isystem > /usr/include/KF5 -isystem ... -isystem > /home/kfunk/devel/install/kf5/include/KF5/KTextEditor ... -c > /home/kfunk/devel/src/kf5/extragear/kdevelop/kdevplatform/language/codegen/a > pplychangeswidget.cpp > > (The first framework implicitly pulls in /usr/include/KF5) > > Now you could say "this is wrong" b/c I'm using both distro packages and > self- compiled versions of frameworks. -- Is it? > > The issue could be easily fixed by moving the myframework_version.h into > $PREFIX/include/KF5/$FRAMEWORK/, no? > > Greets -- Kevin Funk | kf...@kde.org | http://kfunk.org
signature.asc
Description: This is a digitally signed message part.
_______________________________________________ Kde-frameworks-devel mailing list Kde-frameworks-devel@kde.org https://mail.kde.org/mailman/listinfo/kde-frameworks-devel