Message ID | 20200618133303.28676-1-ariel@vanguardiasur.com.ar (mailing list archive) |
---|---|
Headers | show |
Series | Add support for meson building | expand |
On Thu, Jun 18, 2020 at 10:33:02AM -0300, Ariel D'Alessandro wrote: > Hi all, > > After a couple of RFCs, here's the final patchset adding support for the > meson build system. > > All functionality provided by the autotools based build was ported to > meson, except sync-with-kernel. I guess we can add it at some later > point and have this merged anyway. sync-with-kernel is a few fragments of shell that live in various parts of the tree (Makefiles). It's just static shell, the build system doesn't need to do any substitions. I think sync-with-kernel doesn't really belong in the build system; This can be moved into its own shell script. > Native and cross compilation has been tested with several options. Any > feedback, testing or suggestions are welcome. Looking forward to see > this merged in the next release hopefully :-) > > Here's a simple comparison between meson and autotools performance for a > native build: > > $ time meson build/ > [...] > real 0m3.172s > user 0m2.698s > sys 0m0.577s > $ time ninja -C build/ -j4 > [...] > real 0m19.533s > user 1m11.860s > sys 0m7.956s > > $ time (./bootstrap.sh && ./configure) > [...] > real 0m19.289s > user 0m16.448s > sys 0m2.756s > $ time make -j4 > [...] > real 0m55.250s > user 2m29.425s > sys 0m10.829s Nice! This will really help when I'm testing on the rpi. Sean
Hi Sean, On Fri, 2020-06-19 at 13:10 +0100, Sean Young wrote: > On Thu, Jun 18, 2020 at 10:33:02AM -0300, Ariel D'Alessandro wrote: > > Hi all, > > > > After a couple of RFCs, here's the final patchset adding support for the > > meson build system. > > > > All functionality provided by the autotools based build was ported to > > meson, except sync-with-kernel. I guess we can add it at some later > > point and have this merged anyway. > > sync-with-kernel is a few fragments of shell that live in various parts > of the tree (Makefiles). It's just static shell, the build system doesn't > need to do any substitions. > > I think sync-with-kernel doesn't really belong in the build system; I totally agree there. > This > can be moved into its own shell script. > > > Native and cross compilation has been tested with several options. Any > > feedback, testing or suggestions are welcome. Looking forward to see > > this merged in the next release hopefully :-) > > > > Here's a simple comparison between meson and autotools performance for a > > native build: > > > > $ time meson build/ > > [...] > > real 0m3.172s > > user 0m2.698s > > sys 0m0.577s > > $ time ninja -C build/ -j4 > > [...] > > real 0m19.533s > > user 1m11.860s > > sys 0m7.956s > > > > $ time (./bootstrap.sh && ./configure) > > [...] > > real 0m19.289s > > user 0m16.448s > > sys 0m2.756s > > $ time make -j4 > > [...] > > real 0m55.250s > > user 2m29.425s > > sys 0m10.829s > > Nice! This will really help when I'm testing on the rpi. > Yup, meson allows really simple and fast cross builds. My colleague Stéphane has blogged [1] about this recently. Cheers, Ezequiel [1] https://www.collabora.com/news-and-blog/blog/2020/05/15/cross-compiling-with-gst-build-and-gstreamer/