У меня большой исходный каталог со сложной структурой Makefile (много включений и т. Д.)
Я бы хотел, чтобы препроцессор определил, что gcc предоставит при запуске
gcc -E -dM. Тем не менее, я также хочу, чтобы источник был построен. И когда я проверяю журнал make / build, я хотел бы видеть все команды, которые были выполнены make, а также #defines из всех файлов в исходном коде, которые были переданы компилятору и / или переопределены.
Я не уверен, как это сделать.
Например,
Если бы был файл foo.c только с одной строкой
#define PI 3.14
Запуск gcc -E -dM foo.c распечатает все предварительные определения для stdout, а также определения внутри foo.c.
Но он не компилируется. Как объединить команды так, чтобы обе вещи происходили?