ADDED build/fake-bin/uname Index: build/fake-bin/uname ================================================================== --- /dev/null +++ build/fake-bin/uname @@ -0,0 +1,99 @@ +#! /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@ *$@@' Index: build/make-kit-crosscompile ================================================================== --- build/make-kit-crosscompile +++ build/make-kit-crosscompile @@ -1,14 +1,14 @@ -#! /bin/sh +#! /bin/bash if [ -z "${CROSS}" ]; then echo 'Error: Environment variable CROSS is empty/unset. Aborting.' >&2 exit 1 fi -PATH="${PATH}:${HOME}/root/cross-compilers/${CROSS}/bin" +PATH="$(pwd)/build/fake-bin:${HOME}/root/cross-compilers/${CROSS}/${CROSS}/bin:${PATH}:${HOME}/root/cross-compilers/${CROSS}/bin" AR="${CROSS}-ar" CC="${CROSS}-gcc ${CC_ADD}" CXX="${CROSS}-g++ ${CC_ADD}" RANLIB="${CROSS}-ranlib" STRIP="${CROSS}-strip" ADDED build/make-kit-freebsd-amd64 Index: build/make-kit-freebsd-amd64 ================================================================== --- /dev/null +++ build/make-kit-freebsd-amd64 @@ -0,0 +1,6 @@ +#! /bin/sh + +CROSS="x86_64-unknown-freebsd8" +export CROSS + +./build/make-kit-crosscompile "$@" --enable-64bit ADDED build/make-kit-netbsd-amd64 Index: build/make-kit-netbsd-amd64 ================================================================== --- /dev/null +++ build/make-kit-netbsd-amd64 @@ -0,0 +1,6 @@ +#! /bin/sh + +CROSS="x86_64-unknown-netbsd5" +export CROSS + +./build/make-kit-crosscompile "$@" --enable-64bit ADDED build/make-kit-netbsd-i386 Index: build/make-kit-netbsd-i386 ================================================================== --- /dev/null +++ build/make-kit-netbsd-i386 @@ -0,0 +1,7 @@ +#! /bin/sh + +CROSS="x86_64-unknown-netbsd5" +CC_ADD="-m32" +export CROSS CC_ADD + +./build/make-kit-crosscompile "$@"