diff options
author | Tanaka Akira <akr@users.sourceforge.net> | 2000-03-25 18:04:48 +0000 |
---|---|---|
committer | Tanaka Akira <akr@users.sourceforge.net> | 2000-03-25 18:04:48 +0000 |
commit | 7e2d72fff45836860a86550e1a98c800bede1eb8 (patch) | |
tree | 5d39ca7f6745854726ffe6adbdb6682555c1cec9 | |
parent | d8f703027345170c7bc820ed7808e693dd1377d6 (diff) | |
download | zsh-7e2d72fff45836860a86550e1a98c800bede1eb8.tar.gz zsh-7e2d72fff45836860a86550e1a98c800bede1eb8.tar.xz zsh-7e2d72fff45836860a86550e1a98c800bede1eb8.zip |
zsh-workers/10242
-rw-r--r-- | Src/params.c | 14 | ||||
-rw-r--r-- | configure.in | 3 |
2 files changed, 16 insertions, 1 deletions
diff --git a/Src/params.c b/Src/params.c index d5c419daf..cdaecb199 100644 --- a/Src/params.c +++ b/Src/params.c @@ -453,6 +453,10 @@ createparamtable(void) char **new_environ, **envp, **envp2, **sigptr, **t; char buf[50], *str, *iname; int num_env, oae = opts[ALLEXPORT]; +#ifdef HAVE_UNAME + struct utsname unamebuf; + char *machinebuf; +#endif paramtab = realparamtab = newparamtable(151, "paramtab"); @@ -538,7 +542,17 @@ createparamtable(void) /* Add the standard non-special parameters */ set_pwd_env(); +#ifdef HAVE_UNAME + if(uname(&unamebuf)) setsparam("MACHTYPE", ztrdup(MACHTYPE)); + else + { + machinebuf = ztrdup(unamebuf.machine); + setsparam("MACHTYPE", machinebuf); + } + +#else setsparam("MACHTYPE", ztrdup(MACHTYPE)); +#endif setsparam("OSTYPE", ztrdup(OSTYPE)); setsparam("TTY", ztrdup(ttystrname)); setsparam("VENDOR", ztrdup(VENDOR)); diff --git a/configure.in b/configure.in index 6e5d670fe..b2617701d 100644 --- a/configure.in +++ b/configure.in @@ -826,7 +826,8 @@ AC_CHECK_FUNCS(strftime difftime gettimeofday \ mmap munmap msync \ cap_get_proc \ getrlimit \ - setlocale) + setlocale \ + uname) AC_FUNC_STRCOLL if test $ac_cv_func_setpgrp = yes; then |