Git commit 35e68fb5b925ef438cf441ead6dce3285f0fdbc8 by Andrew Shark. Committed on 15/01/2024 at 18:23. Pushed by ashark into branch 'master'.
Add --show-options-specifiers option M +8 -8 doc/supported-cmdline-params.docbook M +9 -10 modules/ksb/Cmdline.pm https://invent.kde.org/sdk/kdesrc-build/-/commit/35e68fb5b925ef438cf441ead6dce3285f0fdbc8 diff --git a/doc/supported-cmdline-params.docbook b/doc/supported-cmdline-params.docbook index 71993bdc..219c9099 100644 --- a/doc/supported-cmdline-params.docbook +++ b/doc/supported-cmdline-params.docbook @@ -704,14 +704,6 @@ Display the program version. </para></listitem> </varlistentry> -<varlistentry id="cmdline-author"> -<term><option>--author</option></term> -<listitem><para> -Display contact information for the -author. -</para></listitem> -</varlistentry> - <varlistentry id="cmdline-help"> <term><option>--help</option> (or <option>-h</option>)</term> <listitem><para> @@ -728,6 +720,14 @@ prove useful in bug reports or when asking for help in forums or mailing lists. </listitem> </varlistentry> +<varlistentry id="cmdline-show-options-specifiers"> +<term><option>--show-options-specifiers</option></term> +<listitem><para> +Print the specifier lines (in the format that GetOpts::Long accepts) for all command line options supported by the script. +This may be used by developers, for example, for generating zsh autocompletion functions. +</para></listitem> +</varlistentry> + </variablelist> </sect2> diff --git a/modules/ksb/Cmdline.pm b/modules/ksb/Cmdline.pm index b11dc63a..2422cd83 100644 --- a/modules/ksb/Cmdline.pm +++ b/modules/ksb/Cmdline.pm @@ -142,7 +142,7 @@ sub readCommandLineOptionsAndSelectors (@options) %foundOptions = ( 'show-info' => sub { _showInfoAndExit(); }, version => sub { _showVersionAndExit(); }, - author => sub { _showAuthorAndExit(); }, + 'show-options-specifiers' => sub { _showOptionsSpecifiersAndExit(); }, help => sub { _showHelpAndExit(); }, # Intended as a short option, -d would imply --include-dependencies and @@ -399,17 +399,16 @@ sub _showInfoAndExit exit; } -sub _showAuthorAndExit +sub _showOptionsSpecifiersAndExit { - my $version = "kdesrc-build " . scriptVersion(); - say <<~DONE; - $version was written (mostly) by: - Michael Pyne <mpyne\@kde.org> + my @supportedOptions = _supportedOptions(); - Many people have contributed code, bugfixes, and documentation. + # The initial setup options are handled outside of Cmdline (in the starting script). + my @initial_options = ("initial-setup", "install-distro-packages", "generate-config", "update-shellrc"); - Please report bugs using the KDE Bugzilla, at https://bugs.kde.org/ - DONE + foreach my $option (@supportedOptions, @initial_options) { + print "$option\n"; + } exit; } @@ -420,7 +419,6 @@ sub _supportedOptions # See https://perldoc.perl.org/5.005/Getopt::Long for options specification format my @non_context_options = ( - 'author', 'build-only', 'dependency-tree', 'dependency-tree-fullpath', @@ -441,6 +439,7 @@ sub _supportedOptions 'resume-from|from|f=s', 'set-module-option-value=s', 'show-info', + 'show-options-specifiers', 'src-only|s', 'start-program|run=s{,}', 'stop-after|to=s',