[sdk/kdesrc-build] doc: Move global only settings to separate table

ivan tkachenko null at kde.org
Sun Nov 26 18:04:38 GMT 2023


Git commit d991d06e6149b22ee6fd0735dbfcabcdaa61c639 by ivan tkachenko, on behalf of Andrew Shark.
Committed on 26/11/2023 at 19:04.
Pushed by ratijas into branch 'master'.

Move global only settings to separate table

We often want to search for the module option, that overrides the global value. In the other time, we search for global only options. They should be in different tables.

M  +373  -336  doc/index.docbook

https://invent.kde.org/sdk/kdesrc-build/-/commit/d991d06e6149b22ee6fd0735dbfcabcdaa61c639

diff --git a/doc/index.docbook b/doc/index.docbook
index 13f7b73d..02577ac5 100644
--- a/doc/index.docbook
+++ b/doc/index.docbook
@@ -1757,8 +1757,8 @@ option.</para></listitem>
 
 </itemizedlist>
 
-<table id="option-table">
-<title>Table of Options</title>
+<table id="options-global-table">
+<title>Global scope only options</title>
 <tgroup cols="3">
 
 <thead>
@@ -1768,7 +1768,6 @@ option.</para></listitem>
 <entry>Notes</entry>
 </row>
 </thead>
-
 <tbody>
 
 <row id="conf-async">
@@ -1781,6 +1780,317 @@ to enabling asynchronous mode.  To disable, set this option to <userinput>false<
 <para>This option is available since the 1.6 release.</para></entry>
 </row>
 
+<row id="conf-colorful-output">
+<entry>colorful-output</entry>
+<entry>Cannot be overridden</entry>
+<entry>Set this option to <userinput>false</userinput> to disable the colorful output of &kdesrc-build;.
+This option defaults to <replaceable>true</replaceable>. Note that &kdesrc-build; will not output the
+color codes to anything but a terminal (such as xterm, &konsole;, or the normal
+&Linux; console).
+</entry>
+</row>
+
+<row id="conf-disable-agent-check">
+<entry>disable-agent-check</entry>
+<entry>Cannot be overridden</entry>
+<entry>Normally if you are using &ssh; to download the &git; sources
+(such as if you are using the git+ssh protocol), &kdesrc-build; will try and
+make sure that if you are using ssh-agent, it is actually managing some &ssh;
+identities. This is to try and prevent &ssh; from asking for your pass phrase
+for every module. You can disable this check by setting
+<option>disable-agent-check</option> to <userinput>true</userinput>.
+</entry>
+</row>
+
+<row id="conf-git-desired-protocol">
+<entry>git-desired-protocol</entry>
+<entry>Cannot be overridden</entry>
+<entry><para>This option only applies to modules from a <link
+linkend="kde-projects-module-sets">&kde; project</link> repository.</para>
+
+<para>What this option actually does is configure which network protocol to
+prefer when pushing source code for these modules. Normally the very-efficient
+<literal>git</literal> protocol is used, but this may be blocked in some
+networks (e.g. corporate intranets, public Wi-Fi). An alternative protocol
+which is much better supported is the <literal>https</literal> protocol used for
+Internet web sites.</para>
+
+<para>If you are using one of these constrained networks you can set this
+option to <userinput>http</userinput> to prefer <literal>https</literal>
+communications instead.</para>
+
+<tip><para>You may also need the <link
+linkend="conf-http-proxy">http-proxy</link> option if an HTTP proxy is also
+needed for network traffic.</para></tip>
+
+<para>In any other situation you should not set this option as the default
+protocol is most efficient.</para>
+
+<para>This option was added in &kdesrc-build; 1.16. Prior to 20.06 this option
+was used to configure the fetch URL instead of the push URL. As of 20.06
+<literal>https</literal> is always used when updating KDE projects.</para>
+</entry>
+</row>
+
+<row id="conf-git-repository-base">
+<entry>git-repository-base</entry>
+<entry>Cannot be overridden</entry>
+<entry><para>This option, added in version 1.12.1, is used to create a short
+name to reference a specific Git repository base URL in later <link
+linkend="module-sets">module set</link> declarations, which is useful for
+quickly declaring many Git modules to build.</para>
+
+<para>You must specify two things (separated by a space): The name to assign
+to the base URL, and the actual base URL itself. For example:</para>
+
+<para>
+<informalexample>
+<programlisting>
+global
+# other options
+
+# This is the common path to all anonymous Git server modules.
+git-repository-base <replaceable>kde-git</replaceable> <replaceable>kde:</replaceable>
+end global
+
+# Module declarations
+
+module-set
+# Now you can use the alias you defined earlier, but <emphasis>only</emphasis>
+# in a module-set.
+repository <replaceable>kde-git</replaceable>
+
+<link linkend="conf-use-modules">use-modules</link> <replaceable>module1.git</replaceable> <replaceable>module2.git</replaceable>
+end module-set
+</programlisting>
+</informalexample>
+</para>
+
+<para>The module-set's <literal>use-modules</literal> option created two modules
+internally, with &kdesrc-build; behaving as if it had read:</para>
+
+<programlisting>
+module module1
+repository kde:<replaceable>module1.git</replaceable>
+end module
+
+module module2
+repository kde:<replaceable>module2.git</replaceable>
+end module
+</programlisting>
+
+<para>The <literal>kde:</literal> &git; repository prefix used above is a
+shortcut which will be setup by &kdesrc-build; automatically. See the TechBase
+<ulink
+url="https://techbase.kde.org/Development/Git/Configuration#URL_Renaming">URL
+Renaming</ulink> article for more information. Note that unlike most other
+options, this option can be specified multiple times in order to create as
+many aliases as necessary.</para>
+
+<tip><para>It is not required to use this option to take advantage of module-set,
+this option exists to make it easy to use the same repository across many
+different module sets.</para></tip>
+</entry>
+</row>
+
+<row id="conf-ignore-modules">
+<entry>ignore-modules</entry>
+<entry>Can't be overridden</entry>
+<entry><para>Modules named by this option, which would be chosen by &kdesrc-build;
+due to a <link linkend="conf-use-modules">use-modules</link> option, are
+instead skipped entirely. Use this option when you want to build an entire
+<link linkend="kde-projects-module-sets">kde-projects</link> project grouping
+<emphasis>except for</emphasis> some specific modules.</para>
+
+<para>The option value does not necessarily have to name the module directly.
+Any module that has full consecutive parts of its <link
+linkend="kde-projects-module-sets">&kde; projects module path</link> match one
+of the option values will be ignored, so you can ignore multiple modules this
+way.</para>
+
+<para>For example, an option value of <replaceable>libs</replaceable> would
+result in both <symbol>kde/kdegraphics/libs</symbol> and
+<symbol>playground/libs</symbol> being excluded (though not
+<symbol>kde/kdelibs</symbol> since the full part <quote>kdelibs</quote> is what
+is compared).</para>
+
+<tip><para>See also <xref linkend="example-ignoring-a-module"/>.</para></tip>
+
+<para>This option was introduced with &kdesrc-build; 1.16.</para>
+</entry>
+</row>
+
+<row id="conf-install-environment-driver">
+<entry>install-environment-driver</entry>
+<entry>Cannot be overridden</entry>
+<entry><para>By default, &kdesrc-build; will install a shell script that can be
+sourced in a user's profile setup scripts to easily establish needed environment
+variables to run the Plasma desktop built by &kdesrc-build;.</para>
+
+<para>This driver will alter the following files:</para>
+
+<itemizedlist>
+<listitem><para><filename>$XDG_CONFIG_HOME/kde-env-master.sh</filename> (normally found at <filename>~/.config/kde-env-master.sh</filename>).</para></listitem>
+<listitem><para><filename>$XDG_CONFIG_HOME/kde-env-user.sh</filename> (normally found at <filename>~/.config/kde-env-user.sh</filename>).</para></listitem>
+</itemizedlist>
+
+<para>The <filename>kde-env-user.sh</filename> is optional.  It is
+intended for user customizations (see the <ulink url="https://userbase.kde.org/KDE_System_Administration/Environment_Variables#Troubleshooting_and_Debugging">Troubleshooting and Debugging</ulink>
+section of the &kde; UserBase for examples of customizable settings), but these settings
+can be set elsewhere by the user in their existing profile setup scripts.</para>
+
+<para>You can disable this feature by setting this option to
+<replaceable>false</replaceable>, and ensuring that the <link
+linkend="conf-install-session-driver">install-session-driver</link> option is
+also disabled.</para>
+
+<para>This option was introduced with &kdesrc-build; 17.08.</para>
+
+<tip><para>&kdesrc-build; will not overwrite your existing files (if present)
+unless you also pass the <option><link
+linkend="cmdline-delete-my-settings">--delete-my-settings</link></option>
+command-line option.</para></tip>
+</entry>
+</row>
+
+<row id="conf-install-session-driver">
+<entry>install-session-driver</entry>
+<entry>Cannot be overridden</entry>
+<entry><para>If enabled, &kdesrc-build; will try to install a driver for the graphical
+login manager that allows you to login to your &kdesrc-build;-built &kde; desktop.</para>
+
+<para>This driver will alter the following files:</para>
+
+<itemizedlist>
+<listitem><para><filename>~/.xsession</filename></para></listitem>
+<listitem><para><filename>$XDG_CONFIG_HOME/kde-env-master.sh</filename> (normally found at <filename>~/.config/kde-env-master.sh</filename>).</para></listitem>
+<listitem><para><filename>$XDG_CONFIG_HOME/kde-env-user.sh</filename> (normally found at <filename>~/.config/kde-env-user.sh</filename>).</para></listitem>
+</itemizedlist>
+
+<para>If you maintain your own login driver then you can disable this feature by setting this
+option to <replaceable>false</replaceable>.  If enabled, this feature also enables the
+<link linkend="conf-install-environment-driver">install-environment-driver</link> feature.</para>
+
+<para>This option was introduced with &kdesrc-build; 1.16.</para>
+
+<tip><para>&kdesrc-build; will not overwrite your existing files (if present)
+unless you also pass the <option><link
+linkend="cmdline-delete-my-settings">--delete-my-settings</link></option>
+command-line option.</para></tip>
+</entry>
+</row>
+
+<row id="conf-num-cores">
+<entry>num-cores</entry>
+<entry>Cannot be overridden</entry>
+<entry>
+<para>This option is defined by &kdesrc-build; (when using the kdesrc-build-setup tool
+or <command>kdesrc-build --initial-setup</command>), set to be the number of
+available CPUs (as indicated by the external application
+<application>nproc</application>). If &kdesrc-build; cannot detect the
+number of CPUs, this value is set to 4.</para>
+
+<para>See <xref linkend="make-options-example"/> for an example of this
+option's usage. This option was added in version 20.07.</para>
+</entry>
+</row>
+
+<row id="conf-num-cores-low-mem">
+<entry>num-cores-low-mem</entry>
+<entry>Cannot be overridden</entry>
+<entry>
+<para>This option is defined by &kdesrc-build; (when using the kdesrc-build-setup tool
+or <command>kdesrc-build --initial-setup</command>), set to be the number of
+CPUs that is deemed safe for heavyweight or other highly-intensive modules,
+such as <literal>qtwebengine</literal>, to avoid running out of memory
+during the build.</para>
+
+<para>The typical calculation is one CPU core for every 2
+gigabytes (GiB) of total memory. At least 1 core will be specified,
+and no more than <option><link linkend="conf-num-cores">num-cores</link></option>
+cores will be specified.</para>
+
+<para>Although this option is intended to support &Qt; modules, you can use it for your
+any module in the same way that <option>num-cores</option> is used.</para>
+
+<para>If &kdesrc-build; cannot detect available memory then this value will be
+set to 2.</para>
+
+<para>This option was added in version 20.07.</para>
+</entry>
+</row>
+
+<row id="conf-persistent-data-file">
+<entry>persistent-data-file</entry>
+<entry>Cannot be overridden</entry>
+<entry><para>Use this option to change where &kdesrc-build; stores its
+persistent data. The default is to store this data in a file called
+<filename>.kdesrc-build-data</filename>, placed in the same directory as the
+configuration file in use. If the global configuration file is in use, it will
+be saved to <filename>~/.local/state/kdesrc-build-data</filename>
+(<filename>$XDG_STATE_HOME/kdesrc-build-data</filename>, if
+<envar>$XDG_STATE_HOME</envar> is set). If you have multiple available
+configurations in the same directory, you may want to manually set this option,
+so that different configurations do not end up with conflicting persistent data.
+</para>
+
+<para>This option was added with &kdesrc-build; 1.15.</para>
+</entry>
+</row>
+
+<row id="conf-ssh-identity-file">
+<entry>ssh-identity-file</entry>
+<entry>Cannot be overridden</entry>
+<entry>
+<para>Set this option to control which private SSH key file is passed to the
+<command>ssh-add</command> command when &kdesrc-build; is downloading source
+code from repositories that require authentication. See also: <xref
+linkend="ssh-agent-reminder"/>.</para>
+
+<para>This option was added in version 1.14.2.</para>
+</entry>
+</row>
+
+<row id="conf-use-idle-io-priority">
+<entry>use-idle-io-priority</entry>
+<entry>Cannot be overridden</entry>
+<entry>This option, added in &kdesrc-build; 1.12, will cause a lower priority
+to be used for disk and other I/O usage, which can significantly improve the
+responsiveness of the rest of the system at the expense of slightly longer
+running times for &kdesrc-build;. The default is to be disabled, to enable
+the lower disk priority set this to <userinput>true</userinput>.
+</entry>
+</row>
+
+<row id="conf-use-inactive-modules">
+<entry>use-inactive-modules</entry>
+<entry>Cannot be overridden</entry>
+<entry>This option when enabled will allow kdesrc-build to also clone and
+pull from repositories marked as inactive. The default is to be disabled,
+to allow inactive modules set this to <userinput>true</userinput>.
+</entry>
+</row>
+
+</tbody>
+</tgroup>
+</table>
+
+<!-- Between tables -->
+
+<table id="option-table">
+<title>All scopes (module, module-set and global) options</title>
+<tgroup cols="3">
+
+<thead>
+<row>
+<entry>Option-name</entry>
+<entry>Module -> Global Behavior</entry>
+<entry>Notes</entry>
+</row>
+</thead>
+
+<tbody>
+
 <row id="conf-binpath">
 <entry>binpath</entry>
 <entry>Module setting overrides global</entry>
@@ -1976,16 +2286,6 @@ option blank. (In other words, <emphasis>required</emphasis> &cmake; parameters
 are set for you automatically)</para></entry>
 </row>
 
-<row id="conf-colorful-output">
-<entry>colorful-output</entry>
-<entry>Cannot be overridden</entry>
-<entry>Set this option to <userinput>false</userinput> to disable the colorful output of &kdesrc-build;.
-This option defaults to <replaceable>true</replaceable>. Note that &kdesrc-build; will not output the
-color codes to anything but a terminal (such as xterm, &konsole;, or the normal
-&Linux; console).
-</entry>
-</row>
-
 <row id="conf-compile-commands-export">
 <entry>compile-commands-export</entry>
 <entry>Module setting overrides global</entry>
@@ -2037,161 +2337,58 @@ only works for qt.</emphasis></para>
 
     <para>The value of this option is used as the command line to run, modified
     by the <link linkend="conf-make-options">make-options</link> option as
-    normal.
-    </para>
-</entry>
-</row>
-
-<row id="conf-cxxflags">
-<entry>cxxflags</entry>
-<entry>Appends to global options for the default buildsystem, overrides global
-for other buildsystems.</entry>
-<entry><para>Use this option to specify what flags to use for building the
-module. This option is
-specified here instead of with <link
-linkend="conf-configure-flags">configure-flags</link> or <link
-linkend="conf-cmake-options">cmake-options</link> because this option will also
-set the environment variable <envar>CXXFLAGS</envar> during the build process.</para>
-
-<para>Note that for &kde; 4 and any other modules that use &cmake;, it is
-necessary to set the CMAKE_BUILD_TYPE option to <userinput>none</userinput>
-when configuring the module.  This can be done using the <link
-linkend="conf-cmake-options">cmake-options</link> option.
-</para>
-</entry>
-</row>
-
-<row id="conf-dest-dir">
-<entry>dest-dir</entry>
-<entry>Module setting overrides global</entry>
-<entry>Use this option to change the name a module is given on disk. For
-example, if your module was extragear/network, you could rename it to
-extragear-network using this option.  Note that although this changes the
-name of the module on disk, it is not a good idea to include directories
-or directory separators in the name as this will interfere with any
-<link linkend="conf-build-dir">build-dir</link> or
-<link linkend="conf-source-dir">source-dir</link> options.
-</entry>
-</row>
-
-<row id="conf-disable-agent-check">
-<entry>disable-agent-check</entry>
-<entry>Cannot be overridden</entry>
-<entry>Normally if you are using &ssh; to download the &git; sources
-(such as if you are using the git+ssh protocol), &kdesrc-build; will try and
-make sure that if you are using ssh-agent, it is actually managing some &ssh;
-identities. This is to try and prevent &ssh; from asking for your pass phrase
-for every module. You can disable this check by setting
-<option>disable-agent-check</option> to <userinput>true</userinput>.
-</entry>
-</row>
-
-<row id="conf-do-not-compile">
-<entry>do-not-compile</entry>
-<entry>Module setting overrides global</entry>
-<entry><para>Use this option to select a specific set of directories not to be built in a
-module (instead of all of them). The directories not to build should be space-separated.</para>
-
-<para>Note that the sources to the programs will still be downloaded.</para>
-
-<para>For example, to disable building the <literal>codeeditor</literal> and <literal>minimaltest</literal>
-directories of the <literal>syntaxhighlighting</literal> framework, you
-would add <userinput>do-not-compile codeeditor minimaltest</userinput>
-compiling, you would add "do-not-compile juk kscd" to your syntaxhighlighting
-options.</para>
-
-<para>See <xref linkend="not-compiling"/> for an example.</para>
-</entry>
-</row>
-
-<row id="conf-git-desired-protocol">
-<entry>git-desired-protocol</entry>
-<entry>Cannot be overridden</entry>
-<entry><para>This option only applies to modules from a <link
-linkend="kde-projects-module-sets">&kde; project</link> repository.</para>
-
-<para>What this option actually does is configure which network protocol to
-prefer when pushing source code for these modules. Normally the very-efficient
-<literal>git</literal> protocol is used, but this may be blocked in some
-networks (e.g. corporate intranets, public Wi-Fi). An alternative protocol
-which is much better supported is the <literal>https</literal> protocol used for
-Internet web sites.</para>
-
-<para>If you are using one of these constrained networks you can set this
-option to <userinput>http</userinput> to prefer <literal>https</literal>
-communications instead.</para>
-
-<tip><para>You may also need the <link
-linkend="conf-http-proxy">http-proxy</link> option if an HTTP proxy is also
-needed for network traffic.</para></tip>
-
-<para>In any other situation you should not set this option as the default
-protocol is most efficient.</para>
-
-<para>This option was added in &kdesrc-build; 1.16. Prior to 20.06 this option
-was used to configure the fetch URL instead of the push URL. As of 20.06
-<literal>https</literal> is always used when updating KDE projects.</para>
-</entry>
-</row>
-
-<row id="conf-git-repository-base">
-<entry>git-repository-base</entry>
-<entry>Cannot be overridden</entry>
-<entry><para>This option, added in version 1.12.1, is used to create a short
-name to reference a specific Git repository base URL in later <link
-linkend="module-sets">module set</link> declarations, which is useful for
-quickly declaring many Git modules to build.</para>
-
-<para>You must specify two things (separated by a space): The name to assign
-to the base URL, and the actual base URL itself. For example:</para>
-
-<para>
-<informalexample>
-<programlisting>
-global
-   # other options
-
-   # This is the common path to all anonymous Git server modules.
-   git-repository-base <replaceable>kde-git</replaceable> <replaceable>kde:</replaceable>
-end global
-
-# Module declarations
+    normal.
+    </para>
+</entry>
+</row>
 
-module-set
-   # Now you can use the alias you defined earlier, but <emphasis>only</emphasis>
-   # in a module-set.
-   repository <replaceable>kde-git</replaceable>
+<row id="conf-cxxflags">
+<entry>cxxflags</entry>
+<entry>Appends to global options for the default buildsystem, overrides global
+for other buildsystems.</entry>
+<entry><para>Use this option to specify what flags to use for building the
+module. This option is
+specified here instead of with <link
+linkend="conf-configure-flags">configure-flags</link> or <link
+linkend="conf-cmake-options">cmake-options</link> because this option will also
+set the environment variable <envar>CXXFLAGS</envar> during the build process.</para>
 
-   <link linkend="conf-use-modules">use-modules</link> <replaceable>module1.git</replaceable> <replaceable>module2.git</replaceable>
-end module-set
-</programlisting>
-</informalexample>
+<para>Note that for &kde; 4 and any other modules that use &cmake;, it is
+necessary to set the CMAKE_BUILD_TYPE option to <userinput>none</userinput>
+when configuring the module.  This can be done using the <link
+linkend="conf-cmake-options">cmake-options</link> option.
 </para>
+</entry>
+</row>
 
-<para>The module-set's <literal>use-modules</literal> option created two modules
-internally, with &kdesrc-build; behaving as if it had read:</para>
+<row id="conf-dest-dir">
+<entry>dest-dir</entry>
+<entry>Module setting overrides global</entry>
+<entry>Use this option to change the name a module is given on disk. For
+example, if your module was extragear/network, you could rename it to
+extragear-network using this option.  Note that although this changes the
+name of the module on disk, it is not a good idea to include directories
+or directory separators in the name as this will interfere with any
+<link linkend="conf-build-dir">build-dir</link> or
+<link linkend="conf-source-dir">source-dir</link> options.
+</entry>
+</row>
 
-<programlisting>
-module module1
-    repository kde:<replaceable>module1.git</replaceable>
-end module
+<row id="conf-do-not-compile">
+<entry>do-not-compile</entry>
+<entry>Module setting overrides global</entry>
+<entry><para>Use this option to select a specific set of directories not to be built in a
+module (instead of all of them). The directories not to build should be space-separated.</para>
 
-module module2
-    repository kde:<replaceable>module2.git</replaceable>
-end module
-</programlisting>
+<para>Note that the sources to the programs will still be downloaded.</para>
 
-<para>The <literal>kde:</literal> &git; repository prefix used above is a
-shortcut which will be setup by &kdesrc-build; automatically. See the TechBase
-<ulink
-url="https://techbase.kde.org/Development/Git/Configuration#URL_Renaming">URL
-Renaming</ulink> article for more information. Note that unlike most other
-options, this option can be specified multiple times in order to create as
-many aliases as necessary.</para>
+<para>For example, to disable building the <literal>codeeditor</literal> and <literal>minimaltest</literal>
+directories of the <literal>syntaxhighlighting</literal> framework, you
+would add <userinput>do-not-compile codeeditor minimaltest</userinput>
+compiling, you would add "do-not-compile juk kscd" to your syntaxhighlighting
+options.</para>
 
-<tip><para>It is not required to use this option to take advantage of module-set,
-this option exists to make it easy to use the same repository across many
-different module sets.</para></tip>
+<para>See <xref linkend="not-compiling"/> for an example.</para>
 </entry>
 </row>
 
@@ -2272,33 +2469,6 @@ due to changes in the project metadata.</para>
 </entry>
 </row>
 
-<row id="conf-ignore-modules">
-<entry>ignore-modules</entry>
-<entry>Can't be overridden</entry>
-<entry><para>Modules named by this option, which would be chosen by &kdesrc-build;
-due to a <link linkend="conf-use-modules">use-modules</link> option, are
-instead skipped entirely. Use this option when you want to build an entire
-<link linkend="kde-projects-module-sets">kde-projects</link> project grouping
-<emphasis>except for</emphasis> some specific modules.</para>
-
-<para>The option value does not necessarily have to name the module directly.
-Any module that has full consecutive parts of its <link
-linkend="kde-projects-module-sets">&kde; projects module path</link> match one
-of the option values will be ignored, so you can ignore multiple modules this
-way.</para>
-
-<para>For example, an option value of <replaceable>libs</replaceable> would
-result in both <symbol>kde/kdegraphics/libs</symbol> and
-<symbol>playground/libs</symbol> being excluded (though not
-<symbol>kde/kdelibs</symbol> since the full part <quote>kdelibs</quote> is what
-is compared).</para>
-
-<tip><para>See also <xref linkend="example-ignoring-a-module"/>.</para></tip>
-
-<para>This option was introduced with &kdesrc-build; 1.16.</para>
-</entry>
-</row>
-
 <row id="conf-include-dependencies">
 <entry>include-dependencies</entry>
 <entry>Module setting overrides global</entry>
@@ -2331,66 +2501,6 @@ flag.
 </entry>
 </row>
 
-<row id="conf-install-environment-driver">
-<entry>install-environment-driver</entry>
-<entry>Cannot be overridden</entry>
-<entry><para>By default, &kdesrc-build; will install a shell script that can be
-sourced in a user's profile setup scripts to easily establish needed environment
-variables to run the Plasma desktop built by &kdesrc-build;.</para>
-
-<para>This driver will alter the following files:</para>
-
-<itemizedlist>
-<listitem><para><filename>$XDG_CONFIG_HOME/kde-env-master.sh</filename> (normally found at <filename>~/.config/kde-env-master.sh</filename>).</para></listitem>
-<listitem><para><filename>$XDG_CONFIG_HOME/kde-env-user.sh</filename> (normally found at <filename>~/.config/kde-env-user.sh</filename>).</para></listitem>
-</itemizedlist>
-
-<para>The <filename>kde-env-user.sh</filename> is optional.  It is
-intended for user customizations (see the <ulink url="https://userbase.kde.org/KDE_System_Administration/Environment_Variables#Troubleshooting_and_Debugging">Troubleshooting and Debugging</ulink>
-section of the &kde; UserBase for examples of customizable settings), but these settings
-can be set elsewhere by the user in their existing profile setup scripts.</para>
-
-<para>You can disable this feature by setting this option to
-<replaceable>false</replaceable>, and ensuring that the <link
-linkend="conf-install-session-driver">install-session-driver</link> option is
-also disabled.</para>
-
-<para>This option was introduced with &kdesrc-build; 17.08.</para>
-
-<tip><para>&kdesrc-build; will not overwrite your existing files (if present)
-unless you also pass the <option><link
-linkend="cmdline-delete-my-settings">--delete-my-settings</link></option>
-command-line option.</para></tip>
-</entry>
-</row>
-
-<row id="conf-install-session-driver">
-<entry>install-session-driver</entry>
-<entry>Cannot be overridden</entry>
-<entry><para>If enabled, &kdesrc-build; will try to install a driver for the graphical
-login manager that allows you to login to your &kdesrc-build;-built &kde; desktop.</para>
-
-<para>This driver will alter the following files:</para>
-
-<itemizedlist>
-<listitem><para><filename>~/.xsession</filename></para></listitem>
-<listitem><para><filename>$XDG_CONFIG_HOME/kde-env-master.sh</filename> (normally found at <filename>~/.config/kde-env-master.sh</filename>).</para></listitem>
-<listitem><para><filename>$XDG_CONFIG_HOME/kde-env-user.sh</filename> (normally found at <filename>~/.config/kde-env-user.sh</filename>).</para></listitem>
-</itemizedlist>
-
-<para>If you maintain your own login driver then you can disable this feature by setting this
-option to <replaceable>false</replaceable>.  If enabled, this feature also enables the
-<link linkend="conf-install-environment-driver">install-environment-driver</link> feature.</para>
-
-<para>This option was introduced with &kdesrc-build; 1.16.</para>
-
-<tip><para>&kdesrc-build; will not overwrite your existing files (if present)
-unless you also pass the <option><link
-linkend="cmdline-delete-my-settings">--delete-my-settings</link></option>
-command-line option.</para></tip>
-</entry>
-</row>
-
 <row id="conf-kdedir">
 <entry>kdedir</entry>
 <entry>Module setting overrides global</entry>
@@ -2523,46 +2633,6 @@ source code for the module automatically. It will still try to build the
 module if it normally would have tried anyways.</entry>
 </row>
 
-<row id="conf-num-cores">
-<entry>num-cores</entry>
-<entry>Cannot be overridden</entry>
-<entry>
-<para>This option is defined by &kdesrc-build; (when using the kdesrc-build-setup tool
-or <command>kdesrc-build --initial-setup</command>), set to be the number of
-available CPUs (as indicated by the external application
-<application>nproc</application>). If &kdesrc-build; cannot detect the
-number of CPUs, this value is set to 4.</para>
-
-<para>See <xref linkend="make-options-example"/> for an example of this
-option's usage. This option was added in version 20.07.</para>
-</entry>
-</row>
-
-<row id="conf-num-cores-low-mem">
-<entry>num-cores-low-mem</entry>
-<entry>Cannot be overridden</entry>
-<entry>
-<para>This option is defined by &kdesrc-build; (when using the kdesrc-build-setup tool
-or <command>kdesrc-build --initial-setup</command>), set to be the number of
-CPUs that is deemed safe for heavyweight or other highly-intensive modules,
-such as <literal>qtwebengine</literal>, to avoid running out of memory
-during the build.</para>
-
-<para>The typical calculation is one CPU core for every 2
-gigabytes (GiB) of total memory. At least 1 core will be specified,
-and no more than <option><link linkend="conf-num-cores">num-cores</link></option>
-cores will be specified.</para>
-
-<para>Although this option is intended to support &Qt; modules, you can use it for your
-any module in the same way that <option>num-cores</option> is used.</para>
-
-<para>If &kdesrc-build; cannot detect available memory then this value will be
-set to 2.</para>
-
-<para>This option was added in version 20.07.</para>
-</entry>
-</row>
-
 <row id="conf-override-build-system">
 <entry>override-build-system</entry>
 <entry>Module setting overrides global</entry>
@@ -2614,24 +2684,6 @@ the auto-detection. In this case you can manually specify the correct build type
 </entry>
 </row>
 
-<row id="conf-persistent-data-file">
-<entry>persistent-data-file</entry>
-<entry>Cannot be overridden</entry>
-<entry><para>Use this option to change where &kdesrc-build; stores its
-persistent data. The default is to store this data in a file called
-<filename>.kdesrc-build-data</filename>, placed in the same directory as the
-configuration file in use. If the global configuration file is in use, it will
-be saved to <filename>~/.local/state/kdesrc-build-data</filename>
-(<filename>$XDG_STATE_HOME/kdesrc-build-data</filename>, if
-<envar>$XDG_STATE_HOME</envar> is set). If you have multiple available
-configurations in the same directory, you may want to manually set this option,
-so that different configurations do not end up with conflicting persistent data.
-</para>
-
-<para>This option was added with &kdesrc-build; 1.15.</para>
-</entry>
-</row>
-
 <row id="conf-prefix">
 <entry>prefix</entry>
 <entry>Module setting overrides global</entry>
@@ -2759,19 +2811,6 @@ to represent the home directory if using this option.
 </entry>
 </row>
 
-<row id="conf-ssh-identity-file">
-<entry>ssh-identity-file</entry>
-<entry>Cannot be overridden</entry>
-<entry>
-<para>Set this option to control which private SSH key file is passed to the
-<command>ssh-add</command> command when &kdesrc-build; is downloading source
-code from repositories that require authentication. See also: <xref
-linkend="ssh-agent-reminder"/>.</para>
-
-<para>This option was added in version 1.14.2.</para>
-</entry>
-</row>
-
 <row id="conf-stop-on-failure">
 <entry>stop-on-failure</entry>
 <entry>Module setting overrides global</entry>
@@ -2811,25 +2850,24 @@ until &kdesrc-build; 1.16.</para>
 </entry>
 </row>
 
-<row id="conf-use-idle-io-priority">
-<entry>use-idle-io-priority</entry>
-<entry>Cannot be overridden</entry>
-<entry>This option, added in &kdesrc-build; 1.12, will cause a lower priority
-to be used for disk and other I/O usage, which can significantly improve the
-responsiveness of the rest of the system at the expense of slightly longer
-running times for &kdesrc-build;. The default is to be disabled, to enable
-the lower disk priority set this to <userinput>true</userinput>.
-</entry>
-</row>
+</tbody>
 
-<row id="conf-use-inactive-modules">
-<entry>use-inactive-modules</entry>
-<entry>Cannot be overridden</entry>
-<entry>This option when enabled will allow kdesrc-build to also clone and
-pull from repositories marked as inactive. The default is to be disabled,
-to allow inactive modules set this to <userinput>true</userinput>.
-</entry>
+</tgroup>
+</table>
+
+
+<table id="options-module-set-table">
+<title>Module-set scope only options</title>
+<tgroup cols="3">
+
+<thead>
+<row>
+<entry>Option-name</entry>
+<entry>Module -> Global Behavior</entry>
+<entry>Notes</entry>
 </row>
+</thead>
+<tbody>
 
 <row id="conf-use-modules">
 <entry>use-modules</entry>
@@ -2869,7 +2907,6 @@ of its use and an example.</para>
 </row>
 
 </tbody>
-
 </tgroup>
 </table>
 


More information about the kde-doc-english mailing list