wiki:IssBuilderMechanism

IssBuilder

Механизм предназначен для реализации в версии 0.2. В процессе проектирования.

Более старые версии механизма:


  • Запускается с параметрами.
  • В параметрах указывается имя проекта, имя iss-заготовки.
  • Прога открывает конфиг проекта (файл *.sconf), смотрит там важные для себя параметры вроде типа проекта, затем ковыряется в других понадобившихся файлов и добывает нужную инфу вроде нумера версии.
  • Генерит имя выходного *.iss файла.
  • Открывает указанную в параметрах iss-заготовку из .\ . Берет оттуда всю необходимую инфу, затем сканит и добавляет файлы для инсталлера в инфу объекта класса (работающего с iss) - попросту добавляет файлы в инсталлер, при необходимости - с учетом деления на языковые компоненты.
  • Генерит выходной iss скрипт с правильным именем (по номеру версии и имени проекта). Iss-ы генерятся для всех запрошенных через *.sconf вариантов пакетов, в т.ч языковых.
  • При необходимости информация о локалях берется либо из "вшитых в программу", статичных конфигов, либо из *.sconf-файла - соотв. в зависимости от настроек в этом самом *.sconf.
  • Для добавленных файлов создает *.flist файл (имя соответствует полной версии дистрибутива), в список добавляет ПОЛНЫЙ список ВСЕХ файлов которые есть в данной версией с их чексуммой, при необходимости - с делением на группы по языковым компонентам.
  • Если требовалось в *.sconf - то также добавляет в кеш папку с именем версии и скидывает туда все файлы данной конкретной версии.
  • После всего этого - запускает компилляцию *.iss-а или *.iss-ов если их много. Все %).
Last modified 16 years ago Last modified on Jun 24, 2008 1:55:18 AM