GGBuildTools v 0.1.2 Copyright © 2007 Gipat Group http://svn.gipat.org/trac/GGBuildTools http://www.gipatgroup.org Программа распространяется на условиях Gipat Group's opened EI-editor-utility license. ___________________________________________________ GGBuildTools - набор утилит для сборки других проектов Gipat Group. В частности они предназначены для определения номера ревизии svn (и использования её в номере версии проекта, в именах файлов итд), для автоматической генерации *.iss - скриптов, для сборки рабочих копий модов к EI-Starter-у из файлов содержащихся в svn, для синхронизации мода с svn итд итп... ___________________________________________________ Набор состоит, как это ни странно, из нескольких утилит. Это: 1. IssBuilder - генерирует iss-файл и на запускает его сборку в Inno Setup Compiler. Для правильной его работы - требуется наличие правильно установленного Inno Setup 5. Умеет генерировать отдельные и кумулятивные апдейты с ранее собранных версий проекта. 2. SourcePackBuilder - предназначен для архивирования набора исходников проекта - фактически просто создает директорию с правильным именем (из имени проекта и номера его версии) и сжимает это дело архиватором. Пока что умеет сжимать только в *.7z 3. VerRevUpdater - предназначен для обновления номера версии проекта - может определить номер текущей ревизии svn и внести этот номер в 4-ю цифру версии. Умеет обрабатывать статусную часть версии - это могут быть alpha, beta, release candidate №N, release. Умеет генерировать *.pas или *.h файлы для компилляторов паскаля и C++ соответственно - в которых содержится та же информация о номере версии для включения её в скомпиленный бинарник программы. Также имеются служебные утилиты Installer и UnInstaller - предназначены для регистрации утилит в реестре и переменных окружения (прописывается в PATH) - если вы устанавливаете утилиты из стандартного инсталлятора - то пользоваться ими вручную не нужно - они запускаются автоматически при установке или удалении набора. Утилиты можно использовать в случае, если требуется зарегистрировать набор там где невозможно установить его из стандартного инсталлятора - например на linux под wine без графического режима - только с консоли - при запуске Installer и UnInstaller без параметров командной строки - они запускаются в интерактивном режиме и задают пользователю вопросы в консоли. _______________________________________________________ Файлы, в которых содержится конфигурация проекта и которые читаются утилитами - примеры этих файлов лежат в каталоге Examples дистрибутива. 1. *.sconf - самый важный файл - тут все настройки. Представляет из себя обычный инишник. Описание формата можно почитать в файле \Docs\SconfFormat_v1.txt 2. [имя проекта]_dev.vit и [имя проекта].vit - в них хранится номер версии программы - тот который берется за исходную информацию. Отличие [имя проекта]_dev.vit от [имя проекта].vit в том, что [имя проекта]_dev.vit не изменяется VerRevUpdater-ом, а вместо этого берется за основу - там просматривается статус и 4 цифры номера версии проекта, после чего если нужно - получается информация о ревизии svn - и собранный номер версии заносится в целевые файлы - один из этих файлов - [имя проекта].vit - тоесть [имя проекта]_dev.vit - по факту - неизменный файл, часть исходника - он входит в файлы в svn, в то время как [имя проекта].vit - результат локальной работы VerRevUpdater. [имя проекта]_dev.vit необходим для правильной работы VerRevUpdater. Описание формата можно почитать в \Docs\VerInfoTxtFormat_v1.txt 3. *.iss - обычно это default.iss - заготовка iss-скрипта для сборки инсталляций - на её основе IssBuilder генерирует реальный iss-скрипт для собираемой версии. Также в процессе работы например IssBuilder генерируются файлы *.flist но править их самостоятельно обычно нет нужды - там все автоматическое. Формат описан в \Docs\FileListFormat_v1.txt ______________________________________________________ Описание параметров командной строки для утилит - появляется если запустить утилиту с параметром -? - там по английски, русского описания пока-что нет, если есть желание его сделать - доработайте этот файл и пришлите патч. Параметр -p - заставит утилиту ждать нажматия Enter после завершения основной работы. ______________________________________________________ Сообщения о багах, предложения по улучшению, патчи - принимаются на трекере проекта - http://svn.gipat.org/trac/GGBuildTools - нажно зайти на трекер, авторизоваться (при необходимости зарегистрировать аккаунт - обращаю внимание что база аккаунтов на всех трекерах у нас общая и зарегистрироваться достаточно 1 раз на 1 из трекеров), создать новый ticket, не забыв указать тип тикета (баг\предложение\патч) и номер версии, которой вы пользовались. Желательно также сообщить о создании тикета на форуме http://www.gipatgroup.org/ в теме, посвященной данному проекту.