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 286 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 297 | 297 |
| 298 # llvm-sb-configure - Configure llvm tools (sandboxed) | 298 # llvm-sb-configure - Configure llvm tools (sandboxed) |
| 299 llvm-sb-configure() { | 299 llvm-sb-configure() { |
| 300 local arch=$1 | 300 local arch=$1 |
| 301 | 301 |
| 302 StepBanner "LLVM-SB" "Configure ${arch}" | 302 StepBanner "LLVM-SB" "Configure ${arch}" |
| 303 local srcdir="${TC_SRC_LLVM}" | 303 local srcdir="${TC_SRC_LLVM}" |
| 304 local objdir="${LLVM_SB_OBJDIR}" | 304 local objdir="${LLVM_SB_OBJDIR}" |
| 305 local installdir="$(GetTranslatorInstallDir ${arch})" | 305 local installdir="$(GetTranslatorInstallDir ${arch})" |
| 306 local targets="" | 306 local targets="" |
| 307 local subzero_targets="" | |
|
Jim Stichnoth
2015/04/17 22:28:44
Since we all love writing compact bash scripts, ho
| |
| 307 # For LLVM, "x86" brings in both i686 and x86_64. | 308 # For LLVM, "x86" brings in both i686 and x86_64. |
| 308 case ${arch} in | 309 case ${arch} in |
| 309 i686) targets=x86 ;; | 310 i686) |
| 310 x86_64) targets=x86 ;; | 311 targets=x86 |
| 311 armv7) targets=arm ;; | 312 subzero_targets=X8632 |
| 312 universal) targets=x86,arm ;; | 313 ;; |
| 314 x86_64) | |
| 315 targets=x86 | |
| 316 subzero_targets=X8664 | |
| 317 ;; | |
| 318 armv7) | |
| 319 targets=arm | |
| 320 subzero_targets=ARM32 | |
| 321 ;; | |
| 322 universal) | |
| 323 targets=x86,arm | |
| 324 subzero_targets=X8632,ARM32 | |
| 325 ;; | |
| 313 esac | 326 esac |
| 314 | 327 |
| 315 spushd "${objdir}" | 328 spushd "${objdir}" |
| 316 # TODO(jvoung): remove ac_cv_func_getrusage=no once newlib has getrusage | 329 # TODO(jvoung): remove ac_cv_func_getrusage=no once newlib has getrusage |
| 317 # in its headers. Otherwise, configure thinks that we can link in | 330 # in its headers. Otherwise, configure thinks that we can link in |
| 318 # getrusage (stub is in libnacl), but we can't actually compile code | 331 # getrusage (stub is in libnacl), but we can't actually compile code |
| 319 # that uses ::getrusage because it's not in headers: | 332 # that uses ::getrusage because it's not in headers: |
| 320 # https://code.google.com/p/nativeclient/issues/detail?id=3657 | 333 # https://code.google.com/p/nativeclient/issues/detail?id=3657 |
| 321 # Similar with getrlimit/setrlimit where struct rlimit isn't defined. | 334 # Similar with getrlimit/setrlimit where struct rlimit isn't defined. |
| 322 RunWithLog \ | 335 RunWithLog \ |
| 323 ${LLVM_SB_LOG_PREFIX}.configure \ | 336 ${LLVM_SB_LOG_PREFIX}.configure \ |
| 324 env -i \ | 337 env -i \ |
| 325 PATH="/usr/bin:/bin" \ | 338 PATH="/usr/bin:/bin" \ |
| 326 ${srcdir}/configure \ | 339 ${srcdir}/configure \ |
| 327 "${LLVM_SB_CONFIGURE_ENV[@]}" \ | 340 "${LLVM_SB_CONFIGURE_ENV[@]}" \ |
| 328 --prefix=${installdir} \ | 341 --prefix=${installdir} \ |
| 329 --host=nacl \ | 342 --host=nacl \ |
| 330 --enable-targets=${targets} \ | 343 --enable-targets=${targets} \ |
| 344 --enable-subzero-targets=${subzero_targets} \ | |
| 331 --disable-assertions \ | 345 --disable-assertions \ |
| 332 --enable-pic=no \ | 346 --enable-pic=no \ |
| 333 --enable-static \ | 347 --enable-static \ |
| 334 --enable-shared=no \ | 348 --enable-shared=no \ |
| 335 --disable-jit \ | 349 --disable-jit \ |
| 336 --enable-optimized \ | 350 --enable-optimized \ |
| 337 --enable-libcpp \ | 351 --enable-libcpp \ |
| 338 --target=${CROSS_TARGET_ARM} \ | 352 --target=${CROSS_TARGET_ARM} \ |
| 339 llvm_cv_link_use_export_dynamic=no \ | 353 llvm_cv_link_use_export_dynamic=no \ |
| 340 ac_cv_func_getrusage=no \ | 354 ac_cv_func_getrusage=no \ |
| (...skipping 675 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1016 | 1030 |
| 1017 if [ "$(type -t $1)" != "function" ]; then | 1031 if [ "$(type -t $1)" != "function" ]; then |
| 1018 #Usage | 1032 #Usage |
| 1019 echo "ERROR: unknown function '$1'." >&2 | 1033 echo "ERROR: unknown function '$1'." >&2 |
| 1020 echo "For help, try:" | 1034 echo "For help, try:" |
| 1021 echo " $0 help" | 1035 echo " $0 help" |
| 1022 exit 1 | 1036 exit 1 |
| 1023 fi | 1037 fi |
| 1024 | 1038 |
| 1025 "$@" | 1039 "$@" |
| OLD | NEW |