Você deve usar este formulário:
set makeprg=cd\ cmt\ &&\ make
Se você não quer fugir de espaços:
let &makeprg = "cd cmt && make"
--- editar ---
O problema com sua tentativa inicial é que o shell no qual makeprg
é executado é não interativo e, portanto, deve sair após a execução de um comando. Enviar dois comandos seguidos não parece ser uma boa ideia.