Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Make 3.80
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > Cредства разработки для МК > GNU/OpenSource средства разработки
_Pasha
Всем Доброго Времени Суток!

Например, во всем известной вариации мейкфайла для WinARM, есть такие строчки

Код
## Create ROM-Image (final)
RUN_MODE=ROM_RUN
## Create RAM-Image (debugging)
#RUN_MODE=RAM_RUN

далее по тексту

ADEFS =  -D$(RUN_MODE)

еще далее

ASFLAGS = $(ADEFS) -Wa,-adhlns=$(<:.S=.lst),-g$(DEBUG)


Получается, что если поменять RUN_MODE, то, ессно изменится сам Makefile, и поменяются ключи вызова компилятора. Однако, полного ребилда на основании этих изменений никто делать не собираеццо!  Нужен make clean, чтобы образумить мейк. Кто может прояснить, это бага или фича?
msalov
Это не баг, это предсказуемость работы smile.gif В вашем мейкфайле есть зависимость исходником от фейкфайла? нету? ну тогда и нечего пинать на мейк.

сделайте что-нть типа
Код
%.o: %.S Makefile
    $(AS) $(ASFLAGS) -o $@ $^

И будет вам счастье
HARMHARM
Цитата(gotty @ Jan 9 2009, 15:23) *
Это не баг, это предсказуемость работы smile.gif В вашем мейкфайле есть зависимость исходником от фейкфайла? нету? ну тогда и нечего пинать на мейк.

сделайте что-нть типа
Код
%.o: %.S Makefile
    $(AS) $(ASFLAGS) -o $@ $^

И будет вам счастье

Фейкфайл это ошибка (Makefile) или термин?
И еще вопрос, а что делать если у меня условие задается не в Makefile, а в командной строке make? Нужно сделать какой-то файл конфигурации дополнительно?
_Pasha
Цитата(gotty @ Jan 9 2009, 17:23) *
И будет вам счастье

Спасибо, вполне счастлив. smile.gif

Цитата(HARMHARM @ Jan 9 2009, 18:16) *
условие задается не в Makefile, а в командной строке make?

Пример приведите, пожалуйста.
msalov
Цитата(HARMHARM @ Jan 9 2009, 16:16) *
Фейкфайл это ошибка (Makefile) или термин?

Это опечатка smile.gif
Цитата(HARMHARM @ Jan 9 2009, 16:16) *
И еще вопрос, а что делать если у меня условие задается не в Makefile, а в командной строке make? Нужно сделать какой-то файл конфигурации дополнительно?
Да.
Цитата(_Pasha @ Jan 9 2009, 17:34) *
Пример приведите, пожалуйста.
Код
make RUN_MODE=RAM_RUN
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.