Итак, у меня есть makefile1 , который вызывает другой makefile2 для компиляции проекта.Я устанавливаю некоторые определения C в одном из моих файлов .c в проекте, и они передаются через переменную make GLOBAL_DEFINES (в makefile2), которая расширяется до '-D…' при вызове компилятора.Я передаю значения тем, которые C определяет в качестве аргумента для makefile1 (make param1 = XX param2 = YY), хотя это работает хорошо, но когда я не предоставляю эти параметры и запускаю только make , компиляция завершается неудачножаловаться param1 = и param2 = не определены .Любая идея, как с этим справиться.
Вот моя настоящая команда, которая работает
make FW_VERSION_MAJOR = 33 FW_VERSION_MINOR = 4
Что я хочуВот что я могу сделать: у меня должна быть возможность запустить make, make param1 = XX и успешно выполнить param2 = YY. Один из подходов состоит в том, чтобы записать эти #defines в тестовый файл, чтобы при запуске make без параметров он получал значение param1 иparam2 из файла, и если я применяю параметры, они перезаписывают их в файле.Это лучший способ справиться с этим?Если да, может ли кто-нибудь направить меня в правильном направлении.
make --version
GNU Make 3.81
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
This program built for x86_64-pc-linux-gnu