строит библиотеку из набора *.sci-файлов, определяющих функции в указанной директории
genlib(lib_name) genlib(lib_name, dir_name) genlib(lib_name, dir_name, Force) genlib(lib_name, dir_name, Force, verb) genlib(lib_name [,path=dir_name] [,verbose=verb] [,force=Force])
.sci-функций, и где генерируется файл
lib и определяющая, где будет храниться
библиотека. По умолчанию рассматривается текущая рабочая директория.
![]() | Директория dir_name directory и её lib-
и .bin-файлы должны иметь право на запись. |
%f). Установите
его в %t, чтобы принудить к рекомпиляции sci-файлов.
%f).
Установите его в %t, чтобы отобразить больше
информации во время сборки.
genlib(..) выбирает все файлы, принадлежащие директории
dir_name и с расширением .sci.
Поддиректории, если они есть, никогда не рассматриваются. Если требуется,
они должны компилироваться отдельно в независимые библиотеки.
Затем создаётся редактируемый XML-файл lib в директории
dir_name. Имя lib_name библиотеки
записывается в него.
Далее, для каждого .sci-файла:
.bin-файла в dir_name
с тем же базовым именем (что и для исходной сборки библиотеки), либо.sci-файла было изменено
со времени предыдущей сборки,.sci-файл скомпилирован (почти
как если бы это было с exec(..)):
если он содержит по крайней мере один блок
function .. endfunction, то
двоичный .bin-файл с тем же базовым именем
генерируется и хранится в dir_name.
Он содержит бинарный код ВСЕХ функций, определённых в
.sci-файле исходного кода.
.sci-файла,
то эта функция записывается в lib-файл.
.sci-файла не записывается: всё
её содержимое рассматривается как мёртвый код.![]() | Если файл test.sci определяет функцию
test() И другие функции, такие как
sub(), то функции sub() тогда рассматриваются как приватные для test(). Например,
|
.bin-файл не будет
генерироваться: всё содержимое .sci-файла
рассматривается как мёртвый код.lib-файле, то это содержимое
сохраняется.Если используется опция force=%t, то все
.sci-файлы компилируются, даже если их содержимое не
было изменено.
Когда из директории библиотеки некоторые старые .sci-файлы были удалены
и при этом оставшиеся .sci-файлы остались неизменными, то пересборка
библиотеки без force=%t в любом случае обновит
список членов библиотеки.
Если включена опция verbose, то во время сборки
отображается больше информации.
| Version | Description |
| 6.0.0 |
|