Соответствие правила Makefile - PullRequest
0 голосов
/ 03 мая 2018

В моем файле Makefile gnu-make-3.81 я хочу создавать файлы .o из файлов .s, если исходных файлов .c нет. Поэтому я определил следующие правила, которые я упростил:

all::$(OBJS)

%.s: %.c
    $(CC) $(CFLAGS) -o $@ -S $<

%.o: %.s
    $(CC) $(CFLAGS) -o $@ -c $<

В gnu-make-3.81 при отсутствии исходных файлов .c он создает файлы .o, используя второе правило. Но с gnu-make-3.82 возникает ошибка:

make: *** No rule to make target `xxx.c', needed by `xxx.s'.  Stop.

Как мне заставить его работать как gnu-make-3.81?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...