Re: pkg-config files
On Thursday 26 December 2013, Alex Merry wrote: How much do we care about users of frameworks who don't use CMake? Do we want to provide pkg-config files? How easy is it to do so? (My personal answers would be: enough to put in a little effort, but not a huge one; yes, if it's easy; there is probably a helpful macro, and if not ECM would benefit from one). Alex PS: I'm just throwing out things while I think of them, but these questions don't need to be answered before TP1 :-) a year ago or a bit earlier I added a --find-package PackageName option to cmake, the idea was that it can be used the same way as pkgconfig by projects which do not use cmake. This basically used a find_package() call and printed the resulting include dirs/libs (via using the result-variables) to stdout so it can be used directly in makefiles. This is working so-so, since find-modules can do various things, and not all of them work this way. This could work much better by limiting this feature to CONFIG mode, telling cmake whether it should look for result-variables or imported targets, and depending on that, either print the variable or a target property. This way cmake's config files could be of use to any other non-cmake using project. $ cmake --find-package -DNAME=JPEG -DCOMPILER_ID=GNU -DLANGUAGE=CXX - DMODE=LINK -rdynamic -ljpeg $ (if you leave off arguments, cmake tells you what's missing. The other MODE is COMPILE). So, this would need some work in cmake, but I don't have the time to do that now. Alex ___ Kde-frameworks-devel mailing list Kde-frameworks-devel@kde.org https://mail.kde.org/mailman/listinfo/kde-frameworks-devel
Re: kde4support: kstandarddirs_unittest fix
On 27/12/13 11:04, Kevin Ottens wrote: On Monday 23 December 2013 14:51:19 Alex Merry wrote: Actually, I think we should just install application files directly in share/applications. (ie: change the value of XDG_APPS_INSTALL_DIR in KDEInstallDirs.cmake). It makes everyone's lives more difficult to have subdirectories (as I discovered while creating and implementing the MPRIS2 spec - how do you tell applications how to find Amarok's desktop file: amarok.desktop won't work, because it's not in share/applications, but kde4-amarok.desktop or kde/amarok.desktop requires knowing something about the buildsystem magic that installs the desktop file). Definitely something which would need a closer look. I feel that wouldn't help for co-installability though. Co-installable applications means versioned binary names, at which point it's easy enough to do versioned desktop file names. But I was under the impression we didn't care about co-installable applications. Alex ___ Kde-frameworks-devel mailing list Kde-frameworks-devel@kde.org https://mail.kde.org/mailman/listinfo/kde-frameworks-devel
Re: kde4support: kstandarddirs_unittest fix
On Friday 27 December 2013 11:22:57 Alex Merry wrote: On 27/12/13 11:04, Kevin Ottens wrote: On Monday 23 December 2013 14:51:19 Alex Merry wrote: Actually, I think we should just install application files directly in share/applications. (ie: change the value of XDG_APPS_INSTALL_DIR in KDEInstallDirs.cmake). It makes everyone's lives more difficult to have subdirectories (as I discovered while creating and implementing the MPRIS2 spec - how do you tell applications how to find Amarok's desktop file: amarok.desktop won't work, because it's not in share/applications, but kde4-amarok.desktop or kde/amarok.desktop requires knowing something about the buildsystem magic that installs the desktop file). Definitely something which would need a closer look. I feel that wouldn't help for co-installability though. Co-installable applications means versioned binary names, at which point it's easy enough to do versioned desktop file names. But I was under the impression we didn't care about co-installable applications. Ah gotcha... stupid me, it's for applications only of course. Then yes, looks like we don't need to deal with that indeed. Regards. -- Kévin Ottens, http://ervin.ipsquad.net KDAB - proud supporter of KDE, http://www.kdab.com 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
Re: kde4support: kstandarddirs_unittest fix
On 27/12/13 11:30, Kevin Ottens wrote: On Friday 27 December 2013 11:22:57 Alex Merry wrote: On 27/12/13 11:04, Kevin Ottens wrote: On Monday 23 December 2013 14:51:19 Alex Merry wrote: Actually, I think we should just install application files directly in share/applications. (ie: change the value of XDG_APPS_INSTALL_DIR in KDEInstallDirs.cmake). It makes everyone's lives more difficult to have subdirectories (as I discovered while creating and implementing the MPRIS2 spec - how do you tell applications how to find Amarok's desktop file: amarok.desktop won't work, because it's not in share/applications, but kde4-amarok.desktop or kde/amarok.desktop requires knowing something about the buildsystem magic that installs the desktop file). Definitely something which would need a closer look. I feel that wouldn't help for co-installability though. Co-installable applications means versioned binary names, at which point it's easy enough to do versioned desktop file names. But I was under the impression we didn't care about co-installable applications. Ah gotcha... stupid me, it's for applications only of course. Then yes, looks like we don't need to deal with that indeed. Well, there are a couple of edge cases to deal with; specifically, kio installs kmailservice and ktelnetservice executables with associated desktop files, but we already have to deal with co-installability for the executables themselves, so the desktop files are no harder. Alex ___ Kde-frameworks-devel mailing list Kde-frameworks-devel@kde.org https://mail.kde.org/mailman/listinfo/kde-frameworks-devel
Re: Review Request 114478: Add kshareddatacache.h include
--- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/114478/#review46182 --- Ship it! As per discussion on kde-frameworks list. I'll have a look at adding some magic to provide more helpful error messages (than kshareddatacache.h not found) later. - Alex Merry On Dec. 15, 2013, 4:15 p.m., Albert Astals Cid wrote: --- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/114478/ --- (Updated Dec. 15, 2013, 4:15 p.m.) Review request for KDE Frameworks. Repository: kdelibs Description --- Since #define KImageCache KSharedPixmapCacheMixinKSharedDataCache I think it is only fair that kimagecache.h includes kshareddatacache.h otherwise a #include kimagecache.h is not enough to use it. Diffs - tier1/kguiaddons/src/util/kimagecache.h 682aa66 Diff: https://git.reviewboard.kde.org/r/114478/diff/ Testing --- Thanks, Albert Astals Cid ___ Kde-frameworks-devel mailing list Kde-frameworks-devel@kde.org https://mail.kde.org/mailman/listinfo/kde-frameworks-devel
Re: Review Request 114478: Add kshareddatacache.h include
--- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/114478/#review46183 --- This review has been submitted with commit c48bce3c47a7c160aa6b183daef808db572d8110 by Albert Astals Cid to branch master. - Commit Hook On Dec. 15, 2013, 4:15 p.m., Albert Astals Cid wrote: --- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/114478/ --- (Updated Dec. 15, 2013, 4:15 p.m.) Review request for KDE Frameworks. Repository: kdelibs Description --- Since #define KImageCache KSharedPixmapCacheMixinKSharedDataCache I think it is only fair that kimagecache.h includes kshareddatacache.h otherwise a #include kimagecache.h is not enough to use it. Diffs - tier1/kguiaddons/src/util/kimagecache.h 682aa66 Diff: https://git.reviewboard.kde.org/r/114478/diff/ Testing --- Thanks, Albert Astals Cid ___ Kde-frameworks-devel mailing list Kde-frameworks-devel@kde.org https://mail.kde.org/mailman/listinfo/kde-frameworks-devel
Re: Review Request 114478: Add kshareddatacache.h include
--- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/114478/ --- (Updated Dec. 27, 2013, 12:13 p.m.) Status -- This change has been marked as submitted. Review request for KDE Frameworks. Repository: kdelibs Description --- Since #define KImageCache KSharedPixmapCacheMixinKSharedDataCache I think it is only fair that kimagecache.h includes kshareddatacache.h otherwise a #include kimagecache.h is not enough to use it. Diffs - tier1/kguiaddons/src/util/kimagecache.h 682aa66 Diff: https://git.reviewboard.kde.org/r/114478/diff/ Testing --- Thanks, Albert Astals Cid ___ Kde-frameworks-devel mailing list Kde-frameworks-devel@kde.org https://mail.kde.org/mailman/listinfo/kde-frameworks-devel
Review Request 114683: Clean up target_link_libraries for KF5Plasma
--- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/114683/ --- Review request for Build System, KDE Frameworks and Plasma. Repository: plasma-framework Description --- Clean up target_link_libraries for KF5Plasma It is now a single call using PUBLIC and PRIVATE keywords. This removes a CMake warning about using LINK_INTERFACE_LIBRARIES. Diffs - src/plasma/CMakeLists.txt 5a6ceabb3d6b95fb792e19aab034b87d0dd688a9 Diff: https://git.reviewboard.kde.org/r/114683/diff/ Testing --- plasma-framework and kde-workspace both still compile. Thanks, Alex Merry ___ Kde-frameworks-devel mailing list Kde-frameworks-devel@kde.org https://mail.kde.org/mailman/listinfo/kde-frameworks-devel
Re: Using KCompressionDevice with QSaveFile
On Tuesday 10 December 2013 23:31:33 David Faure wrote: On Tuesday 10 December 2013 21:48:09 Dominik Haumann wrote: It seems that the behavior for None is different. Interestingly, KSaveFile also behaved like this (KFilterDev did not change after all I guess). I'm surprised, because KCompressionDevice::None didn't exist before, it was all new code in KF5. KFilterDev had very different code in KDE4, and no support for no compression itself (deviceFromFile would simply return a QFile instead of a KFilterDev, in that case). Anyhow, it's fixed now, I rewrote the new none filter. Just for reference, this works now in Kate Part. Thanks! Dominik ___ Kde-frameworks-devel mailing list Kde-frameworks-devel@kde.org https://mail.kde.org/mailman/listinfo/kde-frameworks-devel
Re: Review Request 114683: Clean up target_link_libraries for KF5Plasma
--- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/114683/#review46193 --- Ship it! Ship It! - Aleix Pol Gonzalez On Dec. 27, 2013, 2:43 p.m., Alex Merry wrote: --- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/114683/ --- (Updated Dec. 27, 2013, 2:43 p.m.) Review request for Build System, KDE Frameworks and Plasma. Repository: plasma-framework Description --- Clean up target_link_libraries for KF5Plasma It is now a single call using PUBLIC and PRIVATE keywords. This removes a CMake warning about using LINK_INTERFACE_LIBRARIES. Diffs - src/plasma/CMakeLists.txt 5a6ceabb3d6b95fb792e19aab034b87d0dd688a9 Diff: https://git.reviewboard.kde.org/r/114683/diff/ Testing --- plasma-framework and kde-workspace both still compile. Thanks, Alex Merry ___ Kde-frameworks-devel mailing list Kde-frameworks-devel@kde.org https://mail.kde.org/mailman/listinfo/kde-frameworks-devel
Re: Review Request 114683: Clean up target_link_libraries for KF5Plasma
--- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/114683/#review46194 --- This review has been submitted with commit 778bf0ac0b057db1906d95c6fe7d89b6215d896b by Alex Merry to branch master. - Commit Hook On Dec. 27, 2013, 2:43 p.m., Alex Merry wrote: --- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/114683/ --- (Updated Dec. 27, 2013, 2:43 p.m.) Review request for Build System, KDE Frameworks and Plasma. Repository: plasma-framework Description --- Clean up target_link_libraries for KF5Plasma It is now a single call using PUBLIC and PRIVATE keywords. This removes a CMake warning about using LINK_INTERFACE_LIBRARIES. Diffs - src/plasma/CMakeLists.txt 5a6ceabb3d6b95fb792e19aab034b87d0dd688a9 Diff: https://git.reviewboard.kde.org/r/114683/diff/ Testing --- plasma-framework and kde-workspace both still compile. Thanks, Alex Merry ___ Kde-frameworks-devel mailing list Kde-frameworks-devel@kde.org https://mail.kde.org/mailman/listinfo/kde-frameworks-devel
Forward includes
Hi, I've been going through the kde4support forward includes, since I wanted to start making the modules I decided we'd better make sure all of them are working properly. After some research, I found that I don't have these available, can somebody please tell me if I'm missing some dependency or if these are indeed not available [1]? If there's no problem with this, I'll proceed to change these for a warning that they're not available anymore (see attachment). Cheers! Aleix PS: Happy holidays! [1] KAuth/ActionWatcher KCalendarSystemFactory KConfigINIBackEnd KCrashBookmarkImporter KCrashBookmarkImporterImpl KDateTable KDateValidator KDBusServiceStarter KDNSSD/Configuration KFileSharePropsPlugin KFileTreeBranch KFileTreeView KIdentityProxyModel KIMProxy KIO/Connection KIO/SessionData KIO/Task KMimeTypeResolver KNS/Author KNS/Category KNS/Engine KNS/Installation KNS/KTranslatable KParts/DockMainWindow3 KPixmapRegionSelectorDialog KSMIMECrypto KSystemEventFilter KTimeZoneWidget KUnitTest/Runner KUnitTest/SlotTester KUnitTest/Tester KUnitTest/TestResults ThreadWeaver/JobCollection ThreadWeaver/JobSequence ThreadWeaver/WeaverObserver diff --git a/src/includes/KAuth/ActionWatcher b/src/includes/KAuth/ActionWatcher index 36a503d..e868dfc 100644 --- a/src/includes/KAuth/ActionWatcher +++ b/src/includes/KAuth/ActionWatcher @@ -1 +1 @@ -#include ../../kauthactionwatcher.h +#warning This file is not available anymore diff --git a/src/includes/KCalendarSystemFactory b/src/includes/KCalendarSystemFactory index 3ab6d1d..e868dfc 100644 --- a/src/includes/KCalendarSystemFactory +++ b/src/includes/KCalendarSystemFactory @@ -1 +1 @@ -#include ../kcalendarsystemfactory.h +#warning This file is not available anymore diff --git a/src/includes/KConfigINIBackEnd b/src/includes/KConfigINIBackEnd index 5e607af..e868dfc 100644 --- a/src/includes/KConfigINIBackEnd +++ b/src/includes/KConfigINIBackEnd @@ -1 +1 @@ -#include ../kconfigini.h +#warning This file is not available anymore diff --git a/src/includes/KCrashBookmarkImporter b/src/includes/KCrashBookmarkImporter index 1128400..e868dfc 100644 --- a/src/includes/KCrashBookmarkImporter +++ b/src/includes/KCrashBookmarkImporter @@ -1 +1 @@ -#include ../kbookmarkimporter_crash.h +#warning This file is not available anymore diff --git a/src/includes/KCrashBookmarkImporterImpl b/src/includes/KCrashBookmarkImporterImpl index 1128400..e868dfc 100644 --- a/src/includes/KCrashBookmarkImporterImpl +++ b/src/includes/KCrashBookmarkImporterImpl @@ -1 +1 @@ -#include ../kbookmarkimporter_crash.h +#warning This file is not available anymore diff --git a/src/includes/KDBusServiceStarter b/src/includes/KDBusServiceStarter index 7eb6fa6..e868dfc 100644 --- a/src/includes/KDBusServiceStarter +++ b/src/includes/KDBusServiceStarter @@ -1 +1 @@ -#include ../kdbusservicestarter.h +#warning This file is not available anymore diff --git a/src/includes/KDNSSD/Configuration b/src/includes/KDNSSD/Configuration index c568305..e868dfc 100644 --- a/src/includes/KDNSSD/Configuration +++ b/src/includes/KDNSSD/Configuration @@ -1 +1 @@ -#include ../../kdnssd/settings.h +#warning This file is not available anymore diff --git a/src/includes/KDateTable b/src/includes/KDateTable index 08c8315..e868dfc 100644 --- a/src/includes/KDateTable +++ b/src/includes/KDateTable @@ -1 +1 @@ -#include ../kdatetable.h +#warning This file is not available anymore diff --git a/src/includes/KDateValidator b/src/includes/KDateValidator index 08c8315..e868dfc 100644 --- a/src/includes/KDateValidator +++ b/src/includes/KDateValidator @@ -1 +1 @@ -#include ../kdatetable.h +#warning This file is not available anymore diff --git a/src/includes/KFileSharePropsPlugin b/src/includes/KFileSharePropsPlugin index aefd8d2..e868dfc 100644 --- a/src/includes/KFileSharePropsPlugin +++ b/src/includes/KFileSharePropsPlugin @@ -1 +1 @@ -#include ../kfilesharedialog.h +#warning This file is not available anymore diff --git a/src/includes/KFileTreeBranch b/src/includes/KFileTreeBranch index dda7372..e868dfc 100644 --- a/src/includes/KFileTreeBranch +++ b/src/includes/KFileTreeBranch @@ -1 +1 @@ -#include ../kfiletreebranch.h +#warning This file is not available anymore diff --git a/src/includes/KFileTreeView b/src/includes/KFileTreeView index a3bb394..e868dfc 100644 --- a/src/includes/KFileTreeView +++ b/src/includes/KFileTreeView @@ -1 +1 @@ -#include ../kfiletreeview.h +#warning This file is not available anymore diff --git a/src/includes/KIMProxy b/src/includes/KIMProxy index f092060..e868dfc 100644 --- a/src/includes/KIMProxy +++ b/src/includes/KIMProxy @@ -1 +1 @@ -#include ../kimproxy.h +#warning This file is not available anymore diff --git a/src/includes/KIO/Connection b/src/includes/KIO/Connection index 17de1fd..e868dfc 100644 --- a/src/includes/KIO/Connection +++ b/src/includes/KIO/Connection @@ -1 +1 @@ -#include ../../kio/connection.h +#warning This file is not available anymore diff --git a/src/includes/KIO/SessionData
KCoreAddons forward headers
Hi, Here's a patch adding CamelCase headers to KCoreAddons (attached). If we agree that it's the proper way of doing it, I'll proceed to do it on the rest of modules. Cheers! Aleix diff --git a/CMakeLists.txt b/CMakeLists.txt index 389245c..ba6644a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -9,6 +9,7 @@ set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR} ${CMAKE_CURRENT_S include(FeatureSummary) include(CMakePackageConfigHelpers) include(ECMSetupVersion) +include(ECMGenerateHeaders) include(KDEInstallDirs) include(KDEFrameworkCompilerSettings) diff --git a/src/lib/CMakeLists.txt b/src/lib/CMakeLists.txt index 0e18f42..d9501b3 100644 --- a/src/lib/CMakeLists.txt +++ b/src/lib/CMakeLists.txt @@ -96,40 +96,32 @@ else() target_link_libraries(KF5CoreAddons PRIVATE netapi32) endif() -if(IS_ABSOLUTE ${INCLUDE_INSTALL_DIR}) - target_include_directories(KF5CoreAddons INTERFACE $INSTALL_INTERFACE:${INCLUDE_INSTALL_DIR} ) -else() - target_include_directories(KF5CoreAddons INTERFACE $INSTALL_INTERFACE:${CMAKE_INSTALL_PREFIX}/${INCLUDE_INSTALL_DIR} ) -endif() +target_include_directories(KF5CoreAddons INTERFACE $INSTALL_INTERFACE:${INCLUDE_INSTALL_DIR}/kcoreaddons ) set_target_properties(KF5CoreAddons PROPERTIES VERSION ${KCOREADDONS_VERSION_STRING} SOVERSION ${KCOREADDONS_SOVERSION} EXPORT_NAME CoreAddons ) +ecm_generate_headers(KAboutData REQUIRED_HEADERS KCoreAddons_HEADERS) +ecm_generate_headers(KSharedDataCache REQUIRED_HEADERS KCoreAddons_HEADERS RELATIVE caching) +ecm_generate_headers(KAutoSaveFile KDirWatch KMessage KProcess KBackup KUrlMimeData +RELATIVE io REQUIRED_HEADERS KCoreAddons_HEADERS) +ecm_generate_headers(KCompositeJob KJob KJobTrackerInterface KJobUiDelegate +RELATIVE jobs REQUIRED_HEADERS KCoreAddons_HEADERS) +ecm_generate_headers(KRandom KRandomSequence +RELATIVE randomness REQUIRED_HEADERS KCoreAddons_HEADERS) +ecm_generate_headers(KMacroExpander KStringHandler +RELATIVE text REQUIRED_HEADERS KCoreAddons_HEADERS) +ecm_generate_headers(KFormat KUser KShell +RELATIVE util REQUIRED_HEADERS KCoreAddons_HEADERS) +install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/KCoreAddons DESTINATION ${INCLUDE_INSTALL_DIR} COMPONENT Devel ) + install(TARGETS KF5CoreAddons EXPORT KF5CoreAddonsTargets ${INSTALL_TARGETS_DEFAULT_ARGS}) install(FILES -kaboutdata.h -caching/kshareddatacache.h -io/kautosavefile.h -io/kdirwatch.h -io/kmessage.h -io/kprocess.h -io/kbackup.h -io/kurlmimedata.h +${KCoreAddons_HEADERS} io/kfilesystemtype_p.h #Needed for building kio, KFileSystemType -jobs/kcompositejob.h -jobs/kjob.h -jobs/kjobtrackerinterface.h -jobs/kjobuidelegate.h -randomness/krandom.h -randomness/krandomsequence.h -text/kmacroexpander.h -text/kstringhandler.h -util/kformat.h -util/kuser.h -util/kshell.h ${CMAKE_CURRENT_BINARY_DIR}/kcoreaddons_export.h -DESTINATION ${INCLUDE_INSTALL_DIR} COMPONENT Devel +DESTINATION ${INCLUDE_INSTALL_DIR}/kcoreaddons COMPONENT Devel ) ___ Kde-frameworks-devel mailing list Kde-frameworks-devel@kde.org https://mail.kde.org/mailman/listinfo/kde-frameworks-devel
Re: Forward includes
On Friday 27 December 2013 19:00:14 Aleix Pol wrote: Hi, I've been going through the kde4support forward includes, since I wanted to start making the modules I decided we'd better make sure all of them are working properly. After some research, I found that I don't have these available, can somebody please tell me if I'm missing some dependency or if these are indeed not available [1]? If there's no problem with this, I'll proceed to change these for a warning that they're not available anymore (see attachment). Cheers! Aleix PS: Happy holidays! I have checked a few of them manually and indeed the real header files do not exists. The approach in the patch seems correct, we don't want to add a source incompatible change by removing them, but I'd change the message from: #warning This file is not available anymore in KF5, please see http://community.kde.org/Frameworks/Porting_Notes Or something in this fashion so it is more useful. Cheers. ___ Kde-frameworks-devel mailing list Kde-frameworks-devel@kde.org https://mail.kde.org/mailman/listinfo/kde-frameworks-devel