Artifact 239d77eb58ff0b9328f4419e85a4600a2acec1c8:
- Executable file
build/fake-bin/uname
— part of check-in
[8efaf47298]
at
2011-08-03 19:53:24
on branch trunk
— Added more cross-compilers
Updated cross-compiling to use a fake "uname" to deal with Tcl's broken-ness with respect to cross-compiling (user: rkeene, size: 1705) [annotate] [blame] [check-ins using]
#! /bin/bash if [ "$1" == "--fake" ]; then echo "true" exit 0 fi if [ -z "${CROSS}" ]; then # If not cross compiling, revert to system uname while [ "$(uname --fake 2>/dev/null)" == "true" -a -n "${PATH}" ]; do PATH="$(echo "${PATH}" | /usr/bin/sed 's@^[^:]*$@@;s@^[^:]*:@@')" export PATH done if [ -z "${PATH}" ]; then exit 1 fi exec uname "$@" fi CROSS="$(echo "${CROSS}" | sed 's@-*$@@')" # Determine release information case "${CROSS}" in *-hpux11*) sysname="HP-UX" sysrelease="$(echo "${CROSS}" | sed 's@^.*-hpux@@')" ;; *-solaris2*) sysname="SunOS" sysrelease="$(echo "${CROSS}" | sed 's@^.*-solaris@@;s@^2@5@')" ;; *-linux*) sysname="Linux" sysrelease="2.6.5" ;; *-netbsd*) sysname="NetBSD" sysrelease="$(echo "${CROSS}" | sed 's@^.*-netbsd@@;s@$@.0@')" ;; *-freebsd*) sysname="FreeBSD" sysrelease="$(echo "${CROSS}" | sed 's@^.*-freebsd@@;s@$@.0-RELEASE@')" ;; esac # Determine machine information case "${CROSS}" in hppa64-*-hpux*) sysmachine="9000/859" ;; i386-*-solaris*) sysmachine="i86pc" ;; sparc-*-solaris*) sysmachine="sun4u" ;; x86_64-*) sysmachine="x86_64" ;; i?86-*) sysmachine="i686" ;; ia64-*) sysmachine="ia64" ;; esac for arg in $(echo "$@" | sed 's@.@ & @g'); do case "${arg}" in -) continue ;; r) retval="${retval} ${sysrelease}" ;; s) retval="${retval} ${sysname}" ;; m) retval="${retval} ${sysmachine}" ;; p) # XXX retval="${retval} ${syscpu}" ;; n) retval="${retval} $(hostname)" ;; a) retval="${sysname} $(hostname) ${sysrelease} ${sysversion} ${sysmachine} ${syscpu}" ;; esac done echo "${retval}" | sed 's@^ *@@;s@ *$@@'