On Tue 2008-06-03 10:22, Dan McGee wrote: > On Tue, Jun 3, 2008 at 9:57 AM, Xavier <[EMAIL PROTECTED]> wrote: > > On Tue, Jun 3, 2008 at 4:32 PM, Alessio Bolognino <[EMAIL PROTECTED]> wrote: > >> > >> Actually FreeBSD and NetBSD have in their port tree "getopt", which is > >> this one: http://software.frodo.looijaard.name/getopt/ > >> as you can see, is the same getopt in util-linux; > >> in OpenBSD's tree is called gnugetopt, but it's still the same software. > >> In Mac OS X it can be installed with macports, and it's called "getopt". > >> > > > > Now I am confused. Do they all include a getopt in their base system, > > for example as /bin/getopt , and then external getopt which install as > > /usr/bin/getopt or something? > > The binary name is getopt on all except on openbsd where it is > > gnugetopt? Or were you just talking about the package / port name? > > > > In any cases, this is very interesting, are you able to check it to be > > sure it works? Or anyone else? > > Yeah, I'm confused as well, wow. I didn't know it was this complex of > a situation. > > I would love to see the following: > 1. Where does getopt definitely work and definitely not work "out of the box"?
By default GNU getopt is not installed on BSDs.
> 2. Where is (GNU) getopt available if it is installed?
In Mac OS X is /opt/local/bin/getopt ,
in OpenBSD is /usr/local/bin/gnugetopt ,
in FreeBSD probably is /usr/local/bin/getopt ,
in NetBSD is $somewhere/getopt
> At first I was convinced we shouldn't use it, but now not so much.
I don't know if this is acceptable, but we could use a function in makepkg
to find the *right* getopt, something like:
------------8<-------------------8<-------------------8<---------------
getopt=""
for x in `echo $PATH | sed s@:@\ @g`; do
for y in getopt gnugetopt; do
if [[ -x $x/$y ]]; then
$x/$y --version 2>&1 | grep getopt &>/dev/null
if [[ $? == 0 ]] && [[ -z $getopt ]]; then
getopt=$x/$y
fi
fi
done
done
echo $getopt
----------->8------------------->8------------------->8----------------
(It works because GNU getopt prints "getopt (enhanced) 1.1.4" and BSD
getopt prints "--")
Yeah, it's ugly.
--
Alessio (molok) Bolognino
Please send personal email to [EMAIL PROTECTED]
Public Key http://pgp.mit.edu:11371/pks/lookup?op=get&search=0xFE0270FB
GPG Key ID = 1024D / FE0270FB 2007-04-11
Key Fingerprint = 9AF8 9011 F271 450D 59CF 2D7D 96C9 8F2A FE02 70FB
pgp88vKa3JEhU.pgp
Description: PGP signature
_______________________________________________ pacman-dev mailing list [email protected] http://archlinux.org/mailman/listinfo/pacman-dev
