Grundlage für Kompilierbeschreibungen sind die allgemeine Grammatik für Beschreibungsdateien und die Namenskonventionen für Moduldateien.
<compile_description> = {<block>} | EMPTY
<line> = <comp_desc_line>
<comp_desc_line> = <comment_line> | <comp_line> | <def_line> | <option_line> | EMPTY
<comp_line> = (<source_spec> | <reg_source>)<token_sep>{<option>}<new_line>
<reg_source> = regex(<regex>) | ([<source_id>]*[<lang_id>][<variant>])
<source_id> = g | h | i | v
<regex> = regulärer Ausdruck (nach GNU-Standard)