Add cases for uname() for all known platforms
After what QEMU linux-user says about those. Not sure what to do for ARM. I used the lowest emulated CPU in QEMU.
This commit is contained in:
parent
2692aea576
commit
3501a97d9b
@ -12,6 +12,7 @@
|
||||
#include <unistd.h>
|
||||
|
||||
#include <OS.h>
|
||||
#include <ByteOrder.h>
|
||||
|
||||
#include <errno_private.h>
|
||||
#include <system_revision.h>
|
||||
@ -58,7 +59,42 @@ uname(struct utsname *info)
|
||||
case B_CPU_x86_64:
|
||||
platform = "x86_64";
|
||||
break;
|
||||
default: //TODO:add others
|
||||
case B_CPU_PPC:
|
||||
platform = "ppc";
|
||||
break;
|
||||
case B_CPU_PPC_64:
|
||||
platform = "ppc64";
|
||||
break;
|
||||
case B_CPU_M68K:
|
||||
platform = "m68k";
|
||||
break;
|
||||
case B_CPU_ARM:
|
||||
/* The minimal ARM version emulated by QEMU
|
||||
* XXX: use armv6 (raspberry Pi)?
|
||||
* XXX: should we really use B_HOST_IS_LENDIAN here?
|
||||
* XXX: use real cpu version as on Linux?
|
||||
* cf. http://git.qemu.org/?p=qemu.git;a=blob;f=linux-user/uname.c
|
||||
*/
|
||||
#if B_HOST_IS_LENDIAN
|
||||
platform = "armv5tel";
|
||||
#else
|
||||
platform = "armv5teb";
|
||||
#endif
|
||||
break;
|
||||
case B_CPU_ARM_64:
|
||||
platform = "aarch64";
|
||||
break;
|
||||
case B_CPU_ALPHA:
|
||||
platform = "alpha";
|
||||
break;
|
||||
case B_CPU_MIPS:
|
||||
platform = "mips";
|
||||
break;
|
||||
case B_CPU_SH:
|
||||
platform = "sh4";
|
||||
break;
|
||||
case B_CPU_UNKNOWN:
|
||||
default:
|
||||
platform = "unknown";
|
||||
break;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user