[pacman-dev] [PATCH] makepkg : switch from getopt to getopts builtin
Allan McRae
mcrae_allan at hotmail.com
Mon Jun 2 12:15:03 EDT 2008
Alessio Bolognino wrote:
> On Mon 2008-06-02 11:54, Xavier wrote:
>
>> >From f5c5a277e2df14650ae441f32950aa6d4deee50f Mon Sep 17 00:00:00 2001
>> From: Xavier Chantry <shiningxc at gmail.com>
>> Date: Wed, 28 May 2008 21:57:28 +0200
>> Subject: [PATCH] makepkg : switch from getopt to getopts builtin
>>
>> getopt is an external script for parsing and is less portable than getopts
>> which is a bash builtin.
>> The main problem is that it only supports short opts, so long opts had to be
>> dropped.
>> The benefits are a much better portability and a simpler code for the
>> arguments parsing.
>>
>
> Maybe dropping all long options is not a great idea: makepkg has a lot
> of options and find an alphanumeric character for each is not that
> easy/intuitive; Furthermore getopt is ported virtually everywhere: Mac
> OS X, FreeBSD, OpenBSD, NetBSD etc. and stuff like asciidoc
> depends upon it.
>
>
Wasn't the whole point of this that getopt didn't work properly/as
expected on BSD?
> Bear in mind I don't have a strong opinion about that, I was just
> playing devil's advocate :)
>
Well, I am not a fan! Has anybody looked into parsing options
manually? I seem to recall Xavier point out a bash implementation that
could be used. makepkg does not have anything too complex (options take
one arg max) so it should be fairly easy. I'd much prefer a
parse_options function to be added than to lose all the long options.
However, if that proves too complex a solution, I will graciously accept
defeat...
Allan
More information about the pacman-dev
mailing list