[PATCH 00/12] add argparse library
Chengwen Feng
fengchengwen at huawei.com
Mon Jan 22 04:57:50 CET 2024
Introduce argparse library (which was inspired by the thread [1]),
compared with getopt, it makes it easy to write user-friendly
command-like program.
Note: the 2nd commit contains usage examples.
[1] https://patchwork.dpdk.org/project/dpdk/patch/20231105054539.22303-2-fengchengwen@huawei.com/
Chengwen Feng (12):
eal: introduce more macro for bit definition
argparse: add argparse library
argparse: support verify argument config
test/argparse: add verify argument config test
argparse: support parse parameters
test/argparse: add parse parameters test
argparse: provide parsing known type API
test/argparse: add parse type test
argparse: support parse unsigned base type
test/argparse: add parse unsigned base type test
argparse: pretty help info
examples/dma: replace getopt with argparse
app/test/meson.build | 1 +
app/test/test_argparse.c | 835 +++++++++++++++++++++++++
doc/api/doxy-api-index.md | 1 +
doc/api/doxy-api.conf.in | 1 +
doc/guides/prog_guide/argparse_lib.rst | 141 +++++
doc/guides/prog_guide/index.rst | 1 +
doc/guides/rel_notes/release_24_03.rst | 5 +
examples/dma/dmafwd.c | 279 ++++-----
examples/dma/meson.build | 2 +-
lib/argparse/meson.build | 7 +
lib/argparse/rte_argparse.c | 782 +++++++++++++++++++++++
lib/argparse/rte_argparse.h | 218 +++++++
lib/argparse/version.map | 8 +
lib/eal/include/rte_bitops.h | 64 ++
lib/meson.build | 1 +
15 files changed, 2192 insertions(+), 154 deletions(-)
create mode 100644 app/test/test_argparse.c
create mode 100644 doc/guides/prog_guide/argparse_lib.rst
create mode 100644 lib/argparse/meson.build
create mode 100644 lib/argparse/rte_argparse.c
create mode 100644 lib/argparse/rte_argparse.h
create mode 100644 lib/argparse/version.map
--
2.17.1
More information about the dev
mailing list