[sdk/kdesrc-build/docbook_historied_per_file] doc: Some fixes to make the "skipping build" feature hopefully more useful:
Michael Pyne
null at kde.org
Fri May 10 10:15:11 BST 2024
Git commit 9aee3f12a3aaded1d016426bad966bfd41712683 by Michael Pyne.
Committed on 28/08/2010 at 02:28.
Pushed by ashark into branch 'docbook_historied_per_file'.
Some fixes to make the "skipping build" feature hopefully more useful:
* It is now controlled by an option 'build-when-unchanged' which defaults to true,
so the optimization must now be explicitly enabled.
* The build is only skipped if the module was successfully installed (as determined
by the persistent data recorded last run).
* A command-line option, --force-build is added, along with
--no-build-when-unchanged to be symmetric with the rc-file option.
The new command line option and rc-file option are also documented and added to the
Kate/Kwrite syntax highlighting file.
BUG:248826
FIXED-IN:1.12.1
svn path=/trunk/KDE/kdesdk/doc/scripts/kdesrc-build/; revision=1168981
Original commit: 142c7911
https://invent.kde.org/sdk/kdesrc-build/-/commit/142c791111caa8b2473fd93cfe2af2a905b7fbf2
M +15 -0 doc/cmdline/supported-cmdline-params.docbook
M +26 -0 doc/kdesrc-buildrc/conf-options-table.docbook
https://invent.kde.org/sdk/kdesrc-build/-/commit/9aee3f12a3aaded1d016426bad966bfd41712683
diff --git a/doc/cmdline/supported-cmdline-params.docbook b/doc/cmdline/supported-cmdline-params.docbook
index 84096a9a..3e64fdc3 100644
--- a/doc/cmdline/supported-cmdline-params.docbook
+++ b/doc/cmdline/supported-cmdline-params.docbook
@@ -158,6 +158,21 @@ Do not automatically install packages after they are built.
</para></listitem>
</varlistentry>
+<varlistentry id="cmdline-no-build-when-unchanged">
+<term><parameter>--no-build-when-unchanged</parameter></term>
+<term><parameter>--force-build</parameter></term>
+<listitem><para>
+This option explicitly disables skipping the build process (an optimization
+controlled by the <link
+linkend="conf-build-when-unchanged">build-when-unchanged</link> option. This is
+useful for making &kdesrc-build; run the build when you have changed something
+that &kdesrc-build; cannot check.</para>
+
+<para><parameter>--force-build</parameter> performs the exact same function, and
+is perhaps easier to remember.</para>
+</listitem>
+</varlistentry>
+
<varlistentry id="cmdline-debug">
<term><parameter>--debug</parameter></term>
<listitem><para>
diff --git a/doc/kdesrc-buildrc/conf-options-table.docbook b/doc/kdesrc-buildrc/conf-options-table.docbook
index 55b53bb2..fdf70245 100644
--- a/doc/kdesrc-buildrc/conf-options-table.docbook
+++ b/doc/kdesrc-buildrc/conf-options-table.docbook
@@ -124,6 +124,32 @@ Perhaps surprisingly, this option can be changed per module.
</entry>
</row>
+<row id="conf-build-when-unchanged">
+<entry>build-when-unchanged</entry>
+<entry>Module setting overrides global</entry>
+<entry><para>Use this option in order to control whether &kdesrc-build; always
+tries to build a module that has not had any source code updates.</para>
+
+<para>By setting <option>build-when-unchanged</option> to
+<replaceable>true</replaceable>, &kdesrc-build; always attempts the build phase
+for a module, even if the module did not have any source code updates. This is
+the default setting since it is more likely to lead to a correct
+build.</para>
+
+<para>By setting <option>build-when-unchanged</option> to
+<replaceable>false</replaceable>, &kdesrc-build; will only attempt to run the
+build phase for a module if the module has a source code update, or in other
+situations where it is likely that a rebuild is actually required. This can save
+time, especially if you run &kdesrc-build; daily, or more frequently.</para>
+
+<important><para>This feature is provided as an optimization only. Like many
+other optimizations, there are trade-offs for the correctness of your
+installation. For instance, changes to the qt-copy or kdelibs modules may cause
+a rebuild of other modules to be necessary, even if the source code doesn't
+change at all.</para></important>
+</entry>
+</row>
+
<row id="conf-checkout-only">
<entry>checkout-only</entry>
<entry>Module setting overrides global</entry>
More information about the kde-doc-english
mailing list