James Carlson wrote:
> Roland Mainz writes:
> > Neither /usr/xpg4/bin/ nor /usr/xpg6/bin/ contain a "uname" variant so I
> > assume there is no standard, right ?
>
> No, you can't assume that.
>
> The standards-conforming paths on Solaris are (roughly):
>
> /usr/ccs/bin:/usr/bin:$CCPATH (SVID3, XPG3)
> /usr/xpg4/bin:/usr/ccs/bin:/usr/bin:$CCPATH (POSIX.2, XPG4, SUSv2)
> /usr/xpg6/bin:/usr/xpg4/bin:/usr/ccs/bin:/usr/bin:$CCPATH
> (POSIX.1-2001, SUSv3)
>
> See the standards(5) man page for details. The implication is that
> binaries appear in /usr/xpg[46]/bin/ only when we have a conflict
> between traditional Solaris (or SunOS) behavior and what the standards
> require. (Current policy is that the conflict must be irreconcilable;
> meaning that compatible changes, such as new options, don't count.)
>
> In other words, if a binary appears there, then you can assume that
> it's governed by a standard. If it doesn't appear there, then you
> can't assume anything.
Oh... fun... ;-/
> But assuming is just never necessary on Solaris. Instead, use the
> documentation. For uname(1), it says:
>
> | Interface Stability | Standard |
>
> This means that it's a fundamental component of all of the above
> standards.
Thanks for the explanation... :-)
Mhhh... would it be a good idea to make a standalone wrapper (e.g. |int
main(int ac, char **av, char **env) { return b_uname(ac, av, env); }|)
around the ksh93 builtin and stuff it into /usr/xpg4/bin/ ? That may be
a cheap way to get a POSIX-conformant "uname" into that directory... :-)
----
Bye,
Roland
--
__ . . __
(o.\ \/ /.o) roland.mainz at nrubsig.org
\__\/\/__/ MPEG specialist, C&&JAVA&&Sun&&Unix programmer
/O /==\ O\ TEL +49 641 7950090
(;O/ \/ \O;)