[docs] Re: on makefiles

Oleg A.Paraschenko olpa на xmlhack.ru
Пн Сен 29 17:32:05 MSD 2003


  Привет!

On Mon, 29 Sep 2003 15:42:30 +0400
Vitaly Ostanin <vyt на vzljot.ru> wrote:

...
> > > 
> > > Я не видел ни одного wiki, который бы упорядочивал
> > > информацию.
> > 
> >   Один точно есть. Только он не публичный.
> 
> Под "wiki" я подразумеваю средство для массового заполнения типа:
> http://docbook.org/wiki/moin.cgi/
> именно массовость и отсутствие ограничений на структурирование
> приведут к свалке. IMHO.

  Плохая документация лучше чем её отсутствие.

...
> 
> >   В качестве примера (первое, что попалось) предлагаю
> >   рассмотреть ULINK_LEAVE. Оцените время на описание этого
> >   параметра (зачем оно, кто что предложил другого, почему
> >   отказались) в виде финального документа, а затем оцените
> >   время на то, чтобы накидать копии писем без правки орфографии
> >   и пунктуации, а также краткие комментарии на страницу WiKi.
> >   По-моему, первое возможно только теоретически, когда второе
> >   -- даже практически.
> 
> Первое возможно практически и даже известно конкретное место,
> куда его положить.

  Тогда ещё один пример. Например, я предпочитаю писать документацию прежде чем приступать к кодированию (знаю, что это непрофессионально, но ничего поделать не могу). И в какое место положить эту спецификацию, особенно, учитывая, что она будет в процессе меняться?

...

> >   Во вложении: Makefile.tuned. 
> > 
> > $ make -n docs-howto.xml-tuned.1
> > xsltproc --nonet --xinclude --stringparam tag-level1 article 
> > --stringparam tag-level2 section -o docs-howto.xml-tuned.1
> > \--param ulink.leave.duplicates.after 1 \--param
> > revhistory.strip 1 \../../../xsl/common/tuning.xsl
> > docs-howto.xml$
> > $ make CACHETUNED=yes -n docs-howto.xml-tuned.1
> > make: `docs-howto.xml-tuned.1' не требует обновления.
> 
> Спасибо! А можно логику описать?

  Кстати, хороший пример того, что тому, кто пишет -- всё очевидно (кроме FORCE).

> Хотя бы в комментариях. "FORCE:"
> - это зарезервированное имя цели, или просто пустая цель?

  А ещё я знаю слова ".PHONY", ".PRECIOUS" и вообще хочу когда-нибудь найти время на полное прочтение спецификации на make. Про FORCE:

<quote>
   If a rule has no prerequisites or commands, and the target of the
rule is a nonexistent file, then `make' imagines this target to have
been updated whenever its rule is run.  This implies that all targets
depending on this one will always have their commands run.

   An example will illustrate this:

     clean: FORCE
             rm $(objects)
     FORCE:

   Here the target `FORCE' satisfies the special conditions, so the
target `clean' that depends on it is forced to run its commands.  There
is nothing special about the name `FORCE', but that is one name
commonly used this way.

   As you can see, using `FORCE' this way has the same results as using
`.PHONY: clean'.

   Using `.PHONY' is more explicit and more efficient.  However, other
versions of `make' do not support `.PHONY'; thus `FORCE' appears in
many makefiles.  *Note Phony Targets::.
</quote>

...

> 
> -- 
> Regards, Vyt
> mailto:  vyt на vzljot.ru
> JID:     vyt на vzljot.ru


-- 
Oleg



Подробная информация о списке рассылки docs