I've been wondering how hard it would be to add a "--debug=l (lines)" (or maybe "p/parsed or s/serialize") option to "straighten out" conditionals by printing only the lines actually parsed. The effect would be to take a potentially very complex makefile suite with many includes and conditional branches, or possibly both as in "$(if $(FOO),$(eval include $(FILE)))", and show one valid path through them. The goal would be not to produce a working makefile, though I don't know why it wouldn't work, but to help analyze and understand a complex legacy system. It feels like this should be doable just by adding a conditional printf() in the right place. True?