In standard GNU projects, the `aclocal.m4` file gets auto-generated with the `aclocal` script; the necessary M4 scripts are either taken from the system or from a directory that gets specified with some command line options to `aclocal`.
Looking into the git history of LilyPond's `aclocal.m4` file I can see that this was true in the very beginning. However, later on people started to modify this file manually. Was this intentional? I suggest to use `aclocal` again, modularizing the current stuff in `aclocal.m4` by splitting it into various `.m4` files in a `m4` top-level subdirectory. In another mail I wrote that the current problems with not showing help for pkg-config environment variables is due to `true` statements in calls to PKG_XXX macros. This was a wrong guess. Instead, `aclocal.m4` contains a very old version of `PKG_CHECK_MODULES` (from 2004!) that was much improved meanwhile.[*] Had we a modular design it would be very simple to just update a local copy of `pkg.m4`, and we would immediately benefit from the improvements. Ditto for other stuff too, I guess. Werner [*] See issue #5830 for a fix.