summaryrefslogtreecommitdiffstats
path: root/native_client_sdk/src
diff options
context:
space:
mode:
authorjvoung@chromium.org <jvoung@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-07-18 04:43:28 +0000
committerjvoung@chromium.org <jvoung@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-07-18 04:43:28 +0000
commit367d664559d02d9899fe158a22d5ef4a756b238c (patch)
treefb5cd0e92aeafbc48db0cdcfc64ba4e5048c8ef8 /native_client_sdk/src
parentb8029f5f427fdb2c82ab24cb4fdf83c836c2a06e (diff)
downloadchromium_src-367d664559d02d9899fe158a22d5ef4a756b238c.zip
chromium_src-367d664559d02d9899fe158a22d5ef4a756b238c.tar.gz
chromium_src-367d664559d02d9899fe158a22d5ef4a756b238c.tar.bz2
NaClSDK: Build pnacl_irt_shim for x86-32 not just x86-64 and ARM.
We changed by-value struct passing in a way that we need shims for every architecture to communicate with PPAPI. (See https://codereview.chromium.org/14134011/) This only affects users of offline translation. BUG=261295 NOTRY=true Review URL: https://chromiumcodereview.appspot.com/19680002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@212252 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'native_client_sdk/src')
-rwxr-xr-xnative_client_sdk/src/build_tools/build_sdk.py46
1 files changed, 28 insertions, 18 deletions
diff --git a/native_client_sdk/src/build_tools/build_sdk.py b/native_client_sdk/src/build_tools/build_sdk.py
index a151635..3936544 100755
--- a/native_client_sdk/src/build_tools/build_sdk.py
+++ b/native_client_sdk/src/build_tools/build_sdk.py
@@ -590,28 +590,38 @@ def BuildStepBuildToolchains(pepperdir, toolchains):
cwd=NACL_DIR,
shell=shell)
+ # NOTE: For ia32, gyp builds both x86-32 and x86-64 by default.
for arch in ('ia32', 'arm'):
# Fill in the latest native pnacl shim library from the chrome build.
build_dir = GYPBUILD_DIR + '-pnacl-' + arch
GypNinjaBuild_Pnacl(build_dir, arch)
- pnacl_libdir_map = {'ia32': 'x86-64', 'arm': 'arm'}
- release_build_dir = os.path.join(OUT_DIR, build_dir, 'Release',
- 'gen', 'tc_pnacl_translate',
- 'lib-' + pnacl_libdir_map[arch])
-
- buildbot_common.CopyFile(
- os.path.join(release_build_dir, 'libpnacl_irt_shim.a'),
- GetPNaClNativeLib(pnacldir, pnacl_libdir_map[arch]))
-
- release_build_dir = os.path.join(OUT_DIR, build_dir, 'Release',
- 'gen', 'tc_pnacl_newlib', 'lib')
- buildbot_common.CopyFile(
- os.path.join(release_build_dir, 'libminidump_generator.a'),
- GetPNaClNativeLib(pnacldir, pnacl_libdir_map[arch]))
-
- buildbot_common.CopyFile(
- os.path.join(release_build_dir, 'libnacl_exception.a'),
- GetPNaClNativeLib(pnacldir, pnacl_libdir_map[arch]))
+ if arch == 'ia32':
+ nacl_arches = ['x86-32', 'x86-64']
+ elif arch == 'arm':
+ nacl_arches = ['arm']
+ else:
+ buildbot_common.ErrorExit('Unknown architecture: %s' % arch)
+ for nacl_arch in nacl_arches:
+ release_build_dir = os.path.join(OUT_DIR, build_dir, 'Release',
+ 'gen', 'tc_pnacl_translate',
+ 'lib-' + nacl_arch)
+
+ buildbot_common.CopyFile(
+ os.path.join(release_build_dir, 'libpnacl_irt_shim.a'),
+ GetPNaClNativeLib(pnacldir, nacl_arch))
+
+ # TODO: should these next couple of bitcode libraries really be
+ # installed to the native library directory instead of bitcode
+ # library directory?
+ release_build_dir = os.path.join(OUT_DIR, build_dir, 'Release',
+ 'gen', 'tc_pnacl_newlib', 'lib')
+ buildbot_common.CopyFile(
+ os.path.join(release_build_dir, 'libminidump_generator.a'),
+ GetPNaClNativeLib(pnacldir, nacl_arch))
+
+ buildbot_common.CopyFile(
+ os.path.join(release_build_dir, 'libnacl_exception.a'),
+ GetPNaClNativeLib(pnacldir, nacl_arch))
InstallNaClHeaders(GetToolchainNaClInclude('pnacl', pnacldir, 'x86'),
'newlib')