(List (Com {[LIT_CHARS set]} {[LIT_CHARS -o]} {[LIT_CHARS nounset]}) (Com {[LIT_CHARS set]} {[LIT_CHARS -o]} {[LIT_CHARS errexit]}) (= scope= flags=2 words=[] bindings=[('SCRIPT_DIR', {[ComSub (Com {[LIT_CHARS dirname]} {[VarSub 0]})]})]) (= scope= flags=2 words=[] bindings=[('MAKE_OPTS', {[DQ [LIT_CHARS -j8]]})]) (= scope= flags=2 words=[] bindings=[('ARCH', {[DQ [LIT_CHARS mips32]]})]) (= scope= flags=2 words=[] bindings=[('GMP_URL', {[DQ [LIT_CHARS "http://ftp.gnu.org/gnu/gmp/gmp-5.1.3.tar.bz2"]]})]) (= scope= flags=2 words=[] bindings=[('GMP_SHA1SUM', {[DQ [LIT_CHARS b35928e2927b272711fdfbf71b7cfd5f86a6b165]]})]) (= scope= flags=2 words=[] bindings=[('MPFR_URL', {[DQ [LIT_CHARS "http://ftp.gnu.org/gnu/mpfr/mpfr-3.1.2.tar.bz2"]]})]) (= scope= flags=2 words=[] bindings=[('MPFR_SHA1SUM', {[DQ [LIT_CHARS 46d5a11a59a4e31f74f73dd70c5d57a59de2d0b4]]})]) (= scope= flags=2 words=[] bindings=[('MPC_URL', {[DQ [LIT_CHARS "http://ftp.gnu.org/gnu/mpc/mpc-1.0.2.tar.gz"]]})]) (= scope= flags=2 words=[] bindings=[('MPC_SHA1SUM', {[DQ [LIT_CHARS 5072d82ab50ec36cc8c0e320b5c377adb48abe70]]})]) (= scope= flags=2 words=[] bindings=[('GCC_URL', {[DQ [LIT_CHARS "http://ftp.gnu.org/gnu/gcc/gcc-4.9.0/gcc-4.9.0.tar.bz2"]]})]) (= scope= flags=2 words=[] bindings=[('GCC_SHA1SUM', {[DQ [LIT_CHARS fbde8eb49f2b9e6961a870887cf7337d31cd4917]]})]) (= scope= flags=2 words=[] bindings=[('BINUTILS_URL', {[DQ [LIT_CHARS "http://ftp.gnu.org/gnu/binutils/binutils-2.24.tar.bz2"]]})]) (= scope= flags=2 words=[] bindings=[('BINUTILS_SHA1SUM', {[DQ [LIT_CHARS 7ac75404ddb3c4910c7594b51ddfc76d4693debb]]})]) (= scope= flags=2 words=[] bindings=[('KERNEL_URL', {[DQ [LIT_CHARS "http://www.linux-mips.org/pub/linux/mips/kernel/v3.x/linux-3.14.2.tar.gz"]]})]) (= scope= flags=2 words=[] bindings=[('KERNEL_SHA1SUM', {[DQ [LIT_CHARS 9b094e817a7a9b7c09b5bc268e23de642c6c407a]]})]) (= scope= flags=2 words=[] bindings=[('GDB_URL', {[DQ [LIT_CHARS "http://ftp.gnu.org/gnu/gdb/gdb-7.7.1.tar.bz2"]]})]) (= scope= flags=2 words=[] bindings=[('GDB_SHA1SUM', {[DQ [LIT_CHARS 35228319f7c715074a80be42fff64c7645227a80]]})]) (= scope= flags=2 words=[] bindings=[('GLIBC_URL', {[DQ [LIT_CHARS "http://ftp.gnu.org/gnu/glibc/glibc-2.19.tar.bz2"]]})]) (= scope= flags=2 words=[] bindings=[('GLIBC_SHA1SUM', {[DQ [LIT_CHARS 382f4438a7321dc29ea1a3da8e7852d2c2b3208c]]})]) (= scope= flags=2 words=[] bindings=[('DOWNLOAD_QEMU_URL', {[DQ [LIT_CHARS "http://wiki.qemu-project.org/download/qemu-2.0.0.tar.bz2"]]})]) (= scope= flags=2 words=[] bindings=[('INSTALL_ROOT', {[ComSub (Com {[LIT_CHARS pwd]})] [LIT_CHARS /toolchain/linux_x86/mips_trusted]})]) (= scope= flags=2 words=[] bindings=[('TMP', {[ComSub (Com {[LIT_CHARS pwd]})] [LIT_CHARS /toolchain/tmp/crosstool-trusted]})]) (= scope= flags=2 words=[] bindings=[('BUILD_DIR', {[VarSub TMP] [LIT_CHARS /build]})]) (= scope= flags=2 words=[] bindings=[('JAIL_MIPS32', {[VarSub INSTALL_ROOT] [LIT_CHARS /sysroot]})]) (= scope= flags=2 words=[] bindings=[('CROSS_TARBALL', {[DQ [LIT_CHARS chromesdk_linux_mipsel]]})]) (FunctionDef Banner [] (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "######################################################################"]]}) (Com {[LIT_CHARS echo]} {[VarSub *]}) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "######################################################################"]]}) ) ) (FunctionDef SubBanner [] (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS ......................................................................]]}) (Com {[LIT_CHARS echo]} {[VarSub *]}) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS ......................................................................]]}) ) ) (FunctionDef Usage [] (List (Com {[LIT_CHARS echo]}) (Com {[LIT_CHARS echo]} {[DQ [VarSub 0][LIT_CHARS " "]]}) (Com {[LIT_CHARS echo]}) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "nacl_sdk - Build nacl toolchain and package it"]]}) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "chrome_sdk - Build chrome toolchain and package it"]]}) (Com {[LIT_CHARS echo]}) ) ) (FunctionDef DownloadOrCopy [] (List (= scope= flags=0 words=[] bindings=[('url', {[VarSub 1]})]) (= scope= flags=0 words=[] bindings=[('filename', {[DQ [VarSub TMP][LIT_CHARS /][VarSub url transform_ops=[VS_UNARY_DPOUND {[LIT_CHARS "*"] [LIT_SLASH /]}]]]})]) (= scope= flags=0 words=[] bindings=[('filetype', {[DQ [VarSub url transform_ops=[VS_UNARY_DPERCENT {[LIT_CHARS ":*"]}]]]})]) (If (Com {[LIT_OTHER "["]} {[DQ [VarSub filename]]} {[LIT_OTHER "="] [LIT_OTHER "="]} {[DQ ]} {[LIT_OTHER "]"]}) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "Unknown error occured. Aborting."]]}) (Com {[LIT_CHARS exit]} {[LIT_CHARS 1]}) ) ) (If (DBracket {B? LOGICAL_BINARY_OR {B2 BINARY_STRING_EQUAL {[DQ [VarSub filetype]]} {[DQ [LIT_CHARS http]]}} {B2 BINARY_STRING_EQUAL {[VarSub filetype]} {[DQ [LIT_CHARS https]]}}}) (If (Com {[LIT_OTHER "["]} {[LIT_OTHER "!"]} {[LIT_CHARS -f]} {[DQ [VarSub filename]]} {[LIT_OTHER "]"]}) (List (Com {[LIT_CHARS SubBanner]} {[DQ [LIT_CHARS "downloading from "][VarSub url][LIT_CHARS " -> "][VarSub filename]]}) (Com {[LIT_CHARS wget]} {[VarSub url]} {[LIT_CHARS -O]} {[VarSub filename]}) ) ) (ElseTrue) (List (Com {[LIT_CHARS SubBanner]} {[DQ [LIT_CHARS "copying from "][VarSub url]]}) (Com {[LIT_CHARS cp]} {[VarSub url]} {[VarSub filename]}) ) ) ) ) (FunctionDef DownloadOrCopyAndVerify [] (List (= scope= flags=0 words=[] bindings=[('url', {[VarSub 1]})]) (= scope= flags=0 words=[] bindings=[('checksum', {[VarSub 2]})]) (= scope= flags=0 words=[] bindings=[('filename', {[DQ [VarSub TMP][LIT_CHARS /][VarSub url transform_ops=[VS_UNARY_DPOUND {[LIT_CHARS "*"] [LIT_SLASH /]}]]]})]) (= scope= flags=0 words=[] bindings=[('filetype', {[DQ [VarSub url transform_ops=[VS_UNARY_DPERCENT {[LIT_CHARS ":*"]}]]]})]) (If (Com {[LIT_OTHER "["]} {[DQ [VarSub filename]]} {[LIT_OTHER "="] [LIT_OTHER "="]} {[DQ ]} {[LIT_OTHER "]"]}) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "Unknown error occured. Aborting."]]}) (Com {[LIT_CHARS exit]} {[LIT_CHARS 1]}) ) ) (If (DBracket {B? LOGICAL_BINARY_OR {B2 BINARY_STRING_EQUAL {[DQ [VarSub filetype]]} {[DQ [LIT_CHARS http]]}} {B2 BINARY_STRING_EQUAL {[VarSub filetype]} {[DQ [LIT_CHARS https]]}}}) (List (If (Com {[LIT_OTHER "["]} {[LIT_OTHER "!"]} {[LIT_CHARS -f]} {[DQ [VarSub filename]]} {[LIT_OTHER "]"]}) (List (Com {[LIT_CHARS SubBanner]} {[DQ [LIT_CHARS "downloading from "][VarSub url][LIT_CHARS " -> "][VarSub filename]]}) (Com {[LIT_CHARS wget]} {[VarSub url]} {[LIT_CHARS -O]} {[VarSub filename]}) ) ) (If (Com {[LIT_OTHER "["]} {[DQ [VarSub checksum]]} {[LIT_OTHER "!"] [LIT_OTHER "="]} {[DQ [LIT_CHARS nochecksum]]} {[LIT_OTHER "]"]}) (If (Com {[LIT_OTHER "["]} {[DQ [ComSub (Pipeline (Com {[LIT_CHARS sha1sum]} {[VarSub filename]}) (Com {[LIT_CHARS cut]} {[LIT_CHARS -d]} {[SQ ]} {[LIT_CHARS -f]} {[LIT_CHARS 1]}) )]]} {[LIT_OTHER "!"] [LIT_OTHER "="]} {[DQ [VarSub checksum]]} {[LIT_OTHER "]"]}) (List (Com {[LIT_CHARS echo]} {[DQ [VarSub filename][LIT_CHARS " sha1sum failed. Deleting file and aborting."]]}) (Com {[LIT_CHARS rm]} {[LIT_CHARS -f]} {[VarSub filename]}) (Com {[LIT_CHARS exit]} {[LIT_CHARS 1]}) ) ) ) ) (ElseTrue) (List (Com {[LIT_CHARS SubBanner]} {[DQ [LIT_CHARS "copying from "][VarSub url]]}) (Com {[LIT_CHARS cp]} {[VarSub url]} {[VarSub filename]}) ) ) ) ) (FunctionDef SanityCheck [] (List (Com {[LIT_CHARS Banner]} {[DQ [LIT_CHARS "Sanity Checks"]]}) (If (DBracket {B2 BINARY_STRING_NOT_EQUAL {[ComSub (Com {[LIT_CHARS basename]} {[ComSub (Com {[LIT_CHARS pwd]})]})]} {[DQ [LIT_CHARS native_client]]}}) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "ERROR: run this script from the native_client/ dir"]]}) (Com {[LIT_CHARS exit]} {[LIT_CHARS -1]}) ) ) (If (Pipeline! (Com {[LIT_CHARS mkdir]} {[LIT_CHARS -p]} {[DQ [VarSub INSTALL_ROOT]]}) ) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "ERROR: "][VarSub INSTALL_ROOT][LIT_CHARS " can't be created."]]}) (Com {[LIT_CHARS exit]} {[LIT_CHARS -1]}) ) ) (For tool [{[LIT_CHARS wget]}]) (If (Pipeline! (Com {[LIT_CHARS which]} {[VarSub tool]}) ) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "Required binary "][VarSub tool][LIT_CHARS " not found."]]}) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS Exiting.]]}) (Com {[LIT_CHARS exit]} {[LIT_CHARS 1]}) ) ) ) ) ) (FunctionDef ClearInstallDir [] (List (Com {[LIT_CHARS Banner]} {[DQ [LIT_CHARS "clearing dirs in "][VarSub INSTALL_ROOT]]}) (Com {[LIT_CHARS rm]} {[LIT_CHARS -rf]} {[VarSub INSTALL_ROOT] [LIT_CHARS /] [LIT_OTHER "*"]}) (Com {[LIT_CHARS mkdir]} {[LIT_CHARS -p]} {[VarSub JAIL_MIPS32]}) ) ) (FunctionDef ClearBuildDir [] (List (Com {[LIT_CHARS Banner]} {[DQ [LIT_CHARS "clearing dirs in "][VarSub BUILD_DIR]]}) (Com {[LIT_CHARS rm]} {[LIT_CHARS -rf]} {[VarSub BUILD_DIR] [LIT_CHARS /] [LIT_OTHER "*"]}) ) ) (FunctionDef CreateTarBall [] (List (= scope= flags=0 words=[] bindings=[('tarball', {[VarSub 1]})]) (Com {[LIT_CHARS Banner]} {[DQ [LIT_CHARS "creating tar ball "][VarSub tarball]]}) (Com {[LIT_CHARS tar]} {[LIT_CHARS cfz]} {[VarSub tarball] [LIT_CHARS .tgz]} {[LIT_CHARS -C]} {[VarSub INSTALL_ROOT]} {[LIT_CHARS .]}) ) ) (FunctionDef DownloadOrCopyAndInstallToolchain [] (List (Com {[LIT_CHARS Banner]} {[DQ [LIT_CHARS "Installing toolchain"]]}) (= scope= flags=0 words=[] bindings=[('tarball', {[DQ [VarSub TMP][LIT_CHARS /][VarSub GCC_URL transform_ops=[VS_UNARY_DPOUND {[LIT_CHARS "*"] [LIT_SLASH /]}]]]})]) (Com {[LIT_CHARS DownloadOrCopyAndVerify]} {[VarSub GCC_URL]} {[VarSub GCC_SHA1SUM]}) (Com {[LIT_CHARS SubBanner]} {[DQ [LIT_CHARS "extracting from "][VarSub tarball]]}) (Com {[LIT_CHARS tar]} {[LIT_CHARS jxf]} {[VarSub tarball]} {[LIT_CHARS -C]} {[VarSub TMP]}) (Com {[LIT_CHARS pushd]} {[VarSub TMP] [LIT_CHARS /gcc-] [LIT_OTHER "*"]}) (= scope= flags=0 words=[] bindings=[('tarball', {[DQ [VarSub TMP][LIT_CHARS /][VarSub GMP_URL transform_ops=[VS_UNARY_DPOUND {[LIT_CHARS "*"] [LIT_SLASH /]}]]]})]) (Com {[LIT_CHARS DownloadOrCopyAndVerify]} {[VarSub GMP_URL]} {[VarSub GMP_SHA1SUM]}) (Com {[LIT_CHARS SubBanner]} {[DQ [LIT_CHARS "extracting from "][VarSub tarball]]}) (Com {[LIT_CHARS tar]} {[LIT_CHARS jxf]} {[VarSub tarball]}) (= scope= flags=0 words=[] bindings=[('filename', {[ComSub (Pipeline (Com {[LIT_CHARS ls]}) (Com {[LIT_CHARS grep]} {[LIT_CHARS gmp] [\ LIT_ESCAPED_CHAR "\\-"]}) )]})]) (Com {[LIT_CHARS rm]} {[LIT_CHARS -f]} {[LIT_CHARS gmp]}) (Com {[LIT_CHARS ln]} {[LIT_CHARS -s]} {[VarSub filename]} {[LIT_CHARS gmp]}) (Com {[LIT_CHARS sed]} {[LIT_CHARS -i]} {[DQ [LIT_CHARS s/m4-not-needed/m4/]]} {[LIT_CHARS gmp/configure]}) (= scope= flags=0 words=[] bindings=[('tarball', {[DQ [VarSub TMP][LIT_CHARS /][VarSub MPFR_URL transform_ops=[VS_UNARY_DPOUND {[LIT_CHARS "*"] [LIT_SLASH /]}]]]})]) (Com {[LIT_CHARS DownloadOrCopyAndVerify]} {[VarSub MPFR_URL]} {[VarSub MPFR_SHA1SUM]}) (Com {[LIT_CHARS SubBanner]} {[DQ [LIT_CHARS "extracting from "][VarSub tarball]]}) (Com {[LIT_CHARS tar]} {[LIT_CHARS jxf]} {[VarSub tarball]}) (= scope= flags=0 words=[] bindings=[('filename', {[ComSub (Pipeline (Com {[LIT_CHARS ls]}) (Com {[LIT_CHARS grep]} {[LIT_CHARS mpfr] [\ LIT_ESCAPED_CHAR "\\-"]}) )]})]) (Com {[LIT_CHARS rm]} {[LIT_CHARS -f]} {[LIT_CHARS mpfr]}) (Com {[LIT_CHARS ln]} {[LIT_CHARS -s]} {[VarSub filename]} {[LIT_CHARS mpfr]}) (= scope= flags=0 words=[] bindings=[('tarball', {[DQ [VarSub TMP][LIT_CHARS /][VarSub MPC_URL transform_ops=[VS_UNARY_DPOUND {[LIT_CHARS "*"] [LIT_SLASH /]}]]]})]) (Com {[LIT_CHARS DownloadOrCopyAndVerify]} {[VarSub MPC_URL]} {[VarSub MPC_SHA1SUM]}) (Com {[LIT_CHARS SubBanner]} {[DQ [LIT_CHARS "extracting from "][VarSub tarball]]}) (Com {[LIT_CHARS tar]} {[LIT_CHARS zxf]} {[VarSub tarball]}) (= scope= flags=0 words=[] bindings=[('filename', {[ComSub (Pipeline (Com {[LIT_CHARS ls]}) (Com {[LIT_CHARS grep]} {[LIT_CHARS mpc] [\ LIT_ESCAPED_CHAR "\\-"]}) )]})]) (Com {[LIT_CHARS rm]} {[LIT_CHARS -f]} {[LIT_CHARS mpc]}) (Com {[LIT_CHARS ln]} {[LIT_CHARS -s]} {[VarSub filename]} {[LIT_CHARS mpc]}) (Com {[LIT_CHARS popd]}) (= scope= flags=0 words=[] bindings=[('tarball', {[DQ [VarSub TMP][LIT_CHARS /][VarSub BINUTILS_URL transform_ops=[VS_UNARY_DPOUND {[LIT_CHARS "*"] [LIT_SLASH /]}]]]})]) (Com {[LIT_CHARS DownloadOrCopyAndVerify]} {[VarSub BINUTILS_URL]} {[VarSub BINUTILS_SHA1SUM]}) (Com {[LIT_CHARS SubBanner]} {[DQ [LIT_CHARS "extracting from "][VarSub tarball]]}) (Com {[LIT_CHARS tar]} {[LIT_CHARS jxf]} {[VarSub tarball]} {[LIT_CHARS -C]} {[VarSub TMP]}) (= scope= flags=0 words=[] bindings=[('tarball', {[DQ [VarSub TMP][LIT_CHARS /][VarSub GDB_URL transform_ops=[VS_UNARY_DPOUND {[LIT_CHARS "*"] [LIT_SLASH /]}]]]})]) (Com {[LIT_CHARS DownloadOrCopyAndVerify]} {[VarSub GDB_URL]} {[VarSub GDB_SHA1SUM]}) (Com {[LIT_CHARS SubBanner]} {[DQ [LIT_CHARS "extracting from "][VarSub tarball]]}) (Com {[LIT_CHARS tar]} {[LIT_CHARS jxf]} {[VarSub tarball]} {[LIT_CHARS -C]} {[VarSub TMP]}) (= scope= flags=0 words=[] bindings=[('tarball', {[DQ [VarSub TMP][LIT_CHARS /][VarSub KERNEL_URL transform_ops=[VS_UNARY_DPOUND {[LIT_CHARS "*"] [LIT_SLASH /]}]]]})]) (Com {[LIT_CHARS DownloadOrCopyAndVerify]} {[VarSub KERNEL_URL]} {[VarSub KERNEL_SHA1SUM]}) (Com {[LIT_CHARS SubBanner]} {[DQ [LIT_CHARS "extracting from "][VarSub tarball]]}) (Com {[LIT_CHARS tar]} {[LIT_CHARS zxf]} {[VarSub tarball]} {[LIT_CHARS -C]} {[VarSub TMP]}) (= scope= flags=0 words=[] bindings=[('tarball', {[DQ [VarSub TMP][LIT_CHARS /][VarSub GLIBC_URL transform_ops=[VS_UNARY_DPOUND {[LIT_CHARS "*"] [LIT_SLASH /]}]]]})]) (Com {[LIT_CHARS DownloadOrCopyAndVerify]} {[VarSub GLIBC_URL]} {[VarSub GLIBC_SHA1SUM]}) (Com {[LIT_CHARS SubBanner]} {[DQ [LIT_CHARS "extracting from "][VarSub tarball]]}) (Com {[LIT_CHARS tar]} {[LIT_CHARS jxf]} {[VarSub tarball]} {[LIT_CHARS -C]} {[VarSub TMP]}) (Com {[LIT_CHARS Banner]} {[DQ [LIT_CHARS "Preparing the code"]]}) (= scope= flags=0 words=[] bindings=[('OLD_TEXT', {[DQ [LIT_CHARS "as_warn_where (fragp->fr_file, fragp->fr_line, msg);"]]})]) (= scope= flags=0 words=[] bindings=[('NEW_TEXT', {[DQ [LIT_CHARS "as_warn_where (fragp->fr_file, fragp->fr_line, "][\ LIT_ESCAPED_CHAR "\\\""][LIT_CHARS "%s"][\ LIT_ESCAPED_CHAR "\\\""][LIT_CHARS ", msg);"]]})]) (= scope= flags=0 words=[] bindings=[('FILE_NAME', {[DQ [VarSub TMP][LIT_CHARS /binutils-2.24/gas/config/tc-mips.c]]})]) (Com {[LIT_CHARS sed]} {[LIT_CHARS -i]} {[DQ [LIT_CHARS s/][VarSub OLD_TEXT][LIT_CHARS /][VarSub NEW_TEXT][LIT_CHARS /g]]} {[DQ [VarSub FILE_NAME]]}) (= scope= flags=1 words=[] bindings=[('PATH', {[VarSub INSTALL_ROOT] [LIT_CHARS /bin] [LIT_OTHER ":"] [VarSub PATH]})]) (Com {[LIT_CHARS Banner]} {[DQ [LIT_CHARS "Building binutils"]]}) (Com {[LIT_CHARS rm]} {[LIT_CHARS -rf]} {[VarSub BUILD_DIR] [LIT_CHARS /binutils/]}) (Com {[LIT_CHARS mkdir]} {[LIT_CHARS -p]} {[VarSub BUILD_DIR] [LIT_CHARS /binutils/]}) (Com {[LIT_CHARS pushd]} {[VarSub BUILD_DIR] [LIT_CHARS /binutils/]}) (Com {[LIT_CHARS SubBanner]} {[DQ [LIT_CHARS Configuring]]}) (Com {[VarSub TMP] [LIT_CHARS /binutils-2.24/configure]} {[LIT_CHARS --prefix] [LIT_OTHER "="] [VarSub INSTALL_ROOT]} {[LIT_CHARS --target] [LIT_OTHER "="] [LIT_CHARS mipsel-linux-gnu]} {[LIT_CHARS --with-sysroot] [LIT_OTHER "="] [VarSub JAIL_MIPS32]}) (Com {[LIT_CHARS SubBanner]} {[DQ [LIT_CHARS Make]]}) (Com {[LIT_CHARS make]} {[VarSub MAKE_OPTS]} {[LIT_CHARS all-binutils]} {[LIT_CHARS all-gas]} {[LIT_CHARS all-ld]}) (Com {[LIT_CHARS SubBanner]} {[DQ [LIT_CHARS Install]]}) (Com {[LIT_CHARS make]} {[VarSub MAKE_OPTS]} {[LIT_CHARS install-binutils]} {[LIT_CHARS install-gas]} {[LIT_CHARS install-ld]}) (Com {[LIT_CHARS popd]}) (Com {[LIT_CHARS Banner]} {[DQ [LIT_CHARS "Building GCC (initial)"]]}) (Com {[LIT_CHARS rm]} {[LIT_CHARS -rf]} {[VarSub BUILD_DIR] [LIT_CHARS /gcc/initial]}) (Com {[LIT_CHARS mkdir]} {[LIT_CHARS -p]} {[VarSub BUILD_DIR] [LIT_CHARS /gcc/initial]}) (Com {[LIT_CHARS pushd]} {[VarSub BUILD_DIR] [LIT_CHARS /gcc/initial]}) (Com {[LIT_CHARS SubBanner]} {[DQ [LIT_CHARS Configuring]]}) (Com {[VarSub TMP] [LIT_CHARS /gcc-4.9.0/configure]} {[LIT_CHARS --prefix] [LIT_OTHER "="] [VarSub INSTALL_ROOT]} {[LIT_CHARS --disable-libssp]} {[LIT_CHARS --disable-libgomp]} {[LIT_CHARS --disable-libmudflap]} {[LIT_CHARS --disable-fixed-point]} {[LIT_CHARS --disable-decimal-float]} {[LIT_CHARS --with-mips-plt]} {[LIT_CHARS --with-endian] [LIT_OTHER "="] [LIT_CHARS little]} {[LIT_CHARS --with-arch] [LIT_OTHER "="] [VarSub ARCH]} {[LIT_CHARS --enable-languages] [LIT_OTHER "="] [LIT_CHARS c]} {[LIT_CHARS --with-newlib]} {[LIT_CHARS --without-headers]} {[LIT_CHARS --disable-shared]} {[LIT_CHARS --disable-threads]} {[LIT_CHARS --disable-libquadmath]} {[LIT_CHARS --disable-libatomic]} {[LIT_CHARS --target] [LIT_OTHER "="] [LIT_CHARS mipsel-linux-gnu]}) (Com {[LIT_CHARS SubBanner]} {[DQ [LIT_CHARS Make]]}) (Com {[LIT_CHARS make]} {[VarSub MAKE_OPTS]} {[LIT_CHARS all]}) (Com {[LIT_CHARS SubBanner]} {[DQ [LIT_CHARS Install]]}) (Com {[LIT_CHARS make]} {[VarSub MAKE_OPTS]} {[LIT_CHARS install]}) (Com {[LIT_CHARS popd]}) (Com {[LIT_CHARS Banner]} {[DQ [LIT_CHARS "Installing Linux kernel headers"]]}) (Com {[LIT_CHARS pushd]} {[VarSub TMP] [LIT_CHARS /linux-3.14.2]}) (Com {[LIT_CHARS make]} {[LIT_CHARS headers_install]} {[LIT_VAR_LIKE "ARCH="] [LIT_CHARS mips] =} {[LIT_VAR_LIKE "INSTALL_HDR_PATH="] [VarSub JAIL_MIPS32] [LIT_CHARS /usr] =}) (Com {[LIT_CHARS popd]}) (Com {[LIT_CHARS Banner]} {[DQ [LIT_CHARS "Building GLIBC"]]}) (Com {[LIT_CHARS rm]} {[LIT_CHARS -rf]} {[VarSub BUILD_DIR] [LIT_CHARS /glibc/final]}) (Com {[LIT_CHARS mkdir]} {[LIT_CHARS -p]} {[VarSub BUILD_DIR] [LIT_CHARS /glibc/final]}) (Com {[LIT_CHARS pushd]} {[VarSub BUILD_DIR] [LIT_CHARS /glibc/final]}) (Com {[VarSub TMP] [LIT_CHARS /glibc-2.19/configure]} {[LIT_CHARS --prefix] [LIT_OTHER "="] [LIT_CHARS /usr]} {[LIT_CHARS --enable-add-ons]} {[LIT_CHARS --host] [LIT_OTHER "="] [LIT_CHARS mipsel-linux-gnu]} {[LIT_CHARS --disable-profile]} {[LIT_CHARS --without-gd]} {[LIT_CHARS --without-cvs]} {[LIT_CHARS --build] [LIT_OTHER "="] [LIT_CHARS i686-pc-linux-gnu]} {[LIT_CHARS --with-headers] [LIT_OTHER "="] [VarSub JAIL_MIPS32] [LIT_CHARS /usr/include]} more_env=[('BUILD_CC', {[LIT_CHARS gcc]}), ('AR', {[LIT_CHARS mipsel-linux-gnu-ar]}), ('RANLIB', {[LIT_CHARS mipsel-linux-gnu-ranlibi]}), ('CC', {[LIT_CHARS mipsel-linux-gnu-gcc]}), ('CXX', {[LIT_CHARS mipsel-linux-gnu-g] [LIT_OTHER "+"] [LIT_OTHER "+"]})] ) (Com {[LIT_CHARS SubBanner]} {[DQ [LIT_CHARS Make]]}) (Com {[LIT_CHARS make]} {[VarSub MAKE_OPTS]} {[LIT_CHARS all]}) (Com {[LIT_CHARS SubBanner]} {[DQ [LIT_CHARS Install]]}) (Com {[LIT_CHARS make]} {[VarSub MAKE_OPTS]} {[LIT_CHARS install]} {[LIT_VAR_LIKE "install_root="] [VarSub JAIL_MIPS32] =}) (Com {[LIT_CHARS popd]}) (Com {[LIT_CHARS Banner]} {[DQ [LIT_CHARS "Building GCC (final)"]]}) (Com {[LIT_CHARS rm]} {[LIT_CHARS -rf]} {[VarSub BUILD_DIR] [LIT_CHARS /gcc/final]}) (Com {[LIT_CHARS mkdir]} {[LIT_CHARS -p]} {[VarSub BUILD_DIR] [LIT_CHARS /gcc/final]}) (Com {[LIT_CHARS pushd]} {[VarSub BUILD_DIR] [LIT_CHARS /gcc/final]}) (Com {[VarSub TMP] [LIT_CHARS /gcc-4.9.0/configure]} {[LIT_CHARS --prefix] [LIT_OTHER "="] [VarSub INSTALL_ROOT]} {[LIT_CHARS --disable-libssp]} {[LIT_CHARS --disable-libgomp]} {[LIT_CHARS --disable-libmudflap]} {[LIT_CHARS --disable-fixed-point]} {[LIT_CHARS --disable-decimal-float]} {[LIT_CHARS --with-mips-plt]} {[LIT_CHARS --with-endian] [LIT_OTHER "="] [LIT_CHARS little]} {[LIT_CHARS --with-arch] [LIT_OTHER "="] [VarSub ARCH]} {[LIT_CHARS --target] [LIT_OTHER "="] [LIT_CHARS mipsel-linux-gnu]} {[LIT_CHARS --enable-__cxa_atexit]} {[LIT_CHARS --enable-languages] [LIT_OTHER "="] [LIT_CHARS c] [LIT_COMMA ","] [LIT_CHARS c] [LIT_OTHER "+"] [LIT_OTHER "+"]} {[LIT_CHARS --with-sysroot] [LIT_OTHER "="] [VarSub JAIL_MIPS32]}) (Com {[LIT_CHARS SubBanner]} {[DQ [LIT_CHARS Make]]}) (Com {[LIT_CHARS make]} {[VarSub MAKE_OPTS]} {[LIT_CHARS all]}) (Com {[LIT_CHARS SubBanner]} {[DQ [LIT_CHARS Install]]}) (Com {[LIT_CHARS make]} {[VarSub MAKE_OPTS]} {[LIT_CHARS install]}) (Com {[LIT_CHARS popd]}) (Com {[LIT_CHARS Banner]} {[DQ [LIT_CHARS "Building GDB"]]}) (Com {[LIT_CHARS rm]} {[LIT_CHARS -rf]} {[VarSub BUILD_DIR] [LIT_CHARS /gdb/]}) (Com {[LIT_CHARS mkdir]} {[LIT_CHARS -p]} {[VarSub BUILD_DIR] [LIT_CHARS /gdb/]}) (Com {[LIT_CHARS pushd]} {[VarSub BUILD_DIR] [LIT_CHARS /gdb/]}) (Com {[VarSub TMP] [LIT_CHARS /gdb-7.7.1/configure]} {[LIT_CHARS --prefix] [LIT_OTHER "="] [VarSub INSTALL_ROOT]} {[LIT_CHARS --target] [LIT_OTHER "="] [LIT_CHARS mipsel-linux-gnu]}) (Com {[LIT_CHARS SubBanner]} {[DQ [LIT_CHARS Make]]}) (Com {[LIT_CHARS make]} {[VarSub MAKE_OPTS]} {[LIT_CHARS all-gdb]}) (Com {[LIT_CHARS SubBanner]} {[DQ [LIT_CHARS Install]]}) (Com {[LIT_CHARS make]} {[VarSub MAKE_OPTS]} {[LIT_CHARS install-gdb]}) (Com {[LIT_CHARS popd]}) ) ) (FunctionDef InstallTrustedLinkerScript [] (List (= scope= flags=0 words=[] bindings=[('trusted_ld_script', {[VarSub INSTALL_ROOT] [LIT_CHARS /ld_script_mips_trusted]})]) (Com {[LIT_CHARS Banner]} {[DQ [LIT_CHARS "installing trusted linker script to "][VarSub trusted_ld_script]]}) (Pipeline (Com {[VarSub INSTALL_ROOT] [LIT_CHARS /bin/mipsel-linux-gnu-ld]} {[LIT_CHARS --verbose]}) (Com {[LIT_CHARS grep]} {[LIT_CHARS -A]} {[LIT_CHARS 10000]} {[DQ [LIT_CHARS "======="]]}) (Com {[LIT_CHARS grep]} {[LIT_CHARS -v]} {[DQ [LIT_CHARS "======="]]}) (Com {[LIT_CHARS sed]} {[LIT_CHARS -e]} {[SQ ]} < (FilenameRedirectNode filename={[VarSub trusted_ld_script]} "> 1), > ) ) ) ) (= scope= flags=2 words=[] bindings=[('REPO_DEBIAN', {[LIT_CHARS http] [LIT_OTHER ":"] [LIT_CHARS //ftp.debian.org/debian]})]) (= scope= flags=2 words=[] bindings=[('MIPS32_PACKAGES', {[VarSub REPO_DEBIAN] [LIT_CHARS /dists/wheezy/main/binary-mipsel/Packages.bz2]})]) (= scope= flags=2 words=[] bindings=[('BASE_PACKAGELIST_MIPS32', {[VarSub SCRIPT_DIR] [LIT_CHARS /packagelist.wheezy.mipsel.base]})]) (= scope= flags=2 words=[] bindings=[('EXTRA_PACKAGELIST_MIPS32', {[VarSub SCRIPT_DIR] [LIT_CHARS /packagelist.wheezy.mipsel.extra]})]) (= scope= flags=2 words=[] bindings=[('TMP_BASE_PKG_MIPS32', {[VarSub TMP] [LIT_CHARS /packagelist.generated.wheezy.mipsel.base]})]) (= scope= flags=2 words=[] bindings=[('TMP_EXTRA_PKG_MIPS32', {[VarSub TMP] [LIT_CHARS /packagelist.generated.wheezy.mipsel.extra]})]) (FunctionDef GeneratePackageLists [] (List (= scope= flags=0 words=[] bindings=[('sdk_target', {[VarSub 1]})]) (= scope= flags=0 words=[] bindings=[('packages', {[SQ ]})]) (= scope= flags=0 words=[] bindings=[('TMP_PACKAGELIST', {[SQ ]})]) (Com {[LIT_CHARS Banner]} {[DQ [LIT_CHARS "generating "][VarSub sdk_target][LIT_CHARS " package lists for mips32"]]}) (Com {[LIT_CHARS rm]} {[LIT_CHARS -f]} {[VarSub TMP] [LIT_CHARS /Packages.bz2]}) (Com {[LIT_CHARS DownloadOrCopy]} {[VarSub MIPS32_PACKAGES]}) (Pipeline (Com {[LIT_CHARS bzcat]} {[VarSub TMP] [LIT_CHARS /Packages.bz2]}) (Com {[LIT_CHARS egrep]} {[SQ ]} < (FilenameRedirectNode filename={[VarSub TMP] [LIT_CHARS /Packages_mipsel]} "> 1), > ) ) (If (Com {[LIT_OTHER "["]} {[VarSub sdk_target]} {[LIT_OTHER "="] [LIT_OTHER "="]} {[DQ [LIT_CHARS nacl_sdk]]} {[LIT_OTHER "]"]}) (List (Com {[LIT_CHARS echo]} {[LIT_CHARS -n]} < (FilenameRedirectNode filename={[VarSub TMP_BASE_PKG_MIPS32]} "> 1), > ) (= scope= flags=0 words=[] bindings=[('TMP_PACKAGELIST', {[VarSub TMP_BASE_PKG_MIPS32]})]) (= scope= flags=0 words=[] bindings=[('packages', {[ComSub (Com {[LIT_CHARS cat]} {[VarSub BASE_PACKAGELIST_MIPS32]})]})]) ) (Com {[LIT_OTHER "["]} {[VarSub sdk_target]} {[LIT_OTHER "="] [LIT_OTHER "="]} {[DQ [LIT_CHARS chrome_sdk]]} {[LIT_OTHER "]"]}) (List (Com {[LIT_CHARS echo]} {[LIT_CHARS -n]} < (FilenameRedirectNode filename={[VarSub TMP_EXTRA_PKG_MIPS32]} "> 1), > ) (= scope= flags=0 words=[] bindings=[('TMP_PACKAGELIST', {[VarSub TMP_EXTRA_PKG_MIPS32]})]) (= scope= flags=0 words=[] bindings=[('packages', {[ComSub (Com {[LIT_CHARS cat]} {[VarSub EXTRA_PACKAGELIST_MIPS32]})]})]) ) (ElseTrue) (List (Com {[LIT_CHARS Banner]} {[DQ [LIT_CHARS "ERROR: Packages for "][\ LIT_ESCAPED_CHAR "\\\""][VarSub sdk_taget][\ LIT_ESCAPED_CHAR "\\\""][LIT_CHARS " not defined."]]}) (Com {[LIT_CHARS exit]} {[LIT_CHARS -1]}) ) ) (For pkg [{[VarSub packages]}]) (Pipeline (Com {[LIT_CHARS grep]} {[LIT_CHARS -A]} {[LIT_CHARS 1]} {[DQ [VarSub pkg][\ LIT_ESCAPED_CHAR "\\$"]]} {[VarSub TMP] [LIT_CHARS /Packages_mipsel]}) (Com {[LIT_CHARS egrep]} {[LIT_CHARS -o]} {[DQ [LIT_CHARS "pool/.*"]]} < (FilenameRedirectNode filename={[VarSub TMP_PACKAGELIST]} >"> 1), > ) ) ) ) ) (FunctionDef InstallMissingLibraries [] (List (= scope= flags=0 words=[] bindings=[('sdk_target', {[VarSub 1]})]) (= scope= flags=0 words=[] bindings=[('DEP_FILES_NEEDED_MIPS32', {[SQ ]})]) (If (Com {[LIT_OTHER "["]} {[VarSub sdk_target]} {[LIT_OTHER "="] [LIT_OTHER "="]} {[DQ [LIT_CHARS nacl_sdk]]} {[LIT_OTHER "]"]}) (= scope= flags=0 words=[] bindings=[('DEP_FILES_NEEDED_MIPS32', {[ComSub (Com {[LIT_CHARS cat]} {[VarSub TMP_BASE_PKG_MIPS32]})]})]) (Com {[LIT_OTHER "["]} {[VarSub sdk_target]} {[LIT_OTHER "="] [LIT_OTHER "="]} {[DQ [LIT_CHARS chrome_sdk]]} {[LIT_OTHER "]"]}) (= scope= flags=0 words=[] bindings=[('DEP_FILES_NEEDED_MIPS32', {[ComSub (Com {[LIT_CHARS cat]} {[VarSub TMP_EXTRA_PKG_MIPS32]})]})]) (ElseTrue) (List (Com {[LIT_CHARS Banner]} {[DQ [LIT_CHARS "ERROR: Target "][\ LIT_ESCAPED_CHAR "\\\""][VarSub sdk_taget][\ LIT_ESCAPED_CHAR "\\\""][LIT_CHARS " not defined."]]}) (Com {[LIT_CHARS exit]} {[LIT_CHARS -1]}) ) ) (For file [{[VarSub DEP_FILES_NEEDED_MIPS32]}]) (List (= scope= flags=0 words=[] bindings=[('package', {[DQ [VarSub TMP][LIT_CHARS /][VarSub file transform_ops=[VS_UNARY_DPOUND {[LIT_CHARS "*"] [LIT_SLASH /]}]]]})]) (Com {[LIT_CHARS Banner]} {[DQ [LIT_CHARS "installing "][VarSub file]]}) (Com {[LIT_CHARS DownloadOrCopy]} {[VarSub REPO_DEBIAN] [LIT_CHARS /] [VarSub file]}) (Com {[LIT_CHARS SubBanner]} {[DQ [LIT_CHARS "extracting to "][VarSub JAIL_MIPS32]]}) (Pipeline (Com {[LIT_CHARS dpkg]} {[LIT_CHARS --fsys-tarfile]} {[VarSub package]}) (Com {[LIT_CHARS tar]} {[LIT_CHARS -xvf]} {[LIT_CHARS -]} {[LIT_CHARS --exclude] [LIT_OTHER "="] [LIT_CHARS ./usr/share]} {[LIT_CHARS -C]} {[VarSub JAIL_MIPS32]}) ) ) ) ) ) (FunctionDef FixIncludes [] (List (Com {[LIT_CHARS Banner]} {[DQ [LIT_CHARS "Fixing includes"]]}) (Com {[LIT_CHARS pushd]} {[VarSub JAIL_MIPS32] [LIT_CHARS /usr/include/glib-2.0]}) (Com {[LIT_CHARS ln]} {[LIT_CHARS -s]} {[LIT_CHARS ../../lib/glib-2.0/include/glibconfig.h]} {[LIT_CHARS .]}) (Com {[LIT_CHARS popd]}) (Com {[LIT_CHARS pushd]} {[VarSub JAIL_MIPS32] [LIT_CHARS /usr/include/gtk-2.0]}) (Com {[LIT_CHARS ln]} {[LIT_CHARS -s]} {[LIT_CHARS ../../lib/gtk-2.0/include/gdkconfig.h]} {[LIT_CHARS .]}) (Com {[LIT_CHARS popd]}) (Com {[LIT_CHARS pushd]} {[VarSub JAIL_MIPS32] [LIT_CHARS /usr/include/dbus-1.0/dbus]}) (Com {[LIT_CHARS ln]} {[LIT_CHARS -s]} {[LIT_CHARS ../../../lib/dbus-1.0/include/dbus/dbus-arch-deps.h]} {[LIT_CHARS .]}) (Com {[LIT_CHARS popd]}) ) ) (FunctionDef FixLinks [] (List (Com {[LIT_CHARS Banner]} {[DQ [LIT_CHARS "Fixing links"]]}) (Com {[LIT_CHARS pushd]} {[VarSub JAIL_MIPS32] [LIT_CHARS /lib/]}) (Com {[LIT_CHARS mv]} {[LIT_CHARS mipsel-linux-gnu/] [LIT_OTHER "*"]} {[LIT_CHARS .]}) (Com {[LIT_CHARS rm]} {[LIT_CHARS -rf]} {[LIT_CHARS mipsel-linux-gnu]}) (Com {[LIT_CHARS ln]} {[LIT_CHARS -s]} {[LIT_CHARS .]} {[LIT_CHARS mipsel-linux-gnu]}) (Com {[LIT_CHARS popd]}) (Com {[LIT_CHARS pushd]} {[VarSub JAIL_MIPS32] [LIT_CHARS /usr/lib/]}) (Com {[LIT_CHARS mkdir]} {[LIT_CHARS -p]} {[LIT_CHARS pkgconfig]}) (Com {[LIT_CHARS mv]} {[LIT_CHARS mipsel-linux-gnu/pkgconfig/] [LIT_OTHER "*"]} {[LIT_CHARS pkgconfig/]}) (Com {[LIT_CHARS rm]} {[LIT_CHARS -rf]} {[LIT_CHARS mipsel-linux-gnu/pkgconfig]}) (Com {[LIT_CHARS mv]} {[LIT_CHARS mipsel-linux-gnu/] [LIT_OTHER "*"]} {[LIT_CHARS .]}) (Com {[LIT_CHARS rm]} {[LIT_CHARS -rf]} {[LIT_CHARS mipsel-linux-gnu]}) (Com {[LIT_CHARS ln]} {[LIT_CHARS -s]} {[LIT_CHARS .]} {[LIT_CHARS mipsel-linux-gnu]}) (Com {[LIT_CHARS popd]}) (Com {[LIT_CHARS pushd]} {[VarSub JAIL_MIPS32] [LIT_CHARS /usr/lib/]}) (Com {[LIT_CHARS rm]} {[LIT_CHARS -f]} {[LIT_CHARS libstdc] [LIT_OTHER "+"] [LIT_OTHER "+"] [LIT_CHARS .so] [LIT_OTHER "*"]}) (Com {[LIT_CHARS ln]} {[LIT_CHARS -s]} {[LIT_CHARS ../../../mipsel-linux-gnu/lib/libstdc] [LIT_OTHER "+"] [LIT_OTHER "+"] [LIT_CHARS .so.6.0.20]} {[LIT_CHARS .]}) (Com {[LIT_CHARS ln]} {[LIT_CHARS -s]} {[LIT_CHARS libstdc] [LIT_OTHER "+"] [LIT_OTHER "+"] [LIT_CHARS .so.6.0.20]} {[LIT_CHARS libstdc] [LIT_OTHER "+"] [LIT_OTHER "+"] [LIT_CHARS .so.6]}) (Com {[LIT_CHARS ln]} {[LIT_CHARS -s]} {[LIT_CHARS libstdc] [LIT_OTHER "+"] [LIT_OTHER "+"] [LIT_CHARS .so.6.0.20]} {[LIT_CHARS libstdc] [LIT_OTHER "+"] [LIT_OTHER "+"] [LIT_CHARS .so]}) (Com {[LIT_CHARS rm]} {[LIT_CHARS -f]} {[LIT_CHARS libgcc_s.so] [LIT_OTHER "*"]}) (Com {[LIT_CHARS ln]} {[LIT_CHARS -s]} {[LIT_CHARS ../../../mipsel-linux-gnu/lib/libgcc_s.so.1]} {[LIT_CHARS .]}) (Com {[LIT_CHARS ln]} {[LIT_CHARS -s]} {[LIT_CHARS libgcc_s.so.1]} {[LIT_CHARS libgcc_s.so]}) (Com {[LIT_CHARS popd]}) ) ) (FunctionDef FixLibs [] (List (Com {[LIT_CHARS Banner]} {[DQ [LIT_CHARS "Fixing libraries"]]}) (= scope= flags=2 words=[] bindings=[('liblist', {[DQ [LIT_CHARS "libbz2.so "][LIT_CHARS " libcom_err.so "][LIT_CHARS " libdbus-1.so "][LIT_CHARS " libexpat.so "][LIT_CHARS " libglib-2.0.so "][LIT_CHARS " libgpg-error.so "][LIT_CHARS " libkeyutils.so "][LIT_CHARS " libpamc.so "][LIT_CHARS " libpam_misc.so "][LIT_CHARS " libpam.so "][LIT_CHARS " libpci.so "][LIT_CHARS " libpcre.so "][LIT_CHARS " libpng12.so "][LIT_CHARS " libudev.so "][LIT_CHARS " libz.so"]]})]) (Com {[LIT_CHARS pushd]} {[VarSub JAIL_MIPS32] [LIT_CHARS /usr/lib/]}) (For library [{[VarSub liblist]}]) (List (Com {[LIT_CHARS rm]} {[LIT_CHARS -f]} {[VarSub library]}) (Com {[LIT_CHARS ln]} {[LIT_CHARS -s]} {[LIT_CHARS ../../lib/] [VarSub library] [LIT_CHARS .] [LIT_OTHER "["] [LIT_CHARS 0123] [LIT_OTHER "]"]} {[VarSub library]}) ) ) (Com {[LIT_CHARS popd]}) ) ) (FunctionDef BuildAndInstallQemu [] (List (= scope= flags=0 words=[] bindings=[('saved_dir', {[ComSub (Com {[LIT_CHARS pwd]})]})]) (= scope= flags=0 words=[] bindings=[('tmpdir', {[DQ [VarSub TMP][LIT_CHARS /qemu-mips.nacl]]})]) (= scope= flags=0 words=[] bindings=[('tarball', {[DQ [LIT_CHARS qemu-2.0.0.tar.bz2]]})]) (Com {[LIT_CHARS Banner]} {[DQ [LIT_CHARS "Building qemu in "][VarSub tmpdir]]}) (Com {[LIT_CHARS rm]} {[LIT_CHARS -rf]} {[VarSub tmpdir]}) (Com {[LIT_CHARS mkdir]} {[VarSub tmpdir]}) (Com {[LIT_CHARS cd]} {[VarSub tmpdir]}) (Com {[LIT_CHARS SubBanner]} {[DQ [LIT_CHARS Downloading]]}) (Com {[LIT_CHARS wget]} {[LIT_CHARS -c]} {[VarSub DOWNLOAD_QEMU_URL]}) (Com {[LIT_CHARS SubBanner]} {[DQ [LIT_CHARS Untarring]]}) (Com {[LIT_CHARS tar]} {[LIT_CHARS xf]} {[VarSub tarball]}) (Com {[LIT_CHARS cd]} {[LIT_CHARS qemu-2.0.0]}) (Com {[LIT_CHARS SubBanner]} {[DQ [LIT_CHARS Configuring]]}) (Com {[LIT_CHARS env]} {[LIT_CHARS -i]} {[LIT_VAR_LIKE "PATH="] [LIT_CHARS /usr/bin/] [LIT_OTHER ":"] [LIT_CHARS /bin] =} {[LIT_CHARS ./configure]} {[LIT_CHARS --disable-system]} {[LIT_CHARS --enable-linux-user]} {[LIT_CHARS --disable-bsd-user]} {[LIT_CHARS --target-list] [LIT_OTHER "="] [LIT_CHARS mipsel-linux-user]} {[LIT_CHARS --disable-sdl]} {[LIT_CHARS --disable-linux-aio]}) (Com {[LIT_CHARS SubBanner]} {[DQ [LIT_CHARS Make]]}) (Com {[LIT_CHARS env]} {[LIT_CHARS -i]} {[LIT_VAR_LIKE "PATH="] [LIT_CHARS /usr/bin/] [LIT_OTHER ":"] [LIT_CHARS /bin] =} {[LIT_CHARS make]} {[LIT_VAR_LIKE "MAKE_OPTS="] [VarSub MAKE_OPTS] =}) (Com {[LIT_CHARS SubBanner]} {[DQ [LIT_CHARS Install]]}) (Com {[LIT_CHARS cp]} {[LIT_CHARS mipsel-linux-user/qemu-mipsel]} {[VarSub INSTALL_ROOT] [LIT_CHARS /qemu-mips32]}) (Com {[LIT_CHARS cd]} {[VarSub saved_dir]}) (Com {[LIT_CHARS cp]} {[LIT_CHARS tools/trusted_cross_toolchains/qemu_tool_mips32.sh]} {[VarSub INSTALL_ROOT]}) (Com {[LIT_CHARS ln]} {[LIT_CHARS -sf]} {[LIT_CHARS qemu_tool_mips32.sh]} {[VarSub INSTALL_ROOT] [LIT_CHARS /run_under_qemu_mips32]}) ) ) (If (DBracket {B2 BINARY_INT_EQ {[VarSub #]} {[LIT_CHARS 0]}}) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "you must specify a mode on the commandline:"]]}) (Com {[LIT_CHARS echo]}) (Com {[LIT_CHARS Usage]}) (Com {[LIT_CHARS exit]} {[LIT_CHARS -1]}) ) (DBracket {B? LOGICAL_BINARY_OR {B2 BINARY_STRING_EQUAL {[VarSub 1]} {[DQ [LIT_CHARS nacl_sdk]]}} {B2 BINARY_STRING_EQUAL {[VarSub 1]} {[DQ [LIT_CHARS chrome_sdk]]}}}) (List (Com {[LIT_CHARS mkdir]} {[LIT_CHARS -p]} {[VarSub TMP]}) (Com {[LIT_CHARS SanityCheck]}) (Com {[LIT_CHARS ClearInstallDir]}) (Com {[LIT_CHARS ClearBuildDir]}) (Com {[LIT_CHARS DownloadOrCopyAndInstallToolchain]}) (Com {[LIT_CHARS GeneratePackageLists]} {[VarSub 1]}) (Com {[LIT_CHARS InstallMissingLibraries]} {[VarSub 1]}) (Com {[LIT_CHARS FixLinks]}) (If (DBracket {B2 BINARY_STRING_EQUAL {[VarSub 1]} {[DQ [LIT_CHARS nacl_sdk]]}}) (List (Com {[LIT_CHARS InstallTrustedLinkerScript]}) (Com {[LIT_CHARS BuildAndInstallQemu]}) (Com {[LIT_CHARS CreateTarBall]} {[VarSub 1]}) ) (ElseTrue) (List (Com {[LIT_CHARS FixLibs]}) (Com {[LIT_CHARS FixIncludes]}) (Com {[LIT_CHARS CreateTarBall]} {[VarSub CROSS_TARBALL]}) ) ) ) (ElseTrue) (List (Com {[LIT_CHARS Usage]}) (Com {[LIT_CHARS exit]} {[LIT_CHARS -1]}) ) ) )