Сохранение библиотек кода
Для совместного использования библиотек кода мы должны использовать общий репозиторий кода, например, VCS-репозиторий или просто общую папку.Для лучшей навигации создайте древовидную структуру, используйте такие пути, как этот lib-name\lib-name-version
.Версия может быть номером версии, именем версии, идентификатором набора изменений VCS или любой другой строкой, указывающей версию lib.Если вы хотите добавить исправленную или принятую вами версию имени библиотеки, например, lib-name-version-private
, и добавьте PatchInfo.txt, описывающий ваши изменения для других разработчиков.Вы также можете хранить скомпилированные lib DCU-файлы для библиотек без исходного кода.
Пример структуры хранилища библиотек:
+ superobject
| |- superobject-1.1
| +- superobject-1.2
+ synapse
| |- synapse-1.0
| |- synapse-r209
| +- synapse-r209-private
+indy
|- indy-9.0
+- indy-10.0.0.52
Доступ к библиотекам / Путь к библиотеке
Чтобы позволить любому разработчику хранить библиотеки в любом месте, где он хочет, используйте OS Environment Vars.Delphi IDE / Lazarus IDE в параметрах проекта или путь к библиотеке IDE могут заменять макросы $ (env-var-name) на значение env var во время сборки.Создайте env var PascalCommonLibs=D:\PascalCommonLibs
, укажите путь к корню вашего хранилища библиотек, затем добавьте библиотеки, которые вы хотите, в путь к библиотеке.
Пример пути к библиотеке для Delphi:
$(PascalCommonLibs)\superobject\superobject-1.2
$(PascalCommonLibs)\synapse\synapse-r209-private
Пример пути к библиотекедля Lazarus:
$Env(PascalCommonLibs)\superobject\superobject-1.2
$Env(PascalCommonLibs)\synapse\synapse-r209-private
Теперь вы даже можете создать список путей к библиотекам по умолчанию, который каждый разработчик может просто вставить в путь к библиотеке IDE.
Этот метод также упрощает автоматическую настройку сборки, просто используйтеPascalCommonLibs
env var в скриптах для указания библиотеки или исходного пути поиска.