[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Scheme-reports] Features
Look at the table in http://en.wikipedia.org/wiki/Uname
"OS or kernel name (-s)" is utsname.sysname and "Machine (-m)" is
From looking at the source code to uname:
http://git.savannah.gnu.org/cgit/coreutils.git/tree/src/uname.c the "OS
name (-o)" is a define -- it is used at the bottom of uname.c. I think
that it is defined by autoconf.
Based on this information, I am doing the following. I add
utsname.sysname and utsname.machine to features after fixing them up.
Fixing them up consists of lowercasing them and converting '/' and '_'
If someone has a better solution, I am happy to use it.
On 11/3/2013 9:48 PM, Michael Montague wrote:
> On 11/3/2013 8:41 PM, John Cowan wrote:
>> Michael Montague scripsit:
>>> R7RS lists i386, x86-64, and gnu-linux as possible
>>> features. Presumably, i386 should be a feature for the 32 bit version,
>>> and x86-64 for the 64 bit version.
>> That's exactly the Right Thing.
> So I need to map i686 to i386 for the Debian 32 bit on VirtualBox
> case. Does Debian 32 bit ever return i586 or i486? Hopefully, all of
> the different Linux distributions are the same -- I have not bothered
> to dive into the source for uname to try to figure out the
> possibilities. What happens on FreeBSD? Solaris? Darwin? ...
>>> I can make Linux lowercase and easily check for Linux and change it to
>>> gnu-linux, but I am leery of doing that.
>> Why are you leary? That's the intention.
> Does every unix variant need to be special cased?
>>> In order for features to be useful across implementations, the symbols
>>> must be exactly the same.
>> Which is exactly why you should do it.
> Agreed. But based on Debian, there does not seem to be a
> straightforward way of doing it: using uname, an implementation needs
> to change Linux to gnu-linux, change i686 to i386, and change x86_64
> to x86-64. What are the special cases for the rest of the common unix
> How does Chibi handle this? It supports a bunch of different systems.
Scheme-reports mailing list