wiki:SconfFormat

Version 24 (modified by Sagrer, 16 years ago) (diff)

--

Формат файлов *.sconf

Версия №2. В процессе проектирования.

Более старые версии:


Назначение формата - хранение всех настроек для GGBuildTools для данного конкретного проекта. Формат представляет из себя обычный ini-файл.

Внутри есть секции:

  • [Main]
  • [IssBuilder]
  • [SourcePackBuilder]
  • [StarterMod] - необязательно.
  • [Localisations]
  • [Locales]

[Main]

Внутри есть параметры:

  • FormatName (string) - имя формата конфега %).
  • FormatVersion (integer) - версия формата конфега % )))).
  • ProjectType (string) - тип проекта. Возможные типы (на данный момент): VerInfoTxtOnly, PascalCode, CppCode.
  • ProjectVer (string) - либо разделенный точками номер версии (до 3 цифр вроде "0.1.2"), либо слово "Project" означающее что первые 3 цифры берутся из других файлов (в записимости от типа проекта).
  • UseSvn (bool) - 0-> svn не используется, 1-> svn используется.
  • ProjectRootDir (string) - относительный (относитально ..\[папка со *.sconf] ) путь (windows) к корневой папке проекта. По умолчанию = ".\"

[IssBuilder]

Внутри есть параметры:

  • FilesDir (string) - путь от root к папке где лежат файлы для запаковки в инсталлер (обычно это скомпиленные бинарники + сопутствующее файло).
  • DefaultIssName (string) - имя дефолтной iss-заготовки.
  • OutputDir (string) - путь от root к папке куда ложить скомпиленный инсталлер.
  • VersionsCacheDir (string) - путь от root к папке, куда ложить архив версий (файлы всех когда-либо собранных дистров).
  • SaveToCache (bool) - сохранять ли в кеш файлы (т.е не только flist+iss а еще и сам дистрибутив) для собранной версии.
  • CreateFull (bool) - создавать ли пакет, который может только ставиться с нуля.
  • !CreateFull_AllowUpdate (bool) - создавать ли пакет, который может как обновить версию, так и поставить все с нуля.
  • !CreateFull_UpdVers (string) - либо All, либо From:X где X - 4 цифры разделенные точками - номер версии начиная с которой (включительно) генерить апдейты, либо цифра - сколько сгенеренных версий (из кеша flist и iss) начиная от последней подвергать апдейту.
  • CreateSeparateUpds (bool) - создавать ли пакеты обновления с отдельных версий.
  • !CreateSeparateUpds_UpdVers (string) - либо All, либо From:X где X - 4 цифры разделенные точками - номер версии начиная с которой (включительно) генерить апдейты, либо цифра - сколько сгенеренных версий (из кеша flist и iss) начиная от последней подвергать апдейту.
  • CreateCumulateUpdate (bool) - создавать ли кумулятивный пакет обновления.
  • !CreateCumulateUpdate_UpdVers (string) - либо All, либо From:X где X - 4 цифры разделенные точками - номер версии начиная с которой (включительно) генерить апдейты, либо цифра - сколько сгенеренных версий (из кеша flist и iss) начиная от последней подвергать апдейту.
  • LangPackages (string) - если Localisations->UseLocalisations == true - то здесь могут быть списки пакетов с заложенными в них языковыми модулями вида: "all; ru; en; ru, en;" - в данном примере будет создано по 4 пакета для каждого создаваемого варианта пакетов (т.е. для полных версий, апдейтов итд - все аналогично) - 1) все языки; 2) только русский; 3) только английский; 4) только английский и русский. Имена пакетов будут сформированы исходя из включенных языков.

[SourcePackBuilder]

Внутри есть параметры:

  • FilesDir (string) - путь от root к папке где лежат файлы для запаковки в архив.
  • OutputDir (string) - путь от root к папке куда ложить архив.
  • ArchiveFormart (string) - тип архива в который все пакуется. Варианты: 7z.

[StarterMod]

Секция необязательная. Имеет смысл только если тип проекта - StarterMod. Внутри есть параметры:

  • В этой версии секция не используется. Зарезервировано на будущее.

[Localisations]

В секции располагаются настройки локализации проекта. Внутри есть параметры:

  • UseLocalisations (bool) - использовать ли вообще локализации. По умолчанию false. Если true - в папке с проектом (IssBuilder->FilesDir) расположена папка all и папки локалей - соотв. содержащие файлы для соответствующих языковых компонентов.
  • Exclusive (bool) - по умолчанию false. Если true то одновременно может быть установлен только один языковой модуль, иначе можно установить сколько угодно. Если будут конфликты с одинаковыми именами файлов - юзверь сам виноват, надо следить.
  • UseCustomLocaleNames (bool) - по умолчанию false. Если true - то информация из секции [Locales] этого файла перекрывает прошитую в программе (точнее в версии GGBuildTools) информацию о локалях. Иначе - используется только информация о локалях, идущая в комплекте с GGBuildTools.

[Locales]

В секции в виде пар имя локали\описание локали записываются локали ). Например:

[Locales]
ru=Russian
en=English

Секция используется только если Localisations->UseCustomLocaleNames == true.