昔のDOS用のmakeにも、実行行を必ず実行コマンドとして実行しようとするものと
実行(exec)不可ならばシェルを起動してそれに渡すものがあった気がする。

つまり、実行行に";"や"&&"等が含まれる場合にシェル経由になるか(或いは自身で解釈して実行するか)は
各makeに依存するんじゃないかな。
パイプやリダイレクト等も含めて。

で、必ず複数を実行する(";"でつなげる)ならば、シェルを起動するようにしてみるとか。
最後のコマンドのステータスが必要なら、別途シェルスクリプトを書いてそれを実行するとか。
いや、うまくいくかは知らないけどね。