| OLD | NEW |
| 1 #!/bin/bash | 1 #!/bin/bash |
| 2 # Copyright (c) 2012 The Native Client Authors. All rights reserved. | 2 # Copyright (c) 2012 The Native Client Authors. All rights reserved. |
| 3 # Use of this source code is governed by a BSD-style license that can be | 3 # Use of this source code is governed by a BSD-style license that can be |
| 4 # found in the LICENSE file. | 4 # found in the LICENSE file. |
| 5 # | 5 # |
| 6 #@ PNaCl toolchain build script | 6 #@ PNaCl toolchain build script |
| 7 #@------------------------------------------------------------------- | 7 #@------------------------------------------------------------------- |
| 8 #@ This script builds the ARM and PNaCl untrusted toolchains. | 8 #@ This script builds the ARM and PNaCl untrusted toolchains. |
| 9 #@ It MUST be run from the native_client/ directory. | 9 #@ It MUST be run from the native_client/ directory. |
| 10 ###################################################################### | 10 ###################################################################### |
| (...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 125 | 125 |
| 126 # PNaCl toolchain installation directories (absolute paths) | 126 # PNaCl toolchain installation directories (absolute paths) |
| 127 readonly INSTALL_ROOT="${TOOLCHAIN_BASE}/pnacl_newlib" | 127 readonly INSTALL_ROOT="${TOOLCHAIN_BASE}/pnacl_newlib" |
| 128 readonly INSTALL_BIN="${INSTALL_ROOT}/bin" | 128 readonly INSTALL_BIN="${INSTALL_ROOT}/bin" |
| 129 | 129 |
| 130 # Bitcode lib directories (including static bitcode libs) | 130 # Bitcode lib directories (including static bitcode libs) |
| 131 INSTALL_LIB="${INSTALL_ROOT}/lib" | 131 INSTALL_LIB="${INSTALL_ROOT}/lib" |
| 132 | 132 |
| 133 # Native nacl lib directories | 133 # Native nacl lib directories |
| 134 # The pattern `${INSTALL_LIB_NATIVE}${arch}' is used in many places. | 134 # The pattern `${INSTALL_LIB_NATIVE}${arch}' is used in many places. |
| 135 readonly INSTALL_LIB_NATIVE="${INSTALL_ROOT}/lib-" | 135 readonly INSTALL_LIB_NATIVE="${INSTALL_ROOT}/translator/" |
| 136 readonly INSTALL_LIB_ARM="${INSTALL_LIB_NATIVE}arm" | 136 readonly INSTALL_LIB_ARM="${INSTALL_LIB_NATIVE}arm/lib" |
| 137 readonly INSTALL_LIB_X8632="${INSTALL_LIB_NATIVE}x86-32" | 137 readonly INSTALL_LIB_X8632="${INSTALL_LIB_NATIVE}x86-32/lib" |
| 138 readonly INSTALL_LIB_X8664="${INSTALL_LIB_NATIVE}x86-64" | 138 readonly INSTALL_LIB_X8664="${INSTALL_LIB_NATIVE}x86-64/lib" |
| 139 readonly INSTALL_LIB_MIPS32="${INSTALL_LIB_NATIVE}mips32" | 139 readonly INSTALL_LIB_MIPS32="${INSTALL_LIB_NATIVE}mips32/lib" |
| 140 | 140 |
| 141 # PNaCl client-translators (sandboxed) binary locations | 141 # PNaCl client-translators (sandboxed) binary locations |
| 142 readonly INSTALL_TRANSLATOR="${TOOLCHAIN_BASE}/pnacl_translator" | 142 readonly INSTALL_TRANSLATOR="${TOOLCHAIN_BASE}/pnacl_translator" |
| 143 | 143 |
| 144 | 144 |
| 145 # The INSTALL_HOST directory has host binaries and libs which | 145 # The INSTALL_HOST directory has host binaries and libs which |
| 146 # are part of the toolchain (e.g. llvm and binutils). | 146 # are part of the toolchain (e.g. llvm and binutils). |
| 147 # There are also tools-x86 and tools-arm which have host binaries which | 147 # There are also tools-x86 and tools-arm which have host binaries which |
| 148 # are not part of the toolchain but might be useful in the SDK, e.g. | 148 # are not part of the toolchain but might be useful in the SDK, e.g. |
| 149 # arm sel_ldr and x86-hosted arm/mips validators. | 149 # arm sel_ldr and x86-hosted arm/mips validators. |
| (...skipping 401 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 551 llvm-sb universal | 551 llvm-sb universal |
| 552 binutils-gold-sb universal | 552 binutils-gold-sb universal |
| 553 if ${PNACL_PRUNE}; then | 553 if ${PNACL_PRUNE}; then |
| 554 # The universal pexes have already been translated. | 554 # The universal pexes have already been translated. |
| 555 # They don't need to stick around. | 555 # They don't need to stick around. |
| 556 rm -rf "$(GetTranslatorInstallDir universal)" | 556 rm -rf "$(GetTranslatorInstallDir universal)" |
| 557 fi | 557 fi |
| 558 fi | 558 fi |
| 559 | 559 |
| 560 # Copy native libs to translator install dir. | 560 # Copy native libs to translator install dir. |
| 561 cp -a ${INSTALL_LIB_NATIVE}* ${INSTALL_TRANSLATOR} | 561 mkdir -p ${INSTALL_TRANSLATOR}/translator |
| 562 cp -a ${INSTALL_LIB_NATIVE}* ${INSTALL_TRANSLATOR}/translator |
| 562 | 563 |
| 563 driver-install-translator | 564 driver-install-translator |
| 564 | 565 |
| 565 if ${PNACL_PRUNE}; then | 566 if ${PNACL_PRUNE}; then |
| 566 sdk-clean newlib | 567 sdk-clean newlib |
| 567 fi | 568 fi |
| 568 } | 569 } |
| 569 | 570 |
| 570 | 571 |
| 571 #+ translator-prune Remove leftover files like pexes from pnacl_translator | 572 #+ translator-prune Remove leftover files like pexes from pnacl_translator |
| (...skipping 1407 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1979 fi | 1980 fi |
| 1980 done | 1981 done |
| 1981 } | 1982 } |
| 1982 | 1983 |
| 1983 GetTranslatorBuildDir() { | 1984 GetTranslatorBuildDir() { |
| 1984 local arch="$1" | 1985 local arch="$1" |
| 1985 echo "${TC_BUILD}/translator-${arch//_/-}" | 1986 echo "${TC_BUILD}/translator-${arch//_/-}" |
| 1986 } | 1987 } |
| 1987 | 1988 |
| 1988 GetTranslatorInstallDir() { | 1989 GetTranslatorInstallDir() { |
| 1989 local arch="$1" | 1990 local arch |
| 1990 echo "${INSTALL_TRANSLATOR}"/${arch} | 1991 case $1 in |
| 1992 i686) arch=x86-32 ;; |
| 1993 x86_64) arch=x86-64 ;; |
| 1994 armv7) arch=arm ;; |
| 1995 default) arch=$1 ;; |
| 1996 esac |
| 1997 echo "${INSTALL_TRANSLATOR}"/translator/${arch} |
| 1991 } | 1998 } |
| 1992 | 1999 |
| 1993 ### Sandboxed version of gold. | 2000 ### Sandboxed version of gold. |
| 1994 | 2001 |
| 1995 #+------------------------------------------------------------------------- | 2002 #+------------------------------------------------------------------------- |
| 1996 #+ binutils-gold-sb - Build and install gold (sandboxed) | 2003 #+ binutils-gold-sb - Build and install gold (sandboxed) |
| 1997 #+ This is the replacement for the old | 2004 #+ This is the replacement for the old |
| 1998 #+ final sandboxed linker which was bfd based. | 2005 #+ final sandboxed linker which was bfd based. |
| 1999 #+ It has nothing to do with the bitcode linker | 2006 #+ It has nothing to do with the bitcode linker |
| 2000 #+ which is also gold based. | 2007 #+ which is also gold based. |
| (...skipping 1367 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3368 | 3375 |
| 3369 if [ "$(type -t $1)" != "function" ]; then | 3376 if [ "$(type -t $1)" != "function" ]; then |
| 3370 #Usage | 3377 #Usage |
| 3371 echo "ERROR: unknown function '$1'." >&2 | 3378 echo "ERROR: unknown function '$1'." >&2 |
| 3372 echo "For help, try:" | 3379 echo "For help, try:" |
| 3373 echo " $0 help" | 3380 echo " $0 help" |
| 3374 exit 1 | 3381 exit 1 |
| 3375 fi | 3382 fi |
| 3376 | 3383 |
| 3377 "$@" | 3384 "$@" |
| OLD | NEW |