Re: [OpenWrt-Devel] Meson/Ninja build system
Hi, just for the record, I just created PR with Ninja and Meson tools/packages and will be glad for comments https://github.com/openwrt/openwrt/pull/2312 Jan Pavlinec Dne 18. 03. 19 v 13:41 Jo-Philipp Wich napsal(a): > Hi Jan, > >> I'm trying to add ninja and meson to packages feed. The reason for that >> is described here https://github.com/openwrt/openwrt/pull/1871 and >> https://github.com/openwrt/packages/issues/8315 . > great to hear that! I think eventually there should be a > "tools/meson/Makefile" along with an "include/meson.mk" similar to how > Cmake is handled in Buildroot. > > I don't think it is necessary to actually add a Python 3 host build as > well since the Buildroot already build-depends on a system Python, but > only on 2.x while Meson requires 3. > >> If you want to look at that, my test repo is here >> https://github.com/ja-pa/meson-turris but it's not ready for primetime >> yet... > Allright. Will check it out, thanks! > > ~ Jo > > > ___ > openwrt-devel mailing list > openwrt-devel@lists.openwrt.org > https://lists.openwrt.org/mailman/listinfo/openwrt-devel ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel
Re: [OpenWrt-Devel] Meson/Ninja build system
On 2019-03-18 14:10, Petr Štetiar wrote: Daniel Engberg [2019-03-18 13:55:07]: Hi, Having a look at https://www.python.org/dev/peps/pep-0537/#lifespan it seems like a good idea to stick with 3.7? it's a PITA to demand versions which are not packaged in current versions of LTS Linux distros. Since Meson is a build system generator, I hope, that it's going to work with any Python 3 version, but can't find any details about Meson's Python version requirements. -- ynezz Some progress on this topic, 3.15 is pretty much the minimum version that's required if we're going to move to Python 3 despite having not having it in all available LTS releases (Debian 8 and RHEL 7 falls under this category). If anyone is interested the discussion is more or less continued here: https://github.com/openwrt/openwrt/pull/1937 Best regards, Daniel ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel
Re: [OpenWrt-Devel] Meson/Ninja build system
On 2019-03-18 14:03, Jo-Philipp Wich wrote: > Hi, > >> I think the cmake.mk-link approach would be a good idea and given >> previous discussions the plan is afaik to pull in Ninja first and >> once that's confirmed working via CMake add support for Meson. > > fine with me. > >> Having a look at https://www.python.org/dev/peps/pep-0537/#lifespan >> it seems like a good idea to stick with 3.7? > > No opinion. > >> As for OpenWrt, there are already files with hard dependency of >> python3 dating back to 2015 doing a quick grep of the source tree. >> >> https://github.com/openwrt/openwrt/blob/master/scripts/dl_cleanup.py >> https://github.com/openwrt/openwrt/blob/master/scripts/flashing/eva_ramboot.py > > Both files are supplemental scripts not used as part of the actual build > process. > >> There are also upstream projects like wireless-db that doesn't >> compile/build cleanly with vanilla 2.7 >> https://github.com/openwrt/openwrt/pull/1521 > > On the other end of the spectrum there is SCons (include/scons.mk) which > apparently explicitly does not support Python 3 [1]. > > Having to depend on two Python versions is not ideal. Maybe it is worth > sacrificing scons support for meson, depending on the number of users. It seems that this wiki information is outdated and current versions of SCons support python 3. Let's go with that. - Felix ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel
Re: [OpenWrt-Devel] Meson/Ninja build system
Daniel Engberg [2019-03-18 13:55:07]: Hi, > Having a look at https://www.python.org/dev/peps/pep-0537/#lifespan it seems > like a good idea to stick with 3.7? it's a PITA to demand versions which are not packaged in current versions of LTS Linux distros. Since Meson is a build system generator, I hope, that it's going to work with any Python 3 version, but can't find any details about Meson's Python version requirements. -- ynezz ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel
Re: [OpenWrt-Devel] Meson/Ninja build system
Hi, > I think the cmake.mk-link approach would be a good idea and given > previous discussions the plan is afaik to pull in Ninja first and > once that's confirmed working via CMake add support for Meson. fine with me. > Having a look at https://www.python.org/dev/peps/pep-0537/#lifespan > it seems like a good idea to stick with 3.7? No opinion. > As for OpenWrt, there are already files with hard dependency of > python3 dating back to 2015 doing a quick grep of the source tree. > > https://github.com/openwrt/openwrt/blob/master/scripts/dl_cleanup.py > https://github.com/openwrt/openwrt/blob/master/scripts/flashing/eva_ramboot.py Both files are supplemental scripts not used as part of the actual build process. > There are also upstream projects like wireless-db that doesn't > compile/build cleanly with vanilla 2.7 > https://github.com/openwrt/openwrt/pull/1521 On the other end of the spectrum there is SCons (include/scons.mk) which apparently explicitly does not support Python 3 [1]. Having to depend on two Python versions is not ideal. Maybe it is worth sacrificing scons support for meson, depending on the number of users. ~ Jo 1: https://bitbucket.org/scons/scons/wiki/FrequentlyAskedQuestions#markdown-header-am-i-restricted-to-using-python-24-code-in-my-sconscript-files signature.asc Description: OpenPGP digital signature ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel
Re: [OpenWrt-Devel] Meson/Ninja build system
Hi, I think the cmake.mk-link approach would be a good idea and given previous discussions the plan is afaik to pull in Ninja first and once that's confirmed working via CMake add support for Meson. Having a look at https://www.python.org/dev/peps/pep-0537/#lifespan it seems like a good idea to stick with 3.7? As for OpenWrt, there are already files with hard dependency of python3 dating back to 2015 doing a quick grep of the source tree. https://github.com/openwrt/openwrt/blob/master/scripts/dl_cleanup.py https://github.com/openwrt/openwrt/blob/master/scripts/flashing/eva_ramboot.py (added recently) CCed: Jan There are also upstream projects like wireless-db that doesn't compile/build cleanly with vanilla 2.7 https://github.com/openwrt/openwrt/pull/1521 Best regards, Daniel ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel
Re: [OpenWrt-Devel] Meson/Ninja build system
Hi Jan, > I'm trying to add ninja and meson to packages feed. The reason for that > is described here https://github.com/openwrt/openwrt/pull/1871 and > https://github.com/openwrt/packages/issues/8315 . great to hear that! I think eventually there should be a "tools/meson/Makefile" along with an "include/meson.mk" similar to how Cmake is handled in Buildroot. I don't think it is necessary to actually add a Python 3 host build as well since the Buildroot already build-depends on a system Python, but only on 2.x while Meson requires 3. > If you want to look at that, my test repo is here > https://github.com/ja-pa/meson-turris but it's not ready for primetime > yet... Allright. Will check it out, thanks! ~ Jo signature.asc Description: OpenPGP digital signature ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel
Re: [OpenWrt-Devel] Meson/Ninja build system
Hi, I'm trying to add ninja and meson to packages feed. The reason for that is described here https://github.com/openwrt/openwrt/pull/1871 and https://github.com/openwrt/packages/issues/8315 . If you want to look at that, my test repo is here https://github.com/ja-pa/meson-turris but it's not ready for primetime yet... Regards, J.P. Dne 18. 03. 19 v 13:09 Jo-Philipp Wich napsal(a): > Hi, > >> A number of upstream projects are beginning to use the Meson/Ninja build >> system. OpenWrt's sound/mpc and libs/libmpdclient kludge around this, >> and I would like to update the glib2 package. The latest version of >> glib2 uses Meson/Ninja. > just what the world needed, yet another build system :) > >> Is there any plan to build the Meson/Ninja environment into the OpenWrt >> build system? > I took a quick look at "meson" but got confused after it referred to > something else called "ninja". So it appears to be some high level thing > producing other lowlevel things which then do stuff. > > I am not aware of any developer actively working on support for this, so > a patch would be greatly appreciated. At least there are no plans to > *not* support it. > > One nuisance is that it appears to mandate Python 3 while OpenWrt > buildroot currently requires Python 2.7 - so in order to avoid depending > on both versions, all the existing buildroot python users probably need > to be ported to Python 3 first. > > Regards, > Jo > > > ___ > openwrt-devel mailing list > openwrt-devel@lists.openwrt.org > https://lists.openwrt.org/mailman/listinfo/openwrt-devel ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel
Re: [OpenWrt-Devel] Meson/Ninja build system
Hi, > A number of upstream projects are beginning to use the Meson/Ninja build > system. OpenWrt's sound/mpc and libs/libmpdclient kludge around this, > and I would like to update the glib2 package. The latest version of > glib2 uses Meson/Ninja. just what the world needed, yet another build system :) > Is there any plan to build the Meson/Ninja environment into the OpenWrt > build system? I took a quick look at "meson" but got confused after it referred to something else called "ninja". So it appears to be some high level thing producing other lowlevel things which then do stuff. I am not aware of any developer actively working on support for this, so a patch would be greatly appreciated. At least there are no plans to *not* support it. One nuisance is that it appears to mandate Python 3 while OpenWrt buildroot currently requires Python 2.7 - so in order to avoid depending on both versions, all the existing buildroot python users probably need to be ported to Python 3 first. Regards, Jo signature.asc Description: OpenPGP digital signature ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel
Re: [OpenWrt-Devel] Meson/Ninja build system
On 16.03.2019 19:52, W. Michael Petullo wrote: A number of upstream projects are beginning to use the Meson/Ninja build system. OpenWrt's sound/mpc and libs/libmpdclient kludge around this, and I would like to update the glib2 package. The latest version of glib2 uses Meson/Ninja. Is there any plan to build the Meson/Ninja environment into the OpenWrt build system? fyi https://github.com/openwrt/openwrt/pull/1912 Regards ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel
[OpenWrt-Devel] Meson/Ninja build system
A number of upstream projects are beginning to use the Meson/Ninja build system. OpenWrt's sound/mpc and libs/libmpdclient kludge around this, and I would like to update the glib2 package. The latest version of glib2 uses Meson/Ninja. Is there any plan to build the Meson/Ninja environment into the OpenWrt build system? -- Mike :wq ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel