| OLD | NEW |
| 1 #!/bin/bash | 1 #!/bin/bash |
| 2 # Copyright (c) 2014 The Native Client Authors. All rights reserved. | 2 # Copyright (c) 2014 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 # This script is intended to be sourced. | 6 # This script is intended to be sourced. |
| 7 # It scans your packages and adds the appropriate things to the environment. | 7 # It scans your packages and adds the appropriate things to the environment. |
| 8 | 8 |
| 9 export TOOLCHAIN=@TOOLCHAIN@ | |
| 10 | |
| 11 PATH=/sbin:/usr/sbin:/bin:/usr/bin | 9 PATH=/sbin:/usr/sbin:/bin:/usr/bin |
| 12 | 10 |
| 13 LIB_DIR=lib32 | |
| 14 export SHELL=/packages/bash.${NACL_ARCH}/bash | 11 export SHELL=/packages/bash.${NACL_ARCH}/bash |
| 15 PACKAGE_LIB_DIR=lib32 | 12 |
| 16 PACKAGE_ALT_LIB_DIR=_platform_specific/i686/lib32 | 13 # PACKAGE_LIB_DIR is still used by the devenv tests |
| 17 PACKAGE_ALT_LIB_DIR2=_platform_specific/i686 | 14 # TODO(sbc): remove this and move it into devenv test code somehow |
| 18 PACKAGE_ALT_LIB_DIR3=_platform_specific/x86_32/lib32 | |
| 19 if [ ${NACL_ARCH} = "x86_64" ]; then | 15 if [ ${NACL_ARCH} = "x86_64" ]; then |
| 20 LIB_DIR=lib | |
| 21 PACKAGE_LIB_DIR=lib64 | 16 PACKAGE_LIB_DIR=lib64 |
| 22 PACKAGE_ALT_LIB_DIR=_platform_specific/x86_64/lib64 | 17 else |
| 23 PACKAGE_ALT_LIB_DIR2=_platform_specific/x86_64 | 18 PACKAGE_LIB_DIR=lib32 |
| 24 PACKAGE_ALT_LIB_DIR3="" | |
| 25 fi | 19 fi |
| 26 export NACL_SDK_ROOT=/mingn | 20 |
| 27 export NACL_TOOLCHAIN_ROOT=${NACL_SDK_ROOT}/toolchain/nacl_x86_glibc | 21 LD_LIBRARY_PATH=/lib:/usr/lib:/usr/${NACL_ARCH}-nacl/usr/lib |
| 28 LD_LIBRARY_PATH=${NACL_TOOLCHAIN_ROOT}/x86_64-nacl/${LIB_DIR} | |
| 29 LD_LIBRARY_PATH+=:${NACL_TOOLCHAIN_ROOT}/${NACL_ARCH}-nacl/usr/lib | |
| 30 LD_LIBRARY_PATH+=:/mnt/http/_platform_specific/${NACL_ARCH} | 22 LD_LIBRARY_PATH+=:/mnt/http/_platform_specific/${NACL_ARCH} |
| 31 export LIBRARY_PATH=${LD_LIBRARY_PATH} | 23 LIBRARY_PATH=${LD_LIBRARY_PATH} |
| 32 PATH+=:${NACL_SDK_ROOT}/toolchain/nacl_x86_glibc/bin | |
| 33 # TODO(bradnelson): Figure out why this is now needed to find cc1. | |
| 34 PATH+=:${NACL_SDK_ROOT}/toolchain/nacl_x86_glibc/libexec/gcc/x86_64-nacl/4.4.3 | |
| 35 PATH+=:/coreutils.${NACL_ARCH} | |
| 36 PATH+=:/mnt/http | 24 PATH+=:/mnt/http |
| 37 | 25 |
| 38 # Allow cross development by exporting alternate library paths. | 26 # Allow cross development by exporting alternate library paths. |
| 39 LIBRARY_PATH32=${NACL_TOOLCHAIN_ROOT}/x86_64-nacl/lib32 | 27 LIBRARY_PATH32=/usr/x86_64-nacl/lib32 |
| 40 LIBRARY_PATH32+=:${NACL_TOOLCHAIN_ROOT}/i686-nacl/usr/lib | 28 LIBRARY_PATH32+=:/usr/i686-nacl/usr/lib |
| 41 export LIBRARY_PATH32 | 29 LIBRARY_PATH64=/usr/x86_64-nacl/lib |
| 42 LIBRARY_PATH64=${NACL_TOOLCHAIN_ROOT}/x86_64-nacl/lib | 30 LIBRARY_PATH64+=:/usr/x86_64-nacl/usr/lib |
| 43 LIBRARY_PATH64+=:${NACL_TOOLCHAIN_ROOT}/x86_64-nacl/usr/lib | |
| 44 export LIBRARY_PATH64 | |
| 45 | |
| 46 # TODO(bradnelson): Figure out why it can't find them normally. | |
| 47 # Compiler has trouble finding its c++ headers, workaround. | |
| 48 tc_inc=${NACL_TOOLCHAIN_ROOT}/x86_64-nacl/include/c++/4.4.3 | |
| 49 export CPLUS_INCLUDE_PATH=${tc_inc}:${tc_inc}/x86_64-nacl | |
| 50 | |
| 51 export PYTHONHOME=/lib/python2.7 | |
| 52 export PYTHONPATH=/lib/python2.7 | |
| 53 | 31 |
| 54 export RUBYLIB=/usr/lib/ruby/2.0.0 | 32 export RUBYLIB=/usr/lib/ruby/2.0.0 |
| 55 export RUBYLIB=${RUBYLIB}:${RUBYLIB}/${NACL_ARCH}-nacl | 33 export RUBYLIB=${RUBYLIB}:${RUBYLIB}/${NACL_ARCH}-nacl |
| 56 alias ruby='ruby /bin/irb' | 34 alias ruby='ruby /bin/irb' |
| 57 alias emacs='ENABLE_CONTROL_C=0 emacs' | 35 alias emacs='ENABLE_CONTROL_C=0 emacs' |
| 58 | 36 |
| 59 # Allow ctrl-c to work. | 37 # Allow ctrl-c to work. |
| 60 export ENABLE_CONTROL_C=1 | 38 export ENABLE_CONTROL_C=1 |
| 61 | 39 |
| 62 # TODO(bradnelson): Remove when we can install in a more normal location. | 40 # TODO(bradnelson): Remove when we can install in a more normal location. |
| 63 # Usually this is in /etc/ssl/certs/, but we don't mount persistent storage | 41 # Usually this is in /etc/ssl/certs/, but we don't mount persistent storage |
| 64 # there yet. | 42 # there yet. |
| 65 # Point git and curl at root certificates inside the curl package. | 43 # Point git and curl at root certificates inside the curl package. |
| 66 export GIT_SSL_CAINFO=/packages/curl.${NACL_ARCH}/ca-bundle.crt | 44 export GIT_SSL_CAINFO=/usr/share/curl/ca-bundle.crt |
| 67 export CURL_CA_BUNDLE=/packages/curl.${NACL_ARCH}/ca-bundle.crt | 45 export CURL_CA_BUNDLE=/usr/share/curl/ca-bundle.crt |
| 68 | 46 |
| 69 # Scan through packages. | 47 export TOOLCHAIN=@TOOLCHAIN@ |
| 70 for package_dir in /packages/*; do | 48 export NACL_DEVENV=1 |
| 71 # Find the name of the package. | 49 export LIBRARY_PATH32 |
| 72 package=${package_dir##*/} | 50 export LIBRARY_PATH64 |
| 73 package_root=${package%.*} | |
| 74 # Figure out the main package dir. | |
| 75 if [ -d ${package_dir}/${package_root} ]; then | |
| 76 package_inside=${package_dir}/${package_root} | |
| 77 else | |
| 78 package_inside=${package_dir} | |
| 79 fi | |
| 80 | |
| 81 # Add package to the path and library path. | |
| 82 PATH=${PATH}:${package_inside} | |
| 83 package_libs=${package_inside}/${PACKAGE_LIB_DIR} | |
| 84 if [ -d ${package_libs} ]; then | |
| 85 LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${package_libs} | |
| 86 fi | |
| 87 # Add optional platform specific library path. | |
| 88 package_libs=${package_inside}/${PACKAGE_ALT_LIB_DIR} | |
| 89 if [ -d ${package_libs} ]; then | |
| 90 LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${package_libs} | |
| 91 else | |
| 92 package_libs=${package_inside}/${PACKAGE_ALT_LIB_DIR2} | |
| 93 if [ -d ${package_libs} ]; then | |
| 94 LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${package_libs} | |
| 95 fi | |
| 96 if [ -n "${PACKAGE_ALT_LIB_DIR3}" ]; then | |
| 97 package_libs=${package_inside}/${PACKAGE_ALT_LIB_DIR3} | |
| 98 if [ -d ${package_libs} ]; then | |
| 99 LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${package_libs} | |
| 100 fi | |
| 101 fi | |
| 102 fi | |
| 103 done | |
| 104 | |
| 105 export LD_LIBRARY_PATH | 51 export LD_LIBRARY_PATH |
| 52 export LIBRARY_PATH |
| 53 export PATH |
| OLD | NEW |