Simple-Web-Server icon indicating copy to clipboard operation
Simple-Web-Server copied to clipboard

support for meson build system

Open kpeace opened this issue 9 years ago • 6 comments

http://mesonbuild.com/

The Meson build system allows to easily define third party dependencies. This pull request enables meson projects to easily use Simple-Web-Server as a dependency. (Tested on Linux)

kpeace avatar Nov 05 '16 15:11 kpeace

Thank you. I'm currently looking into meson, and will have to read up on especially the subproject command. Supporting meson project would be great, but we should maybe not have two build systems (cmake and meson)? What I'm thinking is that we, at least for the moment, use the cmake build system, but at the same time it should be able to use the subproject command in an external project that is using meson.

As a side note, I will soon also add meson support to our C++ ide juCi++, and meson looks good from my initial tests of the build management system.

eidheim avatar Nov 07 '16 07:11 eidheim

If you want to support using simple-web-server as a meson subproject I don't see how to get around supporting meson as a whole.

Is ditching cmake an option?

kpeace avatar Nov 07 '16 18:11 kpeace

I'd prefer to stick to cmake for now, but we can keep this PR open until a time if or when it would be appropriate to move to meson build system. Are there any strong arguments now to move to meson? I would say that cmake is more common and more well tested at the moment, but that might change in the future.

eidheim avatar Nov 08 '16 15:11 eidheim

I've implemented Meson support for our IDE at https://github.com/cppit/jucipp/pull/298, and got some experience with the build system. While I like Meson, it is not entirely ready for server use yet. The main issue I found, was that debian stable still has an older meson version that does not create the necessary files needed for an IDE (compile_commands.json), but this will be fixed next year when debian stable is updated to the current debian testing.

eidheim avatar Nov 15 '16 09:11 eidheim

So the problem is that it's adoption state isn't good enough... The main purpose for introducing meson on my behalf, was to ease the integration of Simple-Web-Server with other meson projects. Assuming that anyone who is using messon will use the latest version. Do you think it would be alright to pull in the meson support just to achieve that? Maybe removing the messon build instructions from the README.md file?

kpeace avatar Nov 15 '16 11:11 kpeace

Yes, that would work, we can add the meson.build file(s) only.

eidheim avatar Nov 15 '16 11:11 eidheim