То есть вы просто хотите типичные «фальшивые» цели? Это просто, сделайте all
первым правилом (так, чтобы оно использовалось по умолчанию) и оно зависело от всего, что вы хотите построить, например ::
.
all: finalcode
Затем, в clean
, просто напишите скрипт для удаления того, что должно быть очищено, например ::
clean:
rm -f *.o
Наконец, не забудьте сделать эти правила «фальшивыми», так что make знает, что на самом деле они не создают файлы с такими именами:
.PHONY: all clean
Готово.
Что касается слова "профессионал", то это весьма субъективно, но я бы начал с определения переменных для компилятора (CC
), флагов (CFLAGS
), включений и т. Д. И используют эти , Если вы в порядке с небольшой потерей переносимости, используйте шаблонные правила, например, для создания объектных файлов, таких как
%.o: %.c
$(CC) -c -o$@ $(CFLAGS) $(INCLUDES) $<