ADDED server/buildpkgs/build-all-platforms.sh Index: server/buildpkgs/build-all-platforms.sh ================================================================== --- server/buildpkgs/build-all-platforms.sh +++ server/buildpkgs/build-all-platforms.sh @@ -0,0 +1,51 @@ +#! /bin/bash + +CCROOT="${HOME}/root/cross-compilers" +SETUP_CC="${CCROOT}/setup-cc" + +for platform in i386-pc-solaris2.10@solaris2.10-ix86 i386-pc-solaris2.10,64@solaris2.10-x86_64 mipsel-unknown-linux-uclibc@linux-glibc2.0-mipsel sparc-sun-solaris2.10@solaris2.10-sparc sparc-sun-solaris2.10,64@solaris2.10-sparc64 x86_64-unknown-freebsd8@freebsd8-x86_64 x86_64-unknown-netbsd5@netbsd5-x86_64; do + cc_platform="$(echo "${platform}" | cut -f 1 -d '@')" + tcl_platform="$(echo "${platform}" | cut -f 2 -d '@')" + opts='' + setup_cc_opts='' + configure_opts='' + + if echo "${cc_platform}" | grep ',' >/dev/null; then + opts="$(echo "${cc_platform}" | cut -f 2- -d ',' | sed 's@,@ @g')" + cc_platform="$(echo "${cc_platform}" | cut -f 1 -d ',')" + fi + + case "${tcl_platform}" in + *64) + is64bit='1' + ;; + *) + is64bit='0' + ;; + esac + + for opt in $opts; do + case "${opt}" in + 64) + setup_cc_opts="${setup_cc_opts} 64" + is64bit='1' + ;; + esac + done + + if [ "${is64bit}" = '1' ]; then + configure_opts="${configure_opts} --enable-64bit" + fi + + ( + eval "$("${SETUP_CC}" "${cc_platform}" ${setup_cc_opts})" + + FORCE_PLATFORM="${tcl_platform}" + export FORCE_PLATFORM + + ./build_all.sh clean + + ./build_all.sh --host="${cc_platform}" ${configure_opts} + ) +done + Index: server/buildpkgs/common.sh ================================================================== --- server/buildpkgs/common.sh +++ server/buildpkgs/common.sh @@ -1,13 +1,29 @@ #! /bin/bash + +function setup_tcl () { + local vers envfile + + for vers in "$@"; do + envfile="${PROJROOTDIR}/platform.magic.env-8.5" + + if [ ! -f "${envfile}" ]; then + continue + fi + + source "${envfile}" + + break + done +} function setup_tcl85 () { - source "${PROJROOTDIR}/platform.magic.env-8.5" 2>/dev/null + setup_tcl 8.5 8.4 } function setup_tcl84 () { - source "${PROJROOTDIR}/platform.magic.env-8.4" 2>/dev/null + setup_tcl 8.4 8.5 } function not_platforms () { local platform