Review Request 119919: Install plugins to a versioned kdevplatform subdirectory

Milian Wolff mail at milianw.de
Sun Aug 24 12:53:35 UTC 2014


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/119919/#review65118
-----------------------------------------------------------

Ship it!


Wow I really like this idea - amazing how I never thought of that! But I'd also adopt the code in the plugincontroller to only look into the kdevplatform-$version folder for .desktop files. That way, we only need to adapt the install paths in the CMakeLists.txt but not the contents of the .desktop files.

Generally we could (should?) put all plugin related stuff into these folders, esp. kcm's but also helper libs. Speaking of helper libs though, they should go alltogether, imo. I.e. shared libs should be made object libs or static libs. But as a first approach putting everything into the $versioned folder would be a very good counter-measure against loading plugins with the wrong ABI.

Thanks for working on this!


debuggers/gdb/CMakeLists.txt
<https://git.reviewboard.kde.org/r/119919/#comment45491>

    I'd opt for a folder structure of the form
    
    kdevplatform/$version/
    
    or at least put a - between kdevplatform and the version



debuggers/gdb/kdevgdb.desktop.cmake
<https://git.reviewboard.kde.org/r/119919/#comment45492>

    interesting, why this? could we not simply install the .desktop file into the same folder like the plugins?



projectmanagers/custom-buildsystem/CMakeLists.txt
<https://git.reviewboard.kde.org/r/119919/#comment45493>

    the kcm plugins should also be versioned


- Milian Wolff


On Aug. 24, 2014, 12:20 p.m., Alexander Richardson wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/119919/
> -----------------------------------------------------------
> 
> (Updated Aug. 24, 2014, 12:20 p.m.)
> 
> 
> Review request for KDevelop.
> 
> 
> Repository: kdevelop
> 
> 
> Description
> -------
> 
> Install plugins to a versioned kdevplatform subdirectory
> 
> 
> Diffs
> -----
> 
>   utils/okteta/kdevokteta.desktop.cmake b4873440e782c1e38eb6fcfc12429a1fbf6fd601 
>   utils/okteta/CMakeLists.txt ce2e402d50d68e71f4e15203ecdef0984c32f1a3 
>   projectmanagers/custom-buildsystem/kdevcustombuildsystem.desktop.cmake 9d2aa8b92e65f42eaea17c70fd2abce7fbddea63 
>   projectmanagers/custommake/CMakeLists.txt 0625b06a2613b67a653def424ee8b2e03e2c11d4 
>   projectmanagers/custommake/kdevcustommakemanager.desktop.cmake 64aed5efa78984e98cb0d1d0132141f5797f8770 
>   providers/ghprovider/CMakeLists.txt 9b668e42fda4c6a0bf4d5e87d05c9f474625c72a 
>   providers/ghprovider/kdevghprovider.desktop.cmake 558f8a26e89582046549e95699bd918410c849a5 
>   projectmanagers/cmake/kdevcmakedocumentation.desktop.cmake c2ae394a45be1cf10d2fa36277c3facc9ea6c6a4 
>   projectmanagers/cmake/kdevcmakemanager.desktop.cmake daa942389c8e3b09c96a0293b6b2e960c5ec6c1b 
>   projectmanagers/custom-buildsystem/CMakeLists.txt be186bf79a495c9dfb67b07b2e8c6a60c43b6c97 
>   projectbuilders/ninjabuilder/kdevninja.desktop.cmake d7bcc24a226d9d2f9a9ec36037277f9e07a6a931 
>   projectmanagers/cmake/CMakeLists.txt a894120ec150a9893e2dde6be5bee84b8d3ce3c8 
>   languages/cpp/CMakeLists.txt 2fc31ae95f69391e6c0838cf676fe14158db5f54 
>   languages/cpp/kdevcppsupport.desktop.cmake f3aae87def3e5c7e7b8f559a291e6cbce6502095 
>   languages/plugins/custom-definesandincludes/CMakeLists.txt 5fd7c510f454002c9335a7da1e692358803bb6d8 
>   languages/plugins/custom-definesandincludes/compilerprovider/CMakeLists.txt af4b8aae0ad7b829925b02594c464e92cb7db832 
>   languages/plugins/custom-definesandincludes/compilerprovider/kdevcompilerprovider.desktop.cmake b3f9f1fda2a5a69f3bd788ba8cc9c5434a61c432 
>   languages/plugins/custom-definesandincludes/kdevdefinesandincludesmanager.desktop.cmake 764bedffc149b30c8158f1a074aecc9a62e5d7e9 
>   projectbuilders/cmakebuilder/CMakeLists.txt 23fa7bc2a854f1437c9b396125de668afe40d9bd 
>   projectbuilders/cmakebuilder/kdevcmakebuilder.desktop.cmake 72a7b30ee480c49073c22ca8ccdcc7b89978f791 
>   projectbuilders/makebuilder/CMakeLists.txt cd4fb2ebcd404e4673674be2c881ab4cec53e9d5 
>   projectbuilders/makebuilder/kdevmakebuilder.desktop.cmake b40f7cfc558703de804c4a4170fbeb24ce087e4c 
>   projectbuilders/ninjabuilder/CMakeLists.txt 6bd40aede43de87ed63e425a83e51686f513e3e0 
>   formatters/customscript/CMakeLists.txt a6777d03336145e5ece7f668ec99ba665dcef492 
>   formatters/customscript/kdevcustomscript.desktop.cmake 575947d012ae7210968fcc61d2d5a770061d95e5 
>   kdeintegration/executeplasmoid/CMakeLists.txt ebf593996ce031a3dbe2e896850273a77dca81d2 
>   kdeintegration/executeplasmoid/kdevexecuteplasmoid.desktop.cmake 5c8f9407ac7e9386f1545e4fd535b7eb299418ae 
>   kdeintegration/kdeprovider/CMakeLists.txt ce472d8d511fde3e7515f0551e97c0ebd52026a3 
>   kdeintegration/kdeprovider/kdevkdeprovider.desktop.cmake 8db895f4ffb8a3e3d18d3935ff5578af3e80699a 
>   documentation/qthelp/CMakeLists.txt b5a95c6fb9d874601e192762c348d4bcea7ceb48 
>   documentation/qthelp/kdevqthelp.desktop.cmake 62590260b4b181d60b564a9a28b5d8fd8e43d6d4 
>   formatters/astyle/CMakeLists.txt c73a299a45fc84468a4a223fcfbd9ccb09b68268 
>   formatters/astyle/kdevastyle.desktop.cmake e27931321ab3f96dd18f9068fe56932255ddbca9 
>   debuggers/gdb/CMakeLists.txt 4f29c1fda4875980d53d5842834caf8f4b228a1d 
>   debuggers/gdb/kdevgdb.desktop.cmake 9c9ee1bc90ac44b51289943ab784ca7e4327fdcc 
>   documentation/manpage/CMakeLists.txt c58907f2c2973d52ffb88a0aa9ebc97c4150e25c 
>   documentation/manpage/kdevmanpage.desktop.cmake b31d9a234c413e31f187906caafb4dc22f593df5 
> 
> Diff: https://git.reviewboard.kde.org/r/119919/diff/
> 
> 
> Testing
> -------
> 
> Plugins still load (after running kbuildsycoca5).
> 
> This is the first towards using KPluginLoader::findPlugins() which will allow removing usage of kbuildsycoca
> 
> 
> Thanks,
> 
> Alexander Richardson
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kdevelop-devel/attachments/20140824/d92cb44b/attachment.html>


More information about the KDevelop-devel mailing list