So the "append" still only works once, if you inherit a package from a package that inherits from autotools and set append, then you'll wipe the previous append.

Perhaps the DSL just needs some "append-to-list" functionality. At which point we may start wondering how we could have successfully done this in Python instead of using YAML...

Anyway, LGTM as an MVP for the problem at hand.