On 2020/03/15 16:16:06, hanwenn wrote: > On Sun, Mar 15, 2020 at 5:04 PM <mailto:jonas.hahnf...@gmail.com> wrote: > > I did so now and ... does this mean you want to write yet another meta > > build system? That sounds horrible to maintain. > > It doesn't have to be a *meta* build system, because it doesn't have > to cater to anything but LilyPond. That makes me confident that it > will be much simpler than any of the existing systems.
It's a (build) system that generates files for a build system. I'd call this "meta" but this is likely a matter of definition. > I very much agree with you, but out of the existing language within > our tree (Perl, Python, Shell, C++, Make), it is the least worst > option. Make is too limited (see the mess that our makefiles are > today), Shell has all the problems of Make. We can't use C++ in the > build system, and Perl is a godawful mess of line-noise. > > What do you suggest instead? Not doing this at all. In cases like this, I begin to question the very fundamental assumptions. In this case: Do we really need to dynamically generate the dependencies if there's really no tool for it? My answer is "no" after seeing that the last change of 'include' statements was in 2013 (if you count a2f44bbf0e; otherwise maybe earlier). As such, how about just making them static? See https://codereview.appspot.com/555440062 to get the idea. https://codereview.appspot.com/553700043/