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. 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/applychangeswidget.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