Chromium Code Reviews| 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 case $1 in |
|
jvoung (off chromium)
2014/09/19 16:29:02
local arch?
Derek Schuff
2014/09/19 16:39:48
Done.
| |
| 1990 echo "${INSTALL_TRANSLATOR}"/${arch} | 1991 i686) arch=x86-32 ;; |
| 1992 x86_64) arch=x86-64 ;; | |
| 1993 armv7) arch=arm ;; | |
| 1994 default) arch=$1 ;; | |
| 1995 esac | |
| 1996 echo "${INSTALL_TRANSLATOR}"/translator/${arch} | |
| 1991 } | 1997 } |
| 1992 | 1998 |
| 1993 ### Sandboxed version of gold. | 1999 ### Sandboxed version of gold. |
| 1994 | 2000 |
| 1995 #+------------------------------------------------------------------------- | 2001 #+------------------------------------------------------------------------- |
| 1996 #+ binutils-gold-sb - Build and install gold (sandboxed) | 2002 #+ binutils-gold-sb - Build and install gold (sandboxed) |
| 1997 #+ This is the replacement for the old | 2003 #+ This is the replacement for the old |
| 1998 #+ final sandboxed linker which was bfd based. | 2004 #+ final sandboxed linker which was bfd based. |
| 1999 #+ It has nothing to do with the bitcode linker | 2005 #+ It has nothing to do with the bitcode linker |
| 2000 #+ which is also gold based. | 2006 #+ which is also gold based. |
| (...skipping 1367 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 3368 | 3374 |
| 3369 if [ "$(type -t $1)" != "function" ]; then | 3375 if [ "$(type -t $1)" != "function" ]; then |
| 3370 #Usage | 3376 #Usage |
| 3371 echo "ERROR: unknown function '$1'." >&2 | 3377 echo "ERROR: unknown function '$1'." >&2 |
| 3372 echo "For help, try:" | 3378 echo "For help, try:" |
| 3373 echo " $0 help" | 3379 echo " $0 help" |
| 3374 exit 1 | 3380 exit 1 |
| 3375 fi | 3381 fi |
| 3376 | 3382 |
| 3377 "$@" | 3383 "$@" |
| OLD | NEW |