2012-06-25 2 views
1

Я хочу включить правило в свой файл makefile для преобразования моих ленивых файлов C++ .lzz в их соответствующие файлы .h и .cpp.makefile rule for lazy C++

Мне кажется, что это немного необычный случай, когда два файла зависят от одного, и я не уверен, что смогу правильно настроить зависимости.

# something like... 
%.cpp %.h : %.lzz 
    lzz $< 

У кого-нибудь есть правило, которое хорошо работает?

+1

Вы пробовали? Это сработало? Если нет, какие ошибки (если есть) вы получаете? –

ответ

2

Это выглядит правильно для меня.

Из страниц информации замыкающие:

Правило с несколькими целями эквивалентно написанию много правил, каждый из которых имеет одну цель, и все одинаковые в стороне от этого. Те же команды применяются ко всем целям, но их эффекты могут различаться, потому что вы можете подставить фактическое имя цели в команду с помощью `$ @ '. Правило вносит одни и те же предпосылки для всех целей.

+1

Из [здесь] (http://www.gnu.org/software/make/manual/make.html#Pattern-Intro): Правила шаблонов могут иметь более одной цели. В отличие от обычных правил, это не действует столько разных правил с теми же предпосылками и рецептами. Если правило шаблона имеет несколько целей, make знает, что рецепт правила отвечает за создание всех целей. Рецепт выполняется только один раз, чтобы сделать все цели. –

+0

Отлично. Даже лучше! : О) – edam