Chromium Code Reviews| Index: site_scons/site_tools/naclsdk.py |
| diff --git a/site_scons/site_tools/naclsdk.py b/site_scons/site_tools/naclsdk.py |
| index 2208d6db98061740086ce926188cfd7ff3830cc0..dad83dfc1df85cfb8e6b2812bc3095d4454e218e 100755 |
| --- a/site_scons/site_tools/naclsdk.py |
| +++ b/site_scons/site_tools/naclsdk.py |
| @@ -176,6 +176,19 @@ def _SetEnvForPnacl(env, root): |
| else: |
| ld_arch_flag = arch_flag |
| + llc_mtriple_flag = '' |
| + if env.Bit('minsfi'): |
| + llc_cpu = '' |
| + if env.Bit('build_x86_32'): |
| + llc_cpu = 'i686' |
| + elif env.Bit('build_x86_64'): |
| + llc_cpu = 'x86_64' |
|
jvoung (off chromium)
2014/09/05 00:31:59
Not necessarily for this CL, but would be curious
dbrazdil
2014/09/05 19:41:36
Acknowledged.
|
| + |
| + if env.Bit('host_linux'): |
| + llc_mtriple_flag = ' -mtriple=%s-linux-gnu' % llc_cpu |
| + elif env.Bit('host_mac'): |
| + llc_mtriple_flag = ' -mtriple=%s-apple-darwin' % llc_cpu |
| + |
| translator_root = os.path.join(os.path.dirname(root), 'pnacl_translator') |
| binprefix = os.path.join(root, 'bin', 'pnacl-') |
| @@ -202,6 +215,7 @@ def _SetEnvForPnacl(env, root): |
| pnacl_finalize = binprefix + 'finalize' + binext |
| pnacl_opt = binprefix + 'opt' + binext |
| pnacl_strip = binprefix + 'strip' + binext |
| + pnacl_llc = binprefix + 'llc' + binext |
| # NOTE: XXX_flags start with space for easy concatenation |
| # The flags generated here get baked into the commands (CC, CXX, LINK) |
| @@ -211,6 +225,7 @@ def _SetEnvForPnacl(env, root): |
| pnacl_cc_flags = ' -std=gnu99' |
| pnacl_ld_flags = ' ' + ' '.join(env['PNACL_BCLDFLAGS']) |
| pnacl_translate_flags = '' |
| + pnacl_llc_flags = '' |
| if env.Bit('nacl_pic'): |
| pnacl_cc_flags += ' -fPIC' |
| @@ -220,6 +235,9 @@ def _SetEnvForPnacl(env, root): |
| pnacl_ld_flags += ' -fPIC' |
| pnacl_translate_flags += ' -fPIC' |
| + if env.Bit('minsfi'): |
| + pnacl_llc_flags += ' -relocation-model=pic -filetype=obj' |
| + |
| if env.Bit('use_sandboxed_translator'): |
| sb_flags = ' --pnacl-sb' |
| pnacl_ld_flags += sb_flags |
| @@ -261,6 +279,7 @@ def _SetEnvForPnacl(env, root): |
| TRANSLATE=pnacl_translate + arch_flag + pnacl_translate_flags, |
| PNACLFINALIZE=pnacl_finalize, |
| PNACLOPT=pnacl_opt, |
| + LLC=pnacl_llc + llc_mtriple_flag + pnacl_llc_flags, |
| ) |
| if env.Bit('built_elsewhere'): |