default "a.out"; rule a { out "a.out"; dep "b1.out"; dep "b2.out"; exec "touch" "a.out"; } rule b { out "b1.out"; out "b2.out"; exec "touch" "b1.out"; exec "touch" "b2.out"; }