Я портирую домашнюю заготовку makefile
в комплект автотетов. У меня возникла проблема, для которой я еще не нашел подходящего ответа. Возможно, я просто не использую правильные условия в своих поисках. Будучи полным неофитом для аутотипов, я, вероятно, просто не знаю достаточно жаргона.процесс сборки, который генерирует заголовки в autotools
Проблема: наш процесс сборки имеет зависимость от файла заголовка, который создается из файла csv. (.. Я не знаю, почему это, что это такое) В нашей старой системе, мы сделали что-то вроде этого:
.PHONY: all
all : header.csv.h $(objects)
header.csv.h:
python prebuild.py
# remainder for building objects and the file lib.a
Находить эту ссылку extend default rules, я добавил это мой Makefile.am
noninst_LIBRARIES = libstuff.a
# .. Additional CXXFLAGS and CPPFLAGS, and listing the sources
all-local: header.csv.h
header.csv.h:
python prebuild.py
Переделан Makefile
s еще не работал. Проверка сгенерированного Makefile
для этой части библиотеки показали следующее:
# lots of stuff preceeding
all: all-am
all-am: Makefile $(LIBRARIES) all-local
all-local: header.csv.h
# the rest as above
Прямо там в all-am:
проблема. Зависимости $(LIBRARIES)
перечислены первыми и поэтому строятся сначала. Дальнейшее чтение расширенной ссылки выше показывает, что это следует ожидать: нет способа гарантировать порядок. Это достаточно просто, чтобы «исправить»: переместите all-local
в начало $(LIBRARIES)
. Однако это только фиксирует его один раз. Я должен гарантировать, что это всегда строится в первую очередь.
Могу ли я добавить вещи к сценарию configure
, который будет выполнен во время процесса настройки? Каков правильный способ справиться с чем-то подобным?
Ничего из этого не связано с autotools ... но я приветствую вас за попытку преобразования. Я не такой храбрый. –
Возможный дубликат [Зависимость заголовка в automake] (http://stackoverflow.com/questions/1779984/header-dependency-in-automake) –