LINUX.ORG.RU

Установить ключи make чтобы он вызывал дочерние make тоже с ними

 , ,


0

1

Здравствуйте.

Вопрос #1. Есть makefile, где вызывается make для компонента системы, который вызывает еще make для сборки например библиотеки. make->make->make. Для 2-го make в 1-м я задаю ключ -np, чтобы видеть переменные, где ошибка произошла и т.п. Весь шквал сообщений отправляю в файл «make -np 2>&1 >m.log», какие-то все же пролезают на экран из дочерних makefile.

Возможно ли на время сборки задать этот ключ -np, чтобы с ним вызывался каждый вложенный make? Иными словами, есть ли какая-то переменная у make, чтобы задать ключи, какая-нибудь MAKE_OPTS или типа того, которую можно export-ировать и ее увидят дети?

Вопрос #2. Существуют ли в природе пошаговые отладчики makefile-ов, bash-скриптов? Чтоб с просмотром переменных среды и makefile-а, с CUI, а лучше GUI? Или я невозможного хочу?

Примеры

Чтобы сделать это на configure:

 ./configure CFLAGS='-g -O2 -w' CXXFLAGS='-g -O2 -w'

Чтобы сделать это на make:

 make CFLAGS='-g -O2 -w' CXXFLAGS='-g -O2 -w'
Rx0
()
Ответ на: комментарий от Rx0

Я о другом, не о компиляции, а про работу самого make. При сборке какой-то цели в дочернем makefile выдается что-то типа

cd ./lib
bash: cd: ./lib: Нет такого файла или каталога
И как искать, где это произошло, из какой переменной вылез этот "./lib"?

bugs-bunny
() автор топика

Как вызываешь (sub)make в makefile?

Правильно - использовать переменную $(MAKE):

all:
       	$(MAKE) -f sub.mk
anonymous
()

MAKEFLAGS. Ну и то что анон выше написал

DllMain
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.