| OLD | NEW |
| 1 #! -*- python -*- | 1 #! -*- python -*- |
| 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 import atexit | 6 import atexit |
| 7 import json | 7 import json |
| 8 import os | 8 import os |
| 9 import platform | 9 import platform |
| 10 import re | 10 import re |
| (...skipping 3543 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3554 nacl_irt_env.Append(LINKFLAGS=['--pnacl-disable-abi-check']) | 3554 nacl_irt_env.Append(LINKFLAGS=['--pnacl-disable-abi-check']) |
| 3555 | 3555 |
| 3556 # The IRT is C only, don't link with the C++ linker so that it doesn't | 3556 # The IRT is C only, don't link with the C++ linker so that it doesn't |
| 3557 # start depending on the C++ standard library and (in the case of | 3557 # start depending on the C++ standard library and (in the case of |
| 3558 # libc++) pthread. | 3558 # libc++) pthread. |
| 3559 nacl_irt_env.Replace(LINK=(nacl_irt_env['LINK']. | 3559 nacl_irt_env.Replace(LINK=(nacl_irt_env['LINK']. |
| 3560 replace('pnacl-clang++', 'pnacl-clang'))) | 3560 replace('pnacl-clang++', 'pnacl-clang'))) |
| 3561 nacl_irt_env.Replace(LINK=(nacl_irt_env['LINK']. | 3561 nacl_irt_env.Replace(LINK=(nacl_irt_env['LINK']. |
| 3562 replace('nacl-clang++', 'nacl-clang'))) | 3562 replace('nacl-clang++', 'nacl-clang'))) |
| 3563 | 3563 |
| 3564 | |
| 3565 # All IRT code must avoid direct use of the TLS ABI register, which | |
| 3566 # is reserved for user TLS. Instead, ensure all TLS accesses use a | |
| 3567 # call to __nacl_read_tp, which the IRT code overrides to segregate | |
| 3568 # IRT-private TLS from user TLS. This only applies to mips now, on | |
| 3569 # other platforms we modify the TLS register through tls_edit as a | |
| 3570 # post process. | |
| 3571 if nacl_irt_env.Bit('build_mips32'): | |
| 3572 nacl_irt_env.Append(LINKFLAGS=['-Wt,-mtls-use-call']) | |
| 3573 | |
| 3574 # TODO(mcgrathr): Clean up uses of these methods. | 3564 # TODO(mcgrathr): Clean up uses of these methods. |
| 3575 def AddLibraryDummy(env, nodes): | 3565 def AddLibraryDummy(env, nodes): |
| 3576 return nodes | 3566 return nodes |
| 3577 nacl_irt_env.AddMethod(AddLibraryDummy, 'AddLibraryToSdk') | 3567 nacl_irt_env.AddMethod(AddLibraryDummy, 'AddLibraryToSdk') |
| 3578 | 3568 |
| 3579 def AddObjectInternal(env, nodes): | 3569 def AddObjectInternal(env, nodes): |
| 3580 return env.Replicate('${LIB_DIR}', nodes) | 3570 return env.Replicate('${LIB_DIR}', nodes) |
| 3581 nacl_env.AddMethod(AddObjectInternal, 'AddObjectToSdk') | 3571 nacl_env.AddMethod(AddObjectInternal, 'AddObjectToSdk') |
| 3582 nacl_irt_env.AddMethod(AddObjectInternal, 'AddObjectToSdk') | 3572 nacl_irt_env.AddMethod(AddObjectInternal, 'AddObjectToSdk') |
| 3583 | 3573 |
| (...skipping 466 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4050 nacl_env.ValidateSdk() | 4040 nacl_env.ValidateSdk() |
| 4051 | 4041 |
| 4052 if BROKEN_TEST_COUNT > 0: | 4042 if BROKEN_TEST_COUNT > 0: |
| 4053 msg = "There are %d broken tests." % BROKEN_TEST_COUNT | 4043 msg = "There are %d broken tests." % BROKEN_TEST_COUNT |
| 4054 if GetOption('brief_comstr'): | 4044 if GetOption('brief_comstr'): |
| 4055 msg += " Add --verbose to the command line for more information." | 4045 msg += " Add --verbose to the command line for more information." |
| 4056 print msg | 4046 print msg |
| 4057 | 4047 |
| 4058 # separate warnings from actual build output | 4048 # separate warnings from actual build output |
| 4059 Banner('B U I L D - O U T P U T:') | 4049 Banner('B U I L D - O U T P U T:') |
| OLD | NEW |