<sect1 id="conf-options-table">
<title
>Таблиця параметрів налаштування</title>

<para
>Нижче наведено таблиці параметрів програми, у яких ви знайдете такі дані:</para>

<itemizedlist>

<listitem
><para
>Назву параметра</para
></listitem>

<listitem
><para
>Область дії параметра: <emphasis
>global</emphasis
>, <emphasis
>module</emphasis
> або <emphasis
>module-set</emphasis
>. Параметри в області дії <emphasis
>module</emphasis
> або/і <emphasis
>module-set</emphasis
> також можна визначати у розділах <emphasis
>options</emphasis
>. </para
></listitem>

<listitem
><para
>Коментарі щодо призначення та способів використання параметра.</para
></listitem>

</itemizedlist>

<table id="options-global-table">
<title
>Параметри загальної області</title>
<tgroup cols="2">

<thead>
<row>
<entry
>Назва параметра</entry>
<entry
>Опис</entry>
</row>
</thead>
<tbody>

<row id="conf-async">
<entry
><link linkend="conf-async"
>async</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Булеве</member>
<member
>Типове значення</member
><member
>True</member>
<member
>Доступний з версії</member
><member
>1.6</member>
</simplelist>
<para
>За допомогою цього параметра можна увімкнути асинхронний режим роботи, за якого оновлення кодів програм і процес збирання виконуватимуться паралельно, — програма не чекатиме на завершення оновлення всіх кодів програм перед запуском процесу збирання.</para>
<para
>Пов'язаний параметр командного рядка: <xref linkend="cmdline-async"/></para>
</entry>
</row>

<row id="conf-colorful-output">
<entry
><link linkend="conf-colorful-output"
>colorful-output</link
></entry>
<entry
><simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Булеве</member>
<member
>Типове значення</member
><member
>True</member>
</simplelist
><para
>Встановіть для цього параметра значення <userinput
>false</userinput
>, щоб вимкнути розфарбування даних, які виводитиме &kdesrc-build;. Зауважте, що &kdesrc-build; не виводитиме розфарбовані дані до інших, відмінних від термінала (на зразок xterm, &konsole; або звичайної консолі &Linux;), виводів.</para>
<para
>Пов'язаний параметр командного рядка: <xref linkend="cmdline-color"/></para>
</entry>
</row>

<row id="conf-disable-agent-check">
<entry
><link linkend="conf-disable-agent-check"
>disable-agent-check</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Булеве</member>
<member
>Типове значення</member
><member
>False</member>
</simplelist>
<para
>Якщо ви використовуєте &ssh; для отримання вихідних кодів &git; (наприклад, якщо ви використовуєте протокол git+ssh), цей параметр керує тим, чи намагатиметься &kdesrc-build; перевірити і зробити так, щоб, якщо ви використовуєте агент ssh, цей агент справді керував певними профілями &ssh;. Так зроблено, щоб &ssh; не надсилав, за можливості, запитів на пароль для кожного з ваших модулів.</para>
<para
>Пов'язані параметри командного рядка: --disable-agent-check, --no-disable-agent-check</para>
</entry>
</row>

<row id="conf-git-desired-protocol">
<entry
><link linkend="conf-git-desired-protocol"
>git-desired-protocol</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Рядок</member>
<member
>Типове значення</member
><member
>git</member>
<member
>Журнал</member
><member
>Цей параметр було додано у &kdesrc-build; 1.16. До версії 20.06 цей параметр використовувався для налаштовування адреси отримання даних, а не адреси надсилання даних. З версії 20.06 для оновлення проєктів KDE завжди використовується <literal
>https</literal
>.</member>
</simplelist>
<para
>Цей параметр стосується модулів зі сховища <link linkend="kde-projects-module-sets"
>проєкту &kde;</link
>.</para>

<para
>Насправді, за допомогою цього параметрам можна вказати, якому з протоколів роботи у мережі слід надавати перевагу під час оновлення початкових кодів відповідних модулів. Зазвичай, використовується дуже ефективний протокол <literal
>git</literal
>, але його може бути заблоковано у деяких мережах (наприклад у корпоративних мережах, відкритих мережах Wi-Fi). Альтернативним протоколом з ширшою підтримкою є <literal
>https</literal
>, який використовується для доступу до сайтів інтернету.</para>

<para
>Якщо ви користуєтеся якоюсь з мереж з обмеженнями, ви можете встановити для цього параметра значення <userinput
>http</userinput
>, щоб наказати програмі надавати перевагу передаванню даних за допомогою <literal
>https</literal
>.</para>

<tip
><para
>Крім того, у вас може виникнути потреба у встановленні значення для параметра <link linkend="conf-http-proxy"
>http-proxy</link
>, якщо для роботи з даним використовується проксі-сервер HTTP.</para
></tip>

<para
>У всіх інших випадках не варто встановлювати цей параметр, оскільки типовий протокол є найефективнішим.</para>

</entry>
</row>

<row id="conf-git-repository-base">
<entry
><link linkend="conf-git-repository-base"
>git-repository-base</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Рядок</member>
<member
>Доступний з версії</member
><member
>1.12.1</member>
</simplelist>
<para
>Цей параметр використовується для скорочення посилань на базову адресу певного сховища Git у наступних оголошеннях <link linkend="module-sets"
>наборів модулів</link
>. Параметр корисний для оголошення збирання декількох модулів Git.</para>

<para
>Вам слід вказати два значення (відокремлених пробілами): назву, яку буде пов’язано з базовою адресою, та саму базову адресу. Приклад:</para>

<para>
<programlisting
>global
# інші параметри
# Загальна адреса всіх модулів сервера Git з анонімним доступом.
git-repository-base <replaceable
>kde-git</replaceable
> <replaceable
>kde:</replaceable>
end global

# Оголошення модулів

module-set
# Тепер можна скористатися раніше визначеним псевдонімом, але <emphasis
>лише</emphasis>
# у межах module-set.
repository <replaceable
>kde-git</replaceable>
<link linkend="conf-use-modules"
>use-modules</link
> <replaceable
>модуль1.git</replaceable
> <replaceable
>модуль2.git</replaceable>
end module-set
</programlisting>
</para>

<para
>Параметр <literal
>use-modules</literal
> набору модулів створив два записи модулів. &kdesrc-build; поводитиметься так, наче було вказано:</para>

<programlisting
>module модуль1
    repository kde:<replaceable
>модуль1.git</replaceable>
end module

module модуль2
    repository kde:<replaceable
>модуль2.git</replaceable>
end module
</programlisting>

<para
>Префікс сховища &git; <literal
>kde:</literal
>, використаний вище, є скороченням, яке буде автоматично встановлено &kdesrc-build;. Щоб дізнатися більше, ознайомтеся зі статтею TechBase щодо <ulink url="https://techbase.kde.org/Development/Git/Configuration#URL_Renaming"
>перейменування адрес</ulink
>. Зауважте, що на відміну від більшості інших параметрів, цей параметр може бути вказано декілька разів з метою визначення потрібних вам замінників адрес.</para>

<tip
><para
>Для того, щоб скористатися перевагами наборів модулів, не обов’язково використовувати цей параметр. Цей параметр призначено лише для спрощення використання одного сховища у декількох наборах модулів.</para
></tip>
</entry>
</row>

<row id="conf-install-environment-driver">
<entry
><link linkend="conf-install-environment-driver"
>install-environment-driver</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Булеве</member>
<member
>Типове значення</member
><member
>True</member>
<member
>Доступний з версії</member
><member
>17.08</member>
</simplelist>
<para
>Встановити скрипт оболонки, яким можна скористатися у скриптах налаштовування профілю користувача для спрощення визначення бажаних змінних середовища для запуску стільниці Плазми, зібраної за допомогою &kdesrc-build;.</para>

<para
>Цим драйвером буде внесено зміни до таких файлів:</para>

<itemizedlist>
<listitem
><para
><filename
>$XDG_CONFIG_HOME/kde-env-master.sh</filename
> (зазвичай зберігається за адресою <filename
>~/.config/kde-env-master.sh</filename
>).</para
></listitem>
<listitem
><para
><filename
>$XDG_CONFIG_HOME/kde-env-user.sh</filename
> (зазвичай зберігається за адресою <filename
>~/.config/kde-env-user.sh</filename
>).</para
></listitem>
</itemizedlist>

<para
>Скрипт <filename
>kde-env-user.sh</filename
> є необов'язковим. Його призначено для налаштовування користувачем (див. розділ <ulink url="https://userbase.kde.org/KDE_System_Administration/Environment_Variables#Troubleshooting_and_Debugging"
>Troubleshooting and Debugging</ulink
> сторінки UserBase &kde;, де наведено приклади параметрів налаштовування), але ці параметри можна встановити у інший спосіб користувачем у скриптах налаштовування наявного профілю.</para>

<para
>Ви можете вимкнути драйвер встановленням для цього параметра значення <replaceable
>false</replaceable
> і та вимиканням параметра <link linkend="conf-install-session-driver"
>install-session-driver</link
>.</para>

<tip
><para
>&kdesrc-build; не перезаписуватиме вже створених файлів (якщо такі існують), якщо ви не передасте програмі параметр командного рядка <option
><link linkend="cmdline-delete-my-settings"
>--delete-my-settings</link
></option
>.</para
></tip>
<para
>Пов'язані параметри командного рядка: --install-environment-driver, --no-install-environment-driver</para>
</entry>
</row>

<row id="conf-install-session-driver">
<entry
><link linkend="conf-install-session-driver"
>install-session-driver</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Булеве</member>
<member
>Типове значення</member
><member
>True</member>
<member
>Доступний з версії</member
><member
>1.16</member>
</simplelist>
<para
>Якщо увімкнено, &kdesrc-build; намагається встановити драйвер до графічної програми для керування сеансами для того, щоб уможливити ваш вхід до зібраного за допомогою &kdesrc-build; стільничного середовища &kde;.</para>

<para
>Цим драйвером буде внесено зміни до таких файлів:</para>

<itemizedlist>
<listitem
><para
><filename
>~/.xsession</filename
></para
></listitem>
<listitem
><para
><filename
>$XDG_CONFIG_HOME/kde-env-master.sh</filename
> (зазвичай зберігається за адресою <filename
>~/.config/kde-env-master.sh</filename
>).</para
></listitem>
<listitem
><para
><filename
>$XDG_CONFIG_HOME/kde-env-user.sh</filename
> (зазвичай зберігається за адресою <filename
>~/.config/kde-env-user.sh</filename
>).</para
></listitem>
</itemizedlist>

<para
>Якщо ви користуєтеся власним драйвером для входу до середовища, ви можете вимкнути драйвер встановленням для цього параметра значення <replaceable
>false</replaceable
>. Якщо її увімкнено, ця можливість також вмикає можливість <link linkend="conf-install-environment-driver"
>install-environment-driver</link
>.</para>

<tip
><para
>&kdesrc-build; не перезаписуватиме вже створених файлів (якщо такі існують), якщо ви не передасте програмі параметр командного рядка <option
><link linkend="cmdline-delete-my-settings"
>--delete-my-settings</link
></option
>.</para
></tip>
<para
>Пов'язані параметри командного рядка: --install-session-driver, --no-install-session-driver</para>
</entry>
</row>

<row id="conf-niceness">
<entry
><link linkend="conf-niceness"
>niceness</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Ціле</member>
<member
>Типове значення</member
><member
>10</member>
</simplelist>
<para
>Значенням цього параметра є ціле число у діапазоні від 20 до 0. Чим вищим буде це число, тим нижчим встановлюватиметься пріоритет процесу &kdesrc-build;, тобто, чим вищим є число, тим вищим є «пріоритет» програми.</para>
<para
>Пов'язаний параметр командного рядка: <xref linkend="cmdline-nice"/></para>
</entry>
</row>

<row id="conf-num-cores">
<entry
><link linkend="conf-num-cores"
>num-cores</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Ціле</member>
<member
>Типове значення</member
><member
>Залежить від системи</member>
<member
>Доступний з версії</member
><member
>20.07</member>
</simplelist>
<para
>Цей параметр визначається &kdesrc-build; (при використанні <command
>kdesrc-build --generate-config</command
>). Його значенням є кількість доступних процесорів (яку буде встановлено за допомогою зовнішньої програми <application
>nproc</application
>). Якщо &kdesrc-build; не вдасться визначити кількість процесорів, для цього параметра буде встановлено значення 4.</para>

<para
>Див. <xref linkend="make-options-example"/>, де наведено приклад використання цього параметра.</para>
<para
>Пов'язаний параметр командного рядка: --num-cores <replaceable
>значення</replaceable
></para>
</entry>
</row>

<row id="conf-num-cores-low-mem">
<entry
><link linkend="conf-num-cores-low-mem"
>num-cores-low-mem</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Ціле</member>
<member
>Типове значення</member
><member
>Залежить від системи</member>
<member
>Доступний з версії</member
><member
>20.07</member>
</simplelist>
<para
>Цей параметр визначається &kdesrc-build; (при використанні <command
>kdesrc-build --generate-config</command
>). Його значенням кількість процесорів, яку безпечно використовувати для великих або інтенсивних з точки зору обробки модулів, зокрема <literal
>qtwebengine</literal
>, щоб уникнути надмірного споживання пам'яті під час збирання.</para>

<para
>Типовою формулою є одне ядро процесора на кожні 2 гігабайти (ГіБ) загальної пам'яті. Буде визначено принаймні 1 ядро і не більше, ніж <option
><link linkend="conf-num-cores"
>num-cores</link
></option
> ядер.</para>

<para
>Хоча цей параметр було реалізовано для підтримки модулів &Qt;, ви можете скористатися ним для будь-якого модуля у той самий спосіб, у який використовується <option
>num-cores</option
>.</para>

<para
>Якщо &kdesrc-build; не може визначити доступний обсяг пам'яті, для цього параметра буде встановлено значення 2.</para>

<para
>Пов'язаний параметр командного рядка: --num-cores-low-mem <replaceable
>значення</replaceable
></para>
</entry>
</row>

<row id="conf-persistent-data-file">
<entry
><link linkend="conf-persistent-data-file"
>persistent-data-file</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Рядок</member>
<member
>Доступний з версії</member
><member
>1.15</member>
</simplelist>
<para
>За допомогою цього параметра можна змінити місце, у якому зберігатимуться постійні дані &kdesrc-build;. Типово, ці дані зберігатимуться у файлі з назвою <filename
>.kdesrc-build-data</filename
>, який зберігатимуться у тому самому каталозі, що і файл налаштувань, який використовує програма. Якщо використано загальний файл налаштувань, його буде збережено до <filename
>~/.local/state/kdesrc-build-data</filename
> (<filename
>$XDG_STATE_HOME/kdesrc-build-data</filename
>, якщо встановлено значення <envar
>$XDG_STATE_HOME</envar
>). Якщо ви користуєтеся декількома наборами налаштувань, вам варто встановити значення цього параметра вручну, щоб різні набори налаштувань не призводили до конфлікту між наборами постійних даних. </para>
<para
>Пов'язаний параметр командного рядка: --persistent-data-file <replaceable
>файл</replaceable
></para>
</entry>
</row>

<row id="conf-ssh-identity-file">
<entry
><link linkend="conf-ssh-identity-file"
>ssh-identity-file</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Рядок</member>
<member
>Доступний з версії</member
><member
>1.14.2</member>
</simplelist>
<para
>Встановіть значення цього параметра, якщо потрібно вказати, який саме файл ключа SSH слід передати програмі <command
>ssh-add</command
> під час отримання за допомогою &kdesrc-build; коду зі сховищ, для доступу до яких потрібно пройти розпізнавання. Також варто ознайомитися з розділом <xref linkend="ssh-agent-reminder"/>.</para>
</entry>
</row>

<row id="conf-use-idle-io-priority">
<entry
><link linkend="conf-use-idle-io-priority"
>use-idle-io-priority</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Булеве</member>
<member
>Типове значення</member
><member
>False</member>
<member
>Доступний з версії</member
><member
>1.12</member>
</simplelist>
<para
>Вжити зменшення пріоритетності використання скриптом диска та інших інструментів вводу-виводу, це може значно покращити швидкодію решти системи під час роботи скрипту за рахунок збільшення часу роботи &kdesrc-build;.</para>
<para
>Пов'язані параметри командного рядка: --use-idle-io-priority, --no-use-idle-io-priority</para>
</entry>
</row>

<row id="conf-use-inactive-modules">
<entry
><link linkend="conf-use-inactive-modules"
>use-inactive-modules</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Булеве</member>
<member
>Типове значення</member
><member
>False</member>
</simplelist>
<para
>Дозволити kdesrc-build також клонувати і отримувати дані зі сховищ, які позначено як неактивні.</para>
<para
>Пов'язані параметри командного рядка: --use-inactive-modules, --no-use-inactive-modules</para>
</entry>
</row>

</tbody>
</tgroup>
</table>

<!-- Between tables -->

<table id="option-table">
<title
>Параметри усіх областей (модуля, набору модулів та загальні)</title>
<tgroup cols="2">

<thead>
<row>
<entry
>Назва параметра</entry>
<entry
>Опис</entry>
</row>
</thead>

<tbody>

<row id="conf-binpath">
<entry
><link linkend="conf-binpath"
>binpath</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Рядок</member>
</simplelist>
<para
>Встановіть для цього параметра значення, щоб визначити значення змінної середовища PATH на час збирання. Ви не зможете перевизначити значення цього параметра для окремого модуля. Типовим значенням параметра є $<envar
>PATH</envar
>, змінна, значення якої встановлюється під час запуску. Значенням цієї змінної середовища має бути відокремлений двокрапками список шляхів до ваших каталогів для збирання. Шляхи <filename class="directory"
>${install-dir}/bin</filename
> і <filename class="directory"
>${qt-install-dir}/bin</filename
> буде додано автоматично. Ви можете додати тильду (~) для всіх шляхів, які ви додаєте за допомогою цього параметра.</para>
<para
>Пов'язаний параметр командного рядка: --binpath <replaceable
>шлях</replaceable
></para>
</entry>
</row>

<row id="conf-branch">
<entry
><link linkend="conf-branch"
>branch</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Рядок</member>
<member
>Типове значення</member
><member
>master</member>
</simplelist>
<para
>Отримати дані з вказаної гілки, а не типової гілки.</para>
<note
><para
>Для більшості модулів &kde;, ймовірно, варто користуватися замість цього параметра параметром <link linkend="conf-branch-group"
>branch-group</link
>, а цей параметр використовувати лише для створення виключень з правил.</para
></note>
<para
>Пов'язаний параметр командного рядка: --branch <replaceable
>значення</replaceable
></para>
</entry>
</row>

<row id="conf-branch-group">
<entry
><link linkend="conf-branch-group"
>branch-group</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Рядок</member>
<member
>Доступний з версії</member
><member
>1.16-pre2</member>
</simplelist>
<para
>Для цього параметра слід встановити значення загальної групи, з якої слід вибирати модулі.</para>

<para
>Для підтримуваних типів модулів &git; &kdesrc-build; визначити справжню гілку, яку слід автоматично використовувати на основі створених розробниками &kde; правил (ці правила можна переглянути у підкаталозі <literal
>kde-build-metadata</literal
> каталогу початкового коду &kdesrc-build;). Після визначення гілки цю гілку буде використано так, наче ви вказали усі гілки власноруч за допомогою параметра <link linkend="conf-branch"
>branch</link
>. </para>

<para
>Цей параметр корисний, якщо ви просто хочете підтримувати актуальність певної гілки розробки, не бажаючи приділяти надмірну увагу усім змінам у назвах гілок.</para>

<para
>Зауважте, що якщо ви <emphasis
>виберете</emphasis
> значення <literal
>branch</literal
> власноруч, воно матиме вищий пріоритет за значення цього параметра. Те саме стосується і інших параметрів вибору гілки для окремого пакунка, зокрема параметра <link linkend="conf-tag"
>tag</link
>.</para>

<note
><para
>Цим параметром можна скористатися (у типовому випадку) лише для модулів &git; <literal
>kde-projects</literal
>. Див. також <xref linkend="kde-projects-module-sets"/>. </para
></note>

<para
>Пов'язаний параметр командного рядка: --branch-group <replaceable
>значення</replaceable
></para>
</entry>
</row>

<row id="conf-build-dir">
<entry
><link linkend="conf-build-dir"
>build-dir</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Рядок</member>
<member
>Типове значення</member
><member
><filename class="directory"
>~/kde/build</filename
></member>
</simplelist>
<para
>Скористайтеся цим параметром, щоб змінити каталог, у якому зберігатиметься програмний код для збирання. Передбачено три різних способи його використання:</para>

<orderedlist>

<listitem
><para
>Відносний щодо каталогу початкових кодів &kde; &git; (див. <link linkend="conf-source-dir"
>параметр source-dir</link
>). Це типове значення, його буде вибрано, якщо ви вкажете назву каталогу, яка не починається з тильди (~) або символу похилої риски (/).</para
></listitem>

<listitem
><para
>Абсолютний шлях. Якщо ви вкажете шлях, який починається з /, цей шлях буде використано безпосередньо. Приклад: <filename class="directory"
>/tmp/kde-obj-dir/</filename
>.</para
></listitem>

<listitem
><para
>Відносний щодо вашого домашнього каталогу. Якщо ви вкажете шлях, який починається з a ~, шлях вважатиметься відносним щодо вашого домашнього каталогу, подібно до розгортання тильди у командній оболонці. Наприклад, <filename class="directory"
>~/builddir</filename
> вказуватиме каталог збирання <filename class="directory"
>/home/ім'я_користувача/builddir</filename
>.</para
></listitem>

</orderedlist>

<para
>Можливо, несподівано, але цей параметр можна змінювати для окремих модулів.</para>
<para
>Пов'язаний параметр командного рядка: --build-dir <replaceable
>шлях</replaceable
></para>
</entry>
</row>

<row id="conf-build-when-unchanged">
<entry
><link linkend="conf-build-when-unchanged"
>build-when-unchanged</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Булеве</member>
<member
>Типове значення</member
><member
>True</member>
</simplelist>
<para
>Керувати тим, чи буде &kdesrc-build; завжди намагатися зібрати модуль, у якому не було оновлення початкових кодів.</para>

<para
>Якщо встановлено значення <userinput
>true</userinput
>, &kdesrc-build; завжди виконуватиме збирання модуля, навіть якщо ніякого оновлення коду модуля не відбулося. Із цим значенням ймовірність належних результатів збирання буде вищою.</para>

<para
>Якщо встановлено значення <userinput
>false</userinput
>, &kdesrc-build; виконуватиме спроби збирання модуля, лише якщо у коді модуля відбулися зміни, або у інших випадках, коли повторне збирання є насправді необхідним. Подібна поведінка може зекономити вам час, особливо якщо ви запускаєте &kdesrc-build; щоденно або навіть частіше.</para>

<important
><para
>Цей параметр призначено лише для оптимізації збирання. Подібно до значної частини оптимізацій, його використання може позначитися на коректності збирання. Наприклад, зміни, внесені до модулів qt або kdelibs, можуть призвести до необхідності повторного збирання інших модулів, навіть якщо їх початкові коди не зазнали змін взагалі.</para
></important>
<para
>Пов'язаний параметр командного рядка: <xref linkend="cmdline-build-when-unchanged"/></para>
</entry>
</row>

<row id="conf-cmake-generator">
<entry
><link linkend="conf-cmake-generator"
>cmake-generator</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Рядок</member>
<member
>Типове значення</member
><member
>Makefile Unix</member>
</simplelist>
<para
>За допомогою цього параметра можна визначити, який засіб створення даних буде використано у поєднанні із &cmake;. У поточній версії передбачено підтримку як <literal
>Ninja</literal
>, так і <literal
>файлів Make Unix</literal
>, а також додаткових генераторів на їхній основі, зокрема <literal
>Eclipse CDT4 - Ninja</literal
>. Некоректні (непідтримувані) значення буде проігноровано — значення вважатиметься невстановленим. </para>

<para
>Зауважте, що якщо коректний засіб обробки також вказано за допомогою <link linkend="conf-cmake-options"
>cmake-options</link
>, він матиме пріоритет над цим значенням для <literal
>cmake-generator</literal
>.</para>
<para
>Пов'язаний параметр командного рядка: --cmake-generator <replaceable
>значення</replaceable
></para>
</entry>
</row>

<row id="conf-cmake-toolchain">
<entry
><link linkend="conf-cmake-toolchain"
>cmake-toolchain</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Рядок</member>
</simplelist>
<para
>Вказати файл набору інструментів, яким слід скористатися у &cmake;. </para>
<para
>Якщо налаштовано коректний набір інструментів, &kdesrc-build; <emphasis
>не встановлюватиме змінні середовища автоматично</emphasis
>. Для виправлення середовища вручну ви можете скористатися &set-env;, &binpath; та &libpath;, якщо файл набору інструментів не працює у &kdesrc-build; без вашого втручання. Щоб дізнатися про це більше, зверніться до <link linkend="kdesrc-build-std-flags"
>огляду стандартних прапорців, які додаються &kdesrc-build;</link
>. </para>
<para
>Зауважте, що якщо коректний набір інструментів також вказано за допомогою <link linkend="conf-cmake-options"
>cmake-options</link
>, він матиме пріоритет над цим значенням для <literal
>cmake-toolchain</literal
>.</para>
<para
>Пов'язаний параметр командного рядка: --cmake-toolchain <replaceable
>значення</replaceable
></para>
</entry>
</row>

<row id="conf-cmake-options">
<entry
><link linkend="conf-cmake-options"
>cmake-options</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Рядок</member>
</simplelist>
<para
>Дописує дані до загальних параметрів для типової системи збирання і перевизначає загальні параметри для інших систем збирання.</para>
<para
>Скористайтеся цим параметром для того, щоб визначити, які параметри слід передати &cmake; під час створення системи збирання модуля. Якщо цей параметр використано як загальний, його буде застосовано до всіх модулів, які збирає цей скрипт. Якщо параметр визначено на рівні модуля, його буде додано в кінець загальний параметрів. За допомогою цього параметра можна вказати загальні параметри &cmake; у загальному розділі (global).</para>

<para
>Значення цього параметра не стосується qt (&cmake; там не використовується). Скористайтеся для збирання qt <link linkend="conf-configure-flags"
>configure-flags</link
>.</para>

<para
>Якщо серед параметрів цього списку буде вказано коректний засіб створення даних, він матиме пріоритет над значенням <link linkend="conf-cmake-generator"
>cmake-generator</link
>. Некоректні (або непідтримувані) значення запису засобу створення даних буде проігноровано — їх не буде передано &cmake;. </para>

<para
>Якщо серед параметрів цього списку буде вказано коректний файл набору інструментів, він матиме пріоритет над значенням <link linkend="conf-cmake-toolchain"
>cmake-toolchain</link
>. Некоректні (або непідтримувані) значення запису набору інструментів буде проігноровано — їх не буде передано &cmake;. </para>

<para
>Оскільки ці параметри передаються безпосередньо до командного рядка &cmake;, їх слід вказувати у тому самому вигляді, у якому їх буде передано &cmake;. Приклад:</para>

<programlisting
>cmake-options -DCMAKE_BUILD_TYPE=RelWithDebInfo
</programlisting>

<para
>Оскільки встановлення цього параметра потребує певних знань, якщо всі інші параметри &kdesrc-build; вказано правильно, ви можете просто залишити значення цього параметра порожнім. (Іншими словами, <emphasis
>потрібні</emphasis
> параметри &cmake; буде встановлено автоматично)</para>
<para
>Пов'язаний параметр командного рядка: --cmake-options <replaceable
>значення</replaceable
></para>
</entry>
</row>

<row id="conf-compile-commands-export">
<entry
><link linkend="conf-compile-commands-export"
>compile-commands-export</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Булеве</member>
<member
>Типове значення</member
><member
>True</member>
</simplelist>
<para
>Вмикає створення <literal
>compile_commands.json</literal
> у каталозі збирання за допомогою CMake. </para>
<para
>Пов'язані параметри командного рядка: --compile-commands-export, --no-compile-commands-export</para>
</entry>
</row>

<row id="conf-compile-commands-linking">
<entry
><link linkend="conf-compile-commands-linking"
>compile-commands-linking</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Булеве</member>
<member
>Типове значення</member
><member
>False</member>
</simplelist>
<para
>Вмикає створення символічних посилань з <literal
>compile_commands.json</literal
>, створеного у каталозі збирання за допомогою, на відповідний каталог початкового коду. </para>
<para
>Пов'язані параметри командного рядка: --compile-commands-linking, --no-compile-commands-linking</para>
</entry>
</row>

<row id="conf-configure-flags">
<entry
><link linkend="conf-configure-flags"
>configure-flags</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Рядок</member>
</simplelist>
<para
>Дописує дані до загальних параметрів для типової системи збирання і перевизначає загальні параметри для інших систем збирання.</para>
<para
>Скористайтеся цим параметром, щоб вказати параметри, які слід передати ./configure під час створення системи збирання модуля. Якщо цей параметр використовується на загальному рівні, його буде застосовано до всіх модулів, які збиратимуться цим скриптом. <emphasis
>Цей параметри потрібен лише для qt-copy.</emphasis
>.</para>

<para
>Щоб змінити параметри налаштування модулів KDE, ознайомтеся з розділом щодо <link linkend="conf-cmake-options"
>cmake-options</link
>. </para>
<para
>Пов'язаний параметр командного рядка: --configure-flags <replaceable
>значення</replaceable
></para>
</entry>
</row>

<row id="conf-custom-build-command">
<entry
><link linkend="conf-custom-build-command"
>custom-build-command</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Рядок</member>
</simplelist>
    <para
>За допомогою цієї команди можна наказати системі виконати іншу команду (відмінну від, наприклад, <command
>make</command
>) з метою збирання. Зазвичай, програма &kdesrc-build; здатна сама вибрати команду для збирання, отже немає потреби у визначенні цього параметра. Втім, він може бути корисним у разі використання альтернативних систем збирання. </para>

    <para
>Значення цього параметра використовується як команда, яку слід виконати. Зміни до команди вносяться за допомогою параметра <link linkend="conf-make-options"
>make-options</link
> у звичайному режимі. </para>
<para
>Пов'язаний параметр командного рядка: --custom-build-command <replaceable
>значення</replaceable
></para>
</entry>
</row>

<row id="conf-cxxflags">
<entry
><link linkend="conf-cxxflags"
>cxxflags</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Рядок</member>
</simplelist>
<para
>Дописує дані до загальних параметрів для типової системи збирання і перевизначає загальні параметри для інших систем збирання.</para>
<para
>Скористайтеся цим параметром, щоб вказати, які параметри слід використовувати для збирання модуля. Цей параметр визначається саме тут, а не у параметрах <link linkend="conf-configure-flags"
>configure-flags</link
> і <link linkend="conf-cmake-options"
>cmake-options</link
>, оскільки цей параметр також встановлює змінну середовища <envar
>CXXFLAGS</envar
> під час процесу збирання.</para>

<para
>Зауважте, що у &kde; 4 і всіх інших модулів, які використовують &cmake;, потрібно встановити значення параметра CMAKE_BUILD_TYPE рівним <userinput
>none</userinput
> під час налаштування модуля. Зробити це можна за допомогою параметра <link linkend="conf-cmake-options"
>cmake-options</link
>. </para>
<para
>Пов'язаний параметр командного рядка: --cxxflags <replaceable
>значення</replaceable
></para>
</entry>
</row>

<row id="conf-dest-dir">
<entry
><link linkend="conf-dest-dir"
>dest-dir</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Рядок</member>
</simplelist>
<para
>Скористайтеся цим параметром, щоб змінити назву, яку буде дано модулю на диску. Наприклад, якщо вам потрібен модуль extragear/network, за допомогою цього параметра ви можете перейменувати його на extragear-network. Зауважте, що не варто включати до назви модуля каталоги роздільники каталогів, оскільки такі назви можуть призвести до конфлікту з одним з параметрів <link linkend="conf-build-dir"
>build-dir</link
> або <link linkend="conf-source-dir"
>source-dir</link
>.</para>
<para
>Пов'язаний параметр командного рядка: --dest-dir <replaceable
>шлях</replaceable
></para>
</entry>
</row>

<row id="conf-do-not-compile">
<entry
><link linkend="conf-do-not-compile"
>do-not-compile</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Рядок</member>
</simplelist>
<para
>Скористайтеся цим параметром, щоб вибрати певний набір каталогів, які не буде зібрано у модулі (замість збирання всіх каталогів). Відокремлювати каталоги у списку слід за допомогою пробілів.</para>

<para
>Зауважте, що вихідні коди програм все ж буде отримано.</para>

<para
>Наприклад, щоб вимкнути збирання у каталогах <literal
>codeeditor</literal
> і <literal
>minimaltest</literal
> бібліотеки <literal
>syntaxhighlighting</literal
>, вам слід додати компіляцію <userinput
>do-not-compile codeeditor minimaltest</userinput
>, вам слід додати «do-not-compile juk kscd» до ваших параметрів syntaxhighlighting.</para>

<para
>Приклад можна знайти у розділі <xref linkend="not-compiling"/>.</para>
<para
>Пов'язаний параметр командного рядка: --do-not-compile <replaceable
>значення</replaceable
></para>
</entry>
</row>

<row id="conf-git-user">
<entry
><link linkend="conf-git-user"
>git-user</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Рядок</member>
<member
>Доступний з версії</member
><member
>15.09</member>
</simplelist>
<para
>Цей параметр призначено для розробників &kde;. Якщо його встановлено, значення буде використано для автоматичного налаштовування даних профілю системи керування версіями &git; для <emphasis
>нових отриманих</emphasis
> модулів &git; (більшості модулів &kde;).</para>

<para
>Зокрема, вказаними за допомогою цього параметра значеннями буде заповнено поля імені користувача та адреси електронної пошти для кожного нового сховища &git;.</para>

<para
>Значення має бути вказано у форматі <option
><replaceable
>Ім’я користувача</replaceable
> &lt;<replaceable
>адреса@електронної.пошти</replaceable
>&gt;</option
>.</para>

<para
>Наприклад, якщо розробника звати «Bozna Khto», а адресою є «bozna@abc.xyz», слід вказати таке:</para>
<para>
<programlisting
><symbol
>git-user</symbol
> <replaceable
>Bozna Khto</replaceable
> &lt;<replaceable
>bozna@abc.xyz</replaceable
>&gt;
</programlisting>
</para>

</entry>
</row>

<row id="conf-http-proxy">
<entry
><link linkend="conf-http-proxy"
>http-proxy</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Рядок</member>
<member
>Доступний з версії</member
><member
>1.16</member>
</simplelist>
<para
>Цей параметр, якщо його встановлено, використовується для визначення адреси проксі-сервера, яким слід користуватися для обміну даними у мережі за допомогою HTTP (наприклад під час отримання <link linkend="kde-projects-module-sets"
>бази даних проєктів KDE</link
>).</para>

<para
>Крім того, &kdesrc-build; намагатиметься використати проксі-сервер для роботи інших програм, від дій яких залежить працездатність програми. Отже, для змінної середовища <envar
>http_proxy</envar
> буде встановлене значення позначеного сервера, <emphasis
>якщо для цієї змінної ще не встановлено жодного значення</emphasis
>.</para>
<para
>Пов'язаний параметр командного рядка: --http-proxy <replaceable
>значення</replaceable
></para>
</entry>
</row>

<row id="conf-directory-layout">
<entry
><link linkend="conf-directory-layout"
>directory-layout</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Рядок</member>
<member
>Коректні значення</member
><member
><userinput
>flat</userinput
>, <userinput
>invent</userinput
>, <userinput
>metadata</userinput
></member>
<member
>Типове значення</member
><member
>flat</member>
</simplelist>
<para
>За допомогою цього параметра можна налаштувати компонування, яким &kdesrc-build; користуватиметься при створенні каталогів із початковим кодом та каталогів для збирання.</para>
<para
>Якщо буде використано компонування <userinput
>flat</userinput
>, програма згрупує усі модулі безпосередньо у каталогах початкового коду та збирання. Наприклад, <literal
>source/extragear/network/telepathy/ktp-text-ui</literal
> у компонуванні <userinput
>metadata</userinput
> буде просто <literal
>source/ktp-text-ui</literal
>, якщо ви скористаєтеся замість нього компонуванням <userinput
>flat</userinput
>. </para>
<para
>Якщо буде використано компонування <userinput
>invent</userinput
>, програма створить ієрархію каталогів, яка точно збігатиметься із відносними шляхами сховищ на <ulink url="https://invent.kde.org/"
>invent.kde.org</ulink
>. Наприклад, <literal
>source/kde/applications/kate</literal
> у компонуванні <userinput
>metadata</userinput
> буде <literal
>source/utilities/kate</literal
>, якщо ви скористаєтеся замість нього компонуванням <userinput
>invent</userinput
>. Це компонування стосується лише проєктів KDE. Це непоганий варіант для тих, хто лише розпочинає роботу з &kdesrc-build;. </para>
<para
>Нарешті, компонування <userinput
>metadata</userinput
> відтворює типову поведінку попередніх версій програми. У цьому компонуванні проєкти KDE упорядковуються відповідно до шляхів проєктів, які вказано у метаданих проєктів для цих модулів. Це непоганий варіант, якщо вам потрібне компонування каталогів, яке відтворюватиме певні процеси розробки KDE. Це, втім, означатиме, що відповідні шляхи не лишатимуться сталими. У результаті цього, &kdesrc-build; може «забути» про стару копію сховища і клонувати сховище для проєкту знову через зміни у метаданих проєкту.</para>
<para
>Пов'язаний параметр командного рядка: --directory-layout <replaceable
>значення</replaceable
></para>
</entry>
</row>

<row id="conf-generate-vscode-project-config">
<entry
><link linkend="conf-generate-vscode-project-config"
>generate-vscode-project-config</link
></entry>

<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Булеве</member>
<member
>Типове значення</member
><member
>False</member>
</simplelist>

<para
>Параметр модуля перевизначає загальний параметр</para>

<para
>Встановіть для цього параметра значення <userinput
>true</userinput
>, щоб наказати &kdesrc-build; створити файли проєкту VS Code (каталог .vscode directory) у каталозі початкового коду модуля.</para>

<para
>У каталозі початкового коду проєкту буде створено теку .vscode, лише якщо її ще не існувало. У налаштуваннях буде уможливлено користування LSP, збирання, діагностику та запуск проєкту з VS Code.</para>

<para
>У налаштуваннях також рекомендовано розширення, які варто встановити для роботи з більшістю проєктів KDE.</para>

<para
>Пов'язаний параметр командного рядка: <xref linkend="cmdline-generate-vscode-project-config"/></para>
</entry>
</row>

<row id="conf-include-dependencies">
<entry
><link linkend="conf-include-dependencies"
>include-dependencies</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Булеве</member>
<member
>Типове значення</member
><member
>True</member>
</simplelist>
<para
>Керує тим, чи слід &kdesrc-build; включити відомі залежності модуля до його налаштувань збирання, без потреби у явному визначенні цих залежностей (навіть опосередковано).</para>

<note
><para
>Цей параметр працюватиме лише для <link linkend="kde-projects-module-sets"
>модулів на основі <literal
>kde-project</literal
></link
> і потребує від розробників &kde; точного визначення метаданих для вибраної вами <link linkend="conf-branch-group"
>групи гілок</link
>.</para
></note>

<para
>Для забезпечення підтримки збирання програм, які потребують версій &Qt; або Плазми, які є новішими за ті, підтримку яких передбачено у типових операційних системах.</para>
<para
>Пов'язаний параметр командного рядка: <xref linkend="cmdline-include-dependencies"/></para>
</entry>
</row>

<row id="conf-install-after-build">
<entry
><link linkend="conf-install-after-build"
>install-after-build</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Рядок</member>
<member
>Типове значення</member
><member
>True</member>
</simplelist>
<para
>Цей параметр використовується для встановлення пакунка після його успішного збирання. Крім того, ви можете скористатися параметром командного рядка <link linkend="cmdline-no-install"
><option
>--no-install</option
></link
>.</para>
<para
>Пов'язані параметри командного рядка: --install-after-build, --no-install-after-build</para>
</entry>
</row>

<row id="conf-install-dir">
<entry
><link linkend="conf-install-dir"
>install-dir</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Рядок</member>
<member
>Типове значення</member
><member
><filename class="directory"
>~/kde/usr</filename
></member>
</simplelist>
<para
>За допомогою цього параметра можна визначити каталог, до якого буде встановлено модуль після збирання. Якщо ви зміните значення так, що воно вказуватиме на каталог, для доступу до якого потрібні права користувача root, ймовірно, вам слід прочитати і про параметр <link linkend="conf-make-install-prefix"
>make-install-prefix</link
>.</para>
<para
>Зміна значення цього параметра для певного модуля надає вам змогу встановити модуль у каталог, що не збігається з каталогом бібліотек Платформи &kde;, якщо ви, наприклад, використовуєте &kdesrc-build; лише для збирання певних програм.</para>
<para
>Ви можете замінити назву модуля у шляхах за допомогою синтаксичної конструкції <varname
>${MODULE}</varname
> або <varname
>$MODULE</varname
>.</para>
<para
>Пов'язаний параметр командного рядка: <xref linkend="cmdline-install-dir"/></para>
</entry>
</row>

<row id="conf-libname">
<entry
><link linkend="conf-libname"
>libname</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Рядок</member>
<member
>Типове значення</member
><member
>Автовиявлення</member>
</simplelist>
<para
>Встановіть значення цього параметра, щоб змінити типову назву каталогу встановлених бібліотек у ${install-dir} і ${qt-install-dir}. У багатьох системах це або «lib», або «lib64». Типово, буде виконано спробу автоматичного визначення належної назви, але якщо програма визначає помилкову назву, її можна змінити за допомогою цього параметра.</para>
<para
>Пов'язаний параметр командного рядка: --libname <replaceable
>значення</replaceable
></para>
</entry>
</row>

<row id="conf-libpath">
<entry
><link linkend="conf-libpath"
>libpath</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Рядок</member>
</simplelist>
<para
>Встановіть значення для цього параметра значення, щоб змінити значення змінної середовища <envar
>LD_LIBRARY_PATH</envar
> на час збирання. Ви не зможете перевизначити цей параметр на рівні модулів. Типовим є порожнє значення, але шляхи <filename class="directory"
>${install-dir}/$<envar
>LIBNAME</envar
></filename
> і <filename class="directory"
>${qt-install-dir}/$<envar
>LIBNAME</envar
></filename
> буде додано автоматично. Ви можете скористатися тильдою (~) у будь-якому зі шляхів, які ви додасте за допомогою цього параметра.</para>
<para
>Пов'язаний параметр командного рядка: --libpath <replaceable
>шлях</replaceable
></para>
</entry>
</row>

<row id="conf-log-dir">
<entry
><link linkend="conf-log-dir"
>log-dir</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Рядок</member>
</simplelist>
<para
>Скористайтеся цим параметром, щоб змінити каталог, у якому зберігатимуться файли журналу, створені скриптом.</para>
<para
>Пов'язаний параметр командного рядка: --log-dir <replaceable
>шлях</replaceable
></para>
</entry>
</row>

<row id="conf-make-install-prefix">
<entry
><link linkend="conf-make-install-prefix"
>make-install-prefix</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Рядок</member>
</simplelist>
<para
>Встановіть для цієї змінної значення відокремленого пробілами списку, який скрипт вважатиме командою і її параметрами, які передують команді <userinput
><command
>make</command
> <option
>install</option
></userinput
>, призначеній для встановлення модулів. Наприклад, цей параметр буде корисним для встановлення пакунків за допомогою &sudo;, але, будь ласка, будьте обережними з використанням прав доступу адміністративного користувача.</para>
<para
>Пов'язаний параметр командного рядка: --make-install-prefix <replaceable
>значення</replaceable
></para>
</entry>
</row>

<row id="conf-make-options">
<entry
><link linkend="conf-make-options"
>make-options</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Рядок</member>
</simplelist>
<para
>Встановіть значення для цієї змінної, щоб передати параметри командного рядка команді <command
>make</command
>. Подібні параметри будуть корисним для програм на зразок <ulink url="https://github.com/distcc/distcc"
><application
>distcc</application
></ulink
> або у системах з декількома процесорними ядрами.</para>
<para
>Зауважте, що <command
>make</command
> використовується не в усіх системах збирання. Якщо для збирання використовується <command
>ninja</command
> (так, зокрема, побудовано <link linkend="conf-override-build-system"
>систему збирання <application
>Meson</application
></link
>), скористайтеся параметром <link linkend="conf-ninja-options"
>ninja-options</link
>.</para>
<para
>Пов'язаний параметр командного рядка: --make-options <replaceable
>значення</replaceable
></para>
</entry>
</row>

<row id="conf-manual-build">
<entry
><link linkend="conf-manual-build"
>manual-build</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Булеве</member>
<member
>Типове значення</member
><member
>False</member>
</simplelist>
<para
>Встановіть для цього параметра значення <userinput
>true</userinput
>, щоб під час процесу збирання скрипт не намагався зібрати цей модуль. Модуль все ж буде оновлено під час оновлення зі сховища &git;. Цей параметр у точності збігається з параметром командного рядка <link linkend="cmdline-no-build"
><option
>--no-build</option
></link
>. </para>
</entry>
</row>

<row id="conf-manual-update">
<entry
><link linkend="conf-manual-update"
>manual-update</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Булеве</member>
<member
>Типове значення</member
><member
>False</member>
</simplelist>
<para
>Встановіть для цього параметра значення <userinput
>true</userinput
>, щоб процес збирання не намагався оновити (і отже зібрати і встановити) цей модуль. Якщо ви встановите цей параметр для певного модуля, вам варто закоментувати його.</para>
</entry>
</row>

<row id="conf-ninja-options">
<entry
><link linkend="conf-ninja-options"
>ninja-options</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Рядок</member>
</simplelist>
<para
>Встановіть значення для цієї змінної, щоб передати параметри командного рядка для команди збирання <command
>ninja</command
>. За допомогою цього значення можна увімкнути «докладний» режим виведення даних або вручну зменшити кількість паралельних завдань зі збирання для <command
>ninja</command
>.</para>

<note
><para
>Зауважте, що значення цього параметра використовується для керування ninja лише у &kdesrc-build;. Модуль <quote
>webengine</quote
> &Qt; використовує <command
>ninja</command
> опосередковано, а офіційно збирається лише за допомогою <command
>make</command
>. У таких випадках ви можете, скориставшись <link linkend="conf-make-options"
>make-options</link
>, встановити значення змінної <literal
>NINJAFLAGS</literal
>, щоб <command
>make</command
> передала відповідні прапорці під час наступного виклику <command
>ninja</command
>.</para>

<programlisting
>options <replaceable
>qtwebengine</replaceable>
    # Обмежуємо make і ninja використання не більше 6 окремих завдань зі збирання,
    # навіть якщо доступними є багато процесорів, щоб уникнути вичерпання пам'яті
    <option
><link linkend="conf-make-options"
>make-options</link
></option
> -j<replaceable
>6</replaceable
> NINJAFLAGS=-j<replaceable
>6</replaceable>
end options
</programlisting>
</note>
<para
>Пов'язаний параметр командного рядка: --ninja-options <replaceable
>значення</replaceable
></para>
</entry>
</row>

<row id="conf-override-build-system">
<entry
><link linkend="conf-override-build-system"
>override-build-system</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Рядок</member>
<member
>Типове значення</member
><member
>Автовиявлення</member>
<member
>Коректні значення</member
><member
>KDE, Qt, qmake, generic, autotools, meson</member>
<member
>Доступний з версії</member
><member
>1.16</member>
</simplelist>
<para
>Зазвичай, &kdesrc-build; автоматично визначає систему збирання, яку слід використати для модуля, після отримання його коду. Визначення виконується за допомогою пошуку специфічних файлів у каталозі з кодами модуля.</para>

<para
>Деякі модулі можуть містити більше за один набір файлів, що може призвести до помилок під час автоматичного визначення. У таких випадках слід вказати тип системи збирання вручну.</para>

<para
>Серед типів систем збирання, передбачених у поточній версії, слід відзначити такі:</para>

<variablelist>
    <varlistentry>
        <term
>KDE</term>
        <listitem
><para
>Використовується для збирання модулів &kde;. Насправді, можна використовувати для збирання майже будь-яких модулів, де використовується &cmake;, але краще на це не покладатися.</para
></listitem>
    </varlistentry>
    <varlistentry>
        <term
>Qt</term>
        <listitem
><para
>Призначено для збирання самої бібліотеки &Qt;.</para
></listitem>
    </varlistentry>
    <varlistentry>
        <term
>qmake</term>
        <listitem
><para
>Використовується для збирання модулів &Qt;, у яких використано файли <application
>qmake</application
>, <literal
>.pro</literal
>.</para
></listitem>
    </varlistentry>
    <varlistentry>
        <term
>generic</term>
        <listitem
><para
>Використовується для збирання модулів, у яких використовуються звичайні файли Makefile і які не потребують додаткового налаштовування.</para
></listitem>
    </varlistentry>
    <varlistentry>
        <term
>autotools</term>
        <listitem
><para
>Стандартний інструмент налаштування для більшості вільних проєктів з розробки програмного забезпечення з відкритим кодом, які не належать до інших категорій.</para
></listitem>
    </varlistentry>
    <varlistentry>
        <term
>meson</term>
        <listitem
><para
>Це <ulink url="https://mesonbuild.com"
>відносно новий інструмент</ulink
>, який набуває популярності як замінник autotools і який може знадобитися для збирання деяких з модулів, які не є частиною &kde;.</para
></listitem>
    </varlistentry>
</variablelist>

<para
>Пов'язаний параметр командного рядка: --override-build-system <replaceable
>значення</replaceable
></para>
</entry>
</row>

<row id="conf-purge-old-logs">
<entry
><link linkend="conf-purge-old-logs"
>purge-old-logs</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Булеве</member>
<member
>Типове значення</member
><member
>True</member>
</simplelist>
<para
>За допомогою цього параметра можна наказати скрипту автоматично вилучати старі каталоги журналів або не робити цього.</para>
<para
>Пов'язані параметри командного рядка: --purge-old-logs, --no-purge-old-logs</para>
</entry>
</row>

<row id="conf-qmake-options">
<entry
><link linkend="conf-qmake-options"
>qmake-options</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Рядок</member>
<member
>Доступний з версії</member
><member
>1.16</member>
</simplelist>
<para
>Усі вказані тут параметри буде передано програмі <command
>qmake</command
> для модулів, у яких використовується система збирання <symbol
>qmake</symbol
>. Наприклад, ви можете скористатися параметром qmake <userinput
>PREFIX=/шлях/до/qt</userinput
>, для перевизначення місця, куди буде встановлено модуль. </para>
<para
>Пов'язаний параметр командного рядка: --qmake-options <replaceable
>значення</replaceable
></para>
</entry>
</row>

<row id="conf-qt-install-dir">
<entry
><link linkend="conf-qt-install-dir"
>qt-install-dir</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Рядок</member>
</simplelist>
<para
>Цей параметр керує тим, куди буде встановлено модулі qt після збирання. Якщо ви не вкажете значення для параметра, &kdesrc-build; вважатиме, що слід використовувати бібліотеки &Qt; з операційної системи. </para>
<para
>Пов'язаний параметр командного рядка: --qt-install-dir <replaceable
>шлях</replaceable
></para>
</entry>
</row>

<row id="conf-remove-after-install">
<entry
><link linkend="conf-remove-after-install"
>remove-after-install</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Рядок</member>
<member
>Коректні значення</member
><member
>none, builddir, all</member>
<member
>Типове значення</member
><member
>none</member>
</simplelist>
<para
>Якщо на жорсткому диску вашого комп’ютера мало місця, ймовірно, вам слід скористатися цим параметром для того, щоб автоматично вилучити каталог збирання (або одночасно каталоги кодів зі збирання для одноразового встановлення) після того, як модуль буде успішно встановлено. </para>
<para
>Можливими значення цього параметра є: <itemizedlist>
<listitem
><para
>none — Нічого не вилучати.</para
></listitem>
<listitem
><para
>builddir — Вилучити каталог збирання, але не початкових кодів.</para
></listitem>
<listitem
><para
>all — Вилучити каталоги початкових кодів і збирання.</para
></listitem>
</itemizedlist>
</para>

<para
>Зауважте, що використання цього параметра призведе до збільшення використання вашого каналу з’єднання (якщо ви використовуєте <replaceable
>all</replaceable
>) і часу, який буде використано для збирання програмного забезпечення &kde;, оскільки &kdesrc-build; не зможе виконувати покрокове збирання.</para>
<para
>Пов'язаний параметр командного рядка: --remove-after-install <replaceable
>значення</replaceable
></para>
</entry>
</row>

<row id="conf-repository">
<entry
><link linkend="conf-repository"
>repository</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Рядок</member>
<member
>Доступний з версії</member
><member
>1.10</member>
</simplelist>
<para
>За допомогою цього параметра можна вказати сховище &git;, звідки слід отримувати коди модуля. Цей параметр потрібен для &Qt; (і отже qt), а також різноманітних модулів &kde;, які перебувають у стані переходу на використання &git;.</para
></entry>
</row>

<row id="conf-revision">
<entry
><link linkend="conf-revision"
>revision</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Рядок</member>
<member
>Доступний з версії</member
><member
>1.16</member>
</simplelist>
<para
>Якщо встановити для цього параметра значення, відмінне від 0 (нуля), &kdesrc-build; примусово виконає оновлення початкового коду до точно вказаної версії модуля, навіть якщо діють параметри на зразок <link linkend="conf-branch"
>branch</link
>. Якщо ви вже маєте модуль вказаної версії, його не буде оновлено до того часу, доки цей параметр налаштування не буде змінено або вилучено.</para>
<para
>Пов'язаний параметр командного рядка: <xref linkend="cmdline-revision"/></para>
</entry>
</row>

<row id="conf-run-tests">
<entry
><link linkend="conf-run-tests"
>run-tests</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Булеве</member>
<member
>Типове значення</member
><member
>False</member>
</simplelist>
<para
>Якщо значенням цього параметра буде <userinput
>true</userinput
>, модуль буде зібрано з підтримкою запуску комплексу тестів, комплекс тестів буде виконано у процесі збирання. &kdesrc-build; покаже вам спрощений звіт щодо результатів тестування. Цей параметр буде корисним для розробників або тих, хто бажає переконатися, що систему налаштовано належним чином.</para>
<para
>Пов'язані параметри командного рядка: --run-tests, --no-run-tests</para>
</entry>
</row>

<row id="conf-set-env">
<entry
><link linkend="conf-set-env"
>set-env</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Рядок</member>
</simplelist>
<para
>Цей параметр приймає розділений пробілами набір значень, де перше значення є змінною середовища, яку слід встановити, а решта значень вважатиметься значенням змінної. Наприклад, щоб встановити для змінної <envar
>RONALD</envar
> значення McDonald, вам слід вказати у відповідному розділі таку команду:</para>
<programlisting
><command
>set-env</command
> <envar
>RONALD</envar
> <userinput
>McDonald</userinput
>
</programlisting>
<para
>Цей параметр має особливість: його можна повторювати без перевизначення раніше встановлених параметрів set-env у одному і тому ж розділі <link linkend="configure-data"
>файла налаштувань</link
>. Таким чином, ви можете встановити декілька змінних середовища у одному модулі (або загальних змінних).</para>
</entry>
</row>

<row id="conf-source-dir">
<entry
><link linkend="conf-source-dir"
>source-dir</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Рядок</member>
<member
>Типове значення</member
><member
><filename class="directory"
>~/kde/src</filename
></member>
</simplelist>
<para
>Цей параметр використовується для встановлення каталогу, у якому &git; слід зберігати коди &kde;. Ви можете скористатися тильдою (~) для позначення домашнього каталогу.</para>
<para
>Пов'язаний параметр командного рядка: --source-dir <replaceable
>шлях</replaceable
></para>
</entry>
</row>

<row id="conf-stop-on-failure">
<entry
><link linkend="conf-stop-on-failure"
>stop-on-failure</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Булеве</member>
<member
>Типове значення</member
><member
>True</member>
</simplelist>
<para
>Встановлення для цього параметра значення <userinput
>false</userinput
> надає змогу продовжити виконання скрипту, якщо під час збирання або встановлення трапляться помилки.</para>
<para
>Пов'язаний параметр командного рядка: <xref linkend="cmdline-stop-on-failure"/></para>
</entry>
</row>

<row id="conf-tag">
<entry
><link linkend="conf-tag"
>теґ</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Рядок</member>
<member
>Доступний з версії</member
><member
>1.16</member>
</simplelist>
<para
>Використовуйте цей параметр для отримання певної версії модуля.</para>
<para
><emphasis
>Зауваження:</emphasis
> ймовірно, вам <emphasis
>не доведеться використовувати</emphasis
> цей параметр. Випуски &kde; можна отримати у форматі архівів з <ulink url="https://download.kde.org/"
>сайта отримання пакунків &kde;</ulink
>.</para>
<para
>Пов'язаний параметр командного рядка: --tag <replaceable
>значення</replaceable
></para>
</entry>
</row>

<row id="conf-use-clean-install">
<entry
><link linkend="conf-use-clean-install"
>use-clean-install</link
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Булеве</member>
<member
>Типове значення</member
><member
>False</member>
<member
>Доступний з версії</member
><member
>1.12</member>
</simplelist>
<para
>Встановіть для цього параметра значення <userinput
>true</userinput
>, якщо &kdesrc-build; слід виконати <command
>make uninstall</command
> безпосередньо перед виконанням команди <command
>make install</command
>.</para>

<para
>Цей параметр може бути корисним для забезпечення вилучення застарілих файлів бібліотек, метаданих &cmake; тощо, які можуть призвести до проблем у екземплярах &kde;, які мають довгу історію. Втім, цей параметр допоможе позбутися зайвих даних лише у системах збирання, у яких передбачено підтримку виконання команди <command
>make uninstall</command
>.</para>
<para
>Пов'язані параметри командного рядка: --use-clean-install, --no-use-clean-install</para>
</entry>
</row>

</tbody>

</tgroup>
</table>

<para
>Для цих параметрів не потрібно передавати жодних значень (окрім «filter-out-phases»). Їх буде застосовано, якщо ви вкажете їх у розділі.</para>
<table id="options-phase-selection-table">
<title
>Параметри вибору фази</title>
<tgroup cols="2">

<thead>
<row>
<entry
>Назва параметра</entry>
<entry
>Область дії</entry>
<entry
>Опис</entry>
</row>
</thead>
<tbody>

<row id="conf-no-src">
<entry
><link linkend="conf-no-src"
>no-src</link
></entry>
<entry
><simplelist type='vert'
><member
>global</member
><member
>module</member
><member
>module-set</member
></simplelist
></entry>
<entry>
<para
>Вилучити фазу <emphasis
>update</emphasis
>. Інші вказані фази буде оброблено.</para>
<para
>Пов'язаний параметр командного рядка: <xref linkend="cmdline-no-src"/></para>
</entry>
</row>

<row id="conf-no-install">
<entry
><link linkend="conf-no-install"
>no-install</link
></entry>
<entry
><simplelist type='vert'
><member
>global</member
><member
>module</member
><member
>module-set</member
></simplelist
></entry>
<entry>
<para
>Вилучити фазу <emphasis
>install</emphasis
>. Інші вказані фази буде оброблено.</para>
<para
>Пов'язаний параметр командного рядка: <xref linkend="cmdline-no-install"/></para>
</entry>
</row>

<row id="conf-no-tests">
<entry
><link linkend="conf-no-tests"
>no-tests</link
></entry>
<entry
><simplelist type='vert'
><member
>global</member
><member
>module</member
><member
>module-set</member
></simplelist
></entry>
<entry>
<para
>Вилучити фазу <emphasis
>test</emphasis
>. Інші вказані фази буде оброблено.</para>
<para
>Пов'язані параметри командного рядка: --no-tests</para>
</entry>
</row>

<row id="conf-no-build">
<entry
><link linkend="conf-no-build"
>no-build</link
></entry>
<entry
><simplelist type='vert'
><member
>global</member
><member
>module</member
><member
>module-set</member
></simplelist
></entry>
<entry>
<para
>Вилучити фазу <emphasis
>build</emphasis
>. Інші вказані фази буде оброблено.</para>
<para
>Пов'язаний параметр командного рядка: <xref linkend="cmdline-no-build"/></para>
</entry>
</row>

<row id="conf-build-only">
<entry
><link linkend="conf-build-only"
>build-only</link
></entry>
<entry
><simplelist type='vert'
><member
>global</member
><member
>module</member
><member
>module-set</member
></simplelist
></entry>
<entry>
<para
>Якщо була фаза <emphasis
>build</emphasis
>, вилучити усі інші фази. Якщо фази не було, вилучити усі фази взагалі.</para>
<para
>Пов'язаний параметр командного рядка: <xref linkend="cmdline-build-only"/></para>
</entry>
</row>

<row id="conf-install-only">
<entry
><link linkend="conf-install-only"
>install-only</link
></entry>
<entry
><simplelist type='vert'
><member
>global</member
><member
>module</member
><member
>module-set</member
></simplelist
></entry>
<entry>
<para
>Якщо була фаза <emphasis
>install</emphasis
>, вилучити усі інші фази. Якщо фази не було, вилучити усі фази взагалі.</para>
<para
>Пов'язаний параметр командного рядка: <xref linkend="cmdline-install-only"/></para>
</entry>
</row>

<row id="conf-uninstall">
<entry
><link linkend="conf-uninstall"
>uninstall</link
></entry>
<entry
><simplelist type='vert'
><member
>global</member
><member
>module</member
><member
>module-set</member
></simplelist
></entry>
<entry>
<para
>Якщо була фаза <emphasis
>uninstall</emphasis
>, вилучити усі інші фази. Якщо фази не було, вилучити усі фази взагалі.</para>
<para
>Пов'язаний параметр командного рядка: --uninstall</para>
</entry>
</row>

<row id="conf-filter-out-phases">
<entry
><link linkend="conf-filter-out-phases"
>filter-out-phases</link
></entry>
<entry
><simplelist type='vert'
><member
>global</member
><member
>module</member
><member
>module-set</member
></simplelist
></entry>
<entry>
<para
>Вилучити фази зі списку (відокремлені пробілами) в аргументах цього параметра. Інші вказані фази буде оброблено.</para>
</entry>
</row>

</tbody>
</tgroup>
</table>

<table id="options-module-set-table">
<title
>Параметри вибору модулів</title>
<tgroup cols="2">

<thead>
<row>
<entry
>Назва параметра</entry>
<entry
>Область дії</entry>
<entry
>Опис</entry>
</row>
</thead>
<tbody>


<row id="conf-ignore-modules">
<entry
><link linkend="conf-ignore-modules"
>ignore-modules</link
></entry>
<entry
><simplelist type='vert'
><member
>global</member
><member
>module-set</member
></simplelist
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Рядок</member>
<member
>Доступний з версії</member
><member
>1.16</member>
</simplelist>
<para
>Зауважте, що якщо вказано у загальному розділі (global), параметр командного рядка &cmd-ignore-modules; не має пріоритету над цим параметром, а лише доповнює його значення.</para>
<para
>Модулі, названі у цьому параметрі, які мало б бути вибрано &kdesrc-build; через визначення параметра <link linkend="conf-use-modules"
>use-modules</link
>, буде повністю пропущено. Цим параметром можна скористатися, якщо ви хочете зібрати всі групи у проєкті <link linkend="kde-projects-module-sets"
>kde-projects</link
>, <emphasis
>окрім</emphasis
> певних модулів.</para>

<para
>Значення параметра не повинне обов’язково вказувати безпосередньо на назву модуля. Будь-який з модулів, повна частина <link linkend="kde-projects-module-sets"
>шляху до модуля у проєктах &kde;</link
> якого збігається з одним зі значень параметра, буде проігноровано. Отже, таким чином можна ігнорувати одразу декілька модулів.</para>

<para
>Наприклад, значення параметра <replaceable
>libs</replaceable
> призведе до того, що буде виключено <symbol
>kde/kdegraphics/libs</symbol
> і <symbol
>playground/libs</symbol
> (але не <symbol
>kde/kdelibs</symbol
>, оскільки «kdelibs» не збігається повністю зі значенням параметра).</para>

<tip
><para
>Див. також розділ <xref linkend="example-ignoring-a-module"/>.</para
></tip>
<para
>Пов'язаний параметр командного рядка: <xref linkend="cmdline-ignore-modules"/></para>
</entry>
</row>

<row id="conf-use-modules">
<entry
><link linkend="conf-use-modules"
>use-modules</link
></entry>
<entry
><simplelist type='vert'
><member
>module-set</member
></simplelist
></entry>
<entry>
<simplelist type='horiz' columns='2'>
<member
>Тип</member
><member
>Рядок</member>
<member
>Доступний з версії</member
><member
>1.12.1</member>
</simplelist>
<para
>За допомогою цього параметра вам буде простіше вказати набір модулів, які збиратимуться на певному етапі, у <link linkend="kdesrc-buildrc"
>файлі налаштування</link
>.</para>

<para
>Всі ідентифікатори, передані цьому параметру, перетворюються у розгорнуту форму у модулі &kdesrc-build;. Значення параметра <link linkend="conf-repository"
><option
>repository</option
></link
> буде встановлено на основі даних щодо сховища набору модулів і назви-ідентифікатора модуля. Всі інші параметри, визначені у наборі модулів також буде скопійовано до створених записів модулів без змін.</para>

<para
>Порядок, у якому модулі визначено у цьому параметрі, є важливим, оскільки це саме той порядок, у якому &kdesrc-build; оброблятиме створені записи модулів під час оновлення, збирання і встановлення. Всі модулі, визначені у певному наборі модулів, буде оброблено до переходу &kdesrc-build; до наступного після набору модулів модуля.</para>

<para
>Якщо вам потрібно змінити параметри створеного модуля, просто оголосіть модуль ще раз після його визначення у наборі модулів і вкажіть нові параметри. Хоча таким чином ви внесете зміни до параметри модуля, модуль все одно буде оновлено і зібрано у порядку, вказаному у наборі модулів (тобто ви не зможете таким чином змінити порядок збирання).</para>

<important
><para
>Якщо ви вирішите змінити параметри саме таким чином, назва модуля має збігатися з назвою, переданою <option
>use-modules</option
>, але частину <literal
>.git</literal
> слід прибрати.</para
></important>

<para
>Опис використання параметра і приклад можна знайти у розділах <xref linkend="module-sets"/> та <link linkend="conf-git-repository-base"
>git-repository-base</link
>.</para>
</entry>
</row>

</tbody>
</tgroup>
</table>

</sect1>
