#!/bin/sh setglobal config_os = $1 setglobal config_release = $2 setglobal uname_machine = $3 setglobal uname_sysname = $[echo $config_os | sed 's/[0-9.]*$//] if test $uname_sysname != $config_os { setglobal config_release = $[echo $config_os | sed s/$uname_sysname//] } if test -r /vmunix { setglobal kernel_id = $[strings /vmunix | grep UNIX] } elif test -r /dynix { setglobal kernel_id = $[strings /dynix | grep DYNIX] } else { setglobal kernel_id = '' } setglobal kernel_release = $[echo $kernel_id | sed 's/^[^0-9.]*\([0-9.]*\).*$/\1/] if test x$[echo $config_release | sed "s/^$kernel_release//] \ != x$config_release { # The configuration release is a substring of the kernel release. setglobal uname_release = $kernel_release } elif test x$config_release != x { setglobal uname_release = $config_release } elif test x$kernel_release != x { setglobal uname_release = $kernel_release } else { setglobal uname_release = 'unknown' } setglobal kernel_version = $[echo $kernel_id | sed 's/^[^#]*#\([0-9]*\).*$/\1/] if test -n $kernel_version { setglobal uname_version = $kernel_version } else { setglobal uname_version = 'unknown' } cat << """ /* This file is generated by $0. DO NOT EDIT. This is used only by the generic uname function for systems with no real uname call. If this data is not correct, it does not matter much. */ #define UNAME_SYSNAME "$uname_sysname" #define UNAME_RELEASE "$uname_release" #define UNAME_VERSION "$uname_version" #define UNAME_MACHINE "$uname_machine" """