[PATCH 4/4] app/testpmd: enhance getopt_long usage
David Marchand
david.marchand at redhat.com
Wed Mar 13 18:20:17 CET 2024
On Wed, Mar 13, 2024 at 5:51 PM David Marchand
<david.marchand at redhat.com> wrote:
> >
> > > + { TESTPMD_OPT_ETH_PEERS_CONFIGFILE, 1, NULL, TESTPMD_OPT_ETH_PEERS_CONFIGFILE_NUM },
> > > + { TESTPMD_OPT_ETH_PEER, 1, NULL, TESTPMD_OPT_ETH_PEER_NUM },
> > >
> >
> > These long options are within "#ifdef RTE_LIB_CMDLINE" block, I don't
> > know why, I guess above two can work without cmdline library.
>
> Looking again at the options list, we have a nice mess in there... I
> had not realised.
>
> I think the only options that are conditional to RTE_LIB_CMDLINE should be:
> -i, -a, --cmdline-file.
>
> As I wrote above, leaving the -a/--auto-start option parsing out of
> RTE_LIB_CMDLINE is not an issue.
> So it would only leave -i/--interactive and --cmdline-file under
> RTE_LIB_CMDLINE.
> The rest can be moved out of RTE_LIB_CMDLINE.
>
> And reading your next comment about RTE_LIB_CMDLINE, I think we are in sync.
Actually, the solution is even simpler... it is not possible to
disable the cmdline library.
testpmd won't compile without it (missing #ifdef RTE_LIB_CMDLINE in
different places).
I'll drop all the #ifdef RTE_LIB_CMDLINE checks in a dedicated patch.
--
David Marchand
More information about the dev
mailing list