Normalerweise übergebe ich Makrodefinitionen von "make command line" an ein "makefile" mit der Option: -Dname = value. Die Definition ist im Makefile zugänglich.
Ich übergebe auch Makrodefinitionen aus dem "Makefile" an den "Quellcode" mit der ähnlichen Compileroption: -Dname = value (wird von vielen Compilern unterstützt). Auf diese Definition kann im Quellcode zugegriffen werden.
Was ich jetzt brauche, ist, dem Benutzer meines Makefiles zu ermöglichen, beliebige Makrodefinitionen von der "make.exe-Befehlszeile" sofort an "Quellcode" zu übergeben, ohne etwas im Makefile ändern zu müssen.
Der Benutzer kann also Folgendes eingeben: make -f mymakefile.mk -SOMEOPTION var = 5
dann kann direkt der Code main.c var sehen:
int main()
{
int i = var;
}