Makefile на окнах.«*» не работает для подкаталогов - PullRequest
0 голосов
/ 27 сентября 2018

Как я могу использовать "*" (или что-то подобное), чтобы найти все подкаталоги в make-файле для windows 10?(компиляция с использованием avr-gcc и avr-g++, с MinGW и Cygwin)

Пример:

Он работает на IOS и ищет все файлы %.c во всех подкаталогах внутри периферийных устройствпапка:

$(OBJDIR)/%.o: $(SRCDIR)/peripherals/*/%.c
    $(CC_avr) $(FLAGS_avr) $(INCLUDE_avr) $^ -o $@

Но не работает на Windows.Мне нужно использовать что-то вроде:

$(OBJDIR)/%.o: $(SRCDIR)/peripherals/timer/%.c
    $(CC_avr) $(FLAGS_avr) $(INCLUDE_avr) $^ -o $@

$(OBJDIR)/%.o: $(SRCDIR)/peripherals/ultrasonic/%.c
    $(CC_avr) $(FLAGS_avr) $(INCLUDE_avr) $^ -o $@

$(OBJDIR)/%.o: $(SRCDIR)/peripherals/encoder/%.c
    $(CC_avr) $(FLAGS_avr) $(INCLUDE_avr) $^ -o $@

, вручную добавив все подпапки.

Я уже испробовал все виды комбинаций и информация, которую я нашел на форуме, говорит:

$(SRCDIR)/peripherals/**/%.c
$(SRCDIR)/peripherals/***/%.c
$(SRCDIR)/peripherals/(*)/%.c
$(SRCDIR)/peripherals/*.*/%.c
$(SRCDIR)/peripherals/.*/%.c
$(SRCDIR)/peripherals/./%.c
$(SRCDIR)/peripherals/../%.c
$(SRCDIR)/peripherals/.../%.c

Кто-нибудь может мне помочь?

...