OLD | NEW |
1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
2 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 2 # Copyright (c) 2012 The Chromium 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 """Entry point for both build and try bots. | 6 """Entry point for both build and try bots. |
7 | 7 |
8 This script is invoked from XXX, usually without arguments | 8 This script is invoked from XXX, usually without arguments |
9 to package an SDK. It automatically determines whether | 9 to package an SDK. It automatically determines whether |
10 this SDK is for mac, win, linux. | 10 this SDK is for mac, win, linux. |
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
60 NACLPORTS_REV = '65c71c1524a74ff8415573e5e5ef7c59ce4ac437' | 60 NACLPORTS_REV = '65c71c1524a74ff8415573e5e5ef7c59ce4ac437' |
61 | 61 |
62 GYPBUILD_DIR = 'gypbuild' | 62 GYPBUILD_DIR = 'gypbuild' |
63 | 63 |
64 options = None | 64 options = None |
65 | 65 |
66 # Map of: ToolchainName: (PackageName, SDKDir, arch). | 66 # Map of: ToolchainName: (PackageName, SDKDir, arch). |
67 TOOLCHAIN_PACKAGE_MAP = { | 67 TOOLCHAIN_PACKAGE_MAP = { |
68 'arm_glibc': ('nacl_arm_glibc', '%(platform)s_arm_glibc', 'arm'), | 68 'arm_glibc': ('nacl_arm_glibc', '%(platform)s_arm_glibc', 'arm'), |
69 'x86_glibc': ('nacl_x86_glibc', '%(platform)s_x86_glibc', 'x86'), | 69 'x86_glibc': ('nacl_x86_glibc', '%(platform)s_x86_glibc', 'x86'), |
70 'arm_bionic': ('nacl_arm_bionic', '%(platform)s_arm_bionic', 'arm'), | |
71 'pnacl': ('pnacl_newlib', '%(platform)s_pnacl', 'pnacl') | 70 'pnacl': ('pnacl_newlib', '%(platform)s_pnacl', 'pnacl') |
72 } | 71 } |
73 | 72 |
74 | 73 |
75 def GetToolchainDirName(tcname): | 74 def GetToolchainDirName(tcname): |
76 """Return the directory name for a given toolchain""" | 75 """Return the directory name for a given toolchain""" |
77 return TOOLCHAIN_PACKAGE_MAP[tcname][1] % {'platform': getos.GetPlatform()} | 76 return TOOLCHAIN_PACKAGE_MAP[tcname][1] % {'platform': getos.GetPlatform()} |
78 | 77 |
79 | 78 |
80 def GetToolchainDir(pepperdir, tcname): | 79 def GetToolchainDir(pepperdir, tcname): |
81 """Return the full path to a given toolchain within a given sdk root""" | 80 """Return the full path to a given toolchain within a given sdk root""" |
82 return os.path.join(pepperdir, 'toolchain', GetToolchainDirName(tcname)) | 81 return os.path.join(pepperdir, 'toolchain', GetToolchainDirName(tcname)) |
83 | 82 |
84 | 83 |
85 def GetToolchainLibc(tcname): | 84 def GetToolchainLibc(tcname): |
86 if tcname == 'pnacl': | 85 if tcname == 'pnacl': |
87 return 'newlib' | 86 return 'newlib' |
88 for libc in ('bionic', 'glibc', 'newlib', 'host'): | 87 for libc in ('glibc', 'newlib', 'host'): |
89 if libc in tcname: | 88 if libc in tcname: |
90 return libc | 89 return libc |
91 | 90 |
92 | 91 |
93 def GetToolchainNaClInclude(pepperdir, tcname, arch=None): | 92 def GetToolchainNaClInclude(pepperdir, tcname, arch=None): |
94 tcpath = GetToolchainDir(pepperdir, tcname) | 93 tcpath = GetToolchainDir(pepperdir, tcname) |
95 if arch is None: | 94 if arch is None: |
96 arch = TOOLCHAIN_PACKAGE_MAP[tcname][2] | 95 arch = TOOLCHAIN_PACKAGE_MAP[tcname][2] |
97 if arch == 'x86': | 96 if arch == 'x86': |
98 return os.path.join(tcpath, 'x86_64-nacl', 'include') | 97 return os.path.join(tcpath, 'x86_64-nacl', 'include') |
(...skipping 19 matching lines...) Expand all Loading... |
118 def GetGypBuiltLib(tcname, arch): | 117 def GetGypBuiltLib(tcname, arch): |
119 if arch == 'ia32': | 118 if arch == 'ia32': |
120 lib_suffix = '32' | 119 lib_suffix = '32' |
121 elif arch == 'x64': | 120 elif arch == 'x64': |
122 lib_suffix = '64' | 121 lib_suffix = '64' |
123 elif arch == 'arm': | 122 elif arch == 'arm': |
124 lib_suffix = 'arm' | 123 lib_suffix = 'arm' |
125 else: | 124 else: |
126 lib_suffix = '' | 125 lib_suffix = '' |
127 | 126 |
128 if tcname == 'arm_bionic': | 127 tcdir = 'tc_' + GetToolchainLibc(tcname) |
129 tcdir = 'tc_newlib' | |
130 else: | |
131 tcdir = 'tc_' + GetToolchainLibc(tcname) | |
132 | 128 |
133 if tcname == 'pnacl': | 129 if tcname == 'pnacl': |
134 if arch is None: | 130 if arch is None: |
135 lib_suffix = '' | 131 lib_suffix = '' |
136 tcdir = 'tc_pnacl_newlib' | 132 tcdir = 'tc_pnacl_newlib' |
137 arch = 'x64' | 133 arch = 'x64' |
138 else: | 134 else: |
139 arch = 'clang-' + arch | 135 arch = 'clang-' + arch |
140 | 136 |
141 return os.path.join(GetNinjaOutDir(arch), 'gen', tcdir, 'lib' + lib_suffix) | 137 return os.path.join(GetNinjaOutDir(arch), 'gen', tcdir, 'lib' + lib_suffix) |
(...skipping 18 matching lines...) Expand all Loading... |
160 | 156 |
161 def GetPNaClTranslatorLib(tcpath, arch): | 157 def GetPNaClTranslatorLib(tcpath, arch): |
162 if arch not in ['arm', 'x86-32', 'x86-64']: | 158 if arch not in ['arm', 'x86-32', 'x86-64']: |
163 buildbot_common.ErrorExit('Unknown architecture %s.' % arch) | 159 buildbot_common.ErrorExit('Unknown architecture %s.' % arch) |
164 return os.path.join(tcpath, 'translator', arch, 'lib') | 160 return os.path.join(tcpath, 'translator', arch, 'lib') |
165 | 161 |
166 | 162 |
167 def BuildStepDownloadToolchains(toolchains): | 163 def BuildStepDownloadToolchains(toolchains): |
168 buildbot_common.BuildStep('Running package_version.py') | 164 buildbot_common.BuildStep('Running package_version.py') |
169 args = [sys.executable, PKGVER, '--mode', 'nacl_core_sdk'] | 165 args = [sys.executable, PKGVER, '--mode', 'nacl_core_sdk'] |
170 if 'arm_bionic' in toolchains: | |
171 build_platform = '%s_x86' % getos.GetPlatform() | |
172 args.extend(['--append', os.path.join(build_platform, 'nacl_arm_bionic')]) | |
173 args.extend(['sync', '--extract']) | 166 args.extend(['sync', '--extract']) |
174 buildbot_common.Run(args, cwd=NACL_DIR) | 167 buildbot_common.Run(args, cwd=NACL_DIR) |
175 | 168 |
176 | 169 |
177 def BuildStepCleanPepperDirs(pepperdir, pepperdir_old): | 170 def BuildStepCleanPepperDirs(pepperdir, pepperdir_old): |
178 buildbot_common.BuildStep('Clean Pepper Dirs') | 171 buildbot_common.BuildStep('Clean Pepper Dirs') |
179 dirs_to_remove = ( | 172 dirs_to_remove = ( |
180 pepperdir, | 173 pepperdir, |
181 pepperdir_old, | 174 pepperdir_old, |
182 os.path.join(OUT_DIR, 'arm_trusted') | 175 os.path.join(OUT_DIR, 'arm_trusted') |
(...skipping 103 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
286 ('native_client/src/include/nacl/nacl_exception.h', 'nacl/'), | 279 ('native_client/src/include/nacl/nacl_exception.h', 'nacl/'), |
287 ('native_client/src/include/nacl/nacl_minidump.h', 'nacl/'), | 280 ('native_client/src/include/nacl/nacl_minidump.h', 'nacl/'), |
288 ('native_client/src/untrusted/irt/irt.h', ''), | 281 ('native_client/src/untrusted/irt/irt.h', ''), |
289 ('native_client/src/untrusted/irt/irt_dev.h', ''), | 282 ('native_client/src/untrusted/irt/irt_dev.h', ''), |
290 ('native_client/src/untrusted/irt/irt_extension.h', ''), | 283 ('native_client/src/untrusted/irt/irt_extension.h', ''), |
291 ('native_client/src/untrusted/nacl/nacl_dyncode.h', 'nacl/'), | 284 ('native_client/src/untrusted/nacl/nacl_dyncode.h', 'nacl/'), |
292 ('native_client/src/untrusted/nacl/nacl_startup.h', 'nacl/'), | 285 ('native_client/src/untrusted/nacl/nacl_startup.h', 'nacl/'), |
293 ('native_client/src/untrusted/valgrind/dynamic_annotations.h', 'nacl/'), | 286 ('native_client/src/untrusted/valgrind/dynamic_annotations.h', 'nacl/'), |
294 ('ppapi/nacl_irt/public/irt_ppapi.h', ''), | 287 ('ppapi/nacl_irt/public/irt_ppapi.h', ''), |
295 ], | 288 ], |
296 'bionic': [ | |
297 ('ppapi/nacl_irt/public/irt_ppapi.h', ''), | |
298 ], | |
299 } | 289 } |
300 | 290 |
301 def InstallFiles(src_root, dest_root, file_list): | 291 def InstallFiles(src_root, dest_root, file_list): |
302 """Copy a set of files from src_root to dest_root according | 292 """Copy a set of files from src_root to dest_root according |
303 to the given mapping. This allows files to be copied from | 293 to the given mapping. This allows files to be copied from |
304 to a location in the destination tree that is different to the | 294 to a location in the destination tree that is different to the |
305 location in the source tree. | 295 location in the source tree. |
306 | 296 |
307 If the destination mapping ends with a '/' then the destination | 297 If the destination mapping ends with a '/' then the destination |
308 basename is inherited from the the source file. | 298 basename is inherited from the the source file. |
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
347 | 337 |
348 | 338 |
349 def MakeNinjaRelPath(path): | 339 def MakeNinjaRelPath(path): |
350 return os.path.join(os.path.relpath(OUT_DIR, SRC_DIR), path) | 340 return os.path.join(os.path.relpath(OUT_DIR, SRC_DIR), path) |
351 | 341 |
352 | 342 |
353 # TODO(ncbray): stop building and copying libraries into the SDK that are | 343 # TODO(ncbray): stop building and copying libraries into the SDK that are |
354 # already provided by the toolchain. | 344 # already provided by the toolchain. |
355 # Mapping from libc to libraries gyp-build trusted libraries | 345 # Mapping from libc to libraries gyp-build trusted libraries |
356 TOOLCHAIN_LIBS = { | 346 TOOLCHAIN_LIBS = { |
357 'bionic' : [ | |
358 'libminidump_generator.a', | |
359 'libnacl_dyncode.a', | |
360 'libnacl_exception.a', | |
361 'libnacl_list_mappings.a', | |
362 'libppapi.a', | |
363 ], | |
364 'newlib' : [ | 347 'newlib' : [ |
365 'libminidump_generator.a', | 348 'libminidump_generator.a', |
366 'libnacl.a', | 349 'libnacl.a', |
367 'libnacl_dyncode.a', | 350 'libnacl_dyncode.a', |
368 'libnacl_exception.a', | 351 'libnacl_exception.a', |
369 'libnacl_list_mappings.a', | 352 'libnacl_list_mappings.a', |
370 'libnosys.a', | 353 'libnosys.a', |
371 'libppapi.a', | 354 'libppapi.a', |
372 'libppapi_stub.a', | 355 'libppapi_stub.a', |
373 'libpthread.a', | 356 'libpthread.a', |
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
445 InstallFiles(GetNinjaOutDir('ia32'), tools_dir, tools_files_32) | 428 InstallFiles(GetNinjaOutDir('ia32'), tools_dir, tools_files_32) |
446 InstallFiles(GetNinjaOutDir('arm'), tools_dir, arm_files) | 429 InstallFiles(GetNinjaOutDir('arm'), tools_dir, arm_files) |
447 | 430 |
448 for tc in toolchains: | 431 for tc in toolchains: |
449 if tc in ('host', 'clang-newlib'): | 432 if tc in ('host', 'clang-newlib'): |
450 continue | 433 continue |
451 elif tc == 'pnacl': | 434 elif tc == 'pnacl': |
452 xarches = (None, 'ia32', 'x64', 'arm') | 435 xarches = (None, 'ia32', 'x64', 'arm') |
453 elif tc in ('x86_glibc', 'x86_newlib'): | 436 elif tc in ('x86_glibc', 'x86_newlib'): |
454 xarches = ('ia32', 'x64') | 437 xarches = ('ia32', 'x64') |
455 elif tc in ('arm_glibc', 'arm_bionic'): | 438 elif tc == 'arm_glibc': |
456 xarches = ('arm',) | 439 xarches = ('arm',) |
457 else: | 440 else: |
458 raise AssertionError('unexpected toolchain value: %s' % tc) | 441 raise AssertionError('unexpected toolchain value: %s' % tc) |
459 | 442 |
460 for xarch in xarches: | 443 for xarch in xarches: |
461 src_dir = GetGypBuiltLib(tc, xarch) | 444 src_dir = GetGypBuiltLib(tc, xarch) |
462 dst_dir = GetOutputToolchainLib(pepperdir, tc, xarch) | 445 dst_dir = GetOutputToolchainLib(pepperdir, tc, xarch) |
463 libc = GetToolchainLibc(tc) | 446 libc = GetToolchainLibc(tc) |
464 InstallFiles(src_dir, dst_dir, TOOLCHAIN_LIBS[libc]) | 447 InstallFiles(src_dir, dst_dir, TOOLCHAIN_LIBS[libc]) |
465 | 448 |
(...skipping 396 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
862 buildbot_common.BuildStep('Build GoNaCl AppEngine Projects') | 845 buildbot_common.BuildStep('Build GoNaCl AppEngine Projects') |
863 cmd = ['make', 'upload', 'REVISION=%s' % chrome_revision] | 846 cmd = ['make', 'upload', 'REVISION=%s' % chrome_revision] |
864 env = dict(os.environ) | 847 env = dict(os.environ) |
865 env['NACL_SDK_ROOT'] = pepperdir | 848 env['NACL_SDK_ROOT'] = pepperdir |
866 env['NACLPORTS_NO_ANNOTATE'] = "1" | 849 env['NACLPORTS_NO_ANNOTATE'] = "1" |
867 buildbot_common.Run(cmd, env=env, cwd=GONACL_APPENGINE_SRC_DIR) | 850 buildbot_common.Run(cmd, env=env, cwd=GONACL_APPENGINE_SRC_DIR) |
868 | 851 |
869 | 852 |
870 def main(args): | 853 def main(args): |
871 parser = argparse.ArgumentParser(description=__doc__) | 854 parser = argparse.ArgumentParser(description=__doc__) |
872 parser.add_argument('--nacl-tree-path', | |
873 help='Path to native client tree for bionic build.', | |
874 dest='nacl_tree_path') | |
875 parser.add_argument('--qemu', help='Add qemu for ARM.', | 855 parser.add_argument('--qemu', help='Add qemu for ARM.', |
876 action='store_true') | 856 action='store_true') |
877 parser.add_argument('--bionic', help='Add bionic build.', | |
878 action='store_true') | |
879 parser.add_argument('--tar', help='Force the tar step.', | 857 parser.add_argument('--tar', help='Force the tar step.', |
880 action='store_true') | 858 action='store_true') |
881 parser.add_argument('--archive', help='Force the archive step.', | 859 parser.add_argument('--archive', help='Force the archive step.', |
882 action='store_true') | 860 action='store_true') |
883 parser.add_argument('--release', help='PPAPI release version.', | 861 parser.add_argument('--release', help='PPAPI release version.', |
884 dest='release', default=None) | 862 dest='release', default=None) |
885 parser.add_argument('--build-app-engine', | 863 parser.add_argument('--build-app-engine', |
886 help='Build AppEngine demos.', action='store_true') | 864 help='Build AppEngine demos.', action='store_true') |
887 parser.add_argument('--experimental', | 865 parser.add_argument('--experimental', |
888 help='build experimental examples and libraries', action='store_true', | 866 help='build experimental examples and libraries', action='store_true', |
(...skipping 16 matching lines...) Expand all Loading... |
905 import optcomplete | 883 import optcomplete |
906 optcomplete.autocomplete(parser) | 884 optcomplete.autocomplete(parser) |
907 except ImportError: | 885 except ImportError: |
908 pass | 886 pass |
909 | 887 |
910 global options | 888 global options |
911 options = parser.parse_args(args) | 889 options = parser.parse_args(args) |
912 | 890 |
913 buildbot_common.BuildStep('build_sdk') | 891 buildbot_common.BuildStep('build_sdk') |
914 | 892 |
915 if options.nacl_tree_path: | |
916 options.bionic = True | |
917 toolchain_build = os.path.join(options.nacl_tree_path, 'toolchain_build') | |
918 print 'WARNING: Building bionic toolchain from NaCl checkout.' | |
919 print 'This option builds bionic from the sources currently in the' | |
920 print 'provided NativeClient checkout, and the results instead of ' | |
921 print 'downloading a toolchain from the builder. This may result in a' | |
922 print 'NaCl SDK that can not run on ToT chrome.' | |
923 print 'NOTE: To clobber you will need to run toolchain_build_bionic.py' | |
924 print 'directly from the NativeClient checkout.' | |
925 print '' | |
926 response = raw_input("Type 'y' and hit enter to continue.\n") | |
927 if response != 'y' and response != 'Y': | |
928 print 'Aborting.' | |
929 return 1 | |
930 | |
931 # Get head version of NativeClient tree | |
932 buildbot_common.BuildStep('Build bionic toolchain.') | |
933 buildbot_common.Run([sys.executable, 'toolchain_build_bionic.py', '-f'], | |
934 cwd=toolchain_build) | |
935 else: | |
936 toolchain_build = None | |
937 | |
938 if buildbot_common.IsSDKBuilder(): | 893 if buildbot_common.IsSDKBuilder(): |
939 options.archive = True | 894 options.archive = True |
940 # TODO(binji): re-enable app_engine build when the linux builder stops | 895 # TODO(binji): re-enable app_engine build when the linux builder stops |
941 # breaking when trying to git clone from github. | 896 # breaking when trying to git clone from github. |
942 # See http://crbug.com/412969. | 897 # See http://crbug.com/412969. |
943 options.build_app_engine = False | 898 options.build_app_engine = False |
944 options.tar = True | 899 options.tar = True |
945 | 900 |
946 # NOTE: order matters here. This will be the order that is specified in the | 901 # NOTE: order matters here. This will be the order that is specified in the |
947 # Makefiles; the first toolchain will be the default. | 902 # Makefiles; the first toolchain will be the default. |
948 toolchains = ['pnacl', 'x86_glibc', 'arm_glibc', 'clang-newlib', 'host'] | 903 toolchains = ['pnacl', 'x86_glibc', 'arm_glibc', 'clang-newlib', 'host'] |
949 | 904 |
950 # Changes for experimental bionic builder | |
951 if options.bionic: | |
952 toolchains.append('arm_bionic') | |
953 options.build_app_engine = False | |
954 | |
955 print 'Building: ' + ' '.join(toolchains) | 905 print 'Building: ' + ' '.join(toolchains) |
956 platform = getos.GetPlatform() | 906 platform = getos.GetPlatform() |
957 | 907 |
958 if options.archive and not options.tar: | 908 if options.archive and not options.tar: |
959 parser.error('Incompatible arguments with archive.') | 909 parser.error('Incompatible arguments with archive.') |
960 | 910 |
961 chrome_version = int(build_version.ChromeMajorVersion()) | 911 chrome_version = int(build_version.ChromeMajorVersion()) |
962 chrome_revision = build_version.ChromeRevision() | 912 chrome_revision = build_version.ChromeRevision() |
963 nacl_revision = build_version.NaClRevision() | 913 nacl_revision = build_version.NaClRevision() |
964 pepper_ver = str(chrome_version) | 914 pepper_ver = str(chrome_version) |
965 pepper_old = str(chrome_version - 1) | 915 pepper_old = str(chrome_version - 1) |
966 pepperdir = os.path.join(OUT_DIR, 'pepper_' + pepper_ver) | 916 pepperdir = os.path.join(OUT_DIR, 'pepper_' + pepper_ver) |
967 pepperdir_old = os.path.join(OUT_DIR, 'pepper_' + pepper_old) | 917 pepperdir_old = os.path.join(OUT_DIR, 'pepper_' + pepper_old) |
968 if options.bionic: | 918 tarname = 'naclsdk_%s.tar.bz2' % platform |
969 tarname = 'naclsdk_bionic.tar.bz2' | |
970 else: | |
971 tarname = 'naclsdk_%s.tar.bz2' % platform | |
972 tarfile = os.path.join(OUT_DIR, tarname) | 919 tarfile = os.path.join(OUT_DIR, tarname) |
973 | 920 |
974 if options.release: | 921 if options.release: |
975 pepper_ver = options.release | 922 pepper_ver = options.release |
976 print 'Building PEPPER %s at %s' % (pepper_ver, chrome_revision) | 923 print 'Building PEPPER %s at %s' % (pepper_ver, chrome_revision) |
977 | 924 |
978 if 'NACL_SDK_ROOT' in os.environ: | 925 if 'NACL_SDK_ROOT' in os.environ: |
979 # We don't want the currently configured NACL_SDK_ROOT to have any effect | 926 # We don't want the currently configured NACL_SDK_ROOT to have any effect |
980 # of the build. | 927 # of the build. |
981 del os.environ['NACL_SDK_ROOT'] | 928 del os.environ['NACL_SDK_ROOT'] |
982 | 929 |
983 if platform == 'linux': | 930 if platform == 'linux': |
984 # Linux-only: make sure the debian/stable sysroot image is installed | 931 # Linux-only: make sure the debian/stable sysroot image is installed |
985 install_script = os.path.join(SRC_DIR, 'build', 'linux', 'sysroot_scripts', | 932 install_script = os.path.join(SRC_DIR, 'build', 'linux', 'sysroot_scripts', |
986 'install-sysroot.py') | 933 'install-sysroot.py') |
987 | 934 |
988 buildbot_common.Run([sys.executable, install_script, '--arch=arm']) | 935 buildbot_common.Run([sys.executable, install_script, '--arch=arm']) |
989 buildbot_common.Run([sys.executable, install_script, '--arch=i386']) | 936 buildbot_common.Run([sys.executable, install_script, '--arch=i386']) |
990 buildbot_common.Run([sys.executable, install_script, '--arch=amd64']) | 937 buildbot_common.Run([sys.executable, install_script, '--arch=amd64']) |
991 | 938 |
992 if not options.skip_toolchain: | 939 if not options.skip_toolchain: |
993 BuildStepCleanPepperDirs(pepperdir, pepperdir_old) | 940 BuildStepCleanPepperDirs(pepperdir, pepperdir_old) |
994 BuildStepMakePepperDirs(pepperdir, ['include', 'toolchain', 'tools']) | 941 BuildStepMakePepperDirs(pepperdir, ['include', 'toolchain', 'tools']) |
995 BuildStepDownloadToolchains(toolchains) | 942 BuildStepDownloadToolchains(toolchains) |
996 if options.nacl_tree_path: | 943 BuildStepUntarToolchains(pepperdir, toolchains) |
997 # Instead of untarring, copy the raw bionic toolchain | |
998 not_bionic = [i for i in toolchains if i != 'arm_bionic'] | |
999 BuildStepUntarToolchains(pepperdir, not_bionic) | |
1000 tcname = GetToolchainDirName('arm_bionic') | |
1001 srcdir = os.path.join(toolchain_build, 'out', tcname) | |
1002 bionicdir = os.path.join(pepperdir, 'toolchain', tcname) | |
1003 oshelpers.Copy(['-r', srcdir, bionicdir]) | |
1004 else: | |
1005 BuildStepUntarToolchains(pepperdir, toolchains) | |
1006 if platform == 'linux': | 944 if platform == 'linux': |
1007 buildbot_common.Move(os.path.join(pepperdir, 'toolchain', 'arm_trusted'), | 945 buildbot_common.Move(os.path.join(pepperdir, 'toolchain', 'arm_trusted'), |
1008 os.path.join(OUT_DIR, 'arm_trusted')) | 946 os.path.join(OUT_DIR, 'arm_trusted')) |
1009 | 947 |
1010 | 948 |
1011 if platform == 'linux': | 949 if platform == 'linux': |
1012 # Linux-only: Copy arm libraries from the arm_trusted package. These are | 950 # Linux-only: Copy arm libraries from the arm_trusted package. These are |
1013 # needed to be able to run sel_ldr_arm under qemu. | 951 # needed to be able to run sel_ldr_arm under qemu. |
1014 arm_libs = [ | 952 arm_libs = [ |
1015 'lib/arm-linux-gnueabihf/librt.so.1', | 953 'lib/arm-linux-gnueabihf/librt.so.1', |
(...skipping 21 matching lines...) Expand all Loading... |
1037 BuildStepUpdateUserProjects(pepperdir, toolchains, | 975 BuildStepUpdateUserProjects(pepperdir, toolchains, |
1038 options.build_experimental, True) | 976 options.build_experimental, True) |
1039 | 977 |
1040 BuildStepCopyTextFiles(pepperdir, pepper_ver, chrome_revision, nacl_revision) | 978 BuildStepCopyTextFiles(pepperdir, pepper_ver, chrome_revision, nacl_revision) |
1041 | 979 |
1042 # Ship with libraries prebuilt, so run that first. | 980 # Ship with libraries prebuilt, so run that first. |
1043 BuildStepBuildLibraries(pepperdir, 'src') | 981 BuildStepBuildLibraries(pepperdir, 'src') |
1044 GenerateNotice(pepperdir) | 982 GenerateNotice(pepperdir) |
1045 | 983 |
1046 # Verify the SDK contains what we expect. | 984 # Verify the SDK contains what we expect. |
1047 if not options.bionic: | 985 BuildStepVerifyFilelist(pepperdir) |
1048 BuildStepVerifyFilelist(pepperdir) | |
1049 | 986 |
1050 if options.tar: | 987 if options.tar: |
1051 BuildStepTarBundle(pepper_ver, tarfile) | 988 BuildStepTarBundle(pepper_ver, tarfile) |
1052 | 989 |
1053 if platform == 'linux': | 990 if platform == 'linux': |
1054 BuildStepBuildPNaClComponent(pepper_ver, chrome_revision) | 991 BuildStepBuildPNaClComponent(pepper_ver, chrome_revision) |
1055 | 992 |
1056 if options.build_app_engine and platform == 'linux': | 993 if options.build_app_engine and platform == 'linux': |
1057 BuildStepBuildAppEngine(pepperdir, chrome_revision) | 994 BuildStepBuildAppEngine(pepperdir, chrome_revision) |
1058 | 995 |
(...skipping 11 matching lines...) Expand all Loading... |
1070 BuildStepArchivePNaClComponent(chrome_revision) | 1007 BuildStepArchivePNaClComponent(chrome_revision) |
1071 | 1008 |
1072 return 0 | 1009 return 0 |
1073 | 1010 |
1074 | 1011 |
1075 if __name__ == '__main__': | 1012 if __name__ == '__main__': |
1076 try: | 1013 try: |
1077 sys.exit(main(sys.argv[1:])) | 1014 sys.exit(main(sys.argv[1:])) |
1078 except KeyboardInterrupt: | 1015 except KeyboardInterrupt: |
1079 buildbot_common.ErrorExit('build_sdk: interrupted') | 1016 buildbot_common.ErrorExit('build_sdk: interrupted') |
OLD | NEW |