mbox series

[00/11] improve options help

Message ID 20210309233116.1934666-1-thomas@monjalon.net (mailing list archive)
Headers show
Series improve options help | expand

Message

Thomas Monjalon March 9, 2021, 11:31 p.m. UTC
The main intent of this series is to provide a nice help
for the --log-level option.
More patches are added to improve options help in general.

Thomas Monjalon (11):
  eal: explain argv behaviour during init
  eal: improve options usage text
  eal: use macros for help option
  eal: move private log functions
  eal: introduce maximum log level macro
  eal: catch invalid log level number
  eal: add log level help
  app: fix exit messages
  app: hook in EAL usage help
  app/regex: fix usage text
  app/testpmd: fix usage text

 app/pdump/main.c                              |  2 +
 app/proc-info/main.c                          |  2 +
 app/test-acl/main.c                           |  2 +
 app/test-bbdev/main.c                         |  3 +-
 app/test-compress-perf/comp_perf_options.h    |  2 +
 .../comp_perf_options_parse.c                 | 10 +--
 app/test-compress-perf/main.c                 |  3 +-
 app/test-crypto-perf/cperf_options.h          |  2 +
 app/test-crypto-perf/cperf_options_parsing.c  | 10 +--
 app/test-crypto-perf/main.c                   |  3 +-
 app/test-fib/main.c                           |  8 +++
 app/test-flow-perf/main.c                     | 63 +++++++++---------
 app/test-pmd/parameters.c                     | 34 ++--------
 app/test-pmd/testpmd.c                        |  2 +
 app/test-pmd/testpmd.h                        |  1 +
 app/test-regex/main.c                         | 10 +--
 app/test-sad/main.c                           |  7 ++
 lib/librte_eal/common/eal_common_log.c        | 50 +++++++++-----
 lib/librte_eal/common/eal_common_options.c    | 66 ++++++++++++-------
 lib/librte_eal/common/eal_log.h               | 32 +++++++++
 lib/librte_eal/common/eal_private.h           | 29 --------
 lib/librte_eal/freebsd/eal.c                  | 10 +--
 lib/librte_eal/include/rte_eal.h              |  2 +
 lib/librte_eal/include/rte_log.h              | 12 ++++
 lib/librte_eal/linux/eal.c                    | 17 ++---
 lib/librte_eal/linux/eal_log.c                |  4 +-
 lib/librte_eal/version.map                    |  3 +
 lib/librte_eal/windows/eal.c                  | 15 ++---
 lib/librte_eal/windows/eal_log.c              |  6 +-
 29 files changed, 237 insertions(+), 173 deletions(-)
 create mode 100644 lib/librte_eal/common/eal_log.h

Comments

Stephen Hemminger March 10, 2021, 12:45 a.m. UTC | #1
On Wed, 10 Mar 2021 00:31:04 +0100
Thomas Monjalon <thomas@monjalon.net> wrote:

> The main intent of this series is to provide a nice help
> for the --log-level option.
> More patches are added to improve options help in general.
> 
> Thomas Monjalon (11):
>   eal: explain argv behaviour during init
>   eal: improve options usage text
>   eal: use macros for help option
>   eal: move private log functions
>   eal: introduce maximum log level macro
>   eal: catch invalid log level number
>   eal: add log level help
>   app: fix exit messages
>   app: hook in EAL usage help
>   app/regex: fix usage text
>   app/testpmd: fix usage text
> 
>  app/pdump/main.c                              |  2 +
>  app/proc-info/main.c                          |  2 +
>  app/test-acl/main.c                           |  2 +
>  app/test-bbdev/main.c                         |  3 +-
>  app/test-compress-perf/comp_perf_options.h    |  2 +
>  .../comp_perf_options_parse.c                 | 10 +--
>  app/test-compress-perf/main.c                 |  3 +-
>  app/test-crypto-perf/cperf_options.h          |  2 +
>  app/test-crypto-perf/cperf_options_parsing.c  | 10 +--
>  app/test-crypto-perf/main.c                   |  3 +-
>  app/test-fib/main.c                           |  8 +++
>  app/test-flow-perf/main.c                     | 63 +++++++++---------
>  app/test-pmd/parameters.c                     | 34 ++--------
>  app/test-pmd/testpmd.c                        |  2 +
>  app/test-pmd/testpmd.h                        |  1 +
>  app/test-regex/main.c                         | 10 +--
>  app/test-sad/main.c                           |  7 ++
>  lib/librte_eal/common/eal_common_log.c        | 50 +++++++++-----
>  lib/librte_eal/common/eal_common_options.c    | 66 ++++++++++++-------
>  lib/librte_eal/common/eal_log.h               | 32 +++++++++
>  lib/librte_eal/common/eal_private.h           | 29 --------
>  lib/librte_eal/freebsd/eal.c                  | 10 +--
>  lib/librte_eal/include/rte_eal.h              |  2 +
>  lib/librte_eal/include/rte_log.h              | 12 ++++
>  lib/librte_eal/linux/eal.c                    | 17 ++---
>  lib/librte_eal/linux/eal_log.c                |  4 +-
>  lib/librte_eal/version.map                    |  3 +
>  lib/librte_eal/windows/eal.c                  | 15 ++---
>  lib/librte_eal/windows/eal_log.c              |  6 +-
>  29 files changed, 237 insertions(+), 173 deletions(-)
>  create mode 100644 lib/librte_eal/common/eal_log.h
> 

It probably isn't worth the effort, but python argparse style
is much easier (and self documenting) compared to the C getopt stuff.
There are several C versions of similar libraries.
   https://github.com/cofyc/argparse
   https://www.argtable.org/