Supporting the CMake file API in the project/build plugin ?
christoph at cullmann.io
christoph at cullmann.io
Thu Sep 7 19:44:07 BST 2023
On 2023-09-06 23:32, Alexander Neundorf wrote:
> Hi,
>
> currently cmake can generate a kate project file, and then, when kate
> opens
> some file in the buildtree, e.g. the project file, the kate project
> plugin reads
> the project file and populates the list of files and the build targets.
> With cmake 3.27 this has been marked officially as obsolete (even
> though the
> kate project generator gained some features in cmake 3.27).
>
> Nevertheless, medium term it would be better if kate would use the
> cmake file
> API.
> What would that mean ?
> kate could search the CMakeCache.txt for CMAKE_PROGRAM, which contains
> the
> path to the cmake executable which generated this buildtree.
> Then kate would write some simple json file into the build tree, and
> then rerun
> cmake on that buildtree.
> cmake will see the file kate has written, and generate a json file
> which
> contains the source directory, the list of targets, the source files
> for each
> target.
> With this information kate could:
> - use that list of source files as project files, or use the git/svn
> support in
> kate to get all files which are in the source directory
> - get the list of targets and generate a build target for each of
> them. Those
> could be executed by running cmake (so it would automatically work for
> any
> build tree, whether it is ninja, make, or msvc): cmake --build
> <buildir> --
> config <Config> --target <target>
>
> What do you suggest how this would fit into the project- and
> build-plugins ?
> I guess the session support is not related ?
Hi,
thanks for taking a look at that!
I think that would fit into the project plugin as another auto-discovery
mode,
like we have it for the various version control systems.
There we execute the git/.../... commands.
Greetings
Christoph
>
> Thanks
> Alex
More information about the KWrite-Devel
mailing list