Refactor the atom_js2c target to include javascript from multiple dirs.
Before invoking js2c, copy all files that must be embedded into the shared intermediate directory, and modify the js2c wrapper script to include all files from that directory(which is passed as argument). This allows the build system to embed files that don't share a common base directory, such as javascript generated at build time.
This commit is contained in:
parent
6afe8aa7f2
commit
1713200084
2 changed files with 20 additions and 2 deletions
19
electron.gyp
19
electron.gyp
|
@ -5,6 +5,7 @@
|
|||
'company_name%': 'GitHub, Inc',
|
||||
'company_abbr%': 'github',
|
||||
'version%': '1.4.1',
|
||||
'js2c_input_dir': '<(SHARED_INTERMEDIATE_DIR)/js2c',
|
||||
},
|
||||
'includes': [
|
||||
'filenames.gypi',
|
||||
|
@ -410,13 +411,29 @@
|
|||
}
|
||||
],
|
||||
}, # target app2asar
|
||||
{
|
||||
'target_name': 'atom_js2c_copy',
|
||||
'type': 'none',
|
||||
'copies': [
|
||||
{
|
||||
'destination': '<(js2c_input_dir)',
|
||||
'files': [
|
||||
'<@(js2c_sources)',
|
||||
],
|
||||
},
|
||||
],
|
||||
}, # target atom_js2c_copy
|
||||
{
|
||||
'target_name': 'atom_js2c',
|
||||
'type': 'none',
|
||||
'dependencies': [
|
||||
'atom_js2c_copy',
|
||||
],
|
||||
'actions': [
|
||||
{
|
||||
'action_name': 'atom_js2c',
|
||||
'inputs': [
|
||||
# List all input files that should trigger a rebuild with js2c
|
||||
'<@(js2c_sources)',
|
||||
],
|
||||
'outputs': [
|
||||
|
@ -426,7 +443,7 @@
|
|||
'python',
|
||||
'tools/js2c.py',
|
||||
'<@(_outputs)',
|
||||
'<@(_inputs)',
|
||||
'<(js2c_input_dir)',
|
||||
],
|
||||
}
|
||||
],
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
#!/usr/bin/env python
|
||||
|
||||
import contextlib
|
||||
import glob
|
||||
import os
|
||||
import subprocess
|
||||
import sys
|
||||
|
@ -11,7 +12,7 @@ SOURCE_ROOT = os.path.abspath(os.path.dirname(os.path.dirname(__file__)))
|
|||
|
||||
def main():
|
||||
natives = os.path.abspath(sys.argv[1])
|
||||
js_source_files = sys.argv[2:]
|
||||
js_source_files = glob.glob('{0}/*.js'.format(sys.argv[2]))
|
||||
|
||||
call_js2c(natives, js_source_files)
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue