diff options
author | dyen@chromium.org <dyen@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-04-15 18:29:29 +0000 |
---|---|---|
committer | dyen@chromium.org <dyen@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-04-15 18:29:29 +0000 |
commit | 3169d314dc974f01cbf39a9d5dc66b2a533cc57a (patch) | |
tree | bb7d5bd054f76a77abde711b2f0daf60942a7f0a /ppapi | |
parent | 1fb6cb3711616c2478deb91e1ae3b6264f148fb4 (diff) | |
download | chromium_src-3169d314dc974f01cbf39a9d5dc66b2a533cc57a.zip chromium_src-3169d314dc974f01cbf39a9d5dc66b2a533cc57a.tar.gz chromium_src-3169d314dc974f01cbf39a9d5dc66b2a533cc57a.tar.bz2 |
Removed dependency of native_client/toolchain from chromium pnacl support.
R=dschuff@chromium.org, jvoung@chromium.org
BUG= https://code.google.com/p/nativeclient/issues/detail?id=3816
Review URL: https://codereview.chromium.org/235923011
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@263935 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ppapi')
-rwxr-xr-x | ppapi/native_client/src/untrusted/pnacl_support_extension/pnacl_component_crx_gen.py | 30 | ||||
-rw-r--r-- | ppapi/native_client/src/untrusted/pnacl_support_extension/pnacl_support_extension.gyp | 27 |
2 files changed, 47 insertions, 10 deletions
diff --git a/ppapi/native_client/src/untrusted/pnacl_support_extension/pnacl_component_crx_gen.py b/ppapi/native_client/src/untrusted/pnacl_support_extension/pnacl_component_crx_gen.py index de416e0..db0a143 100755 --- a/ppapi/native_client/src/untrusted/pnacl_support_extension/pnacl_component_crx_gen.py +++ b/ppapi/native_client/src/untrusted/pnacl_support_extension/pnacl_component_crx_gen.py @@ -8,8 +8,7 @@ the result can then be packed into a multi-CRX zip file. This script depends on and pulls in the translator nexes and libraries - from the toolchain directory (so that must be downloaded first) and - it depends on the pnacl_irt_shim. + from the PNaCl translator. It also depends on the pnacl_irt_shim. """ import json @@ -180,12 +179,16 @@ class PnaclPackaging(object): ###################################################################### class PnaclDirs(object): - toolchain_dir = J(NACL_ROOT, 'toolchain') - output_dir = J(toolchain_dir, 'pnacl-package') + translator_dir = None + output_dir = None + + @staticmethod + def SetTranslatorRoot(d): + PnaclDirs.translator_dir = d @staticmethod def TranslatorRoot(): - return J(PnaclDirs.toolchain_dir, 'pnacl_translator') + return PnaclDirs.translator_dir @staticmethod def LibDir(target_arch): @@ -193,8 +196,7 @@ class PnaclDirs(object): @staticmethod def SandboxedCompilerDir(target_arch): - return J(PnaclDirs.toolchain_dir, - 'pnacl_translator', StandardArch(target_arch), 'bin') + return J(PnaclDirs.TranslatorRoot(), StandardArch(target_arch), 'bin') @staticmethod def SetOutputDir(d): @@ -256,6 +258,9 @@ def CopyFlattenDirsAndPrefix(src_dir, arch, dest_dir): When copying, also rename the files such that they match the white-listing pattern in chrome/browser/nacl_host/nacl_file_host.cc. """ + if not os.path.isdir(src_dir): + raise Exception('Copy dir failed, directory does not exist: %s' % src_dir) + for (root, dirs, files) in os.walk(src_dir, followlinks=True): for f in files: # Assume a flat directory. @@ -331,6 +336,8 @@ def Main(): help='Path of the info template file') parser.add_option('--tool_revisions_path', dest='tool_revisions_path', default=None, help='Location of NaCl TOOL_REVISIONS file.') + parser.add_option('--pnacl_translator_path', dest='pnacl_translator_path', + default=None, help='Location of PNaCl translator.') parser.add_option('-v', '--verbose', dest='verbose', default=False, action='store_true', help='Print verbose debug messages.') @@ -344,12 +351,17 @@ def Main(): % (options, args)) # Set destination directory before doing any cleaning, etc. - if options.dest: - PnaclDirs.SetOutputDir(options.dest) + if options.dest is None: + raise Exception('Destination path must be set.') + PnaclDirs.SetOutputDir(options.dest) if options.clean: Clean() + if options.pnacl_translator_path is None: + raise Exception('PNaCl translator path must be set.') + PnaclDirs.SetTranslatorRoot(options.pnacl_translator_path) + if options.info_template_path: PnaclPackaging.SetPnaclInfoTemplatePath(options.info_template_path) diff --git a/ppapi/native_client/src/untrusted/pnacl_support_extension/pnacl_support_extension.gyp b/ppapi/native_client/src/untrusted/pnacl_support_extension/pnacl_support_extension.gyp index 0cd6ed8..af1dec14 100644 --- a/ppapi/native_client/src/untrusted/pnacl_support_extension/pnacl_support_extension.gyp +++ b/ppapi/native_client/src/untrusted/pnacl_support_extension/pnacl_support_extension.gyp @@ -10,6 +10,29 @@ ], 'targets': [ { + 'target_name': 'untar_pnacl_translator', + 'type': 'none', + 'actions': [{ + 'action_name': 'Untar pnacl_translator', + 'description': 'Untar pnacl_translator', + 'inputs': [ + '<(DEPTH)/native_client/build/cygtar.py', + '<(DEPTH)/native_client/toolchain/.tars/naclsdk_pnacl_translator.tgz', + ], + 'outputs': ['<(SHARED_INTERMEDIATE_DIR)/pnacl_translator/stamp.untar'], + 'action': [ + 'python', + '<(DEPTH)/native_client/build/untar_toolchain.py', + '--tool', 'pnacl', + '--tmp', '<(SHARED_INTERMEDIATE_DIR)/temp/untar', + '--sdk', '<(SHARED_INTERMEDIATE_DIR)/temp/sdk', + '--os', '<(OS)', + '--fin', '<(SHARED_INTERMEDIATE_DIR)/pnacl_translator', + '<(DEPTH)/native_client/toolchain/.tars/naclsdk_pnacl_translator.tgz', + ], + }], + }, + { 'target_name': 'pnacl_support_extension', 'type': 'none', 'conditions': [ @@ -17,6 +40,7 @@ 'dependencies': [ '../../../../../ppapi/native_client/src/untrusted/pnacl_irt_shim/pnacl_irt_shim.gyp:pnacl_irt_shim_browser', '../../../../../native_client/tools.gyp:prep_toolchain', + 'untar_pnacl_translator', ], 'sources': [ 'pnacl_component_crx_gen.py', @@ -29,7 +53,7 @@ 'inputs': [ 'pnacl_component_crx_gen.py', # A stamp file representing the contents of pnacl_translator. - '<(DEPTH)/native_client/toolchain/<(OS)_x86/pnacl_translator/SOURCE_SHA1', + '<(SHARED_INTERMEDIATE_DIR)/pnacl_translator/stamp.untar', '<(DEPTH)/native_client/pnacl/driver/pnacl_info_template.json', '<(DEPTH)/native_client/TOOL_REVISIONS', ], @@ -161,6 +185,7 @@ '<@(lib_overrides)', '--target_arch=<(target_arch)', '--info_template_path=<(DEPTH)/native_client/pnacl/driver/pnacl_info_template.json', + '--pnacl_translator_path=<(SHARED_INTERMEDIATE_DIR)/pnacl_translator', '--tool_revisions_path=<(DEPTH)/native_client/TOOL_REVISIONS', # ABI Version Number. '1', |