Re: meson or generic ninja support?

Kevin Funk <[email protected]>
Newsgroups gmane.comp.kde.users.kdevelop
Message-ID <5077817.Iex6gKtjpT@kerberos>
On Monday, 9 October 2017 17:43:52 CEST Aleix Pol wrote:
> On Mon, Oct 9, 2017 at 5:37 PM, Axel Kellermann <[email protected]> 
wrote:
> > I'd be willing to help out with this, but I'd also need some guidance by
> > someone with more experience with kdevelop and project manager plugins.
> > Up till now I've only done some minor bugfixing concerning cmake
> > integration. So I have a hunch, but not a clear idea, what meson
> > integration actually encompasses.
> > 
> > With the little experience I have, I imagine we have to have
> > 1) A configure job that runs meson/mesonconf
> > 2) UI elements for setting up projects and their parameters
> > 3) A build job (relying on ninja and the content of compile_commands.json)
> > 4) A parse job to check for syntactical correctness of meson build scripts
> > 5) Some glue code to react to output of meson jobs (OutputView etc.)
> > 
> > Is that - at least to some degree - correct? If not, could someone please
> > outline what has to be done and give me some pointers where to look for
> > similar stuff in the kdevelop source tree?
> > Also, would it be a valid first step to do integration without
> > implementing 4? Technically that's not really necessary for properly
> > setting up meson projects, right?
> > 
> > Regards,
> > Axel
> > 
> > On 07.08.2017 09:59, Kevin Funk wrote:
> >> On Sunday, 6 August 2017 08:45:06 CEST René J.V. Bertin wrote:
> >>> On Saturday August 05 2017 01:18:20 Aleix Pol wrote:
> >>>> Of course not. You should start a meson plugin, not refactor the cmake
> >>>> one.
> >>> 
> >>> Frankly, I don't know (and don't have much incentive to find out) what's
> >>> better/easier, strip the unneeded parts from the cmake plugin or start
> >>> something completely from scratch.
> >> 
> >> The compile_command.json parser should be factored out. The file format
> >> is
> >> build system agnostic. A couple of different build systems actually
> >> support
> >> generating these files (CMake, QBS, <a couple of hand-written scripts>,
> >> ...).
> >> 
> >> For the rest, you'd still need a new plugin for Meson though.
> >> 
> >> Regards,
> >> Kevin
> >> 
> >>> I've seen only 1 aspect for now where meson is very different from both
> >>> configure and cmake: you cannot reinvoke it in an already configured
> >>> build
> >>> tree. Instead, you have to use the mesonconf executable, which doesn't
> >>> have
> >>> exactly the same calling signature.
> 
> If you are interested I can write a proof of concept in the next few days.

@Axel: Best to get in touch with apol in #kdevelop on IRC @ Freenode.

More information:
  https://www.kdevelop.org/contribute-kdevelop

You talked about similar functionality in the KDevelop source tree -- have a 
look at the cmake or qmake manager:
  plugins/cmake* and plugins/qmake*

Regards,
Kevin

> Aleix


-- 
Kevin Funk | [email protected] | http://kfunk.org
signature.asc (application/pgp-signature, 163 B)
-----BEGIN PGP SIGNATURE-----

iEYEABECAAYFAlnbnlUACgkQxkz1axPKzl26sQCfd3yN9hi+8gFVMvoIbygdNrFs
56AAnjvm3U1bgd13Qg/351mteyG3TN5B
=iGuF
-----END PGP SIGNATURE-----
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.