>> For starters, the output is wrong about the command issued. > This part is on purpose. Why tell the user the wrong thing? - -L $(dir $@) -f batch-byte-compile $< + $(patsubst %, -L %, $(filter-out %/cl-lib, $(pkgs))) \ + -f batch-byte-compile $< This allowed make to run to completion. Using a sufficiently new Emacs executable helped too.