On Mon, 2017-07-17 at 18:41 +1000, Wayne Blaszczyk wrote: > On Thu, 2017-07-13 at 18:32 -0500, Bruce Dubbs wrote: > > systemd-234 has been released. In the NEWS file they now want to go to a > > meson build and eliminate autotools. I took a look at meson.build file on > > the new systemd. The file is 2528 lines long. This is supposed to be > > simplier??? WTF ??? > > 2528 lines compared to.....? > A minimum Autotools files would be configure.ac (1863 lines) and Makefile.am > (6915). > That is a total of 8778 lines. So that would be a factor of 3 saving. > If you were to release a tarball with a configure script, that would be 25819 > lines! > > > > > > Looking at some meson documentation, it appears that if you want to set > > some options, you have to create a file. > > http://mesonbuild.com/Build-options.html. Seems like a regression to me. > > > > That's on the dev side. > > Here is my current build for gom-0.3.3. > mkdir build > cd build > meson --prefix=/usr \ > -Denable-gtk-doc=true \ > .. > ninja > ninja test > ninja install > > or you could do something like this. > > meson --prefix=/usr \ > -Denable-gtk-doc=true \ > build > cd build > ninja > ninja test > ninja install > > > > > AFAICT, meson/ninja want to use all available cores. I have not figured > > out how to limit that. For instance I want to limit the number of cores on > > my laptop on long builds to prevent overheating. > > > > In any case these developments will require a major change to LFS. Add > > meson and python3 and ninja (anything else?). > > > > Let's see. > > ninja needs asciidoc for man pages. We specify python2. > > meson needs python3. > > python2 and 3 have libffi recommended. We will probably need to rebuild > > both pythons in BLFS anyway for several optional dependencies. I don't > > know if there will be any specific python modules needed. > > > > How do rustc and cargo fit in? Right now they only seem to be needed for > > firefox, but other packages may want to use them in the future. > > > > Let's discuss. > > > > -- Bruce > > Anyway, > > I'm already building two packages for Gnome that are meson only builds. > > gom-0.3.3 and libgepub-0.5 (both are not in BLFS) > > Epiphany 3.26 will be a meson only build. > > I haven't gone through the Gnome packages so I don't know what else will be > effected, > but it looks like the Gnome devs are pushing this. > The following link shows what Arch is currently building with Meson. > https://www.archlinux.org/packages/extra/any/meson/ > > > So either way, Meson will need to be included at least in BLFS for the next > Gnome release. > > On a personal note, I've gone through the Meson tutorial on how to set up > a project with Meson, and I must say, I'm impressed. > It seems so simple compared to Autotools. Up till now, I've been using > Autotools for all my projects. I've never taken a liking to Cmake. Don't know > why. > > Not that I had a look at meson.build and meson_options.txt file in detail, but > it does look simple to determine dependencies and optional parameters. > > I've found that for LFS, you would only need Python3, libffi, meson, and > ninja. > I don't think you need openssl as mentioned by DJ. > > Regards, > Wayne. > > >
Anyone who is interested. I've been playing around with the meson build. The build comparisons for systemd-234 build times are significant I think. Under an 8 core system including tests: Autools was 225 seconds. Meson was 64 seconds. Both builds used all the cores available. Other findings: No without-python option with meson which is a mute point anyway. No docdir option with meson. Under Autotools, I had 6 test failures. (158 tests in total) Under Meson, I had no test failures. (243 tests in total) Regards, Wayne. -- http://lists.linuxfromscratch.org/listinfo/lfs-dev FAQ: http://www.linuxfromscratch.org/faq/ Unsubscribe: See the above information page
