16 ms·
Rather bad news. Meson introduces a rat-tail of build dependencies.
by sprash 5y ago
Rather bad news. Meson introduces a rat-tail of build dependencies.
- doppioandante 5y agoYou may be interested in muon: https://git.sr.ht/~lattis/muon/ https://git.sr.ht/~lattis/muon/
- cozzyd 5y agoTerrible name. A muon is a lepton, not a meson. If it were a lighter replacement of electron, muon would be an appropriate (if counterintuitive) name. There are so many mesons (pion, kaon, \eta, \rho, J/\psi, D, B, \omega,\upsilon), why not pick one of those?
- woodruffw 5y ago> Meson introduces a rat-tail of build dependencies. From the Ubuntu repos, it looks like the top-level dependencies are Ninja and Python 3[1]. That doesn't seem particularly bad to me? [1]: https://packages.ubuntu.com/focal/meson https://packages.ubuntu.com/focal/meson
- eddieh 5y agoHad to deal with this recently, Homebrew on macOS though. Meson build failed. Had to manually install Mako with pip, which also installed MarkupSafe. Then bitched that Homebrew (or Linuxbrew) will break in the future for some reason. So next time I build X, I can look forward to that. :/
- woodruffw 5y agoMy understanding (which could be very wrong) is that Meson on its own has no external dependencies like Mako, but that (by virtue of being Python) anybody can write a terrible build that introduces additional dependencies. Is that correct? If so, that's unfortunate, but it isn't that different from what happens in autotools land -- I've had plenty of builds fail because the configure step fails to check for `$tool` and then expects it to be present at build-time.
- eddieh 5y agoI believe that's correct.
- wott 5y agoEach time something requires Meson, you can also bet it requires a different version than the one you have installed... :-/
- bonzini 5y agoTwo: Python and ninja/samurai (samurai doesn't have any dependency other than a C compiler). Almost any program the size of Xorg will likely already depend on Python anyway.
- wott 5y ago> Almost any program the size of Xorg will likely already depend on Python anyway. Last time I built X by hand, there was one... one single X element the building of which depended on Python amongst the many, many components of X: XCB. So I had to install Python just for that one module; let me tell you I wasn't happy at all with such choice. Icing on the cake, the Python scripts were not compatible with Python 3, and also mixed spaces and tabs for indentation, so I had to write patches to get the stuff to compile.
- tedunangst 5y agoThere was a time when any program the size of X used its own build tool. In the case of X, that was imake.