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 |