Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Side by Side Diff: compile

Issue 29431555: Issue 5216 - [emscripten] Use a more reliable way of retrieving mangled function name (Closed) Base URL: https://hg.adblockplus.org/adblockpluscore
Patch Set: Use std::string for function name rather than std::vector Created May 8, 2017, 10:12 a.m.
Left:
Right:
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | compiled/bindings/generator.h » ('j') | compiled/bindings/generator.cpp » ('J')
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/usr/bin/env python 1 #!/usr/bin/env python
2 2
3 # This file is part of Adblock Plus <https://adblockplus.org/>, 3 # This file is part of Adblock Plus <https://adblockplus.org/>,
4 # Copyright (C) 2006-2017 Eyeo GmbH 4 # Copyright (C) 2006-2017 Eyeo GmbH
5 # 5 #
6 # Adblock Plus is free software: you can redistribute it and/or modify 6 # Adblock Plus is free software: you can redistribute it and/or modify
7 # it under the terms of the GNU General Public License version 3 as 7 # it under the terms of the GNU General Public License version 3 as
8 # published by the Free Software Foundation. 8 # published by the Free Software Foundation.
9 # 9 #
10 # Adblock Plus is distributed in the hope that it will be useful, 10 # Adblock Plus is distributed in the hope that it will be useful,
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
68 'EMSCRIPTEN': scope['EMSCRIPTEN_ROOT'], 68 'EMSCRIPTEN': scope['EMSCRIPTEN_ROOT'],
69 'PYTHON': scope.get('PYTHON', sys.executable), 69 'PYTHON': scope.get('PYTHON', sys.executable),
70 'NODE_JS': scope.get('NODE_JS', 'node'), 70 'NODE_JS': scope.get('NODE_JS', 'node'),
71 }) 71 })
72 return env 72 return env
73 73
74 74
75 def generate_bindings(env): 75 def generate_bindings(env):
76 params = [ 76 params = [
77 env['PYTHON'], os.path.join(env['EMSCRIPTEN'], 'emcc'), 77 env['PYTHON'], os.path.join(env['EMSCRIPTEN'], 'emcc'),
78 '-o', BINDINGS_GENERATOR, '-std=gnu++14', '--js-library', JS_LIBRARY, 78 '-o', BINDINGS_GENERATOR, '-std=c++1z', '--js-library', JS_LIBRARY,
sergei 2017/05/08 10:58:19 does c++1z influence somehow on the generated code
Wladimir Palant 2017/05/08 11:41:34 No, the build is identical. The only thing changin
79 '--js-library', os.path.join(SOURCE_DIR, 'bindings', 'library.js'),
79 ] + list(get_source_files('bindings')) 80 ] + list(get_source_files('bindings'))
80 subprocess.check_call(params, env=env) 81 subprocess.check_call(params, env=env)
81 82
82 with open(BINDINGS_OUTPUT, 'w') as file: 83 with open(BINDINGS_OUTPUT, 'w') as file:
83 subprocess.check_call([env['NODE_JS'], BINDINGS_GENERATOR], 84 subprocess.check_call([env['NODE_JS'], BINDINGS_GENERATOR],
84 stdout=file) 85 stdout=file)
85 86
86 87
87 def run_compiler(env, debug=False, tracing=False): 88 def run_compiler(env, debug=False, tracing=False):
88 params = [ 89 params = [
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
122 parser.add_argument( 123 parser.add_argument(
123 '-t', '--tracing', 124 '-t', '--tracing',
124 action='store_true', 125 action='store_true',
125 help='Enable memory tracing' 126 help='Enable memory tracing'
126 ) 127 )
127 args = parser.parse_args() 128 args = parser.parse_args()
128 129
129 env = getenv(args.emscripten_config) 130 env = getenv(args.emscripten_config)
130 generate_bindings(env) 131 generate_bindings(env)
131 run_compiler(env, debug=args.debug, tracing=args.tracing) 132 run_compiler(env, debug=args.debug, tracing=args.tracing)
OLDNEW
« no previous file with comments | « no previous file | compiled/bindings/generator.h » ('j') | compiled/bindings/generator.cpp » ('J')

Powered by Google App Engine
This is Rietveld