[docs] makefile rework intro

Oleg A.Paraschenko olpa на xmlhack.ru
Пн Окт 27 19:56:46 MSK 2003


  Всем привет,

  появилась возможность попробовать заняться make-файлами. Прежде, чем приступить к этому, вкратце описываю цели и методы. Жду комментарии.

---

Цели переработки:
* перейти на "шаблонный" стиль вместо "декларативного". Это позволит упростить make-фалы и сделать их более гибкими;
* добавить "профилирование";
* дать возможность экспериментировать с различными fop-процессорами.

В этой версии не будет поддержки .chm (Html Help).

---

make targets:

all       - по умолчанию. Сборка html-dir, html-file и print
clean     - удаление сгенерированных файлов, в том числк и временных
distclean - ещё сильнее, чем просто clean. Может быть, и не требуется
dist      - приготовить результаты all для распространения
check     - проверить корректности исходного файла
html-dir  - создать документ, состоящий из нескольких html-файлов
html-file - создать документ в виде одного html-файла
print     - создать печатную версию документа (pdf)

---

Расположение файлов:

./module/
 module.xml  - исходный файл
 tmp/        - папка для временных файлов
 out/        - папка для готовых документов
  module-html-dir/   - тут результат "make html-dir"
  module-html-file/  - тут результат "make html-file"
  module-print/      - тут результат "make print"
  module.tgz         - архив готовых документов

Общий подход:
* всё, что создаётся, оказывается либо в "tmp", либо в "out". В результате:
 * хлам не смешивается с важными файлами;
 * для "make clean" достаточно "rm -rf tmp out".
* Если файл входит в состав итоговых документов, то он лежит в "out", иначе он лежит в "tmp".

---

Цепочка преобразований.

Общее начало:
.xml -> xinclude -> profiling+tuning (A)

Далее, для html:
всё, как сейчас

Далее, для print:
-> fo  (B) -> pdf (C) или
-> tex (D) -> pdf

Возможности:
(A) можно варьировать
(B) можно варьировать, например, брать стиль для A4, letter, B5 etc.
(C) можно варьировать, например, использовать fop, xep, passiveTeX etc.
(D) можно варьировать, например, использовать dblatex или db2latex (или что там есть)


-- 
Олег



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