Makefile с компилятором cl

Есть проблема: я создал небольшой C++ проект который имеет 3 файла — L3.cpp (основной), car.cpp (описание заголовочного файла) и car.h (заголовочный файл). Далее, я пытаюсь скомпилировать данный проект с помощью компилятора cl и автоматизировать всё через Makefile (не пишите, что есть gcc, g++ и т.д. — у меня задание сделать это через компилятор cl). У меня есть трудность с изменением директории вывода. В Makefile все написано правильно за исключение debug — мне нужно сделать так, чтобы при вводе команды nmake debug у меня создавалась директория Debug и туда помещались все файлы, полученные в результате сборки.

введите сюда описание изображения


Ответы (1 шт):

Автор решения: aleksandr barakin

сама идея раскладывания результатов сборки по каталогам — плохая. потому и предложенное решение выглядит уродливо. но: чего просили — то и получили.

использовать не рекомендую (как, собственно, и пытаться раскладывать результаты сборок по каталогам). потому и не объясняю, что тут к чему и зачем.

main:
    cl /EHsc $(opts) L3.obj car.obj
    ...

...

debug:
    rm -rf $@
    mkdir -p $@
    cp -r L3 Makefile $@
    cd $@ && $(MAKE) opts="/Od /Zi"
→ Ссылка