aboutsummaryrefslogtreecommitdiff
path: root/documentation/content/ru/books/porters-handbook/uses/_index.adoc
diff options
context:
space:
mode:
Diffstat (limited to 'documentation/content/ru/books/porters-handbook/uses/_index.adoc')
-rw-r--r--documentation/content/ru/books/porters-handbook/uses/_index.adoc2187
1 files changed, 1505 insertions, 682 deletions
diff --git a/documentation/content/ru/books/porters-handbook/uses/_index.adoc b/documentation/content/ru/books/porters-handbook/uses/_index.adoc
index 3e441f697e..d7afe4753b 100644
--- a/documentation/content/ru/books/porters-handbook/uses/_index.adoc
+++ b/documentation/content/ru/books/porters-handbook/uses/_index.adoc
@@ -1,26 +1,27 @@
---
-title: Глава 15. Значения USES
-prev: books/porters-handbook/keeping-up
+description: 'Макросы USES упрощают объявление требований и настроек для порта FreeBSD'
next: books/porters-handbook/versions
-showBookMenu: true
-weight: 15
params:
- path: "/books/porters-handbook/uses/"
+ path: /books/porters-handbook/uses/
+prev: books/porters-handbook/keeping-up
+showBookMenu: 'true'
+tags: ["uses", "macros", "introduction", "guide"]
+title: 'Глава 17. Использование макроса USES'
+weight: 17
---
[[uses]]
-= Значения `USES`
+= Использование макроса `USES`
:doctype: book
:toc: macro
:toclevels: 1
:icons: font
:sectnums:
:sectnumlevels: 6
-:sectnumoffset: 15
+:sectnumoffset: 17
:partnums:
:source-highlighter: rouge
:experimental:
-:c-plus-plus: c++
:images-path: books/porters-handbook/
ifdef::env-beastie[]
@@ -48,17 +49,14 @@ include::../../../../../shared/asciidoctor.adoc[]
endif::[]
[[uses-intro]]
-== An Introduction to `USES`
+== Введение в `USES`
-`USES` macros make it easy to declare requirements and settings for a port.
-They can add dependencies, change building behavior, add metadata to packages, and so on, all by selecting simple, preset values.
+Макросы `USES` упрощают объявление требований и настроек для порта. Они могут добавлять зависимости, изменять поведение при сборке, добавлять метаданные в пакеты и так далее, просто выбирая предустановленные значения.
-Each section in this chapter describes a possible value for `USES`, along with its possible arguments.
-Arguments are appended to the value after a colon (`:`).
-Multiple arguments are separated by commas (`,`).
+Каждый раздел в этой главе описывает возможное значение для `USES`, а также его возможные аргументы. Аргументы добавляются к значению после двоеточия (`:`). Несколько аргументов разделяются запятыми (`,`).
[[uses-intro-ex1]]
-.Using Multiple Values
+.Использование нескольких значений
[example]
====
[.programlisting]
@@ -68,7 +66,7 @@ USES= bison perl
====
[[uses-intro-ex2]]
-.Adding an Argument
+.Добавление аргумента
[example]
====
[.programlisting]
@@ -78,7 +76,7 @@ USES= tar:xz
====
[[uses-intro-ex3]]
-.Adding Multiple Arguments
+.Добавление нескольких аргументов
[example]
====
[.programlisting]
@@ -88,7 +86,7 @@ USES= drupal:7,theme
====
[[uses-intro-ex4]]
-.Mixing it All Together
+.Смешивая всё вместе
[example]
====
[.programlisting]
@@ -100,418 +98,721 @@ USES= pgsql:9.3+ cpe python:2.7,build
[[uses-7z]]
== `7z`
-Possible arguments: (none), `p7zip`, `partial`
+Возможные аргументы: (нет), `p7zip`, `partial`
-Extract using man:7z[1] instead of man:bsdtar[1] and sets `EXTRACT_SUFX=.7z`.
-The `p7zip` option forces a dependency on the `7z` from package:archivers/p7zip[] if the one from the base system is not able to extract the files.
-`EXTRACT_SUFX` is not changed if the `partial` option is used, this can be used if the main distribution file does not have a [.filename]#.7z# extension.
+Извлечение с использованием man:7z[1] вместо man:bsdtar[1] и устанавливает `EXTRACT_SUFX=.7z`. Опция `p7zip` добавляет зависимость от `7z` из package:archivers/p7zip[], если версия из базовой системы не может извлечь файлы. `EXTRACT_SUFX` не изменяется, если используется опция `partial`, это может быть полезно, если основной дистрибутивный файл не имеет расширения [.filename]#.7z#.
[[uses-ada]]
== `ada`
-Possible arguments: (none), `5`, `6`
+Возможные аргументы: (нет), `6`, `12`, `(запуск)`
+
+Зависит от компилятора с поддержкой Ada и устанавливает `CC` соответствующим образом. По умолчанию используется `gcc6-aux` из портов.
+
+[[uses-angr]]
+== `angr`
+
+Возможные аргументы: `binaries`, `nose`
+
+Обеспечить поддержку портов, требующих https://github.com/angr/angr[платформу бинарного анализа angr].
+
+Если присутствует аргумент `binaries`, для тестирования порта требуются специальные бинарные файлы `angr`.
+
+Если присутствует аргумент `nose`, порт использует `nosetests` для цели тестирования. Этот аргумент подразумевает `USES=python:test`.
+
+Фреймворк предоставляет следующие переменные, которые могут быть установлены портом:
+
+`ANGR_VERSION`::
+Версия программ проекта `angr`.
+
+`ANGR_BINARIES_TAGNAME`::
+Имя тега для бинарных файлов `angr`.
+
+`ANGR_NOSETESTS`::
+Путь к программе `nosetests`.
+
+[[uses-ansible]]
+== `ansible`
+
+Возможные аргументы: `env`, `module`, `plugin`
+
+Обеспечивает поддержку портов, зависящих от пакета package:sysutils/ansible[].
+
+Если присутствует аргумент `env`, порт не зависит от package:sysutils/ansible[], но требует установки некоторых переменных Ansible.
+
+Если присутствует аргумент `module`, то порт является модулем Ansible.
+
+Если присутствует аргумент `plugin`, то порт является плагином Ansible.
+
+Фреймворк предоставляет следующие переменные порту:
+
+`ANSIBLE_CMD`::
+Путь к программе ansible.
+
+`ANSIBLE_DOC_CMD`::
+Путь к программе ansible-doc.
+
+`ANSIBLE_RUN_DEPENDS`::
+RUN_DEPENDS с портом Ansible.
+
+`ANSIBLE_DATADIR`::
+Путь к корню структуры каталогов, где хранятся все модули и плагины Ansible.
+
+`ANSIBLE_ETCDIR`::
+Путь к каталогу etc Ansible.
+
+`ANSIBLE_PLUGINS_PREFIX`::
+Путь к каталогу "plugins" в `${ANSIBLE_DATADIR}`.
+`ANSIBLE_MODULESDIR`::
+Путь к каталогу для локальных модулей Ansible.
+
+`ANSIBLE_PLUGINSDIR`::
+Путь к каталогу для локальных плагинов Ansible.
+
+`ANSIBLE_PLUGIN_TYPE`::
+Тип плагина Ansible (например, "connection", "inventory" или "vars").
+
+[[uses-apache]]
+== `apache`
+
+Возможные аргументы: (нет), `2.4`, `build`, `run`, `server`
+
+Обеспечивает поддержку портов, зависящих от веб-сервера Apache.
+
+Аргумент `version` можно использовать для указания конкретной версии Apache httpd. Можно задать определённую версию (`USES=apache:2.4`), минимальную версию (`USES=apache:2.4+`) или максимальную версию (`USES=apache:-2.4`).
+
+Если указан аргумент `build`, к порту добавляется зависимость для сборки.
+
+Если указан аргумент `run`, к порту добавляется зависимость времени выполнения.
+
+Если указан аргумент `server`, это означает, что порт является серверным.
+
+Фреймворк предоставляет следующие переменные, которые могут быть установлены портом:
+
+`AP_FAST_BUILD`::
+Автоматическая сборка модуля
+
+`AP_GENPLIST`::
+Автоматическое создание `PLIST` плюс добавление модуля в отключенном состоянии в [.filename]#httpd.conf# (только если нет файла `pkg-plist`)
+
+`MODULENAME`::
+Имя модуля Apache. По умолчанию: `${PORTNAME}`
+
+`SHORTMODNAME`::
+Краткое название модуля Apache. По умолчанию: `${MODULENAME:S/mod_//}`
+
+`SRC_FILE`::
+Исходный файл модуля APACHE. По умолчанию: `${MODULENAME}.c`
+
+Следующие переменные могут быть доступны для порта:
+
+`APACHE_VERSION`::
+Основная-вспомогательная версия выбранного сервера Apache, например 2.4
+
+`APACHEETCDIR`::
+Расположение каталога конфигурации Apache. По умолчанию: [.filename]#${LOCALBASE}/etc/apache24#
+
+`APACHEINCLUDEDIR`::
+Расположение include-файлов Apache. По умолчанию: [.filename]#${LOCALBASE}/include/apache24#
+
+`APACHEMODDIR`::
+Расположение модулей Apache. По умолчанию: [.filename]#${LOCALBASE}/libxexec/apache24#
+
+`APACHE_DEFAULT`::Версия Apache по умолчанию
-Depends on an Ada-capable compiler, and sets `CC` accordingly.
-Defaults to use gcc 5 from ports.
-Use the `:_X_` version option to force building with a different version.
[[uses-autoreconf]]
== `autoreconf`
-Possible arguments: (none), `build`
+Возможные аргументы: (нет), `build`
+
+Выполняет `autoreconf`. Эта команда объединяет функциональность `aclocal`, `autoconf`, `autoheader`, `automake`, `autopoint` и `libtoolize`. Каждая из этих команд применяется к [.filename]#${AUTORECONF_WRKSRC}/configure.ac# или его старому названию [.filename]#${AUTORECONF_WRKSRC}/configure.in#. Если [.filename]#configure.ac# определяет подкаталоги с их собственными [.filename]#configure.ac# с использованием `AC_CONFIG_SUBDIRS`, `autoreconf` также рекурсивно обновит их. Аргумент `:build` только добавляет зависимости времени сборки на эти инструменты, но не запускает `autoreconf`. Порт может установить `AUTORECONF_WRKSRC`, если `WRKSRC` не содержит путь к [.filename]#configure.ac#.
+
+[[uses-azurepy]]
+== `azurepy`
-Runs `autoreconf`.
-It encapsulates the `aclocal`, `autoconf`, `autoheader`, `automake`, `autopoint`, and `libtoolize` commands.
-Each command applies to [.filename]#${AUTORECONF_WRKSRC}/configure.ac# or its old name, [.filename]#${AUTORECONF_WRKSRC}/configure.in#.
-If [.filename]#configure.ac# defines subdirectories with their own [.filename]#configure.ac# using `AC_CONFIG_SUBDIRS`, `autoreconf` will recursively update those as well.
-The `:build` argument only adds build time dependencies on those tools but does not run `autoreconf`.
-A port can set `AUTORECONF_WRKSRC` if `WRKSRC` does not contain the path to [.filename]#configure.ac#.
+Возможные аргументы: (отсутствуют)
+
+Обеспечить поддержку портов `py-azure*`. Удаляет пространства имен `azure` и очищает общие файлы.
[[uses-blaslapack]]
== `blaslapack`
-Possible arguments: (none), `atlas`, `netlib` (default), `gotoblas`, `openblas`
+Возможные аргументы: (нет), `atlas`, `netlib` (по умолчанию), `gotoblas`, `openblas`
-Adds dependencies on Blas / Lapack libraries.
+Добавляет зависимости от библиотек Blas / Lapack.
[[uses-bdb]]
== `bdb`
-Possible arguments: (none), `48`, `5` (default), `6`
+Возможные аргументы: (отсутствуют), `5` (по умолчанию), `18`
-Add dependency on the Berkeley DB library.
-Default to package:databases/db5[].
-It can also depend on package:databases/db48[] when using the `:48` argument or package:databases/db6[] with `:6`.
-It is possible to declare a range of acceptable values, `:48+` finds the highest installed version, and falls back to 4.8 if nothing else is installed.
-`INVALID_BDB_VER` can be used to specify versions which do not work with this port.
-The framework exposes the following variables to the port:
+Добавить зависимость от библиотеки Berkeley DB. По умолчанию используется package:databases/db5[]. Также может зависеть от package:databases/db18[] при использовании аргумента `:18`. Можно объявить диапазон допустимых значений: `:5+` находит самую высокую установленную версию и возвращается к 5, если ничего другого не установлено. `INVALID_BDB_VER` можно использовать для указания версий, которые не работают с этим портом. Фреймворк предоставляет порту следующие переменные:
`BDB_LIB_NAME`::
-The name of the Berkeley DB library.
-For example, when using package:databases/db5[], it contains `db-5.3`.
+Имя библиотеки Berkeley DB. Например, при использовании package:databases/db5[] она содержит `db-5.3`.
`BDB_LIB_CXX_NAME`::
-The name of the Berkeley DBC++ library.
-For example, when using package:databases/db5[], it contains `db_cxx-5.3`.
+Название библиотеки Berkeley DBC++. Например, при использовании package:databases/db5[] она содержит `db_cxx-5.3`.
`BDB_INCLUDE_DIR`::
-The location of the Berkeley DB include directory.
-For example, when using package:databases/db5[], it will contain `${LOCALBASE}/include/db5`.
+Расположение каталога с заголовочными файлами Berkeley DB. Например, при использовании пакета package:databases/db5[], он будет содержать `${LOCALBASE}/include/db5`.
`BDB_LIB_DIR`::
-The location of the Berkeley DB library directory.
-For example, when using package:databases/db5[], it contains `${LOCALBASE}/lib`.
+Расположение каталога библиотеки Berkeley DB. Например, при использовании package:databases/db5[], он содержит `${LOCALBASE}/lib`.
`BDB_VER`::
-The detected Berkeley DB version.
-For example, if using `USES=bdb:48+` and Berkeley DB 5 is installed, it contains `5`.
+Обнаруженная версия Berkeley DB. Например, при использовании `USES=bdb:5+` и установленной Berkeley DB 18, будет содержать `18`.
[IMPORTANT]
====
-package:databases/db48[] is deprecated and unsupported.
-It must not be used by any port.
+package:databases/db48[] устарел и не поддерживается. Он не должен использоваться ни одним портом.
====
[[uses-bison]]
== `bison`
-Possible arguments: (none), `build`, `run`, `both`
+Возможные аргументы: (нет), `build`, `run`, `both`
+
+Использует пакет package:devel/bison[] По умолчанию, без аргументов или с аргументом `build`, подразумевается, что `bison` является зависимостью на этапе сборки, `run` — зависимостью на этапе выполнения, а `both` — зависимостью как на этапе сборки, так и на этапе выполнения.
+
+[[uses-budgie]]
+== `budgie`
-Uses package:devel/bison[] By default, with no arguments or with the `build` argument, it implies `bison` is a build-time dependency, `run` implies a run-time dependency, and `both` implies both run-time and build-time dependencies.
+Возможные аргументы: (отсутствуют)
+
+Предоставить поддержку окружения рабочего стола Budgie. Используйте `USE_BUDGIE` для выбора необходимых компонентов порта. Дополнительную информацию см. в разделе crossref:special[using-budgie,Использование Budgie].
[[uses-cabal]]
== `cabal`
[IMPORTANT]
====
-Ports should not be created for Haskell libraries, see crossref:special[haskell-libs,Haskell Libraries] for more information.
+Порты не следует создавать для библиотек Haskell, подробнее см. в crossref:special[haskell-libs,Библиотеки Haskell].
====
-Possible arguments: (none), `hpack`
+Возможные аргументы: (отсутствуют), `hpack`, `nodefault`
+
+Устанавливает значения и цели по умолчанию, используемые для сборки программного обеспечения на Haskell с помощью Cabal. Добавляется зависимость для сборки на порт компилятора Haskell (package:lang/ghc[]). Если в переменной `BUILD_DEPENDS` уже указана другая версия GHC (например, package:lang/ghc810[]), она будет использована вместо версии по умолчанию. Если указан аргумент `hpack`, добавляется зависимость для сборки на package:devel/hs-hpack[], и `hpack` вызывается на этапе конфигурации для генерации файла .cabal. Если указан аргумент `nodefault`, фреймворк не будет пытаться загрузить основной дистрибутивный файл из Hackage. Этот аргумент добавляется неявно, если присутствует `USE_GITHUB` или `USE_GITLAB`.
-Sets default values and targets used to build Haskell software using Cabal.
-A build dependency on the Haskell compiler port (GHC) is added.
-If `hpack` argument is given, a build dependency on package:devel/hs-hpack[] is added and `hpack` is invoked at configuration step to generate.
-cabal file.
+Фреймворк предоставляет следующие переменные:
-The framework provides the following variables:
+`CABAL_REVISION`::
+Пакеты Haskell, размещённые на Hackage, могут иметь ревизии. Установите этот параметр в целочисленное значение, чтобы использовать исправленное описание пакета.
`USE_CABAL`::
-If the software uses Haskell dependencies, list them in this variable.
-Each item should be present on Hackage and be listed in form `packagename-_0.1.2_`.
-Dependencies can have revisions, which are specified after the `_` symbol.
-Automatic generation of dependency list is supported, see crossref:special[using-cabal,Building Haskell Applications with `cabal`].
+Если программное обеспечение использует зависимости на Haskell, перечислите их в этой переменной. Каждый элемент должен присутствовать на Hackage и быть указан в формате `имяпакета-_0.1.2_`. Зависимости также могут иметь ревизии, которые указываются после символа `_`. Поддерживается автоматическое формирование списка зависимостей, см. crossref:special[using-cabal,Сборка приложений на Haskell с помощью `cabal`].
`CABAL_FLAGS`::
-List of flags to be passed to `cabal-install` during the configuring and building stage.
-The flags are passed verbatim.
+Список флагов, передаваемых `cabal-install` на этапах настройки и сборки. Флаги передаются в исходном виде. Эта переменная обычно используется для включения или отключения флагов, объявленных в файле .cabal. Передайте `foo`, чтобы включить флаг `foo`, и `-foo`, чтобы отключить его.
-`EXECUTABLES`::
-List of executable files installed by the port.
-Default value: `${PORTNAME}`.
-Items from this list are automatically added to pkg-plist.
+`CABAL_EXECUTABLES`::
+Список исполняемых файлов, устанавливаемых портом. Значение по умолчанию: `${PORTNAME}`. Для получения списка возможных значений этой переменной обратитесь к файлу .cabal портируемого проекта. Каждое значение соответствует разделу `executable` в файле .cabal. Элементы из этого списка автоматически добавляются в pkg-plist.
`SKIP_CABAL_PLIST`::
-If defined, do not add items from `${EXECUTABLES}` to pkg-plist.
+Если определено, не добавлять элементы из `${CABAL_EXECUTABLES}` в pkg-plist.
`opt_USE_CABAL`::
-Adds items to `${USE_CABAL}` depending on `opt` option.
+Добавляет элементы в `${USE_CABAL}` в зависимости от опции `opt`.
-`opt_EXECUTABLES`::
-Adds items to `${EXECUTABLES}` depending on `opt` option.
+`opt_CABAL_EXECUTABLES`::
+Добавляет элементы в `${CABAL_EXECUTABLES}` в зависимости от опции `opt`.
`opt_CABAL_FLAGS`::
-If `opt` is enabled, append the value to `${CABAL_FLAGS}`.
-Otherwise, append `-value` to disable the flag.
+Если `opt` включён, добавить значение к `${CABAL_FLAGS}`. В противном случае добавить `-value`, чтобы отключить флаг. Обратите внимание, что это поведение немного отличается от простого `CABAL_FLAGS`, так как оно не принимает значения, начинающиеся с `-`.
+
+`CABAL_WRAPPER_SCRIPTS`::
+Подмножество `${CABAL_EXECUTABLES}`, содержащее программы на Haskell, которые будут обёрнуты в shell-скрипт, устанавливающий переменные окружения `*_datadir` перед запуском программы. Это также приводит к тому, что фактический бинарный файл Haskell устанавливается в каталог `libexec/cabal/`. Данная настройка необходима для программ на Haskell, которые устанавливают свои файлы данных в каталог `share/`.
`FOO_DATADIR_VARS`::
-For an executable named `FOO` list Haskell packages, whose data files should be accessible by the executable.
+Список дополнительных пакетов Haskell, чьи файлы данных должны быть доступны исполняемому файлу с именем `FOO`. Исполняемый файл должен быть частью `${CABAL_WRAPPER_SCRIPTS}`. Указанные пакеты Haskell не должны иметь суффикса версии.
+
+`CABAL_PROJECT`::
+Некоторые проекты на Haskell могут уже иметь файл `cabal.project`, который также создаётся фреймворком портов. Если это так, используйте эту переменную, чтобы указать, что делать с оригинальным файлом `cabal.project`. Установка этой переменной в значение `remove` приведёт к удалению оригинального файла. Установка этой переменной в значение `append` приведёт к следующему:
+. Исходный файл переместится в `cabal.project.${PORTNAME}` на этапе `extract`.
+. Исходный файл `cabal.project.${PORTNAME}` и сгенерированный `cabal.project` объединятся в один файл после этапа `patch`. Использование `append` позволяет выполнить патчинг исходного файла перед его объединением.
[[uses-cargo]]
== `cargo`
-Possible arguments: (none)
+Возможные аргументы: (отсутствуют)
-Uses Cargo for configuring, building, and testing.
-It can be used to port Rust applications that use the Cargo build system.
-For more information see crossref:special[using-cargo,Building Rust Applications with `cargo`].
+Использует Cargo для настройки, сборки и тестирования. Может применяться для портирования приложений на Rust, использующих систему сборки Cargo. Дополнительную информацию смотрите в crossref:special[using-cargo,Сборка приложений на Rust с помощью `cargo`].
[[uses-charsetfix]]
== `charsetfix`
-Possible arguments: (none)
+Возможные аргументы: (отсутствуют)
+
+Предотвращает установку файла [.filename]#charset.alias# портом. Этот файл должен устанавливаться только пакетом package:converters/libiconv[]. Переменная `CHARSETFIX_MAKEFILEIN` может быть установлена в путь относительно `WRKSRC`, если [.filename]#charset.alias# не устанавливается через [.filename]#${WRKSRC}/Makefile.in#.
+
+[[uses-cl]]
+== `cl`
+
+Возможные аргументы: (отсутствуют)
+
+Предоставляет поддержку портов Common Lisp.
+
+Фреймворк предоставляет следующие переменные, которые могут быть установлены портами:
+
+`ASDF_MODULES`::
+Список модулей `ASDF` для сборки, когда установлен `FASL_TARGET` (по умолчанию `PORTNAME`)
+
+`FASL_TARGET`::
+Собрать fasl вариант порта (один из `ccl`, `clisp` или `sbcl`)
+
+`USE_ASDF`::
+Зависит от пакета package:devel/cl-asdf[]
+
+`USE_ASDF_FASL`::
+Зависит от `devel/cl-asdf-<FASL_TARGET>`
+
+`USE_CCL`::
+Зависит от пакета package:lang/ccl[]; подразумевается при `FASL_TARGET=ccl`
+
+`USE_CLISP`::
+Зависит от пакета package:lang/clisp[]; подразумевается при `FASL_TARGET=clisp`
+
+`USE_SBCL`::
+Зависит от пакета package:lang/sbcl[]; подразумевается, если `FASL_TARGET=SBCL`
-Prevents the port from installing [.filename]#charset.alias#.
-This must be installed only by package:converters/libiconv[].
-`CHARSETFIX_MAKEFILEIN` can be set to a path relative to `WRKSRC` if [.filename]#charset.alias# is not installed by [.filename]#${WRKSRC}/Makefile.in#.
+
+Фреймворк предоставляет следующие переменные, которые могут быть прочитаны портами:
+
+`ASDF_PATHNAME`::
+Путь к исходному коду CL
+
+`ASDF_REGISTRY`::
+Путь к реестру CL, содержащему файлы asd
+
+`CCL`::
+Путь к компилятору Clozure Common Lisp
+
+`CLISP`::
+Путь к компилятору GNU Common Lisp
+
+`CL_LIBDIR_REL`::
+Каталог библиотек CL относительно `LOCALBASE` или `PREFIX`
+
+`FASL_DIR_REL`::
+Относительный путь к скомпилированным fasl-файлам; зависит от `FASL_TARGET`
+
+`FASL_PATHNAME`::
+Путь к CL fasl
+
+`LISP_EXTRA_ARG`::
+Дополнительные аргументы, используемые при сборке fasl
+
+`SBCL`::
+Путь к компилятору Steel Bank Common Lisp
[[uses-cmake]]
== `cmake`
-Possible arguments: (none), `insource`, `noninja`, `run`, `testing`
+Возможные аргументы: (отсутствуют), `insource`, `noninja`, `run`, `testing`
-Use CMake for configuring the port and generating a build system.
+Используйте CMake для настройки порта и генерации системы сборки.
-By default an out-of-source build is performed, leaving the sources in `WRKSRC` free from build artifacts.
-With the `insource` argument, an in-source build will be performed instead.
-This argument should be an exception, used only when a regular out-of-source build does not work.
+По умолчанию выполняется сборка в дереве вне исходного кода, оставляя исходные файлы в `WRKSRC` свободными от артефактов сборки. С аргументом `insource` вместо этого будет выполнена сборка в исходном коде. Этот аргумент должен быть исключением и использоваться только в случае, когда обычная сборка вне исходного кода не работает.
-By default Ninja (package:devel/ninja[]) is used for the build.
-In some cases this does not work correctly.
-With the `noninja` argument, the build will use regular `make` for builds.
-This argument should only be used if a Ninja-based build does not work.
+По умолчанию для сборки используется Ninja (package:devel/ninja[]). В некоторых случаях это может работать некорректно. С аргументом `noninja` сборка будет использовать обычный `make`. Этот аргумент следует применять только если сборка на основе Ninja не работает.
-With the `run` argument, a run dependency is registered in addition to a build dependency.
+С аргументом `run` регистрируется зависимость во время выполнения в дополнение к зависимости при сборке.
-With the `testing` argument, a test-target is added that uses CTest.
-When running tests the port will be re-configured for testing and re-built.
+С аргументом `testing`, добавляется цель тестирования, использующая CTest. При запуске тестов порт будет переконфигурирован для тестирования и пересобран.
-For more information see crossref:special[using-cmake,Using `cmake`].
+Для получения дополнительной информации см. crossref:special[using-cmake,Использование `cmake`].
[[uses-compiler]]
== `compiler`
-Possible arguments: (none), `env` (default, implicit), `{c-plus-plus}17-lang`, `{c-plus-plus}14-lang`, `{c-plus-plus}11-lang`, `gcc-{c-plus-plus}11-lib`, `{c-plus-plus}11-lib`, `{c-plus-plus}0x`, `c11`, `nestedfct`, `features`
+Возможные аргументы: (нет), `env` (по умолчанию, подразумевается), `{cpp}17-lang`, `{cpp}14-lang`, `{cpp}11-lang`, `gcc-{cpp}11-lib`, `{cpp}11-lib`, `{cpp}0x`, `c11`, `nestedfct`, `features`
-Determines which compiler to use based on any given wishes.
-Use `{c-plus-plus}17-lang` if the port needs a {c-plus-plus}17-capable compiler, `{c-plus-plus}14-lang` if the port needs a {c-plus-plus}14-capable compiler, `{c-plus-plus}11-lang` if the port needs a {c-plus-plus}11-capable compiler, `gcc-{c-plus-plus}11-lib` if the port needs the `g++` compiler with a {c-plus-plus}11 library, or `{c-plus-plus}11-lib` if the port needs a {c-plus-plus}11-ready standard library.
-If the port needs a compiler understanding {c-plus-plus}0X, C11 or nested functions, the corresponding parameters should be used.
+Определяет, какой компилятор использовать, исходя из заданных предпочтений. Используйте `{cpp}17-lang`, если порту требуется компилятор с поддержкой {cpp}17, `{cpp}14-lang`, если порту требуется компилятор с поддержкой {cpp}14, `{cpp}11-lang`, если порту требуется компилятор с поддержкой {cpp}11, `gcc-{cpp}11-lib`, если порту требуется компилятор `g++` с библиотекой {cpp}11, или `{cpp}11-lib`, если порту требуется стандартная библиотека с поддержкой {cpp}11. Если порту требуется компилятор, понимающий {cpp}0X, C11 или вложенные функции, следует использовать соответствующие параметры.
-Use `features` to request a list of features supported by the default compiler.
-After including [.filename]#bsd.port.pre.mk# the port can inspect the results using these variables:
+Используйте `features` для запроса списка возможностей, поддерживаемых компилятором по умолчанию. После включения [.filename]#bsd.port.pre.mk# порт может проверить результаты с помощью следующих переменных:
-* `COMPILER_TYPE`: the default compiler on the system, either gcc or clang
-* `ALT_COMPILER_TYPE`: the alternative compiler on the system, either gcc or clang. Only set if two compilers are present in the base system.
-* `COMPILER_VERSION`: the first two digits of the version of the default compiler.
-* `ALT_COMPILER_VERSION`: the first two digits of the version of the alternative compiler, if present.
-* `CHOSEN_COMPILER_TYPE`: the chosen compiler, either gcc or clang
-* `COMPILER_FEATURES`: the features supported by the default compiler. It currently lists the {c-plus-plus} library.
+* `COMPILER_TYPE`: компилятор по умолчанию в системе, gcc или clang
+* `ALT_COMPILER_TYPE`: альтернативный компилятор в системе, gcc или clang. Устанавливается только при наличии двух компиляторов в базовой системе.
+* `COMPILER_VERSION`: первые две цифры версии компилятора по умолчанию.
+* `ALT_COMPILER_VERSION`: первые две цифры версии альтернативного компилятора, если он присутствует.
+* `CHOSEN_COMPILER_TYPE`: выбранный компилятор, gcc или clang
+* `COMPILER_FEATURES`: возможности, поддерживаемые компилятором по умолчанию. В настоящее время указана библиотека {cpp}.
[[uses-cpe]]
== `cpe`
-Possible arguments: (none)
+Возможные аргументы: (отсутствуют)
-Include Common Platform Enumeration (CPE) information in package manifest as a CPE 2.3 formatted string.
-See the http://scap.nist.gov/specifications/cpe/[CPE specification] for details.
-To add CPE information to a port, follow these steps:
+Включает информацию о Common Platform Enumeration (CPE) в манифест пакета в виде строки формата CPE 2.3. Подробности см. в https://scap.nist.gov/specifications/cpe/[спецификации CPE]. Чтобы добавить информацию CPE в порт, выполните следующие шаги:
[.procedure]
-. Search for the official CPE entry for the software product either by using the NVD's http://web.nvd.nist.gov/view/cpe/search[CPE search engine] or in the http://static.nvd.nist.gov/feeds/xml/cpe/dictionary/official-cpe-dictionary_v2.3.xml[official CPE dictionary] (warning, very large XML file). _Do not ever make up CPE data._
-. Add `cpe` to `USES` and compare the result of `make -V CPE_STR` to the CPE dictionary entry. Continue one step at a time until `make -V CPE_STR` is correct.
-. If the product name (second field, defaults to `PORTNAME`) is incorrect, define `CPE_PRODUCT`.
-. If the vendor name (first field, defaults to `CPE_PRODUCT`) is incorrect, define `CPE_VENDOR`.
-. If the version field (third field, defaults to `PORTVERSION`) is incorrect, define `CPE_VERSION`.
-. If the update field (fourth field, defaults to empty) is incorrect, define `CPE_UPDATE`.
-. If it is still not correct, check [.filename]#Mk/Uses/cpe.mk# for additional details, or contact the {ports-secteam}.
-. Derive as much as possible of the CPE name from existing variables such as `PORTNAME` and `PORTVERSION`. Use variable modifiers to extract the relevant portions from these variables rather than hardcoding the name.
-. _Always_ run `make -V CPE_STR` and check the output before committing anything that changes `PORTNAME` or `PORTVERSION` or any other variable which is used to derive `CPE_STR`.
+. Поищите официальную запись CPE для программного продукта, используя либо https://web.nvd.nist.gov/view/cpe/search[поисковую систему CPE] от NVD, либо https://nvd.nist.gov/feeds/xml/cpe/dictionary/official-cpe-dictionary_v2.3.xml.gz[официальный словарь CPE] (предупреждение: очень большой XML-файл). _Никогда не создавайте данные CPE самостоятельно._
+. Добавьте `cpe` в `USES` и сравните результат выполнения `make -V CPE_STR` с записью в словаре CPE. Продолжайте шаг за шагом, пока результат `make -V CPE_STR` не станет корректным.
+. Если название продукта (второе поле, по умолчанию `PORTNAME`) указано неверно, определите `CPE_PRODUCT`.
+. Если название производителя (первое поле, по умолчанию `CPE_PRODUCT`) указано неверно, определите `CPE_VENDOR`.
+. Если поле версии (третье поле, по умолчанию `PORTVERSION`) указано неверно, определите `CPE_VERSION`.
+. Если поле обновления (четвертое поле, по умолчанию пустое) указано неверно, определите `CPE_UPDATE`.
+. Если это всё ещё неверно, проверьте файл [.filename]#Mk/Uses/cpe.mk# для получения дополнительной информации или свяжитесь с {ports-secteam}.
+. Извлекайте как можно больше информации для имени CPE из существующих переменных, таких как `PORTNAME` и `PORTVERSION`. Используйте модификаторы переменных для извлечения соответствующих частей из этих переменных, вместо того чтобы жестко прописывать имя.
+. _Всегда_ выполняйте `make -V CPE_STR` и проверяйте вывод перед коммитом любых изменений, затрагивающих `PORTNAME`, `PORTVERSION` или любые другие переменные, используемые для формирования `CPE_STR`.
[[uses-cran]]
== `cran`
-Possible arguments: (none), `auto-plist`, `compiles`
+Возможные аргументы: (нет), `auto-plist`, `compiles`
-Uses the Comprehensive R Archive Network.
-Specify `auto-plist` to automatically generate [.filename]#pkg-plist#.
-Specify `compiles` if the port has code that need to be compiled.
+Использует Comprehensive R Archive Network. Укажите `auto-plist` для автоматического создания [.filename]#pkg-plist#. Укажите `compiles`, если порт содержит код, который необходимо компилировать.
[[uses-desktop-file-utils]]
== `desktop-file-utils`
-Possible arguments: (none)
+Возможные аргументы: (отсутствуют)
-Uses update-desktop-database from package:devel/desktop-file-utils[].
-An extra post-install step will be run without interfering with any post-install steps already in the port [.filename]#Makefile#.
-A line with <<plist-keywords-desktop-file-utils,`@desktop-file-utils`>> will be added to the plist.
+Использует update-desktop-database из пакета package:devel/desktop-file-utils[]. Дополнительный шаг post-install будет выполнен без вмешательства в уже существующие шаги post-install в [.filename]#Makefile# порта. Строка с crossref:plist[plist-keywords-desktop-file-utils,`@desktop-file-utils`] будет добавлена в plist. Используйте этот макрос только если порт предоставляет файл `.desktop`, содержащий запись `MimeType`.
[[uses-desthack]]
== `desthack`
-Possible arguments: (none)
+Возможные аргументы: (отсутствуют)
-Changes the behavior of GNU configure to properly support `DESTDIR` in case the original software does not.
+Изменяет поведение GNU configure для корректной поддержки `DESTDIR` в случае, если исходное программное обеспечение этого не делает.
[[uses-display]]
== `display`
-Possible arguments: (none), _ARGS_
+Возможные аргументы: (отсутствуют), _ARGS_
-Set up a virtual display environment.
-If the environment variable `DISPLAY` is not set, then Xvfb is added as a build dependency, and `CONFIGURE_ENV` is extended with the port number of the currently running instance of Xvfb.
-The _ARGS_ parameter defaults to `install` and controls the phase around which to start and stop the virtual display.
+Настраивает виртуальное окружение для отображения. Если переменная окружения `DISPLAY` не установлена, то Xvfb добавляется как зависимость при сборке, а `CONFIGURE_ENV` расширяется с указанием номера порта текущего запущенного экземпляра Xvfb. Параметр _ARGS_ по умолчанию имеет значение `install` и управляет фазой, вокруг которой запускается и останавливается виртуальный дисплей.
[[uses-dos2unix]]
== `dos2unix`
-Possible arguments: (none)
+Возможные аргументы: (отсутствуют)
-The port has files with line endings in DOS format which need to be converted.
-Several variables can be set to control which files will be converted.
-The default is to convert _all_ files, including binaries.
-See crossref:slow-porting[slow-patch-automatic-replacements,Simple Automatic Replacements] for examples.
+Порт содержит файлы с символами конца строки в формате DOS, которые необходимо преобразовать. Несколько переменных могут быть установлены для контроля, какие файлы будут преобразованы. По умолчанию преобразуются _все_ файлы, включая бинарные. См. crossref:slow-porting[slow-patch-automatic-replacements,Простые автоматические замены] для примеров.
-* `DOS2UNIX_REGEX`: match file names based on a regular expression.
-* `DOS2UNIX_FILES`: match literal file names.
-* `DOS2UNIX_GLOB`: match file names based on a glob pattern.
-* `DOS2UNIX_WRKSRC`: the directory from which to start the conversions. Defaults to `${WRKSRC}`.
+* `DOS2UNIX_REGEX`: сопоставлять имена файлов на основе регулярного выражения.
+* `DOS2UNIX_FILES`: соответствуют точным именам файлов.
+* `DOS2UNIX_GLOB`: сопоставлять имена файлов на основе шаблона файлов оболочки.
+* `DOS2UNIX_WRKSRC`: каталог, с которого начинать преобразования. По умолчанию `${WRKSRC}`.
[[uses-drupal]]
== `drupal`
-Possible arguments: `7`, `module`, `theme`
+Возможные аргументы: `7`, `module`, `theme`
+
+Автоматизирует установку порта, который является темой или модулем Drupal. Использовать с версией Drupal, которую ожидает порт. Например, `USES=drupal:7,module` означает, что этот порт создает модуль Drupal 7. Тему Drupal 7 можно указать с помощью `USES=drupal:7,theme`.
-Automate installation of a port that is a Drupal theme or module.
-Use with the version of Drupal that the port is expecting.
-For example, `USES=drupal:7,module` says that this port creates a Drupal 6 module.
-A Drupal 7 theme can be specified with `USES=drupal:7,theme`.
+[[uses-ebur128]]
+== `ebur128`
+
+Возможные аргументы: (нет), `build`, `lib`, `run`, `test`
+
+Добавляет зависимость от пакета package:audio/ebur128[]. Позволяет прозрачно зависеть от вариантов `rust` или `legacy`, используя `DEFAULT_VERSIONS` в [.filename]#make.conf#. Например, для использования устаревшей версии укажите `DEFAULT_VERSIONS+=ebur128=legacy`
+
+Без аргументов поведение аналогично случаю с предоставлением аргумента `lib`. Остальные аргументы указывают соответствующую категорию зависимости.
[[uses-eigen]]
== `eigen`
-Possible arguments: 2, 3, build (default), run
+Возможные аргументы: 2, 3, build (по умолчанию), run
+
+Добавить зависимость от пакета package:math/eigen[].
+
+[[uses-elextronfix]]
+== `electronfix`
+
+Возможные аргументы: `31`, `32`, `33`
+
+Предоставить поддержку для простого портирования Electron-приложений, распространяемых в бинарной форме. Добавляет зависимость на этапах сборки и выполнения от package:devel/electron31[], package:devel/electron32[] или package:devel/electron33[] в зависимости от используемого аргумента.
+
+Фреймворк предоставляет следующие переменные, которые могут быть установлены портами:
+
+`ELECTRONFIX_SYMLINK_FILES`::
+Список файлов для создания символьных ссылок из дистрибутива Electron.
+
+`ELECTRONFIX_MAIN_EXECUTABLE`::
+Имя файла основного исполняемого файла, который будет заменен оригинальным бинарным файлом Electron.
+
-Add dependency on package:math/eigen[].
+[[uses-elfctl]]
+== `elfctl`
+
+Возможные аргументы: (отсутствуют), `build` (по умолчанию), `stage`
+
+Установите управляющие заметки функций ELF-бинарных файлов, задав `ELF_FEATURES`.
+
+Когда не указан аргумент или указан аргумент `build`, операции выполняются над бинарными файлами в `BUILD_WRKSRC`, а файлы, перечисленные в `ELF_FEATURES`, указываются относительно `BUILD_WRKSRC`. Когда указан аргумент `stage`, операции выполняются над бинарными файлами в `STAGEDIR`, а файлы, перечисленные в `ELF_FEATURES`, указываются относительно `STAGEDIR`.
+
+[[uses-elfct-ex1]]
+.Uses=elfctl
+[example]
+====
+[.programlisting]
+....
+ELF_FEATURES= featurelist:path/to/file1 \
+ featurelist:path/to/file2
+....
+
+====
+
+Формат `featurelist` описан в man:elfctl[1].
+
+[[uses-elixir]]
+== `elixir`
+
+Возможные аргументы: (отсутствуют)
+
+Предоставить поддержку для портов, использующих package:lang/elixir[]. Добавляет зависимость во время сборки и выполнения на package:lang/elixir[].
+
+Предоставляемые фреймворком переменные:
+
+`ELIXIR_APP_NAME`::
+Название приложения Elixir, как оно установлено в каталоге lib Elixir
+`ELIXIR_LIB_ROOT`::
+Путь к библиотекам Elixir по умолчанию
+`ELIXIR_APP_ROOT`::
+Корневой каталог для этого приложения Elixir
+`ELIXIR_HIDDEN`::
+Приложения, которые необходимо скрыть из пути выполнения кода; обычно `${PORTNAME}`
+`ELIXIR_LOCALE`::
+Локаль UTF-8, которая будет использоваться Elixir во время сборки (подойдет любая локаль UTF-8)
+`MIX_CMD`::
+Команда `mix`
+`MIX_COMPILE`::
+Команда `mix`, используемая для компиляции приложения на Elixir
+`MIX_REWRITE`::
+Автоматически заменять зависимости Mix на пути к коду
+`MIX_BUILD_DEPS`::
+Список `BUILD_DEPENDS` в формате категория/имя_порта (часто упоминаемый как "deps" в Erlang и Elixir)
+`MIX_RUN_DEPS`::
+Список `RUN_DEPENDS` в формате категория/имя порта
+`MIX_DOC_DIRS`::
+Дополнительные каталоги документации для установки в `DOCSDIR`
+`MIX_DOC_FILES`::
+Дополнительные файлы документации для установки в `DOCSDIR` (обычно README.md)
+`MIX_ENV`::
+Окружение для сборки Mix (в том же формате, что и `MAKE_ENV`)
+`MIX_ENV_NAME`::
+Имя среды сборки Mix, обычно "prod"
+`MIX_BUILD_NAME`::
+Имя выходного файла сборки в _build/, обычно `${MIX_ENV_NAME}`
+`MIX_TARGET`::
+Имя цели Mix, обычно "compile"
+`MIX_EXTRA_APPS`::
+Список подприложений для сборки, если имеются
+`MIX_EXTRA_DIRS`::
+Список дополнительных каталогов для установки в `ELIXIR_APP_ROOT`
+`MIX_EXTRA_FILES`::
+Список дополнительных файлов для установки в `ELIXIR_APP_ROOT`
+
+[[uses-emacs]]
+== `emacs`
+
+Возможные аргументы: (нет) (по умолчанию), `build`, `run`, `noflavors`
+
+Предоставляет поддержку для портов, требующих Emacs. Аргумент `build` создает зависимость сборки от Emacs. Аргумент `run` создает зависимость выполнения от Emacs. Если оба аргумента `build` и `run` отсутствуют, создаются зависимости сборки и выполнения от Emacs. Аргумент `noflavors` запрещает флейворы и подразумевается, если нет зависимости выполнения от Emacs.
+
+Стандартный вариант Emacs для портов с `USES=emacs` можно определить в [.filename]#make.conf#. Например, для варианта `nox` используйте `DEFAULT_VERSIONS+= emacs=nox`. Допустимые флейворы: `full`, `canna`, `nox`, `wayland`, `devel_full`, `devel_nox`.
+
+Переменные, которые могут быть установлены портами:
+
+`EMACS_FLAVORS_EXCLUDE`::
+НЕ собирать эти флейворы Emacs. Если `EMACS_FLAVORS_EXCLUDE` не определена и:
+
+* существует зависимость во время выполнения от Emacs
+* аргумент noflavors не указан
+
++
+то предполагаются все допустимые флейворы Emacs.
+
+`EMACS_NO_DEPENDS`::
+НЕ добавлять зависимости сборки или выполнения от Emacs. Это предотвратит создание вариантов, и никакие файлы байт-кода не будут сгенерированы как часть пакета.
+
+Переменные, которые могут быть прочитаны портами:
+
+`EMACS_CMD`::
+Команда Emacs с полным путём (например, [.filename]#/usr/local/bin/emacs-30.1#)
+
+`EMACS_FLAVOR`::
+Используется для зависимостей (например, `BUILD_DEPENDS= dash.el${EMACS_PKGNAMESUFFIX}>0:devel/dash@${EMACS_FLAVOR}`)
+
+`EMACS_LIBDIR`::
+Каталог библиотек Emacs без `${PREFIX}` (например, [.filename]#share/emacs#)
+
+`EMACS_LIBDIR_WITH_VER`::
+Каталог библиотеки без `${PREFIX}`, включая версию (например, [.filename]#share/emacs/30.1#)
+
+`EMACS_MAJOR_VER`::
+Основная версия Emacs (например, 30)
+
+`EMACS_PKGNAMESUFFIX`::
+`PKGNAMESUFFIX` для различия вариантов Emacs
+
+`EMACS_SITE_LISPDIR`::
+Каталог site-lisp Emacs без `${PREFIX}` (например, [.filename]#share/emacs/site-lisp#)
+
+`EMACS_VER`::
+Версия Emacs (например, 30.1)
+
+`EMACS_VERSION_SITE_LISPDIR`::
+Каталог site-lisp Emacs, включая номер версии (например, [.filename]#share/emacs/30.1/site-lisp#)
+
+[[uses-erlang]]
+== `erlang`
+
+Возможные аргументы: (нет), `enc`, `rebar`, `rebar3`
+
+Добавляет зависимость на время сборки и выполнения от package:lang/erlang[]. В зависимости от аргумента, добавляет дополнительные зависимости для сборки. `enc` добавляет зависимость от package:devel/erlang-native-compiler[], `rebar` добавляет зависимость от package:devel/rebar[], а `rebar3` добавляет зависимость от package:devel/rebar3[].
+
+В дополнение, следующие переменные доступны для порта:
+
+* `ERL_APP_NAME`: Имя приложения Erlang, как оно установлено в каталоге lib Erlang (без указания версии)
+* `ERL_APP_ROOT`: Корневой каталог для этого приложения Erlang
+* `REBAR_CMD`: Путь к команде "rebar"
+* `REBAR3_CMD`: Путь к команде "rebar3"
+* `REBAR_PROFILE`: Профиль Rebar
+* `REBAR_TARGETS`: Список целей Rebar (обычно compile, возможно escriptize)
+* `ERL_BUILD_NAME`: Имя сборки для rebar3
+* `ERL_BUILD_DEPS`: Список BUILD_DEPENDS в формате категория/имя_порта
+* `ERL_RUN_DEPS`: Список RUN_DEPENDS в формате категория/имя_порта
+* `ERL_DOCS`: Список файлов и каталогов документации
[[uses-fakeroot]]
== `fakeroot`
-Possible arguments: (none)
+Возможные аргументы: (отсутствуют)
-Changes some default behavior of build systems to allow installing as a user.
-See https://wiki.debian.org/FakeRoot[] for more information on `fakeroot`.
+Изменяет некоторые стандартные поведения систем сборки для разрешения установки от имени пользователя. Дополнительную информацию о `fakeroot` можно найти на https://wiki.debian.org/FakeRoot[].
[[uses-fam]]
== `fam`
-Possible arguments: (none), `fam`, `gamin`
+Возможные аргументы: (нет), `fam`, `gamin`
-Uses a File Alteration Monitor as a library dependency, either package:devel/fam[] or package:devel/gamin[].
-End users can set WITH_FAM_SYSTEM to specify their preference.
+Использует монитор изменений файлов (FAM — File Alteration Monitor) как зависимость от библиотеки, либо package:devel/fam[], либо package:devel/gamin[]. Конечные пользователи могут задать WITH_FAM_SYSTEM, чтобы указать свои предпочтения.
[[uses-firebird]]
== `firebird`
-Possible arguments: (none), `25`
+Возможные аргументы: (отсутствуют), `25`
-Add a dependency to the client library of the Firebird database.
+Добавить зависимость от клиентской библиотеке базы данных Firebird.
[[uses-fonts]]
== `fonts`
-Possible arguments: (none), `fc`, `fcfontsdir` (default), `fontsdir`, `none`
+Возможные аргументы: (отсутствуют), `fc`, `fontsdir` (по умолчанию), `none`
-Adds a runtime dependency on tools needed to register fonts.
-Depending on the argument, add a `crossref:plist[plist-keywords-fc,@fc] ${FONTSDIR}` line, `crossref:plist[plist-keywords-fcfontsdir,@fcfontsdir] ${FONTSDIR}` line, `crossref:plist[plist-keywords-fontsdir,@fontsdir] ${FONTSDIR}` line, or no line if the argument is `none`, to the plist.
-`FONTSDIR` defaults to [.filename]#${PREFIX}/share/fonts/${FONTNAME}# and `FONTNAME` to `${PORTNAME}`.
-Add `FONTSDIR` to `PLIST_SUB` and `SUB_LIST`
+Добавляет зависимость во время выполнения на инструменты, необходимые для регистрации шрифтов. В зависимости от аргумента добавляет строку `crossref:plist[plist-keywords-fc,@fc] ${FONTSDIR}`, строку `crossref:plist[plist-keywords-fontsdir,@fontsdir] ${FONTSDIR}` или не добавляет строку, если аргумент `none`, в plist. `FONTSDIR` по умолчанию имеет значение [.filename]#${PREFIX}/share/fonts/${FONTNAME}#, а `FONTNAME` — `${PORTNAME}`. Добавляет `FONTSDIR` в `PLIST_SUB` и `SUB_LIST`
[[uses-fortran]]
== `fortran`
-Possible arguments: `gcc` (default)
+Возможные аргументы: `gcc` (по умолчанию)
+
+Использует компилятор GNU Fortran.
+
+[[uses-fpc]]
+== `fpc`
+
+Возможные аргументы: (нет), `run`
-Uses the GNU Fortran compiler.
+Обеспечить поддержку портов на основе Free Pascal. Установит компилятор Free Pascal и модули.
+
+Добавляет зависимость сборки от package:lang/fpc[].
+
+Если указан аргумент `run`, также добавляется зависимость запуска.
[[uses-fuse]]
== `fuse`
-Possible arguments: `2` (default), `3`
+Возможные аргументы: `2` (по умолчанию), `3`
-The port will depend on the FUSE library and handle the dependency on the kernel module depending on the version of FreeBSD.
+Порт будет зависеть от библиотеки FUSE и обрабатывать зависимость от модуля ядра в зависимости от версии FreeBSD.
[[uses-gem]]
== `gem`
-Possible arguments: (none), `noautoplist`
+Возможные аргументы: (отсутствуют), `noautoplist`
+
+Обработка сборки с RubyGems. Если используется `noautoplist`, список упаковки не генерируется автоматически.
-Handle building with RubyGems.
-If `noautoplist` is used, the packing list is not generated automatically.
+Это подразумевает `USES=ruby`.
[[uses-gettext]]
== `gettext`
-Possible arguments: (none)
+Возможные аргументы: (отсутствуют)
-Deprecated.
-Will include both <<uses-gettext-runtime,`gettext-runtime`>> and <<uses-gettext-tools,`gettext-tools`>>.
+Устарело. Будет включать как crossref:uses[uses-gettext-runtime,`gettext-runtime`], так и crossref:uses[uses-gettext-tools,`gettext-tools`].
[[uses-gettext-runtime]]
== `gettext-runtime`
-Possible arguments: (none), `lib` (default), `build`, `run`
+Возможные аргументы: (отсутствуют), `lib` (по умолчанию), `build`, `run`
-Uses package:devel/gettext-runtime[].
-By default, with no arguments or with the `lib` argument, implies a library dependency on [.filename]#libintl.so#.
-`build` and `run` implies, respectively a build-time and a run-time dependency on [.filename]#gettext#.
+Использует пакет package:devel/gettext-runtime[]. По умолчанию, без аргументов или с аргументом `lib`, подразумевает зависимость от библиотеки [.filename]#libintl.so#. Аргументы `build` и `run` подразумевают, соответственно, зависимость во время сборки и во время выполнения от [.filename]#gettext#.
[[uses-gettext-tools]]
== `gettext-tools`
-Possible arguments: (none), `build` (default), `run`
+Возможные аргументы: (отсутствуют), `build` (по умолчанию), `run`
-Uses package:devel/gettext-tools[].
-By default, with no argument, or with the `build` argument, a build time dependency on [.filename]#msgfmt# is registered.
-With the `run` argument, a run-time dependency is registered.
+Использует пакет package:devel/gettext-tools[]. По умолчанию, без аргумента или с аргументом `build`, регистрируется зависимость во время сборки от [.filename]#msgfmt#. С аргументом `run` регистрируется зависимость во время выполнения.
[[uses-ghostscript]]
== `ghostscript`
-Possible arguments: _X_, `build`, `run`, `nox11`
+Возможные аргументы: _X_, `build`, `run`, `nox11`
-A specific version _X_ can be used. Possible versions are `7`, `8`, `9`, and `agpl` (default).
-`nox11` indicates that the `-nox11` version of the port is required.
-`build` and `run` add build- and run-time dependencies on Ghostscript.
-The default is both build- and run-time dependencies.
+Можно указать конкретную версию _X_. Доступные версии: `7`, `8`, `9` и `agpl` (по умолчанию). `nox11` указывает, что требуется версия порта `-nox11`. `build` и `run` добавляют зависимости на Ghostscript во время сборки и выполнения соответственно. По умолчанию добавляются зависимости как на сборку, так и на выполнение.
[[uses-gl]]
== `gl`
-Possible arguments: (none)
+Возможные аргументы: (отсутствуют)
-Provides an easy way to depend on GL components.
-The components should be listed in `USE_GL`.
-The available components are:
+Предоставляет простой способ зависеть от компонентов GL. Компоненты должны быть перечислены в `USE_GL`. Доступные компоненты:
`egl`::
-add a library dependency on [.filename]#libEGL.so# from package:graphics/libglvnd[]
+добавить зависимость от библиотеки [.filename]#libEGL.so# из пакета package:graphics/libglvnd[]
`gbm`::
-Add a library dependency on [.filename]#libgbm.so# from package:graphics/mesa-libs[]
+Добавить зависимость от библиотеки [.filename]#libgbm.so# из пакета package:graphics/mesa-libs[]
`gl`::
-Add a library dependency on [.filename]#libGL.so# from package:graphics/libglvnd[]
+Добавить зависимость от библиотеки [.filename]#libGL.so# из пакета package:graphics/libglvnd[]
`glesv2`::
-Add a library dependency on [.filename]#libGLESv2.so# from package:graphics/libglvnd[]
+Добавить зависимость от библиотеки [.filename]#libGLESv2.so# из пакета package:graphics/libglvnd[]
`glew`::
-Add a library dependency on [.filename]#libGLEW.so# from package:graphics/glew[]
+Добавить зависимость от библиотеки [.filename]#libGLEW.so# из пакета package:graphics/glew[]
`glu`::
-Add a library dependency on [.filename]#libGLU.so# from package:graphics/libGLU[]
+Добавить зависимость от библиотеки [.filename]#libGLU.so# из package:graphics/libGLU[]
`glut`::
-Add a library dependency on [.filename]#libglut.so# from package:graphics/freeglut[]
+Добавить зависимость от библиотеки [.filename]#libglut.so# из package:graphics/freeglut[]
`opengl`::
-Add a library dependency on [.filename]#libOpenGL.so# from package:graphics/libglvnd[]
+Добавить зависимость от библиотеки [.filename]#libOpenGL.so# из package:graphics/libglvnd[]
[[uses-gmake]]
== `gmake`
-Possible arguments: (none)
+Возможные аргументы: (отсутствуют)
-Uses package:devel/gmake[] as a build-time dependency and sets up the environment to use `gmake` as the default `make` for the build.
+Использует пакет package:devel/gmake[] как зависимость во время сборки и настраивает окружение для использования `gmake` в качестве стандартного `make` при сборке.
[[uses-gnome]]
== `gnome`
-Possible arguments: (none)
+Возможные аргументы: (отсутствуют)
-Provides an easy way to depend on GNOME components.
-The components should be listed in `USE_GNOME`.
-The available components are:
+Предоставляет простой способ зависеть от компонентов GNOME. Компоненты должны быть перечислены в `USE_GNOME`. Доступные компоненты:
* `atk`
* `atkmm`
@@ -529,6 +830,7 @@ The available components are:
* `glibmm`
* `gnomecontrolcenter3`
* `gnomedesktop3`
+* `gnomedesktop4`
* `gnomedocutils`
* `gnomemenus3`
* `gnomemimedata`
@@ -595,8 +897,7 @@ The available components are:
* `vte`
* `vte3`
-The default dependency is build- and run-time, it can be changed with `:build` or `:run`.
-For example:
+Зависимость по умолчанию — на время сборки и выполнения, её можно изменить с помощью `:build` или `:run`. Например:
[.programlisting]
....
@@ -604,105 +905,79 @@ USES= gnome
USE_GNOME= gnomemenus3:build intlhack
....
-See crossref:special[using-gnome,Using GNOME] for more information.
+См. crossref:special[using-gnome,Использование GNOME] для получения дополнительной информации.
[[uses-go]]
== `go`
[IMPORTANT]
====
-Ports should not be created for Go libs, see crossref:special[go-libs,Go Libraries] for more information.
+Порты не следует создавать для библиотек Go, дополнительную информацию см. в crossref:special[go-libs,Библиотеки Go].
====
-Possible arguments: (none), `modules`, `no_targets`, `run`
+Возможные аргументы: (нет), `N.NN`, `N.NN-devel`, `modules`, `no_targets`, `run`
-Sets default values and targets used to build Go software.
-A build dependency on the Go compiler port selected via `GO_PORT` is added.
-By default the build is performed in GOPATH mode.
-If Go software uses modules, the modules-aware mode can be switched on with `modules` argument.
-`no_targets` will setup build environment like `GO_ENV`, `GO_BUILDFLAGS` but skip creating `post-extract` and `do-{build,install,test}` targets.
-`run` will also add a run dependency on what is in `GO_PORT`.
+Устанавливает значения и цели по умолчанию, используемые для сборки ПО на Go. Добавляется зависимость сборки от порта компилятора Go, сопровождающие порта могут установить требуемую версию. По умолчанию сборка выполняется в режиме GOPATH. Если ПО на Go использует модули, режим с поддержкой модулей можно включить с помощью аргумента `modules`. `no_targets` настроит окружение сборки, как `GO_ENV`, `GO_BUILDFLAGS`, но пропустит создание целей извлечения (extract) и сборки (build). `run` также добавит зависимость выполнения от порта компилятора Go.
-The build process is controlled by several variables:
+Процесс сборки контролируется несколькими переменными:
`GO_MODULE`::
-The name of the application module as specified by the `module` directive in `go.mod`.
-In most cases, this is the only required variable for ports that use Go modules.
+Имя модуля приложения, указанное директивой `module` в `go.mod`. В большинстве случаев это единственная необходимая переменная для портов, использующих модули Go.
`GO_PKGNAME`::
-The name of the Go package when building in GOPATH mode.
-This is the directory that will be created in `${GOPATH}/src`.
-If not set explicitly and `GH_SUBDIR` or `GL_SUBDIR` is present, `GO_PKGNAME` will be inferred from it.
-It is not needed when building in modules-aware mode.
+Имя пакета Go при сборке в режиме GOPATH. Это каталог, который будет создан в `${GOPATH}/src`. Если не задано явно и присутствует `GH_SUBDIR` или `GL_SUBDIR`, то `GO_PKGNAME` будет выведено из них. Не требуется при сборке в режиме с поддержкой модулей.
`GO_TARGET`::
-The packages to build.
-The default value is `${GO_PKGNAME}`.
-`GO_TARGET` can also be a tuple in the form `package:path` where path can be either a simple filename or a full path starting with `${PREFIX}`.
+Пакеты для сборки. Значение по умолчанию — `${GO_PKGNAME}`. `GO_TARGET` также может быть кортежем в формате `package:path`, где path может быть либо простым именем файла, либо полным путём, начинающимся с `${PREFIX}`.
`GO_TESTTARGET`::
-The packages to test.
-The default value is `./...` (the current package and all subpackages).
+Пакеты для тестирования. Значение по умолчанию — `./...` (текущий пакет и все подпакеты).
`CGO_CFLAGS`::
-Additional `CFLAGS` values to be passed to the C compiler by `go`.
+Дополнительные значения `CFLAGS`, передаваемые компилятору C с помощью `go`.
`CGO_LDFLAGS`::
-Additional `LDFLAGS` values to be passed to the C compiler by `go`.
+Дополнительные значения `LDFLAGS`, передаваемые компилятору C через `go`.
`GO_BUILDFLAGS`::
-Additional build arguments to be passed to `go build`.
+Дополнительные аргументы сборки, передаваемые в `go build`.
`GO_TESTFLAGS`::
-Additional build arguments to be passed to `go test`.
+Дополнительные аргументы сборки, передаваемые в `go test`.
-`GO_PORT`::
-The Go compiler port to use.
-By default this is package:lang/go[] but can be set to package:lang/go-devel[] in `make.conf` for testing with future Go versions.
-+
-[WARNING]
-====
-This variable must not be set by individual ports!
-====
-
-See crossref:special[using-go,Building Go Applications] for usage examples.
+См. crossref:special[using-go,Сборка приложений на Go] для примеров использования.
[[uses-gperf]]
== `gperf`
-Possible arguments: (none)
+Возможные аргументы: (отсутствуют)
-Add a buildtime dependency on package:devel/gperf[] if `gperf` is not present in the base system.
+Добавить зависимость во время сборки на package:devel/gperf[], если `gperf` отсутствует в базовой системе.
[[uses-grantlee]]
== `grantlee`
-Possible arguments: `5`, `selfbuild`
+Возможные аргументы: `5`, `selfbuild`
-Handle dependency on Grantlee.
-Specify `5` to depend on the Qt5 based version, package:devel/grantlee5[].
-`selfbuild` is used internally by package:devel/grantlee5[] to get their versions numbers.
+Обработать зависимость от Grantlee. Указать `5` для зависимости от версии на основе Qt5, package:devel/grantlee5[]. `selfbuild` используется внутри package:devel/grantlee5[] для получения номеров их версий.
[[uses-groff]]
== `groff`
-Possible arguments: `build`, `run`, `both`
+Возможные аргументы: `build`, `run`, `both`
-Registers a dependency on package:textproc/groff[] if not present in the base system.
+Регистрирует зависимость от package:textproc/groff[], если пакет отсутствует в базовой системе.
[[uses-gssapi]]
== `gssapi`
-Possible arguments: (none), `base` (default), `heimdal`, `mit`, `flags`, `bootstrap`
+Возможные аргументы: (отсутствуют), `base` (по умолчанию), `heimdal`, `mit`, `flags`, `bootstrap`
-Handle dependencies needed by consumers of the GSS-API.
-Only libraries that provide the Kerberos mechanism are available.
-By default, or set to `base`, the GSS-API library from the base system is used.
-Can also be set to `heimdal` to use package:security/heimdal[], or `mit` to use package:security/krb5[].
+Обрабатывает зависимости, необходимые для использования GSS-API. Доступны только библиотеки, предоставляющие механизм Kerberos. По умолчанию (или при значении `base`) используется библиотека GSS-API из базовой системы. Также можно установить значение `heimdal` для использования package:security/heimdal[] или `mit` для использования package:security/krb5[].
-When the local Kerberos installation is not in `LOCALBASE`, set `HEIMDAL_HOME` (for `heimdal`) or `KRB5_HOME` (for `krb5`) to the location of the Kerberos installation.
+Если локальная установка Kerberos не находится в `LOCALBASE`, установите `HEIMDAL_HOME` (для `heimdal`) или `KRB5_HOME` (для `krb5`) на каталог установки Kerberos.
-These variables are exported for the ports to use:
+Эти переменные экспортируются для использования портами:
* `GSSAPIBASEDIR`
* `GSSAPICPPFLAGS`
@@ -712,14 +987,12 @@ These variables are exported for the ports to use:
* `GSSAPILIBS`
* `GSSAPI_CONFIGURE_ARGS`
-The `flags` option can be given alongside `base`, `heimdal`, or `mit` to automatically add `GSSAPICPPFLAGS`, `GSSAPILDFLAGS`, and `GSSAPILIBS` to `CFLAGS`, `LDFLAGS`, and `LDADD`, respectively.
-For example, use `base,flags`.
+Опция `flags` может быть указана вместе с `base`, `heimdal` или `mit` для автоматического добавления `GSSAPICPPFLAGS`, `GSSAPILDFLAGS` и `GSSAPILIBS` в `CFLAGS`, `LDFLAGS` и `LDADD` соответственно. Например, используйте `base,flags`.
-The `bootstrap` option is a special prefix only for use by package:security/krb5[] and package:security/heimdal[].
-For example, use `bootstrap,mit`.
+Опция `bootstrap` — это специальный префикс, предназначенный только для использования в package:security/krb5[] и package:security/heimdal[]. Например, используйте `bootstrap,mit`.
[[uses-gssapi-ex1]]
-.Typical Use
+.Типичное использование
[example]
====
[.programlisting]
@@ -738,98 +1011,375 @@ GSSAPI_NONE_CONFIGURE_ON= --without-gssapi
====
+[[uses-gstreamer]]
+== `gstreamer`
+
+Возможные аргументы: (отсутствуют)
+
+Предоставляет простой способ зависимости от компонентов GStreamer. Компоненты должны быть перечислены в `USE_GSTREAMER`. Доступные компоненты:
+
+* `a52dec`
+* `aalib`
+* `amrnb`
+* `amrwbdec`
+* `aom`
+* `assrender`
+* `bad`
+* `bs2b`
+* `cairo`
+* `cdio`
+* `cdparanoia`
+* `chromaprint`
+* `curl`
+* `dash`
+* `dtls`
+* `dts`
+* `dv`
+* `dvd`
+* `dvdread`
+* `editing-services`
+* `faac`
+* `faad`
+* `flac`
+* `flite`
+* `gdkpixbuf`
+* `gl`
+* `gme`
+* `gnonlin`
+* `good`
+* `gsm`
+* `gtk4`
+* `gtk`
+* `hal`
+* `hls`
+* `jack`
+* `jpeg`
+* `kate`
+* `kms`
+* `ladspa`
+* `lame`
+* `libav`
+* `libcaca`
+* `libde265`
+* `libmms`
+* `libvisual`
+* `lv2`
+* `mm`
+* `modplug`
+* `mpeg2dec`
+* `mpeg2enc`
+* `mpg123`
+* `mplex`
+* `musepack`
+* `neon`
+* `ogg`
+* `opencv`
+* `openexr`
+* `openh264`
+* `openjpeg`
+* `openmpt`
+* `opus`
+* `pango`
+* `png`
+* `pulse`
+* `qt`
+* `resindvd`
+* `rsvg`
+* `rtmp`
+* `shout2`
+* `sidplay`
+* `smoothstreaming`
+* `sndfile`
+* `sndio`
+* `soundtouch`
+* `soup`
+* `spandsp`
+* `speex`
+* `srtp`
+* `taglib`
+* `theora`
+* `ttml`
+* `twolame`
+* `ugly`
+* `v4l2`
+* `vorbis`
+* `vpx`
+* `vulkan`
+* `wavpack`
+* `webp`
+* `webrtcdsp`
+* `x264`
+* `x265`
+* `x`
+* `ximagesrc`
+* `zbar`
+
+[[uses-guile]]
+== `guile`
+
+Возможные аргументы: (нет), `_X.Y_`, `flavors`, `build`, `run`, `alias`, `conflicts`
+
+Добавляет зависимость от Guile. По умолчанию это зависимость от соответствующей библиотеки `libguile*.so`, если не переопределено опциями `build` и/или `run`. Опция `alias` настраивает `BINARY_ALIAS` соответствующим образом (см. crossref:makefiles[binary-alias,Использование `BINARY_ALIAS`]).
+
+Версия по умолчанию устанавливается с помощью обычного механизма `DEFAULT_VERSIONS`; если версия по умолчанию не входит в список указанных версий, то используется последняя доступная версия из списка.
+
+Приложения, использующие Guile, обычно собираются только для одной версии Guile. Однако модули расширений или библиотек должны использовать опцию `flavors` для сборки с несколькими флейворами.
+
+Для получения дополнительной информации см. crossref:special[using-guile,Использование Guile].
+
[[uses-horde]]
== `horde`
-Possible arguments: (none)
+Возможные аргументы: (отсутствуют)
-Add buildtime and runtime dependencies on package:devel/pear-channel-horde[].
-Other Horde dependencies can be added with `USE_HORDE_BUILD` and `USE_HORDE_RUN`.
-See crossref:special[php-horde,Horde Modules] for more information.
+Добавить зависимости времени сборки и выполнения для package:devel/pear-channel-horde[]. Другие зависимости Horde можно добавить с помощью `USE_HORDE_BUILD` и `USE_HORDE_RUN`. Дополнительную информацию см. в разделе crossref:special[php-horde,Модули Horde].
[[uses-iconv]]
== `iconv`
-Possible arguments: (none), `lib`, `build`, `patch`, `translit`, `wchar_t`
+Возможные аргументы: (нет), `lib`, `build`, `patch`, `translit`, `wchar_t`
-Uses `iconv` functions, either from the port package:converters/libiconv[] as a build-time and run-time dependency, or from the base system.
-By default, with no arguments or with the `lib` argument, implies `iconv` with build-time and run-time dependencies.
-`build` implies a build-time dependency, and `patch` implies a patch-time dependency.
-If the port uses the `WCHAR_T` or `//TRANSLIT` iconv extensions, add the relevant arguments so that the correct iconv is used.
-For more information see crossref:special[using-iconv,Using `iconv`].
+Использует функции `iconv`, либо из порта package:converters/libiconv[] как зависимость на этапе сборки и выполнения, либо из базовой системы. По умолчанию, без аргументов или с аргументом `lib`, подразумевает `iconv` с зависимостями на этапе сборки и выполнения. `build` подразумевает зависимость на этапе сборки, а `patch` — на этапе патчинга. Если порт использует расширения `WCHAR_T` или `//TRANSLIT` для `iconv`, добавьте соответствующие аргументы, чтобы использовалась правильная версия `iconv`. Для получения дополнительной информации см. crossref:special[using-iconv,Использование `iconv`].
[[uses-imake]]
== `imake`
-Possible arguments: (none), `env`, `notall`, `noman`
+Возможные аргументы: (нет), `env`, `notall`, `noman`
+
+Добавить package:devel/imake[] как зависимость на этапе сборки и выполнить `xmkmf -a` на этапе `configure`. Если указан аргумент `env`, цель `configure` не устанавливается. Если флаг `-a` вызывает проблемы для порта, добавьте аргумент `notall`. Если `xmkmf` не генерирует цель `install.man`, добавьте аргумент `noman`.
+
+[[uses-java]]
+== `java`
+
+Возможные аргументы: (нет), `ant`, `build`, `extract`, `run`
+
+По умолчанию используется `USES=java:build,run`, если аргументы не предоставлены и `NO_BUILD` не определен. Если `NO_BUILD` определен, используется `USES=java:run`. Если указан аргумент `ant`, порт использует Apache Ant. Если указан аргумент `build`, порт JDK добавляется в зависимости сборки. Если указан аргумент `extract`, порт JDK добавляется в зависимости извлечения. Если указан аргумент `run`, порт JDK добавляется в зависимости выполнения.
+
+Фреймворк предоставляет следующие переменные, которые могут быть установлены портом:
+
+`JAVA_VERSION`::
+Список подходящих версий Java для порта, разделенных пробелами. Необязательный символ `\+` позволяет указать диапазон версий. (допустимые значения `8[+]`, `11[\+]`, `17[+]`, `18[\+]`, `19[+]`, `20[\+]`, `21[+]`, `22[\+]`, `22[+]`)
+
+`JAVA_OS`::
+Список поддерживаемых операционных систем для порта JDK, разделённых пробелами. (допустимые значения: `native`, `linux`)
+
+`JAVA_VENDOR`::
+Список подходящих поставщиков портов JDK для порта, разделенных пробелами. (допустимые значения: `openjdk`, `oracle`)
+
+Фреймворк предоставляет следующие переменные для чтения портом:
+
+`JAVA_PORT`::
+Имя порта JDK. (например, 'java/openjdk8')
+
+`JAVA_PORT_VERSION`::
+Версия порта JDK. (например, '8')
+
+`JAVA_PORT_OS`::
+Используемая операционная система для порта JDK. (например, 'linux')
+
+`JAVA_PORT_VENDOR`::
+Поставщик порта JDK. (например, 'openjdk')
+
+`JAVA_PORT_OS_DESCRIPTION`::
+Описание операционной системы, используемой портом JDK. (например, 'Linux')
+
+`JAVA_PORT_VENDOR_DESCRIPTION`::
+Описание поставщика порта JDK. (например, 'OpenJDK BSD Porting Team')
+
+`JAVA_HOME`::
+Путь к каталогу установки JDK. (например, [.filename]#/usr/local/openjdk8#)
+
+`JAVAC`::
+Путь к используемому компилятору Java. (например, [.filename]#/usr/local/openjdk8/bin/javac# или [.filename]#/usr/local/bin/javac#)
+
+`JAR`::
+Путь к используемому инструменту JAR. (например, [.filename]#/usr/local/openjdk8/bin/jar# или [.filename]#/usr/local/bin/fastjar#)
+
+`APPLETVIEWER`::
+Путь к утилите appletviewer. (например, [.filename]#/usr/local/linux-jdk1.8.0/bin/appletviewer#)
+
+`JAVA`::
+Путь к исполняемому файлу `java`. Используется для запуска программ на Java. (например, [.filename]#/usr/local/openjdk8/bin/java#)
+
+`JAVADOC`::
+Путь к программе `javadoc`.
+
+`JAVAH`::
+Путь к программе `javah`.
+
+`JAVAP`::
+Путь к программе `javap`.
+
+`JAVA_KEYTOOL`::
+Путь к утилите `keytool`.
+
+`JAVA_N2A`::
+Путь к инструменту `native2ascii`.
+
+`JAVA_POLICYTOOL`::
+Путь к программе `policytool`.
+
+`JAVA_SERIALVER`::
+Путь к утилите `serialver`.
+
+`RMIC`::
+Путь к генератору RMI-заглушек/скелетов, `rmic`.
+
+`RMIREGISTRY`::
+Путь к программе реестра RMI, `rmiregistry`.
+
+`RMID`::
+Путь к программе демона RMI.
+
+`JAVA_CLASSES`::
+Путь к архиву, содержащему файлы классов JDK. В большинстве JDK это [.filename]#${JAVA_HOME}/jre/lib/rt.jar#.
+
+`JAVASHAREDIR`::
+Базовый каталог для всех общих ресурсов Java.
+
+`JAVAJARDIR`::
+Каталог, в котором порт должен устанавливать JAR-файлы.
+
+`JAVALIBDIR`::
+Каталог, в котором находятся JAR-файлы, установленные другими портами.
+
+[[uses-jpeg]]
+== `jpeg`
+
+Возможные аргументы: `lib` (по умолчанию, подразумевается), `build`, `run`
-Add package:devel/imake[] as a build-time dependency and run `xmkmf -a` during the `configure` stage.
-If the `env` argument is given, the `configure` target is not set.
-If the `-a` flag is a problem for the port, add the `notall` argument.
-If `xmkmf` does not generate a `install.man` target, add the `noman` argument.
+Помощь в обработке зависимостей от `jpeg`.
+
+Если указан аргумент `lib` или аргументы не предоставлены, то в порт добавляется зависимость от библиотеки.
+
+Если указан аргумент `build`, то в порт добавляется зависимость сборки.
+
+Если указан аргумент `run`, то к порту добавляется зависимость времени выполнения.
+
+Если указан аргумент `both`, то к порту добавляется зависимость для сборки и зависимость для выполнения.
+
+Фреймворк предоставляет следующую переменную, которая может быть установлена портами:
+
+`JPEG_PORT`::
+Указывает реализацию JPEG для использования. Возможные значения:
+
+* package:graphics/jpeg-turbo[] (по умолчанию)
+* package:graphics/mozjpeg[]
[[uses-kde]]
== `kde`
-Possible arguments: `5`
+Возможные аргументы: `5`
-Add dependency on KDE components.
-See crossref:special[using-kde,Using KDE] for more information.
+Добавить зависимость от компонентов KDE. Подробнее см. в crossref:special[using-kde,Использование KDE].
[[uses-kmod]]
== `kmod`
-Possible arguments: (none), `debug`
+Возможные аргументы: (отсутствуют), `debug`
+
+Заполняет шаблон для портов модулей ядра, в настоящее время:
+
+* Добавьте `kld` в `CATEGORIES`.
+* Установите `SSP_UNSAFE`.
+* Установите `IGNORE`, если исходные коды ядра не найдены в `SRC_BASE`.
+* Определить `KMODDIR` по умолчанию как [.filename]#/boot/modules#, добавить его в `PLIST_SUB` и `MAKE_ENV`, а также создать его при установке. Если `KMODDIR` установлен в [.filename]#/boot/kernel#, он будет перезаписан в [.filename]#/boot/modules#. Это предотвращает повреждение пакетов при обновлении ядра из-за переименования [.filename]#/boot/kernel# в [.filename]#/boot/kernel.old# в процессе.
+* Обрабатывать перекрестные ссылки на модули ядра при установке и удалении, используя crossref:plist[plist-keywords-kld,`@kld`].
+* Если указан аргумент `debug`, порт может установить отладочную версию модуля в [.filename]#KERN_DEBUGDIR#/[.filename]#KMODDIR#. По умолчанию `KERN_DEBUGDIR` копируется из `DEBUGDIR` и устанавливается в [.filename]#/usr/lib/debug#. Фреймворк позаботится о создании и удалении необходимых каталогов.
+
+[[uses-kodi]]
+== `kodi`
+
+Возможные аргументы: (отсутствуют), `noautoplist`
+
+Обеспечить поддержку дополнений для package:multimedia/kodi[]. Если указан аргумент `noautoplist`, автоматическое создание `plist` не выполняется.
+
+[[uses-lazarus]]
+== `lazarus`
+
+Возможные аргументы: (отсутствуют), `gtk2` (по умолчанию), `qt5`, `qt6`, `flavors`
+
+Обеспечить поддержку портов на основе package:editors/lazarus[].
+
+Если аргументы не предоставлены или указан `gtk2`, приложение lazarus-app будет собрано с интерфейсом `gtk2`, и порт package:editors/lazarus[] будет собран с интерфейсом `gtk2`.
+
+Если указан аргумент `qt5`, приложение lazarus-app собирается с интерфейсом `qt5`.
+
+Если указан аргумент `qt6`, приложение lazarus-app собирается с интерфейсом `qt6`.
+
+Если указан аргумент `flavors`, приложение `lazarus-app` собирается с поддержкой функций флейворов.
+
+Если порт не требует автоматической компиляции файлов проекта lazarus, можно определить следующую переменную:
+
+`NO_LAZBUILD`= `yes`
+
+Доступны следующие переменные для портов:
-Fills in the boilerplate for kernel module ports, currently:
+`LAZARUS_PROJECT_FILES`::
+Список lpi-файлов. Он не должен быть пустым. По умолчанию: пусто
-* Add `kld` to `CATEGORIES`.
-* Set `SSP_UNSAFE`.
-* Set `IGNORE` if the kernel sources are not found in `SRC_BASE`.
-* Define `KMODDIR` to [.filename]#/boot/modules# by default, add it to `PLIST_SUB` and `MAKE_ENV`, and create it upon installation. If `KMODDIR` is set to [.filename]#/boot/kernel#, it will be rewritten to [.filename]#/boot/modules#. This prevents breaking packages when upgrading the kernel due to [.filename]#/boot/kernel# being renamed to [.filename]#/boot/kernel.old# in the process.
-* Handle cross-referencing kernel modules upon installation and deinstallation, using crossref:plist[plist-keywords-kld,`@kld`].
-* If the `debug` argument is given, the port can install a debug version of the module into [.filename]#KERN_DEBUGDIR#/[.filename]#KMODDIR#. By default, `KERN_DEBUGDIR` is copied from `DEBUGDIR` and set to [.filename]#/usr/lib/debug#. The framework will take care of creating and removing any required directories.
+`LAZARUS_DIR`::
+Путь к каталогу установки lazarus. По умолчанию: [.filename]#${LOCALBASE}/share/lazarus-${LAZARUS_VER}#
+
+`LAZBUILD_ARGS`::
+Дополнительные аргументы lazbuild. В большинстве случаев это может быть `-d`. Подробнее см. man:lazbuild[1]. По умолчанию: пусто
+
+`LAZARUS_NO_FLAVORS`::
+Не собирать эти флейворы lazarus. Если `LAZARUS_NO_FLAVORS` не определена, то предполагаются все допустимые флейворы lazarus.
+
+`WANT_LAZARUS_DEVEL`::
+Если установлено значение `yes`, то используйте package:lazarus/devel[] как зависимость сборки.
+
+[[uses-ldap]]
+== `ldap`
+
+Возможные аргументы: (нет), <версия>, клиент, сервер
+
+Регистрирует зависимость от пакета package:net/openldap[]. Использует конкретную `<версию>` (без точечной нотации), если она указана. В противном случае пытается найти установленную версию. При необходимости возвращается к версии по умолчанию, указанной в `bsd.default-versions.mk`. `client` указывает на зависимость во время выполнения от клиентской библиотеки. Это также значение по умолчанию. `server` указывает на зависимость во время выполнения от сервера.
+
+Следующие переменные могут быть доступны для порта:
+
+`IGNORE_WITH_OPENLDAP`::
+Эта переменная может быть определена, если порты не поддерживают одну или несколько версий OpenLDAP.
+`WITH_OPENLDAP_VER`::
+Пользовательская переменная для установки версии OpenLDAP.
+`OPENLDAP_VER`::
+Обнаруженная версия OpenLDAP.
[[uses-lha]]
== `lha`
-Possible arguments: (none)
+Возможные аргументы: (отсутствуют)
-Set `EXTRACT_SUFX` to `.lzh`
+Установите `EXTRACT_SUFX` в `.lzh`
[[uses-libarchive]]
== `libarchive`
-Possible arguments: (none)
+Возможные аргументы: (отсутствуют)
-Registers a dependency on package:archivers/libarchive[].
-Any ports depending on libarchive must include `USES=libarchive`.
+Регистрирует зависимость от package:archivers/libarchive[]. Любые порты, зависящие от libarchive, должны включать `USES=libarchive`.
[[uses-libedit]]
== `libedit`
-Possible arguments: (none)
+Возможные аргументы: (отсутствуют)
-Registers a dependency on package:devel/libedit[].
-Any ports depending on libedit must include `USES=libedit`.
+Регистрирует зависимость от package:devel/libedit[]. Все порты, зависящие от libedit, должны включать `USES=libedit`.
[[uses-libtool]]
== `libtool`
-Possible arguments: (none), `keepla`, `build`
+Возможные аргументы: (нет), `keepla`, `build`
-Patches `libtool` scripts. This must be added to all ports that use `libtool`.
-The `keepla` argument can be used to keep [.filename]#.la# files.
-Some ports do not ship with their own copy of libtool and need a build time dependency on package:devel/libtool[], use the `:build` argument to add such dependency.
+Исправляет скрипты `libtool`. Это должно быть добавлено во все порты, использующие `libtool`. Аргумент `keepla` может быть использован для сохранения файлов [.filename]#.la#. Некоторые порты не поставляются с собственной копией libtool и требуют зависимость во время сборки от package:devel/libtool[], используйте аргумент `:build` для добавления такой зависимости.
[[uses-linux]]
== `linux`
-Possible arguments: `c6`, `c7`
+Возможные аргументы: `c6`, `c7`
-Ports Linux compatibility framework.
-Specify `c6` to depend on CentOS 6 packags.
-Specify `c7` to depend on CentOS 7 packages. The available packages are:
+Порт фреймворка совместимости с Linux. Укажите `c6` для зависимостей от пакетов CentOS 6. Укажите `c7` для зависимостей от пакетов CentOS 7. Доступные пакеты:
* `allegro`
* `alsa-plugins-oss`
@@ -904,63 +1454,96 @@ Specify `c7` to depend on CentOS 7 packages. The available packages are:
* `ucl`
* `xorglibs`
+[[uses-llvm]]
+== `llvm`
+
+Возможные аргументы: (нет), `_XY_`, min=`_XY_`, max=`_XY_`, build, run, lib
+
+Добавляет зависимость от LLVM. По умолчанию это зависимость для сборки, если не переопределено опциями `run` или `lib`. Версия по умолчанию задаётся в `LLVM_DEFAULT`. Также можно указать конкретную версию. Минимальную и максимальную версии можно указать с помощью параметров `min` и `max` соответственно. Фреймворк портов экспортирует следующие переменные в порт:
+
+`LLVM_VERSION`::
+Версия, выбранная из аргументов к llvm.mk
+`LLVM_PORT`::
+Выбранный порт llvm
+`LLVM_CONFIG`::
+`llvm-config` выбранного порта
+`LLVM_LIBLLVM`::
+`libLLVM.so` выбранного порта
+`LLVM_PREFIX`::
+Префикс инсталляции выбранного порта
+
[[uses-localbase]]
== `localbase`
-Possible arguments: (none), `ldflags`
+Возможные аргументы: (отсутствуют), `ldflags`
-Ensures that libraries from dependencies in `LOCALBASE` are used instead of the ones from the base system.
-Specify `ldflags` to add `-L${LOCALBASE}/lib` to `LDFLAGS` instead of `LIBS`.
-Ports that depend on libraries that are also present in the base system should use this.
-It is also used internally by a few other `USES`.
+Гарантирует использование библиотек из зависимостей в `LOCALBASE` вместо библиотек из базовой системы. Указывает `ldflags` для добавления `-L${LOCALBASE}/lib` в `LDFLAGS` вместо `LIBS`. Порты, зависящие от библиотек, которые также присутствуют в базовой системе, должны использовать эту опцию. Она также используется внутри несколькими другими `USES`.
[[uses-lua]]
== `lua`
-Possible arguments: (none), `_XY_`, `_XY_+`, `-_XY_`, `_XY_-_ZA_`, `module`, `flavors`, `build`, `run`, `env`
+Возможные аргументы: (нет), `_XY_`, `_XY_+`, `-_XY_`, `_XY_-_ZA_`, `module`, `flavors`, `build`, `run`, `env`
+
+Добавляет зависимость от Lua. По умолчанию это зависимость от библиотеки, если не переопределено опциями `build` и/или `run`. Опция `env` предотвращает добавление любой зависимости, при этом все обычные переменные остаются определенными.
+
+Версия по умолчанию устанавливается с помощью обычного механизма `DEFAULT_VERSIONS`, если только версия или диапазон версий не указаны в качестве аргумента, например, `51` или `51-54`.
+
+Приложения, использующие Lua, обычно собираются только для одной версии Lua. Однако модули библиотек, предназначенные для загрузки кодом Lua, должны использовать опцию `module` для сборки с несколькими вариантами.
+
+Для получения дополнительной информации см. crossref:special[using-lua,Использование Lua].
+
+[[uses-luajit]]
+== `luajit`
-Adds a dependency on Lua.
-By default this is a library dependency, unless overridden by the `build` and/or `run` option.
-The `env` option prevents the addition of any dependency, while still defining all the usual variables.
+Возможные аргументы: (нет), `_X_`
-The default version is set by the usual `DEFAULT_VERSIONS` mechanism, unless a version or range of versions is specified as an argument, for example, `51` or `51-53`.
+Добавляет зависимость от среды выполнения luajit. Можно указать конкретную версию _X_. Доступные версии: `luajit`, `luajit-devel`, `luajit-openresty`
-Applications using Lua are normally built for only a single Lua version.
-However, library modules intended to be loaded by Lua code should use the `module` option to build with multiple flavors.
+После включения [.filename]#bsd.port.options.mk# или [.filename]#bsd.port.pre.mk# порт может проверять эти переменные:
-For more information see crossref:special[using-lua,Using Lua].
+`LUAJIT_VER`::
+Выбранная версия luajit
+`LUAJIT_INCDIR`::
+Путь к заголовочным файлам luajit
+`LUAJIT_LUAVER`::
+Какой версии спецификации luajit выбрана (2.0 для luajit, иначе 2.1)
+
+Для получения дополнительной информации см. crossref:special[using-lua,Использование Lua].
[[uses-lxqt]]
== `lxqt`
-Possible arguments: (none)
+Возможные аргументы: (отсутствуют)
+
+Обработка зависимостей для рабочей среды LXQt. Используйте `USE_LXQT` для выбора необходимых компонентов для порта. Дополнительную информацию см. в разделе crossref:special[using-lxqt,Использование LXQt].
+
+[[uses-magick]]
+== `magick`
-Handle dependencies for the LXQt Desktop Environment.
-Use `USE_LXQT` to select the components needed for the port.
-See crossref:special[using-lxqt,Using LXQt] for more information.
+Возможные аргументы: (нет), `_X_`, `build`, `nox11`, `run`, `test`
+
+Добавить зависимость библиотеки от `ImageMagick`. Можно указать конкретную версию _X_. Доступные версии: `6` и `7` (по умолчанию). `nox11` означает, что требуется версия порта `-nox11`. `build`, `run` и `test` добавляют зависимости на сборку, выполнение и тестирование для ImageMagick.
[[uses-makeinfo]]
== `makeinfo`
-Possible arguments: (none)
+Возможные аргументы: (отсутствуют)
-Add a build-time dependency on `makeinfo` if it is not present in the base system.
+Добавить зависимость во время сборки на `makeinfo`, если его нет в базовой системе.
[[uses-makeself]]
== `makeself`
-Possible arguments: (none)
+Возможные аргументы: (отсутствуют)
-Indicates that the distribution files are makeself archives and sets the appropriate dependencies.
+Указывает, что файлы дистрибутива являются архивами makeself и устанавливает соответствующие зависимости.
[[uses-mate]]
== `mate`
-Possible arguments: (none)
+Возможные аргументы: (отсутствуют)
-Provides an easy way to depend on MATE components.
-The components should be listed in `USE_MATE`.
-The available components are:
+Предоставляет простой способ зависимостей от компонентов MATE. Компоненты должны быть перечислены в `USE_MATE`. Доступные компоненты:
* `autogen`
* `caja`
@@ -983,8 +1566,7 @@ The available components are:
* `session`
* `settingsdaemon`
-The default dependency is build- and run-time, it can be changed with `:build` or `:run`.
-For example:
+Зависимость по умолчанию — на время сборки и выполнения, её можно изменить с помощью `:build` или `:run`. Например:
[.programlisting]
....
@@ -995,138 +1577,235 @@ USE_MATE= menus:build intlhack
[[uses-meson]]
== `meson`
-Possible arguments: (none)
+Возможные аргументы: (нет), `muon `
+
+Предоставить поддержку для проектов на основе Meson. Дополнительную информацию смотрите в crossref:special[using-meson,Использование `meson`].
-Provide support for Meson based projects.
-For more information see crossref:special[using-meson,Using `meson`].
+Если указан аргумент `muon`, в порт добавляется зависимость от package:devel/muon[].
[[uses-metaport]]
== `metaport`
-Possible arguments: (none)
+Возможные аргументы: (отсутствуют)
-Sets the following variables to make it easier to create a metaport: `MASTER_SITES`, `DISTFILES`, `EXTRACT_ONLY`, `NO_BUILD`, `NO_INSTALL`, `NO_MTREE`, `NO_ARCH`.
+Устанавливает следующие переменные для упрощения создания метапорта: `MASTER_SITES`, `DISTFILES`, `EXTRACT_ONLY`, `NO_BUILD`, `NO_INSTALL`, `NO_MTREE`, `NO_ARCH`.
+
+[[uses-minizip]]
+== `minizip`
+
+Возможные аргументы: (отсутствуют), `ng`
+
+Добавляет зависимость библиотеки от package:archivers/minizip[] или package:archivers/minizip-ng[] соответственно.
+
+[[uses-mlt]]
+== `mlt`
+
+Возможные аргументы: `7`, `nodepend`
+
+Обеспечить поддержку портов, зависящих от package:multimedia/mlt7[].
+
+Если указан аргумент `nodepend`, зависимости от библиотек не создаются. Этот аргумент имеет смысл только для портов multimedia/mlt7*.
[[uses-mysql]]
== `mysql`
-Possible arguments: (none), `_version_`, `client` (default), `server`, `embedded`
+Возможные аргументы: (отсутствуют), `_версия_`, `client` (по умолчанию), `server`, `embedded`
-Provide support for MySQL
-If no version is given, try to find the current installed version.
-Fall back to the default version, MySQL-5.6.
-The possible versions are `55`, `55m`, `55p`, `56`, `56p`, `56w`, `57`, `57p`, `80`, `100m`, `101m`, and `102m`.
-The `m` and `p` suffixes are for the MariaDB and Percona variants of MySQL.
-`server` and `embedded` add a build- and run-time dependency on the MySQL server.
-When using `server` or `embedded`, add `client` to also add a dependency on [.filename]#libmysqlclient.so#.
-A port can set `IGNORE_WITH_MYSQL` if some versions are not supported.
+Предоставить поддержку MySQL. Если версия не указана, попытаться определить установленную версию. В случае неудачи использовать версию по умолчанию, MySQL-5.6. Возможные версии: `55`, `55m`, `55p`, `56`, `56p`, `56w`, `57`, `57p`, `80`, `100m`, `101m` и `102m`. Суффиксы `m` и `p` обозначают флейворы MariaDB и Percona для MySQL. Параметры `server` и `embedded` добавляют зависимости во время сборки и выполнения на сервер MySQL. При использовании `server` или `embedded` добавьте `client`, чтобы также включить зависимость от [.filename]#libmysqlclient.so#. Порт может установить `IGNORE_WITH_MYSQL`, если некоторые версии не поддерживаются.
-The framework sets `MYSQL_VER` to the detected MySQL version.
+Фреймворк устанавливает `MYSQL_VER` в обнаруженную версию MySQL.
[[uses-mono]]
== `mono`
-Possible arguments: (none), `nuget`
+Возможные аргументы: (отсутствуют), `nuget`
-Adds a dependency on the Mono (currently only C#) framework by setting the appropriate dependencies.
+Добавляет зависимость от фреймворка Mono (в настоящее время только C#), устанавливая соответствующие зависимости.
-Specify `nuget` when the port uses nuget packages.
-`NUGET_DEPENDS` needs to be set with the names and versions of the nuget packages in the format `_name_=_version_`.
-An optional package origin can be added using `_name_=_version_:_origin_`.
+Укажите `nuget`, если порт использует пакеты nuget. `NUGET_DEPENDS` должен содержать имена и версии пакетов nuget в формате `_имя_=_версия_`. Можно добавить необязательное расположение пакета (origin), используя `_имя_=_версия_:_ расположение _`.
-The helper target, `buildnuget`, will output the content of the `NUGET_DEPENDS` based on the provided [.filename]#packages.config#.
+Вспомогательная цель `buildnuget` выведет содержимое `NUGET_DEPENDS` на основе предоставленного файла [.filename]#packages.config#.
[[uses-motif]]
== `motif`
-Possible arguments: (none)
+Возможные аргументы: (отсутствуют)
+
+Использует package:x11-toolkits/open-motif[] как зависимость библиотеки. Конечные пользователи могут установить `WANT_LESSTIF` в [.filename]#make.conf#, чтобы использовать package:x11-toolkits/lesstif[] как зависимость вместо package:x11-toolkits/open-motif[]. Аналогично, установка `WANT_OPEN_MOTIF_DEVEL` в [.filename]#make.conf# добавит зависимость от package:x11-toolkits/open-motif-devel[]
+
+[[uses-mpi]]
+== `mpi`
+
+Возможные аргументы: `mpich` (по умолчанию), `openmpi`
+
+Обеспечить поддержку портов, зависящих от `MPI`.
+
+Если указан аргумент `mpich`, в порт добавляется зависимость от package:net/mpich[].
+
+Если указан аргумент `openmpi`, в порт добавляется зависимость от package:net/openmpi[].
+
+Фреймворк портов предоставляет следующие переменные, которые могут быть прочитаны портом:
+
+`MPI_LIBS`::
+Библиотеки, необходимые для связывания программ с использованием `MPI`.
+
+`MPI_CFLAGS`::
+Флаги компилятора, необходимые для сборки программ с использованием `MPI`.
+
+`MPICC`::
+Расположение исполняемого файла `mpicc`. По умолчанию: [.filename]#${MPI_HOME}/bin/mpicc#.
+
+`MPICXX`::
+Расположение исполняемого файла `mpicxx`. По умолчанию: [.filename]#${MPI_HOME}/bin/mpicxx#.
+
+`MPIF90`::
+Расположение исполняемого файла `mpif90`. По умолчанию: [.filename]#${MPI_HOME}/bin/mpif90#.
+
+`MPIFC`::
+То же, что и выше.
+
+`MPI_HOME`::
+Каталог установки `MPI`. По умолчанию используется `${LOCALBASE}` для `MPICH`.
+
+`MPIEXEC`::
+Расположение исполняемого файла `mpiexec`. По умолчанию: [.filename]#${MPI_HOME}/bin/mpiexec#.
+
+`MPIRUN`::
+Расположение исполняемого файла `mpirun`. По умолчанию: [.filename]#${MPI_HOME}/bin/mpirun#.
-Uses package:x11-toolkits/open-motif[] as a library dependency.
-End users can set `WANT_LESSTIF` for the dependency to be on package:x11-toolkits/lesstif[] instead of package:x11-toolkits/open-motif[].
[[uses-ncurses]]
== `ncurses`
-Possible arguments: (none), `base`, `port`
+Возможные аргументы: (нет), `base`, `port`
+
+Использует ncurses и устанавливает некоторые полезные переменные.
+
+[[uses-nextcloud]]
+== `nextcloud`
-Uses ncurses, and causes some useful variables to be set.
+Возможные аргументы: (отсутствуют)
+
+Добавляет поддержку приложений Nextcloud, добавляя зависимость во время выполнения на package:www/nextcloud[].
[[uses-ninja]]
== `ninja`
-Possible arguments: (none)
+Возможные аргументы: (нет), `build`, `make` (по умолчанию), `run`
+
+Если указаны аргументы `build` или `run`, это соответственно добавляет зависимость во время сборки или выполнения от пакета package:devel/ninja[]. Если указан `make` или аргументы не предоставлены, используется ninja для сборки порта вместо make. `make` подразумевает `build`. Если переменная `NINJA_DEFAULT` установлена в `samurai`, тогда зависимости устанавливаются для пакета package:devel/samurai[] вместо этого.
+
+[[uses-nodejs]]
+== `nodejs`
-Uses ninja to build the port.
+Возможные аргументы: (нет), `build`, `run`, `current`, `lts`, `10`, `14`, `16`,
+ `17`.
+
+Использует nodejs. Добавляет зависимость от пакета package:www/node*[]. Если указана поддерживаемая версия, то также необходимо указать `run` и/или `build`.
[[uses-objc]]
== `objc`
-Possible arguments: (none)
+Возможные аргументы: (отсутствуют)
+
+Добавить зависимости Objective C (компилятор, библиотека времени выполнения), если базовая система их не поддерживает.
+
+[[uses-ocaml]]
+== `ocaml`
+
+Возможные аргументы: (нет), `build`, `camlp4`, `dune`, `findlib`, `findplist`, `ldconfig`, `run`, `tk`, `tkbuild`, `tkrun`, `wash`
+
+Обеспечить поддержку OCaml.
+
+Если аргументы не указаны, по умолчанию используются `build`, `run`.
+
+Если указан аргумент `build`, то package:lang/ocamlc[] добавляется в `BUILD_DEPENDS`, `EXTRACT` и `PATCH_DEPENDS`.
+
+Если указан аргумент `camlp4`, то для сборки используется package:devel/ocamlp4[].
+
+Если указан аргумент `dune`, то package:devel/ocaml-dune[] используется как система сборки.
+
+Если указан аргумент `findlib`, то для установки пакетов будет использоваться `ocamlfind`. Каталоги пакетов будут автоматически удалены.
+
+Если указан аргумент `findplist`, то содержимое целевых каталогов `findlib` будет добавлено автоматически.
+
+Если указан аргумент `ldconfig`, то файл [.filename]#ld.conf# OCaml будет обработан автоматически. При использовании `dune` Dune может устанавливать stublibs в каталог(-и) пакетов site-lib или в отдельный каталог ниже каталога `DUNE_LIBDIR` site-lib. Установите, если порт устанавливает общие библиотеки в ocaml
+
+Если указан аргумент `run`, добавить ocamlc в `RUN_DEPENDS`.
+
+Если указан аргумент `tk`, то в порт добавляется зависимость на сборку и выполнение от пакета package:x11-toolkits/ocaml-labltk[]. Подразумевает `tkbuild` и `tkrun`.
+
+Если указан аргумент `tkbuild`, то пакет package:x11-toolkits/ocaml-labltk[] добавляется в `BUILD_DEPENDS`, `EXTRACT` и `PATCH_DEPENDS`.
+
+Если указан аргумент `tkrun`, то package:x11-toolkits/ocaml-labltk[] добавляется в `RUN_DEPENDS`.
-Add objective C dependencies (compiler, runtime library) if the base system does not support it.
+Если указан аргумент `wash`, общие каталоги Ocaml будут очищены при удалении. Полезно при установке в нестандартный `PREFIX`.
+
+Портом могут быть установлены следующие переменные:
+
+`OCAML_PKGDIRS`::
+Каталоги в site-lib для обработки, если указан аргумент `findlib`. По умолчанию: `${PORTNAME}`
+
+`OCAML_LDLIBS`::
+Каталоги в `PREFIX`, которые будут автоматически добавлены/удалены из [.filename]#ld.conf#. По умолчанию: `${OCAML_SITELIBDIR}/${PORTNAME}`
+
+`OCAML_PACKAGES`::
+Список пакетов для сборки и установки. По умолчанию `${PORTNAME}`
+
+
+[[uses-octave]]
+== `octave`
+
+Возможные аргументы: (нет), env
+
+Использует package:math/octave[]. `env` загружает только одну переменную окружения `OCTAVE_VERSION`.
[[uses-openal]]
== `openal`
-Possible arguments: `al`, `soft` (default), `si`, `alut`
+Возможные аргументы: `al`, `soft` (по умолчанию), `si`, `alut`
-Uses OpenAL.
-The backend can be specified, with the software implementation as the default.
-The user can specify a preferred backend with `WANT_OPENAL`.
-Valid values for this knob are `soft` (default) and `si`.
+Использует OpenAL. Бэкенд может быть указан, с программной реализацией по умолчанию. Пользователь может указать предпочтительный бэкенд с помощью `WANT_OPENAL`. Допустимые значения для этой настройки: `soft` (по умолчанию) и `si`.
[[uses-pathfix]]
== `pathfix`
-Possible arguments: (none)
+Возможные аргументы: (отсутствуют)
-Look for [.filename]#Makefile.in# and [.filename]#configure# in `PATHFIX_WRKSRC` (defaults to `WRKSRC`) and fix common paths to make sure they respect the FreeBSD hierarchy.
-For example, it fixes the installation directory of `pkgconfig`'s [.filename]#.pc# files to [.filename]#${PREFIX}/libdata/pkgconfig#.
-If the port uses `USES=autoreconf`, [.filename]#Makefile.am# will be added to `PATHFIX_MAKEFILEIN` automatically.
+Ищите [.filename]#Makefile.in# и [.filename]#configure# в `PATHFIX_WRKSRC` (по умолчанию `WRKSRC`) и исправляйте стандартные пути, чтобы они соответствовали иерархии FreeBSD. Например, исправляется каталог установки для файлов [.filename]#.pc# `pkgconfig` на [.filename]#${PREFIX}/libdata/pkgconfig#. Если порт использует `USES=autoreconf`, [.filename]#Makefile.am# будет автоматически добавлен в `PATHFIX_MAKEFILEIN`.
-If the port <<uses-cmake,`USES=cmake`>> it will look for [.filename]#CMakeLists.txt# in `PATHFIX_WRKSRC`.
-If needed, that default filename can be changed with `PATHFIX_CMAKELISTSTXT`.
+Если порт crossref:uses[uses-cmake,`USES=cmake`], он будет искать файл [.filename]#CMakeLists.txt# в `PATHFIX_WRKSRC`. При необходимости это имя файла по умолчанию можно изменить с помощью `PATHFIX_CMAKELISTSTXT`.
[[uses-pear]]
== `pear`
-Possible arguments: `env`
+Возможные аргументы: `env`
-Adds a dependency on package:devel/pear[].
-It will setup default behavior for software using the PHP Extension and Application Repository.
-Using the `env` arguments only sets up the PEAR environment variables.
-See crossref:special[php-pear,PEAR Modules] for more information.
+Добавляет зависимость от пакета package:devel/pear[]. Настраивает поведение по умолчанию для программного обеспечения, использующего PHP Extension and Application Repository. Использование аргументов `env` только устанавливает переменные окружения PEAR. Дополнительную информацию см. в crossref:special[php-pear,Модули PEAR].
[[uses-perl5]]
== `perl5`
-Possible arguments: (none)
+Возможные аргументы: (отсутствуют)
-Depends on Perl. The configuration is done using `USE_PERL5`.
+Зависит от Perl. Настройка выполняется с помощью `USE_PERL5`.
-`USE_PERL5` can contain the phases in which to use Perl, can be `extract`, `patch`, `build`, `run`, or `test`.
+`USE_PERL5` может содержать фазы, в которых используется Perl: `extract`, `patch`, `build`, `run` или `test`.
-`USE_PERL5` can also contain `configure`, `modbuild`, or `modbuildtiny` when [.filename]#Makefile.PL#, [.filename]#Build.PL#,
-or Module::Build::Tiny's flavor of [.filename]#Build.PL# is required.
+`USE_PERL5` также может содержать `configure`, `modbuild` или `modbuildtiny`, если требуется [.filename]#Makefile.PL#, [.filename]#Build.PL# или вариант [.filename]#Build.PL# для Module::Build::Tiny.
-`USE_PERL5` defaults to `build run`.
-When using `configure`, `modbuild`, or `modbuildtiny`, `build` and `run` are implied.
+`USE_PERL5` по умолчанию имеет значение `build run`. При использовании `configure`, `modbuild` или `modbuildtiny`, `build` и `run` подразумеваются автоматически.
-See crossref:special[using-perl,Using Perl] for more information.
+См. crossref:special[using-perl,Использование Perl] для получения дополнительной информации.
[[uses-pgsql]]
== `pgsql`
-Possible arguments: (none), `_X.Y_`, `_X.Y_+`, `_X.Y_-`, `_X.Y_-_Z.A_`
+Возможные аргументы: (нет), `_X.Y_`, `_X.Y_+`, `_X.Y_-`, `_X.Y_-_Z.A_`
-Provide support for PostgreSQL.
-Port maintainer can set version required.
-Minimum and maximum versions or a range can be specified; for example, `9.0-`, `8.4+`, `8.4-9.2.`
+Предоставить поддержку PostgreSQL. Ответственный за порт может указать требуемую версию. Можно указать минимальную и максимальную версии или диапазон; например, `9.0-`, `8.4+`, `8.4-9.2`
-By default, the added dependency will be the client, but if the port requires additional components,
-this can be done using `WANT_PGSQL=_component[:target]_`;
-for example, `WANT_PGSQL=server:configure pltcl plperl`.
-The available components are:
+По умолчанию добавляемая зависимость будет клиентской, но если порту требуются дополнительные компоненты, это можно указать с помощью `WANT_PGSQL=_компонент[:цель]_`; например, `WANT_PGSQL=server:configure pltcl plperl`. Доступные компоненты:
* `client`
* `contrib`
@@ -1140,83 +1819,67 @@ The available components are:
[[uses-php]]
== `php`
-Possible arguments: (none), `phpize`, `ext`, `zend`, `build`, `cli`, `cgi`, `mod`, `web`, `embed`, `pecl`, `flavors`, `noflavors`
+Возможные аргументы: (нет), `phpize`, `ext`, `zend`, `build`, `cli`, `cgi`, `mod`, `web`, `embed`, `pecl`, `flavors`, `noflavors`
-Provide support for PHP.
-Add a runtime dependency on the default PHP version, package:lang/php56[].
+Обеспечить поддержку PHP. Добавить зависимость во время выполнения на версию PHP по умолчанию, package:lang/php81[].
`phpize`::
-Use to build a PHP extension.
-Enables flavors.
+Используется для создания расширения PHP. Поддерживает флейворы.
`ext`::
-Use to build, install and register a PHP extension.
-Enables flavors.
+Используется для сборки, установки и регистрации расширения PHP. Поддерживает флейворы.
`zend`::
-Use to build, install and register a Zend extension.
-Enables flavors.
+Используется для сборки, установки и регистрации Zend-расширения. Поддерживает флейворы.
`build`::
-Set PHP also as a build-time dependency.
+Установить PHP также как зависимость во время сборки.
`cli`::
-Needs the CLI version of PHP.
+Требуется версия PHP для командной строки.
`cgi`::
-Needs the CGI version of PHP.
+Требуется CGI-версия PHP.
`mod`::
-Needs the Apache module for PHP.
+Требуется модуль Apache для PHP.
`web`::
-Needs the Apache module or the CGI version of PHP.
+Требуется модуль Apache или CGI-версия PHP.
`embed`::
-Needs the embedded library version of PHP.
+Требуется встроенная версия библиотеки PHP.
`pecl`::
-Provide defaults for fetching PHP extensions from the PECL repository.
-Enables flavors.
+Установить значения по умолчанию для загрузки расширений PHP из репозитория PECL. Включает флейворы.
`flavors`::
-Enable automatic crossref:flavors[flavors-auto-php,PHP flavors] generation.
-Flavors will be generated for all PHP versions, except the ones present in <<uses-php-ignore,`IGNORE_WITH_PHP`>>.
+Включить автоматическую генерацию crossref:flavors[flavors-auto-php,флейворов PHP]. Флейворы будут созданы для всех версий PHP, за исключением указанных в crossref:uses[uses-php-ignore,`IGNORE_WITH_PHP`].
`noflavors`::
-Disable automatic PHP flavors generation.
-_Must only_ be used with extensions provided by PHP itself.
+Отключить автоматическое создание флейворов PHP. _Должно_ использоваться только с расширениями, предоставляемыми самим PHP.
-Variables are used to specify which PHP modules are required, as well as which version of PHP are supported.
+Переменные используются для указания необходимых модулей PHP, а также версий PHP, которые поддерживаются.
`USE_PHP`::
-The list of required PHP extensions at run-time.
-Add `:build` to the extension name to add a build-time dependency.
-Example: `pcre xml:build gettext`
+Список необходимых расширений PHP во время выполнения. Добавьте `:build` к названию расширения, чтобы указать зависимость во время сборки. Пример: `pcre xml:build gettext`
[[uses-php-ignore]]
`IGNORE_WITH_PHP`::
-The port does not work with PHP of the given version.
-For possible values look at the content of `_ALL_PHP_VERSIONS` in [.filename]#Mk/Uses/php.mk#.
+Порт не работает с PHP указанной версии. Возможные значения можно посмотреть в содержимом `_ALL_PHP_VERSIONS` в [.filename]#Mk/Uses/php.mk#.
-When building a PHP or Zend extension with `:ext` or `:zend`, these variables can be set:
+При сборке расширения PHP или Zend с помощью `:ext` или `:zend`, можно задать следующие переменные:
`PHP_MODNAME`::
-The name of the PHP or Zend extension.
-Default value is `${PORTNAME}`.
+Имя расширения PHP или Zend. Значение по умолчанию: `${PORTNAME}`.
`PHP_HEADER_DIRS`::
-A list of subdirectories from which to install header files.
-The framework will always install the header files that are present in the same directory as the extension.
+Список подкаталогов, из которых следует устанавливать заголовочные файлы. Фреймворк всегда будет устанавливать заголовочные файлы, находящиеся в том же каталоге, что и расширение.
`PHP_MOD_PRIO`::
-The priority at which to load the extension.
-It is a number between `00` and `99`.
+Приоритет загрузки расширения. Это число от `00` до `99`.
+
-For extensions that do not depend on any extension, the priority is automatically set to `20`, for extensions that depend on another extension, the priority is automatically set to `30`.
-Some extensions may need to be loaded before every other extension, for example package:www/php56-opcache[].
-Some may need to be loaded after an extension with a priority of `30`.
-In that case, add `PHP_MOD_PRIO=_XX_` in the port's Makefile. For example:
+Для расширений, которые не зависят от других расширений, приоритет автоматически устанавливается в `20`, а для расширений, зависящих от другого расширения, приоритет автоматически устанавливается в `30`. Некоторые расширения могут требовать загрузки перед всеми остальными, например, package:www/php56-opcache[]. Некоторые могут требовать загрузки после расширения с приоритетом `30`. В таком случае добавьте `PHP_MOD_PRIO=_XX_` в Makefile порта. Например:
+
[.programlisting]
....
@@ -1225,52 +1888,42 @@ USE_PHP= wddx
PHP_MOD_PRIO= 40
....
-These variables are available to use in `PKGNAMEPREFIX` or `PKGNAMESUFFIX`:
+Эти переменные доступны для использования в `PKGNAMEPREFIX` или `PKGNAMESUFFIX`:
`PHP_PKGNAMEPREFIX`::
-Contains `php_XY_-` where _XY_ is the current flavor's PHP version.
-Use with PHP extensions and modules.
+Содержит `php_XY_-`, где _XY_ — версия PHP текущей редакции. Используется с расширениями и модулями PHP.
`PHP_PKGNAMESUFFIX`::
-Contains `-php_XY_` where _XY_ is the current flavor's PHP version.
-Use with PHP applications.
+Содержит `-php_XY_`, где _XY_ — версия PHP текущего варианта. Используется с PHP-приложениями.
`PECL_PKGNAMEPREFIX`::
-Contains `php_XY_-pecl-` where _XY_ is the current flavor's PHP version.
-Use with PECL modules.
+Содержит `php_XY_-pecl-`, где _XY_ — версия PHP текущей редакции. Используется с модулями PECL.
[IMPORTANT]
====
-With flavors, all PHP extensions, PECL extensions, PEAR modules _must have_ a different package name,
-so they must all use one of these three variables in their `PKGNAMEPREFIX` or `PKGNAMESUFFIX`.
+С вариантами сборки все расширения PHP, расширения PECL, модули PEAR _должны иметь_ разные имена пакетов, поэтому они должны использовать одну из трёх переменных в `PKGNAMEPREFIX` или `PKGNAMESUFFIX`.
====
[[uses-pkgconfig]]
== `pkgconfig`
-Possible arguments: (none), `build` (default), `run`, `both`
+Возможные аргументы: (отсутствуют), `build` (по умолчанию), `run`, `both`
-Uses package:devel/pkgconf[].
-With no arguments or with the `build` argument, it implies `pkg-config` as a build-time dependency.
-`run` implies a run-time dependency and `both` implies both run-time and build-time dependencies.
+Использует package:devel/pkgconf[]. Без аргументов или с аргументом `build` подразумевает зависимость от `pkg-config` во время сборки. `run` подразумевает зависимость во время выполнения, а `both` — зависимости как во время выполнения, так и во время сборки.
[[uses-pure]]
== `pure`
-Possible arguments: (none), `ffi`
+Возможные аргументы: (нет), `ffi`
-Uses package:lang/pure[].
-Largely used for building related pure ports.
-With the `ffi` argument, it implies package:devel/pure-ffi[] as a run-time dependency.
+Использует package:lang/pure[]. В основном применяется для сборки портов, зависящих от pure. С аргументом `ffi` подразумевает package:devel/pure-ffi[] как зависимость во время выполнения.
[[uses-pyqt]]
== `pyqt`
-Possible arguments: (none), `4`, `5`
+Возможные аргументы: (нет), `4`, `5`
-Uses PyQt. If the port is part of PyQT itself, set `PYQT_DIST`.
-Use `USE_PYQT` to select the components the port needs.
-The available components are:
+Использует PyQt. Если порт является частью самого PyQT, установите `PYQT_DIST`. Используйте `USE_PYQT` для выбора необходимых порту компонентов. Доступные компоненты:
* `core`
* `dbus`
@@ -1292,7 +1945,7 @@ The available components are:
* `xml`
* `xmlpatterns`
-These components are only available with PyQT4:
+Эти компоненты доступны только с PyQT4:
* `assistant`
* `declarative`
@@ -1301,7 +1954,7 @@ These components are only available with PyQT4:
* `script`
* `scripttools`
-These components are only available with PyQT5:
+Эти компоненты доступны только с PyQT5:
* `multimediawidgets`
* `printsupport`
@@ -1310,7 +1963,7 @@ These components are only available with PyQT5:
* `webkitwidgets`
* `widgets`
-The default dependency for each component is build- and run-time, to select only build or run, add `_build` or `_run` to the component name. For example:
+Зависимость по умолчанию для каждого компонента — это время сборки и выполнения. Чтобы выбрать только сборку или выполнение, добавьте `_build` или `_run` к имени компонента. Например:
[.programlisting]
....
@@ -1318,58 +1971,76 @@ USES= pyqt
USE_PYQT= core doc_build designer_run
....
+[[uses-pytest]]
+== `pytest`
+
+Возможные аргументы: (нет), 4
+
+Вводит новую зависимость от package:devel/pytest[]. Он определяет цель `do-test`, которая будет правильно запускать тесты. Используйте аргумент, чтобы зависеть от определённой версии package:devel/pytest[]. Для портов, использующих package:devel/pytest[], рекомендуется использовать это вместо конкретной цели `do-test`. Фреймворк предоставляет порту следующие переменные:
+
+`PYTEST_ARGS`::
+Дополнительные аргументы для pytest (по умолчанию пусто).
+
+`PYTEST_IGNORED_TESTS`::
+списки шаблонов `pytest -k` для игнорирования тестов (по умолчанию пустые). Для тестов, которые не должны проходить, например, требующих доступа к базе данных.
+
+`PYTEST_BROKEN_TESTS`::
+списки шаблонов `pytest -k` тестов для игнорирования (по умолчанию пустые). Для сломанных тестов, которые требуют исправления.
+
+В дополнение следующие переменные могут быть заданы пользователем:
+
+`PYTEST_ENABLE_IGNORED_TESTS`::
+Включить тесты, которые в противном случае игнорируются `PYTEST_IGNORED_TESTS`.
+
+`PYTEST_ENABLE_BROKEN_TESTS`::
+Включить тесты, которые в противном случае игнорируются `PYTEST_BROKEN_TESTS`.
+
+`PYTEST_ENABLE_ALL_TESTS`::
+Включить тесты, которые в противном случае игнорируются `PYTEST_IGNORED_TESTS` и `PYTEST_BROKEN_TESTS`.
+
+
[[uses-python]]
== `python`
-Possible arguments: (none), `_X.Y_`, `_X.Y+_`, `_-X.Y_`, `_X.Y-Z.A_`, `patch`, `build`, `run`, `test`
+Возможные аргументы: (нет), `_X.Y_`, `_X.Y+_`, `_-X.Y_`, `_X.Y-Z.A_`, `patch`, `build`, `run`, `test`
-Uses Python. A supported version or version range can be specified.
-If Python is only needed at build time, run time or for the tests, it can be set as a build, run or test dependency with `build`, `run`, or `test`.
-If Python is also needed during the patch phase, use `patch`.
-See crossref:special[using-python, Using Python] for more information.
+Использует Python. Можно указать поддерживаемую версию или диапазон версий. Если Python требуется только во время сборки, выполнения или тестирования, его можно установить как зависимость для сборки, выполнения или тестирования с помощью `build`, `run` или `test`. Если Python также требуется на этапе исправлений, используйте `patch`. Дополнительную информацию см. в разделе crossref:special[using-python,Использование Python].
-`PYTHON_NO_DEPENDS=yes` can be used when the variables exported by the framework are needed but a dependency on Python is not.
-It can happen when using with <<uses-shebangfix,`USES=shebangfix`>>, and the goal is only to fix the shebangs but not add a dependency on Python.
+`USES=python:env` можно использовать, когда необходимы переменные, экспортируемые фреймворком, но зависимость от Python не требуется. Это может быть полезно при использовании с crossref:uses[uses-shebangfix,`USES=shebangfix`], если цель состоит только в исправлении shebang без добавления зависимости от Python.
[[uses-qmail]]
== `qmail`
-Possible arguments: (none), `build`, `run`, `both`, `vars`
+Возможные аргументы: (нет), `build`, `run`, `both`, `vars`
-Uses package:mail/qmail[]. With the `build` argument, it implies `qmail` as a build-time dependency.
-`run` implies a run-time dependency.
-Using no argument or the `both` argument implies both run-time and build-time dependencies.
-`vars` will only set QMAIL variables for the port to use.
+Использует package:mail/qmail[]. С аргументом `build` подразумевается зависимость от `qmail` во время сборки. Аргумент `run` подразумевает зависимость во время выполнения. Использование без аргументов или с аргументом `both` подразумевает зависимости как во время выполнения, так и во время сборки. Аргумент `vars` только устанавливает переменные QMAIL для использования в порте.
[[uses-qmake]]
== `qmake`
-Possible arguments: (none), `norecursive`, `outsource`, `no_env`, `no_configure`
+Возможные аргументы: (отсутствуют), `norecursive`, `outsource`, `no_env`, `no_configure`
-Uses QMake for configuring. For more information see crossref:special[using-qmake,Using `qmake`].
+Использует QMake для настройки. Для получения дополнительной информации см. crossref:special[using-qmake,Использование `qmake`].
[[uses-qt]]
== `qt`
-Possible arguments: `5`, `no_env`
+Возможные аргументы: `5`, `6`, `no_env`
-Add dependency on Qt components.
-`no_env` is passed directly to `USES= qmake`.
-See crossref:special[using-qt,Using Qt] for more information.
+Добавить зависимость от компонентов Qt. `no_env` передаётся напрямую в `USES= qmake`. Подробнее см. в crossref:special[using-qt,Использование Qt].
[[uses-qt-dist]]
== `qt-dist`
-Possible arguments: (none) or `5` and (none) or one of `3d`, `activeqt`, `androidextras`, `base`, `canvas3d`, `charts`, `connectivity`, `datavis3d`, `declarative`, `doc`, `gamepad`, `graphicaleffects`, `imageformats`, `location`, `macextras`, `multimedia`, `networkauth`, `purchasing`, `quickcontrols2`, `quickcontrols`, `remoteobjects`, `script`, `scxml`, `sensors`, `serialbus`, `serialport`, `speech`, `svg`, `tools`, `translations`, `virtualkeyboard`, `wayland`, `webchannel`, `webengine`, `websockets`, `webview`, `winextras`, `x11extras`, `xmlpatterns`
+Возможные аргументы: (нет) или `5` и (нет) или `6` и (нет) или один из `3d`, `5compat`, `base`, `charts`, `connectivity`, `datavis3d`, `declarative`, `doc`, `languageserver`, `gamepad`, `graphicaleffects`, `imageformats`, `location`, `lottie`, `multimedia`, `networkauth`, `positioning`, `quick3d`, `quickcontrols2`, `quickcontrols`, `quicktimeline`, `remoteobjects`, `script`, `scxml`, `sensors`, `serialbus`, `serialport`, `shadertools`, `speech`, `svg`, `tools`, `translations`, `virtualkeyboard`, `wayland`, `webchannel`, `webengine`, `webglplugin`, `websockets`, `webview`, `x11extras`, `xmlpatterns`.
-Provides support for building Qt 5 components.
-It takes care of setting up the appropriate configuration environment for the port to build.
+Предоставляет поддержку сборки компонентов Qt 5 и Qt 6. Обеспечивает настройку соответствующей конфигурации окружения для сборки порта.
[[qt5-dist-example]]
-.Building Qt 5 Components
+.Сборка компонентов Qt 5
[example]
====
-The port is Qt 5's `networkauth` component, which is part of the `networkauth` distribution file.
+Порт представляет собой компонент `networkauth` из Qt 5, который входит в файл дистрибутива `networkauth`.
[.programlisting]
....
@@ -1381,13 +2052,30 @@ USES= qt-dist:5
====
-If `PORTNAME` does not match the component name, it can be passed as an argument to `qt-dist`.
+
+[[qt6-dist-example]]
+.Сборка компонентов Qt 6
+[example]
+====
+Порт представляет собой компонент `websockets` из Qt 6, который входит в файл дистрибутива `websockets`.
+
+[.programlisting]
+....
+PORTNAME= websockets
+PORTVERSION= ${QT6_VERSION}
+
+USES= qt-dist:6
+....
+
+====
+
+Если `PORTNAME` не совпадает с именем компонента, его можно передать как аргумент в `qt-dist`.
[[qt5-dist-example-explicit]]
-.Building Qt 5 Components with Different Names
+.Сборка компонентов Qt 5 с разными именами
[example]
====
-The port is Qt 5's `gui` component, which is part of the `base` distribution file.
+Порт представляет собой компонент `gui` из Qt 5, который входит в файл дистрибутива `base`.
[.programlisting]
....
@@ -1402,116 +2090,181 @@ USES= qt-dist:5,base
[[uses-readline]]
== `readline`
-Possible arguments: (none), `port`
+Возможные аргументы: (нет), `port`
+
+Использует readline в качестве зависимости библиотеки и устанавливает `CPPFLAGS` и `LDFLAGS` по необходимости. Если используется аргумент `port` или если readline отсутствует в базовой системе, добавляет зависимость от package:devel/readline[]
+
+
+[[uses-ruby]]
+== `ruby`
+
+Возможные аргументы: (нет), `build`, `extconf`, `run`, `setup`
+
+Предоставить поддержку для портов, связанных с Ruby. `(none)` без аргументов добавляет зависимость во время выполнения на package:lang/ruby[]. `build` добавляет зависимость на package:lang/ruby[] во время сборки. `extconf` указывает, что порт использует extconf.rb для настройки. `run` добавляет зависимость на package:lang/ruby[] во время выполнения. Это также значение по умолчанию. `setup` указывает, что порт использует setup.rb для настройки и сборки.
+
+Пользователь может определить следующие переменные:
+
+`RUBY_VER`::
+Альтернативная короткая версия ruby в виде `x.y`.
+
+`RUBY_DEFAULT_VER`::
+Установите (например) `2.7`, чтобы использовать `ruby27` в качестве версии по умолчанию.
+
+`RUBY_ARCH`::
+Установите имя архитектуры (например, i386-freebsd7).
+
+Следующие переменные экспортируются для использования портом:
+
+`RUBY`::
+Установлена в полный путь к ruby. Если задано, значения следующих переменных автоматически получаются из исполняемого файла ruby: `RUBY_ARCH`, `RUBY_ARCHLIBDIR`, `RUBY_LIBDIR`, `RUBY_SITEARCHLIBDIR`, `RUBY_SITELIBDIR`, `RUBY_VER` и `RUBY_VERSION`
+
+`RUBY_VER`::
+Установлена в альтернативную короткую версию ruby в формате `x.y`.
+
+`RUBY_EXTCONF`::
+Установлена в альтернативное имя для extconf.rb (по умолчанию: extconf.rb).
+
+`RUBY_EXTCONF_SUBDIRS`::
+Установлена в список подкаталогов, если включено несколько модулей.
+
+`RUBY_SETUP`::
+Установлена в альтернативное имя для setup.rb (по умолчанию: setup.rb).
-Uses readline as a library dependency, and sets `CPPFLAGS` and `LDFLAGS` as necessary.
-If the `port` argument is used or if readline is not present in the base system, add a dependency on package:devel/readline[]
[[uses-samba]]
== `samba`
-Possible arguments: `build`, `env`, `lib`, `run`
+Возможные аргументы: `build`, `env`, `lib`, `run`
+
+Обработать зависимость от Samba. `env` не добавит никаких зависимостей, а только установит переменные. `build` и `run` добавят зависимости во время сборки и выполнения на [.filename]#smbd#. `lib` добавит зависимость на [.filename]#libsmbclient.so#. Экспортируемые переменные:
+
+`SAMBA_PORT`::
+Расположение порта Samba по умолчанию.
-Handle dependency on Samba.
-`env` will not add any dependency and only set up the variables.
-`build` and `run` will add build-time and run-time dependency on [.filename]#smbd#. `lib` will add a dependency on [.filename]#libsmbclient.so#.
-The variables that are exported are:
+`SAMBA_INCLUDEDIR`::
+Расположение заголовочных файлов Samba.
-`SAMBAPORT`::
-The origin of the default Samba port.
+`SAMBA_LIBS`::
+Каталог, в котором доступны общие библиотеки Samba.
-`SAMBAINCLUDES`::
-The location of the Samba header files.
+`SAMBA_LDB_PORT`::
+Расположение порта ldb, используемого выбранной версией Samba (например, package:databases/ldb28[]). Он должен использоваться, если порту требуется зависимость от той же версии ldb, что и у выбранной версии Samba.
-`SAMBALIBS`::
-The directory where the Samba shared libraries are available.
+`SAMBA_TALLOC_PORT`::
+Расположение порта talloc, используемого выбранной версией Samba. Следует использовать, если порту требуется зависеть от той же версии talloc, что и выбранная версия Samba.
+
+`SAMBA_TDB_PORT`::
+Расположение порта TDB, используемого выбранной версией Samba. Его следует использовать, если порту требуется зависеть от той же версии TDB, что и выбранная версия Samba.
+
+`SAMBA_TEVENT_PORT`::
+Расположение порта tevent, используемого выбранной версией Samba. Это следует использовать, если порту необходимо зависеть от той же версии tevent, что и выбранная версия Samba.
[[uses-scons]]
== `scons`
-Possible arguments: (none)
+Возможные аргументы: (отсутствуют)
+
+Предоставить поддержку для использования package:devel/scons[]. Дополнительную информацию смотрите в crossref:special[using-scons,Использование `scons`].
+
+[[uses-sdl]]
+== `sdl`
+
+Возможные аргументы: `sdl`
+
+Обеспечить поддержку использования пакетов `SDL`. Переменная `USE_SDL` является обязательной и указывает, какие компоненты добавить в зависимости.
+
+Поддерживаемые в настоящее время модули `SDL1.2`:
+
+* sdl
+* console
+* gfx
+* image
+* mixer
+* mm
+* net
+* pango
+* sound
+* ttf
-Provide support for the use of package:devel/scons[].
-See crossref:special[using-scons,Using `scons`] for more information.
+Текущие поддерживаемые модули `SDL2`:
+
+ * sdl2
+ * gfx2
+ * image2
+ * mixer2
+ * net2
+ * sound2
+ * ttf2
+
+Текущие поддерживаемые модули `SDL3`:
+
+ * sdl3
+ * image3
+ * ttf3
[[uses-shared-mime-info]]
== `shared-mime-info`
-Possible arguments: (none)
+Возможные аргументы: (отсутствуют)
-Uses update-mime-database from package:misc/shared-mime-info[].
-This uses will automatically add a post-install step in such a way that the port itself still can specify there own post-install step if needed.
-It also add an crossref:plist[plist-keywords-shared-mime-info,`@shared-mime-info`] entry to the plist.
+Использует update-mime-database из пакета package:misc/shared-mime-info[]. Это автоматически добавит шаг post-install таким образом, что сам порт всё ещё может указать собственный шаг post-install при необходимости. Также добавляет запись crossref:plist[plist-keywords-shared-mime-info,`@shared-mime-info`] в plist.
[[uses-shebangfix]]
== `shebangfix`
-Possible arguments: (none)
+Возможные аргументы: (отсутствуют)
-A lot of software uses incorrect locations for script interpreters, most notably [.filename]#/usr/bin/perl# and [.filename]#/bin/bash#.
-The shebangfix macro fixes shebang lines in scripts listed in `SHEBANG_REGEX`, `SHEBANG_GLOB`, or `SHEBANG_FILES`.
+Множество программ используют некорректные расположения для интерпретаторов скриптов, особенно [.filename]#/usr/bin/perl# и [.filename]#/bin/bash#. Макрос shebangfix исправляет строки shebang в скриптах, перечисленных в `SHEBANG_REGEX`, `SHEBANG_GLOB` или `SHEBANG_FILES`.
`SHEBANG_REGEX`::
-Contains _one_ extended regular expressions, and is used with the `-iregex` argument of man:find[1].
-See <<uses-shebangfix-ex-regex>>.
+Содержит _одно_ расширенное регулярное выражение и используется с аргументом `-iregex` в man:find[1]. См. crossref:uses[uses-shebangfix-ex-regex,`USESshebangfix` с `SHEBANG_REGEX`].
`SHEBANG_GLOB`::
-Contains a list of patterns used with the `-name` argument of man:find[1].
-See <<uses-shebangfix-ex-glob>>.
+Содержит список шаблонов, используемых с аргументом `-name` в man:find[1]. См. crossref:uses[uses-shebangfix-ex-glob,`USESshebangfix` с `SHEBANG_GLOB`].
`SHEBANG_FILES`::
-Contains a list of files or man:sh[1] globs.
-The shebangfix macro is run from `${WRKSRC}`, so `SHEBANG_FILES` can contain paths that are relative to `${WRKSRC}`.
-It can also deal with absolute paths if files outside of `${WRKSRC}` require patching.
-See <<uses-shebangfix-ex-files>>.
+Содержит список файлов или шаблонов man:sh[1]. Макрос shebangfix выполняется из `${WRKSRC}`, поэтому `SHEBANG_FILES` может содержать пути, относительные к `${WRKSRC}`. Также он может работать с абсолютными путями, если требуется исправление файлов вне `${WRKSRC}`. См. crossref:uses[uses-shebangfix-ex-files,`USESshebangfix` с `SHEBANG_FILES`].
-Currently Bash, Java, Ksh, Lua, Perl, PHP, Python, Ruby, Tcl, and Tk are supported by default.
+В настоящее время Bash, Java, Ksh, Lua, Perl, PHP, Python, Ruby, Tcl и Tk поддерживаются по умолчанию.
-There are three configuration variables:
+Существует три переменных конфигурации:
`SHEBANG_LANG`::
-The list of supported interpreters.
+Список поддерживаемых интерпретаторов.
`_interp__CMD`::
-The path to the command interpreter on FreeBSD.
-The default value is `${LOCALBASE}/bin/_interp_`.
+Путь к интерпретатору команд в FreeBSD. Значение по умолчанию — `${LOCALBASE}/bin/_interp_`.
`_interp__OLD_CMD`::
-The list of wrong invocations of interpreters.
-These are typically obsolete paths, or paths used on other operating systems that are incorrect on FreeBSD.
-They will be replaced by the correct path in `_interp__CMD`.
+Список неправильных вызовов интерпретаторов. Обычно это устаревшие пути или пути, используемые в других операционных системах, которые неверны в FreeBSD. Они будут заменены на правильные пути в `_interp__CMD`.
+
[NOTE]
====
-These will _always_ be part of `_interp__OLD_CMD`: `"/usr/bin/env _interp_" /bin/_interp_ /usr/bin/_interp_ /usr/local/bin/_interp_`.
+Эти пути _всегда_ будут частью `_interp__OLD_CMD`: `"/usr/bin/env _interp_" /bin/_interp_ /usr/bin/_interp_ /usr/local/bin/_interp_`.
====
+
[TIP]
====
-`_interp__OLD_CMD` contain multiple values.
-Any entry with spaces must be quoted.
-See <<uses-shebangfix-ex-ksh>>.
+`_interp__OLD_CMD` содержит несколько значений. Любая запись с пробелами должна быть заключена в кавычки. См. crossref:uses[uses-shebangfix-ex-ksh,Указание всех путей при добавлении интерпретатора в `USESshebangfix`].
====
[IMPORTANT]
====
-The fixing of shebangs is done during the `patch` phase.
-If scripts are created with incorrect shebangs during the `build` phase, the build process (for example, the [.filename]#configure# script, or the [.filename]#Makefiles#) must be patched or given the right path (for example, with `CONFIGURE_ENV`, `CONFIGURE_ARGS`, `MAKE_ENV`, or `MAKE_ARGS`) to generate the right shebangs.
+Исправление шебанг-строк выполняется на этапе `patch`. Если скрипты создаются с некорректными шебанг-строками на этапе `build`, процесс сборки (например, скрипт [.filename]#configure# или [.filename]#Makefiles#) должен быть исправлен или ему должен быть указан правильный путь (например, с помощью `CONFIGURE_ENV`, `CONFIGURE_ARGS`, `MAKE_ENV` или `MAKE_ARGS`) для генерации корректных шебанг-строк.
-Correct paths for supported interpreters are available in `_interp__CMD`.
+Правильные пути для поддерживаемых интерпретаторов доступны в `_interp__CMD`.
====
[TIP]
====
-When used with <<uses-python,`USES=python`>>, and the aim is only to fix the shebangs but a dependency on Python itself is not wanted, use `PYTHON_NO_DEPENDS=yes`.
+При использовании с crossref:uses[uses-python,`USES=python`], если цель состоит только в исправлении shebang, но зависимость от самого Python не требуется, используйте `USES=python:env`.
====
[[uses-shebangfix-ex-lua]]
-.Adding Another Interpreter to `USES=shebangfix`
+.Добавление другого интерпретатора в `USES=shebangfix`
[example]
====
-To add another interpreter, set `SHEBANG_LANG`.
-For example:
+Чтобы добавить другой интерпретатор, установите `SHEBANG_LANG`. Например:
[.programlisting]
....
@@ -1521,10 +2274,10 @@ SHEBANG_LANG= lua
====
[[uses-shebangfix-ex-ksh]]
-.Specifying all the Paths When Adding an Interpreter to `USES=shebangfix`
+.Указание всех путей при добавлении интерпретатора в `USES=shebangfix`
[example]
====
-If it was not already defined, and there were no default values for `_interp__OLD_CMD` and `_interp__CMD` the Ksh entry could be defined as:
+Если они еще не были определены и не было значений по умолчанию для `_interp__OLD_CMD` и `_interp__CMD`, запись Ksh можно определить как:
[.programlisting]
....
@@ -1536,12 +2289,10 @@ ksh_CMD= ${LOCALBASE}/bin/ksh
====
[[uses-shebangfix-ex-strange]]
-.Adding a Strange Location for an Interpreter
+.Добавление нестандартного расположения интерпретатора
[example]
====
-Some software uses strange locations for an interpreter.
-For example, an application might expect Python to be located in [.filename]#/opt/bin/python2.7#.
-The strange path to be replaced can be declared in the port [.filename]#Makefile#:
+Некоторое программное обеспечение использует нестандартные пути для интерпретатора. Например, приложение может ожидать, что Python будет расположен в [.filename]#/opt/bin/python2.7#. Нестандартный путь, который нужно заменить, можно указать в [.filename]#Makefile# порта:
[.programlisting]
....
@@ -1551,10 +2302,10 @@ python_OLD_CMD= /opt/bin/python2.7
====
[[uses-shebangfix-ex-regex]]
-.`USES=shebangfix` with `SHEBANG_REGEX`
+.`USES=shebangfix` с `SHEBANG_REGEX`
[example]
====
-To fix all the files in `${WRKSRC}/scripts` ending in [.filename]#.pl#, [.filename]#.sh#, or [.filename]#.cgi# do:
+Для исправления всех файлов в `${WRKSRC}/scripts`, оканчивающихся на [.filename]#.pl#, [.filename]#.sh# или [.filename]#.cgi#, выполните:
[.programlisting]
....
@@ -1564,17 +2315,16 @@ SHEBANG_REGEX= ./scripts/.*\.(sh|pl|cgi)
[NOTE]
======
-`SHEBANG_REGEX` is used by running `find -E`, which uses modern regular expressions also known as extended regular expressions.
-See man:re_format[7] for more information.
+`SHEBANG_REGEX` используется при выполнении `find -E`, который применяет современные регулярные выражения, также известные как расширенные регулярные выражения. Подробнее см. в man:re_format[7].
======
====
[[uses-shebangfix-ex-glob]]
-.`USES=shebangfix` with `SHEBANG_GLOB`
+.`USES=shebangfix` с `SHEBANG_GLOB`
[example]
====
-To fix all the files in `${WRKSRC}` ending in [.filename]#.pl# or [.filename]#.sh#, do:
+Для исправления всех файлов в `${WRKSRC}` с окончанием [.filename]#.pl# или [.filename]#.sh# выполните:
[.programlisting]
....
@@ -1585,10 +2335,10 @@ SHEBANG_GLOB= *.sh *.pl
====
[[uses-shebangfix-ex-files]]
-.`USES=shebangfix` with `SHEBANG_FILES`
+.`USES=shebangfix` с `SHEBANG_FILES`
[example]
====
-To fix the files [.filename]#script/foobar.pl# and [.filename]#script/*.sh# in `${WRKSRC}`, do:
+Для исправления файлов [.filename]#script/foobar.pl# и [.filename]#script/*.sh# в `${WRKSRC}` выполните:
[.programlisting]
....
@@ -1601,38 +2351,42 @@ SHEBANG_FILES= scripts/foobar.pl scripts/*.sh
[[uses-sqlite]]
== `sqlite`
-Possible arguments: (none), `2`, `3`
+Возможные аргументы: (нет), `2`, `3`
+
+Добавить зависимость от SQLite. Используемая по умолчанию версия — 3, но также возможна версия 2 с использованием модификатора `:2`.
+
+[[uses-sbrk]]
+== `sbrk`
+
+Возможные аргументы: (отсутствуют)
-Add a dependency on SQLite.
-The default version used is 3, but version 2 is also possible using the `:2` modifier.
+Помечает порт как `BROKEN` для `aarch64` и `riscv64`.
[[uses-ssl]]
== `ssl`
-Possible arguments: (none), `build`, `run`
+Возможные аргументы: (нет), `build`, `run`
-Provide support for OpenSSL.
-A build- or run-time only dependency can be specified using `build` or `run`.
-These variables are available for the port's use, they are also added to `MAKE_ENV`:
+Обеспечить поддержку OpenSSL. Зависимость только для сборки или выполнения может быть указана с использованием `build` или `run`. Эти переменные доступны для использования портом, а также добавлены в `MAKE_ENV`:
`OPENSSLBASE`::
-Path to the OpenSSL installation base.
+Путь к базовой установке OpenSSL.
`OPENSSLDIR`::
-Path to OpenSSL's configuration files.
+Путь к файлам конфигурации OpenSSL.
`OPENSSLLIB`::
-Path to the OpenSSL libraries.
+Путь к библиотекам OpenSSL.
`OPENSSLINC`::
-Path to the OpenSSL includes.
+Путь к заголовочным файлам OpenSSL.
`OPENSSLRPATH`::
-If defined, the path the linker needs to use to find the OpenSSL libraries.
+Если определено, путь, который требуется компоновщику для поиска библиотек OpenSSL.
[TIP]
====
-If a port does not build with an OpenSSL flavor, set the `BROKEN_SSL` variable, and possibly the `BROKEN_SSL_REASON__flavor_`:
+Если порт не собирается с вариантом OpenSSL, установите переменную `BROKEN_SSL`, а также, возможно, `BROKEN_SSL_REASON__flavor_`:
[.programlisting]
....
@@ -1645,282 +2399,351 @@ BROKEN_SSL_REASON_libressl= needs features only available in OpenSSL
[[uses-tar]]
== `tar`
-Possible arguments: (none), `Z`, `bz2`, `bzip2`, `lzma`, `tbz`, `tbz2`, `tgz`, `txz`, `xz`
+Возможные аргументы: (нет), `Z`, `bz2`, `bzip2`, `lzma`, `tbz`, `tbz2`, `tgz`, `txz`, `xz`, `zst`, `zstd`
-Set `EXTRACT_SUFX` to `.tar`, `.tar.Z`, `.tar.bz2`, `.tar.bz2`, `.tar.lzma`, `.tbz`, `.tbz2`, `.tgz`, `.txz` or `.tar.xz` respectively.
+Установите `EXTRACT_SUFX` в `.tar`, `.tar.Z`, `.tar.bz2`, `.tar.bz2`, `.tar.lzma`, `.tbz`, `.tbz2`, `.tgz`, `.txz`, `.tar.xz`, `.tar.zst` или `.tar.zstd` соответственно.
[[uses-tcl]]
== `tcl`
-Possible arguments: _version_, `wrapper`, `build`, `run`, `tea`
+Возможные аргументы: _version_, `wrapper`, `build`, `run`, `tea`
-Add a dependency on Tcl. A specific version can be requested using _version_.
-The version can be empty, one or more exact version numbers (currently `84`, `85`, or `86`), or a minimal version number (currently `84+`, `85+` or `86+`).
-To only request a non version specific wrapper, use `wrapper`.
-A build- or run-time only dependency can be specified using `build` or `run`.
-To build the port using the Tcl Extension Architecture, use `tea`.
-After including [.filename]#bsd.port.pre.mk# the port can inspect the results using these variables:
+Добавьте зависимость от Tcl. Конкретная версия может быть запрошена с помощью _version_. Версия может быть пустой, одной или несколькими точными номерами версий (в настоящее время `84`, `85` или `86`), либо минимальным номером версии (в настоящее время `84+`, `85+` или `86+`). Чтобы запросить только неспецифичную для версии обёртку, используйте `wrapper`. Зависимость только на время сборки или выполнения может быть указана с помощью `build` или `run`. Для сборки порта с использованием Tcl Extension Architecture используйте `tea`. После включения [.filename]#bsd.port.pre.mk# порт может проверить результаты с помощью этих переменных:
-* `TCL_VER`: chosen major.minor version of Tcl
-* `TCLSH`: full path of the Tcl interpreter
-* `TCL_LIBDIR`: path of the Tcl libraries
-* `TCL_INCLUDEDIR`: path of the Tcl C header files
-* `TK_VER`: chosen major.minor version of Tk
-* `WISH`: full path of the Tk interpreter
-* `TK_LIBDIR`: path of the Tk libraries
-* `TK_INCLUDEDIR`: path of the Tk C header files
+* `TCL_VER`: выбранная версия Tcl в формате major.minor
+* `TCLSH`: полный путь к интерпретатору Tcl
+* `TCL_LIBDIR`: путь к библиотекам Tcl
+* `TCL_INCLUDEDIR`: путь к заголовочным файлам Tcl на языке C
+* `TCL_PKG_LIB_PREFIX`: Префикс библиотеки, согласно TIP595
+* `TCL_PKG_STUB_POSTFIX`: Постфикс библиотеки заглушки
+* `TK_VER`: выбранная версия Tk в формате major.minor
+* `WISH`: полный путь к интерпретатору Tk
+* `TK_LIBDIR`: путь к библиотекам Tk
+* `TK_INCLUDEDIR`: путь к заголовочным файлам Tk на языке C
[[uses-terminfo]]
== `terminfo`
-Possible arguments: (none)
+Возможные аргументы: (отсутствуют)
+
+Добавляет crossref:plist[plist-keywords-terminfo,`@terminfo`] в файл [.filename]#plist#. Используется, когда порт устанавливает файлы [.filename]#*.terminfo# в каталог [.filename]#${PREFIX}/share/misc#.
+
+[[uses-tex]]
+== `tex`
+
+Возможные аргументы: (отсутствуют)
+
+Обеспечить поддержку tex. Загружает все стандартные переменные для портов, связанных с TEX, и не добавляет зависимостей от других портов.
+
+Переменные используются для указания того, какие модули TEX требуются.
-Adds crossref:plist[plist-keywords-terminfo,`@terminfo`] to the [.filename]#plist#.
-Use when the port installs [.filename]#*.terminfo# files in [.filename]#${PREFIX}/share/misc#.
+`USE_TEX`::
+Список необходимых расширений TEX во время выполнения. Добавьте `:build` к названию расширения, чтобы добавить зависимость на время сборки, `:run` — для зависимости во время выполнения, `:test` — для зависимости во время тестирования, `:extract` — для зависимости во время извлечения. Пример: `base texmf:build source:run`
+
+Текущие возможные аргументы следующие:
+
+* `base`
+* `texmf`
+* `source`
+* `docs`
+* `web2c`
+* `kpathsea`
+* `ptexenc`
+* `basic`
+* `tlmgr`
+* `texlua`
+* `texluajit`
+* `synctex`
+* `xpdfopen`
+* `dvipsk`
+* `dvipdfmx`
+* `xdvik`
+* `gbklatex`
+* `formats`
+* `tex`
+* `latex`
+* `pdftex`
+* `jadetex`
+* `luatex`
+* `ptex`
+* `xetex`
+* `xmltex`
+* `texhash`
+* `updmap`
+* `fmtutil`
[[uses-tk]]
== `tk`
-Same as arguments for `tcl`
+Так же, как аргументы для `tcl`
+
+Небольшая обертка при использовании Tcl и Tk. Возвращаются те же переменные, что и при использовании Tcl.
+
+[[uses-trigger]]
+== `trigger`
-Small wrapper when using both Tcl and Tk.
-The same variables are returned as when using Tcl.
+Возможные аргументы: (отсутствуют)
+
+Предоставить поддержку для портов, требующих выполнения триггеров с помощью man:pkg[8]. Триггеры выполняются в конце транзакции, если условия выполнены.
+
+Следующая переменная может быть установлена портами:
+
+`TRIGGERS`::
+Список триггеров для пакета. По умолчанию используется `${PORTNAME}`.
+
+Триггеры указываются в формате UCL и обычно размещаются в каталоге [.filename]#files/# порта.
[[uses-uidfix]]
== `uidfix`
-Possible arguments: (none)
+Возможные аргументы: (отсутствуют)
-Changes some default behavior (mostly variables) of the build system to allow installing this port as a normal user.
-Try this in the port before using <<uses-fakeroot,USES=fakeroot>> or patching.
+Изменяет некоторые стандартные настройки (в основном переменные) системы сборки, чтобы позволить установку этого порта обычным пользователем. Попробуйте это в порте перед использованием crossref:uses[uses-fakeroot,`USES=fakeroot`] или исправлением.
[[uses-uniquefiles]]
== `uniquefiles`
-Possible arguments: (none), `dirs`
+Возможные аргументы: (нет), `dirs`
+
+Сделать файлы или каталоги 'уникальными', добавляя префикс или суффикс. Если используется аргумент `dirs`, порту требуется префикс (и только префикс) на основе `UNIQUE_PREFIX` для стандартных каталогов `DOCSDIR`, `EXAMPLESDIR`, `DATADIR`, `WWWDIR`, `ETCDIR`. Эти переменные доступны для портов:
-Make files or directories 'unique', by adding a prefix or suffix.
-If the `dirs` argument is used, the port needs a prefix (and only a prefix) based on `UNIQUE_PREFIX` for standard directories `DOCSDIR`, `EXAMPLESDIR`, `DATADIR`, `WWWDIR`, `ETCDIR`.
-These variables are available for ports:
+* `UNIQUE_PREFIX`: Префикс, используемый для каталогов и файлов. По умолчанию: `${PKGNAMEPREFIX}`.
+* `UNIQUE_PREFIX_FILES`: Список файлов, которые необходимо предварить префиксом. По умолчанию: пусто.
+* `UNIQUE_SUFFIX`: Суффикс, используемый для файлов. По умолчанию: `${PKGNAMESUFFIX}`.
+* `UNIQUE_SUFFIX_FILES`: Список файлов, к которым необходимо добавить суффикс. По умолчанию: пусто.
-* `UNIQUE_PREFIX`: The prefix to be used for directories and files. Default: `${PKGNAMEPREFIX}`.
-* `UNIQUE_PREFIX_FILES`: A list of files that need to be prefixed. Default: empty.
-* `UNIQUE_SUFFIX`: The suffix to be used for files. Default: `${PKGNAMESUFFIX}`.
-* `UNIQUE_SUFFIX_FILES`: A list of files that need to be suffixed. Default: empty.
+[[uses-vala]]
+== `vala`
+
+Возможные аргументы: `build`, `lib`, `no_depend`
+
+Добавляет зависимости сборки или библиотеки на package:lang/vala[]. Аргумент `no_depend` зарезервирован для самого package:lang/vala[].
[[uses-varnish]]
== `varnish`
-Possible arguments: `4`, `6`
+Возможные аргументы: `4` (по умолчанию), `6`, `7`
+
+Обрабатывает зависимости для Varnish Cache. Добавляет зависимость от пакета `package:www/varnish*[]`.
+
+[[uses-waf]]
+== `waf`
+
+Возможные аргументы: (отсутствуют)
+
+Обеспечить поддержку портов, использующих систему сборки `waf`.
+
+Это подразумевает `USES=python:build`.
+
+Следующие переменные экспортируются для использования портом:
+
+`WAF_CMD`::
+Расположение скрипта `waf`. Установите этот параметр, если скрипт `waf` не находится в [.filename]#WRKSRC/waf#.
+
+`CONFIGURE_TARGET`::
+Цель для `configure`. По умолчанию – `configure`.
+
+`ALL_TARGET`::
+Цель для `all`. По умолчанию `build`.
-Handle dependencies on Varnish Cache.
-`4` will add a dependency on package:www/varnish4[].
-`6` will add a dependency on package:www/varnish6[].
+`INSTALL_TARGET`::
+Цель для `install`. По умолчанию `install`.
[[uses-webplugin]]
== `webplugin`
-Possible arguments: (none), `ARGS`
+Возможные аргументы: (нет), `ARGS`
-Automatically create and remove symbolic links for each application that supports the webplugin framework.
-`ARGS` can be one of:
+Автоматически создавать и удалять символические ссылки для каждого приложения, поддерживающего фреймворк webplugin. `ARGS` может быть одним из:
-* `gecko`: support plug-ins based on Gecko
-* `native`: support plug-ins for Gecko, Opera, and WebKit-GTK
-* `linux`: support Linux plug-ins
-* `all` (default, implicit): support all plug-in types
-* (individual entries): support only the browsers listed
+* `gecko`: поддержка плагинов на основе Gecko
+* `native`: поддержка плагинов для Gecko, Opera и WebKit-GTK
+* `linux`: поддержка Linux плагинов
+* `all` (по умолчанию, неявно): поддержка всех типов плагинов
+* (отдельные записи): поддерживаются только перечисленные браузеры
-These variables can be adjusted:
+Эти переменные можно настроить:
-* `WEBPLUGIN_FILES`: No default, must be set manually. The plug-in files to install.
-* `WEBPLUGIN_DIR`: The directory to install the plug-in files to, default [.filename]#PREFIX/lib/browser_plugins/WEBPLUGIN_NAME#. Set this if the port installs plug-in files outside of the default directory to prevent broken symbolic links.
-* `WEBPLUGIN_NAME`: The final directory to install the plug-in files into, default `PKGBASE`.
+* `WEBPLUGIN_FILES`: Значение по умолчанию отсутствует, должно быть установлено вручную. Файлы плагинов для установки.
+* `WEBPLUGIN_DIR`: Каталог для установки файлов плагина, по умолчанию [.filename]#PREFIX/lib/browser_plugins/WEBPLUGIN_NAME#. Установите это значение, если порт устанавливает файлы плагина вне стандартного каталога, чтобы избежать битых символических ссылок.
+* `WEBPLUGIN_NAME`: Конечный каталог для установки файлов плагина, по умолчанию `PKGBASE`.
[[uses-xfce]]
== `xfce`
-Possible arguments: (none), `gtk2`
+Возможные аргументы: (нет), `gtk2`
-Provide support for Xfce related ports.
-See crossref:special[using-xfce,Using Xfce] for details.
+Предоставить поддержку для портов, связанных с Xfce. Подробности см. в crossref:special[using-xfce,Использование Xfce].
-The `gtk2` argument specifies that the port requires GTK2 support.
-It adds additional features provided by some core components, for example, package:x11/libxfce4menu[] and package:x11-wm/xfce4-panel[].
+Аргумент `gtk2` указывает, что порт требует поддержки GTK2. Он добавляет дополнительные возможности, предоставляемые некоторыми основными компонентами, например, package:x11/libxfce4menu[] и package:x11-wm/xfce4-panel[].
[[uses-xorg]]
== `xorg`
-Possible arguments: (none)
+Возможные аргументы: (отсутствуют)
-Provides an easy way to depend on X.org components.
-The components should be listed in `USE_XORG`.
-The available components are:
+Предоставляет простой способ зависеть от компонентов X.org. Компоненты должны быть перечислены в `USE_XORG`. Доступные компоненты:
[[using-x11-components]]
-.Available X.Org Components
+.Доступные компоненты X.Org
[cols="1,1", frame="none", options="header"]
|===
-| Name
-| Description
+| Имя
+| Описание
|`dmx`
-|DMX extension library
+|Библиотека расширений DMX
|`fontenc`
-|The fontenc Library
+|Библиотека fontenc
|`fontutil`
-|Create an index of X font files in a directory
+|Создать индекс файлов шрифтов X в каталоге
|`ice`
-|Inter Client Exchange library for X11
+|Библиотека Inter Client Exchange для X11
|`libfs`
-|The FS library
+|Библиотека FS
|`pciaccess`
-|Generic PCI access library
+|Универсальная библиотека доступа к PCI
|`pixman`
-|Low-level pixel manipulation library
+|Библиотека для низкоуровневого управления пикселями
|`sm`
-|Session Management library for X11
+|Библиотека управления сеансами для X11
|`x11`
-|X11 library
+|Библиотека X11
|`xau`
-|Authentication Protocol library for X11
+|Библиотека протокола аутентификации для X11
|`xaw`
-|X Athena Widgets library
+|Библиотека X Athena Widgets
|`xaw6`
-|X Athena Widgets library
+|Библиотека X Athena Widgets
|`xaw7`
-|X Athena Widgets library
+|Библиотека X Athena Widgets
|`xbitmaps`
-|X.Org bitmaps data
+|Данные растровых изображений X.Org
|`xcb`
-|The X protocol C-language Binding (XCB) library
+|Библиотека с интерфейсом языка С для X протокола (XCB)
|`xcomposite`
-|X Composite extension library
+|Библиотека расширения X Composite
|`xcursor`
-|X client-side cursor loading library
+|X библиотека загрузки курсоров на стороне клиента
|`xdamage`
-|X Damage extension library
+|Библиотека расширения X Damage
|`xdmcp`
-|X Display Manager Control Protocol library
+|Библиотека протокола управления дисплейным менеджером X (XDMCP)
|`xext`
-|X11 Extension library
+|Библиотека расширений X11
|`xfixes`
-|X Fixes extension library
+|Библиотека расширений X Fixes
|`xfont`
-|X font library
+|Библиотека шрифтов X
|`xfont2`
-|X font library
+|Библиотека шрифтов X
|`xft`
-|Client-sided font API for X applications
+|Клиентский API шрифтов для приложений X
|`xi`
-|X Input extension library
+|Библиотека расширения X Input
|`xinerama`
-|X11 Xinerama library
+|Библиотека X11 Xinerama
|`xkbfile`
-|XKB file library
+|Библиотека файлов XKB
|`xmu`
-|X Miscellaneous Utilities libraries
+|Библиотека X Miscellaneous Utilities
|`xmuu`
-|X Miscellaneous Utilities libraries
+|Библиотека X Miscellaneous Utilities
|`xorg-macros`
-|X.Org development aclocal macros
+|X.Org макросы разработки aclocal
|`xorg-server`
-|X.Org X server and related programs
+|Сервер X.Org X и относящиеся к нему программы
|`xorgproto`
-|xorg protocol headers
+|Заголовочные файлы протокола xorg
|`xpm`
-|X Pixmap library
+|Библиотека X Pixmap
|`xpresent`
-|X Present Extension library
+|Библиотека расширений X Present
|`xrandr`
-|X Resize and Rotate extension library
+|Библиотека расширений X Resize and Rotate
|`xrender`
-|X Render extension library
+|Библиотека расширения X Render
|`xres`
-|X Resource usage library
+|Библиотека мониторинга ресурсов X Resource usage
|`xscrnsaver`
-|The XScrnSaver library
+|Библиотека XScrnSaver
|`xshmfence`
-|Shared memory 'SyncFence' synchronization primitive
+|Примитив синхронизации "SyncFence" в разделяемой памяти
|`xt`
-|X Toolkit library
+|Библиотека X Toolkit
|`xtrans`
-|Abstract network code for X
+|Абстрактный сетевой код для X
|`xtst`
-|X Test extension
+|Расширение X Test
|`xv`
-|X Video Extension library
+|Библиотека расширения X Video
|`xvmc`
-|X Video Extension Motion Compensation library
+|Библиотека X Video Extension Motion Compensation
|`xxf86dga`
-|X DGA Extension
+|Расширение X DGA
|`xxf86vm`
-|X Vidmode Extension
+|Расширение X Vidmode
|===
[[uses-xorg-cat]]
== `xorg-cat`
-Possible arguments: `app`, `data`, `doc`, `driver`, `font`, `lib`, `proto`, `util`, `xserver` and (none) or one off `autotools` (default), `meson`
+Возможные аргументы: `app`, `data`, `doc`, `driver`, `font`, `lib`, `proto`, `util`, `xserver` и (без аргументов) или один из `autotools` (по умолчанию), `meson`
-Provide support for building Xorg components.
-It takes care of setting up common dependencies and an appropriate configuration environment needed.
-This is intended only for Xorg components.
+Обеспечивает поддержку сборки компонентов Xorg. Управляет настройкой общих зависимостей и необходимой конфигурационной среды. Предназначено только для компонентов Xorg.
-The category has to match upstream categories.
+Категория должна соответствовать категориям вышестоящего репозитория.
-The second argument is the build system to use.
-autotools is the default, but meson is also supported.
+Второй аргумент — используемая система сборки. По умолчанию используется `autotools`, но также поддерживается `meson`.
[[uses-zip]]
== `zip`
-Possible arguments: (none), `infozip`
+Возможные аргументы: (нет), `infozip`
-Indicates that the distribution files use the ZIP compression algorithm.
-For files using the InfoZip algorithm the `infozip` argument must be passed to set the appropriate dependencies.
+Указывает, что файлы дистрибутива используют алгоритм сжатия ZIP. Для файлов, использующих алгоритм InfoZip, необходимо передать аргумент `infozip`, чтобы установить соответствующие зависимости.