mingw32: add uname()
Helped-by: Eric Sunshine <sunshine@sunshineco.com> Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
a3ddcefd97
commit
7b6aff0655
@ -2128,3 +2128,14 @@ void mingw_startup()
|
||||
/* initialize Unicode console */
|
||||
winansi_init();
|
||||
}
|
||||
|
||||
int uname(struct utsname *buf)
|
||||
{
|
||||
DWORD v = GetVersion();
|
||||
memset(buf, 0, sizeof(*buf));
|
||||
strcpy(buf->sysname, "Windows");
|
||||
sprintf(buf->release, "%u.%u", v & 0xff, (v >> 8) & 0xff);
|
||||
/* assuming NT variants only.. */
|
||||
sprintf(buf->version, "%u", (v >> 16) & 0x7fff);
|
||||
return 0;
|
||||
}
|
||||
|
@ -76,6 +76,14 @@ struct itimerval {
|
||||
};
|
||||
#define ITIMER_REAL 0
|
||||
|
||||
struct utsname {
|
||||
char sysname[16];
|
||||
char nodename[1];
|
||||
char release[16];
|
||||
char version[16];
|
||||
char machine[1];
|
||||
};
|
||||
|
||||
/*
|
||||
* sanitize preprocessor namespace polluted by Windows headers defining
|
||||
* macros which collide with git local versions
|
||||
@ -171,6 +179,7 @@ struct passwd *getpwuid(uid_t uid);
|
||||
int setitimer(int type, struct itimerval *in, struct itimerval *out);
|
||||
int sigaction(int sig, struct sigaction *in, struct sigaction *out);
|
||||
int link(const char *oldpath, const char *newpath);
|
||||
int uname(struct utsname *buf);
|
||||
|
||||
/*
|
||||
* replacements of existing functions
|
||||
|
Loading…
Reference in New Issue
Block a user