Re: NetworkManager Build System



Ok, forgot my last mail. I read the mail wrong and also forgot NM's requirement to build it on systems without python3.

Sorry,

El mar., 25 ago. 2020 a las 14:56, Iñigo Martínez (<inigomartinez gmail com>) escribió:
Although meson needs python 3 to work, meson's Python module[0] can be also used to work with python2 code.

BTW, I still have a couple of meson only (I mean, my changes were only meson oriented) updates for NetworkManager around. These changes remove autotools and also moves NM to the latest gettext version.

BR,



El mar., 25 ago. 2020 a las 13:14, Thomas Haller via networkmanager-list (<networkmanager-list gnome org>) escribió:
On Tue, 2020-08-25 at 10:48 +0000, Graham White via networkmanager-list
wrote:
> I have a pull request against the NetworkManager-anyconnect
> repository, see
> https://github.com/grahamwhiteuk/Networkmanager-anyconnect/pull/1
>
> The PR moves my repo from Autotools to the Meson build system.  Prior
> to considering whether to accept the PR, I wanted to check the future
> direction of NetworkManager in terms of the build system being used
> as I would prefer to stay aligned with this and the other closely
> related projects.
>
> Are there any plans to move away from Autotools?  If so, which build
> system(s) is under consideration?
>
> Many thanks,


Hi Graham,


first of all, VPN plugins are entirely separate from NetworkManager,
they only need to implement the API. Meaning, what matters is that

 - they talk the D-Bus API with NetworkManager.

 - they can register themself towards NetworkManager with a file like
   /usr/lib/NetworkManager/VPN/*.name

 - optionally, they provide a glib based shared library to integrate
with libnm (as indicated in the .name file).

 - optionally, the provide an auth-dialog (as indicated in the .name
file).


that means, you can implement a VPN plugin in any language you deem
suitable (and use any build system).

Of course, there is some value in having all VPN plugins being similar
(e.g. using C, glib, libnm, libnma).

NetworkManager itself is primarily autotools and an experimental meson
setup. Probably one day, the meson setup will replace autotools
entirely. There is no timeline for that. One problem is that meson
eagerly bumps the python3 dependency, while we still want to build
NetworkManager on systems that are python2-only or use an older
python3. With time, this problem will probably go away.

For other components like VPN plugins, libnma and network-manager-
applet, the portability issue for meson is less of a concern. I think
it makes sense to switch those to meson-only today. Many GNOME projects
are already meson-only.


TL;DR: nowadays, I think it's fine for most projects to be meson-only.



best,
Thomas
_______________________________________________
networkmanager-list mailing list
networkmanager-list gnome org
https://mail.gnome.org/mailman/listinfo/networkmanager-list


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]