| Index: native_client_sdk/src/build_tools/build_sdk.py
|
| diff --git a/native_client_sdk/src/build_tools/build_sdk.py b/native_client_sdk/src/build_tools/build_sdk.py
|
| index 790f062225ba6d02678e8625f338c26365a17c46..f73d06d661d7ec21eed21991e27bee3f315dd640 100755
|
| --- a/native_client_sdk/src/build_tools/build_sdk.py
|
| +++ b/native_client_sdk/src/build_tools/build_sdk.py
|
| @@ -368,6 +368,15 @@ def MakeNinjaRelPath(path):
|
|
|
|
|
| TOOLCHAIN_LIBS = {
|
| + 'bionic' : [
|
| + 'libminidump_generator.a',
|
| + 'libnacl.a',
|
| + 'libnacl_dyncode.a',
|
| + 'libnacl_exception.a',
|
| + 'libnacl_list_mappings.a',
|
| + 'libppapi.a',
|
| + 'libppapi_stub.a',
|
| + ],
|
| 'newlib' : [
|
| 'crti.o',
|
| 'crtn.o',
|
| @@ -448,6 +457,17 @@ def GypNinjaInstall(pepperdir, toolchains):
|
|
|
| InstallFiles(ninja_out_dir, os.path.join(pepperdir, 'tools'), tools_files)
|
|
|
| + # Add ARM binaries
|
| + if platform == 'linux':
|
| + tools_files = [
|
| + ['irt_core_newlib_arm.nexe', 'irt_core_arm.nexe'],
|
| + ['irt_core_newlib_arm.nexe', 'irt_core_arm.nexe'],
|
| + ['sel_ldr', 'sel_ldr_arm'],
|
| + ['nacl_helper_bootstrap', 'nacl_helper_bootstrap_arm']
|
| + ]
|
| + ninja_out_dir = os.path.join(OUT_DIR, build_dir + '-arm', 'Release')
|
| + InstallFiles(ninja_out_dir, os.path.join(pepperdir, 'tools'), tools_files)
|
| +
|
| for tc in set(toolchains) & set(['newlib', 'glibc', 'pnacl']):
|
| if tc == 'pnacl':
|
| xarches = (None,)
|
| @@ -462,6 +482,11 @@ def GypNinjaInstall(pepperdir, toolchains):
|
| dst_dir = GetOutputToolchainLib(pepperdir, tc, xarch)
|
| InstallFiles(src_dir, dst_dir, TOOLCHAIN_LIBS[tc])
|
|
|
| + # Copy ARM newlib components to bionic
|
| + if tc == 'newlib' and xarch == 'arm' and 'bionic' in toolchains:
|
| + bionic_dir = GetOutputToolchainLib(pepperdir, 'bionic', xarch)
|
| + InstallFiles(src_dir, bionic_dir, TOOLCHAIN_LIBS['bionic'])
|
| +
|
| if tc != 'pnacl':
|
| src_dir = GetGypToolchainLib(tc, xarch)
|
| InstallFiles(src_dir, dst_dir, ['crt1.o'])
|
| @@ -890,6 +915,8 @@ def BuildStepBuildAppEngine(pepperdir, chrome_revision):
|
|
|
| def main(args):
|
| parser = optparse.OptionParser(description=__doc__)
|
| + parser.add_option('--qemu', help='Add qemu for ARM.',
|
| + action='store_true')
|
| parser.add_option('--bionic', help='Add bionic build.',
|
| action='store_true')
|
| parser.add_option('--tar', help='Force the tar step.',
|
| @@ -995,6 +1022,10 @@ def main(args):
|
| if options.build_app_engine and getos.GetPlatform() == 'linux':
|
| BuildStepBuildAppEngine(pepperdir, chrome_revision)
|
|
|
| + if options.qemu:
|
| + qemudir = os.path.join(NACL_DIR, 'toolchain', 'linux_arm-trusted')
|
| + oshelpers.Copy(['-r', qemudir, pepperdir])
|
| +
|
| # Archive on non-trybots.
|
| if options.archive:
|
| BuildStepArchiveBundle('build', pepper_ver, chrome_revision, nacl_revision,
|
| @@ -1012,3 +1043,4 @@ if __name__ == '__main__':
|
| sys.exit(main(sys.argv))
|
| except KeyboardInterrupt:
|
| buildbot_common.ErrorExit('build_sdk: interrupted')
|
| +
|
|
|