IssBuilder
Механизм предназначен для реализации в версии 0.1. Зафиксировано, изменения невозможны.
Более старые версии механизма:
- нет.
Запускается с параметрами. В паратрах указывается имя проекта, имя iss-заготовки. Прога открывает конфиг проекта (файл *.sconf), смотрит там важные для себя параметры вроде типа проекта, затем ковыряется в других понадобившихся файлов и добывает нужную инфу вроде нумера версии. Генерит имя выходного *.iss файла, проверяет в .\ggbt\iss\ - существует ли там такой файл. Если не существует - открывает указанную в параметрах iss-заготовку из .\ . Берет оттуда всю необходимую инфу, затем сканит и добавляет файлы для инсталлера в инфу объекта класса (работающего с iss) - попросту добавляет файлы в инсталлер. Генерит выходной iss скрипт с правильным именем (по номеру версии и имени проекта). Для добавленных файлов создает *.flist файл (имя соответствует полной версии дистрибутива), в список добавляет ПОЛНЫЙ список ВСЕХ файлов которые есть в данной версией с их чексуммой. Если требовалось в *.sconf - то также добавляет в кеш папку с именем версии и скидывает туда все файлы данной конкретной версии. После всего этого (в т.ч. если *iss не изменялся и уже был до запуска утилиты) - запускает компилляцию *.iss-а или *.iss-ов если их много. Все %).